lib-cli-exit-tools 1.0.0__tar.gz → 1.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/.github/workflows/release.yml +3 -0
  2. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/CHANGELOG.md +4 -0
  3. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/Makefile +18 -2
  4. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/PKG-INFO +1 -1
  5. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/packaging/brew/Formula/lib-cli-exit-tools.rb +1 -1
  6. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/packaging/conda/recipe/meta.yaml +1 -1
  7. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/packaging/nix/flake.nix +2 -2
  8. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/pyproject.toml +1 -1
  9. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/.env.example +0 -0
  10. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/.github/workflows/ci.yml +0 -0
  11. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/.github/workflows/codeql.yml +0 -0
  12. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/.gitignore +0 -0
  13. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/AGENTS.md +0 -0
  14. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/CONTRIBUTING.md +0 -0
  15. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/LICENSE +0 -0
  16. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/README.md +0 -0
  17. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/codecov.yml +0 -0
  18. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/notebooks/Quickstart.ipynb +0 -0
  19. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/packaging/README.md +0 -0
  20. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/src/lib_cli_exit_tools/__init__.py +0 -0
  21. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/src/lib_cli_exit_tools/__init__conf__.py +0 -0
  22. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/src/lib_cli_exit_tools/__main__.py +0 -0
  23. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/src/lib_cli_exit_tools/cli.py +0 -0
  24. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/src/lib_cli_exit_tools/lib_cli_exit_tools.py +0 -0
  25. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/src/lib_cli_exit_tools/py.typed +0 -0
  26. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/tests/test_cli.py +0 -0
  27. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/tests/test_cli_extra.py +0 -0
  28. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/tests/test_exit_tools.py +0 -0
  29. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/tests/test_lib_extra.py +0 -0
  30. {lib_cli_exit_tools-1.0.0 → lib_cli_exit_tools-1.0.1}/tools/bump_version.py +0 -0
@@ -3,6 +3,9 @@ name: Release
3
3
  on:
4
4
  release:
5
5
  types: [published]
6
+ push:
7
+ tags:
8
+ - 'v*'
6
9
  workflow_dispatch: {}
7
10
 
8
11
  jobs:
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.0.1] - 2025-09-15
4
+
5
+ - _Describe changes here._
6
+
3
7
  ## [1.0.0] - 2025-09-15
4
8
 
5
9
  - public release
@@ -196,9 +196,12 @@ build: ## Build wheel/sdist and attempt conda, brew, and nix builds (auto-instal
196
196
  if [ -n "$$NIX" ]; then $$NIX build $(NIX_FLAKE)#default -L || true; fi; \
197
197
  fi
198
198
 
199
- release: ## Create and push tag vX.Y.Z from pyproject, then sync packaging and commit
199
+ release: ## Create and push tag vX.Y.Z from pyproject, create GitHub release (if gh present), then sync packaging
200
200
  @set -euo pipefail; IFS=$$'\n\t'; \
201
- VERSION=$$(grep -E '^version\s*=\s*"' pyproject.toml | sed -E 's/.*"([^"]+)".*/\1/'); \
201
+ VERSION=$$($(PY) -c "import re, pathlib, sys; t=pathlib.Path('pyproject.toml').read_text(encoding='utf-8'); m=re.search(r'(?m)^version\\s*=\\s*\"([0-9]+(?:\\.[0-9]+){2})\"', t); sys.stdout.write(m.group(1) if m else '')"); \
202
+ VERSION=$$(printf '%s' "$$VERSION" | tr -d '\r\n'); \
203
+ if [ -z "$$VERSION" ]; then echo "[release] Could not read version from pyproject.toml"; exit 1; fi; \
204
+ case "$$VERSION" in *[!0-9.]*|*.*.*.*) echo "[release] Unexpected version format: '$$VERSION' (expect X.Y.Z)"; exit 1;; esac; \
202
205
  echo "[release] Target version $$VERSION"; \
203
206
  # Ensure clean working tree
