threads / patch / 23076

patchinstaweb: use minified gitweb.js if available

Subject: [PATCH] instaweb: use minified gitweb.js if available

## tl;dr

3 messages between Mar 19, 2010 and Mar 19, 2010. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Mark Rada· Mar 19, 2010, 06:02 UTC · lore
Makes git-instaweb use gitweb.min.js if it was generated.
Signed-off-by: Mark Rada <marada@uwaterloo.ca>
---
 Makefile        |   13 +++++++------
 git-instaweb.sh |    1 +
 2 files changed, 8 insertions(+), 6 deletions(-)
Show changes to 2 files +8 −6

Makefile, git-instaweb.sh

diff --git a/Makefile b/Makefile
index 7c616f8..1677928 100644
--- a/Makefile
+++ b/Makefile
@@ -1551,12 +1551,12 @@ gitweb:
 	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) all
  ifdef JSMIN
-OTHER_PROGRAMS += gitweb/gitweb.cgi   gitweb/gitweb.min.js
-gitweb/gitweb.cgi: gitweb/gitweb.perl gitweb/gitweb.min.js
+GITWEB_JS=gitweb/gitweb.min.js
 else
-OTHER_PROGRAMS += gitweb/gitweb.cgi
-gitweb/gitweb.cgi: gitweb/gitweb.perl
+GITWEB_JS=gitweb/gitweb.js
 endif
+OTHER_PROGRAMS += gitweb/gitweb.cgi $(GITWEB_JS)
+gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
 	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) $(patsubst gitweb/%,%,$@)
  ifdef JSMIN
@@ -1574,12 +1574,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
 	    -e '/@@GITWEB_CGI@@/d' \
 	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
 	    -e '/@@GITWEB_CSS@@/d' \
-	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
+	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
 	    -e '/@@GITWEB_JS@@/d' \
 	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
 	    $@.sh > $@+ && \
 	chmod +x $@+ && \
-	mv $@+ $@
+	mv $@+ $@ && \
+	sed -i '' -e 's/min\.js/js/' $@
 else # NO_PERL
 $(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh
 	$(QUIET_GEN)$(RM) $@ $@+ && \
diff --git a/git-instaweb.sh b/git-instaweb.sh
index 6a65f25..72f8c39 100755
--- a/git-instaweb.sh
+++ b/git-instaweb.sh
@@ -397,6 +397,7 @@ EOFGITWEB
 gitweb_js () {
 	cat > "$1" <<\EOFGITWEB
 @@GITWEB_JS@@
+
 EOFGITWEB
 }
 -- 1.7.0.1.300.gd855a
Johannes Sixt· Mar 19, 2010, 07:36 UTC · re: Mark Rada · lore

Re: [PATCH] instaweb: use minified gitweb.js if available

Mark Rada schrieb:
Show 30 quoted lines
> --- a/Makefile
> +++ b/Makefile
> @@ -1551,12 +1551,12 @@ gitweb:
>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) all
>   ifdef JSMIN
> -OTHER_PROGRAMS += gitweb/gitweb.cgi   gitweb/gitweb.min.js
> -gitweb/gitweb.cgi: gitweb/gitweb.perl gitweb/gitweb.min.js
> +GITWEB_JS=gitweb/gitweb.min.js
>  else
> -OTHER_PROGRAMS += gitweb/gitweb.cgi
> -gitweb/gitweb.cgi: gitweb/gitweb.perl
> +GITWEB_JS=gitweb/gitweb.js
>  endif
> +OTHER_PROGRAMS += gitweb/gitweb.cgi $(GITWEB_JS)
> +gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) $(patsubst gitweb/%,%,$@)
>   ifdef JSMIN
> @@ -1574,12 +1574,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
>  	    -e '/@@GITWEB_CGI@@/d' \
>  	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
>  	    -e '/@@GITWEB_CSS@@/d' \
> -	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
> +	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
>  	    -e '/@@GITWEB_JS@@/d' \
>  	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
>  	    $@.sh > $@+ && \
>  	chmod +x $@+ && \
> -	mv $@+ $@
> +	mv $@+ $@ && \
> +	sed -i '' -e 's/min\.js/js/' $@

