diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 62e6a2fa..c7026798 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -12,10 +12,8 @@ search = :Version: {current_version} replace = :Version: {new_version} [bumpversion:file:package.json] -search = "version": "{current_version}", -replace = "version": "{new_version}", - -[bumpversion:file:src/objects/conf/api.py] +search = "version": "{current_version}" +replace = "version": "{new_version}" [bumpversion:file:src/objects/__init__.py] diff --git a/.github/ISSUE_TEMPLATE/prepare-release.md b/.github/ISSUE_TEMPLATE/prepare-release.md index 93f3a92b..cc48bea6 100644 --- a/.github/ISSUE_TEMPLATE/prepare-release.md +++ b/.github/ISSUE_TEMPLATE/prepare-release.md @@ -16,5 +16,5 @@ projects: ["maykinmedia/15"] - [ ] Version bump - [ ] Regenerate API spec - [ ] Update READMEs with release dates + links -- [ ] Bump version number with `bumpversion ` or `bump-my-version bump ` +- [ ] Bump version number with `bin/bump-my-version.sh bump ` - [ ] Update changelog diff --git a/bin/bump-my-version.sh b/bin/bump-my-version.sh new file mode 100755 index 00000000..13f5a2b4 --- /dev/null +++ b/bin/bump-my-version.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash +# +# Script to bump the version. Arguments are forwarded to bump-my-version. +# +# Usage: +# +# ./bin/bumpversion.sh bump minor|patch|pre|build +# + +set -eu -o pipefail + +toplevel=$(git rev-parse --show-toplevel) +cd $toplevel + +# Ensure a virtualenv is active. +if [ -z $VIRTUAL_ENV ]; then + echo "VIRTUAL_ENV envvar is not set, you must activate your virtualenv before running this script." + exit 1 +fi + +# Forward all arguments to bump-my-version binary +bump-my-version "$@" + +# Run npm install to update the package-lock.json version number +npm i diff --git a/requirements/dev.in b/requirements/dev.in index 141e314c..2eb0f09b 100644 --- a/requirements/dev.in +++ b/requirements/dev.in @@ -3,7 +3,7 @@ # Helpers pip-tools -bumpversion +bump-my-version # Debug tooling django-debug-toolbar diff --git a/requirements/dev.txt b/requirements/dev.txt index de9a8938..c592e094 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -15,6 +15,8 @@ annotated-types==0.7.0 # -c requirements/ci.txt # -r requirements/ci.txt # pydantic +anyio==4.8.0 + # via httpx ape-pie==0.2.0 # via # -c requirements/ci.txt @@ -70,11 +72,11 @@ boltons==21.0.0 # -r requirements/ci.txt # face # glom +bracex==2.5.post1 + # via wcmatch build==1.0.3 # via pip-tools -bump2version==1.0.1 - # via bumpversion -bumpversion==0.6.0 +bump-my-version==0.32.1 # via -r requirements/dev.in cbor2==5.6.2 # via @@ -94,6 +96,8 @@ certifi==2024.7.4 # -r requirements/ci.txt # django-simple-certmanager # elastic-apm + # httpcore + # httpx # requests # sentry-sdk cffi==1.16.0 @@ -111,11 +115,13 @@ click==8.1.7 # -c requirements/ci.txt # -r requirements/ci.txt # black + # bump-my-version # celery # click-didyoumean # click-plugins # click-repl # pip-tools + # rich-click click-didyoumean==0.3.0 # via # -c requirements/ci.txt @@ -447,6 +453,12 @@ glom==23.5.0 # -c requirements/ci.txt # -r requirements/ci.txt # mozilla-django-oidc-db +h11==0.14.0 + # via httpcore +httpcore==1.0.7 + # via httpx +httpx==0.28.1 + # via bump-my-version humanize==4.9.0 # via # -c requirements/ci.txt @@ -456,6 +468,8 @@ idna==3.7 # via # -c requirements/ci.txt # -r requirements/ci.txt + # anyio + # httpx # requests # yarl imagesize==1.4.1 @@ -519,6 +533,8 @@ lxml==4.9.4 # -c requirements/ci.txt # -r requirements/ci.txt # pyquery +markdown-it-py==3.0.0 + # via rich markupsafe==2.1.3 # via # -c requirements/ci.txt @@ -534,6 +550,8 @@ mccabe==0.7.0 # -c requirements/ci.txt # -r requirements/ci.txt # flake8 +mdurl==0.1.2 + # via markdown-it-py mozilla-django-oidc==4.0.0 # via # -c requirements/ci.txt @@ -616,6 +634,7 @@ prompt-toolkit==3.0.43 # -c requirements/ci.txt # -r requirements/ci.txt # click-repl + # questionary psycopg2==2.9.9 # via # -c requirements/ci.txt @@ -635,6 +654,7 @@ pydantic==2.9.2 # via # -c requirements/ci.txt # -r requirements/ci.txt + # bump-my-version # django-setup-configuration # pydantic-settings pydantic-core==2.23.4 @@ -646,6 +666,7 @@ pydantic-settings==2.6.1 # via # -c requirements/ci.txt # -r requirements/ci.txt + # bump-my-version # django-setup-configuration pyflakes==3.2.0 # via @@ -656,6 +677,7 @@ pygments==2.18.0 # via # -c requirements/ci.txt # -r requirements/ci.txt + # rich # sphinx # sphinx-tabs pyjwt==2.4.0 @@ -727,6 +749,8 @@ qrcode==6.1 # -c requirements/ci.txt # -r requirements/ci.txt # django-two-factor-auth +questionary==2.1.0 + # via bump-my-version recommonmark==0.7.1 # via # -c requirements/ci.txt @@ -756,6 +780,12 @@ requests-mock==1.12.1 # -c requirements/ci.txt # -r requirements/ci.txt # commonground-api-common +rich==13.9.4 + # via + # bump-my-version + # rich-click +rich-click==1.8.5 + # via bump-my-version sentry-sdk==2.12.0 # via # -c requirements/ci.txt @@ -778,6 +808,8 @@ six==1.16.0 # python-dateutil # qrcode # webtest +sniffio==1.3.1 + # via anyio snowballstemmer==2.2.0 # via # -c requirements/ci.txt @@ -857,6 +889,8 @@ text-unidecode==1.3 # -c requirements/ci.txt # -r requirements/ci.txt # faker +tomlkit==0.13.2 + # via bump-my-version tornado==6.4.2 # via # -c requirements/ci.txt @@ -866,9 +900,11 @@ typing-extensions==4.9.0 # via # -c requirements/ci.txt # -r requirements/ci.txt + # anyio # mozilla-django-oidc-db # pydantic # pydantic-core + # rich-click # zgw-consumers tzdata==2024.1 # via @@ -910,6 +946,8 @@ waitress==3.0.1 # -c requirements/ci.txt # -r requirements/ci.txt # webtest +wcmatch==10.0 + # via bump-my-version wcwidth==0.2.13 # via # -c requirements/ci.txt