$debugprefix *debuglevel *DEBUG
shellquote printcmd messagequote);
# implicitly uses $main::us
- %EXPORT_TAGS = ( policyflags => [qw(NOFFCHECK FRESHREPO)] );
+ %EXPORT_TAGS = ( policyflags => [qw(NOFFCHECK FRESHREPO NOCOMMITCHECK)] );
@EXPORT_OK = @{ $EXPORT_TAGS{policyflags} };
}
# dynamic loader, runtime, etc., failures, which report 127 or 255
sub NOFFCHECK () { return 0x2; }
sub FRESHREPO () { return 0x4; }
+sub NOCOMMITCHECK () { return 0x8; }
our $debugprefix;
our $debuglevel = 0;
sub dep14_version_mangle ($) {
my ($v) = @_;
- # DEP-14 2014-11-05 "Version Mangling"
+ # DEP-14 patch proposed 2016-11-09 "Version Mangling"
$v =~ y/~:/_%/;
+ $v =~ s/\.(?=\.|$|lock$)/.#/g;
return $v;
}
if (-l _) {
$old = cmdoutput qw(realpath --), $old;
}
- link $old, $new or die "link $old $new: $!";
+ my $r = link $old, $new;
+ $r = symlink $old, $new if !$r && $!==EXDEV;
+ $r or die "(sym)link $old $new: $!";
}
sub hashfile ($) {