Skip to content

Releases: mdickinson/refcycle

refcycle 0.3.1

07 Oct 18:15
v0.3.1
0c4e2ed
Compare
Choose a tag to compare

This is a bugfix release that fixes the Read the Docs documentation build.

Documentation

  • Add a configuration file for Read the Docs. (#99, #101)
  • Fix the "commits-since" badge to refer to the latest release. (#98)

Maintenance

  • Install graphviz in the test workflow, to avoid skipping any tests. (#100)

refcycle 0.3.0

07 Oct 16:54
v0.3.0
0ba02fa
Compare
Choose a tag to compare

This is a minor release that extends refcycle support through Python 3.12.

Changes

  • Now supports Python 3.7 through Python 3.12. Support for earlier versions
    of Python has been dropped.
  • The refcycle.version module and the refcycle.__version__ attribute
    have been removed. To get the version number of the currently installed
    package, use importlib.metadata.

Fixes

  • Imports of container ABCs (like Sized, Iterable) from collections
    have been fixed to import from collections.abc instead.
  • Test failures on Python 3.10 and 3.11 have been fixed.

Maintenance

  • GitHub Actions workflows have been added for testing, style checks, test
    documentation build and release. The previous Travis CI-based checks have
    been removed.
  • Now uses setuptools-scm for dynamic versioning.
  • Copyright headers have been updated.
  • Source tree now follows a src/ layout.
  • The project now uses pyproject.toml rather than setup.py.
  • Support for coverage via coveralls has been dropped.

refcycle 0.2.1

27 Jun 20:03
Compare
Choose a tag to compare

This is a bugfix release, fixing an issue with the readthedocs
URLs in the project's description on PyPI.

Fixes

  • Fix readthedocs URLs in the package long description. (#69)

refcycle 0.2.0

27 Jun 19:18
Compare
Choose a tag to compare

This is a minor release, containing a few new helper methods and
bugfixes. Highlights include the shortest_path and shortest_cycle
methods, improved annotations, and fixes for performance bugs that make
linear-time algorithms take quadratic time or worse.

Features

  • Support Python 3.4 through 3.6. (#65, #55)

  • New ObjectGraph methods: shortest_cycle, find_by_typename
    and count_by_typename. (#64)

  • New shortest_path method. (#61)

  • Reduce memory usage of the AnnotatedGraph object by adding slots
    to the AnnotatedEdge and AnnotatedVertex types.

  • Add specific annotation for module objects.

  • Add specific annotations for getset_descriptor objects.

Changes

  • Use the current line number instead of the first line number in
    the annotations for frame objects. (#50)

Fixes

  • Fix quadratic-time behaviour in DirectedGraph.full_subgraph. (#63)

  • Fix non-linear (exponential, in extreme cases) running time in
    descendants and ancestors methods. (#62)

  • Fix annotations for functions with no __name__ attribute. (#59)

  • In Python 2, fix annotations for bound methods with no im_class
    attribute. (#56)

  • Fix annotations for some peculiar frame objects whose f_locals dict
    has been replaced with a dict-like object. (The Enaml package does this.) (#51)

  • Fix missing annotation for f_trace on frames. This was causing one
    of the tests to fail when run under coverage. (#41)

RELEASE: Version 0.1.2.

24 Dec 17:53
Compare
Choose a tag to compare

This is a bugfix release:

  • Ensure that the PDF docs build correctly, by providing PDF sources as well as SVG sources for images.
  • Fix a buggy test that failed on second and subsequent runs.
  • Update README and long description text: add PyPI information; add information on prerequisites; remove outdated information.

RELEASE: Version 0.1.1.

23 Dec 17:50
Compare
Choose a tag to compare

Bugfix release: include README.rst in source distribution, since it's needed for the long description. Without this, pip install refcycle fails.

RELEASE: Version 0.1.0.

23 Dec 16:48
Compare
Choose a tag to compare

New in this release:

  • Basic documentation now exists.
  • Added IDirectedGraph.source_components method for finding key strongly connected components.
  • More annotations: basic types (strings, numbers); frame objects.
  • New methods ObjectGraph.export_json and AnnotatedGraph.import_json for exporting to a JSON file, and for importing that JSON file as an AnnotatedGraph object. (The previous export_json function, which returned a string, is now called to_json.)
  • New method ObjectGraph.export_image to export directly to an image file (using dot).

Bugfixes:

  • ancestors and descendants methods didn't always fully explore to the given depth. Now fixed.
  • Graphviz labels containing quote characters are now correctly quoted.

See the CHANGES file for full details.

RELEASE: Version 0.0.1.

14 Dec 20:34
Compare
Choose a tag to compare

Bugfix release; fixes the download URL in the setup script.

RELEASE: Version 0.0.0.

14 Dec 20:19
Compare
Choose a tag to compare

This is the first release of refcycle that's meant for public consumption.