Password-Generator-Advanced 1.0.0__tar.gz → 1.0.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,300 @@
1
+ Metadata-Version: 2.4
2
+ Name: Password-Generator-Advanced
3
+ Version: 1.0.2
4
+ Summary: Secure command-line password generator with strict cryptographic constraints. Interactive menu and CLI modes. Passphrase generation. Entropy evaluation. Cross-platform clipboard support.
5
+ License-File: LICENSE
6
+ Author: valorisa
7
+ Requires-Python: >=3.12,<4.0
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.12
10
+ Classifier: Programming Language :: Python :: 3.13
11
+ Classifier: Programming Language :: Python :: 3.14
12
+ Description-Content-Type: text/markdown
13
+
14
+ # Password-Generator-Advanced
15
+
16
+ > 🇫🇷 Version française | 🇺🇸 [English version](README.en.md)
17
+
18
+ ![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)
19
+ ![Python 3.12+](https://img.shields.io/badge/Python-3.12%2B-3776AB.svg?logo=python&logoColor=white)
20
+ ![Security: secrets](https://img.shields.io/badge/Security-secrets%20module-green.svg)
21
+
22
+ Générateur de mots de passe sécurisés en ligne de commande avec des contraintes cryptographiques strictes. Chaque mot de passe généré contient obligatoirement des lettres minuscules, majuscules, chiffres et caractères spéciaux, avec des minimums configurables.
23
+
24
+ ---
25
+
26
+ ## Installation Rapide
27
+
28
+ **Password-Generator-Advanced est disponible sur PyPI !** N'importe qui peut l'installer directement avec pip :
29
+
30
+ ```bash
31
+ pip install Password-Generator-Advanced
32
+ ```
33
+
34
+ Une fois installé, lancez simplement :
35
+
36
+ ```bash
37
+ password-generator-advanced
38
+ ```
39
+
40
+ Le package est compatible avec **Python 3.12+** et fonctionne sur Linux, macOS et Windows.
41
+
42
+ **Que fait cette commande ?**
43
+ - Télécharge automatiquement la dernière version stable depuis PyPI
44
+ - Installe le package dans votre environnement Python
45
+ - Rend la commande `password-generator-advanced` disponible globalement
46
+
47
+ **Mise à jour vers la dernière version :**
48
+
49
+ ```bash
50
+ pip install --upgrade Password-Generator-Advanced
51
+ ```
52
+
53
+ **Installation dans un environnement virtuel (recommandé) :**
54
+
55
+ ```bash
56
+ # Créer un environnement virtuel
57
+ python -m venv venv
58
+
59
+ # Activer l'environnement
60
+ # Sur Linux/macOS :
61
+ source venv/bin/activate
62
+ # Sur Windows :
63
+ venv\Scripts\activate
64
+
65
+ # Installer le package
66
+ pip install Password-Generator-Advanced
67
+ ```
68
+
69
+ ### Alternative : Installation depuis les sources
70
+
71
+ Si vous souhaitez contribuer au projet ou utiliser la version de développement :
72
+
73
+ ```bash
74
+ git clone https://github.com/valorisa/Password-Generator-Advanced.git
75
+ cd Password-Generator-Advanced
76
+ poetry install
77
+ ```
78
+
79
+ **Prérequis pour l'installation depuis les sources :**
80
+ - Python 3.12 ou supérieur
81
+ - Poetry (gestionnaire de dépendances)
82
+
83
+ ---
84
+
85
+ ## Fonctionnalités
86
+
87
+ - Génération de mots de passe avec contraintes strictes (configurable)
88
+ - Génération de passphrases (style Diceware, 2048 mots, 11 bits d'entropie par mot)
89
+ - Évaluation de la force d'un mot de passe ou passphrase existant
90
+ - Copie dans le presse-papier (Windows, macOS, Linux)
91
+ - Mode interactif (menu) et mode CLI (arguments en ligne de commande)
92
+
93
+ ---
94
+
95
+ ## Contraintes par défaut
96
+
97
+ | Contrainte | Minimum garanti |
98
+ |------------|-----------------|
99
+ | Chiffres (0-9) | 9 |
100
+ | Caractères spéciaux (`!@#$%^&*`...) | 9 |
101
+ | Lettres minuscules (a-z) | 1 |
102
+ | Lettres majuscules (A-Z) | 1 |
103
+ | **Longueur minimale totale** | **20 caractères** |
104
+
105
+ Les contraintes de chiffres et caractères spéciaux sont paramétrables via `--min-digits` et `--min-special`.
106
+
107
+ Le module Python `secrets` est utilisé pour la génération (CSPRNG — Cryptographically Secure Pseudo-Random Number Generator).
108
+
109
+ ---
110
+
111
+ ## Utilisation
112
+
113
+ ### Mode interactif
114
+
115
+ **Si vous avez installé via pip depuis PyPI :**
116
+
117
+ ```bash
118
+ password-generator-advanced
119
+ ```
120
+
121
+ **Si vous utilisez l'installation depuis les sources (avec Poetry) :**
122
+
123
+ ```bash
124
+ python -m password_generator_advanced
125
+ ```
126
+
127
+ *Note : Les deux commandes sont équivalentes et lancent le même programme.*
128
+
129
+ Le menu interactif s'affiche :
130
+
131
+ ```
132
+ ==================================================
133
+ GÉNÉRATEUR DE MOTS DE PASSE SÉCURISÉS
134
+ ==================================================
135
+
136
+ Contraintes appliquées :
137
+ - Minimum 9 chiffres
138
+ - Minimum 9 caractères spéciaux
139
+ - Au moins 1 lettre minuscule
140
+ - Au moins 1 lettre majuscule
141
+ - Longueur minimale : 20 caractères
142
+
143
+ --------------------------------------------------
144
+ 1 - Générer un mot de passe
145
+ 2 - Générer plusieurs mots de passe
146
+ 3 - Générer une passphrase
147
+ 4 - Évaluer un mot de passe / passphrase
148
+ 5 - Quitter
149
+ --------------------------------------------------
150
+ ```
151
+
152
+ ### Mode CLI
153
+
154
+ ```bash
155
+ # Générer un mot de passe (longueur 30)
156
+ python -m password_generator_advanced --length 30
157
+
158
+ # Générer 5 mots de passe
159
+ python -m password_generator_advanced --length 25 --count 5
160
+
161
+ # Contraintes personnalisées
162
+ python -m password_generator_advanced --length 20 --min-digits 3 --min-special 5
163
+
164
+ # Générer une passphrase (6 mots par défaut)
165
+ python -m password_generator_advanced --passphrase
166
+
167
+ # Passphrase avec options
168
+ python -m password_generator_advanced --passphrase --words 8 --separator "."
169
+
170
+ # Évaluer un mot de passe existant
171
+ python -m password_generator_advanced --evaluate "mon-super-mot-de-passe!"
172
+
173
+ # Copier le résultat dans le presse-papier
174
+ python -m password_generator_advanced --length 25 --copy
175
+ ```
176
+
177
+ ### Options CLI complètes
178
+
179
+ | Option | Court | Description |
180
+ |--------|-------|-------------|
181
+ | `--length` | `-l` | Longueur du mot de passe |
182
+ | `--min-digits` | | Nombre minimum de chiffres (défaut: 9) |
183
+ | `--min-special` | | Nombre minimum de caractères spéciaux (défaut: 9) |
184
+ | `--count` | `-n` | Nombre de mots de passe à générer |
185
+ | `--passphrase` | `-p` | Générer une passphrase |
186
+ | `--words` | `-w` | Nombre de mots pour la passphrase (défaut: 6) |
187
+ | `--separator` | | Séparateur pour la passphrase (défaut: `-`) |
188
+ | `--evaluate` | `-e` | Évaluer l'entropie théorique d'un mot de passe |
189
+ | `--copy` | `-c` | Copier dans le presse-papier |
190
+
191
+ ---
192
+
193
+ ## Évaluation de mot de passe
194
+
195
+ L'outil peut évaluer l'entropie théorique maximale d'un mot de passe ou passphrase existant :
196
+
197
+ ```
198
+ Entropie théorique maximale :
199
+ Longueur : 28 caractères
200
+ Entropie max. : 164.0 bits
201
+ Niveau : Très fort
202
+ Jeu de caractères: 58 symboles possibles
203
+
204
+ Catégories détectées :
205
+ Minuscules : ✓
206
+ Majuscules : ✗
207
+ Chiffres : ✗
208
+ Spéciaux : ✓
209
+
210
+ ⚠ Ce calcul suppose un choix aléatoire par caractère.
211
+ Un mot de passe basé sur des mots du dictionnaire ou des
212
+ patterns prévisibles aura une entropie réelle inférieure.
213
+ ```
214
+
215
+ Seuils (alignés sur les recommandations ANSSI) :
216
+
217
+ | Entropie | Niveau |
218
+ |----------|--------|
219
+ | < 48 bits | Très faible |
220
+ | 48-63 bits | Faible |
221
+ | 64-79 bits | Moyen |
222
+ | 80-127 bits | Fort |
223
+ | ≥ 128 bits | Très fort |
224
+
225
+ ---
226
+
227
+ ## Architecture du projet
228
+
229
+ ```
230
+ Password-Generator-Advanced/
231
+ ├── src/
232
+ │ └── password_generator_advanced/
233
+ │ ├── __init__.py # Version du package
234
+ │ ├── __main__.py # Point d'entrée python -m
235
+ │ ├── main.py # Menu interactif + CLI argparse
236
+ │ ├── generator.py # Algorithme de génération + évaluation
237
+ │ ├── wordlist.py # Liste de 2048 mots pour passphrases
238
+ │ └── clipboard.py # Copie presse-papier cross-platform
239
+ ├── tests/
240
+ │ └── test_generator.py # 18 tests
241
+ ├── pyproject.toml # Configuration Poetry
242
+ ├── LICENSE # MIT
243
+ ├── SECURITY.md
244
+ ├── CONTRIBUTING.md
245
+ └── CODE_OF_CONDUCT.md
246
+ ```
247
+
248
+ ### Algorithme de génération (`generator.py`)
249
+
250
+ 1. **Placement garanti** : N chiffres + N caractères spéciaux + 1 minuscule + 1 majuscule sont placés en premier
251
+ 2. **Remplissage** : Les positions restantes sont remplies avec un mélange aléatoire de toutes les catégories
252
+ 3. **Mélange final** : L'ensemble est mélangé via `secrets.SystemRandom().shuffle()` pour éliminer tout pattern positionnel prévisible
253
+
254
+ ### Génération de passphrases
255
+
256
+ Sélection aléatoire de mots depuis une liste de 2048 mots (11 bits d'entropie par mot). Une passphrase de 6 mots offre ~66 bits d'entropie.
257
+
258
+ ---
259
+
260
+ ## Sécurité
261
+
262
+ - **Module `secrets`** : Utilise le générateur aléatoire cryptographiquement sécurisé du système d'exploitation (`/dev/urandom` sur Linux/macOS, `CryptGenRandom` sur Windows)
263
+ - **Aucune dépendance externe** : Uniquement la bibliothèque standard Python — pas de surface d'attaque tierce
264
+ - **Pas de stockage** : Les mots de passe générés ne sont jamais écrits sur disque ni envoyés sur le réseau
265
+
266
+ Pour signaler une vulnérabilité, consultez [SECURITY.md](SECURITY.md).
267
+
268
+ ---
269
+
270
+ ## Développement
271
+
272
+ ```bash
273
+ # Lancer les tests
274
+ poetry run pytest tests/ -v
275
+
276
+ # Vérifier le style
277
+ poetry run ruff check .
278
+
279
+ # Corriger automatiquement
280
+ poetry run ruff check . --fix
281
+ ```
282
+
283
+ ---
284
+
285
+ ## Contribution
286
+
287
+ Les contributions sont bienvenues. Consultez [CONTRIBUTING.md](CONTRIBUTING.md) pour le processus détaillé.
288
+
289
+ Ce projet respecte le [Contributor Covenant 2.1](CODE_OF_CONDUCT.md).
290
+
291
+ ---
292
+
293
+ ## Licence
294
+
295
+ [MIT](LICENSE) - Utilisation libre, commerciale et modification autorisées.
296
+
297
+ ---
298
+
299
+ **Auteur** : [valorisa](https://github.com/valorisa)
300
+
@@ -0,0 +1,286 @@
1
+ # Password-Generator-Advanced
2
+
3
+ > 🇫🇷 Version française | 🇺🇸 [English version](README.en.md)
4
+
5
+ ![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)
6
+ ![Python 3.12+](https://img.shields.io/badge/Python-3.12%2B-3776AB.svg?logo=python&logoColor=white)
7
+ ![Security: secrets](https://img.shields.io/badge/Security-secrets%20module-green.svg)
8
+
9
+ Générateur de mots de passe sécurisés en ligne de commande avec des contraintes cryptographiques strictes. Chaque mot de passe généré contient obligatoirement des lettres minuscules, majuscules, chiffres et caractères spéciaux, avec des minimums configurables.
10
+
11
+ ---
12
+
13
+ ## Installation Rapide
14
+
15
+ **Password-Generator-Advanced est disponible sur PyPI !** N'importe qui peut l'installer directement avec pip :
16
+
17
+ ```bash
18
+ pip install Password-Generator-Advanced
19
+ ```
20
+
21
+ Une fois installé, lancez simplement :
22
+
23
+ ```bash
24
+ password-generator-advanced
25
+ ```
26
+
27
+ Le package est compatible avec **Python 3.12+** et fonctionne sur Linux, macOS et Windows.
28
+
29
+ **Que fait cette commande ?**
30
+ - Télécharge automatiquement la dernière version stable depuis PyPI
31
+ - Installe le package dans votre environnement Python
32
+ - Rend la commande `password-generator-advanced` disponible globalement
33
+
34
+ **Mise à jour vers la dernière version :**
35
+
36
+ ```bash
37
+ pip install --upgrade Password-Generator-Advanced
38
+ ```
39
+
40
+ **Installation dans un environnement virtuel (recommandé) :**
41
+
42
+ ```bash
43
+ # Créer un environnement virtuel
44
+ python -m venv venv
45
+
46
+ # Activer l'environnement
47
+ # Sur Linux/macOS :
48
+ source venv/bin/activate
49
+ # Sur Windows :
50
+ venv\Scripts\activate
51
+
52
+ # Installer le package
53
+ pip install Password-Generator-Advanced
54
+ ```
55
+
56
+ ### Alternative : Installation depuis les sources
57
+
58
+ Si vous souhaitez contribuer au projet ou utiliser la version de développement :
59
+
60
+ ```bash
61
+ git clone https://github.com/valorisa/Password-Generator-Advanced.git
62
+ cd Password-Generator-Advanced
63
+ poetry install
64
+ ```
65
+
66
+ **Prérequis pour l'installation depuis les sources :**
67
+ - Python 3.12 ou supérieur
68
+ - Poetry (gestionnaire de dépendances)
69
+
70
+ ---
71
+
72
+ ## Fonctionnalités
73
+
74
+ - Génération de mots de passe avec contraintes strictes (configurable)
75
+ - Génération de passphrases (style Diceware, 2048 mots, 11 bits d'entropie par mot)
76
+ - Évaluation de la force d'un mot de passe ou passphrase existant
77
+ - Copie dans le presse-papier (Windows, macOS, Linux)
78
+ - Mode interactif (menu) et mode CLI (arguments en ligne de commande)
79
+
80
+ ---
81
+
82
+ ## Contraintes par défaut
83
+
84
+ | Contrainte | Minimum garanti |
85
+ |------------|-----------------|
86
+ | Chiffres (0-9) | 9 |
87
+ | Caractères spéciaux (`!@#$%^&*`...) | 9 |
88
+ | Lettres minuscules (a-z) | 1 |
89
+ | Lettres majuscules (A-Z) | 1 |
90
+ | **Longueur minimale totale** | **20 caractères** |
91
+
92
+ Les contraintes de chiffres et caractères spéciaux sont paramétrables via `--min-digits` et `--min-special`.
93
+
94
+ Le module Python `secrets` est utilisé pour la génération (CSPRNG — Cryptographically Secure Pseudo-Random Number Generator).
95
+
96
+ ---
97
+
98
+ ## Utilisation
99
+
100
+ ### Mode interactif
101
+
102
+ **Si vous avez installé via pip depuis PyPI :**
103
+
104
+ ```bash
105
+ password-generator-advanced
106
+ ```
107
+
108
+ **Si vous utilisez l'installation depuis les sources (avec Poetry) :**
109
+
110
+ ```bash
111
+ python -m password_generator_advanced
112
+ ```
113
+
114
+ *Note : Les deux commandes sont équivalentes et lancent le même programme.*
115
+
116
+ Le menu interactif s'affiche :
117
+
118
+ ```
119
+ ==================================================
120
+ GÉNÉRATEUR DE MOTS DE PASSE SÉCURISÉS
121
+ ==================================================
122
+
123
+ Contraintes appliquées :
124
+ - Minimum 9 chiffres
125
+ - Minimum 9 caractères spéciaux
126
+ - Au moins 1 lettre minuscule
127
+ - Au moins 1 lettre majuscule
128
+ - Longueur minimale : 20 caractères
129
+
130
+ --------------------------------------------------
131
+ 1 - Générer un mot de passe
132
+ 2 - Générer plusieurs mots de passe
133
+ 3 - Générer une passphrase
134
+ 4 - Évaluer un mot de passe / passphrase
135
+ 5 - Quitter
136
+ --------------------------------------------------
137
+ ```
138
+
139
+ ### Mode CLI
140
+
141
+ ```bash
142
+ # Générer un mot de passe (longueur 30)
143
+ python -m password_generator_advanced --length 30
144
+
145
+ # Générer 5 mots de passe
146
+ python -m password_generator_advanced --length 25 --count 5
147
+
148
+ # Contraintes personnalisées
149
+ python -m password_generator_advanced --length 20 --min-digits 3 --min-special 5
150
+
151
+ # Générer une passphrase (6 mots par défaut)
152
+ python -m password_generator_advanced --passphrase
153
+
154
+ # Passphrase avec options
155
+ python -m password_generator_advanced --passphrase --words 8 --separator "."
156
+
157
+ # Évaluer un mot de passe existant
158
+ python -m password_generator_advanced --evaluate "mon-super-mot-de-passe!"
159
+
160
+ # Copier le résultat dans le presse-papier
161
+ python -m password_generator_advanced --length 25 --copy
162
+ ```
163
+
164
+ ### Options CLI complètes
165
+
166
+ | Option | Court | Description |
167
+ |--------|-------|-------------|
168
+ | `--length` | `-l` | Longueur du mot de passe |
169
+ | `--min-digits` | | Nombre minimum de chiffres (défaut: 9) |
170
+ | `--min-special` | | Nombre minimum de caractères spéciaux (défaut: 9) |
171
+ | `--count` | `-n` | Nombre de mots de passe à générer |
172
+ | `--passphrase` | `-p` | Générer une passphrase |
173
+ | `--words` | `-w` | Nombre de mots pour la passphrase (défaut: 6) |
174
+ | `--separator` | | Séparateur pour la passphrase (défaut: `-`) |
175
+ | `--evaluate` | `-e` | Évaluer l'entropie théorique d'un mot de passe |
176
+ | `--copy` | `-c` | Copier dans le presse-papier |
177
+
178
+ ---
179
+
180
+ ## Évaluation de mot de passe
181
+
182
+ L'outil peut évaluer l'entropie théorique maximale d'un mot de passe ou passphrase existant :
183
+
184
+ ```
185
+ Entropie théorique maximale :
186
+ Longueur : 28 caractères
187
+ Entropie max. : 164.0 bits
188
+ Niveau : Très fort
189
+ Jeu de caractères: 58 symboles possibles
190
+
191
+ Catégories détectées :
192
+ Minuscules : ✓
193
+ Majuscules : ✗
194
+ Chiffres : ✗
195
+ Spéciaux : ✓
196
+
197
+ ⚠ Ce calcul suppose un choix aléatoire par caractère.
198
+ Un mot de passe basé sur des mots du dictionnaire ou des
199
+ patterns prévisibles aura une entropie réelle inférieure.
200
+ ```
201
+
202
+ Seuils (alignés sur les recommandations ANSSI) :
203
+
204
+ | Entropie | Niveau |
205
+ |----------|--------|
206
+ | < 48 bits | Très faible |
207
+ | 48-63 bits | Faible |
208
+ | 64-79 bits | Moyen |
209
+ | 80-127 bits | Fort |
210
+ | ≥ 128 bits | Très fort |
211
+
212
+ ---
213
+
214
+ ## Architecture du projet
215
+
216
+ ```
217
+ Password-Generator-Advanced/
218
+ ├── src/
219
+ │ └── password_generator_advanced/
220
+ │ ├── __init__.py # Version du package
221
+ │ ├── __main__.py # Point d'entrée python -m
222
+ │ ├── main.py # Menu interactif + CLI argparse
223
+ │ ├── generator.py # Algorithme de génération + évaluation
224
+ │ ├── wordlist.py # Liste de 2048 mots pour passphrases
225
+ │ └── clipboard.py # Copie presse-papier cross-platform
226
+ ├── tests/
227
+ │ └── test_generator.py # 18 tests
228
+ ├── pyproject.toml # Configuration Poetry
229
+ ├── LICENSE # MIT
230
+ ├── SECURITY.md
231
+ ├── CONTRIBUTING.md
232
+ └── CODE_OF_CONDUCT.md
233
+ ```
234
+
235
+ ### Algorithme de génération (`generator.py`)
236
+
237
+ 1. **Placement garanti** : N chiffres + N caractères spéciaux + 1 minuscule + 1 majuscule sont placés en premier
238
+ 2. **Remplissage** : Les positions restantes sont remplies avec un mélange aléatoire de toutes les catégories
239
+ 3. **Mélange final** : L'ensemble est mélangé via `secrets.SystemRandom().shuffle()` pour éliminer tout pattern positionnel prévisible
240
+
241
+ ### Génération de passphrases
242
+
243
+ Sélection aléatoire de mots depuis une liste de 2048 mots (11 bits d'entropie par mot). Une passphrase de 6 mots offre ~66 bits d'entropie.
244
+
245
+ ---
246
+
247
+ ## Sécurité
248
+
249
+ - **Module `secrets`** : Utilise le générateur aléatoire cryptographiquement sécurisé du système d'exploitation (`/dev/urandom` sur Linux/macOS, `CryptGenRandom` sur Windows)
250
+ - **Aucune dépendance externe** : Uniquement la bibliothèque standard Python — pas de surface d'attaque tierce
251
+ - **Pas de stockage** : Les mots de passe générés ne sont jamais écrits sur disque ni envoyés sur le réseau
252
+
253
+ Pour signaler une vulnérabilité, consultez [SECURITY.md](SECURITY.md).
254
+
255
+ ---
256
+
257
+ ## Développement
258
+
259
+ ```bash
260
+ # Lancer les tests
261
+ poetry run pytest tests/ -v
262
+
263
+ # Vérifier le style
264
+ poetry run ruff check .
265
+
266
+ # Corriger automatiquement
267
+ poetry run ruff check . --fix
268
+ ```
269
+
270
+ ---
271
+
272
+ ## Contribution
273
+
274
+ Les contributions sont bienvenues. Consultez [CONTRIBUTING.md](CONTRIBUTING.md) pour le processus détaillé.
275
+
276
+ Ce projet respecte le [Contributor Covenant 2.1](CODE_OF_CONDUCT.md).
277
+
278
+ ---
279
+
280
+ ## Licence
281
+
282
+ [MIT](LICENSE) - Utilisation libre, commerciale et modification autorisées.
283
+
284
+ ---
285
+
286
+ **Auteur** : [valorisa](https://github.com/valorisa)
@@ -1,10 +1,14 @@
1
1
  [tool.poetry]
2
2
  name = "Password-Generator-Advanced"
3
- version = "1.0.0"
4
- description = "Générateur de mots de passe avec un menu interactif et obligation pour la création des mots de passe d'avoir des lettres minuscules, majuscules, chiffres, caractères spéciaux et un minimum de 9 chiffres et 9 caractères spéciaux."
3
+ version = "1.0.2"
4
+ description = "Secure command-line password generator with strict cryptographic constraints. Interactive menu and CLI modes. Passphrase generation. Entropy evaluation. Cross-platform clipboard support."
5
5
  authors = ["valorisa"]
6
+ readme = "README.md"
6
7
  packages = [{include = "password_generator_advanced", from = "src"}]
7
8
 
9
+ [tool.poetry.scripts]
10
+ password-generator-advanced = "password_generator_advanced.__main__:main"
11
+
8
12
  [tool.poetry.dependencies]
9
13
  python = "^3.12"
10
14
 
@@ -2,4 +2,5 @@
2
2
 
3
3
  from .main import main
4
4
 
5
- main()
5
+ if __name__ == "__main__":
6
+ main()
@@ -1,11 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: Password-Generator-Advanced
3
- Version: 1.0.0
4
- Summary: Générateur de mots de passe avec un menu interactif et obligation pour la création des mots de passe d'avoir des lettres minuscules, majuscules, chiffres, caractères spéciaux et un minimum de 9 chiffres et 9 caractères spéciaux.
5
- License-File: LICENSE
6
- Author: valorisa
7
- Requires-Python: >=3.12,<4.0
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.12
10
- Classifier: Programming Language :: Python :: 3.13
11
- Classifier: Programming Language :: Python :: 3.14
@@ -1 +0,0 @@
1
- __version__ = "1.0.0"