204
207
  if ! git diff --quiet || ! git diff --cached --quiet; then \
@@ -206,6 +209,8 @@ release: ## Create and push tag vX.Y.Z from pyproject, then sync packaging and c
206
209
  fi; \
207
210
  # Run verification
208
211
  $(MAKE) test; \
212
+ # Remove stray local 'v' tag if present (past mistakes)
213
+ git tag -d v >/dev/null 2>&1 || true; \
209
214
  BRANCH=$$(git rev-parse --abbrev-ref HEAD); \
210
215
  echo "[release] Pushing branch $$BRANCH to $(REMOTE)"; \
211
216
  git push $(REMOTE) $$BRANCH; \
@@ -217,6 +222,17 @@ release: ## Create and push tag vX.Y.Z from pyproject, then sync packaging and c
217
222
  fi; \
218
223
  echo "[release] Pushing tag v$$VERSION"; \
219
224
  git push $(REMOTE) "v$$VERSION"; \
225
+ # Create GitHub release if gh CLI is available
226
+ if command -v gh >/dev/null 2>&1; then \
227
+ if ! gh release view "v$$VERSION" >/dev/null 2>&1; then \
228
+ echo "[release] Creating GitHub release v$$VERSION"; \
229
+ gh release create "v$$VERSION" -t "v$$VERSION" -n "Release v$$VERSION" || true; \
230
+ else \
231
+ echo "[release] GitHub release v$$VERSION already exists"; \
232
+ fi; \
233
+ else \
234
+ echo "[release] gh CLI not found; skipping GitHub release creation"; \
235
+ fi; \
220
236
  # Try to sync packaging (tarball hashes) a few times to tolerate propagation delay
221
237
  for i in 1 2 3 4 5; do \
222
238
  echo "[release] Sync packaging attempt $$i"; \
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lib_cli_exit_tools
3
- Version: 1.0.0
3
+ Version: 1.0.1
4
4
  Summary: CLI exit handling helpers: clean signals, exit codes, and error printing
5
5
  Project-URL: Homepage, https://github.com/bitranox/lib_cli_exit_tools
6
6
  Project-URL: Repository, https://github.com/bitranox/lib_cli_exit_tools.git
@@ -3,7 +3,7 @@ class LibCliExitTools < Formula
3
3
 
4
4
  desc "CLI exit handling helpers: clean signals, exit codes, and error printing"
5
5
  homepage "https://github.com/bitranox/lib_cli_exit_tools"
6
- url "https://github.com/bitranox/lib_cli_exit_tools/archive/refs/tags/v1.0.0.tar.gz"
6
+ url "https://github.com/bitranox/lib_cli_exit_tools/archive/refs/tags/v1.0.1.tar.gz"
7
7
  sha256 "<fill-me>"
8
8
  license "MIT"
9
9
 
@@ -1,5 +1,5 @@
1
1
  {% set name = "lib_cli_exit_tools" %}
2
- {% set version = "1.0.0" %}
2
+ {% set version = "1.0.1" %}
3
3
 
4
4
  package:
5
5
  name: {{ name|lower }}
@@ -35,7 +35,7 @@
35
35
  {
36
36
  packages.default = pypkgs.buildPythonPackage {
37
37
  pname = "lib_cli_exit_tools";
38
- version = "1.0.0";
38
+ version = "1.0.1";
39
39
  pyproject = true;
40
40
  # Build from the repository root (two levels up from packaging/nix)
41
41
  src = ../..;
@@ -43,7 +43,7 @@
43
43
  # src = pkgs.fetchFromGitHub {
44
44
  # owner = "bitranox";
45
45
  # repo = "lib_cli_exit_tools";
46
- # rev = "v1.0.0";
46
+ # rev = "v1.0.1";
47
47
  # sha256 = "<fill-me>";
48
48
  # };
49
49
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "lib_cli_exit_tools"
3
- version = "1.0.0"
3
+ version = "1.0.1"
4
4
  description = "CLI exit handling helpers: clean signals, exit codes, and error printing"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"