Specify version in la_chariotte.__version__ only

Rather than having the version specified in different locations. This uses
setuptools dynamic features.
This commit is contained in:
Alexis Métaireau 2023-08-13 02:18:12 +02:00
parent 42013d8e9a
commit d11cdb5eb8
6 changed files with 19 additions and 4 deletions

View file

@ -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 danomalies 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

View file

@ -0,0 +1 @@
__version__ = "1.0.0-dev"

View file

@ -0,0 +1,5 @@
from la_chariotte import __version__
def inject_version(request):
return {"version": __version__}

View file

@ -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",
],
},
},

View file

@ -130,7 +130,7 @@
<div class="content has-text-centered columns">
<div class="column">
<p>
<strong>La Chariotte</strong> | version 1.0.0
<strong>La Chariotte</strong> | version {{ version }}
</p>
</div>
<div class="column">

View file

@ -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"