count-deps (1344B)
1 #!/bin/bash 2 # This file has been placed in the public domain. 3 4 # Helper for printing some basic stats about dependencies. 5 # The number of basic deps is the one we care about most, 6 # since these need to be present for every build. 7 # The qa-tooling dependencies are only used on demand. 8 9 DEPS_ALL_DIRECT=$(pnpm ls -r --depth=0 --json | jq '[.. | select(.from? and .version?) | select(.version | startswith("link:") or startswith("workspace:") | not) | "\(.from)@\(.version)"] | unique | length') 10 DEPS_ALL=$(pnpm ls -r --depth Infinity --json | jq '[.. | objects | select(.from? and .version?) | select(.version | startswith("link:") or startswith("workspace:") | not) | "\(.from)@\(.version)"] | unique | length') 11 12 DEPS_BASIC_DIRECT=$(pnpm ls -r --depth=0 --json --filter !@gnu-taler/qa-tooling | jq '[.. | select(.from? and .version?) | select(.version | startswith("link:") or startswith("workspace:") | not) | "\(.from)@\(.version)"] | unique | length') 13 DEPS_BASIC=$(pnpm ls -r --depth Infinity --json --filter !@gnu-taler/qa-tooling | jq '[.. | objects | select(.from? and .version?) | select(.version | startswith("link:") or startswith("workspace:") | not) | "\(.from)@\(.version)"] | unique | length') 14 15 echo basic direct $DEPS_BASIC_DIRECT 16 echo basic transitive $DEPS_BASIC 17 18 echo all direct $DEPS_ALL_DIRECT 19 echo all transitive $DEPS_ALL 20