solvapay 0.1.0.dev4__tar.gz → 0.1.0.dev5__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 (64) hide show
  1. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/PKG-INFO +1 -1
  2. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/pyproject.toml +1 -1
  3. solvapay-0.1.0.dev4/scripts/preview_version.py +0 -68
  4. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/.gitignore +0 -0
  5. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/AGENTS.md +0 -0
  6. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/README.md +0 -0
  7. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance.lock +0 -0
  8. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance_runner/_agent_identity.py +0 -0
  9. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance_runner/_api_answer.py +0 -0
  10. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance_runner/agent_calls_runner.py +0 -0
  11. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance_runner/conformance_agent_mcp.py +0 -0
  12. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance_runner/conformance_merchant_sign_in.py +0 -0
  13. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/conformance_runner/test_conformance.py +0 -0
  14. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/package.json +0 -0
  15. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/scripts/check_version.py +0 -0
  16. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/scripts/currency_prefixes.mjs +0 -0
  17. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/scripts/generate_client.py +0 -0
  18. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/scripts/pin_conformance.py +0 -0
  19. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/scripts/sync_widget.py +0 -0
  20. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/scripts/tax_ids.mjs +0 -0
  21. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/__init__.py +0 -0
  22. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_currencies.py +0 -0
  23. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_generated/__init__.py +0 -0
  24. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_generated/models.py +0 -0
  25. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_generated/operations.py +0 -0
  26. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_http.py +0 -0
  27. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_js.py +0 -0
  28. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/_tax_ids.py +0 -0
  29. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/agents/__init__.py +0 -0
  30. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/agents/calls.py +0 -0
  31. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/agents/identity.py +0 -0
  32. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/agents/mcp.py +0 -0
  33. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/agents/oauth.py +0 -0
  34. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/business_details.py +0 -0
  35. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/client.py +0 -0
  36. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/errors.py +0 -0
  37. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/__init__.py +0 -0
  38. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/app.py +0 -0
  39. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/auth.py +0 -0
  40. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/bootstrap.py +0 -0
  41. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/intent.py +0 -0
  42. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/mcp-app.html +0 -0
  43. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/narrate.py +0 -0
  44. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/response.py +0 -0
  45. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/server.py +0 -0
  46. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/tools.py +0 -0
  47. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/mcp/transport.py +0 -0
  48. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/money.py +0 -0
  49. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/paywall/__init__.py +0 -0
  50. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/paywall/decide.py +0 -0
  51. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/paywall/gate.py +0 -0
  52. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/paywall/state.py +0 -0
  53. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/pricing.py +0 -0
  54. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/py.typed +0 -0
  55. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/solvapay.py +0 -0
  56. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/src/solvapay/webhooks.py +0 -0
  57. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_agents.py +0 -0
  58. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_agents_mcp.py +0 -0
  59. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_client.py +0 -0
  60. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_mcp.py +0 -0
  61. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_mcp_app.py +0 -0
  62. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_mcp_intent.py +0 -0
  63. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/tests/test_paywall.py +0 -0
  64. {solvapay-0.1.0.dev4 → solvapay-0.1.0.dev5}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: solvapay
3
- Version: 0.1.0.dev4
3
+ Version: 0.1.0.dev5
4
4
  Summary: SolvaPay for Python: paywalls, usage billing, webhooks and paid MCP tools.
5
5
  Project-URL: Homepage, https://solvapay.com
6
6
  Project-URL: Documentation, https://docs.solvapay.com
@@ -6,7 +6,7 @@ build-backend = "hatchling.build"
6
6
  name = "solvapay"
7
7
  # Set from python/package.json by `pnpm changeset:version`; CI checks they match.
8
8
  # Python has its own version line, separate from the TypeScript packages.
9
- version = "0.1.0.dev4"
9
+ version = "0.1.0.dev5"
10
10
  description = "SolvaPay for Python: paywalls, usage billing, webhooks and paid MCP tools."
11
11
  readme = "README.md"
12
12
  license = "MIT"
@@ -1,68 +0,0 @@
1
- """Prints the version of a dev preview: the next release, as a PEP 440 dev build.
2
-
3
- The next release is python/package.json's version bumped by the largest pending
4
- changeset that names @solvapay/python, the same bump `changeset version` will
5
- make. With none pending it is the next patch, so a preview made after a release
6
- still sorts after it. A preview of 0.1.0 is 0.1.0.dev<build>, which sorts before
7
- 0.1.0 and after every earlier release, and `pip install solvapay` without
8
- `--pre` never picks it.
9
-
10
- Run from python/:
11
- uv run python scripts/preview_version.py <build number>
12
- """
13
-
14
- from __future__ import annotations
15
-
16
- import json
17
- import re
18
- import sys
19
- from pathlib import Path
20
-
21
- ROOT = Path(__file__).resolve().parent.parent
22
- VERSION_SOURCE = ROOT / "package.json"
23
- CHANGESETS = ROOT.parent / ".changeset"
24
- PACKAGE = "@solvapay/python"
25
- BUMPS = ("patch", "minor", "major")
26
- RELEASE = re.compile(r"^(\d+)\.(\d+)\.(\d+)$")
27
- ENTRY = re.compile(r"""^\s*['"]?([^'":]+)['"]?\s*:\s*(patch|minor|major)\s*$""")
28
-
29
-
30
- def pending_bump() -> str | None:
31
- """The largest bump a pending changeset gives @solvapay/python, if any."""
32
- largest: str | None = None
33
- for path in sorted(CHANGESETS.glob("*.md")):
34
- if path.name == "README.md":
35
- continue
36
- parts = path.read_text().split("---")
37
- if len(parts) < 3:
38
- raise SystemExit(f"{path}: no changeset frontmatter")
39
- for line in parts[1].splitlines():
40
- match = ENTRY.match(line)
41
- if match and match.group(1) == PACKAGE:
42
- bump = match.group(2)
43
- if largest is None or BUMPS.index(bump) > BUMPS.index(largest):
44
- largest = bump
45
- return largest
46
-
47
-
48
- def next_release(current: str, bump: str) -> str:
49
- match = RELEASE.match(current)
50
- if not match:
51
- raise SystemExit(f"python/package.json version {current!r} is not MAJOR.MINOR.PATCH")
52
- major, minor, patch = (int(part) for part in match.groups())
53
- if bump == "major":
54
- return f"{major + 1}.0.0"
55
- if bump == "minor":
56
- return f"{major}.{minor + 1}.0"
57
- return f"{major}.{minor}.{patch + 1}"
58
-
59
-
60
- def main() -> None:
61
- if len(sys.argv) != 2 or not sys.argv[1].isdigit():
62
- raise SystemExit("usage: preview_version.py <build number>")
63
- current = json.loads(VERSION_SOURCE.read_text())["version"]
64
- print(f"{next_release(current, pending_bump() or 'patch')}.dev{sys.argv[1]}")
65
-
66
-
67
- if __name__ == "__main__":
68
- main()
File without changes
File without changes
File without changes
File without changes