# changelog

author: Jonathan Perkin <jonathan.perkin@oracle.com>
changelog:
  - EXCEPTIONS-CLIENT has been deleted, remove it from here too
  - Support MYSQL_BUILD_MAKE_JFLAG environment variable for passing
    a '-j' argument to make.


author: Tomislav Plavcic <tomislav.plavcic@percona.com>
changelog:
  - Upgrading a running server does not restart the service (bug1311840)
  - Set MYSQL_MAINTAINER_MODE=OFF for debug build (bug1408232)


author: Tomislav Plavcic <tomislav.plavcic@percona.com>
changelog:
  - Added ps_tokudb_admin script for TokuDB plugin installation (BLD-212)
  - Fixed TokuDB engine fails after upgrade on centos 5/6 (bug1413956)


author: Tomislav Plavcic <tomislav.plavcic@percona.com>
changelog:
  - Fixed RPMs assumes that .pid file is located in datadir (bug1201896)
  - Fixed errors in debug build when maintainer mode is on (bug1408232)


author: Tomislav Plavcic <tomislav.plavcic@percona.com>
changelog:
  - Fixed yum update fails and complains about duplicate pid (#1454917)
  - Percona Server fails to install on centos 7 if mariadb-devel package installed (#1499721)


author: Jonathan G. Underwood <jonathan.underwood@gmail.com> - 2.8.8-2
changelog:
  - Initial package, based on the cmake package
  - Some fixes to macros.cmake28
  - White space fixes to spec file
  - Make -gui require arch specific main package


author: Jonathan G. Underwood <jonathan.underwood@gmail.com> - 2.8.9-1
changelog:
  - Update to version 2.8.9 (updated patch from Rex Dieter)
  - Remove patch to fix PKG_CONFIG_FOUND (upstreamed, bug #812188)


author: Richard Shaw <hobbes1069@gmail.com> - 2.8.11.2-1
changelog:
  - Update to latest upstream release.
  - Fixed warning in desktop file due to icon file with extension.


author: Jan Kaluza <jkaluza@redhat.com> - 2.4.4-5
changelog:
  - execute systemctl reload as result of apachectl graceful
  - mod_ssl: ignore SNI hints unless required by config
  - mod_cache: forward-port CacheMaxExpire "hard" option
  - mod_ssl: fall back on another module's proxy hook if mod_ssl proxy
    is not configured.


author: Jan Kaluza <jkaluza@redhat.com> - 2.4.4-6
changelog:
  - htpasswd/htdbm: fix hash generation bug (#956344)
  - do not dump vhosts twice in httpd -S output (#928761)
  - mod_cache: fix potential crash caused by uninitialized variable (#954109)


author: Jan Kaluza <jkaluza@redhat.com> - 2.4.4-12
changelog:
  - mod_unique_id: replace use of hostname + pid with PRNG output (#976666)
  - apxs: mention -p option in manpage


author: Andrei Lapshin - 2.0.0-0.3.beta8
changelog:
  - Enable debug build
  - Enable verbose build output
  - Move libluajit-*.so to -devel
  - Add link to upstream hotfix #1


author: Andrei Lapshin - 2.0.0-0.4.beta9
changelog:
  - Update to new upstream version
  - Rename main executable to luajit
  - Remove BuildRoot tag and %clean section


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.6-ria1
changelog:
  Changes with nginx 1.9.6                                         27 Oct 2015
  - Bugfix: a segmentation fault might occur in a worker process when
    using HTTP/2.
    Thanks to Piotr Sikora and Denis Andzakovic.
  - Bugfix: the $server_protocol variable was empty when using HTTP/2.
    Bugfix: backend SSL connections in the stream module might be timed
    out unexpectedly.
  - Bugfix: a segmentation fault might occur in a worker process if
    different ssl_session_cache settings were used in different virtual
    servers.
  - Bugfix: nginx/Windows could not be built with MinGW gcc; the bug had
    appeared in 1.9.4.
    Thanks to Kouhei Sutou.
  - Bugfix: time was not updated when the timer_resolution directive was
    used on Windows.
  - Miscellaneous minor fixes and improvements.
    Thanks to Markus Linnala, Kurtis Nusbaum and Piotr Sikora.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.7-ria1
changelog:
  Changes with nginx 1.9.7                                         17 Nov 2015
  - Feature: the "nohostname" parameter of logging to syslog.
  - Feature: the "proxy_cache_convert_head" directive.
  - Feature: the $realip_remote_addr variable in the
    ngx_http_realip_module.
  - Bugfix: the "expires" directive might not work when using variables.
  - Bugfix: a segmentation fault might occur in a worker process when
    using HTTP/2; the bug had appeared in 1.9.6.
  - Bugfix: if nginx was built with the ngx_http_v2_module it was
    possible to use the HTTP/2 protocol even if the "http2" parameter of
    the "listen" directive was not specified.
  - Bugfix: in the ngx_http_v2_module.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.8-ria2
changelog:
  Changes with nginx 1.9.8                                         08 Dec 2015
  - Feature: pwritev() support.
  - Feature: the "include" directive inside the "upstream" block.
  - Feature: the ngx_http_slice_module.
  - Bugfix: a segmentation fault might occur in a worker process when
    using LibreSSL; the bug had appeared in 1.9.6.
  - Bugfix: nginx could not be built on OS X in some cases.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.9-ria1
changelog:
  Changes with nginx 1.9.9                                         09 Dec 2015
  - Bugfix: proxying to unix domain sockets did not work when using
    variables; the bug had appeared in 1.9.8.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.10-ria1
changelog:
  Changes with nginx 1.9.10                                        26 Jan 2016
  - Security: invalid pointer dereference might occur during DNS server
    response processing if the "resolver" directive was used, allowing an
    attacker who is able to forge UDP packets from the DNS server to
    cause segmentation fault in a worker process (CVE-2016-0742).
  - Security: use-after-free condition might occur during CNAME response
    processing if the "resolver" directive was used, allowing an attacker
    who is able to trigger name resolution to cause segmentation fault in
    a worker process, or might have potential other impact
    (CVE-2016-0746).
  - Security: CNAME resolution was insufficiently limited if the
    "resolver" directive was used, allowing an attacker who is able to
    trigger arbitrary name resolution to cause excessive resource
    consumption in worker processes (CVE-2016-0747).
  - Feature: the "auto" parameter of the "worker_cpu_affinity" directive.
  - Bugfix: the "proxy_protocol" parameter of the "listen" directive did
    not work with IPv6 listen sockets.
  - Bugfix: connections to upstream servers might be cached incorrectly
    when using the "keepalive" directive.
  - Bugfix: proxying used the HTTP method of the original request after
    an "X-Accel-Redirect" redirection.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.11-ria1
changelog:
  Changes with nginx 1.9.11                                        09 Feb 2016
  - Feature: TCP support in resolver.
  - Feature: dynamic modules.
  - Bugfix: the $request_length variable did not include size of request
    headers when using HTTP/2.
  - Bugfix: in the ngx_http_v2_module.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.12-ria3
changelog:
  - Remove nginx ctpp module. Module stop supporting :(
  Changes with nginx 1.9.12                                        24 Feb 2016
  - Feature: Huffman encoding of response headers in HTTP/2.
    Thanks to Vlad Krasnov.
  - Feature: the "worker_cpu_affinity" directive now supports more than
    64 CPUs.
  - Bugfix: compatibility with 3rd party C++ modules; the bug had
    appeared in 1.9.11.
    Thanks to Piotr Sikora.
  - Bugfix: nginx could not be built statically with OpenSSL on Linux;
    the bug had appeared in 1.9.11.
  - Bugfix: the "add_header ... always" directive with an empty value did
    not delete "Last-Modified" and "ETag" header lines from error
    responses.
  - Workaround: "called a function you should not call" and "shutdown
    while in init" messages might appear in logs when using OpenSSL
    1.0.2f.
  - Bugfix: invalid headers might be logged incorrectly.
  - Bugfix: socket leak when using HTTP/2.
  - Bugfix: in the ngx_http_v2_module.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.14-ria1
changelog:
  Changes with nginx 1.9.14                                        05 Apr 2016
  - Feature: OpenSSL 1.1.0 compatibility.
  - Feature: the "proxy_request_buffering", "fastcgi_request_buffering",
    "scgi_request_buffering", and "uwsgi_request_buffering" directives
    now work with HTTP/2.
  - Bugfix: "zero size buf in output" alerts might appear in logs when
    using HTTP/2.
  - Bugfix: the "client_max_body_size" directive might work incorrectly
    when using HTTP/2.
  - Bugfix: of minor bugs in logging.

  Changes with nginx 1.9.13                                        29 Mar 2016
  - Change: non-idempotent requests (POST, LOCK, PATCH) are no longer
    passed to the next server by default if a request has been sent to a
    backend; the "non_idempotent" parameter of the "proxy_next_upstream"
    directive explicitly allows retrying such requests.
  - Feature: the ngx_http_perl_module can be built dynamically.
  - Feature: UDP support in the stream module.
  - Feature: the "aio_write" directive.
  - Feature: now cache manager monitors number of elements in caches and
    tries to avoid cache keys zone overflows.
  - Bugfix: "task already active" and "second aio post" alerts might
    appear in logs when using the "sendfile" and "aio" directives with
    subrequests.
  - Bugfix: "zero size buf in output" alerts might appear in logs if
    caching was used and a client closed a connection prematurely.
  - Bugfix: connections with clients might be closed needlessly if
    caching was used.
    Thanks to Justin Li.
  - Bugfix: nginx might hog CPU if the "sendfile" directive was used on
    Linux or Solaris and a file being sent was changed during sending.
  - Bugfix: connections might hang when using the "sendfile" and "aio
    threads" directives.
  - Bugfix: in the "proxy_pass", "fastcgi_pass", "scgi_pass", and
    "uwsgi_pass" directives when using variables.
    Thanks to Piotr Sikora.
  - Bugfix: in the ngx_http_sub_filter_module.
  - Bugfix: if an error occurred in a cached backend connection, the
    request was passed to the next server regardless of the
    proxy_next_upstream directive.
  - Bugfix: "CreateFile() failed" errors when creating temporary files on
    Windows.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.15-ria1
changelog:
  Changes with nginx 1.9.15                                        19 Apr 2016
  - Bugfix: "recv() failed" errors might occur when using HHVM as a
    FastCGI server.
  - Bugfix: when using HTTP/2 and the "limit_req" or "auth_request"
    directives a timeout or a "client violated flow control" error might
    occur while reading client request body; the bug had appeared in
    1.9.14.
  - Workaround: a response might not be shown by some browsers if HTTP/2
    was used and client request body was not fully read; the bug had
    appeared in 1.9.14.
  - Bugfix: connections might hang when using the "aio threads"
    directive.
    Thanks to Mindaugas Rasiukevicius.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.11.0-ria1
changelog:
  Changes with nginx 1.11.0                                        24 May 2016
  - Feature: the "transparent" parameter of the "proxy_bind",
    "fastcgi_bind", "memcached_bind", "scgi_bind", and "uwsgi_bind"
    directives.
  - Feature: the $request_id variable.
  - Feature: the "map" directive supports combinations of multiple
    variables as resulting values.
  - Feature: now nginx checks if EPOLLRDHUP events are supported by
    kernel, and optimizes connection handling accordingly if the "epoll"
    method is used.
  - Feature: the "ssl_certificate" and "ssl_certificate_key" directives
    can be specified multiple times to load certificates of different
    types (for example, RSA and ECDSA).
  - Feature: the "ssl_ecdh_curve" directive now allows specifying a list
    of curves when using OpenSSL 1.0.2 or newer; by default a list built
    into OpenSSL is used.
  - Change: to use DHE ciphers it is now required to specify parameters
    using the "ssl_dhparam" directive.
  - Feature: the $proxy_protocol_port variable.
  - Feature: the $realip_remote_port variable in the
    ngx_http_realip_module.
  - Feature: the ngx_http_realip_module is now able to set the client
    port in addition to the address.
  - Change: the "421 Misdirected Request" response now used when
    rejecting requests to a virtual server different from one negotiated
    during an SSL handshake; this improves interoperability with some
    HTTP/2 clients when using client certificates.
  - Change: HTTP/2 clients can now start sending request body
    immediately; the "http2_body_preread_size" directive controls size of
    the buffer used before nginx will start reading client request body.
  - Bugfix: cached error responses were not updated when using the
    "proxy_cache_bypass" directive.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.4-ria1
changelog:
  Changes with nginx 1.9.4                                         18 Aug 2015
  - Change: the "proxy_downstream_buffer" and "proxy_upstream_buffer"
    directives of the stream module are replaced with the
    "proxy_buffer_size" directive.
  - Feature: the "tcp_nodelay" directive in the stream module.
  - Feature: multiple "sub_filter" directives can be used simultaneously.
  - Feature: variables support in the search string of the "sub_filter"
    directive.
  - Workaround: configuration testing might fail under Linux OpenVZ.
    Thanks to Gena Makhomed.
  - Bugfix: old worker processes might hog CPU after reconfiguration with
    a large number of worker_connections.
  - Bugfix: a segmentation fault might occur in a worker process if the
    "try_files" and "alias" directives were used inside a location given
    by a regular expression; the bug had appeared in 1.7.1.
  - Bugfix: the "try_files" directive inside a nested location given by a
    regular expression worked incorrectly if the "alias" directive was
    used in the outer location.
  - Bugfix: in hash table initialization error handling.
  - Bugfix: nginx could not be built with Visual Studio 2015.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.9.15-ria1
changelog:
  Changes with nginx 1.9.15                                        19 Apr 2016

      *) Bugfix: "recv() failed" errors might occur when using HHVM as a
         FastCGI server.

      *) Bugfix: when using HTTP/2 and the "limit_req" or "auth_request"
         directives a timeout or a "client violated flow control" error might
         occur while reading client request body; the bug had appeared in
         1.9.14.

      *) Workaround: a response might not be shown by some browsers if HTTP/2
         was used and client request body was not fully read; the bug had
         appeared in 1.9.14.

      *) Bugfix: connections might hang when using the "aio threads"
         directive.
         Thanks to Mindaugas Rasiukevicius.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.3.13-ria1
changelog:
  - Update nginx to Latest Development Version
  - Change: a compiler with name "cc" is now used by default.
  - Feature: support for proxying of WebSocket connections. Thanks to Apcera and CloudBees for sponsoring this work.
  - Feature: the "auth_basic_user_file" directive supports "{SHA}" password encryption method. Thanks to Louis Opter.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.3.14-ria1
changelog:
  - Update nginx to Latest Development Version
  - Feature: $connections_active, $connections_reading, and $connections_writing variables in the ngx_http_stub_status_module.
  - Feature: support of WebSocket connections in the ngx_http_uwsgi_module and ngx_http_scgi_module.
  - Bugfix: in virtual servers handling with SNI.
  - Bugfix: new sessions were not always stored if the "ssl_session_cache shared" directive was used and there was no free space in shared memory. Thanks to Piotr Sikora.
  - Bugfix: multiple X-Forwarded-For headers were handled incorrectly. Thanks to Neal Poole for sponsoring this work.
  - Bugfix: in the ngx_http_mp4_module. Thanks to Gernot Vormayr.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.3.15-ria1
changelog:
  - Change: opening and closing a connection without sending any data in it is no longer logged to access_log with 400 error code.
  - Feature: the ngx_http_spdy_module. Thanks to Automattic for sponsoring this work.
  - Feature: the "limit_req_status" and "limit_conn_status" directives. Thanks to Nick Marden.
  - Feature: the "image_filter_interlace" directive. Thanks to Ian Babrou.
  - Feature: $connections_waiting variable in the ngx_http_stub_status_module.
  - Feature: the mail proxy module now supports IPv6 backends. 
  - Bugfix: request body might be transmitted incorrectly when retrying a request to a next upstream server; the bug had appeared in 1.3.9. Thanks to Piotr Sikora.
  - Bugfix: in the "client_body_in_file_only" directive; the bug had appeared in 1.3.9.
  - Bugfix: responses might hang if subrequests were used and a DNS error happened during subrequest processing. Thanks to Lanshun Zhou.
  - Bugfix: in backend usage accounting.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.3.16-ria1
changelog:
  - Bugfix: a segmentation fault might occur in a worker process if subrequests were used; the bug had appeared in 1.3.9.
  - Bugfix: the "tcp_nodelay" directive caused an error if a WebSocket connection was proxied into a unix domain socket.
  - Bugfix: the $upstream_response_length variable has an incorrect value "0" if buffering was not used. Thanks to Piotr Sikora.
  - Bugfix: in the eventport and /dev/poll methods.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.4.0-ria0
changelog:
  - Bugfix: nginx could not be built with the ngx_http_perl_module if the --with-openssl option was used; the bug had appeared in 1.3.16.
  - Bugfix: in a request body handling in the ngx_http_perl_module; the bug had appeared in 1.3.9.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.4.1-ria0
changelog:
  - Security: a stack-based buffer overflow might occur in a worker process while handling a specially crafted request, potentially
    resulting in arbitrary code execution (CVE-2013-2028); the bug had appeared in 1.3.9.
    Thanks to Greg MacManus, iSIGHT Partners Labs.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.5.3-ria0
changelog:
  - Change in internal API: now u->length defaults to -1 if working with backends in unbuffered mode.
  - Change: now after receiving an incomplete response from a backend server nginx tries to send an 
    available part of the response to a client, and then closes client connection.
  - Bugfix: a segmentation fault might occur in a worker process if the ngx_http_spdy_module was used 
    with the "client_body_in_file_only" directive.
  - Bugfix: the "so_keepalive" parameter of the "listen" directive might be handled incorrectly 
    on DragonFlyBSD. Thanks to Sepherosa Ziehau.
  - Bugfix: in the ngx_http_xslt_filter_module.
  - Bugfix: in the ngx_http_sub_filter_module.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.5.4-ria0
changelog:
  - Change: the "js" extension MIME type has been changed to
    "application/javascript"; default value of the "charset_types"
    directive was changed accordingly.
  - Change: now the "image_filter" directive with the "size" parameter
    returns responses with the "application/json" MIME type.
  - Feature: the ngx_http_auth_request_module.
  - Bugfix: a segmentation fault might occur on start or during
    reconfiguration if the "try_files" directive was used with an empty
    parameter.
  - Bugfix: memory leak if relative paths were specified using variables
    in the "root" or "auth_basic_user_file" directives.
  - Bugfix: the "valid_referers" directive incorrectly executed regular
    expressions if a "Referer" header started with "https://".
    Thanks to Liangbin Li.
  - Bugfix: responses might hang if subrequests were used and an SSL
    handshake error happened during subrequest processing.
    Thanks to Aviram Cohen.
  - Bugfix: in the ngx_http_autoindex_module.
  - Bugfix: in the ngx_http_spdy_module.


author: Oleg Cherniy <oleg.cherniy@gmail.com> - 1.5.5-ria1
changelog:
  - Change: now nginx assumes HTTP/1.0 by default if it is not able to
    detect protocol reliably.
  - Feature: the "disable_symlinks" directive now uses O_PATH on Linux.
  - Feature: now nginx uses EPOLLRDHUP events to detect premature
    connection close by clients if the "epoll" method is used.
  - Bugfix: in the "valid_referers" directive if the "server_names"
    parameter was used.
  - Bugfix: the $request_time variable did not work in nginx/Windows.
  - Bugfix: in the "image_filter" directive.
    Thanks to Lanshun Zhou.
  - Bugfix: OpenSSL 1.0.1f compatibility.
    Thanks to Piotr Sikora.


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.6.0.20121101-1
changelog:
  - Update to last beta relase 0.6.0 from github 20121101
   - Added functions version, version_id, date and time to Volt
   - PHQL OFFSET complete implementation
   - Fixed bug in Phalcon\Mvc\Collection::find and Phalcon\Mvc\Collection::findFirst
   - Removing unnecessary duplications in zval PHALCON_GET_FOREACH_VALUE
   - Merging PHALCON_INIT_NVAR into PHALCON_GET_FOREACH_KEY
   - Added HTML/XHTML document type support in Phalcon\Tag
   - Added "exists" method to every backend in Phalcon\Cache\Backend
   - Now is required pass true as parameter to Phalcon\Http\Request::getClientAddress if the user want to check the client address in the $_SERVER['HTTP_X_FORWARDED_FOR'] header
   - Removed unnecessary duplication of function names when calling function and methods
   - Now Phalcon can call functions from the PHP userspace without use call_user_func_array/call_user_func increasing performance
   - Added beforeException event triggered from Phalcon\Dispatcher before launch an exception allowing to inject code before launch a real exception modifing the behavior of the component
   - Now is possible attach listeners directly to specific events in Phalcon\Event\Managers 
   - Added Phalcon\Http\Request::get and Phalcon\Http\Request::has to read/check values from $_REQUEST
   - Added Phalcon\Cache\Backend\Mongo that uses a MongoDB collection as backend
   - Added options (compiled path, compiled separator, stat) for Volt
   - Concatenation on the same variable is now faster by using realloc instead of zval duplication
   - Some internal macros like PHALCON_INIT_VAR now produces less C-code making the extension lighter
   - Removed initialization of the memory stack frame when isn't needed
   - Inlining of scope locating functions to make read/write on objects faster
   - Array joins are now faster because a zval needle isn't needed anymore
   - Implemented fast copy/ctor to return_value reducing the overall memory usage
   - Added Phalcon\Tag::friendlyTitle to create friendly titles
   - Added a new C-based template engine highly coupled with Phalcon called Volt
   - Registered Phalcon\Mvc\Model\Transaction\Manager in Phalcon\DI\FactoryDefault as 'transactionManager'
   - Added Phalcon\Escaper to add contextual escaping of different kinds of texts
   - Registered Phalcon\Escaper in Phalcon\DI\FactoryDefault as 'escaper'
   - Phalcon\Tag now caches resolved services such as 'url' and 'dispatcher' making the view generation faster
   - Added support to the OFFSET clause in PHQL
   - Optimized Phalcon\Mvc\Model\Metadata to use less memory when using a high number of tables
   - Changed the use of strpos by phalcon_memnstr to search for strings into other strings reducing unnecessary zval allocations
   - Added faster camelize/uncamelize functions
   - Now a model can implement the method metaData to return the model meta-data insteaf of leave Phalcon do it automatically
   - Phalcon\Mvc\Model::skipAttributes allows to set a group of attributes that must be skipped from the INSERT/UPDATE SQL generation
   - Added Phalcon\Mvc\Collection to manage non-structured data models, for example: MongoDB


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.6.1.20121111-1
changelog:
  - Fixed bug in Phalcon\Mvc\Micro's not-found handler
   - Fixed bug reading named-parameters with quantifiers in Phalcon\Mvc\Router
   - Now named-routes are processed without use regular expressions
   - Now $this->view->disable() disables the auto-rendering mode completely
   - Added Phalcon\Mvc\View::enable that re-enables the auto-rendering mode
   - Added Phalcon\Cache\Backend::stop() to stop the cache without store anything into the backend
   - Fixed bug in Phalcon\Mvc\View that saves a empty cached content when using a cache
   - Implemented Phalcon\Db::FETCH_OBJ to return objects instead of arrays
   - Removed checking for callable definitions in Phalcon\DI due to security reasons


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.7.0.20121205-0
changelog:
  - Update to last relase 0.7.0 from github 20121205
   - Now the namespace can be set in a path of the route and it will passed automatically to the dispatcher
   - Implementing URL generation based on routed without regular expressions
   - Now is possible register a template engine in Phalcon\Mvc\View with an anonymous function
   - Passing 'compileAlways' => true as option for Volt makes that the templates will be always compiled instead of checking if they have changes
   - Now Phalcon\Cache\Backend adapters return false in the "exists" method if the cache has expired
   - Reduced number of re-executions when using scrollable cursors
   - Reducing class entry resolution in function calls
   - Disabling search of class execution scope when classes don't have a parent class
   - Removing unnecessary duplication of memory when printing string zvals
   - Implemented a fast way to retrieve object's members without add a memory frame
   - Now Phalcon\Mvc\Dispatcher checks for methods beforeExecuteRoute and afterExecuteRoute in the controller handler
   - Added phalcon_start_with to check if a zval string starts with other string avoiding substrs in PHP userland
   - Added interfaces to most classes helping the developer to easily create component replacements and add new adapters/classes
   - Implemented interfaces on their own components
   - Implemented event propagation, event cancelation and ability to stop events in EventsManager
   - Added Phalcon\Dispatcher::getDefaultNamespace
   - Added a $merge parameter to every Phalcon\Loader strategy to merge current values with a new array
   - Implemented registering services as "always shared"
   - Now Phalcon\Mvc\Model::save, Phalcon\Mvc\Model::create, Phalcon\Mvc\Model::update receives an array to assign the model's attributes from it
   - Support for UTF-8/UTF-16 characters on 32 bit platforms for PHQL/Volt parsers
   - Support for custom schemas in PHQL
   - Now is possible pass bound parameters to Phalcon\DB::fetchOne and Phalcon\Db::fetchAll
   - Implemented independent column map for models and a full escaping system for columns/tables/schemas according to the database system conventions
   - Added a $merge parameter to Phalcon\Mvc\Application::registerModules to merge new modules with current ones
   - Phalcon\Mvc\Application now allows registering a module using an anonymous function
   - Added Phalcon\Mvc\Model\Query\Builder to aid in the creation of PHQL queries using an OO interface
   - Support for COUNT(DISTINCT x) syntax in PHQL
   - Allowing user-defined messages in most Phalcon\Mvc\Model\Validators
   - Now Phalcon\Mvc\Model\Validator\StringLength uses mb_strlen when it is available
   - Allowed pass a URI manually to Phalcon\Mvc\Micro::handle()
   - Fixed missing json_encode filter in Volt
   - Moving cache implementation from Phalcon\Mvc\Model to Phalcon\Mvc\Model\Query, this allows caching both simple and complex resultsets


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.8.0.20121218-0
changelog:
  - Update to last alfa relase 0.8.0 from github 20121218
   - Removed unnecessary intermediate zvals when retrieving array items reducing overall memory comsumption
   - Removed unnecessary intermediate zvals when retrieving object members reducing overall memory comsumption
   - Removed PH_CHECK constant making simpler calling functions and methods internally
   - Added Phalcon\Text::increment, Phalcon\Text::random, Phalcon\Text::lower, Phalcon\Text::upper, Phalcon\Text::
   - Added Phalcon\Config::merge to merge recursively a configuration with another one
   - Added Phalcon\Config::toArray method to recursively convert an object to an array
   - Improved Volt runtime error/syntax error messages including always line and file
   - Added Phalcon\Security providing a set of functions to improve the security in Phalcon applications like bcry
   - Added Phalcon\Mvc\View\Engine\Volt\Compiler::addFunction to register user functions
   - Added Phalcon\Mvc\View\Engine\Volt\Compiler::addFilter to register user filters
   - Added Phalcon\Mvc\Model\Relation as class for model relationships
   - Added support for aliasing of model relationships in Phalcon\Mvc\Model
   - Relationships in Models are now case insensitive to be compliant with the PHP standard
   - Looking for a relationship in the models manager now performs a search in O(1) order
   - Added "cache" statement in Volt to cache view fragments
   - Added "do" statement to Volt to execute an expression without printing its evaluated value
   - Added "include" statement to Volt to perform a statical include of other views in compiling time
   - Added an internal method cache to speed up overall execution
   - Reduced memory allocation when reading/writing properties from objects
   - Added missing Phalcon\Mvc\Collection::getMessages() and Phalcon\Mvc\Collection::appendMessage
   - Added Phalcon\Config::get method to obtain a value from the configuration object setting a default value
   - Added an optional default value to Phalcon\Session\Adapter::get if this method returns a null value
   - Added OO methods to Phalcon\Session\Bag::get
   - Added an optional default value to Phalcon\Session\Bag::get if this method returns a null value
   - Added multiple inheritance and two-way replacement of blocks in Volt
   - Added evaluation of "tests" to Volt
   - Added support to call methods and read properties in sub-objects in Volt
   - Volt now checks if a variable name is a registered service and injects it to the views
   - The "For" statement in Volt now supports get the current key and add an optional if evaluation
   - Added support to read PHP constants in Volt
   - Added "prefix" option to Volt, allowing prefixing the resulting compiled paths
   - Now registerAutoloader in module definitions receives the services container (DI) as first parameter
   - Fixed skipAttributes methods in Phalcon\Mvc\Model
   - Fixed use of muliples databases in the ORM
   - Fixed use of a common events manager databases in the ORM
   - Now Phalcon\Mvc\Router can be configured to remove extra slashes passed in the URI
   - In Phalcon\Mvc\Router the default route is '/' when none is giving


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.8.0.20130110-0
changelog:
  - Update to version 0.8.0b1
   - Improved Phalcon\Escaper, this component provides contextual escaping of different kinds of texts (CSS, Javascript, URL, HTML Attributes etc)
   - Added serialization of Mvc\Collection instances
   - Added Phalcon\Mvc\View::setLayout to change the layout instead of looking for a controller with the same name as the latest controller dispatched
   - Now is possible to pass an option called 'options' to any of the Phalcon\Db\Adapter\Pdo adapters to set extra PDO options in the connection
   - Removed filtering of keys from Phalcon\Cache\Backend\File
   - Support for creating groups of routes using Phalcon\Router\Route\Group
   - Added Phalcon\Mvc\Micro middleware events
   - Implemented virtual scopes in Phalcon\Mvc\View

   - Update to version 0.8.0a2
   - Added support for behaviors in the ORM including: Phalcon\Mvc\Model\Behavior\Timestampable and Phalcon\Mvc\Model\Behavior\SoftDelete
   - Improved serialization of Mvc\Model instances and complex resultsets
   - Added an option to change the layouts directory and partials directory in Phalcon\Mvc\View
   - Added an option to disable an specific level of rendering in Phalcon\Mvc\View
   - Added Phalcon\Mvc\Model::setup to globally enable/disable specific features in the ORM
   - Added Phalcon\Db::setup to globally enable/disable specific features in the database component
   - Added Phalcon\Mvc\Model\Resultset::delete to delete every complete object returned in a resultset using a transaction
   - Added Phalcon\Mvc\Model\Resultset::update to update every complete object returned in a resultset using a transaction
   - Added support for converters in Phalcon\Mvc\Router
   - Added Phalcon\Mvc\View::getRender to return contents of a template into a string
   - Added methods to support HTTP method PATCH
   - Now Phalcon\Mvc\Model uses the last part of a namespaced class name as source name
   - Phalcon\DI now implements ArrayAccess to get/set services
   - Phalcon\Mvc\Micro now implements ArrayAccess to get services from the related services container
   - Improved building of complex service definitions in the DI
   - Added toArray method to Phalcon\Mvc\Model instances
   - Added autoescape mode in Volt


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.9.0.20130201-0
changelog:
  - Update to version 0.9.0b2
   - Added 'elseif' statement to Volt
   - Changed static key in Volt's 'cache' to any valid expression
   - Added Phalcon\Logger\Adapter\Syslog and Phalcon\Logger\Adapter\Stream to Phalcon\Logger
   - Added Phalcon\Logger\Multiple to send logs to multiples adapters
   - Added formatters abstraction to Phalcon\Logger, now including: Phalcon\Logger\Formatter\Line, Phalcon\Logger\Formatter\Json and Phalcon\L
   - Added Phalcon\Annotations\Adapter\Files to Phalcon\Annotations, this adapter stores the annotations in PHP files

   - Update to version 0.9.0b1
   - Added Phalcon\Annotations, a general purpose component to read annotations from docblocks
   - Phalcon\Mvc\Model now supports saving related records using magic methods with a unique call to 'save'
   - Adding autoescaping option to Phalcon\Tag
   - Added andWhere/orWhere to Phalcon\Mvc\Model\Criteria
   - Added passing an HTTP body to the Phalcon\Http\Response's constructor
   - Phalcon\Mvc\View is now able to pass variables to the views using magic methods
   - Support for slice with filter and built-in syntax in Volt
   - Added magic methods in the ORM to find/findFirst by a single field
   - Improved XSS protection in Phalcon\Tag
   - Implemented queuing events with priorities in Phalcon\Events
   - Implemented collecting of returned responses in Phalcon\Events
   - Added toArray method to Phalcon\Mvc\Model\Resultset classes
   - Added hydration modes to Phalcon\Mvc\Model\Resultset (HYDRATE_RECORDS, HYDRATE_ARRAYS, HYDRATE_OBJECTS)


author: Oleg Cherniy <oleg.cherniy@gmail.com> 0.9.0.20130206-0
changelog:
  - Update to last stable release
   - Support for reusable records. A relation can be marked to cache in memory the records to speedup getting related records


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.0.0.20130215-0
changelog:
  - Update to last beta release
   - Fixed bug with missing blocks in multiple inheritance in Volt
   - Support for ternary operator in Volt
   - Support for 'forelse' in Volt
   - Added support for loop variable context in Volt
   - Added whitespace control delimiters { -%} and {{- -}} to Volt
   - Suport for 'in' and 'not in' operators in Volt
   - Added Phalcon\Mvc\Model::assign to assign an array of values to a model instance
   - Added Phalcon\Mvc\Model::refresh to refresh the state of a model
   - Added Phalcon\Logger\Adapter::setLogLevel to filter messages with greater or less priority
   - Removed constructor from Phalcon\Cache\BackendInterface


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.0.0.20130215-0
changelog:
  - Update to last beta release
  1.0.1
   - Paths aren't correctly normalized in Phalcon\Mvc\Model\MetaData\Files
   - Added extra class prefix to schema.table in Phalcon\Mvc\Model\MetaData to avoid multiple-database collisions
   - Now Phalcon\Mvc\Router ignores numeric paths in controller, namespace, module and action, avoiding that those will be p
   - Added Phalcon\Forms\Form::remove to remove an element from the form and Phalcon\Forms\Form::has to check if a form has
  1.0.0b2
   - Added Phalcon\Mvc\Router::setUriSource to set if the URI source must be $_GET['_url'] or $_SERVER['REQUEST_URI']
   - Added a white-list parameter to Phalcon\Mvc\Model::save(), Phalcon\Mvc\Model::create() and
   Phalcon\Mvc\Model::update() to avoid possible mass-assigment attacks
   - Added leftJoin/rightJoin to QueryBuilder
  1.0.0b1
   - Fixed bug with missing blocks in multiple inheritance in Volt
   - Support for ternary operator in Volt
   - Support for 'forelse' in Volt
   - Added support for loop variable context in Volt
   - Added whitespace control delimiters { -%} and {{- -}} to Volt
   - Suport for 'in' and 'not in' operators in Volt
   - Added Phalcon\Mvc\Model::assign to assign an array of values to a model instance
   - Added Phalcon\Mvc\Model::refresh to refresh the state of a model
   - Added Phalcon\Logger\Adapter::setLogLevel to filter messages with greater or less priority
   - Removed constructor from Phalcon\Cache\BackendInterface
   - Added Phalcon\Cache\Multiple, this backend writes to several backends, and reads data according to the order in which b
   - Now a model can use a separate connection to read and another to write, this makes horizontal sharding easy
   - Now, a model could implement a method selectReadConnection to dynamically return the correct database according to the
   - Added Phalcon\Cache\Backend\Memory to cache data in the current request
   - Added Phalcon\Validation, this component allows the validate a set of data based on pre-defined rules
   - Added Phalcon\Forms, this component acts as a forms builder binding request data to entities, aiding in the validation
   - Phalcon\Db is now case-folding independent
   - Phalcon\Mvc\Model uses column names keeping the case-folding as they were defined
   - Added Phalcon\Mvc\Router::notFound to define the paths the router must use if any route is matched
   - Improved \Phalcon\Mvc\Router\Annotations to work better with controllers in namespaces and modules
   - A model can be marked to keep record snapshots allowing to check what fields have been changed
   - The _source and _schema properties have been moved from Phalcon\Mvc\Model to Phalcon\Mvc\Model\Manager. This allow set
   - Added Phalcon\Session\Bag::remove to remove an specific variable from a session bag
   - Added support for complex expressions in PHQL ORDER BY clause
   - Added support for complex expressions in PHQL GROUP BY clause
   - Added support for $_SERVER['REQUEST_URI'] if $_GET['_url'] is not available in Phalcon\Mvc\Router
   - Added an option to set up specific models with dynamic update instead of all-fields update, every field is checked if i
   - Added a minimalist client for the Beanstalk queue server


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.1.0.20130424-0
changelog:
  - Update to last beta release
  1.1.0
   - Improvements to the query builder allowing to define bound parameters in the "where" methods
   - Added Mvc\Query\Builder::inWhere to append a IN expression to the query
   - Added Mvc\Query\Builder::notInWhere to append a NOT IN expression to the query
   - Added Mvc\Query\Builder::betweenWhere to append a BETWEEN expression to the query
   - Now Phalcon\Session\Bag injects automatically the default DI if one hasn't beed manually assigned
   - Added Phalcon\Forms\Manager to reference forms and retrieve them from any part of the application
   - If an element in Phalcon\Forms doesn't have a label defined now returns the element's name as label
   - Now if a validator in Phalcon\Validator has defined the option 'cancelOnFail' => true the validation will be aborted if the validator fails
   - Added Phalcon\Validation\Validator\Between to check a value between a range of two values
   - Phalcon\Forms\Form now extends from Phalcon\DI\Injectable allowing developers to use application services in the form i
   - Now calls to Phalcon\Mvc\Router can be chained
   - Phalcon\Mvc\Router::getRewriteUri is now public
   - Added Phalcon\Mvc\Router\Route::beforeMatch to implement arbitrary conditions to unmatch a matched route
   - Phalcon\Mvc\Model can be now set up to throw an exception when the saving process fails
   - Added Phalcon\Assets component to manage CSS/Javascripts resources in an application
   - Added Phalcon\Annotations\Collection::getAll to return all the annotations in a collection that matches a name
   - Added Phalcon\Crypt component to provide encryption facilities to phalcon applications
   - Now Phalcon\Http\Request: get, getQuery y getPost returns the respective superglobals in case of no parameters
   - Now Phalcon\Mvc\Router supports hostname restrictions
   - Added support for filtering/sanitizing in Phalcon\Validation
   - Added events beforeValidation/afterValidation to Phalcon\Validation and Phalcon\Forms\Form
   - Added ability to register user-options in Phalcon\Forms\Form elements
   - Fixed Phalcon\Mvc\Micro\Collections to register a controllers in Phalcon\Mvc\Micro
   - Added Phalcon\Tag::dateField and Phalcon\Tag::numericField
   - Added Phalcon\Forms\Element\Date and Phalcon\Forms\Element\Numeric


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.1.0.20130530-0
changelog:
  - Update to last beta release
  1.1.0
   - Improvements to the query builder allowing to define bound parameters in the "where" methods
   - Added Mvc\Query\Builder::inWhere to append a IN expression to the query
   - Added Mvc\Query\Builder::notInWhere to append a NOT IN expression to the query
   - Added Mvc\Query\Builder::betweenWhere to append a BETWEEN expression to the query
   - Now Phalcon\Session\Bag injects automatically the default DI if one hasn't beed manually assigned
   - Added Phalcon\Forms\Manager to reference forms and retrieve them from any part of the application
   - If an element in Phalcon\Forms doesn't have a label defined now returns the element's name as label
   - Now if a validator in Phalcon\Validator has defined the option 'cancelOnFail' => true the validation will be aborted if the validator fails
   - Added Phalcon\Validation\Validator\Between to check a value between a range of two values
   - Added Phalcon\Validation\Validator\Confirmation to check that a value match its confirmation value (another attribute in the data to validate)
   - Phalcon\Forms\Form now extends from Phalcon\DI\Injectable allowing developers to use application services in the form initialization
   - Now calls to Phalcon\Mvc\Router can be chained
   - Phalcon\Mvc\Router::getRewriteUri is now public
   - Added Phalcon\Mvc\Router\Route::beforeMatch to implement arbitrary conditions to unmatch a matched route
   - Phalcon\Mvc\Model can be now set up to throw an exception when the saving process fails
   - Added Phalcon\Assets component to manage CSS/Javascripts resources in an application
   - Added Phalcon\Annotations\Collection::getAll to return all the annotations in a collection that matches a name
   - Added Phalcon\Crypt component to provide encryption facilities to phalcon applications
   - Now Phalcon\Http\Request: get, getQuery y getPost returns the respective superglobals in case of no parameters
   - Now Phalcon\Mvc\Router supports simple/regex hostname restrictions
   - Added support for filtering/sanitizing in Phalcon\Validation
   - Added events beforeValidation/afterValidation to Phalcon\Validation and Phalcon\Forms\Form
   - Added ability to register user-options in Phalcon\Forms\Form elements
   - Fixed Phalcon\Mvc\Micro\Collections to register a controllers in Phalcon\Mvc\Micro
   - Added Phalcon\Tag::dateField and Phalcon\Tag::numericField
   - Added Phalcon\Forms\Element\Date and Phalcon\Forms\Element\Numeric
   - Added Phalcon\Cache\Frontend\Json to cache data as JSON
   - Added Phalcon\Tag::tagHtml and Phalcon\Tag::tagHtmlClose to generate any kind of HTML tags
   - Phalcon\Http\Response\Cookies is now fixed
   - Added support for automatic crypting of cookies in Phalcon\Http\Response\Cookies
   - Phalcon\DI\FactoryDefault now provides the 'crypt' service
   - Volt's paths are now automatically normalized to realpaths
   - Fixed bug in convert_encoding in Volt
   - Added Phalcon\Filter\UserFilterInterface to be used in custom filters
   - Added support for filters in Phalcon\Forms\Form elements
   - Added maximum recursion depth exceeded control in Phalcon\Kernel
   - Performance: Now Phalcon makes use of interned strings if PHP 5.4 to reduce memory usage
   - Performance: Implemented cache of visibility for all intern properties in 5.3/5.4 increasing performance 
   - Performance: All hash keys are now pre-calculated in compilation time to read/write internal properties faster
   - Performance: Now all functions are static allowing the compiler to inline functions or remove those that aren't used by the framework
   - Performance: Now Phalcon provides specific optimizations when the extension is compiled for NTS modules
   - Performance: Implemented function to fetch parameters from the VM stack with minimum overhead
   - Performance: Implemented a global PHQL parser cache to avoid that a same statement be parsed more than one time
   - Performance: Events by priority are now disabled by default. A user must explicitly define that Phalcon\Events\Manager must use a PriorityQueue instead of a FIFF (First In-First Fired)
   - !! Phalcon\CLI\Router API have been changed. Check the manual to update your bootstrap


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.2.4-0
changelog:
  - Update to last beta release
  1.2.3
   - Security fixes (#1144)
  1.2.2
   - Phalcon\Mvc\Model\Query\Builder may now use both integer and string placeholders (#701)
   - Fixed invalid memory reads when GC is on (#469, #927)
   - Phalcon\Flash\Session::getMessage('key') returns now an empty array if the key is not found (#908, #920)
   - Fixed bugs in Phalcon\Escaper (#917)
   - Fixed memory leaks for PHP < 5.4 (#910, #914, #916)
   - Fixed memory access violations (#911, #918, #927, #928)
   - Memory allocation optimizations (#912)
  1.2.1
   - Reduced overall memory usage (#834, #891, #893)
   - Faster internal array and string manipulation (#830, #833, #837)
   - Fixed PHP 5.5 compilation on Windows
   - Dispatching parameters now can be modified in 'beforeExecuteRoute' events
   - 'beforeException' events can now handle exceptions occurred when executing actions (#140)
   - Added Phalcon\Dispatcher::getHandlerClass and Phalcon\Dispatch::getActionMethod
   - Phalcon\Form\Element\* classes now implement Phalcon\Form\ElementInterface
   - Phalcon\Config\Adapter\Ini correctly handles empty sections and INI files without any sections (#829, #837)
   - Phalcon\Http\Request fully supports file arrays (#884, #888)
   - Added support for various padding schemes (PKCS7, ANSI X.923, ISO 10126, ISO/IEC 7816-4, zero padding, space padding) to Phalcon\Crypt (#864, #887)
   - Added getKey(), getError(), isUploadedFile() methods to Phalcon\Http\Request\File (#878, #888)
   - Dot-delimited directives in INI-files are now prsed correctly (#872)
   - Fixed memory leaks in cache backends (#860)
   - Fixed various memory corruption issues (#849, #852, #858, #860, #861)
   - Fixed broken Phalcon\Http\Response::setFileToSend() method (#831, #832)
   - Phalcon\Http\Response::setFileToSend() can now show the file in the browser instead of offering to download it (#853)
   - Added Phalcon\Adapter\Config\Json class to read JSON configs (#844)
   - Added FirePHP Log Adapter and Formatter (#845)
   - Faster Phalcon\Config implementation (#837)
   - Phalcon\Config now support numeric properties as well (#837)
   - Database dialects now support BOOLEAN data type (#816)
   - Phalcon\Mvc\Application::handle() now checks whether the class exists before include()'ing its file (#812, #818)
  1.2.0
   - Now 'compiledPath' option accept a closure to dynamically create the compilation path in Volt
   - Volt now supports user extensions, these can be used to extend better Volt
   - Now Phalcon\Mvc\Url provides an internal separation for uris for static resources and uris to rewrite resources
   - Added Mvc\Model\Criteria::inWhere to append an IN expression to the criteria
   - Added Mvc\Model\Criteria::notInWhere to append a NOT IN expression to the criteria
   - Added Mvc\Model\Criteria::notBetweenWhere to append a NOT BETWEEN expression to the criteria
   - Added Mvc\Model\Criteria::betweenWhere to append a BETWEEN expression to the criteria
   - Phalcon\Tag::image accepts a second parameter to allow external URLs
   - Added Phalcon\Mvc\View\Simple as an alternative view component, this only have a single level of rendering and works better with Volt's inheritance
   - Better escaping of reserved words in internal PHQL generation
   - Added Phalcon\Http\Request::getJsonRawBody() to return the request body as a decoded JSON
   - Added Phalcon\Http\Request::getHeaders()
   - Support for many to many relations in the ORM
   - Added Phalcon\Assets\Filters\Jsmin to provide on-the-fly javascript minification
   - Added Phalcon\Assets\Filters\Cssmin to provide on-the-fly CSS minification
   - Support for real nested transactions in Phalcon\Db using database savepoints
   - Support for create/list/drop views in Phalcon\Db
   - Added event application:viewRender to Phalcon\Mvc\Application allowing the developer to call the $view->render method as he/she needs
   - Added option to disable literals in PHQL statements, this highly reduces the possibility
   to be attacked using SQL injections
   - Now you can pass an array of variables with virtual local scope in Phalcon\Mvc\View::partial()
   - Syntax CAST(expr AS datatype) is now supported by PHQL
   - Support for CONVERT(expr USING charset) in PHQL
   - Support for {% include "hello" with [var1, var2] %}
   - Phalcon\Mvc\Collection::find receives a parameter 'fields' to specify a list of fields
   - Added Phalcon\Forms\Element\Email and Phalcon\Tag::emailField
   - Support to define arrays using curly braces in Volt {'a': 'b', 'c': 'd'} in Volt
   - Support to make multiple assigments in a single set in Volt {% set a = b, c = d %} in Volt
   - Volt now support 'if'/'else' blocks with empty bodies
   - Support for 'cascade' action in addition to 'restrict' in Virtual Foreign Keys (ORM)
   - Added missing Phalcon\Http\Request\File::getType()
   - Phalcon\Tag is not abstract anymore allowing to create instances of it
   - Phalcon\Tag is now registered as 'tag' in Phalcon\DI\FactoryDefault
   - In a handler in Phalcon\Mvc\Micro returns an object that implements Phalcon\Http\ResponseInterface the response is automatically send()
   - Phalcon\Mvc\View now have a chaineable API
   - Phalcon\Mvc\Micro now can optionally receive the DI in its constructor
   - Now if a method receives an incorrect number of parameters an exception BadMethodCallException is thrown instead of a warning
   - Phalcon\Mvc\Model/Phalcon\Mvc\Collection now checks for a method 'onConstruct' allowing the developer to execute initialization stuff every time a model/collection instance is created
   - Phalcon\Mvc\Model/Phalcon\Mvc\Collection now checks for a method 'afterFetch' allowing the developer to execute initialization stuff every time a model/collection instance is created
   in a findFirst/find operation is created
   - Added Phalcon\Mvc\Collection::summatory easing the generation of this type of aggregation
   - Support for boolean literals in PHQL
   - Support for complex expressions in GROUP BY clauses in PHQL
   - Now PHQL exceptions include the PHQL statement itself
   - Aliases for namespaces are now supported in PHQL
   - Acl\Memory was rewritted to make it simpler and faster, you may regenerate your serialized ACLs
   - Support for assigment operators +=, -=, *=, /= in Volt
   - Support for Profile-Guided optimization installation scripts (See blog)
   - Added Phalcon\Annotations\Adapter\Xcache to store annotations in Xcache
   - Added Phalcon\Mvc\Model\Metadata\Xcache to store models meta-data in Xcache
   - Added
   - Now if a controller implements 'initialize' it only is called if 'beforeExecuteRoute' is not stopped
   - Listeners implementing 'beforeExecuteRoute'/'afterExecuteRoute' are executed first than the ones implemented as methods in the controller/task


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.2.4-0
changelog:
  - Update to last beta release
  1.2.4
   - Fixed broken ACL inheritance (#905)
   - Fixed crash while rendering element's label (#1210)
   - Fixed XSS vulnerabilities (#1216, #1190)
   - Added support for APCu 4.0.2+ (#1234)
   - Fixed chaining of CSS/JS filters (#1198)
   - Fixed notices and warnings with complex PHQL queries (#1222)
   - Memory allocation optimizations (#1220)
   - Fixed regular expression in \Phalcon\Mvc\Model\Validator\Email (#1243)
   - Documentation bug fixes
   - Phalcon\Mvc\Model::hasOne/hasMany/belongsTo/hasManyToMany/addBehavior() are now public methods (#1166)
   - Added support for MySQL DOUBLE type (#1128)
   - Added support for UTF-8 characters in jsmin
   - Added support for UTF-8 to \Phalcon\Debug (#1099)
   - Fixed regression in \Phalcon\Http\Request::getRawBody() (#1091)
   - Implemented \Phalcon\Cache\Backend\Memory::queryKeys() (#1093)
   - Redirects use status descriptions from RFC 2616 (#1175)
   - \Phalcon\Config::merge now works with derived classes (#1024)
   - \Phalcon\Security::checkHash() allows to restrict the length of the password to avoid attacks like https://www.djangoproject.com/weblog/2013/sep/15/security/
   - \Phalcon\Config can now be cloned (#1277)
   - \Phalcon\Mvc\Query\Builder::__construct() ignores joins (#1327)
   - Bug with a custom Events Manager in Phalcon\Mvc\Models (#1314)
   - Micro Collections return Phalcon\Mvc\Micro\CollectionInterface (#1130)
   - \Phalcon\Forms\Form::getMessages() does not generate a fatal error if the form is valid (#1349)
   - Fixed memory leaks (#1345)
   - Fixed invalid memory reads/writes across the code (#1340)
   - Bug fixes in \Phalcon\Logger\{Adapter,Formatter}\FirePhp (#1333)
   - Other bug fixes (#947, #1131, #1040, backported patches from 1.3.0 etc)
  1.2.3
   - Security fixes (#1144)
  1.2.2
   - Phalcon\Mvc\Model\Query\Builder may now use both integer and string placeholders (#701)
   - Fixed invalid memory reads when GC is on (#469, #927)
   - Phalcon\Flash\Session::getMessage('key') returns now an empty array if the key is not found (#908, #920)
   - Fixed bugs in Phalcon\Escaper (#917)
   - Fixed memory leaks for PHP < 5.4 (#910, #914, #916)
   - Fixed memory access violations (#911, #918, #927, #928)
   - Memory allocation optimizations (#912)
  1.2.1
   - Reduced overall memory usage (#834, #891, #893)
   - Faster internal array and string manipulation (#830, #833, #837)
   - Fixed PHP 5.5 compilation on Windows
   - Dispatching parameters now can be modified in 'beforeExecuteRoute' events
   - 'beforeException' events can now handle exceptions occurred when executing actions (#140)
   - Added Phalcon\Dispatcher::getHandlerClass and Phalcon\Dispatch::getActionMethod
   - Phalcon\Form\Element\* classes now implement Phalcon\Form\ElementInterface
   - Phalcon\Config\Adapter\Ini correctly handles empty sections and INI files without any sections (#829, #837)
   - Phalcon\Http\Request fully supports file arrays (#884, #888)
   - Added support for various padding schemes (PKCS7, ANSI X.923, ISO 10126, ISO/IEC 7816-4, zero padding, space padding) to Phalcon\Crypt (#864, #887)
   - Added getKey(), getError(), isUploadedFile() methods to Phalcon\Http\Request\File (#878, #888)
   - Dot-delimited directives in INI-files are now prsed correctly (#872)
   - Fixed memory leaks in cache backends (#860)
   - Fixed various memory corruption issues (#849, #852, #858, #860, #861)
   - Fixed broken Phalcon\Http\Response::setFileToSend() method (#831, #832)
   - Phalcon\Http\Response::setFileToSend() can now show the file in the browser instead of offering to download it (#853)
   - Added Phalcon\Adapter\Config\Json class to read JSON configs (#844)
   - Added FirePHP Log Adapter and Formatter (#845)
   - Faster Phalcon\Config implementation (#837)
   - Phalcon\Config now support numeric properties as well (#837)
   - Database dialects now support BOOLEAN data type (#816)
   - Phalcon\Mvc\Application::handle() now checks whether the class exists before include()'ing its file (#812, #818)
  1.2.0
   - Now 'compiledPath' option accept a closure to dynamically create the compilation path in Volt
   - Volt now supports user extensions, these can be used to extend better Volt
   - Now Phalcon\Mvc\Url provides an internal separation for uris for static resources and uris to rewrite resources
   - Added Mvc\Model\Criteria::inWhere to append an IN expression to the criteria
   - Added Mvc\Model\Criteria::notInWhere to append a NOT IN expression to the criteria
   - Added Mvc\Model\Criteria::notBetweenWhere to append a NOT BETWEEN expression to the criteria
   - Added Mvc\Model\Criteria::betweenWhere to append a BETWEEN expression to the criteria
   - Phalcon\Tag::image accepts a second parameter to allow external URLs
   - Added Phalcon\Mvc\View\Simple as an alternative view component, this only have a single level of rendering and works better with Volt's inheritance
   - Better escaping of reserved words in internal PHQL generation
   - Added Phalcon\Http\Request::getJsonRawBody() to return the request body as a decoded JSON
   - Added Phalcon\Http\Request::getHeaders()
   - Support for many to many relations in the ORM
   - Added Phalcon\Assets\Filters\Jsmin to provide on-the-fly javascript minification
   - Added Phalcon\Assets\Filters\Cssmin to provide on-the-fly CSS minification
   - Support for real nested transactions in Phalcon\Db using database savepoints
   - Support for create/list/drop views in Phalcon\Db
   - Added event application:viewRender to Phalcon\Mvc\Application allowing the developer to call the $view->render method as he/she needs
   - Added option to disable literals in PHQL statements, this highly reduces the possibility
   to be attacked using SQL injections
   - Now you can pass an array of variables with virtual local scope in Phalcon\Mvc\View::partial()
   - Syntax CAST(expr AS datatype) is now supported by PHQL
   - Support for CONVERT(expr USING charset) in PHQL
   - Support for {% include "hello" with [var1, var2] %}
   - Phalcon\Mvc\Collection::find receives a parameter 'fields' to specify a list of fields
   - Added Phalcon\Forms\Element\Email and Phalcon\Tag::emailField
   - Support to define arrays using curly braces in Volt {'a': 'b', 'c': 'd'} in Volt
   - Support to make multiple assigments in a single set in Volt {% set a = b, c = d %} in Volt
   - Volt now support 'if'/'else' blocks with empty bodies
   - Support for 'cascade' action in addition to 'restrict' in Virtual Foreign Keys (ORM)
   - Added missing Phalcon\Http\Request\File::getType()
   - Phalcon\Tag is not abstract anymore allowing to create instances of it
   - Phalcon\Tag is now registered as 'tag' in Phalcon\DI\FactoryDefault
   - In a handler in Phalcon\Mvc\Micro returns an object that implements Phalcon\Http\ResponseInterface the response is automatically send()
   - Phalcon\Mvc\View now have a chaineable API
   - Phalcon\Mvc\Micro now can optionally receive the DI in its constructor
   - Now if a method receives an incorrect number of parameters an exception BadMethodCallException is thrown instead of a warning
   - Phalcon\Mvc\Model/Phalcon\Mvc\Collection now checks for a method 'onConstruct' allowing the developer to execute initialization stuff every time a model/collection instance is created
   - Phalcon\Mvc\Model/Phalcon\Mvc\Collection now checks for a method 'afterFetch' allowing the developer to execute initialization stuff every time a model/collection instance is created
   in a findFirst/find operation is created
   - Added Phalcon\Mvc\Collection::summatory easing the generation of this type of aggregation
   - Support for boolean literals in PHQL
   - Support for complex expressions in GROUP BY clauses in PHQL
   - Now PHQL exceptions include the PHQL statement itself
   - Aliases for namespaces are now supported in PHQL
   - Acl\Memory was rewritted to make it simpler and faster, you may regenerate your serialized ACLs
   - Support for assigment operators +=, -=, *=, /= in Volt
   - Support for Profile-Guided optimization installation scripts (See blog)
   - Added Phalcon\Annotations\Adapter\Xcache to store annotations in Xcache
   - Added Phalcon\Mvc\Model\Metadata\Xcache to store models meta-data in Xcache
   - Added
   - Now if a controller implements 'initialize' it only is called if 'beforeExecuteRoute' is not stopped
   - Listeners implementing 'beforeExecuteRoute'/'afterExecuteRoute' are executed first than the ones implemented as methods in the controller/task


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.2.6-0
changelog:
  - Update to last beta release
  1.2.6
   - Phalcon\Security::checkHash() now correctly handles non-bcrypt hashes (#1912)
  1.2.5
   - Http\Cookie::__toString() will not throw exceptions (#1427)
   - Phalcon\Http\Cookie::__toString() will return a string value (#1428)
   - Camelize does not ignore the last character of a string anymore (#1436)
   - APC tests do not run under CLI when apc.enable_cli is 0 (#1449)
   - Phalcon\Debug::uri now supports both http and https (#987)
   - Fixed inconsistency in Tag::stylesheetLink/javascriptInclude w.r.t. local URLs (#1486)
   - Fixed bug in Phalcon\Queue\Beanstalk::read() (#1348, #1612)
   - Phalcon\Flash\Session::getMessages() incorrectly removed all messages (#1575)
   - Fixed bug in phalcon_fix_path() (#1601)
   - Added Phalcon\Mvc\Model\Row::toArray() method (#1506)
   - Added support for POINT type in MySQL (#1536)
   - Phalcon\Mvc\Model\Validator::getOption() returns NULL if the option does not exist (#1530)
   - Fixed parsing of annotations containing / (#1480)
   - Make sure that 'persistent' is resolved only when accessed for the first time (#1637)
   - Fix Phalcon\Session\Bag::remove() (#1637)
   - Bug fixes in beanstalkd protocol implementation
   - Phalcon\Paginator\Adapter\Model returns correct results even when page number is incorrect (#1654)
   - Bug fix: no arguments were passed to beforeMatch handler in Phalcon\Mvc\Router (#1556)
   - Phalcon\Logger\Adapter::setLogLevel() is honored by transactions (#1716)
   - Bug fixes in Phalcon\Db\Adapter\Pdo::describeColumns() (#1562)
   - Phalcon\Session\Adapter::__destruct() now calls session_write_close() (#1624)
   - Volt: fixed bug in email_filed() (#1723)
   - Fixed PHP Notices in Phalcon\Debug::onUncaughtException() (#1683)
   - Phalcon\Logger\Adapter::commit() clears the queue (#1748)
   - Constant-time string comparison in Phalcon\Security::checkHash() (#1755)
   - Fix phalcon_escape_multi() to generate valid UTF-8 (#1681)


author: Oleg Cherniy <oleg.cherniy@gmail.com> 1.3.1-0
changelog:
  - Update to last beta release
  1.3.1
   - Fixed segfault in Phalcon\Di\Service::resolve when string class does not exist (#2205)
   - Moved global zvals to RINIT/RSHUTDOWN to improve stability on Windows TS builds
   - Moved pre-allocated frames to RINIT/RSHUTDOWN to improve stability on Windows TS builds
   - Fixed segfault when replacing Phalcon\Session adapter by PHP userland adapter
   - Fixed zval invalid indirection in Phalcon\Security hash
   - Fixed segfault when passing an invalid number of arguments to Phalcon\Annotations\Reader::parseDocBlock
   - Private and Protected properties weren't unmangled in Phalcon\Annotations\Reader
   - First character of controller name was removed when isExactHandler flag is on
  1.3.0
   - Make the source code compatible with PHP 5.6-dev and PHP 5.7-dev (#1762)
   - Code cleanup: get rid of compiler warnings, dead code elimination, code deduplication, use static code analysers to eliminate possible bugs
     (#801, #802, #810, #825, #827, #838, #849, #942, #968, #1001, #1093, #1169, #1214, #1223, #1224, #1375, #1430, #1787, #1794, #1828)
   - Fixed various memory leaks (#469, #860, #910, #914, #916, #1031, #1067, #1249, #1273, #1291, #1309, #1345, #1455, #1470, #1700)
   - Fixed memory access violations / segmentation faults / etc (#469, #849, #851, #852, #858, #860, #861, #895, #911, #918, #927, #928, #1000, #1077, #1112, #1113, #1131, #1149, #1173,
      - Fixed PHP notices, warnings and other incompatibilities (#894, #1222, #1315, #1413, #1427, #1428, #1529, #1988, #1998)
   - Fixed inheritance chain for Phalcon\Forms\Exception, Phalcon\Loader\Exception, Phalcon\Http\Request\Exception (#1770)
   - Major source code optimizations (#1785, #1972, #2003)
   - Control Phalcon behavior via INI settings (#1796)
   - Security fixes:
     - Hardening fixes (#1044)
     - Interface validation (#1043, #1048)
     - Thorough data validation in __wakeup() (#1043, #1634, #1635)
     - Fixed XSS vulnerabilities (#1216, #1190)
     - Phalcon\Security::checkHash() allows to restrict the length of the password to avoid attacks like https://www.djangoproject.com/weblog/2013/sep/15/security/ (#1261)
     - Fixed crash while rendering element's label (#1210)
     - Prevent MongoDB Request Injection Attacks (#1265)
     - Do not allow to override superglobals in views (#1617)
   - Phalcon Kernel:
     - 32 and 64 bit hashes can be computed on the same CPU architecture (#817)
     - Reduced overall memory usage (#834, #891, #893)
     - Memory allocation optimizations (#912, #1220, #1987)
     - Faster internal array and string manipulation (#822, #823, #830, #833, #837, #890, #1972)
     - Camelize does not ignore the last character of a string anymore (#1436)
     - Fixed bug in phalcon_fix_path() (#1601)
     - Use native counterparts for memory_get_usage(), gettype(), json_encode(), json_decode(), session_XXX(), header(), headers_sent(), debug_backtrace(),
       lcfirst(), ob_XXX(), array_unshift(), array_values(), array_keys(), htmlentities() (#836, #847, #936, #945, #1099)
     - Hash funcrions tailored for object handlers (#842)
     - Optimization of calls to userland functions and methods (#843, #954)
     - Read/modify/update optimization on properties (#848)
     - Added support for self/parent/static scopes in static properties (#943)
     - Scope lookup optimizations (#948)
     - Do not restore memory frames from kernel functions (#960, #976)
     - Diagnostic messages when Phalcon is compiled in dev mode (#1009, #1054, #1097)
     - Return Value Optimization (#1046, #1047, #1075)
     - Fixed locale issue (#1095)
     - Added support for interned strings (PHP 5.4+)
     - Static property fetch/update optimization (#1293)
     - Fix misleading diagnostics on exception (#1297)
     - Use preallocated permanent zvals instead of null, true, false, 0 and 1 (#1302)
     - Bug fix in phalcon_fix_path() (#1591)
     - Persistent function cache for Phalcon methods (#1825)
     - Function call optimization (#1846)
     - Use Native Reflection API (#1957)
   - Phalcon\Acl:
     - Fixed broken ACL inheritance (#905)
     - Bug fix when ACL allowed access to forbidden resources (#1303)
     - Fixed bug with ACL * wildcard (#1409)
     - Fixed bug with numeric resources (#1513)
     - Phalcon\Acl\Adapter now implements Phalcon\Acl\AdapterInterface (#1852)
   - Phalcon\Annotations:
     - Fixed getProperty() bug in AnnotationsAdapter (#996)
     - Phalcon\Annotations optimizations (#1141)
     - Fixed parsing of annotations containing / (#1480)
     - Phalcon\Annotations\Adapter now implements Phalcon\Annotations\AdapterInterface (#1852)
     - Annotation parser optimization (#1957)
   - Phalcon\Assets:
     - Fixed bugs when minifier produced no output at all (#811, #821)
     - Fixed joining issue (#951)
     - Added support for UTF-8 characters in jsmin
     - Fixed chaining of CSS/JS filters (#1198)
     - Phalcon\Assets\Filters\CssMin and JsMin implement Phalcon\Assets\FilterInterface (#1539)
     - Added Phalcon\Assets\Collection::setTargetLocal() (#1532)
   - Phalcon\Cache:
     - Added Libmemcached cache backend (#913)
     - Added support for APCu 4.0.2+ (#1234)
     - Implemented Phalcon\Cache\Backend\Memory::queryKeys() (#1093)
     - Bug fixes in Phalcon\Cache\Backend\Xcache (#1406)
     - Phalcon\Cache\Frontend\Data optimizations (#1093)
     - Phalcon\Cache\Frontend\None optimizations (#1093)
     - Phalcon\Cache\Frontend\Base64 optimizations (#1093)
     - Phalcon\Cache\Frontend\Igbinary optimizations (#1093)
     - Phalcon\Cache\Frontend\Output optimizations (#1093)
     - Phalcon\Cache\Frontend\Json optimizations (#1093)
     - Phalcon\Cache\Backend optimizations (#1093)
     - Phalcon\Cache\Backend\Memory optimizations (#1093)
     - Phalcon\Cache\Backend\File optimizations (#1093)
     - Phalcon\Cache\Backend\Apc optimizations (#1093)
     - Phalcon\Cache\Backend\Xcache optimizations (#1093)
     - Phalcon\Cache\Backend\Memcache optimizations (#1093)
     - Phalcon\Cache\Backend\Mongo optimizations (#1093)
     - Phalcon\Cache\Backend\Libmemcached optimizations and bug fixes (#1093)
     - Added increment() and decrement() methods (#1374)
     - Added flush() method (#1352)
     - Phalcon\Cache\Backend now implements Phalcon\Cache\BackendInterface (#1852)
     - Ability to disable key tracking for Memcache/Libmemcached backends (#1550)
   - Phalcon\Config:
     - Faster Phalcon\Config implementation using object handlers (#837, #1277)
     - Phalcon\Config now support numeric properties as well (#837)
     - Implemented Phalcon\Config::offsetUnset() (#732)
     - Phalcon\Config\Adapter\Ini correctly handles empty sections and INI files without any sections (#829, #837)
     - Added Phalcon\Adapter\Config\Json class to read JSON configs (#844)
     - Phalcon\Config::merge now works with derived classes (#1024)
     - Dot-delimited directives in INI-files are now prsed correctly (#872)
     - Support for PHP arrays as config files (#1439)
   - Phalcon\Crypt:
     - Added support for various padding schemes (PKCS7, ANSI X.923, ISO 10126, ISO/IEC 7816-4, zero padding, space padding) to Phalcon\Crypt (#864, #887)
     - Reduced peak memory usage (#1237)
     - encryptBase64() and decryptBase64() can optionally use RFC 4648 flavor of BASE64 (#1353, #1919)
   - Phalcon\Db:
     - Added support for DECIMAL scale (#940)
     - Fixed invalid sequence names for PostgreSQL (#1022)
     - Added support for MySQL DOUBLE type (#1128)
     - Database dialects now support BOOLEAN data type (#816)
     - Added support for POINT type in MySQL (#1536)
     - Fixed issue with RawValue('default') on composite primary key (#1534)
     - Added support for AUTO_INCREMENT columns to addColumn() (MySQL, SQLite) and modifyColumn() (MySQL) (#1695)
     - Phalcon\Db\Dialect\Mysql::getColumnDefinition() now returns INT instead of INT(0) (#1695)
     - Added support for the following fetch modes from PDO: FETCH_LAZY, FETCH_BOUND, FETCH_COLUMN, FETCH_CLASS, FETCH_INTO, FETCH_FUNC, FETCH_NAMED, FETCH_KEY_PAIR (#1642)
     - Added support for the following fetch mode modifiers from PDO: FETCH_GROUP, FETCH_UNIQUE, FETCH_CLASSTYPE, FETCH_SERIALIZE, FETCH_PROPS_LATE (#1642)
     - Phalcon\Db optimizations (#1693)
     - Phalcon\Db\Adapter optimizations (#1693)
     - Phalcon\Db\Index optimizations (#1693)
     - Phalcon\Db\Profiler optimizations (#1693)
     - Phalcon\Db\Reference optimizations (#1693)
     - Phalcon\Db\Result\Pdo optimizations (#1693)
     - Phalcon\Db\Adapter now implements Phalcon\Db\AdapterInterface (#1852)
     - Phalcon\Db\Dialect now implements Phalcon\Db\DialectInterface (#1852)
   - Phalcon\Debug:
     - Added support for UTF-8 to \Phalcon\Debug (#1099)
     - Phalcon\Debug::uri now supports both http and https (#987)
     - Fixed array to string conversion notice (#1103)
     - Add support for xdebug.file_link_format (#1401)
   - Phalcon\DI:
     - Phalcon\Di optimizations (#1014) with workarounds for NuSphere DBG (#1714)
     - Added Phalcon\Di\Service::isResolved() method (#1242)
     - Make sure that 'persistent' is resolved only when accessed for the first time (#1637)
     - Faster DI implementation by using object handlers (#1473)
     - Changes to Phalcon\DiInterface (#2034)
       - removed setShared() method because it is a shorthand for set($name, $definition, true);
       - removed attempt() method because it is a shorthand for `has()` + `set()`
       - renamed setRaw() to setService() because getRaw() is actually getService() + $service->getDefinition()
       - setRaw() is now an alias for setService() but it will spit E_DEPRECATED
       - removed `getRaw()` because it is `getService()` + `$service->getDefinition()`
       - modified `setService($name, $raw_definition)` to `setService($raw_definition)` because service name can be retrieved from the definition
   - Phalcon\Dispatcher:
     - Dispatching parameters now can be modified in 'beforeExecuteRoute' events
     - 'beforeException' events can now handle exceptions occurred when executing actions (#140)
     - Added Phalcon\Dispatcher::getHandlerClass and Phalcon\Dispatcher::getActionMethod
     - Implemented afterInitialize event (#782)
     - Phalcon\Dispatcher optimizations (#782)
     - Added getPreviousControllerName(), getPreviousActionName() (#1462)
     - If an event handler throws an exception, call dispatch:beforeException and break the dispatch loop (#1763)
     - Phalcon\Dispatcher::_handleException() is invoked regardless whether the event manager is present (#1953)
   - Phalcon\Element:
     - Phalcon\Element::addFilter() incorrectly prepends NULL as the first element (#1019)
   - Phalcon\Escaper:
     - Fixed bugs in Phalcon\Escaper (#917)
     - Phalcon\Escaper optimizations (#1015)
     - Fix phalcon_escape_multi() to generate valid UTF-8 (#1681)
   - Phalcon\Events:
     - Added support for weak references (#663)
     - Bug fix in Phalcon\Events\manager::attach() (#1331, #1337)
   - Phalcon\Flash:
     - Phalcon\Flash\Session::getMessage('key') returns now an empty array if the key is not found (#908, #920)
     - Phalcon\Flash\Session::getMessages() incorrectly removed all messages (#1575)
     - Implemented Phalcon\Flash\Session::isset() (#1342)
   - Phalcon\Forms:
     - Phalcon\Forms\Element\* classes now implement Phalcon\Form\ElementInterface
     - Added support for HTML attributes to Phalcon\Forms\Form::label() (#1029)
     - Phalcon\Forms\Form::getMessages() does not generate a fatal error if the form is valid (#1349)
     - Improvements to Phalcon\Forms\Form::add() (#1386)
     - Added Phalcon\Forms\Element\Radio class (#1646)
     - Phalcon\Forms\Form::hasMessagesFor() returns boolean (#1764)
     - Iterators for Phalcon\Forms\Form implemented via Zend API (#1765)
     - Phalcon\Forms\Form::count() implemented via Zend API (#1765)
     - Phalcon\Forms\Form optimizations (#1765)
     - Phalcon\Forms\Element now implements Phalcon\Forms\ElementInterface (#1852)
     - Fixed Phalcon\Forms\Element\Select::addOption() (#1955)
   - Phalcon\Http:
     - Phalcon\Http\Cookie can be used without sessions (#875)
     - Phalcon\Http\Cookie does not ignore expire time (#897)
     - Phalcon\Http\Request fully supports file arrays (#884, #888)
     - Phalcon\Http\Request optimizations (#889)
     - Added getKey(), getError(), isUploadedFile() methods to Phalcon\Http\Request\File (#878, #888)
     - Fixed regression in \Phalcon\Http\Request::getRawBody() (#1091)
     - Bug fix in Phalcon\Http\Request::getQuery() (#1226)
     - Fixed broken Phalcon\Http\Response::setFileToSend() method (#831, #832)
     - Redirects use status descriptions from RFC 2616 (#1175)
     - Phalcon\Http\Response::setFileToSend() can now show the file in the browser instead of offering to download it (#853)
     - Added Phalcon\Http\Response\Headers::toArray() (#1008)
     - getJsonRawBody() may return an associative array (#1241)
     - Added getURI(), getBasicAuth(), getDigestAuth() methods to Phalcon\Http\Request (#1250)
     - Added getPut()/hasPut() methods to Phalcon\Http\Request (#680, #1403)
     - Implemented Phalcon\Http\Request\File::getRealType (#1442, #1444)
     - External URLs are now automatically detected by Phalcon\Http\Response::redirect() (#1182)
     - Fixed error in Phalcon\Http\Response\Headers::send() when no headers were set (#2047)
   - Phalcon\Image:
     - Added Phalcon\Image\Adapter, Phalcon\Image\Adapter\Gd, Phalcon\Image\Adapter\Imagick (#902, #1025, #1030, #1041, #1050, #1063, #1076, #1081, #1114, #1120, #1158, #1195, #1206, #1214, #1370)
   - Phalcon\Logger:
     - Added FirePHP Log Adapter and Formatter (#845, #1333, #1483)
     - Implemented Phalcon\Logger\Adapter::isTransaction() (#1238)
     - Fixed a bug preventing the EMERGENCY log type from being displayed correctly (#1498)
     - Added Phalcon\Logger\Adapter\File::getPath() (#1495, #1508)
     - Phalcon\Logger optimizations (#1716)
     - Phalcon\Logger\Adapter::setLogLevel() is honored by transactions (#1716)
     - Phalcon\Logger\Adapter::commit() now clears the queue (#1742)
     - Phalcon\Logger\Adapter now implements Phalcon\Logger\AdapterInterface (#1852)
     - Phalcon\Logger\Formatter now implements Phalcon\Logger\FormatterInterface (#1852)
     - Phalcon\Logger\Adapter and Phalcon\Logger\AdapterInterface are now PSR-3 compliant (#1873, #1888)
     - Added Phalcon\Logger\Adapter::critical() method (#1888)
     - For PHP 5.3.9+ when phalcon.register_psr3_classes php.ini option is set, Phalcon\Logger\Adapter implements Psr\Log\LoggerInterface (#1888)
     - When phalcon.register_psr3_classes php.ini option is set, Phalcon\Logger\Adapter and derived classes throw Psr\Log\InvalidArgumentException
       instead of Phalcon\Logger\Exception when the arguments are not valid (#1888)
   - Phalcon\Mvc:
     - Added support for route names in Phalcon\Mvc\Micro\Collection (#1868)
     - Phalcon\Mvc\Application::handle() now checks whether the class exists before include()'ing its file (#812, #818)
     - Phalcon\Mvc\Model\Criteria::fromInput() now sets _modelName (#866, #873)
     - Phalcon\Mvc\Model\Query\Builder may now use both integer and string placeholders (#701)
     - Mvc\Model\getMessages() is filterable now (#885)
     - Fixed hasManyToMany relation implementation (#938)
     - Fixed regular expression in \Phalcon\Mvc\Model\Validator\Email (#1243)
     - Phalcon\Mvc\Model::hasOne/hasMany/belongsTo/hasManyToMany/addBehavior() are now public methods (#1166)
     - Added Phalcon\Mvc\Model\Row::toArray() method (#1506)
     - Phalcon\Mvc\Model\Validator::getOption() returns NULL if the option does not exist (#1530)
     - Bug with a custom Events Manager in Phalcon\Mvc\Models (#1314)
     - Phalcon\Mvc\Model\Query\Builder::__construct() does not ignore joins anymore (#1327)
     - Fixed HAVING handling in Phalcon\Mvc\Model\Query\Builder (#1396)
     - Micro Collections return Phalcon\Mvc\Micro\CollectionInterface (#1130)
     - Phalcon\Mvc\Url::get() can append query params (#723, #877)
     - Regular Expression Optimization for Phalcon\Mvc\Router (#977)
     - PHQL: added placeholders support to LIMIT (#1023)
     - Added Phalcon\Mvc\Router::getDefautXXX() methods (#1087)
     - Allow HAVING without GROUP BY in query builder (#1115)
     - mvc/model/query.c optimizations (#1129, #1132)
     - Added support for array(limit, offset) as a 'limit' constructor key in Query Builder (#1208)
     - Added support for 'conditions' in Phalcon\Mvc\Model\Query\Builder::__construct() (#1236)
     - Added Phalcon\Mvc\View::isDisabled(), Phalcon\Mvc\View::getRenderLevel(), Phalcon\Mvc\View::getDisabledLevels() (#907, #1320)
     - Added Phalcon\Mvc\View::getCurrentRenderLevel() (#907, #1326)
     - Bug fix in Phalcon\Mvc\Model\Resultset\Simple::toArray() (#1377)
     - Bug fixes in Volt compiler (#1387)
     - Volt compiler optimizations (#1729)
     - Phalcon\Mvc\Model\Query\Builder optimizations (#1414)
     - Allow to set dirs without trailing slashes in Phalcon\Mvc\View (#406, #1440)
     - Phalcon\Mvc\Model\Validator::getOption() returns null if option does not exists (#1531)
     - Added Phalcon\Mvc\Model::selectWriteConnection() (#1519)
     - Added Phalcon\Mvc\Router\Group::convert()/getConverters() (#1555, #1572)
     - Added Phalcon\Mvc\Router\Route::getGroup() (#1682)
     - Added Phalcon\Mvc\Router\Group::getName() and setName() (#1682)
     - Faster Phalcon\Mvc\Model\Row (#1606)
     - Optimized Phalcon\Mvc\Router\Group (#1682)
     - Bug fix: no arguments were passed to beforeMatch handler in Phalcon\Mvc\Router (#1556)
     - Added diagnostics when a validator returns false but does not call appendMessage() (#1664)
     - Fixed handling of numeric namespaces/modules/controllers/actions (#1688)
     - Added Phalcon\Mvc\View::exists() and Phalcon\Mvc\View(\Simple)::getRegisteredEngines() (#1707)
     - Volt: fixed bug in email_filed() (#1723)
     - Fixed deprecation warnings in Phalcon\Mvc\Collection::save() and Phalcon\Mvc\Collection::delete() (#1783)
     - Phalcon\Mvc\Model\Behavior now implements Phalcon\Mvc\Model\BehaviorInterface (#1852)
     - Phalcon\Mvc\Model\Metadata now implements Phalcon\Mvc\Model\MetadataInterface (#1852)
     - Phalcon\Mvc\Model\Valdator now implements Phalcon\Mvc\Model\ValidatorInterface (#1852)
     - Phalcon\Mvc\View\Engine now implements Phalcon\Mvc\View\EngineInterface (#1852)
     - Phalcon\Mvc\Model\Validator::getOption()/getOptions()/isSetOption() methods are now public (#1904)
     - Phalcon\Mvc\Model::findFirst() now works when phqlLiterals is false (#886)
     - Fixed notices when phalcon.orm.column_renaming is 0 (#1801)
     - Implemented reset() for metadata adapters other than memory (#1934)
     - Relaxed the requirement for the route to start with a slash (#1938)
     - Phalcon\Mvc\Router\Group: merge slashes when the route prefix ends and the route pattern starts with a slash (#1938)
     - Phalcon\Mvc\Model\Criteria::fromInput() now works with column maps (#1903)
   - Phalcon\Paginator:
     - Phalcon\Paginator\Adapter\Model returns correct results even when page number is incorrect (#1654)
     - Optimized Phalcon\Paginator\Adapter\QueryBuilder (#1632)
     - setCurrentPage() returns $this for all adapters (#1633)
     - Optimized Phalcon\Paginator\Adapter\NativeArray (#1653)
   - Phalcon\Queue:
     - Fixed bug in Phalcon\Queue\Beanstalk::read() (#1348, #1612)
     - Bug fixes in beanstalkd protocol implementation (#1650)
     - Optimizations (#1621)
     - Added peekDelayed() and peekburied() to Phalcon\Queue\Beanstalk (#1650)
     - Added kick(), bury(), release(), touch() to Phalcon\Queue\Beanstalk\Job (#1650)
   - Phalcon\Registry (#1209, #1935)
   - Phalcon\Security:
     - Phalcon\Security\Exception inherits from Phalcon\Exception, not from \Phalcon\DI\Exception
     - Added Phalcon\Security::computeHmac() (#1347)
     - Bug fixes (#1347)
     - Constant-time string comparison in Phalcon\Security::checkHash() to prevent timing attacks (#1755)
     - Phalcon\Security::checkHash() now correctly handles non-bcrypt hashes (#1912)
     - Support all hashes supported by crypt() in Phalcon\Security::hash() (#1971)
     - Phalcon\Security::getSaltBytes() dies not require OpenSSL anymore (#1971)
   - Phalcon\Session:
     - Fix Phalcon\Session\Bag::remove() (#1637)
     - Add remove() to Phalcon\Session\BagInterface (#1917)
     - Phalcon\Session\Adapter::get() may optionally remove the data from session (#1358)
     - Phalcon\Session\Adapter optimizations (#1624)
     - Phalcon\Session\Adapter::__destruct() now calls session_write_close() (#1624)
     - Phalcon\Session\AdapterInterface is compatible with SessionHandlerInterface (#1108)
     - Phalcon\Session\Adapter now implements Phalcon\Session\AdapterInterface (#1852)
     - Phalcon\Session\Bag::__get() now returns by reference (unlike get()) (#1895)
     - Phalcon\Session\Bag implements ArrayAccess, Countable, IteratorAggregate interfaces (#1917)
     - Phalcon\Session\Adapter implements ArrayAccess, Countable, IteratorAggregate interfaces (#1917)
     - Optimized Phalcon\Session\Adapter using object handlers (#1917)
   - Phalcon\Tag:
     - Fixed bugs (#903)
     - Fixed radio button generation (#947)
     - Fixed inconsistent behavior of setAutoescape() (#1263)
     - Added missing HTML5 input types (#824, #1323)
     - Added Phalcon\Tag::setTitleSeparator() (#1365)
     - Added support for <optgroup> (#1422)
     - Fixed inconsistency in Tag::stylesheetLink/javascriptInclude w.r.t. local URLs (#1486)
   - Phalcon\Translate:
     - Optimized Phalcon\Translate\Adapter, Phalcon\Translate\Adapter\NativeArray by using object handlers (#1668)
     - Phalcon\Translate\Adapter\NativeArray::query() now replaces placeholders even if the string is not found in the language content (#2044)
   - Phalcon\Validation:
     - Added support for error codes (#1171)
     - Bug fixes (#1399)
     - Optimized Phalcon\Validation\Message\Group by using native iterators (#1657)
     - Optimized Phalcon\Validation\Message\Group by using object handlers (#1765)
     - Phalcon\Validation\Validator now implements Phalcon\Validation\ValidatorInterface (#1852)
   - Psr\Log:
     - when phalcon.register_psr3_classes php.ini option is set, Psr\Log\LoggerAwareInterface, Psr\Log\LoggerInterface,
       Psr\Log\AbstractLogger, Psr\Log\InvalidArgumentException, Psr\Log\LogLevel, Psr\Log\NullLogger,
       Psr\Log\LoggerAwareTrait (PHP 5.4+), Psr\Log\LoggerTrait (PHP 5.4+) are registered as internal interfaces/classes/traits
       by Phalcon (#1888)
   - Unit tests:
     - Travis CI imporvements (#819, #846, #949)
     - Use markTestSkipped() instead of echo (#862)
     - Do not run APC tests under CLI when apc.enable_cli is 0 (#1449)
     - Added new tests (#865, #1256, #1260, #1339, #1560, #1563)
     - Skip database tests when the DBMS is not available (#970)
     - Support for optional RVO (#1147)
     - Added support for test coverage visualization (#1307, #1361)
     - Bug fixes in tests (#1313, #1334, #1335, #1449, #1467)
   - Documentation bug fixes (#1069, #1070, #1072, #1145, #1146, #1205, #1372, #1397, #1521, #1523, #1586, lots of them)
   - Refactored, improved and optimized build script (#1218)
   - Other bug fixes (#1051, #1131, #1040, #1275, #1392, #1396, #1399, #1425, #1426...)


author: Jason Litka <http://www.jasonlitka.com/> 1.2.0_0.1
changelog:
  - Initial build
  - Has Cache, Optimizer, and Coverager modules built but only the first two
    are enabled


author: Matthaus Owens <matthaus@puppetlabs.com>
changelog:
  - Remove for loop on examples/ code which no longer exists. Add --no-run-if-empty to xargs invocations.


author: Matthias Saou <http://freshrpms.net/> 3.7.0-0.1.beta1
changelog:
  - Update to 3.7.0 beta1 (aka 3.7.b1).
  - Disable (empty) debuginfo package.
  - Add empty %build section.
  - Fix macros inside the %changelog.


author: Moses Mendoza <msoes@puppetlabs.com> - 0.6.2-1
changelog:
  - Package rgen as a library. The tarball is created from a `gem unpack`
  - of rubygem-rgen and tarring up the resulting contents.


author: Christof Damian <christof@damian.net> - 0.9.9-3
changelog:
  - change default listen address to localhost ( bug 566792 )
  - add ghost for files in /var/run/ ( bug 656694 )


author: Christof Damian <christof@damian.net> - 2.0.7-1
changelog:
  - upstream 2.0.7
  - use tmpfiles.d to create pid directory
  - move default log file location to /var/log/sphinx
  - use systemd macros BZ 850323


