- Fixed a security issue where the URI was not being properly sanitized.
- oil refine install now makes the config directory writable. (Dan Horrigan)
- Added auto-id to select fields (Kelly Banman)
- Fixed typo in ::analyze_table (Frank de Jonge)
- replaced the regex that processes :segment in the Route class. closes #33. (Harro Verton)
- Closes #31: logic error caused the Crypt class to update the config when nothing is changed. (Harro Verton)
- Fixed up XML output so that singular versions of basenode names are used when a numeric value is provided as a key.XML doesn't like numeric keys and item, item, item is boring. Also moved formatting logic out of the REST library. (Phil Sturgeon)
- Added Format::to_php(). (Phil Sturgeon)
- Updated Form config file to work with the Form class we've had for the past 3 months (oops). Fixes #93 (Jelmer Schreuder)
- Fixes #115: Form::button() now produces a <button> tag instead of <input> (Harro Verton)
- Fixed #116: Throw an error if File::update can't open the file for write (Harro Verton)
- Added a check to File::open_file() to make sure $resource is a valid resource before we attempt to flock() (Harro Verton)
- Fixed badly named variable in profiler. (Phil Sturgeon)
- Show full file paths in the Install task. No security concern if you're already in the terminal. (Phil Sturgeon)
- Fixed bug in \Date::create_from_string() where the date produced would always be exactly one month behind the actual date. (Ben Corlett)
- updated the Crypt class to make the generation of the random keys more secure (Harro Verton)
- fixed error in Fuel::find_file(), causing a PHP notice on repeated finds (Harro Verton)
- The DBUtil class now respects the table prefix if set (Fixes #103). (Dan Horrigan)
- If an empty string is passed to Format::factory('', 'xml') it will no longer error, just return an empty array. (Phil Sturgeon)
- Added PHPSecLib to vendor to provide encryption features if no crypto is available in PHP. (Harro Verton)
- Rewritten the crypto class to use AES256 encryption, and a HMAC-SHA256 tamper validation hash. (Harro Verton)
- Added Redis to the bootstrap. (Jelmer Schreuder)
- Made Inflector::camelize() return camelcased result again but the Inflector::classify() won't use it anymore and still respect underscores. (Jelmer Schreuder)
- Allow setting labels as array including attributes instead of just tring in form->add (Jeffery Utter)
- Fix Date class. strptime returns years since 1900 not 1901. Dates were a year in the future. (Jeffery Utter)
- Options wasn't being passed when adding a radio.. thus it wasn't making all the separate fields. (Jeffery Utter)
- fixes bug #96: advanced regex must use non greedy match to properly match segments (Harro Verton)
- fixes bug #99: PHP notice due to not-initialized property (Harro Verton)
- Using memory_get_peak_usage() instead of memory_get_usage() for more reliable memory reporting. (Jelmer Schreuder)
- Form generation: Fixed issue with "type" attribute set for textareas and selects. Also prevented empty for="" attributes by ignoring null values. (Jelmer Schreuder)
- Moved page link creation into separate method for more flexibility (Kelly Banman)
- fixed broken database profiling (Harro Verton)
- Input::real_ip() now returns "0.0.0.0" if IP detection fails (Harro Verton)
- Bugfix: hidden inputs created with the Fieldset class caused unending loops. (Jelmer Schreuder)
- Fixed a bug that caused the image library to refuse all image types. (Alexander Hill)
- Corrected typos in the image class. (Alexander Hill)
- Fuel::find_file() now caches files found per request URI, instead of a global cache. (Harro Verton)
- Fixed a bug in the response constructor. Response body was not setting. (Dan Horrigan)
- Bugfix: Fieldset::build() didn't match Form::build() for which it should be an alias. (Jelmer Schreuder)
- Changed Controller_Rest formatting methods from private to protected so they can be extended (Tom Arnfeld)
- Improved the Fieldset::repopulate() method to also take a Model or array instead of using the POST values. Will accept any array, ArrayAccess instance, Orm\Model or object with public properties. (Jelmer Schreuder)
- Fixed an issue with the casing of the Simple-driver classnames. (Jelmer Schreuder)
- Fixed small bug in Auth check method. (Jelmer Schreuder)
- Bugfix: ACL rights merging went wrong because the base was a string instead of an array. (Jelmer Schreuder)
- Updated scaffolding to work better with the new ORM package. Fix #81.
- Suppress the error message for PHPUnit in oil, if it can't load the file from include it should just error as usual. (Phil Sturgeon)
- Fixed PHPUnit, said it wasn't installed when it was. (Phil Sturgeon)
- Fix #85: Scaffolding still referred to ActiveRecord instead of Orm. (Phil Sturgeon)
- Added to_array() method to export current object as an array. Improved ArrayAccess and Iterable implementation to work with relations. (Jelmer Schreuder)
- Finished the unfinished __clone() method. (Jelmer Schreuder)
- Fixes #84 - now an exception is thrown when an invalid Model classname is given to a relation. (Jelmer Schreuder)
- Implemented __isset() and __unset() magic methods for Orm\Model (Jelmer Schreuder)
- Moved Query object creation into its own method to allow the more accurate Model_Example::query()->where()->get(). (Jelmer Schreuder)
- order_by() didn't return $this with array input. (Jelmer Schreuder)
- Fixed issue with constructing new models without adding properties. (Jelmer Schreuder)