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).
Metadata
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 | Provenance | Actions |
|---|---|---|---|---|
| forge_mvc_images-1.0.0rc9.tar.gz | 36.3 kB | Without provenance | Details for forge_mvc_images-1.0.0rc9.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| forge_mvc_images-1.0.0rc9-py3-none-any.whl | Python 3 | none | any | Details for forge_mvc_images-1.0.0rc9-py3-none-any.whl |
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
|
Security for forge-mvc-images 1.0.0rc9
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.