This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Reason given by maintainers: Absorbé par forge-mvc-images (ADR-018) ; installez forge-mvc-images.
forge-mvc-media
Module opt-in pour la gestion applicative des médias dans Forge MVC.
Statut : Alpha — opt-in officiel publié sur PyPI depuis 1.0.0-beta.9
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.
Publié sur PyPI depuis 1.0.0-beta.9 (forme PEP 440 : 1.0.0b9). L'API
applicative reste bêta — voir docs/production-limits.md avant déploiement.
Installation :
pip install --pre forge-mvc-media
Pour développer le paquet en mode éditable 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,
# ... autres helpers : voir packages/forge-mvc-media/forge_mvc_media/__init__.py
)
Les anciens imports from core.uploads import attach_media_to_entity ne sont plus
supportés depuis MEDIA-SHIMS-REMOVE-001.
Ce package est publié sur PyPI depuis 1.0.0-beta.9 : pip install --pre forge-mvc-media.
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é |
Release files for forge-mvc-media 1.0.0b12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| forge_mvc_media-1.0.0b12.tar.gz | 5.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| forge_mvc_media-1.0.0b12-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.1 kB
Release files / forge_mvc_media-1.0.0b12.tar.gz
| Download URL | forge_mvc_media-1.0.0b12.tar.gz |
|---|---|
| Size | 5.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8e7b614458d938912b2c3f8dc9a1bcb92766c9c8befd82963783b00e065bc444
|
|
BLAKE2b-256 checksum How to use checksums |
7358fe1cb2b87978e4b201392d225ab5e031aa4724f2d7946813202d4eaf2aac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / forge_mvc_media-1.0.0b12-py3-none-any.whl
| Download URL | forge_mvc_media-1.0.0b12-py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a71d8f6c5146104165816b3017300a8c0a20a885793d5eafe6c6006b0f222ead
|
|
BLAKE2b-256 checksum How to use checksums |
ef04761809c338dd0fb31a4458e22501b14b7eb53185e0f0617cc16a92897961
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|