From c3cc8df5003984c8648c81b0730665059c1350a3 Mon Sep 17 00:00:00 2001 From: "Afam-Ifediogor, U. Divine" <38317208+definite-d@users.noreply.github.com> Date: Thu, 19 Feb 2026 16:11:00 +0100 Subject: [PATCH 1/6] chore: make `_element_reskinner` var private --- src/reskinner/reskinner.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/reskinner/reskinner.py b/src/reskinner/reskinner.py index 5e5f6f5..261578c 100644 --- a/src/reskinner/reskinner.py +++ b/src/reskinner/reskinner.py @@ -18,7 +18,7 @@ ElementFilter = Callable[[T], bool] # Element reskinner instance -element_reskinner = ElementReskinner() +_element_reskinner = ElementReskinner() def reskin( @@ -169,11 +169,11 @@ def _reskin( else window.element_list() ) - element_reskinner.update_colorizer(colorizer) + _element_reskinner.update_colorizer(colorizer) # Per-element changes happen henceforth for element in whitelist: - element_reskinner.reskin_element(element) + _element_reskinner.reskin_element(element) def toggle_transparency(window: sg.Window) -> None: From d16d04ec4dbfd844e2ff3dd98715b9dfa9fa3d2f Mon Sep 17 00:00:00 2001 From: "Afam-Ifediogor, U. Divine" <38317208+definite-d@users.noreply.github.com> Date: Thu, 19 Feb 2026 16:18:21 +0100 Subject: [PATCH 2/6] fix: remove duplicate tag creation for releases --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 5be5705..c8d6623 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ lint: push-release: @echo "Creating release tag with v prefix..." @CURRENT_VERSION=$$(uv run bumpver show | grep "Current Version:" | cut -d' ' -f3); \ - git tag "v$$CURRENT_VERSION" $$CURRENT_VERSION; \ + git tag "v$$CURRENT_VERSION"; \ echo "Pushing tags to trigger build..."; \ git push origin --tags; \ echo "Creating PR to sync dev to main..."; \ From d71f751c26d856c6cf5da4e48ff888f09e0d843c Mon Sep 17 00:00:00 2001 From: "Afam-Ifediogor, U. Divine" <38317208+definite-d@users.noreply.github.com> Date: Thu, 19 Feb 2026 16:22:31 +0100 Subject: [PATCH 3/6] chore: neaten changelog --- Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index c8d6623..267db59 100644 --- a/Makefile +++ b/Makefile @@ -13,9 +13,10 @@ bump-major: # generate changelog since last version tag changelog: - @echo "## Changelog since $(shell git describe --tags --match 'v[0-9]*.[0-9]*.[0-9]*' --abbrev=0)" && \ + @tag=$$(git describe --tags --match 'v[0-9]*.[0-9]*.[0-9]*' --abbrev=0) && \ + echo "## Changelog since $$tag" && \ echo "" && \ - git log --oneline $(shell git describe --tags --match 'v[0-9]*.[0-9]*.[0-9]*' --abbrev=0)..HEAD | sed 's/^/- /' + git log --oneline $$tag..HEAD | sed 's/^/- /' # run linting checks lint: From ee45d32193f6f6f1c7439ef73eb9d812cfd76d05 Mon Sep 17 00:00:00 2001 From: "Afam-Ifediogor, U. Divine" <38317208+definite-d@users.noreply.github.com> Date: Thu, 19 Feb 2026 17:20:29 +0100 Subject: [PATCH 4/6] feat: clean up `Makefile` properly, using just `lint`, `changelog`, and `release` --- Makefile | 66 +++++++++++++++++++++----------------------------------- 1 file changed, 25 insertions(+), 41 deletions(-) diff --git a/Makefile b/Makefile index 267db59..49fbbd8 100644 --- a/Makefile +++ b/Makefile @@ -1,52 +1,36 @@ -# bump and tag version -bump-patch: - @echo "Updating patch version..." - bumpver update --patch +.PHONY: changelog lint release -bump-minor: - @echo "Updating minor version..." - bumpver update --minor - -bump-major: - @echo "Updating major version..." - bumpver update --major - -# generate changelog since last version tag +# Generate changelog since last version tag changelog: - @tag=$$(git describe --tags --match 'v[0-9]*.[0-9]*.[0-9]*' --abbrev=0) && \ + @tag=$$(git tag --sort=-version:refname --list 'v[0-9]*.[0-9]*.[0-9]*' | head -1) && \ echo "## Changelog since $$tag" && \ echo "" && \ git log --oneline $$tag..HEAD | sed 's/^/- /' -# run linting checks +# Run linting checks lint: @echo "Running linting checks..." - uv run ruff check . --diff + @uv run ruff check . --diff -# push tag and create PR (for when we've already bumped the version) -push-release: - @echo "Creating release tag with v prefix..." - @CURRENT_VERSION=$$(uv run bumpver show | grep "Current Version:" | cut -d' ' -f3); \ - git tag "v$$CURRENT_VERSION"; \ - echo "Pushing tags to trigger build..."; \ - git push origin --tags; \ - echo "Creating PR to sync dev to main..."; \ - if gh pr view --base main --head dev > /dev/null 2>&1; then \ - echo "PR already exists. Skipping PR creation."; \ - else \ - gh pr create --base main --head dev --title "Sync dev to main after release" --body "Automated PR to sync dev branch changes to main after release v$$CURRENT_VERSION\n\n## Changelog\n$$(make changelog)"; \ - fi; \ - echo "Release pushed successfully!" - -# create release with specified level: make release LEVEL=patch|minor|major +# Create a release. Usage: make release LEVEL=patch|minor|major release: lint - @echo "Creating release..." - @echo "Changelog for this release:" && \ - $(MAKE) changelog - @read -p "Continue with release? [y/N] " confirm && \ - if [ "$$confirm" != "y" ] && [ "$$confirm" != "Y" ]; then \ - echo "Release cancelled."; exit 1; \ + @if [ -z "$(LEVEL)" ]; then \ + echo "Error: LEVEL is required. Usage: make release LEVEL=patch|minor|major"; \ + exit 1; \ fi - @echo "Updating $(LEVEL) version..." - bumpver update --$(LEVEL) - $(MAKE) push-release \ No newline at end of file + @CHANGELOG=$$($(MAKE) --no-print-directory changelog) && \ + echo "$$CHANGELOG" && \ + echo "Updating $(LEVEL) version..." && \ + uv run bumpver update --$(LEVEL) && \ + CURRENT_VERSION=$$(uv run bumpver show | grep "Current Version:" | cut -d' ' -f3) && \ + echo "Creating release tag v$$CURRENT_VERSION..." && \ + git tag "v$$CURRENT_VERSION" && \ + git push origin --tags && \ + if gh pr view --base main --head dev > /dev/null 2>&1; then \ + echo "PR already exists, skipping PR creation."; \ + else \ + gh pr create --base main --head dev \ + --title "Sync dev to main after release v$$CURRENT_VERSION" \ + --body "$$(printf '%s' "$$CHANGELOG")"; \ + fi && \ + echo "Release pushed successfully!" \ No newline at end of file From c80f2d78234ee83f853d3fe0c39b78a263958c48 Mon Sep 17 00:00:00 2001 From: "Afam-Ifediogor, U. Divine" <38317208+definite-d@users.noreply.github.com> Date: Thu, 19 Feb 2026 18:04:10 +0100 Subject: [PATCH 5/6] feat: add help target to make file --- Makefile | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 49fbbd8..37bc3d0 100644 --- a/Makefile +++ b/Makefile @@ -1,19 +1,16 @@ -.PHONY: changelog lint release +.PHONY: changelog lint release help -# Generate changelog since last version tag -changelog: +changelog: ## Show changelog since last version tag @tag=$$(git tag --sort=-version:refname --list 'v[0-9]*.[0-9]*.[0-9]*' | head -1) && \ echo "## Changelog since $$tag" && \ echo "" && \ git log --oneline $$tag..HEAD | sed 's/^/- /' -# Run linting checks -lint: +lint: ## Run linting checks @echo "Running linting checks..." @uv run ruff check . --diff -# Create a release. Usage: make release LEVEL=patch|minor|major -release: lint +release: lint ## Create a release. Usage: make release LEVEL=patch|minor|major @if [ -z "$(LEVEL)" ]; then \ echo "Error: LEVEL is required. Usage: make release LEVEL=patch|minor|major"; \ exit 1; \ @@ -33,4 +30,10 @@ release: lint --title "Sync dev to main after release v$$CURRENT_VERSION" \ --body "$$(printf '%s' "$$CHANGELOG")"; \ fi && \ - echo "Release pushed successfully!" \ No newline at end of file + echo "Release pushed successfully!" + +help: ## Show this help + @grep -E '^[a-zA-Z_-]+:.*##' $(MAKEFILE_LIST) | \ + awk 'BEGIN {FS = ":.*##"}; {printf " %-20s %s\n", $$1, $$2}' + +.DEFAULT_GOAL := help From bbc416e076e6082dfb7edf14b9f9607c374fba44 Mon Sep 17 00:00:00 2001 From: "Afam-Ifediogor, U. Divine" <38317208+definite-d@users.noreply.github.com> Date: Thu, 19 Feb 2026 18:04:28 +0100 Subject: [PATCH 6/6] bump version 4.2.1 -> 4.2.2 --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index af29f0d..29dacce 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ name = "reskinner" requires-python = ">=3.7" description = "Instantaneous theme changing for PySimpleGUI and FreeSimpleGUI windows." -version = "4.2.1" +version = "4.2.2" authors = [{ name = "Divine U. Afam-Ifediogor" }] license = { file = "LICENSE" } readme = "./res/DESCRIPTION.md" @@ -88,7 +88,7 @@ target-version = "py37" line-length = 88 [tool.bumpver] -current_version = "4.2.1" +current_version = "4.2.2" version_pattern = "MAJOR.MINOR.PATCH" commit_message = "bump version {old_version} -> {new_version}" tag_message = "{new_version}"