Skip to content

Changelog v1.6.1

Harro Verton edited this page Jun 9, 2013 · 17 revisions

This keeps track of important changes to the 1.x branch.

When you decide to upgrade to a new version, pay attention to the changes documented in this changelog, and the upgrade procedures documented.

Important fixes, changes, notes. Read them carefully.

No changes.

Backward compability notes

Orm: You can no longer use property assignment to create a custom property on a model object if that model implements an EAV container. It will set an EAV value instead.

Removed code (because it was deprecated in v1.6 or earlier)

Orm: calling find() with no parameters or with a single parameter that is null will return null as a result. It will no longer throw an exception.

Code deprecated in v1.7 (to be removed in the next release)

No changes.

Security related

No changes.

System changes

  • Fixed broken CSS code in the welcome controller views.
  • Improvement to the query analysis information displayed in the profiler (MySQL only).
  • The included Markdown library has been upgraded to v1.2.6.
  • Lots of path processing improvement to have the framework work better on Windows.
  • Finder now ignores the cache if there are permission issues on the cache file.

Specific classes

  • Agent: Don't try to fetch browser information if no user agent is present in the server data.
  • Arr: New previous_by_key() method to fetch the previous key or value from an array using the current key.
  • Arr: New previous_by_value() method to fetch the previous key or value from an array using the current value.
  • Arr: New next_by_key() method to fetch the next key or value from an array using the current key.
  • Arr: New next_by_value() method to fetch the next key or value from an array using the current value.
  • Cache: delete_all in the File driver now properly recurses all folders.
  • Controller: Now has a response_status property to set the HTTP status for automatically created responses.
  • Controller_Rest: Fixed using a controller method to determine the authentication status.
  • Controller_Rest: Fixed warning when the format passed in the URL is not a valid format.
  • Crypt: Now uses the file permissions defined in the file.php configuration file when generating the crypt configuration file.
  • Format: "to" methods now deal with a passed null value correctly.
  • Html: Now enforces HTML5 by default.
  • Input: New headers method allows you to fetch HTTP headers.
  • Input: New allow_x_headers configuration key controls if using X-headers are acceptable.
  • Inflector: Method friendly_title() now correctly deals with apostrophes by replacing them with a separator.
  • Request_Curl: Added support for the 'HEAD' method to the cURL driver.
  • Response: New redirect_back() method to redirect back to the previous page in your application.
  • Session: Now supports passing the session id as a string in get/post variables.
  • Session: Now supports passing the session id in the "Session-Id" HTTP header.
  • Session: Now allows you to disable creating a session cookie if you want to pass it manually.
  • Session_Redis : Fixed recovering from expired sessions when using the Redis driver.
  • Theme: Now allows you to store module theme views inside the module folder.
  • Theme: New partial_count and has_partials methods.
  • Upload: Implemented missing save() argument behavior, for backward compatibility.
  • Viewmodel: New get_view() method returns the associated View object.

Packages

  • Auth: Now includes secure "remember_me" functionality.
  • Auth: Fixed typo in the Simpleauth migation file, causing a missing 'group' column
  • Auth: Ormauth's create_user() method now supports updating profile fields (which are mapped to EAV attributes) for compatibility with Simpleauth.
  • Auth: Now includes an OpAuth interface to integrate OAuth authentication with Simpleauth or Ormauth.
  • Auth: When running migrations for Ormauth, groups and roles created now mimic the functionality of Simpleauth.
  • Email: Support added for pipelining, sending multiple emails out over a single connection. Currently only supported by the SMTP driver.
  • Oil: Command processor updated to work from Windows' powershell.
  • Oil: The refine() method of the Command processor now accepts arguments so you can call it from code with the same arguments as from the commandline.
  • Oil: New "--csrf" switch adds the CSRF token to generated forms.
  • Oil: CSS in generated forms has been updated to the new Bootstrap version.
  • Oil: Generated Admin code now has support for Ormauth.
  • Orm: You can now create new EAV attributes by simply assigning a value to a new property (note: this disables Custom data for models with EAV support!).
  • Orm: You can now use unset() to delete an EAV attribute.
  • Orm: Several bugfixes in Model_Soft and Model_Temporal.
  • Orm: New "Nestedset" Model to work with nested sets (hierarchical structures).
  • Orm: No longer signals an insert failure if you don't use auto-increment PK's.
  • Orm: Observer_Slug now works correctly with Model_Temporal.
  • Orm: Added count(), min() and max() support to Model_Soft and Model_Temporal.
  • Orm: Complex find_this_and_that_or_other() calls now work correctly.
  • Parser: You can now call Markdown::parse() from within a Twig template.
  • Parser: You can now call Session::get_flash() and Session::set_flash() from within a Twig template.