From d11cdb5eb81c63b5c88dc9db3b0a220195507d3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20M=C3=A9taireau?= Date: Sun, 13 Aug 2023 02:18:12 +0200 Subject: [PATCH] Specify version in la_chariotte.__version__ only Rather than having the version specified in different locations. This uses setuptools dynamic features. --- README.md | 2 +- la_chariotte/__init__.py | 1 + la_chariotte/context_processors.py | 5 +++++ la_chariotte/settings.py | 1 + la_chariotte/templates/base.html | 2 +- pyproject.toml | 12 ++++++++++-- 6 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 la_chariotte/context_processors.py diff --git a/README.md b/README.md index dcb4eef..897f932 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ le numéro de version MAJEUR quand il y a des changements non rétrocompatibles, le numéro de version MINEUR quand il y a des ajouts de fonctionnalités rétrocompatibles, le numéro de version de CORRECTIF quand il y a des corrections d’anomalies rétrocompatibles. -La version est à mettre à jour dans le CHANGELOG, README, dans le pyproject.toml, dans le footer (base.html), seulement lorsque develop est mergé dans main. +La version est à mettre à jour dans `la_chariotte.__init__.py` lors des releases. ## Développement diff --git a/la_chariotte/__init__.py b/la_chariotte/__init__.py index e69de29..6c7936a 100644 --- a/la_chariotte/__init__.py +++ b/la_chariotte/__init__.py @@ -0,0 +1 @@ +__version__ = "1.0.0-dev" diff --git a/la_chariotte/context_processors.py b/la_chariotte/context_processors.py new file mode 100644 index 0000000..ce3b891 --- /dev/null +++ b/la_chariotte/context_processors.py @@ -0,0 +1,5 @@ +from la_chariotte import __version__ + + +def inject_version(request): + return {"version": __version__} diff --git a/la_chariotte/settings.py b/la_chariotte/settings.py index 5f04f88..ba05074 100644 --- a/la_chariotte/settings.py +++ b/la_chariotte/settings.py @@ -61,6 +61,7 @@ TEMPLATES = [ "django.template.context_processors.request", "django.contrib.auth.context_processors.auth", "django.contrib.messages.context_processors.messages", + "la_chariotte.context_processors.inject_version", ], }, }, diff --git a/la_chariotte/templates/base.html b/la_chariotte/templates/base.html index dc98930..e04e473 100644 --- a/la_chariotte/templates/base.html +++ b/la_chariotte/templates/base.html @@ -130,7 +130,7 @@

- La Chariotte | version 1.0.0 + La Chariotte | version {{ version }}

diff --git a/pyproject.toml b/pyproject.toml index badc033..32ab2e2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,9 +1,10 @@ [project] name = "la_chariotte" -version = "1.0.0" +dynamic = ["version"] + description = "Web application for organising grouped orders" authors = [{name = "Laetitia Getti", email = "laetitia@chariotte.fr"}] -readme = "readMe.md" +readme = "README.md" license = {file = "LICENSE"} classifiers = ["License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)"] dependencies = [ @@ -13,6 +14,13 @@ dependencies = [ "xhtml2pdf", ] +[tool.setuptools] +py-modules = ["la_chariotte"] + +[tool.setuptools.dynamic] +version = {attr = "la_chariotte.__version__"} + + [build-system] requires = [ "setuptools","wheel"