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).
Extraction terminée (ADR-018)
Cet opt-in suit la version du cœur de Forge et n'a pas de cycle de maturité
propre : sa version est celle du pyproject.toml racine (OPTINS-MATURITY-FOLLOWS-CORE-001).
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,variant_presets(), déclarés parIMAGE_VARIANTS. - 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.0rc9
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.0rc9.tar.gz | 36.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| forge_mvc_images-1.0.0rc9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 67.7 kB
Release files / forge_mvc_images-1.0.0rc9.tar.gz
| Download URL | forge_mvc_images-1.0.0rc9.tar.gz |
|---|---|
| Size | 36.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
78357d3a47303396db46399e3b2963c52125ef5af16669ec260a46a39d13e1d4
|
|
BLAKE2b-256 checksum How to use checksums |
acb419db800a8b75f560e2095470ccbfe30018cbff71f1279dbdeacc897de74d
|
| 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.0rc9-py3-none-any.whl
| Download URL | forge_mvc_images-1.0.0rc9-py3-none-any.whl |
|---|---|
| Size | 31.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f3d977c96a5e38943a69b37ccdf7da333409bf5c75cce05a98f8dd2242be1a9d
|
|
BLAKE2b-256 checksum How to use checksums |
cfa85e515d602b6187e8f7713d14ae21c6e762bbad25fba92df75f6b052f2b85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|