goose/scripts/check-no-native-tls.sh

28 lines
875 B
Bash
Executable file

#!/bin/bash
# Prevent native-tls/OpenSSL from being added to the dependency tree.
# These cause Linux compatibility issues with OpenSSL version mismatches.
# See: https://github.com/block/goose/issues/6034
set -e
BANNED_CRATES=("native-tls" "openssl-sys" "openssl")
FOUND_BANNED=0
for crate in "${BANNED_CRATES[@]}"; do
if cargo tree -i "$crate" 2>/dev/null | grep -q "$crate"; then
echo "ERROR: Found banned crate '$crate' in dependency tree"
echo "This causes Linux compatibility issues with OpenSSL versions."
echo "Use rustls-based alternatives instead (e.g., rustls-tls-native-roots)."
echo ""
echo "Dependency chain:"
cargo tree -i "$crate"
echo ""
FOUND_BANNED=1
fi
done
if [ $FOUND_BANNED -eq 1 ]; then
exit 1
fi
echo "✓ No banned TLS crates found (native-tls, openssl, openssl-sys)"