-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.py
More file actions
65 lines (60 loc) · 2.6 KB
/
setup.py
File metadata and controls
65 lines (60 loc) · 2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import setuptools
from pathlib import Path
# Définition du répertoire racine du projet (là où se trouve ce fichier setup.py)
root_dir = Path(__file__).absolute().parent
# Lecture du numéro de version depuis le fichier VERSION
with (root_dir / "VERSION").open() as f:
version = f.read().strip()
# Lecture du contenu du fichier README.md pour la description longue du package
with (root_dir / "README.md").open() as f:
long_description = f.read()
### Méta-données et configuration du package ###
setuptools.setup(
name="oeasc", # Nom du package
description="", # Courte description (à compléter)
long_description=long_description, # Description longue (affichée sur PyPI)
long_description_content_type="text/markdown", # Format du README
maintainer="Parc national des Cévennes", # Nom du mainteneur
maintainer_email="admin_si@cevennes-parcnational.fr", # Email du mainteneur
url="https://github.com/PnX-SI/GeoNature/", # URL du projet
python_requires=">=3.8", # Version minimale de Python requise
version=version, # Version du package (lue dans VERSION)
# Recherche des packages dans le dossier 'backend', incluant uniquement 'oeasc'
packages=setuptools.find_packages(where="backend", include=["oeasc"]),
package_dir={
"": "backend", # Indique que les packages sont dans le dossier 'backend'
},
# Fichiers supplémentaires à inclure dans le package (templates, static, migrations, etc.)
package_data={
"oeasc": ["**/templates/**/*.html", "**/static/**/*"],
"oeasc.migrations": ["alembic.ini", "script.py.mako", "data/*.sql"],
},
# Points d'entrée pour l'intégration avec Alembic (utilisé lors des migrations de base de données)
entry_points={
"alembic": [
"migrations = oeasc.migrations:versions",
],
},
# Dépendances du package (lues depuis requirements.txt)
install_requires=list(
open("requirements.txt", "r"),
),
# Dépendances optionnelles pour les tests et la documentation
extras_require={
"tests": [
"pytest",
"pytest-flask",
"pytest-benchmark",
"pytest-cov",
],
"doc": [],
},
# Classificateurs pour PyPI (indiquent le framework, la version de Python, etc.)
classifiers=[
"Framework :: Flask",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
],
)
# Ce fichier setup.py est utilisé lors de l'installation ou la distribution du package.
# Il est exécuté par la commande 'pip install .' ou 'python setup.py install'.