home / releases / 0_4
**Joël Perras (20):**

 - Adding MockConnections class & overriding the connection class used in `MockCouchPost`. This removes the dependency of having a working db connection to test (and use) the CouchDB adapter as a model data source.
 - Fixing request environment variable when PHP is run as CGI.
 - Adding XCache cache adapter, with tests.
 - Adding PHP_AUTH_USER and PHP_AUTH_PW server variable wrangling for `XCache::clear()`. At the moment, the test case for clear() is skipped if `xcache.admin.enable_auth` is enabled.
 - Adding atomic increment/decrement methods to `Apc` cache adapter.
 - Updating documentation for `Cache` and `Apc` cache adapter.
 - Upating documentation for XCache cache adapter.
 - Cleaning up in some cache tests - deleting keys that were set for testing purposes.
 - Adding XCache cache adapter, with tests.
 - Adding `PHP_AUTH_USER` and `PHP_AUTH_PW` server variable wrangling for `XCache::clear()`. At the moment, the test case for `clear()` is skipped if xcache.admin.enable_auth is enabled.
 - Adding atomic increment/decrement methods to Apc cache adapter.
 - Updating documentation for Cache and Apc cache adapter.
 - Upating documentation for XCache cache adapter.
 - Cleaning up in some cache tests - deleting keys that were set for testing purposes.
 - Adding basic Redis cache adapter.
 - Adding `increment()`/`decrement()` methods to Cache container class.
 - Cleaning up Cache container.
 - Removing explicit dependency of `Cache::key()` on Inflector.
 - Refactor/cleanup of Memory Cache adapter.
 - Adding `MemoryAdapter` tests for increment/decrement methods.

**Matthew Harris (1):**

 - Updating `disconnect()` to use `isConnected()` for determining connection state, allows for better encapsulation.

**Nate Abele (14):**

 - Base security classes.
 - Minor fix and refactoring to `Libraries::_addPlugins()`, adding tests.
 - Fixing `StaticObject::_filter()` to allow filtered methods to properly call methods in subclasses. Cleaning up code formatting in `console\Dispatcher`.
 - Adding fix for `test\filter\Complexity` to skip classes with no methods defined.
 - Refactoring `core\Adaptable` to support environment configurations. Removed `Adaptable::_adapter()` in favor of `Adaptable::adapter()` and `Adaptable::$_adapters` lookup property. Refactored all `Adaptable` subclasses.
 - Refactoring `data\Connections` to extend `core\Adaptable`. Added `Adaptable::_class()` to support extended class location in subclasses.
 - Cleaning up merge conflict.
 - Updating configuration in `app/config/routes.php` to reflect new routing syntax. Bug found by Ben Ramsey.
 - Adding `reflection\Inspector::properties()` and refactoring long `Inspector` methods into smaller protected methods.
 - Refactoring `test\reporter\Html` and `audit\logger\adapter\Cache` to remove hard-coded class dependencies.
 - Adding skips to `command\build\LibraryTest` methods which rely on INI setting `phar.readonly` being set to `Off`.
 - Extracting sub-package `lithium\util\audit` to primary package `lithium\analysis`.
 - Plugins now load thier bootstrap files automatically.
 - By default, plugins now conditionally load bootstrap files, only if they exist.

**Wil Sinclair (1):**

 - Fixes typo in license

**alkemann (17):**

 - hook fixes for lithium/action
 - hooks fixes for lithium/console
 - hooks fixes for lithium/core
 - hooks fixes for lithium/data
 - hooks fixes for lithium/g11n
 - hooks fixes for lithium/http
 - hooks fixes for lithium/storage
 - hooks fixes for lithium/template
 - hooks fixes for lithium/test
 - hooks fixes for lithium/util
 - fixing hooks fails in lithium/tests/cases
 - fixing hook fails in lithium/tests/mocks
 - div hook fixes
 - formatting fix in `CouchDB`
 - insert space after type casting parenthesis
 - test for Document::errors() putting document back at 100% coverage
 - formatting and documentation cleanup

**gwoo (57):**

 - fixing typo in `Validator`
 - fixing `Model::__init()` when connection is false
 - updating model test to use a `MockSource` that defines some mock schemas
 - fixing errors in model test related to mock-source
 - updating `Debugger::export()` to format array per coding standards
 - reformatting document test
 - fixing parse error in debugger
 - removing `Command::run()` will default to help as expected. cleanup some classes to pass sniffs.
 - testing pre-recieve
 - adding tests for base path to request and service
 - fixing Libraries undefined variable and missing index
 - some cleanup of default layouts
 - moving `\command\Docs` to li3_docs
 - fixing error method usage in \console\Command::stop()
 - found some stragglers from the adapters rename in \audit\logger. adding some missing headers.
 - renaming generate to build
 - adding `\console\Request::shift()` and setting default for params to true on \console\Router
 - modifying params in `\console\Request`. `-param` represents a boolean value, `--param=something` is a param with value. everything else goes in params['args'].
 - implemetating \command\Build and \command\build\Test
 - changing Build to use library path
 - fixing some errors in \command\build\Test
 - changing \command\build\Test to use Inspector for class methods
 - adding command\build\Library to archive and extract libraries
 - updating library command and adding the app.phar.gz template
 - Updating Library command
 - updating implementation of \command\Build and friends
 - adding Unit::_cleanUp to assist in clearing stuff in temp
 - updating command\build\* to use newer version
 - adding Unit::_cleanUp to assist in clearing stuff in temp
 - updaitng usage of cleanUp inside of LibraryTest
 - fixing libraries test and updating UnitTest.
 - renaming generate to build
 - adding \console\Request::shift() and setting default for params to true on \console\Router
 - modifying params in \console\Request. `-param` represents a boolean value, `--param=something` is a param with value. everything else goes in params['args'].
 - rebase onto 0.4
 - implemetating \command\Build and \command\build\Test
 - changing Build to use library path
 - fixing some errors in \command\build\Test
 - changing \command\build\Test to use Inspector for class methods
 - adding command\build\Library to archive and extract libraries
 - updating library command and adding the app.phar.gz template
 - Updating Library command
 - updating implementation of \command\Build and friends
 - updating command\build\* to use newer version
 - updaitng usage of cleanUp inside of LibraryTest
 - updating path handling in command\build\Library
 - updating command\build\Test documentation
 - updating \command\build\Library docs
 - changing title in test and default layout
 - updating PagesController and home.html.php
 - fixing LibraryTest to use build_test library. updating messages return from build\Library
 - Removes annoying prompts after the unit test run. (gwoo) added exclude mocks
 - making \test\Controller a little easier to extend
 - fixing doc blocks on \test\Controller
 - model to handle inheritnace a little smoother. documentat and recordset get some cleanup
 - simplifying Libraries::_search and adding callable filter and exclude
 - only set default location status when default is 200, fixes #16. allow setting content type to false, fixes #17.