Skip to content

Commit

Permalink
prepare for release 1.29.0
Browse files Browse the repository at this point in the history
  • Loading branch information
mathiasertl committed Jun 29, 2024
1 parent 9c43590 commit 79b13b3
Show file tree
Hide file tree
Showing 11 changed files with 44 additions and 45 deletions.
2 changes: 1 addition & 1 deletion ca/django_ca/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
# https://www.python.org/dev/peps/pep-0440/
# https://www.python.org/dev/peps/pep-0396/
# https://www.python.org/dev/peps/pep-0386/
VERSION: VersionTuple = (1, 29, 0, "dev", 1)
VERSION: VersionTuple = (1, 29, 0)

# __version__ specified in PEP 0396, but we use the PEP 0440 format instead
__version__ = ".".join([str(e) for e in VERSION[:3]])
Expand Down
19 changes: 6 additions & 13 deletions devscripts/commands/release.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,23 +67,16 @@ def add_arguments(self, parser: argparse.ArgumentParser) -> None:
parser.add_argument("release", help="The actual release you want to build.")

def _validate_changelog(self, release: str) -> None:
path = str(config.DOCS_SOURCE_DIR / "changelog.rst")
today = date.today().strftime("%Y-%m-%d")
path = config.DOCS_SOURCE_DIR / "changelog" / f"{today}_{release}.rst"
with open(path, encoding="utf-8") as stream:
changelog = stream.read()
changelog_header = changelog.splitlines(keepends=True)[:11]
expected = f"""#########
ChangeLog
#########
.. _changelog-head:
.. _changelog-{release}:
*******************
changelog_header = changelog.splitlines(keepends=True)[:3]
expected = f"""###################
{release} ({date.today().strftime('%Y-%m-%d')})
*******************\n""".splitlines(keepends=True)
###################\n""".splitlines(keepends=True)
if changelog_header != expected:
diff = difflib.unified_diff(changelog_header, expected, fromfile=path, tofile="expected")
diff = difflib.unified_diff(changelog_header, expected, fromfile=str(path), tofile="expected")
raise CommandError(f"ChangeLog has improper header:\n\n{''.join(diff)}")

def pre_tag_checks(self, release: str) -> "Repo":
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ services:
- pgdata_16:/var/lib/postgresql/data

backend:
image: mathiasertl/django-ca:${DJANGO_CA_VERSION:-latest}
image: mathiasertl/django-ca:${DJANGO_CA_VERSION:-1.29.0}
command: ./celery.sh -l ${CELERY_LOG_LEVEL:-warning}
depends_on:
- cache
Expand Down Expand Up @@ -58,7 +58,7 @@ services:
stop_grace_period: 30s

frontend:
image: mathiasertl/django-ca:${DJANGO_CA_VERSION:-latest}
image: mathiasertl/django-ca:${DJANGO_CA_VERSION:-1.29.0}
depends_on:
- cache
- db
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
############
1.29.0 (TBR)
############
###################
1.29.0 (2024-06-29)
###################

* Fix the `encoding` GET parameter when retrieving certificate revocation lists.
* Configuring a password in a certificate revocation list view is deprecated. Use the ``CA_PASSWORDS`` setting
Expand Down Expand Up @@ -54,7 +54,7 @@ Many settings now have more strictly enforced limits, meant to catch configurati
Dependencies
************

* Add support for ``acme~=2.10.0`` and ``pydantic~=2.7.0``.
* Add support for ``acme~=2.10.0``, ``acme~=2.11.0`` and ``pydantic~=2.7.0``.
* **BACKWARDS INCOMPATIBLE:** Dropped support for Python 3.8.
* **BACKWARDS INCOMPATIBLE:** Dropped support for ``cryptography~=41.0``, ``acme~=2.7.0`` and ``acme~=2.8.0``.
* Increased minimum required versions to ``dnspython>=2.5``, ``hiredis>=2.1.0``, ``idna>=3.4``,
Expand Down Expand Up @@ -111,6 +111,8 @@ Deprecation notices

Please see the :doc:`deprecation timeline </deprecation>` for a detailed timeline of deprecated features.

* This is the last release to support ``celery~=5.3``, ``pydantic~=2.5.0``, ``acme~=2.9.0`` and
``acme~=2.10.0``.
* Support for the old extension format in profiles will be removed in 2.0.0.
* Support for the old subject format in :ref:`settings-ca-default-subject` and subjects in profiles will be
removed in 2.2.0.
Expand Down
3 changes: 2 additions & 1 deletion docs/source/dev/release.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Run these steps when you begin to create a new release:
* Update ``[django-ca.release]`` in :file:`pyproject.toml` with current minor versions.
* Add a deprecation notice for versions no longer supported upstream.

* Update table in ``docs/source/quickstart/as_app.rst``
* Run :command:`./dev.py validate state` and fix any errors.
* Update version in ``ca/django_ca/__init__.py``.

Expand All @@ -32,7 +33,7 @@ docker-compose

* Verify that :file:`docker-compose.yml` uses up-to-date version of 3rd-party containers.
* Set the default django-ca version in :file:`docker-compose.yml` to the new version.
* Update table in ``docs/source/quickstart_docker_compose.rst``.
* Update table in ``docs/source/quickstart/docker_compose.rst``.

