Prune unnecessary replace directives from staging go.mod files

This commit is contained in:
Jordan Liggitt 2019-04-12 16:37:51 -04:00
parent 9e83e6d1cd
commit aaa8802acb

View File

@ -243,11 +243,19 @@ $(go mod why ${loopback_deps})"
# prune unused pinned replace directives
comm -23 \
<(go mod edit -json | jq -r '.Replace[] | select(.Old.Path == .New.Path) | select(.New.Version != null) | .Old.Path' | sort) \
<(go mod edit -json | jq -r '.Replace[] | .Old.Path' | sort) \
<(go list -m -json all | jq -r .Path | sort) |
xargs -L 1 -I {} echo "-dropreplace={}" |
xargs -L 100 go mod edit -fmt
# prune replace directives that pin to the naturally selected version
go list -m -json all |
jq -r 'select(.Replace != null) |
select(.Path == .Replace.Path) |
select(.Version == .Replace.Version) |
"-dropreplace \(.Replace.Path)"' |
xargs -L 100 go mod edit -fmt
popd >/dev/null 2>&1
done
echo "=== tidying root" >> "${LOG_FILE}"