Does anybody else worry about the backward imcompatibility, I
wonder... List?
I really hate to having to say something like that in the
RelNotes. I do not think this is a good enough reason to break
existing configurations; I would not want to be defending that
change.
I doubt bookmarked snapshot URL would make sense to begin with,
so this would be Ok.
I am wondering if something like this patch (totally untested,
mind you) to convert the old style %feature in configuration at
the site at runtime would be sufficient.
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index f17c983..cdec4d0 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -236,9 +236,39 @@ our %feature = (
'default' => [0]},
);
+# Functions to convert values from older gitweb configuration
+# into the current data format
+sub gitweb_bc_feature_snapshot {
+ my $def = $feature{'snapshot'}{'default'};
+ # Older definition was to have either undef (to disable), or
+ # a three-element array whose first element was content encoding
+ # without leading "application/".
+ return if (ref $def ne 'ARRAY');
+ if (!defined $def->[0] && @$def == 1) {
+ # Disabled -- the new way to spell it is to have an empty
+ # arrayref.
+ $feature{'snapshot'}{'default'} = [];
+ return;
+ }
+ return if (@$def != 3);
+ for ($def->[0]) {
+ if (/x-gzip/) {
+ $feature{'snapshot'}{'default'} = ['tgz'];
+ }
+ if (/x-bz2/) {
+ $feature{'snapshot'}{'default'} = ['tbz2'];
+ }
+ if (/x-zip/) {
+ $feature{'snapshot'}{'default'} = ['zip'];
+ }
+ }
+}
+
sub gitweb_check_feature {
my ($name) = @_;
return unless exists $feature{$name};
+ eval "gitweb_bc_feature_$name()";
+
my ($sub, $override, @defaults) = (
$feature{$name}{'sub'},
$feature{$name}{'override'},
-
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