******************
Test current state
Expand Down
2 changes: 1 addition & 1 deletion docs/source/quickstart/as_app.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ tested with what release (changes to previous versions in **bold**):
=========== ============== ================== =============== ============= =================== =============
django-ca Python Django cryptography Celery acme pydantic
=========== ============== ================== =============== ============= =================== =============
1.29 **3.9** - 3.12 4.2 - 5.0 **42** 5.3 - **5.4** **2.9** - **2.10** 2.5 - **2.7**
1.29 **3.9** - 3.12 4.2 - 5.0 **42** 5.3 - **5.4** **2.9** - **2.11** 2.5 - **2.7**
1.28 3.8 - 3.12 **4.2** - **5.0** 41 - **42** 5.3 **2.7** - **2.9** 2.5 - 2.6
1.27 3.8 - **3.12** 3.2, **4.2** **41** **5.3** 2.6 - **2.7**
1.26 3.8 - 3.11 3.2, 4.1 - 4.2 **40** - 41 **5.2** - 5.3 **2.5** - 2.6
Expand Down
1 change: 1 addition & 0 deletions docs/source/quickstart/docker_compose.rst
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ bundled third-party Docker images.
==================================================================================== ===== ========== =======
Version Redis PostgreSQL NGINX
==================================================================================== ===== ========== =======
`1.29.0 <https://github.com/mathiasertl/django-ca/blob/1.29.0/docker-compose.yml>`_ 7 16 1.24
`1.28.0 <https://github.com/mathiasertl/django-ca/blob/1.28.0/docker-compose.yml>`_ 7 **16** 1.24
`1.27.0 <https://github.com/mathiasertl/django-ca/blob/1.27.0/docker-compose.yml>`_ 7 12 1.24
`1.26.0 <https://github.com/mathiasertl/django-ca/blob/1.26.0/docker-compose.yml>`_ 7 12 1.24
Expand Down
2 changes: 2 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ alpine = [
"3.17", # until 2024-11-22
"3.18", # until 2025-05-09
"3.19", # until 2025-11-01
"3.20", # until 2026-04-01
]

# Blacklist images that we don't want to build for
Expand All @@ -45,6 +46,7 @@ ubuntu-releases = [
"focal", # 20.04, until 2025-04-23
"jammy", # 22.04, until 2027-04-21
"mantic", # 23.10, until 2024-07
"noble", # 24.04, until 2029-05-31
]

[django-ca.release.github]
Expand Down
2 changes: 1 addition & 1 deletion requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
-rrequirements/requirements-lint.txt
-rrequirements/requirements-mypy.txt
ipython>=7.28.0
docker==7.0.0
docker==7.1.0
pip>=23

tox>=4.14.2
Expand Down
42 changes: 21 additions & 21 deletions requirements-pinned.txt
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
acme==2.9.0
acme==2.11.0
amqp==5.2.0
annotated-types==0.6.0
annotated-types==0.7.0
asgiref==3.8.1
asn1crypto==1.5.1
billiard==4.2.0
celery==5.3.6
certifi==2024.2.2
celery==5.4.0
certifi==2024.6.2
cffi==1.16.0
charset-normalizer==3.3.2
click==8.1.7
click-didyoumean==0.3.1
click-plugins==1.1.1
click-repl==0.3.0
cryptography==42.0.5
Django==5.0.3
django-ninja==1.1.0
cryptography==42.0.8
Django==5.0.6
django-ninja==1.2.0
django-object-actions==4.2.0
dnspython==2.6.1
hiredis==2.3.2
idna==3.7
josepy==1.14.0
kombu==5.3.6
packaging==24.0
prompt-toolkit==3.0.43
psycopg==3.1.18
psycopg-c==3.1.18
psycopg-pool==3.2.1
pycparser==2.21
pydantic==2.6.4
pydantic_core==2.16.3
kombu==5.3.7
packaging==24.1
prompt_toolkit==3.0.47
psycopg==3.1.19
psycopg-c==3.1.19
psycopg-pool==3.2.2
pycparser==2.22
pydantic==2.7.4
pydantic_core==2.18.4
pyOpenSSL==24.1.0
pyRFC3339==1.1
python-dateutil==2.9.0.post0
pytz==2024.1
PyYAML==6.0.1
redis==5.0.3
requests==2.32.0
setuptools==69.2.0
redis==5.0.7
requests==2.32.3
setuptools==70.1.1
six==1.16.0
sqlparse==0.5.0
typing_extensions==4.10.0
typing_extensions==4.12.2
tzdata==2024.1
urllib3==2.2.1
urllib3==2.2.2
vine==5.1.0
wcwidth==0.2.13
wheel==0.43.0
2 changes: 1 addition & 1 deletion requirements/requirements-lint.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
-r requirements-dev-common.txt
pre-commit==3.7.1
pylint-django==2.5.5
pylint==3.2.4
pylint==3.2.5
ruff==0.5.0
setuptools>=65

0 comments on commit 79b13b3

Please sign in to comment.