2014-01-24 23:53:09 +00:00
|
|
|
.. _changelog:
|
2010-12-09 04:09:00 +00:00
|
|
|
|
2011-08-22 23:22:53 +00:00
|
|
|
ChangeLog
|
|
|
|
|
==============================================================================
|
2011-02-06 01:41:19 +00:00
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
All bugs/feature details can be found at:
|
2011-02-06 01:41:19 +00:00
|
|
|
|
2014-01-29 21:37:04 +00:00
|
|
|
https://github.com/datafolklabs/cement/issues/XXXXX
|
2010-12-09 03:40:11 +00:00
|
|
|
|
|
|
|
|
|
2011-08-22 23:22:53 +00:00
|
|
|
Where XXXXX is the 'Issue #' referenced below. Additionally, this change log
|
|
|
|
|
is available online at:
|
2010-12-09 03:40:11 +00:00
|
|
|
|
2016-02-25 04:52:28 +00:00
|
|
|
http://builtoncement.com/2.8/changes/
|
2010-12-09 03:40:11 +00:00
|
|
|
|
|
|
|
|
|
2014-01-24 23:53:09 +00:00
|
|
|
See the :ref:`upgrading` section for more information related to
|
|
|
|
|
any incompatible changes, and how to update your application to fix them.
|
2015-05-13 15:09:35 +00:00
|
|
|
Also check out the :ref:`whats_new` section for details on new features.
|
2014-01-24 23:53:09 +00:00
|
|
|
|
2014-09-17 20:54:53 +00:00
|
|
|
|
2024-02-09 15:06:45 +00:00
|
|
|
2.10.13 - DEVELOPMENT
|
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
|
|
|
|
* :issue:`672` - Fix 2.10.x for Python 3.12
|
|
|
|
|
|
|
|
|
|
|
2018-04-28 21:42:17 +00:00
|
|
|
2.10.6-12 - Sat Apr 28, 2018
|
2018-04-28 19:21:41 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2018-04-28 19:38:37 +00:00
|
|
|
- Bumping version(s) trying to update PyPi Description to Markdown
|
2018-04-28 19:21:41 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
2.10.4 - Fri Apr 13, 2018
|
2016-11-23 16:47:14 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
|
|
|
|
* :issue:`401` - Can't get user in daemon extension
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`397` - Removes deprecated `warn` from ILog validator, in-favor
|
2016-11-23 16:47:14 +00:00
|
|
|
of `warning`
|
2016-11-29 16:56:13 +00:00
|
|
|
* :issue:`401` - Can't get user in daemon extension
|
|
|
|
|
* :issue:`415` - FrameworkError when reusing CementApp object
|
|
|
|
|
|
|
|
|
|
Features:
|
|
|
|
|
|
|
|
|
|
* None
|
|
|
|
|
|
|
|
|
|
Refactoring:
|
|
|
|
|
|
|
|
|
|
* None
|
|
|
|
|
|
|
|
|
|
Incompatible:
|
|
|
|
|
|
|
|
|
|
* None
|
|
|
|
|
|
|
|
|
|
Deprecation:
|
|
|
|
|
|
|
|
|
|
* None
|
2016-11-23 16:47:14 +00:00
|
|
|
|
|
|
|
|
|
2016-07-14 20:50:35 +00:00
|
|
|
2.10.2 - Thu July 14, 2016
|
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bumping version due to issue with uploading to PyPi.
|
|
|
|
|
|
|
|
|
|
|
2016-07-14 20:12:34 +00:00
|
|
|
2.10.0 - Thu July 14, 2016
|
2016-02-25 07:11:08 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`363` - CementTestCase does not delete temporary
|
2016-07-07 04:24:17 +00:00
|
|
|
files/directories
|
2016-02-26 21:44:25 +00:00
|
|
|
* :issue:`346` - AttributeError: 'module' object has no attribute 'SIGHUP'
|
|
|
|
|
on Windows
|
2016-07-12 18:04:06 +00:00
|
|
|
* :issue:`352` - ``CementApp.extend()`` breaks on ``CementApp.reload()``
|
|
|
|
|
* :issue:`366` - Output handler override options dissappear
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`385` - JsonOutputHandler/YamlOutputHandler/MustacheOutputHandler
|
2016-07-12 18:04:06 +00:00
|
|
|
Do not pass keyword args down to backend render functions
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`393` - ``CementApp.Meta.hooks`` ignored for hooks defined by
|
2016-07-13 20:46:48 +00:00
|
|
|
extensions
|
2016-02-25 07:11:08 +00:00
|
|
|
|
|
|
|
|
Features:
|
|
|
|
|
|
2016-07-12 18:04:06 +00:00
|
|
|
* :issue:`350` - Support for plugin directories
|
2016-07-13 23:26:05 +00:00
|
|
|
* :issue:`370` - Handlebars templating support
|
2016-07-12 18:04:06 +00:00
|
|
|
* :pr:`371` - Jinja2 templating support
|
|
|
|
|
* :issue:`373` - Switch over to using Flake8 for PEP8 and style compliance
|
|
|
|
|
* :pr:`375` - Redis cache handler support
|
|
|
|
|
* :issue:`379` - Support for alternative config file extensions
|
2016-07-12 21:49:22 +00:00
|
|
|
* :issue:`380` - Support for Cython/Compiled Plugins
|
2016-07-12 18:04:06 +00:00
|
|
|
* :issue:`389` - ConfigObj support for Python 3
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`394` - Watchdog extension for cross-platform filesystem event
|
2016-07-13 18:19:09 +00:00
|
|
|
monitoring
|
2016-07-14 19:47:38 +00:00
|
|
|
* :issue:`395` - Ability to pass metadata keyword arguments to handlers
|
|
|
|
|
via ``CementApp.Meta.meta_defaults``.
|
2016-02-25 07:11:08 +00:00
|
|
|
|
|
|
|
|
Refactoring;
|
|
|
|
|
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`386` - Partially deprecated use of ``imp`` in favor of
|
2016-07-12 21:29:48 +00:00
|
|
|
``importlib`` on Python >= 3.1
|
2016-07-13 11:33:25 +00:00
|
|
|
* :issue:`390` - ArgparseArgumentHandler should store unknown arguments
|
2016-02-25 07:11:08 +00:00
|
|
|
|
|
|
|
|
Incompatible:
|
|
|
|
|
|
2016-07-06 22:31:08 +00:00
|
|
|
* None
|
2016-02-25 07:11:08 +00:00
|
|
|
|
2016-07-06 22:31:08 +00:00
|
|
|
Deprecation:
|
2016-07-01 21:18:52 +00:00
|
|
|
|
2016-07-07 07:33:18 +00:00
|
|
|
* :issue:`365` - Deprecated ``LoggingLogHandler.warn()``
|
2016-07-06 20:05:36 +00:00
|
|
|
* :issue:`372` - Deprecated Explicit Python 3.2 Support
|
2016-07-07 07:33:18 +00:00
|
|
|
* :issue:`376` - Deprecated ``cement.core.interface.list()``
|
2016-07-01 21:18:52 +00:00
|
|
|
|
2016-02-25 07:11:08 +00:00
|
|
|
|
2016-02-25 04:52:28 +00:00
|
|
|
2.8.0 - Wed Feb 24, 2016
|
2014-01-30 01:07:28 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2015-06-17 23:57:06 +00:00
|
|
|
Bugs:
|
|
|
|
|
|
2016-02-09 02:59:39 +00:00
|
|
|
* :issue:`310` - Resolved issue where console/file logs had duplicate
|
|
|
|
|
entries under certain circumstances.
|
2015-06-17 23:57:06 +00:00
|
|
|
* :issue:`314` - Resolved inconsistent behavor in ``colorlog`` extension.
|
|
|
|
|
* :issue:`316` - Running Nose tests with ``-s`` option causes traceback
|
2015-06-23 17:50:41 +00:00
|
|
|
* :issue:`317` - Calling ``CementApp.run()`` should return results from
|
2015-06-17 23:57:06 +00:00
|
|
|
``Controller._dispatch()``
|
2015-06-22 18:19:05 +00:00
|
|
|
* :issue:`320` - Partials not rendering with Mustache templates
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`325` - Wrap Utility Doesn't Support Unicode
|
2015-10-05 18:21:12 +00:00
|
|
|
* :issue:`328` - Post Run Hook Not Executing
|
2015-10-05 18:11:52 +00:00
|
|
|
* :issue:`331` - KeyError: 'USER' When Running Nose Tests
|
2016-02-22 23:39:19 +00:00
|
|
|
* :issue:`338` - Support non-ascii encoding for email subject and body
|
2015-06-17 23:57:06 +00:00
|
|
|
|
|
|
|
|
Features:
|
|
|
|
|
|
|
|
|
|
* :issue:`205` - Added new ``ArgparseController`` and ``expose`` decorator
|
|
|
|
|
in ``ext_argparse`` to eventually replace ``CementBaseController``.
|
2015-06-23 05:51:22 +00:00
|
|
|
* :issue:`299` - Added Argcomplete Framework Extension
|
2015-10-05 21:34:07 +00:00
|
|
|
* :issue:`322` - Added Tabulate Framework Extension (tabulatized output)
|
2016-02-09 06:13:12 +00:00
|
|
|
* :issue:`336` - Added Support for ``CementApp.reload()`` (SIGHUP)
|
|
|
|
|
* :issue:`337` - Added ``app.run_forever()`` alternative run method.
|
2016-02-22 21:14:55 +00:00
|
|
|
* :issue:`342` - Added Alarm/Timeout Support
|
2016-02-25 04:21:39 +00:00
|
|
|
* :issue:`343` - Memcached Extension/Pylibmc Now Supports Python 3
|
2016-02-22 23:39:19 +00:00
|
|
|
|
2015-06-17 23:57:06 +00:00
|
|
|
Refactoring:
|
2015-06-12 19:13:45 +00:00
|
|
|
|
2016-02-08 22:16:17 +00:00
|
|
|
* :issue:`311` - Refactor Hooks/Handlers into CementApp
|
2015-06-17 23:57:06 +00:00
|
|
|
* :issue:`319` - Use ``os.devnull`` instead of internal ``NullOut`` hack.
|
2018-04-28 19:21:41 +00:00
|
|
|
|
2015-06-20 04:46:40 +00:00
|
|
|
Incompatible:
|
|
|
|
|
|
2016-02-08 22:16:17 +00:00
|
|
|
* :issue:`311` - Hook ``signal`` now requires ``app`` argument.
|
2015-06-20 04:46:40 +00:00
|
|
|
* :issue:`313` - Default ``Cement.Meta.exit_on_close`` to ``False``.
|
2018-04-28 19:21:41 +00:00
|
|
|
Calls to ``sys.exit()`` should be explicit by the app developer, and
|
2016-02-08 22:16:17 +00:00
|
|
|
not implied by the framework.
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`332` - Output Handler Interface Must Support Keyword Arguments
|
|
|
|
|
|
2015-05-15 01:30:05 +00:00
|
|
|
|
|
|
|
|
2.6.0 - Thu May 14, 2015
|
|
|
|
|
------------------------------------------------------------------------------
|
2014-09-17 20:53:06 +00:00
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`294` - Added work-around for scenario where an app wants to
|
|
|
|
|
support arbitrary positional argument with a value of ``default``.
|
2015-05-06 19:53:50 +00:00
|
|
|
By default, this will attempt to explicitly call the ``default`` command
|
|
|
|
|
rather than using ``default`` as the argument. This fix adds
|
|
|
|
|
``CementBaseController.Meta.default_func`` allowing the developer to
|
2015-05-12 19:46:01 +00:00
|
|
|
override the name of the default function that is called if no matching
|
2015-05-06 19:53:50 +00:00
|
|
|
sub-command is passed.
|
2014-09-17 20:53:06 +00:00
|
|
|
|
|
|
|
|
Features:
|
|
|
|
|
|
2015-05-06 05:49:08 +00:00
|
|
|
* :issue:`197` - Added support for colorized logging.
|
2015-05-12 19:46:01 +00:00
|
|
|
* :issue:`281` - Added support for Python `with` statement.
|
2015-05-06 21:45:39 +00:00
|
|
|
* :issue:`282` - Added support to define/register hooks and handlers via
|
|
|
|
|
``CementApp.Meta``.
|
2015-05-06 01:23:11 +00:00
|
|
|
* :issue:`290` - Added ability to disable Cement framework logging via
|
|
|
|
|
``CementApp.Meta.framework_logging = False``.
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`297` - Added **experimental** support for reloading
|
2015-05-05 03:55:27 +00:00
|
|
|
configurations anytime config files and/or plugin config files are
|
|
|
|
|
modified. Optional extension `ext_reload_config`.
|
2014-09-17 20:53:06 +00:00
|
|
|
|
2015-05-12 19:46:01 +00:00
|
|
|
Incompatible:
|
|
|
|
|
|
2018-04-28 19:21:41 +00:00
|
|
|
* :issue:`308` - No longer require explicit
|
|
|
|
|
``CementApp.Meta.base_controller`` if a controller with the label of
|
2015-05-12 19:46:01 +00:00
|
|
|
``base`` is registered. This is potentially backward in-compatible in
|
2018-04-28 19:21:41 +00:00
|
|
|
that previously ``CementBaseController.Meta.label`` defaulted to
|
2015-05-12 19:46:01 +00:00
|
|
|
``base``. It now defaults to ``None``, which makes more sense but will
|
2018-04-28 19:21:41 +00:00
|
|
|
break for any controllers that have not explicitly set a ``label`` of
|
2015-05-12 19:46:01 +00:00
|
|
|
``base``.
|
|
|
|
|
|
2015-05-06 05:49:08 +00:00
|
|
|
|
2014-09-17 20:53:06 +00:00
|
|
|
2.4.0 - Wed Sep 17, 2014
|
|
|
|
|
------------------------------------------------------------------------------
|
2014-01-30 01:07:28 +00:00
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
2014-04-15 20:49:30 +00:00
|
|
|
* :issue:`211` - LoggingLogHandler namespace causes issues (regression)
|
2014-04-16 16:58:45 +00:00
|
|
|
* :issue:`235` - Duplicate Config Section when plugin already loaded
|
|
|
|
|
* :issue:`246` - Plugin extension does not disable after already being
|
2014-08-20 20:56:45 +00:00
|
|
|
enabled
|
2014-01-30 01:07:28 +00:00
|
|
|
|
|
|
|
|
Features:
|
|
|
|
|
|
2014-08-08 00:28:48 +00:00
|
|
|
* :issue:`119` - Added cement.utils.shell.Prompt to quickly gather user
|
|
|
|
|
input in several different ways.
|
2014-09-12 02:16:07 +00:00
|
|
|
* :issue:`182` - Added a mail interface with basic implementations of
|
|
|
|
|
'dummy' (just prints message to console) and 'smtp'
|
2014-08-29 23:33:28 +00:00
|
|
|
* :issue:`229` - Ability to override handlers via command line options.
|
|
|
|
|
Also related: :issue:`225`.
|
2014-08-09 12:50:54 +00:00
|
|
|
* :issue:`248` - Added documentation for BASH Auto-Completion example.
|
|
|
|
|
* :issue:`249` - Allow utils.shell.exec_cmd* to accept additional.
|
2014-08-06 23:52:12 +00:00
|
|
|
parameters, passing all `args` and `kwargs` down to subprocess.Popen.
|
|
|
|
|
Allows features such as changing the current working directory, and
|
|
|
|
|
setting a timeout value, etc (everything that Popen supports).
|
2014-07-09 16:41:12 +00:00
|
|
|
* :issue:`257` - CementBaseController._dispatch() should return result
|
2014-08-20 20:56:45 +00:00
|
|
|
of controller function.
|
2014-08-09 12:50:54 +00:00
|
|
|
* :issue:`259` - Add yaml and yaml_configobj config handlers.
|
|
|
|
|
* :issue:`262` - Add json and json_configobj config handlers.
|
2014-08-21 00:28:48 +00:00
|
|
|
* :issue:`267` - Add support for multiple `plugin_dirs` and
|
|
|
|
|
`plugin_config_dirs`
|
2014-08-12 20:27:01 +00:00
|
|
|
* :issue:`269` - Allow app.close() to accept an exit code, and exit with
|
|
|
|
|
that code.
|
2014-08-22 22:00:10 +00:00
|
|
|
* :issue:`270` - Add support for multiple template_dirs
|
2014-08-29 23:33:28 +00:00
|
|
|
* :issue:`274` - Add cement.core.interface.list function
|
2014-09-09 03:34:19 +00:00
|
|
|
* :issue:`275` - Added `examples/` directory with working examples based
|
2014-09-09 02:01:58 +00:00
|
|
|
on Examples section of the documentation.
|
2014-01-30 01:07:28 +00:00
|
|
|
|
2014-07-09 16:41:12 +00:00
|
|
|
Incompatible:
|
|
|
|
|
|
2014-08-29 00:07:29 +00:00
|
|
|
* :issue:`227` - Standardize handler config section naming conventions.
|
|
|
|
|
All handler config sections are now labeled after ``interface.handler``
|
|
|
|
|
(i.e. ``output.json``, or ``mail.sendgrid``, etc).
|
2014-08-29 23:33:28 +00:00
|
|
|
* :issue:`229` - Handler override options deprecate the use of ``--json``,
|
|
|
|
|
and ``--yaml`` output handler options.
|
2014-07-09 16:41:12 +00:00
|
|
|
* :issue:`260` - Extensions/Plugins/Bootstrap modules must accept `app`
|
2014-08-20 20:56:45 +00:00
|
|
|
argument in `load()` function. See Upgrading doc for more information.
|
2014-01-30 01:07:28 +00:00
|
|
|
|
2012-05-03 12:38:41 +00:00
|
|
|
|
2014-01-29 22:04:35 +00:00
|
|
|
2.2.0 - Wed Jan 29, 2014
|
2013-10-29 20:56:03 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
2014-01-27 22:39:57 +00:00
|
|
|
* :issue:`211` - LoggingLogHandler namespace causes issues
|
2013-11-13 19:05:35 +00:00
|
|
|
* :issue:`215` - Epilog not printed on --help
|
2013-10-29 20:56:03 +00:00
|
|
|
|
|
|
|
|
Features:
|
|
|
|
|
|
2014-01-20 20:51:33 +00:00
|
|
|
* :issue:`209` - Added app.debug property to allow developers to know if
|
2014-01-23 00:09:03 +00:00
|
|
|
`--debug` was passed at command line of via the config
|
|
|
|
|
* :issue:`219` - Merged ext.memcached into mainline
|
|
|
|
|
* :issue:`222` - Merged ext.configobj into mainline
|
|
|
|
|
* :issue:`223` - Merged ext.genshi into mainline
|
|
|
|
|
* :issue:`224` - Merged ext.yaml into mainline
|
|
|
|
|
|
|
|
|
|
Incompatible:
|
|
|
|
|
|
|
|
|
|
* :issue:`202` - Deprecated namespace packaging for cement and cement.ext.
|
|
|
|
|
Resolves issues with certain IDE's and other situations where the lack
|
|
|
|
|
of a proper ``__init__.py`` causes issues. This change means that
|
|
|
|
|
external extensions can no longer share the ``cement.ext`` module
|
|
|
|
|
namespace, and must have it's own unique module path.
|
2013-10-29 20:56:03 +00:00
|
|
|
|
2014-01-29 21:37:04 +00:00
|
|
|
Misc:
|
|
|
|
|
|
|
|
|
|
* Official Git repo relocated to: http://github.com/datafolklabs/cement
|
|
|
|
|
|
2013-10-29 20:56:03 +00:00
|
|
|
|
2014-08-20 20:56:45 +00:00
|
|
|
2.1.4 - Tue Oct 29, 2013
|
2013-04-09 22:03:28 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bugs:
|
|
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`191` - KeyError when using minimal logger with --debug
|
|
|
|
|
* :issue:`199` - Moved post_argument_parsing hook down, after
|
2013-08-12 21:35:19 +00:00
|
|
|
arguments_override_config logic happens.
|
2013-10-22 20:06:08 +00:00
|
|
|
* :issue:`204` - utils.misc.wrap should handle None type
|
2013-10-22 19:05:38 +00:00
|
|
|
* :issue:`208` - LoggingLogHandler does not honor Meta.config_section
|
2013-10-25 20:58:28 +00:00
|
|
|
|
|
|
|
|
|
2013-04-09 22:03:28 +00:00
|
|
|
Features:
|
|
|
|
|
|
2014-01-20 23:10:28 +00:00
|
|
|
* :issue:`190` - Merged daemon extension into core
|
2013-06-08 21:25:09 +00:00
|
|
|
* :issue:`194` - Added pre_argument_parsing/post_argument_parsing hooks
|
2013-06-07 21:53:48 +00:00
|
|
|
* :issue:`196` - Added utils.misc.wrap
|
2014-01-20 23:10:28 +00:00
|
|
|
* :issue:`200` - Merged ext.mustache into mainline.
|
2013-09-04 23:28:31 +00:00
|
|
|
* :issue:`203` - Added support for external template directory
|
2014-01-20 23:10:28 +00:00
|
|
|
* :issue:`207` - Added support for alternative 'display' name for stacked
|
2013-10-29 19:48:28 +00:00
|
|
|
controllers
|
2013-10-23 23:45:35 +00:00
|
|
|
|
2013-08-12 22:35:21 +00:00
|
|
|
Incompatible:
|
|
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`163` - LoggingLogHandler.Meta.clear_loggers was changed from a
|
|
|
|
|
boolean option, to a list. Additionally,
|
|
|
|
|
LoggingLogHandler.clear_loggers() now requires a `namespace` argument.
|
2014-01-24 23:53:09 +00:00
|
|
|
ILog interface no longer defines `clear_loggers()` as a required
|
|
|
|
|
function (though ILog interfaces are welcome to implement one if
|
|
|
|
|
necessary).
|
2013-08-12 22:35:21 +00:00
|
|
|
* :issue:`173` - Deprecated 'has_key()' from configparser extension
|
2013-10-22 21:51:41 +00:00
|
|
|
* :issue:`201` - Add Deprecation Warning for CementApp.get_last_rendered()
|
2013-08-12 22:35:21 +00:00
|
|
|
|
2013-04-09 22:03:28 +00:00
|
|
|
|
2014-08-20 20:56:45 +00:00
|
|
|
2.1.2 - Thu Nov 1st, 2012
|
2012-08-04 01:34:35 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2012-10-09 00:58:59 +00:00
|
|
|
This is a branch off of the 2.0.x stable code base. Maintenance releases for
|
2013-10-25 20:58:28 +00:00
|
|
|
2.0.x will happen under the stable/2.0.x git branch, while forward feature
|
2012-08-27 22:03:11 +00:00
|
|
|
development will happen here under as 2.1.x under the git master branch.
|
|
|
|
|
|
2012-08-21 01:47:30 +00:00
|
|
|
Bugs:
|
|
|
|
|
|
2012-10-09 00:58:59 +00:00
|
|
|
* :issue:`162` - Unable to set log 'level' by config
|
|
|
|
|
* :issue:`167` - Non-stacked controllers not listed in --help
|
|
|
|
|
* :issue:`169` - Fixed tests.utils.shell_tests timeout issue
|
|
|
|
|
* :issue:`171` - No handlers could be found for logger
|
2013-03-14 05:41:41 +00:00
|
|
|
* :issue:`183` - os.environ['HOME'] does not exist on Windows
|
|
|
|
|
|
2012-08-21 01:47:30 +00:00
|
|
|
Features:
|
2012-08-04 01:34:35 +00:00
|
|
|
|
2012-08-21 02:20:47 +00:00
|
|
|
* :issue:`161` - Ability to override `usage`
|
2012-10-08 23:18:46 +00:00
|
|
|
* :issue:`164` - Store previously rendered data as app._last_rendered, and
|
|
|
|
|
retrievable by app.get_last_rendered().
|
2012-08-22 20:44:52 +00:00
|
|
|
* :issue:`165` - Allow utils.fs.backup() to support a suffix kwarg
|
2012-08-27 21:28:31 +00:00
|
|
|
* :issue:`166` - Ability to set the 'app' for CementTestCase.make_app()
|
2012-09-08 00:46:56 +00:00
|
|
|
* :issue:`170` - Added support for `nested` and `embedded` controllers.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-09-07 20:30:54 +00:00
|
|
|
Misc:
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-09-07 20:30:54 +00:00
|
|
|
* :issue:`172` - 100% PEP8 Compliant
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`160` - Refactor CementApp._resolve_handler() as
|
2013-03-27 06:07:11 +00:00
|
|
|
handler.resolve()
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-09-07 22:12:54 +00:00
|
|
|
Deprecation Notices:
|
|
|
|
|
|
|
|
|
|
* :issue:`173` - ConfigParserConfigHandler.has_key() is now deprecated,
|
|
|
|
|
and will be removed in future versions. Please use `if key in
|
|
|
|
|
app.config.keys(section)` instead.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-08-21 01:47:30 +00:00
|
|
|
Incompatible Changes:
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-09-08 00:46:56 +00:00
|
|
|
* :issue:`141` - Removed shortcuts from CementBaseController (such as
|
|
|
|
|
log, pargs, etc). Use `self.app.<shortcut>` instead.
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`167` - Listed above, in order to fix this issue as well as
|
|
|
|
|
restrict future issues we implemented a hard requirement that all
|
2012-08-23 00:20:05 +00:00
|
|
|
base controllers have the label 'base'. This should not be a major
|
|
|
|
|
change for anyone using Cement 2.0.x as it is a simple 1 line change
|
|
|
|
|
in any one application. As all documentation encourages the use of the
|
|
|
|
|
label 'base' it should not be a wide spread incompatibility.
|
2012-09-08 00:46:56 +00:00
|
|
|
* :issue:`179` - CementBaseController `hidden`, `visible`, and `exposed`
|
2014-01-24 23:53:09 +00:00
|
|
|
have been removed, and replaced by other private means of managing
|
|
|
|
|
the dispatch of commands.
|
2012-09-08 00:46:56 +00:00
|
|
|
* CementBaseController no longer implements a `default` command.
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`177` - Renamed several cement.core.backend pieces including:
|
|
|
|
|
`handlers` -> `__handlers__`, `hooks` -> `__hooks__`, `SAVED_STDOUT`
|
2012-09-20 00:33:06 +00:00
|
|
|
-> `__saved_stdout__`, and `SAVED_STDERR` -> `__saved_stderr__`.
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`178` - Moved `backend.defaults()` to
|
2012-09-20 01:19:11 +00:00
|
|
|
`utils.misc.init_defaults()`, and `backend.minimal_logger()` to
|
|
|
|
|
`utils.misc.minimal_logger()`
|
2013-03-27 06:07:11 +00:00
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-08-03 23:03:28 +00:00
|
|
|
2.0.0 - Fri Aug 03, 2012
|
2012-07-16 06:34:54 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
This is the initial stable release of the 2.0.x branch. Future releases of
|
|
|
|
|
this branch will include bug/security fixes and minor feature updates.
|
2012-08-03 23:03:28 +00:00
|
|
|
Forward moving feature development will continue out of the 2.1.x branch.
|
|
|
|
|
|
2012-07-30 23:22:31 +00:00
|
|
|
Bugs:
|
|
|
|
|
|
|
|
|
|
* :issue:`143` - Incorrect doc regarding logging. The LoggingLogHandler
|
2012-07-31 03:17:20 +00:00
|
|
|
now supports an optional 'namespace' argument allowing the developer
|
2012-07-30 23:22:31 +00:00
|
|
|
to override the log prefix.
|
2012-08-03 06:57:25 +00:00
|
|
|
* :issue:`150` - foundation.CementApp.Meta.argv now defaults to None,
|
2013-10-25 20:58:28 +00:00
|
|
|
but is overridden in __init__() with sys.argv if no other argv is
|
2012-08-03 06:57:25 +00:00
|
|
|
passed as meta.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-07-30 23:22:31 +00:00
|
|
|
Features:
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-07-31 02:55:16 +00:00
|
|
|
* :issue:`138` - Added 'shell' argument to utils.shell.exec_cmd() and
|
|
|
|
|
utils.shell.exec_cmd2().
|
2012-07-31 02:36:58 +00:00
|
|
|
* :issue:`140` - Included ~/.myapp/config in default config search
|
2012-07-31 02:31:30 +00:00
|
|
|
* :issue:`144` - Added a note on Contributing, as well as a CONTRIBUTORS
|
|
|
|
|
file.
|
2012-08-03 06:48:38 +00:00
|
|
|
* :issue:`152` - Added 'argument_formatter' to ControllerBaseClass.Meta.
|
2012-08-03 06:37:45 +00:00
|
|
|
* :issue:`153` - Added spawn_process() and spawn_thread() to utils.shell.
|
2012-07-30 23:22:31 +00:00
|
|
|
|
|
|
|
|
Incompatible Changes:
|
|
|
|
|
|
2012-08-03 22:26:10 +00:00
|
|
|
* :issue:`100` - Interfaces audit.
|
|
|
|
|
* ILog.level() redefined as ILog.get_level()
|
2013-10-25 20:58:28 +00:00
|
|
|
* IPlugin.loaded_plugins attribute redefined as
|
2012-08-03 22:26:10 +00:00
|
|
|
IPlugin.get_loaded_plugins()
|
2013-10-25 20:58:28 +00:00
|
|
|
* IPlugin.enable_plugins attribute redefined as
|
2012-08-03 22:26:10 +00:00
|
|
|
IPlugin.get_enabled_plugins()
|
2013-10-25 20:58:28 +00:00
|
|
|
* IPlugin.disabled_plugins attribute redefined as
|
2012-08-03 22:26:10 +00:00
|
|
|
IPlugin.get_disabled_plugins()
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`145` - The IArgument interface no longer specifies that the
|
2012-08-03 23:03:28 +00:00
|
|
|
`parsed_args` be maintained by the handler implementation. This means
|
2013-10-25 20:58:28 +00:00
|
|
|
that `app.args.parsed_args` is no longer available, however
|
|
|
|
|
`app.pargs` functions just the same as it points to
|
2012-08-03 23:03:28 +00:00
|
|
|
`app._parsed_args`.
|
2012-08-03 21:03:25 +00:00
|
|
|
* :issue:`148` - The CementExtensionHandler.loaded_extensions property is
|
|
|
|
|
now a callable at CementExtensionHandler.get_loaded_extensions().
|
2012-08-03 05:22:39 +00:00
|
|
|
* :issue:`151` - Removed all previously deprecated code including:
|
2013-10-25 20:58:28 +00:00
|
|
|
* Removed CementApp.Meta.defaults, and CementBaseHandler.Meta.defaults.
|
2012-08-03 05:22:39 +00:00
|
|
|
Now use `config_defaults` instead.
|
|
|
|
|
* Removed cement.foundation.lay_cement(). Now use CementApp directly.
|
2013-10-25 20:58:28 +00:00
|
|
|
* Removed cement.handler.enabled(). Now use `handler.registered()`
|
2012-08-03 05:22:39 +00:00
|
|
|
instead.
|
2012-08-03 22:10:53 +00:00
|
|
|
* :issue:`154` - Validate for handler config_defaults and config_section
|
2012-08-03 23:03:28 +00:00
|
|
|
by default. Only incompatible if not previously sub-classing from
|
2013-10-25 20:58:28 +00:00
|
|
|
handler.CementBaseHandler.
|
2012-08-03 21:58:02 +00:00
|
|
|
* :issue:`157` - CementRuntimeError renamed as FrameworkError
|
|
|
|
|
* :issue:`158` - CementSignalError renamed as CaughtSignal
|
|
|
|
|
* :issue:`159` - CementInterfaceError renamed as InterfaceError
|
2012-08-03 22:26:10 +00:00
|
|
|
|
2012-08-03 21:14:33 +00:00
|
|
|
Misc:
|
|
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`155` - Removed unused CementArgumentError, and
|
2012-08-03 23:03:28 +00:00
|
|
|
CementConfigError. These types of exceptions should be defined at
|
|
|
|
|
the application level.
|
2012-07-16 06:34:54 +00:00
|
|
|
|
2012-07-16 05:28:15 +00:00
|
|
|
1.9.14 - Sun Jul 16, 2012
|
2012-07-05 20:12:59 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2012-07-06 21:19:40 +00:00
|
|
|
Bugs:
|
|
|
|
|
|
|
|
|
|
* :issue:`127` - Inherited positional arguments listed multiple times
|
2012-07-05 20:12:59 +00:00
|
|
|
|
2012-07-13 00:44:05 +00:00
|
|
|
Feature Enhancements:
|
|
|
|
|
|
|
|
|
|
* :issue:`131` - Controller aliases
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`126` - Add a 'bootstrap' importer to CementApp
|
2012-07-14 01:10:10 +00:00
|
|
|
* Added cement.utils.test.CementTestCase for improved testing.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-07-13 07:49:46 +00:00
|
|
|
Incompatible Changes:
|
|
|
|
|
|
|
|
|
|
* :issue:`129` - Simplify extensions/plugins/hooks/etc.
|
2012-07-16 04:54:13 +00:00
|
|
|
* Hooks renamed from 'cement_xxx_hook' to just 'xxx'. For example, the
|
|
|
|
|
'cement_pre_setup_hook' is now simply 'pre_setup'. Additionally, the
|
2013-10-25 20:58:28 +00:00
|
|
|
'cement_on_close_hook' is now broken out into 'pre_close', and
|
2012-07-16 04:54:13 +00:00
|
|
|
'post_close'.
|
2013-10-25 20:58:28 +00:00
|
|
|
* The cement.core.hooks.register decorator was replaced with a simple
|
2012-07-16 04:54:13 +00:00
|
|
|
function of the same name. New usage is:
|
|
|
|
|
register('hook_name', hook_func).
|
2012-07-16 05:28:15 +00:00
|
|
|
* Plugins, extensions, and the application bootstrap now attempt to
|
|
|
|
|
call a 'load()' function, meaning library code and loading code can
|
|
|
|
|
live in the same file (i.e. hooks won't be registered just because
|
|
|
|
|
you imported an extension to sub-class a handler, etc).
|
2012-07-14 01:10:10 +00:00
|
|
|
* cement.utils.test_helper moved to cement.utils.test.
|
2012-07-16 05:52:28 +00:00
|
|
|
* By default, command line arguments no longer override config settings.
|
|
|
|
|
This is now configurable by the CementApp.Meta.arguments_override_config
|
2012-07-16 05:53:06 +00:00
|
|
|
boolean. Related: :issue:`136`.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-07-05 20:12:59 +00:00
|
|
|
|
2012-07-05 19:56:16 +00:00
|
|
|
1.9.12 - Thu Jul 05, 2012
|
2012-07-04 00:45:41 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2012-07-05 19:56:16 +00:00
|
|
|
Bugs:
|
2012-07-04 00:45:41 +00:00
|
|
|
|
2012-07-05 19:56:16 +00:00
|
|
|
* Fixed version mis-hap in setup.py
|
2012-07-04 00:45:41 +00:00
|
|
|
|
2012-07-05 19:56:16 +00:00
|
|
|
|
|
|
|
|
1.9.10 - Wed Jul 04, 2012
|
2012-05-03 12:38:41 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2012-06-29 07:54:02 +00:00
|
|
|
Feature Enhancements:
|
|
|
|
|
|
|
|
|
|
* :issue:`118` - Added utils.fs.backup() to safely backup files/dirs.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-05-07 18:54:32 +00:00
|
|
|
Misc:
|
|
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`111` - Use relative imports (makes cement more portable as it
|
2012-06-29 06:55:41 +00:00
|
|
|
can be included and distributed with 3rd party sources).
|
2012-06-29 07:54:02 +00:00
|
|
|
* :issue:`120` - Use standard json rather than relying on jsonpickle
|
2012-06-29 06:55:41 +00:00
|
|
|
|
|
|
|
|
Incompatible Changes:
|
|
|
|
|
|
2012-07-03 21:24:28 +00:00
|
|
|
* core.util.abspath moved to utils.fs.abspath
|
|
|
|
|
* core.util.is_true moved to utils.misc.is_true
|
2012-07-04 00:45:41 +00:00
|
|
|
* Namespace reverted from 'cement2' back to 'cement'.
|
2013-10-25 20:58:28 +00:00
|
|
|
* The following extensions have been removed from the cement source tree,
|
|
|
|
|
and are now available externally (see: http://github.com/cement): daemon,
|
2012-06-29 06:55:41 +00:00
|
|
|
memcached, configobj, yaml, genshi.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-05-03 12:38:41 +00:00
|
|
|
|
2012-05-03 12:21:12 +00:00
|
|
|
1.9.8 - Thu May 3, 2012
|
2012-04-19 19:46:49 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2012-04-27 01:13:42 +00:00
|
|
|
Feature Enhancements:
|
|
|
|
|
|
2012-04-27 04:39:41 +00:00
|
|
|
* :issue:`95` - Add a 'config_section' Meta default for all handlers.
|
|
|
|
|
Required to parse config options for a handler.
|
2012-05-01 04:05:35 +00:00
|
|
|
* :issue:`97` - Add a standard cache handler interface.
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`105` - Add 'meta_override' and 'core_meta_override' list to
|
2012-04-27 01:13:42 +00:00
|
|
|
CementApp().Meta. Also resolves :issue:`104`.
|
2012-05-01 04:05:35 +00:00
|
|
|
* :issue:`108` - Add CementApp.extend() functionality.
|
2012-06-28 23:55:51 +00:00
|
|
|
* :issue:`109` - Add cement.ext.memcached extension
|
2012-04-27 04:39:41 +00:00
|
|
|
|
2012-04-26 22:40:55 +00:00
|
|
|
Incompatible Changes:
|
|
|
|
|
|
2012-04-27 01:13:42 +00:00
|
|
|
* :issue:`103` - plugin_bootstrap_module renamed as plugin_bootstrap.
|
2012-04-27 04:39:41 +00:00
|
|
|
* :issue:`106` - Deprecate Meta.defaults in favor of Meta.config_defaults
|
2012-05-02 22:04:56 +00:00
|
|
|
* :issue:`107` - Make the app name the default config section, not [base]
|
2012-04-19 19:46:49 +00:00
|
|
|
|
2012-04-18 21:52:49 +00:00
|
|
|
1.9.6 - Wed Apr 18, 2012
|
2011-12-22 00:44:25 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2012-01-05 23:37:27 +00:00
|
|
|
Bug Fixes:
|
|
|
|
|
|
2012-01-06 01:27:05 +00:00
|
|
|
* :issue:`89` - Secondary controllers display under other controllers
|
2012-01-10 04:05:11 +00:00
|
|
|
* :issue:`90` - Logging to file doesn't expand '~'
|
2012-01-10 04:12:56 +00:00
|
|
|
* :issue:`91` - Logging to file doesn't create basedir
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-01-05 23:37:27 +00:00
|
|
|
Feature Enhancements:
|
|
|
|
|
|
2012-06-28 23:55:51 +00:00
|
|
|
* :issue:`88` - Add cement.ext.genshi extension, provides Genshi Text
|
2012-01-05 23:37:27 +00:00
|
|
|
Templating Launguage support.
|
2012-01-26 02:39:34 +00:00
|
|
|
* :issue:`93` - Add epilog support for CementBaseController.
|
2011-12-22 00:44:25 +00:00
|
|
|
|
2012-01-26 02:39:34 +00:00
|
|
|
Refactoring:
|
2011-12-22 00:44:25 +00:00
|
|
|
|
2012-01-26 02:39:34 +00:00
|
|
|
* :issue:`87` - Refactor Meta handling
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2012-02-21 05:53:13 +00:00
|
|
|
Incompatible Changes:
|
|
|
|
|
|
|
|
|
|
* :issue:`96` - Move 'setup()' functions to '_setup()'
|
|
|
|
|
* Moved CementBaseController.dispatch() to _dispatch()
|
|
|
|
|
* Moved CementBaseController.usage_text to _usage_text()
|
|
|
|
|
* Moved CementBaseController.help_text to _help_text()
|
2012-04-17 10:10:00 +00:00
|
|
|
* backend.defaults() no longer accepts an app name as an argument.
|
2013-10-25 20:58:28 +00:00
|
|
|
* foundation.lay_cement() is deprecated. Use foundation.CementApp()
|
2012-04-17 10:10:00 +00:00
|
|
|
directly.
|
|
|
|
|
* No longer pass anything but 'app' object to handlers _setup() functions.
|
|
|
|
|
* handler.enabled() is deprecated. Use handler.registered().
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2011-12-22 00:16:40 +00:00
|
|
|
1.9.4 - Wed Dec 21, 2011
|
2011-11-03 23:32:07 +00:00
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Bug Fixes:
|
|
|
|
|
|
2011-11-10 22:27:22 +00:00
|
|
|
* :issue:`73` - Hooks broken in Python 3
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`81` - Controller defaults should be processed before base
|
2011-12-16 22:06:54 +00:00
|
|
|
controller.setup()
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2011-11-07 23:28:54 +00:00
|
|
|
Feature Enhancements:
|
2011-11-03 23:32:07 +00:00
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`65` - Added 'daemon' extension. Process is daemonized by
|
2011-11-10 22:27:22 +00:00
|
|
|
passing the '--daemon' option. Handles switching the run user/group, as
|
|
|
|
|
well as managing a pid file.
|
2011-12-21 23:04:42 +00:00
|
|
|
* :issue:`72` - Added new framework hooks.
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`76` - Added app.close() functionality including a
|
2011-11-10 22:27:22 +00:00
|
|
|
cement_on_close_hook() allowing plugins/extensions/etc to be able to
|
|
|
|
|
cleanup on application exit.
|
2011-12-21 00:34:24 +00:00
|
|
|
* :issue:`77` - Added default signal handler for SIGINT/SIGTERM as well as
|
2013-10-25 20:58:28 +00:00
|
|
|
the cement_signal_hook which is called when any catch_signals are
|
2011-12-21 00:34:24 +00:00
|
|
|
encountered.
|
2011-12-21 23:04:42 +00:00
|
|
|
* :issue:`78` - Added cement_pre_render_hook, and cement_post_render_hook
|
|
|
|
|
allowing developers to control the data that is rendered to console.
|
2011-12-21 22:06:33 +00:00
|
|
|
* :issue:`84` - Ability to run all tests from utils/run_tests.sh
|
2013-10-25 20:58:28 +00:00
|
|
|
|
2011-11-07 23:28:54 +00:00
|
|
|
Incompatible Changes:
|
|
|
|
|
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`72` - The framework hooks 'cement_add_args_hook' and
|
|
|
|
|
'cement_validate_config' were removed in favor of the new pre/post setup
|
2011-11-10 22:27:22 +00:00
|
|
|
and run hooks.
|
2013-10-25 20:58:28 +00:00
|
|
|
* :issue:`82` - Change 'meta' classes to Python-proper 'Meta', and
|
2011-12-19 23:35:10 +00:00
|
|
|
interfaces to use 'IMeta'. Old functionality will be completely removed
|
2012-06-28 23:55:51 +00:00
|
|
|
before Cement stable release.
|
2013-10-25 20:58:28 +00:00
|
|
|
|
|
|
|
|
|
2010-12-09 03:40:11 +00:00
|
|
|
|
2011-11-02 22:00:36 +00:00
|
|
|
1.9.2 - Wed Nov 02, 2011
|
2011-08-22 23:22:53 +00:00
|
|
|
------------------------------------------------------------------------------
|
2010-12-09 03:40:11 +00:00
|
|
|
|
2012-06-28 23:55:51 +00:00
|
|
|
This is an initial beta release of Cement, and therefore no bugs or features
|
2011-12-22 00:44:25 +00:00
|
|
|
are listed. Future releases will detail all changes.
|