diff --git a/.bumpversion.cfg b/.bumpversion.cfg new file mode 100644 index 0000000..f2a6dc8 --- /dev/null +++ b/.bumpversion.cfg @@ -0,0 +1,16 @@ +[bumpversion] +current_version = 0.2.2 +commit = True +tag = True + +[bumpversion:file:pyproject.toml] +search = version = "{current_version}" +replace = version = "{new_version}" + +[bumpversion:file:pureshell/__init__.py] +search = __version__ = "{current_version}" +replace = __version__ = "{new_version}" + +[bumpversion:file:docs/conf.py] +search = release = "{current_version}" +replace = release = "{new_version}" diff --git a/docs/conf.py b/docs/conf.py index 43615e7..c6c32f0 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -3,7 +3,7 @@ project = "pureshell" copyright = "2025, Dane Jones" author = "Dane Jones" -release = "0.1.0" +release = "0.2.2" # Synced for bump2version extensions = [ "sphinx.ext.autodoc", diff --git a/pureshell/__init__.py b/pureshell/__init__.py index 6470e9a..cec52b6 100644 --- a/pureshell/__init__.py +++ b/pureshell/__init__.py @@ -2,6 +2,9 @@ # __init__.py # pylint: disable=line-too-long,protected-access + +__version__ = "0.2.2" # Synced for bump2version + from typing import Any, Callable, Generic, TypeVar, Union, cast, overload # ============================================================================== @@ -251,6 +254,3 @@ def __init_subclass__(cls, **kwargs: Any) -> None: # Added type hints f"Methods in StatefulEntity subclasses must be decorated with " f"@shell_method or @side_effect_method, or be properties." ) - - -__version__ = "0.2.0" diff --git a/pyproject.toml b/pyproject.toml index 640f699..cfa72e2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pureshell" -version = "0.2.0" +version = "0.2.2" description = "PureShell is a Python library for the \"Functional Core, Stateful Shell\" architectural pattern. It helps you write business logic as pure functions in Ruleset classes and manage state with StatefulEntity objects. This makes code more testable, maintainable, and understandable. Features include @shell_method for linking logic, @ruleset_provider for default behavior, and dynamic Ruleset injection for runtime flexibility (e.g., strategy pattern, mock testing)." authors = [ { name="Dane Jones", email="danerjones@gmail.com" } diff --git a/requirements-dev.txt b/requirements-dev.txt index f82fdbf..8d7d11b 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -12,3 +12,6 @@ markdown-it-py # Used to parse the readme to test the code examples # Required for the game_example pygame + +# Version management +bump2version