Aspectlib

Latest version: v2.0.0

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

Scan your dependencies

Page 4 of 5

0.8.1

------------------

* Use simpler import for the py3support.

0.8.0

------------------

* Change :obj:`aspectlib.debug.log` to use :obj:`~aspectlib.Aspect` and work as expected with coroutines or generators.
* Fixed :obj:`aspectlib.debug.log` to work on Python 3.4.
* Remove the undocumented ``aspectlib.Yield`` advice. It was only usable when decorating generators.

0.7.0

------------------

* Add support for decorating generators and coroutines in :obj:`~aspectlib.Aspect`.
* Made aspectlib raise better exceptions.

0.6.1

------------------

* Fix checks inside :obj:`aspectlib.debug.log` that would inadvertently call ``__bool__``/``__nonzero``.

0.6.0

------------------

* Don't include __getattribute__ in ALL_METHODS - it's too dangerous dangerous dangerous dangerous dangerous dangerous
... ;)
* Do a more reliable check for old-style classes in debug.log
* When weaving a class don't weave attributes that are callable but are not actually routines (functions, methods etc)

0.5.0

------------------

* Changed :obj:`aspectlib.debug.log`:

* Renamed `arguments` to `call_args`.
* Renamed `arguments_repr` to `call_args_repr`.
* Added `call` option.
* Fixed issue with logging from old-style methods (object name was a generic "instance").

* Fixed issues with weaving some types of builtin methods.
* Allow to apply multiple aspects at the same time.
* Validate string targets before weaving. ``aspectlib.weave('mod.invalid name', aspect)`` now gives a clear error
(``invalid name`` is not a valid identifier)
* Various documentation improvements and examples.

Page 4 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.