diff options
author | Erich Eckner <git@eckner.net> | 2017-11-06 15:28:28 +0100 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2017-11-06 15:28:28 +0100 |
commit | 0b9304e309a4da488d6fa6686ebbd2326b988b33 (patch) | |
tree | 65e45c1887e99da97cf7f94696a0876f7cc21bad | |
parent | 75f23a993db3427a216703659772793062496eb2 (diff) | |
download | builder-0b9304e309a4da488d6fa6686ebbd2326b988b33.tar.xz |
bin/why-dont-you unstage/stabilize: adopt to new dependency check rules
-rwxr-xr-x | bin/why-dont-you | 37 |
1 files changed, 30 insertions, 7 deletions
diff --git a/bin/why-dont-you b/bin/why-dont-you index 9656dfd..5367085 100755 --- a/bin/why-dont-you +++ b/bin/why-dont-you @@ -100,6 +100,20 @@ case "${action}" in sort -k2,2 > \ "${tmp_dir}/all-run-depends" + cat "${tmp_dir}/moveable-list" "${tmp_dir}/unmoveable-list" | \ + sed ' + s|^|'"${work_dir}/package-infos/"'| + s|$|.builds| + ' | \ + # base is boring, so we ignore it (might give result "... can be unstaged" although it _will_not_ be unstaged! + xargs -r grep -vHxF 'base' | \ + sed ' + s|^[^:]*/|| + s|\.builds:| | + ' | \ + sort -k2,2 > \ + "${tmp_dir}/all-builds" + for pkg in "$@"; do if ! state_file=$( @@ -118,13 +132,22 @@ case "${action}" in sort -u | \ sponge "${tmp_dir}/dependent" - sed ' - s|^|'"${work_dir}"'/package-infos/| - s|$|.builds| - ' "${tmp_dir}/dependent.new" | \ - xargs -r cat | \ - sort -u | \ - join -1 1 -2 2 -o 2.1 - "${tmp_dir}/all-run-depends" | \ + { + sed ' + s|^|'"${work_dir}"'/package-infos/| + s|$|.builds| + ' "${tmp_dir}/dependent.new" | \ + xargs -r cat | \ + sort -u | \ + join -1 1 -2 2 -o 2.1 - "${tmp_dir}/all-run-depends" + sed ' + s|^|'"${work_dir}"'/package-infos/| + s|$|.run-depends| + ' "${tmp_dir}/dependent.new" | \ + xargs -r cat | \ + sort -u | \ + join -1 1 -2 2 -o 2.1 - "${tmp_dir}/all-builds" + } | \ sort -u | \ sponge "${tmp_dir}/dependent.new" |