Jane now supports OpenAPI 3.1 and JSON Schema 2020–12
Version 7.11.0 of Jane PHP, the API client and Normalizer generator, is now available. This major update to the generation engine focuses on aligning with the latest industry standards through the support of JSON Schema 2020–12 and OpenAPI 3.1.
Section intitulée major-updates🚀 Major Updates
Section intitulée json-schema-2020–12-supportJSON Schema 2020–12 Support
One of the most important changes introduced in this version is the integration of support for JSON Schema 2020–12 (PR #918). This update allows Jane to process much more modern and complex data schemas, thus offering a richer semantics for describing your structures.
It is important to note that this evolution was designed to be totally transparent: Jane retains backward compatibility with the 2019–09 draft. You can therefore benefit from the latest advances without worrying about your existing schemas.
This dual compatibility allows the tool to offer increased precision in two areas:
- PHP model generation: The generated classes more accurately reflect the constraints and relationships defined in your schemas, thus reducing the need for manual adjustments.
- Data validation: The support of these specifications guarantees that the built-in validation logic is perfectly aligned with modern API requirements.
Section intitulée openapi-3–1-supportOpenAPI 3.1 Support
The other pillar of this version is the support for the OpenAPI 3.1 specification (PR #904). This update is structural because it finally aligns the OpenAPI standard with JSON Schema, thus simplifying the management of data models.
Thanks to this support, Jane natively leverages the new capabilities of the standard:
- Convergence with JSON Schema: OpenAPI 3.1 becomes a “superset” of JSON Schema, allowing Jane to interpret complex definitions without loss of information.
- Native and nullable typing: Jane uses the new syntax to generate PHP properties with exact typing (e.g
?string), ensuring consistency between your API contract and your code.
Section intitulée new-official-documentation📖 New Official Documentation
Alongside these technical developments, the project’s documentation has been refreshed to provide a better user experience. It centralizes the installation, configuration, and usage guides for all components.
It is available here: https://jane.jolicode.com/latest/
Section intitulée continuous-improvements-and-maintenance🛠️ Continuous Improvements and Maintenance
Beyond these major developments, this version is also the occasion for a big spring cleaning for the project. We have consolidated the codebase with a series of stability fixes, particularly regarding the handling of numeric types in query strings, and an overall update of the maintenance tools. These adjustments, although more discreet, guarantee better reliability of the generator and simplify the installation of dependencies for your projects.
Section intitulée get-started📦 Get Started!
All these improvements are available now via the v7.11.0 tag. Whether you want to take advantage of the latest OpenAPI specifications or simply benefit from a more robust generation engine, we strongly encourage you to update your projects:
composer update jane-php/* -W
Feel free to test these new features, explore the new documentation, and give us your feedback on GitHub. Jane continues to grow thanks to your usage and contributions, so enjoy!
- 📚 Official documentation: jane.jolicode.com
- 💻 GitHub Repository: janephp/janephp
- 🚀 Release v7.11.0: Check the changelog
Commentaires et discussions
Ces clients ont profité de notre expertise
Nous avons développé une plateforme de site génériques autour de l’API Phraseanet. À l’aide de Silex de composants Symfony2, nous avons accompagné Alchemy dans la réalisation d’un site déclinable pour leurs clients. Le produit est intégralement configurable et supporte de nombreux systèmes d’authentification (Ldap, OAuth2, Doctrine ou anonyme).
Nous avons entrepris une refonte complète du site, initialement développé sur Drupal, dans le but de le consolider et de jeter les bases d’un avenir solide en adoptant Symfony. La plateforme est hautement sophistiquée et propose une pléthore de fonctionnalités, telles que la gestion des abonnements avec Stripe et Paypal, une API pour l’application…
JoliCode accompagne l’équipe technique Dayuse dans l’optimisation des performances de sa plateforme. Nous sommes intervenus sur différents sujets : La fonctionnalité de recherche d’hôtels, en remplaçant MongoDB et Algolia par Redis et Elasticsearch. La mise en place d’un workflow de réservation, la migration d’un site en Twig vers une SPA à base de…