From 26283af642a3251b19cb728db862bf9664b67803 Mon Sep 17 00:00:00 2001 From: Dane Jones Date: Sun, 15 Jun 2025 14:02:31 -0400 Subject: [PATCH 1/3] Add bumpversion configuration and update version to 0.2.1 --- .bumpversion.cfg | 16 ++++++++++++++++ pureshell/__init__.py | 6 +++--- pyproject.toml | 2 +- requirements-dev.txt | 3 +++ 4 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 .bumpversion.cfg diff --git a/.bumpversion.cfg b/.bumpversion.cfg new file mode 100644 index 0000000..d421613 --- /dev/null +++ b/.bumpversion.cfg @@ -0,0 +1,16 @@ +[bumpversion] +current_version = "0.2.1" +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/pureshell/__init__.py b/pureshell/__init__.py index 6470e9a..ab6bf68 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" # Added 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..0f7a012 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.1" 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 From 04e6ebc817bb2ed10792bf85b8ddbbef48159023 Mon Sep 17 00:00:00 2001 From: Dane Jones Date: Sun, 15 Jun 2025 14:05:11 -0400 Subject: [PATCH 2/3] Sync version number to 0.2.1 in configuration and __init__.py for bump2version --- docs/conf.py | 2 +- pureshell/__init__.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 43615e7..4f84c27 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.1" # Synced for bump2version extensions = [ "sphinx.ext.autodoc", diff --git a/pureshell/__init__.py b/pureshell/__init__.py index ab6bf68..3a01688 100644 --- a/pureshell/__init__.py +++ b/pureshell/__init__.py @@ -3,7 +3,7 @@ # __init__.py # pylint: disable=line-too-long,protected-access -__version__ = "0.2.2" # Added for bump2version +__version__ = "0.2.1" # Synced for bump2version from typing import Any, Callable, Generic, TypeVar, Union, cast, overload From 291b0d6e3bbb824a124db2d83636aa664c172f09 Mon Sep 17 00:00:00 2001 From: Dane Jones Date: Sun, 15 Jun 2025 14:29:01 -0400 Subject: [PATCH 3/3] =?UTF-8?q?Bump=20version:=20"0.2.1"=20=E2=86=92=200.2?= =?UTF-8?q?.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .bumpversion.cfg | 2 +- docs/conf.py | 2 +- pureshell/__init__.py | 2 +- pyproject.toml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index d421613..f2a6dc8 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = "0.2.1" +current_version = 0.2.2 commit = True tag = True diff --git a/docs/conf.py b/docs/conf.py index 4f84c27..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.2.1" # Synced for bump2version +release = "0.2.2" # Synced for bump2version extensions = [ "sphinx.ext.autodoc", diff --git a/pureshell/__init__.py b/pureshell/__init__.py index 3a01688..cec52b6 100644 --- a/pureshell/__init__.py +++ b/pureshell/__init__.py @@ -3,7 +3,7 @@ # __init__.py # pylint: disable=line-too-long,protected-access -__version__ = "0.2.1" # Synced for bump2version +__version__ = "0.2.2" # Synced for bump2version from typing import Any, Callable, Generic, TypeVar, Union, cast, overload diff --git a/pyproject.toml b/pyproject.toml index 0f7a012..cfa72e2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pureshell" -version = "0.2.1" +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" }