Skip to content

v2.0.0 - Organization Overhaul

Compare
Choose a tag to compare
@nox7 nox7 released this 17 Apr 17:46
  • 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