Dectate

Latest version: v0.13

Safety actively analyzes 621924 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.14

=================

- Remove pypy3 target.

0.13

=================

- Add a Sentinel class, used for the ``NOT_FOUND`` object.

- Upload universal wheels to pypi during release.

- make ``directive_name`` property available on ``Directive`` instances.

0.12

=================

- **Breaking changes**: previously you defined new directives using the
``App.directive`` directive. This would lead to import confusion: you
*have* to import the modules that define directives before you can actually
use them, even though you've already imported your app class.

In this version of Dectate we've changed the way you define directives.
Instead of::

class MyApp(dectate.App):
pass

MyApp.directive('foo')
class FooAction(dectate.Action):
...

You now write this::

class FooAction(directive.Action)
...

class MyApp(dectate.App):
foo = directive(FooAction)

So, you define the directives directly on the app class that needs
them.

Uses of ``private_action_class`` should be replaced by an underscored
directive definition::

class MyApp(dectate.App):
_my_private_thing = directive(PrivateAction)

- Use the same Git ignore file used in other Morepath projects.

- If you set the ``app_class_arg`` class attribute to ``True`` on an
action, then an ``app_class`` is passed along to ``perform``,
``identifier``, etc. This way you can affect the app class directly
instead of just its underlying configuration in the ``config``
attribute.

- Similarly if you set the ``app_class_arg`` attribute ``True`` on a
factory class, it is passed in.

- Add a ``clean`` method to the ``App`` class. You can override this
to introduce your own cleanup policy for aspects of the class that are
not contained in the ``config`` attribute.

- We now use virtualenv and pip instead of buildout to set up the
development environment. The development documentation has been
updated accordingly.

- Include doctests in Tox and Travis.

0.11

=================

- **Removed**: ``autocommit`` was removed from the Dectate API. Rely
on the ``commit`` class method of the ``App`` class instead for a
more explicit alternative.

- **Removed**: ``auto_query_tool`` was removed from the Dectate API.
Use ``query_tool(App.commit())`` instead.

- Fix ``repr`` of directives so that you can at least see their name.

- the execution order of filters is now reproducible, to ensure
consistent test coverage reports.

- Use abstract base classes from the standard library for the ``Action``
and ``Composite`` classes.

- Use feature detection instead of version detection to ensure Python
2/3 compatibility.

- Increased test coverage.

- Set up Travis CI and Coverall as continuous integration services for
quality assurance purposes.

- Add support for Python 3.3 and 3.5.

- Make Python 3.5 the default testing environment.

0.10.2

===================

- If nothing is found for an app in the query tool, don't mention it
in the output so as to avoid cluttering the results.

- Fix a major bug in the query tool where if an app resulted in no
results, any subsequent apps weren't even searched.

0.10.1

===================

- Create proper deprecation warnings instead of plain warnings for
``autocommit`` and ``auto_query_tool``.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.