chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Ignore unknown force options (with a warning)
[dgit.git]
/
dgit
diff --git
a/dgit
b/dgit
index ea14ba523ca15b4aeafe3637d43e11c4fab2ec00..98928e37ac3e0d9a3f18354c5366f367785a4a46 100755
(executable)
--- a/
dgit
+++ b/
dgit
@@
-75,7
+75,8
@@
our $tagformat;
our $tagformatfn;
our %forceopts = map { $_=>0 }
our $tagformatfn;
our %forceopts = map { $_=>0 }
- qw(unrepresentable unsupported-source-format);
+ qw(unrepresentable unsupported-source-format
+ dsc-changes-mismatch);
our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)");
our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)");
@@
-237,6
+238,14
@@
sub forceable_fail ($$) {
print STDERR "warning: overriding problem due to --force:\n". $msg;
}
print STDERR "warning: overriding problem due to --force:\n". $msg;
}
+sub forceing ($) {
+ my ($forceoptsl) = @_;
+ my @got = grep { $forceopts{$_} } @$forceoptsl;
+ return 0 unless @got;
+ print STDERR
+ "warning: skipping checks or functionality due to --force-$got[0]\n";
+}
+
sub no_such_package () {
print STDERR "$us: package $package does not exist in suite $isuite\n";
exit 4;
sub no_such_package () {
print STDERR "$us: package $package does not exist in suite $isuite\n";
exit 4;
@@
-3291,7
+3300,8
@@
END
# Check that changes and .dsc agree enough
$changesfile =~ m{[^/]*$};
# Check that changes and .dsc agree enough
$changesfile =~ m{[^/]*$};
- files_compare_inputs($dsc, parsecontrol($changesfile,$&));
+ files_compare_inputs($dsc, parsecontrol($changesfile,$&))
+ unless forceing [qw(dsc-changes-mismatch)];
# Checks complete, we're going to try and go ahead:
# Checks complete, we're going to try and go ahead:
@@
-5220,6
+5230,10
@@
sub parseopts () {
push @ropts, $&;
$forceopts{$1} = 1;
$_='';
push @ropts, $&;
$forceopts{$1} = 1;
$_='';
+ } elsif (m/^--force-/) {
+ print STDERR
+ "$us: warning: ignoring unknown force option $_\n";
+ $_='';
} elsif (m/^--dgit-tag-format=(old|new)$/s) {
# undocumented, for testing
push @ropts, $_;
} elsif (m/^--dgit-tag-format=(old|new)$/s) {
# undocumented, for testing
push @ropts, $_;