Skip to content

Releases: devvoh/parable

Parable PHP Framework 0.8.4

11 Aug 21:05
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.8.4 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.8.3:

Changes

  • Added Init scripts. Check app/Init/Example.php for details on what you'd use these for.
  • The Dispatcher now uses output buffering. Any content returned from controllers/closures is appended to it.
  • Database now always quotes all. This is due to reserved keywords in both sqlite/mysql. This should not impact any existing scripts.

Bugfixes

  • Nested config values (such as 'app.title') now return null if they don't exist, rather than the Config freakin' out.
  • Toolkit now (as originally intended) ignores Cli\App. It was confusing which App class to use. Cli\App should never be available in a web context.

Parable PHP Framework 0.8.3

04 Aug 07:30
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.8.3 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Note: since 0.8.2 was just README.md updates, it wasn't made a specific release.

Changelog from 0.8.1:

Changes

  • README.md updated
  • Getting all the little details right.
  • Moved Parable version to \Parable\Framework\App, as it should remain available even if the config is changed.
  • Moved Able > Cli.
  • Removed Error folder from mkdir list, as it's no longer included.
  • Added \Parable\Framework\App to View magic properties, so it's available there as well.

Parable PHP Framework 0.8.1

03 Aug 19:10
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.8.1 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.8.0:

Changes

  • README.md now has the new install instructions (through composer and packagist)

Parable PHP Framework 0.8.0

03 Aug 18:57
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.8.0 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.7.3:

Note: This version is completely incompatible with previous versions and is basically a rewrite. I told you not to expect backwards compatibility just yet ;)

Changes

  • Honestly, too many to mention. Everything's been reordered, some parts have been completely rewritten. It's incompatible. Documentation will show up soon, but installing it and following the instructions in the readme should help you get started.

Parable PHP Framework 0.7.3

02 Jun 20:39
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.7.3 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.7.2:

Changes

  • Using composer's autoload primarily from now on. This is in preparation of making components an actual composer package. This has no effect on 0.7.x projects, but it does require you to have composer.

Parable PHP Framework 0.7.2

29 May 10:26
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.7.2 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.7.1:

Bugs

  • Haste is waste. Fixed the routing bug properly now. It's a Sunday and I obviously should've had more coffee by now ;)

Parable PHP Framework 0.7.1

29 May 10:19
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.7.1 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.7.0:

Bugs

  • null was being passed to Tool->setRoute(), which since very recently requires an array, causing a fatal error instead of a 404. Fixed.

Parable PHP Framework 0.7.0

29 May 10:10
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.7.0 release

This is a pre-release version of a project heavily in flux. Use at your own risk.

Changelog from 0.6.0:

Note: This version breaks backwards compatibility!

Changes

  • Since SessionMessage depends on an instantiated & set to 'session' resource GetSet, it shouldn't be a Component. It's been moved to \Devvoh\Parable. Because this means a namespace change, it's yet another minor version bump. Goes quickly.
  • To make the module Routes file simpler, the more framework-y functionality (DI & the module adding) has been moved to a new class - \Devvoh\Parable\Routes. This means yet another backwards incompatible change. I'm on a roll.
  • Comments have been improved significantly. Handy.
  • index.phtml mapped $this to \Devvoh\Parable\App, but it should now map to \Devvoh\Parable\View
  • The magic methods in \Devvoh\Parable\View are gone again. Though they worked fine, they felt out of place and inconsistent with how the rest of Parable now approaches its DI components. They've been replaced with magic properties that do the exact same thing. In a view, you can use $this->tool->method(), etc.
  • Property definitions now no longer explicitly set to null. Order of properties has been made consistent: DI properties > defined properties > undefined properties.
  • Vestigial properties have been removed from App, since the functionality has been moved to Tool.
  • Session management methods have been moved to \Devvoh\Parable\Session and out of \Devvoh\Components\GetSet, as they should be.
  • SessionMessage has lost initSession and gained a DI.
  • Cli has been reworked, now offers cll (clear line), cr (return to beginning of line) as well as colors.

Bugs

  • set_exception_handler function has been moved up, so it will also catch Autoloader/DI exceptions.
  • Some small fixes where false was being returned where a value was expected. These now return null.

Parable PHP Framework 0.6.0

22 May 17:19
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.6.0 release

This is a pre-release version, and no version of the 0.x.x branch is guaranteed to be either backwards- or forwards-compatible. Use at your own risk.

Changelog from 0.4.1:

Note: This version significantly breaks backwards compatibility!

