Repository navigation
🚀 Quantum PHP 3.1.0 Released #611
armanist
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Quantum PHP 3.1.0 is out. This release raises the minimum PHP version to 8.1 and reworks how the framework starts up and runs, so it is easier to follow and to extend.
Website: https://quantumphp.io/
Docs on GitBook: https://quantumphp.gitbook.io/docs
Docs on Read the Docs: https://quantum-php-framework.readthedocs.io/en/latest/
Release notes: https://github.com/quantum-php/framework/releases/tag/3.1.0
Full changelog: https://github.com/quantum-php/framework/blob/master/CHANGELOG.md
Upgrade guide: https://quantumphp.io/v3.0/upgrade-guide
✨ Highlights
✅ A clearer app lifecycle
The web and console apps now boot and run as pipelines of small stages. The runtime stages announce events (
web.preflight,web.route,web.dispatch,web.send,console.commandand more, each with.beforeand.after) that you can listen to.✅ Event replaces Hook
hook()->on()andfire()are nowevent()->listen()anddispatch(). Event names no longer need to be registered, and listeners stay registered after they run.✅ A simpler debug toolbar
The toolbar reads its data when it renders, instead of every package writing into it. Memory use is bounded: the logger and the mailer keep the last 1000 entries by default. In debug mode, the console now writes its log lines to files.
✅ Translate with DeepL or Google Translate
The Lang package now works through adapters, including DeepL and Google Translate, next to the existing file translations.
✅ Native HTTP client
HttpClientruns on Quantum's own cURL adapters. Thephp-curl-classdependency is gone.✅ OpenAPI with attributes
The API module templates describe the API with PHP attributes, and
doctrine/annotationsis no longer required.✅ Smaller improvements
Request::expectsJson(), and "page not found" answers JSON to clients that ask for itpsr/log2 or 3Quantum\Loaderis removed;Setupis nowQuantum\Config\Setupinstall:openapicreates the folders it needs, and several settings read from.env(booleans, ports, the remember-me lifetime) now work as expected🚀 Starter project
quantum/project3.1.0 is released too. It requires PHP 8.1 andquantum/framework3.1.🔜 Next
3.1.1 is a small follow-up:
back()for the response redirect API, and the demo templates updated to use itinstall:demowith single-author and multi-author demo variants, for both Web and APIEnumsfolders turned into PHP enumsThank you to everyone using, testing and contributing to Quantum PHP.
All reactions