A configuration engine for Python frameworks
Dectate: a configuration engine for Python frameworks
Dectate is a powerful configuration engine for Python frameworks.
It is used by Morepath.
Deprecated The autocommit function is deprecated. Rely on the commit class method of the App class instead for a more explicit alternative.
Deprecated The auto_query_tool function is deprecated. Rely on dectate.query_tool(MyApp.commit()) instead. Since the commit method returns an iterable of App classes that are required to commit the app class it is invoked on, this returns the right information.
topological_sort function is exposed as the public API.
A commit class method on App classes.
Report on inconsistent uses of factories between different directives’ config settings as well as factory_arguments for registries. This prevents bugs where a new directive introduces the wrong factory for an existing directive.
Expanded internals documentation.
Fix a subtle bug introduced in the last release. If factory_arguments were in use with a config name only created in that context, it was not properly cleaned up, which in some cases can make a commit of a subclass get the same config object as that of the base class.
Change the behavior of query_tool so that if it cannot find an action class for the directive name the query result is empty instead of making this an error. This makes auto_query_tool work better.
Introduce auto_query_tool which uses the automatically found app classes as the default app classes to query.
Fix tests that use __builtin__ that were failing on Python 3.
Dependencies only listed in factory_arguments are also created during config creation.
Document how to refer to builtins in Python 3.
Expose is_committed method on App subclasses.
Fix a few documentation issues.
Expose convert_dotted_name and document it.
Implement new convert_bool.
Allow use of directive name instead of Action subclass as argument to Query.
A query_app function which is especially helpful when writing tests for the query tool – it takes unconverted filter arguments.
Use newer version of with_metaclass from six.
Expose NOT_FOUND and document it.
Introduce a new filter_get_value method you can implement if the normal attribute getting and filter_name are not enough.
Introduce a query system for actions and a command-line tool that lets you query actions.
Breaking change The signature of commit has changed. Just pass in one or more arguments you want to commit instead of a list. See #8.
Expose code_info attribute for action. The path in particular can be useful in implementing a directive such as Morepath’s template_directory. Expose it for composite too.
Report a few more errors; you cannot use config, before or after after in an action class if group_class is set.
Raise a DirectiveReportError if a DirectiveError is raised in a composite actions method.
Document importscan package that can be used in combination with this one.
Introduced factory_arguments feature on config factories, which can be used to create dependency relationships between configuration.
Fix a bug where config items were not always properly reused. Now only the first one in the action class dependency order is used, and it is not recreated.
Remove clear_autocommit as it was useless during testing anyway. In tests just use explicit commit.
Add a dectate.sphinxext module that can be plugged into Sphinx so that directives are documented properly.
Document how Dectate deals with double imports.
Initial public release.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.