Brique médias applicatifs pour Forge — repository, galerie, couverture.
Project description
forge-mvc-media
Module opt-in pour la gestion applicative des médias dans Forge MVC.
Statut : Alpha — préparé pour publication future
forge-mvc-media est en statut 3 - Alpha depuis MEDIA-PYPI-READY-002.
L'extraction depuis core/uploads/ est complète. La documentation et les shims
de compatibilité ont été livrés.
Non publié sur PyPI — le module reste source-only dans la série
1.0.0-beta.x. Publication prévue dans une prochaine release.
Il s'installe depuis les sources du dépôt Forge :
git clone https://github.com/caucrogeGit/Forge.git
cd Forge
pip install -e packages/forge-mvc-media/
Ce que contient ce module
Depuis MEDIA-REPOSITORY-MOVE-001, le package contient :
-
media_repository— persistance SQL des métadonnées médias (tablemedia) :create_media_record,attach_media_to_entity,get_media_record,list_media_for_entity,update_media_alt_text,update_media_position,delete_media_record,delete_media -
media_gallery— galerie, couverture, URL des médias par entité :get_media_gallery,get_cover_media,media_url
Ce qui reste dans le core (définitif)
Les briques génériques restent dans core/uploads/ et ne bougent pas :
exceptions.py— hiérarchie UploadErrorvalidators.py— validation extension, MIME type, taillestorage.py— filesystem, protection anti-traversalmanager.py— SavedUpload, save_upload, serve_media_fileimage.py— save_image, generate_image_variants (Pillow)rate_limit.py— rate limiting in-memory
Note sur les générateurs CLI
À partir de MEDIA-CRUD-INTEGRATION-OPTIN-001, les nouveaux générateurs média
applicatifs (forge make:crud --media, forge make:public:list, forge make:public:show)
ciblent forge_mvc_media pour les helpers applicatifs :
from core.uploads import save_upload # générique — reste dans core
from forge_mvc_media import attach_media_to_entity, delete_media, get_cover_media, ...
Les anciens imports from core.uploads import attach_media_to_entity ne sont plus
supportés depuis MEDIA-SHIMS-REMOVE-001.
Ce package n'est pas encore publié sur PyPI — publication prévue dans une prochaine release.
Shims de compatibilité dans core
Les fichiers core/uploads/media_repository.py et core/uploads/media_gallery.py
étaient des shims de compatibilité qui re-exportaient depuis ce module.
Ils ont été supprimés dans MEDIA-SHIMS-REMOVE-001.
Conditions avant publication sur PyPI
Toutes les conditions préparatoires sont remplies depuis MEDIA-PYPI-READY-002.
La publication PyPI sera déclenchée par un ticket dédié lors d'une prochaine release.
Les critères étaient :
✓ livré — documentation technique à jour dansMEDIA-DOCS-MIGRATION-001livrédocs/.Shims supprimés✓ livré (MEDIA-SHIMS-REMOVE-001) —core/uploads/media_repository.pyetcore/uploads/media_gallery.pyretirés du core.✓ livré (Development StatusajustéMEDIA-PYPI-READY-002) — statut3 - Alphaactif.Classifier retiré✓ livré (MEDIA-PYPI-READY-002) —"Private :: Do Not Upload"supprimé dupyproject.toml.
Le ticket de publication PyPI sera PYPI-PUBLISH-MEDIA-001 (ou PYPI-PUBLISH-B8-MEDIA-001
selon la version cible).
Tickets de référence
| Ticket | Description | État |
|---|---|---|
MEDIA-CORE-BOUNDARY-AUDIT-001 |
Audit de la frontière core/opt-in | livré |
MEDIA-EXTRACT-PACKAGE-SCAFFOLD-001 |
Création du squelette source-only | livré |
MEDIA-REPOSITORY-MOVE-001 |
Déplacement du code applicatif | livré |
MEDIA-CRUD-INTEGRATION-OPTIN-001 |
Mise à jour des générateurs CLI | livré |
MEDIA-DOCS-MIGRATION-001 |
Mise à jour de la documentation | livré |
MEDIA-SHIMS-REMOVE-001 |
Suppression des shims core/uploads | livré |
MEDIA-PYPI-READY-001 |
Décision source-only confirmée | livré |
MEDIA-PYPI-READY-002 |
Requalification Alpha, retrait classifier privé | livré |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file forge_mvc_media-1.0.0b9.tar.gz.
File metadata
- Download URL: forge_mvc_media-1.0.0b9.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3642b7136273c4327b0b9f70761fe3e892edaa24fa22eb39f42f8bfd6db35f72
|
|
| MD5 |
62e124657a2932fdb254f56a56427759
|
|
| BLAKE2b-256 |
139087cbf084466ec6503e65ea5d330fc056ac5f308a8dc4dd74f497ce44d157
|
File details
Details for the file forge_mvc_media-1.0.0b9-py3-none-any.whl.
File metadata
- Download URL: forge_mvc_media-1.0.0b9-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c25624b087936468989c7ab70f965f769ad769a86cdbb719436a04268ba50b8
|
|
| MD5 |
684903b8db2eadd3f2ceb987802f0a2a
|
|
| BLAKE2b-256 |
c3fd9fdccd25eafe96f412893cec57d322b184f53d50bb6c027d2ad32ea2e19b
|