Two gitweb bugs related to javascript-actions
Hi
Some time ago I reported the two following bugs to Debian BTS, could you please look at them?
1. http://bugs.debian.org/741883 -- gitweb blame does not work
correctly when $feature{'javascript-actions'} is enabled
This should be one-line change fix, which I really would like to be applied to the git package itself, not to do the same change over and over again every time my gitweb package is updated on my system.
2. https://bugs.debian.org/741884 feature{'javascript-actions'} breaks
external links
This might be more challenging, but the simplest approach would be avoid adding those strange '[#?]js=1' parts to non-gitweb-generated links.
Thanks a lot,
robert
PATCH 1/1 gitweb: correctly store previous rev in javascript-actions mode
From: Robert Luberda <[email protected]>
Date: Sun, 16 Mar 2014 22:57:19 +0100
Without this change, the setting
$feature{'javascript-actions'}{'default'} = [1];
in gitweb.conf breaks gitweb's blame page: clicking on line numbers displayed in the second column on the page has no effect.
For comparison, with javascript-actions disabled, clicking on line numbers loads the previous version of the line.
Addresses https://bugs.debian.org/741883.
---
Hi Robert,
Years ago, you sent this obviously correct patch to the link mentioned above, but it got lost in the noise. Sorry about that. Hopefully late is better than never.
May we forge your sign-off? See
https://www.kernel.org/pub/software/scm/git/docs/SubmittingPatches.html#sign-off
for more details about what this means.
Jakub et al, any thoughts? I don't see any unit tests in gitweb/static that could avoid this regressing --- am I missing some, or if not any hints for someone who would want to add a test framework?
Thanks,
Jonathan
gitweb/static/js/blame_incremental.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
gitweb/static/js/blame_incremental.js +1 -1
@@ -484,7 +484,7 @@ function processBlameLines(lines) { case 'previous': curCommit.nprevious++; // store only first 'previous' header - if (!'previous' in curCommit) { + if (!('previous' in curCommit)) { var parts = data.split(' ', 2); curCommit.previous = parts[0]; curCommit.file_parent = unquote(parts[1]);
Signature · 1 line
2.20.0.405.gbc1bbc6f85
Re: [PATCH] gitweb: correctly store previous rev in javascript-actions mode
From: Robert Luberda <[email protected]>
Date: Sun, 16 Mar 2014 22:57:19 +0100
Without this change, the setting
$feature{'javascript-actions'}{'default'} = [1];
in gitweb.conf breaks gitweb's blame page: clicking on line numbers displayed in the second column on the page has no effect.
For comparison, with javascript-actions disabled, clicking on line numbers loads the previous version of the line.
Addresses https://bugs.debian.org/741883.
---
Quoted 5 lines
Hi Robert,
Years ago, you sent this obviously correct patch to the link mentioned above, but it got lost in the noise. Sorry about that. Hopefully late is better than never.
Hi,
Somehow I missed your e-mail and just have found it today by a chance :(
Quoted 1 line
May we forge your sign-off? See
https://www.kernel.org/pub/software/scm/git/docs/SubmittingPatches.html#sign-off
for more details about what this means.
Done, I've added the Signed-off-line above.
Quoted 2 lines
Jakub et al, any thoughts? I don't see any unit tests in gitweb/static that could avoid this regressing --- am I missing some, or if not any
hints for someone who would want to add a test framework?
Thanks,
Robert
gitweb/static/js/blame_incremental.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
(quoted diff) +0 -0
b/gitweb/static/js/blame_incremental.js
index db6eb50584..e100d8206b 100644
gitweb/static/js/blame_incremental.js +1 -1
@@ -484,7 +484,7 @@ function processBlameLines(lines) { case 'previous': curCommit.nprevious++; // store only first 'previous' header - if (!'previous' in curCommit) { + if (!('previous' in curCommit)) { var parts = data.split(' ', 2); curCommit.previous = parts[0]; curCommit.file_parent = unquote(parts[1]);
Signature · 1 line
2.20.0.405.gbc1bbc6f85
Jakub Narebski
Acked-byRe: [PATCH] gitweb: correctly store previous rev in javascript-actions mode
Quoted 10 lines · Robert Luberda
From: Robert Luberda <[email protected]>
Date: Sun, 16 Mar 2014 22:57:19 +0100Without this change, the setting
$feature{'javascript-actions'}{'default'} = [1];
in gitweb.conf breaks gitweb's blame page: clicking on line numbers displayed in the second column on the page has no effect.
Quoted 7 lines
For comparison, with javascript-actions disabled, clicking on line numbers loads the previous version of the line.
Addresses https://bugs.debian.org/741883.
Signed-off-by Jonathan Nieder <[email protected]>Signed-off-by Robert Luberda <[email protected]>
For what it is worth it (because I am not active in gitweb development):
Quoted 9 lines
---
Quoted 5 lines
Hi Robert,
Years ago, you sent this obviously correct patch to the link mentioned above, but it got lost in the noise. Sorry about that. Hopefully late is better than never.
Hi,
Quoted 7 lines
Somehow I missed your e-mail and just have found it today by a chance :(
Quoted 3 lines
May we forge your sign-off? See
https://www.kernel.org/pub/software/scm/git/docs/SubmittingPatches.html#sign-off
for more details about what this means.Done, I've added the Signed-off-line above.
Thanks for following this up.
Quoted 3 lines
Quoted 3 lines
Jakub et al, any thoughts? I don't see any unit tests in gitweb/static that could avoid this regressing --- am I missing some, or if not any hints for someone who would want to add a test framework?
We currently have no tests for the JavaScript in gitweb code; I am not sure how one would go to add such tests (and whether it would be possible while gitweb is part of git - if they need externel dependencies like Node.js or Selenium they would need to be able to be disabled or enabled with builld option).
Quoted 9 lines
gitweb/static/js/blame_incremental.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)gitweb/static/js/blame_incremental.js +0
-0
gitweb/static/js/blame_incremental.js function processBlameLines(lines) { · line 490
Quoted 8 lines
gitweb/static/js/blame_incremental.js +1
-1@@ -484,7 +484,7 @@ function processBlameLines(lines) { case 'previous': curCommit.nprevious++; // store only first 'previous' header - if (!'previous' in curCommit) { + if (!('previous' in curCommit)) { var parts = data.split(' ', 2); curCommit.previous = parts[0]; curCommit.file_parent = unquote(parts[1]);
Thanks,
Signature · 1 line
Jakub Narębski