News

See pyTooling Release Pages for detail release notes on every release.

Version 8.x (2025/2026)

Version 7.x (2024)

Version 6.x (2024)

Version 5.x (2023)

Version 4.x (2023)

Version 3.x (2023)

Jan. 2023 - Graph enhancements

  • Improved exceptions.

  • Added ConvertToTree method to Vertex.

  • Added Render method to Node.

Nov. 2023 - Graph implementation

  • Added an object-oriented graph implementation.

Archive

Attributes

Jan. 2024 - Direct integration into pyTooling

  • The standalone package pyAttributes v2.5.1 has been integrated as pyTooling.Attributes into pyTooling v6.0.0.

Nov. 2021 - Moved to pyTooling

  • Changed repository location from Paebbels/pyAttributes to pyTooling/pyAttributes.

Jan. 2020 - Enhancements

  • GetMethods and GetAttributes adhere to method resolution order (MRO) to find attributes annotated to methods from base-classes.

  • An AttributeHelperMixinclass to ease the usage of attributes on a class’ methods.

Dec. 2019 - Merge from IPCMI

  • Merged latest implementation updates from pyIPCMI.

Oct. 2019 - Initial Release

  • Basic attribute class.

  • Attribute helper classes.

  • Package for handling Python’s argparse as declarative code.

CallByRef

xxx. 20XX - Direct integration into pyTooling

  • The namespace package pyTooling.CallByRef v1.2.1 has been integrated as pyTooling.CallByRef into pyTooling vX.X.X.

Sep. 2020 - Bug Fixes

  • Some bugfixes.

Dec. 2019 - Initial Release

  • Call-by-reference implementation for Python.

CLIAbstraction

Jan. 2024 - Direct integration into pyTooling

  • The namespace package pyTooling.CLIAbstraction v0.4.1 has been integrated as pyTooling.CLIAbstraction into pyTooling v6.0.0.

Feb. 2022 - Major Update

  • Reworked names of Argument classes.

  • Added missing argument formats like PathArgument.

  • Added more unit tests and improved code-coverage.

  • Added doc-strings and extended documentation pages.

Dec. 2021 - Extracted CLIAbstraction from pyIPCMI

  • The CLI abstraction has been extracted from pyIPCMI.

CommonClasses

xxx. 20XX - Direct integration into pyTooling

  • The namespace package pyTooling.CommonClasses v0.2.3 has been integrated as pyTooling.CommonClasses into pyTooling vX.X.X.

Feb. 2021 - Initial Release

  • Added Version class.

Exceptions

xxx. 20XX - Direct integration into pyTooling

  • The namespace package pyTooling.Exceptions v1.1.1 has been integrated as pyTooling.Exceptions into pyTooling vX.X.X.

Sep. 2020 - Unit tests

  • Added unit tests.

Oct. 2019 - Initial Release

  • An initial set of exceptions has been extracted from pyIPCMI.

GenericPath

xxx. 20XX - Direct integration into pyTooling

  • The namespace package pyTooling.GenericPath v0.2.5 has been integrated as pyTooling.GenericPath into pyTooling vX.X.X.

Dec. 2021 - Namespace package

Oct. 2019 - Initial Release

  • An initial set of exceptions has been extracted from pyIPCMI.

MetaClasses

xxx. 20XX - Direct integration into pyTooling

  • The namespace package pyTooling.MetaClasses v1.3.1 has been integrated as pyTooling.MetaClasses into pyTooling vX.X.X.

Aug. 2020 - Overloading

  • First implementation of method overloading via a meta-class.

Dec. 2019 - Initial Release

  • First singleton metaclass to implement the singleton pattern in Python.

Packaging

Dec. 2021 - Direct integration into pyTooling

  • The namespace package pyTooling.Packaging v0.5.0 has been integrated as pyTooling.Packaging into pyTooling vX.X.X.

Nov. 2021 - Major enhancements

  • Reading package information from Python source code via Python’s AST.

  • Support more licenses.

Nov. 2021 - Initial Release

  • Abstract setuptools.setup to ease handling of Python package descriptions.

  • Read long description from README.md

  • Read package dependencies from requirements.txt

  • Construct classifiers

  • Construct URLs for packages hosted on GitHub.

TerminalUI

xxx. 20XX - Direct integration into pyTooling

  • The namespace package pyTooling.TerminalUI v1.5.9 has been integrated as pyTooling.TerminalUI into pyTooling vX.X.X.

Nov. 2021 - Namespace package

Aug. 2020 - Enhancements

  • New ExitOnPrevious*** methods.

Dec. 2019 - Initial Release

  • TerminalUI has been extracted from pyIPCMI.

  • Basic functionality to use a text based application in a terminal window.