Changelog¶
1.4.2 (2016-05-10)¶
- Fix forgotten debug prints.
1.4.1 (2016-05-06)¶
- Fixed weaving of objects that don’t live on root-level modules.
1.4.0 (2016-04-09)¶
- Corrected weaving of methods, the weaved function should be unbound.
- Rolling back only applies undos once.
- Added a convenienceweave fixture for pytest.
1.3.3 (2015-10-02)¶
- Fixed typo in
ABSOLUTELLY_ALL_METHODSname (nowABSOLUTELY_ALL_METHODS). Old name is still there forbackwards compatibility.
1.3.2 (2015-09-22)¶
- Fixed another tricky bug in the generator advising wrappers - result was not returned if onlyProceed was yielded.
1.3.1 (2015-09-12)¶
- Corrected result handling when using Aspects on generators.
1.3.0 (2015-06-06)¶
- Added
messagesproperty toaspectlib.test.LogCapture. Changecallto have level name instead of number. - Fixed a bogus warning from
aspectlib.patch_module`()when patching methods on old style classes.
1.2.2 (2014-11-25)¶
- Added support for weakrefs in the
__logged__wrapper fromaspectlib.debug.logdecorator.
1.2.1 (2014-10-15)¶
- Don’t raise exceptions from
Replay.__exit__if there would be an error (makes original cause hard to debug).
1.2.0 (2014-06-24)¶
- Fixed weaving methods that were defined in some baseclass (and not on the target class).
- Fixed wrong qualname beeing used in the Story/Replay recording. Now used the alias given to the weaver instead ofwhatever is the realname on the current platform.
1.1.1 (2014-06-14)¶
- Use
ASPECTLIB_DEBUGfor every logger inaspectlib.
1.1.0 (2014-06-13)¶
- Added abind option to
aspectlib.Aspectso you can access the cutpoint from the advisor. - Replaced automatic importing in
aspectlib.test.Replaywith extraction of context variables (locals and globalsfrom the callingaspectlib.test.Story). Works better than the previous inference of module from AST of theresult. - All the methods on the replay are now properties:
aspectlib.test.Story.diff,aspectlib.test.Story.unexpectedandaspectlib.test.Story.missing. - Added
aspectlib.test.Story.actualandaspectlib.test.Story.expected. - Added an
ASPECTLIB_DEBUGenvironment variable option to switch on debug logging inaspectlib’s internals.
1.0.0 (2014-05-03)¶
- Reworked the internals
aspectlib.test.Storyto keep call ordering, to allow dependencies and improved theserialization (used in the diffs and the missing/unexpected lists).
0.9.0 (2014-04-16)¶
Changed
aspectlib.test.record:- Renamedhistory option tocalls.
- Renamedcall option toiscalled.
- Addedcallback option.
- Addedextended option.
Changed
aspectlib.weave:- Allow weaving everything in a module.
- Allow weaving instances of new-style classes.
Added
aspectlib.test.Storyclass for capture-replay and stub/mock testing.
0.8.1 (2014-04-01)¶
- Use simpler import for the py3support.
0.8.0 (2014-03-31)¶
- Change
aspectlib.debug.logto useAspectand work as expected with coroutines or generators. - Fixed
aspectlib.debug.logto work on Python 3.4. - Remove the undocumented
aspectlib.Yieldadvice. It was only usable when decorating generators.
0.7.0 (2014-03-28)¶
- Add support for decorating generators and coroutines in
Aspect. - Made aspectlib raise better exceptions.
0.6.1 (2014-03-22)¶
- Fix checks inside
aspectlib.debug.logthat would inadvertently call__bool__/__nonzero.
0.6.0 (2014-03-17)¶
- 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 (2014-03-16)¶
Changed
aspectlib.debug.log:- Renamedarguments tocall_args.
- Renamedarguments_repr tocall_args_repr.
- Addedcall 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.invalidname',aspect)now gives a clear error(invalidnameis not a valid identifier)Various documentation improvements and examples.
0.4.1 (2014-03-08)¶
- Remove junk from 0.4.0’s source distribution.
0.4.0 (2014-03-08)¶
Changed
aspectlib.weave:- Replacedonly_methods,skip_methods,skip_magicmethods options withmethods.
- Renamedon_init option tolazy.
- Addedaliases option.
- Replacedskip_subclasses option withsubclasses.
Fixed weaving methods from a string target.
0.3.1 (2014-03-05)¶
- ???
0.3.0 (2014-03-05)¶
- First public release.