sed -i is not portable. But do you need it at all? Can't you add this change to the -e list above?

Show 10 quoted lines
> --- a/git-instaweb.sh
> +++ b/git-instaweb.sh
> @@ -397,6 +397,7 @@ EOFGITWEB
>  gitweb_js () {
>  	cat > "$1" <<\EOFGITWEB
>  @@GITWEB_JS@@
> +
>  EOFGITWEB
>  }
>  -- 1.7.0.1.300.gd855a
This new blank line is an accident, isn't it?
-- Hannes
Mark Rada· Mar 19, 2010, 14:07 UTC · re: Johannes Sixt · lore

Re: [PATCH] instaweb: use minified gitweb.js if available

On 10-03-19 3:36 AM, Johannes Sixt wrote:
Show 34 quoted lines
> Mark Rada schrieb:
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1551,12 +1551,12 @@ gitweb:
>>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) all
>>   ifdef JSMIN
>> -OTHER_PROGRAMS += gitweb/gitweb.cgi   gitweb/gitweb.min.js
>> -gitweb/gitweb.cgi: gitweb/gitweb.perl gitweb/gitweb.min.js
>> +GITWEB_JS=gitweb/gitweb.min.js
>>  else
>> -OTHER_PROGRAMS += gitweb/gitweb.cgi
>> -gitweb/gitweb.cgi: gitweb/gitweb.perl
>> +GITWEB_JS=gitweb/gitweb.js
>>  endif
>> +OTHER_PROGRAMS += gitweb/gitweb.cgi $(GITWEB_JS)
>> +gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
>>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) $(patsubst gitweb/%,%,$@)
>>   ifdef JSMIN
>> @@ -1574,12 +1574,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
>>  	    -e '/@@GITWEB_CGI@@/d' \
>>  	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
>>  	    -e '/@@GITWEB_CSS@@/d' \
>> -	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
>> +	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
>>  	    -e '/@@GITWEB_JS@@/d' \
>>  	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
>>  	    $@.sh > $@+ && \
>>  	chmod +x $@+ && \
>> -	mv $@+ $@
>> +	mv $@+ $@ && \
>> +	sed -i '' -e 's/min\.js/js/' $@
> 
> sed -i is not portable. But do you need it at all? Can't you add this
> change to the -e list above?

Hmm, the reason I made the change in a separate command was that the only place that min.js needed to be modified was in gitweb.cgi and only after it has been copied into git-instaweb.

We want to leave the actual gitweb.cgi as using gitweb.min.js, but the way instaweb creates the gitweb directory makes it create a gitweb.js no matter what (this is a bug if you create a minified gitweb.js because gitweb.cgi will look for a non-existant gitweb.min.js).

I figured that the smallest solution was to just edit the copied gitweb.cgi to use gitweb.js again, but since it is not portable I will have to either have messier code to do the same thing or make git-instaweb change the name of gitweb.js only in the case that we are using a minified gitweb.js.

Since I see no advantage or disadvantage to either, I'll flip a coin to decide this later on when I have some time.

Show 12 quoted lines
>> --- a/git-instaweb.sh
>> +++ b/git-instaweb.sh
>> @@ -397,6 +397,7 @@ EOFGITWEB
>>  gitweb_js () {
>>  	cat > "$1" <<\EOFGITWEB
>>  @@GITWEB_JS@@
>> +
>>  EOFGITWEB
>>  }
>>  -- 1.7.0.1.300.gd855a
> 
> This new blank line is an accident, isn't it?

Nope, this new line is here because the minifier I used cut the extra new line from the end of gitweb.js and then the EOFGITWEB token ended up on the same line as gitweb.js.

Show 6 quoted lines
> -- Hannes
> 
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
-- 
Mark Rada (ferrous26)
marada@uwaterloo.ca

← back to recent threads