Changes

  • APP IS DEAD. ALL HAIL APP.
  • Because App is gone, much of the changelog of 0.5.0 is redundant, but I have included what's still relevant.
  • \Devvoh\Components\DI has been added. This is why App could go. Parable now has a barebones dependency injection system and uses it throughout. It attempts to keep track of class dependency hierarchy to prevent cyclical references. It should throw an Exception when A requires B requires A...etc.
  • Views now can no longer simply re-route all function calls to App. Therefore, magic methods have been added to \Devvoh\Parable\View to allow the ->getXXX calls to still work (they now go through DI, though), and really only affects the methods previously directly called on App (getUrl, createRepository, etc.), which are almost all moved to \Devvoh\Parable\Tool
  • Although this major refactor has been tested (and found to work correctly) on one project, it's entirely possible bugs may still be hidden.
  • 'Tool' functionality has been moved into \Devvoh\Components\Tool.
  • View and Config have been moved into vendor/Devvoh/Parable.
  • \Devvoh\Parable\Dispatcher has been added, and actually executing the route is done there
  • On Dispatcher, the execute method has been reworked significantly, for better readability and more efficient code. Now also supports using a view key on a controller route, which will be looked for before looking for an auto-generated view path.
  • Added /app/modules/[module]/Init/ functionality. All php scripts in this directory will be loaded & instantiated at the end of $app->boot(), allowing the developer to plug into events as soon as is possible. At this point in Parable's runtime, all config is loaded and the session and database are available. Included is a Hooks init script, which adds 3 hooks. Init scripts can be either sorted (lowest order first) or unsorted.
  • \Devvoh\Components\Getset now has a method setMany($array), which will set all key/value pairs in the passed array and add them to the resource.
  • \Devvoh\Components\Hook and \Devvoh\Components\Dock now support global events, using the '*' wildcard event name. Any closures added to this event will be called on every trigger. Handy for debugging. Even if there's no valid events on a trigger, the global event will still be called.
  • \Devvoh\Components\Hook and \Devvoh\Components\Dock now pass back the event they were triggered with, as the first parameter to the closure. The payload is now in second place, since it's optional.
  • GetSet has a remove(key) method now, which sets the value to null.
  • GetSet also gained regenerateSession, which will at a later moment be moved to the Parable\Session class which implements GetSet.
  • Version is no longer stored in 'version' but directly on the App class as a property.
  • Added a Request Component to offer base functionality on dealing with the request (most useful: isPost(), etc.)
  • Added an Auth class to Parable for base user rights. It's really straightforward but can always be extended or not used. This will be built out at a later date.
  • Added ->returnOne() and ->returnAll() to Repository, which will return the first result only, preventing the need for either manual current() calls or [0].
  • In Repository, orderBy and limit are now implemented on getQuery, which enables it everywhere.
  • All Cli functionality removed until Cli has been refactored.

Bugfixes

  • GetSet no longer resets the localResource when using setResource. Not only does this fix a bug where using setResource multiple times would clear it every time, it also makes it possible to use, for example, App::getParam()->setResource('headerJs')->getAll(). This makes Param even more powerful and useful. Param does, however, remember the last set resource, so switching is necessary whenever you want a different resource.
  • display_errors was set to 1 by default in Bootstrap.php. Now set to 0 as it should.
  • Entity returned an empty instance of itself if it couldn't find a suitable model. It should return null instead, which it now does.
  • Entity's handling of null values was flawed. Now it'll keep a null value only if the value is string 'null'
  • Router Component at a certain point picked up a bug in returning params, which has now been fixed.
  • App now picks up on sqlite requiring a path for the location. Now does so only in case of sqlite.
  • Reverted Param handling in Dispatcher to a foreach since they don't use $key => $val but [key] => $key, [val] => $val. My bad.
  • Repositories now attempt to fetch separately from handling the result, preventing odd errors if the query is incorrect.

Parable PHP Framework 0.4.1

09 Apr 11:32
Compare
Choose a tag to compare
Pre-release

Parable PHP Framework 0.4.1 release

This is a pre-release version, and no version of the 0.x.x branch is guaranteed to be either backwards- or forwards-compatible. Use at your own risk.

Changelog from 0.4.0:

Changes

  • Components/Database and Components/Query now have a property (and appropriate get/set methods) to set whether 'all' should be quoted.
  • Closures should now return their value, after which their return value is added to the Response content.

Bugfixes

  • Since NULL values are no longer automatically skipped (due to bug fix in 0.3.3), query was trying to set the id even on inserts. sqlite didn't care, but mysql does. TableKey is now always skipped in inserts.
  • MySQL mode now works.