summaryrefslogtreecommitdiff
path: root/tools/update-deps-releases.pl
diff options
context:
space:
mode:
authorPaweł Chmielowski <pchmielowski@process-one.net>2019-02-26 11:52:00 +0100
committerPaweł Chmielowski <pchmielowski@process-one.net>2019-02-26 12:16:48 +0100
commita40eb79cd0625e06e797ed3f76420b55d373150d (patch)
tree4c7d366146144a9413a383ca566e16996e25c138 /tools/update-deps-releases.pl
parentUpdate deps in mix.lock (diff)
Commit back, change reverted by mistake
Diffstat (limited to 'tools/update-deps-releases.pl')
-rwxr-xr-xtools/update-deps-releases.pl26
1 files changed, 24 insertions, 2 deletions
diff --git a/tools/update-deps-releases.pl b/tools/update-deps-releases.pl
index 9458c9da..17358d97 100755
--- a/tools/update-deps-releases.pl
+++ b/tools/update-deps-releases.pl
@@ -169,7 +169,7 @@ sub update_app_src {
my $app = ".deps-update/$dep/src/$dep.app.src";
return if not -f $app;
my $content = slurp($app);
- $content =~ s/({\s*vsn\s*,\s*)".*"/$1"$version"/;
+ $content =~ s/(\{\s*vsn\s*,\s*)".*"/$1"$version"/;
write_file($app, $content);
}
@@ -235,6 +235,15 @@ sub deps_git_info {
my $new_tag = $last_tag;
$new_tag =~ s/(\d+)$/$1+1/e;
chomp(@new);
+
+ my $cl = ".deps-update/$dep/CHANGELOG.md";
+ my $content = slurp($cl, err_mode => "quiet") // "";
+ if ($content =~ /^# Version (\S+)/) {
+ if (!grep({$_ eq $1} @tags) && $1 ne $new_tag) {
+ $new_tag = $1;
+ }
+ }
+
$info{$dep} = { last_tag => $last_tag, new_commits => \@new, new_tag => $new_tag };
}
}
@@ -252,12 +261,18 @@ sub show_commands {
say color("red"), $_, color("reset"), ") $commands{$_}";
}
ReadMode(4);
+ my $wkey = "";
while (1) {
my $key = ReadKey(0);
+ $wkey = substr($wkey.$key, -2);
if (defined $commands{uc($key)}) {
ReadMode(0);
say "";
return uc($key);
+ } elsif (defined $commands{uc($wkey)}) {
+ ReadMode(0);
+ say "";
+ return uc($wkey);
}
}
}
@@ -431,10 +446,17 @@ while (1) {
my @deps_to_tag;
my @od;
my $idx = 1;
+ my $count = 0;
+ for my $dep (sort keys %$top_deps) {
+ next unless @{$git_info->{$dep}->{new_commits}};
+ $count++;
+ }
for my $dep (sort keys %$top_deps) {
next unless @{$git_info->{$dep}->{new_commits}};
$od[$idx] = $dep;
- push @deps_to_tag, $idx++, "Tag $dep with version $git_info->{$dep}->{new_tag}";
+ my $id = $idx++;
+ $id = sprintf "%02d", $id if $count > 9;
+ push @deps_to_tag, $id, "Tag $dep with version $git_info->{$dep}->{new_tag}";
}
last if $idx == 1;
my $cmd = show_commands(@deps_to_tag, E => "Exit");