Releases: nox7/nox
Releases · nox7/nox
2.0.0 Beta 10
- Adds RequestPayload object
Request payloads can now be object-oriented with TextPayload and FileUploadPayload obtainable from the RequestPayload object. Use the ProcessRequestBody attribute on a MVC route controller method and then fetch the request payload via \Nox\Http\Request::getRequestPayload()
v2.0.0 Beta 9
- Implement ResultOrder::byFunction(string): self
This allows results to be ordered by a MySQL function such as RAND()
v2.0.0 Beta 8
- Fix missing $model declaration in Abyss::saveAll()
v2.0.0 Beta 7
- Do not set primary key property if the insert_id returns 0 (non-auto-incrementing primary keys)
v2.0.0 Beta 6
Fix MediumText not causing ORM to ignore setting a DEFAULT MySQL value
v2.0.0 Beta 5
- Fix Router exiting instead of returning redirected or rewritten result
v2.0.0 Beta 4
- Fix incorrect memory address pointer that ends up pointing to the wrong location in memory. The loop changed the reserved memory address after looping through one iteration.
v2.0.0 Beta 3
- Fix ModelClass having a public childInstance property - which would cause JSON recursion when stringifying model instances that extend ModelClass
- Fix missing $model definition in Abyss::saveOrCreate
v2.0.0 Beta 2
- Fixes method that returns all available URIs on all controllers. Now named to Route::getAllNonRegExURIs()
v2.0.0 - Organization Overhaul
- All controller classes must have the #[Controller] attribute and extend from BaseController. Only public methods will be routable.
- All model classes must have the #[Model] attribute.
- Instead of a models and controllers directory definition, there is now just a src code directory setting to define where your project's source code will be. All files in that directory will be auto loaded prior to processing a request.
- nox.json removed. Replaced by the setters in the new Nox\Nox class to hookup an app
- Routes can now have a null return type. Determining 404s (non-existent routes) is now done by simply throwing an exception if an entire route request fails with no matching routes.
- Models now require getDatabaseName() to be defined to allow for an app to utilize multiple database
- Abyss now works on a multiple-credentials system to balance multiple connections. This is used for when multiple databases are being utilized.
- Request parameters (Regular expression route named capture groups) no longer are injected into the $_GET superglobal and are, instead, in BaseController::$requestParameters
- It is now advised to use ClassName::class for your model-class-instance-representing class names so they will include the full namespace - instead of a quoted string as was advised prior in Nox v1