bidict/upgrade-dev-dependencies.sh

46 lines
1.2 KiB
Bash
Raw Normal View History

#!/bin/bash
#
# Copyright 2009-2022 Joshua Bronson. All rights reserved.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
2022-04-01 14:29:06 +00:00
set -euo pipefail
log() {
2022-04-01 14:29:06 +00:00
echo -e >&2 "$@"
}
main() {
if ! type pre-commit || ! type pip-compile-multi; then
log "Error: pre-commit or pip-compile-multi not found." \
2022-04-01 14:29:06 +00:00
"\n Hint: pip install -r requirements/dev.txt"
exit 1
fi
2022-05-01 14:23:37 +00:00
local -r gitbranch=$(git branch --show-current)
if [ "$gitbranch" = "deps" ]; then
log "Already on branch 'deps'"
elif [ "$gitbranch" = "main" ]; then
git checkout -b deps main
else
log "On unsupported branch '$gitbranch'. Switch to 'main' and try again."
exit 1
fi
pip-compile-multi
pip install -r requirements/dev.txt
pre-commit autoupdate
pre-commit clean
2022-03-27 20:36:17 +00:00
log "Dev dependencies upgraded."
2022-04-01 14:29:06 +00:00
log "Reminders:" \
"\n - Check release notes of upgraded packages for anything that affects bidict." \
"\n - Run tests via 'tox' or by pushing to the 'deps' branch to ensure everything still works." \
"\n - Check output for any new warnings, not just test failures."
}
main