This release is a pre-release and may not be stable for production use.
forge-mvc-images
Module opt-in propriétaire de tout l'image dans Forge MVC : traitement (variantes, miniatures, validation de contenu — Pillow) et couche médias applicative (repository, galerie, couverture).
Statut : Beta (extraction terminée, ADR-018)
forge-mvc-images est désormais l'unique propriétaire de tout l'image dans
Forge. Le traitement (Pillow) et la couche applicative médias ont été rapatriés
du core et de l'ancien forge-mvc-media, qui est supprimé. Le paquet expose une
API publique stable :
- Traitement :
save_image,save_image_upload,generate_image_variants,image_variant_paths,image_variant_relative_paths,verify_image_content, plus les constantesALLOWED_IMAGE_EXTENSIONS,ALLOWED_IMAGE_MIME_TYPES,IMAGE_VARIANT_SIZES. - Couche applicative médias :
MediaRecord,create_media_record,get_media_record,delete_media,delete_media_record,attach_media_to_entity,list_media_for_entity,get_media_gallery,get_cover_media,media_url,update_media_alt_text,update_media_position.
Ce paquet dépend de forge-mvc-files (upload générique) et de Pillow.
Pourquoi ce module (ADR-018)
forge-mvc-images remplace forge-mvc-media. Le nom « media » était
trompeur depuis l'arrivée de forge-mvc-video (un développeur attendait que
forge-mvc-media gère aussi la vidéo). Par ailleurs, embarquer Pillow et le
traitement d'image dans le core contredit le principe de noyau minimal
(charte principe 8, ADR-004).
Décision (option B, « renommer puis rapatrier ») :
- le core ne garde aucune logique d'upload ni d'image : l'upload générique
vit dans
forge-mvc-files, l'image dansforge-mvc-images; forge-mvc-imagesdevient l'unique propriétaire de tout l'image, traitement et couche applicative.
Conformément à la convention pré-1.0 (pas d'utilisateurs externes), le
renommage s'est fait sans alias déprécié ni guide de migration :
forge-mvc-media a été supprimé une fois le rapatriement terminé.
Plan d'exécution (ADR-018, terminé)
| Ticket | Description | État |
|---|---|---|
IMAGES-PKG-SCAFFOLD-001 |
Squelette du paquet (pyproject.toml + Pillow, __init__) |
livré |
IMAGES-MOVE-PROCESSING-001 |
Déplacer le traitement image du core ; rendre save_upload générique |
livré |
IMAGES-MOVE-APPLICATIVE-001 |
Déplacer repository + galerie depuis forge-mvc-media |
livré |
CORE-DROP-PILLOW-001 |
Retrait de Pillow du core, inversion des garde-fous packaging | livré |
CLI-CRUD-IMAGES-RENAME-001 |
Générateurs CLI vers forge_mvc_images |
livré |
CI-DOCS-IMAGES-RENAME-001 |
CI, README racine, docs, CONTRIBUTING | livré |
REMOVE-MEDIA-PKG-001 |
Suppression de packages/forge-mvc-media |
livré |
Installation (mode éditable, depuis les sources)
git clone https://github.com/caucrogeGit/Forge.git
cd Forge
pip install -e packages/forge-mvc-images/
Référence
docs/adr/018-image-module-extraction.md— décision et périmètre figés.- Charte principes 8 (noyau minimal), 11 (une seule façon officielle).
Release files for forge-mvc-images 1.0.0rc3
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_images-1.0.0rc3.tar.gz | 15.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| forge_mvc_images-1.0.0rc3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.9 kB
Release files / forge_mvc_images-1.0.0rc3.tar.gz
| Download URL | forge_mvc_images-1.0.0rc3.tar.gz |
|---|---|
| Size | 15.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
153170af77f732b2886bbede06bc2fdb2f9ffff40598203bf11d18b096e6585a
|
|
BLAKE2b-256 checksum How to use checksums |
79fe8c114351a337096dcf693a93d63ecf2b61a64d196ef2066e01cfeaa147f4
|
| 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_images-1.0.0rc3-py3-none-any.whl
| Download URL | forge_mvc_images-1.0.0rc3-py3-none-any.whl |
|---|---|
| Size | 16.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
51ef28f80607edf67d967d957a068ed97dcb2d1626c2a092aea04a9da1e751a2
|
|
BLAKE2b-256 checksum How to use checksums |
f679f8d9787fb6035ced3b4e68f57ddf2619f58723c09f77faa89c29fcbedfa1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|