summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/changelog.rst
diff options
context:
space:
mode:
Diffstat (limited to 'user_guide_src/source/changelog.rst')
-rw-r--r--user_guide_src/source/changelog.rst44
1 files changed, 29 insertions, 15 deletions
diff --git a/user_guide_src/source/changelog.rst b/user_guide_src/source/changelog.rst
index 0e4930289..42ef52c52 100644
--- a/user_guide_src/source/changelog.rst
+++ b/user_guide_src/source/changelog.rst
@@ -9,16 +9,11 @@ Release Date: Not Released
- License
- - CodeIgniter has been relicensed with the Open Software License (3.0), eliminating its old proprietary licensing.
-
- - All system files are licensed with OSL 3.0.
- - Config, error, and sample files shipped in the application folder are
- licensed with the Academic Free License (3.0) to allow you to retain
- all licensing authority over your own application code.
+ - CodeIgniter has been relicensed with the `MIT License <http://opensource.org/licenses/MIT>`_, eliminating its old proprietary licensing.
- General Changes
- - PHP 5.1.6 is no longer supported. CodeIgniter now requires PHP 5.2.4.
+ - PHP 5.1.6 is no longer supported. CodeIgniter now requires PHP 5.2.4 and recommends PHP 5.4+ or newer to be used.
- Changed filenaming convention (class file names now must be Ucfirst and everything else in lowercase).
- Changed the default database driver to 'mysqli' (the old 'mysql' driver is DEPRECATED).
- ``$_SERVER['CI_ENV']`` can now be set to control the ``ENVIRONMENT`` constant.
@@ -47,9 +42,9 @@ Release Date: Not Released
Only entries in ``$autoload['libraries']`` are auto-loaded now.
- Removed previously deprecated EXT constant.
- Updated all classes to be written in PHP 5 style, with visibility declarations and no ``var`` usage for properties.
- - Moved error templates to *application/views/errors/*.
+ - Added an Exception handler.
+ - Moved error templates to *application/views/errors/* and made the path configurable via ``$config['error_views_path']``.
- Added support non-HTML error templates for CLI applications.
- - Made error templates path configurable using ``$config['error_views_path']``.
- Moved the Log class to *application/core/*
- Global config files are loaded first, then environment ones. Environment config keys overwrite base ones, allowing to only set the keys we want changed per environment.
- Changed detection of ``$view_folder`` so that if it's not found in the current path, it will now also be searched for under the application folder.
@@ -62,6 +57,7 @@ Release Date: Not Released
- Added support for changing the file extension of log files using ``$config['log_file_extension']``.
- Added support for turning newline standardization on/off via ``$config['standardize_newlines']`` and set it to FALSE by default.
- Added configuration setting ``$config['composer_autoload']`` to enable loading of a `Composer <https://getcomposer.org/>`_ auto-loader.
+ - Removed the automatic conversion of 'programmatic characters' to HTML entities from the :doc:`URI Library <libraries/uri>`.
- Helpers
@@ -116,6 +112,7 @@ Release Date: Not Released
- :doc:`Smiley Helper <helpers/smiley_helper>` changes include:
+ - Deprecated the whole helper as too specific for CodeIgniter.
- Removed previously deprecated function ``js_insert_smiley()``.
- Changed application and environment config files to be loaded in a cascade-like manner.
- The smileys array is now cached and loaded only once.
@@ -138,6 +135,8 @@ Release Date: Not Released
- Added *colors* configuration to allow customization for the *background*, *border*, *text* and *grid* colors.
- Added *filename* to the returned array elements.
- Updated to use `imagepng()` in case that `imagejpeg()` isn't available.
+ - Added **font_size** option to allow customization of font size.
+ - Added **img_id** option to set id attribute of captcha image.
- :doc:`Text Helper <helpers/text_helper>` changes include:
@@ -173,6 +172,7 @@ Release Date: Not Released
- Added Interbase/Firebird database support via the *ibase* driver.
- Added ODBC support for ``create_database()``, ``drop_database()`` and ``drop_table()`` in :doc:`Database Forge <database/forge>`.
- Added **save_queries** configuration setting to *application/config/database.php* (defaults to ``TRUE``).
+ - Added support to binding arrays as ``IN()`` sets in ``query()``.
- :doc:`Query Builder <database/query_builder>` changes include:
@@ -188,6 +188,7 @@ Release Date: Not Released
- Changed ``offset()`` to ignore empty values instead of always casting to integer.
- Methods ``insert_batch()`` and ``update_batch()`` now return an integer representing the number of rows affected by them.
- Methods ``where()``, ``or_where()``, ``having()`` and ``or_having()`` now convert trailing ``=`` and ``<>``, ``!=`` SQL operators to ``IS NULL`` and ``IS NOT NULL`` respectively when the supplied comparison value is ``NULL``.
+ - Added method chaining support to ``reset_query()``, ``start_cache()``, ``stop_cache()`` and ``flush_cache()``.
- :doc:`Database Results <database/results>` changes include:
@@ -197,9 +198,10 @@ Release Date: Not Released
- Improved support for the MySQLi driver, including:
- - OOP style of the PHP extension is now used, instead of the procedural aliases.
+ - OOP style usage of the PHP extension is now used, instead of the procedural aliases.
- Server version checking is now done via ``mysqli::$server_info`` instead of running an SQL query.
- Added persistent connections support for PHP >= 5.3.
+ - Added support for configuring socket pipe connections.
- Added support for ``backup()`` in :doc:`Database Utilities <database/utilities>`.
- Changed methods ``trans_begin()``, ``trans_commit()`` and ``trans_rollback()`` to use the PHP API instead of sending queries.
@@ -258,6 +260,7 @@ Release Date: Not Released
- Added support for passing a custom database object to the loader.
- Added support for passing custom table attributes (such as ``ENGINE`` for MySQL) to ``create_table()``.
- Added support for usage of the *FIRST* clause in ``add_column()`` for MySQL and CUBRID.
+ - Added partial support for field comments (MySQL, PostgreSQL, Oracle).
- Deprecated ``add_column()``'s third method. *AFTER* clause should now be added to the field definition array instead.
- Overall improved support for all of the drivers.
@@ -318,6 +321,7 @@ Release Date: Not Released
- :doc:`Cart Library <libraries/cart>` changes include:
+ - Deprecated the library as too specific for CodeIgniter.
- Added method ``remove()`` to remove a cart item, updating with quantity of 0 seemed like a hack but has remained to retain compatibility.
- Added method ``get_item()`` to enable retrieving data for a single cart item.
- Added unicode support for product names.
@@ -422,7 +426,11 @@ Release Date: Not Released
- Added method chaining support.
- Added support for setting table class defaults in a config file.
- - :doc:`Zip Library <libraries/zip>` method ``read_file()`` can now also alter the original file path/name while adding files to an archive.
+ - :doc:`Zip Library <libraries/zip>` changes include:
+
+ - Method ``read_file()`` can now also alter the original file path/name while adding files to an archive.
+ - Added support for changing the compression level.
+
- :doc:`Trackback Library <libraries/trackback>` method ``receive()`` will now utilize ``iconv()`` if it is available but ``mb_convert_encoding()`` is not.
- Core
@@ -441,6 +449,7 @@ Release Date: Not Released
- Added conditional PCRE UTF-8 support to the "invalid URI characters" check and removed the ``preg_quote()`` call from it to allow more flexibility.
- Renamed method ``_filter_uri()`` to ``filter_uri()``.
+ - Changed method ``filter_uri()`` to accept by reference and removed its return value.
- Changed private methods to protected so that MY_URI can override them.
- Renamed internal method ``_parse_cli_args()`` to ``_parse_argv()``.
- Renamed internal method ``_detect_uri()`` to ``_parse_request_uri()``.
@@ -475,6 +484,7 @@ Release Date: Not Released
- Changed default value of the ``$xss_clean`` parameter to NULL for all methods that utilize it, the default value is now determined by the ``$config['global_xss_filtering']`` setting.
- Added method ``post_get()`` and changed ``get_post()`` to search in GET data first. Both methods' names now properly match their GET/POST data search priorities.
- Changed method ``_fetch_from_array()`` to parse array notation in field name.
+ - Changed method ``_fetch_from_array()`` to allow retrieving multiple fields at once.
- Added an option for ``_clean_input_keys()`` to return FALSE instead of terminating the whole script.
- Deprecated the ``is_cli_request()`` method, it is now an alias for the new :func:`is_cli()` common function.
- Added an ``$xss_clean`` parameter to method ``user_agent()`` and removed the ``$user_agent`` property.
@@ -484,7 +494,8 @@ Release Date: Not Released
- Added function :func:`get_mimes()` to return the *application/config/mimes.php* array.
- Added support for HTTP code 303 ("See Other") in :func:`set_status_header()`.
- Removed redundant conditional to determine HTTP server protocol in :func:`set_status_header()`.
- - Changed ``_exception_handler()`` to respect php.ini *display_errors* setting.
+ - Renamed ``_exception_handler()`` to ``_error_handler()`` and replaced it with a real exception handler.
+ - Changed ``_error_handler()`` to respect php.ini *display_errors* setting.
- Added function :func:`is_https()` to check if a secure connection is used.
- Added function :func:`is_cli()` to replace the ``CI_Input::is_cli_request()`` method.
- Added function :func:`function_usable()` to work around a bug in `Suhosin <http://www.hardened-php.net/suhosin/>`.
@@ -499,6 +510,7 @@ Release Date: Not Released
- Added a second argument to method ``set_content_type()`` that allows setting the document charset as well.
- Added methods ``get_content_type()`` and ``get_header()``.
- Added method ``delete_cache()``.
+ - Added configuration option ``$config['cache_query_string']`` to enable taking the query string into account when caching.
- Changed caching behavior to compress the output before storing it, if ``$config['compress_output']`` is enabled.
- :doc:`Config Library <libraries/config>` changes include:
@@ -507,6 +519,7 @@ Release Date: Not Released
- Removed internal method ``_assign_to_config()`` and moved its implementation to *CodeIgniter.php* instead.
- ``item()`` now returns NULL instead of FALSE when the required config item doesn't exist.
- Added an optional second parameter to both ``base_url()`` and ``site_url()`` that allows enforcing of a protocol different than the one in the *base_url* configuration setting.
+ - Added HTTP "Host" header character validation to prevent cache poisoning attacks when ``base_url`` auto-detection is used.
- :doc:`Security Library <libraries/security>` changes include:
@@ -520,6 +533,7 @@ Release Date: Not Released
- :doc:`Language Library <libraries/language>` changes include:
- Changed method ``load()`` to filter the language name with ``ctype_alpha()``.
+ - Changed method ``load()`` to also accept an array of language files.
- Added an optional second parameter to method ``line()`` to disable error logging for line keys that were not found.
- Language files are now loaded in a cascading style with the one in **system/** always loaded and overriden afterwards, if another one is found.
@@ -550,7 +564,7 @@ Release Date: Not Released
- Removed ``CI_CORE`` boolean constant from *CodeIgniter.php* (no longer Reactor and Core versions).
- Added support for HTTP-Only cookies with new config option *cookie_httponly* (default FALSE).
- ``$config['time_reference']`` now supports all timezone strings supported by PHP.
- - Fatal PHP errors are now also passed to ``_exception_handler()``, so they can be logged.
+ - Fatal PHP errors are now also passed to ``_error_handler()``, so they can be logged.
Bug fixes for 3.0
@@ -750,7 +764,7 @@ Bug fixes for 3.0
- Partially fixed a bug (#261) - UTF-8 class method ``clean_string()`` generating log messages and/or not producing the desired result due to an upstream bug in iconv.
- Fixed a bug where ``CI_Xmlrpcs::parseRequest()`` could fail if ``$HTTP_RAW_POST_DATA`` is not populated.
- Fixed a bug in :doc:`Zip Library <libraries/zip>` internal method ``_get_mod_time()`` where it was not parsing result returned by ``filemtime()``.
-- Fixed a bug (#3161) - :doc:`Cache Library <libraries/cache>` methods `increment()`, `decrement()` didn't auto-create non-existent items when using redis and/or file storage.
+- Fixed a bug (#3161) - :doc:`Cache Library <libraries/caching>` methods `increment()`, `decrement()` didn't auto-create non-existent items when using redis and/or file storage.
- Fixed a bug (#3189) - :doc:`Parser Library <libraries/parser>` used double replacement on ``key->value`` pairs, exposing a potential template injection vulnerability.
Version 2.2.0
@@ -2595,7 +2609,7 @@ Release Date: October 30, 2006
the Date Helper.
- Added :doc:`$query->free_result() <./database/results>` to database
class.
-- Added :doc:`$query->list_fields() <./database/fields>` function to
+- Added :doc:`$query->list_fields() <./database/metadata>` function to
database class
- Added :doc:`$this->db->platform() <./database/helpers>` function
- Added new :doc:`File Helper <./helpers/file_helper>`: