mirror of
https://github.com/swc-project/swc.git
synced 2024-11-24 10:12:42 +03:00
27 lines
820 B
Bash
Executable File
27 lines
820 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -eu
|
|
|
|
echo "Listing all swc crates"
|
|
|
|
swc_crates=$(cargo metadata --format-version=1 --all-features | jq '.packages .[] | select(.repository == "https://github.com/swc-project/swc.git" or .repository == "https://github.com/swc-project/plugins.git") | .name' -r)
|
|
|
|
command="cargo update"
|
|
for crate in $swc_crates; do
|
|
command="$command -p $crate"
|
|
done
|
|
|
|
echo "Running: $command"
|
|
eval $command
|
|
|
|
all_direct_deps=$(cargo metadata --format-version=1 --all-features | jq -r '.packages[] | select(.source == null) | .dependencies .[] .name' -r)
|
|
|
|
direct_swc_deps=$(comm -12 <(echo "$swc_crates" | sort) <(echo "$all_direct_deps" | sort))
|
|
|
|
command="cargo upgrade --incompatible --recursive false"
|
|
for crate in $direct_swc_deps; do
|
|
command="$command -p $crate"
|
|
done
|
|
|
|
echo "Running: $command"
|
|
eval $command |