macp-sdk-python 0.5.0__tar.gz → 0.6.0__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 (39) hide show
  1. {macp_sdk_python-0.5.0/src/macp_sdk_python.egg-info → macp_sdk_python-0.6.0}/PKG-INFO +6 -7
  2. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/README.md +3 -2
  3. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/pyproject.toml +39 -6
  4. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0/src/macp_sdk_python.egg-info}/PKG-INFO +6 -7
  5. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk_python.egg-info/requires.txt +2 -4
  6. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/LICENSE +0 -0
  7. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/setup.cfg +0 -0
  8. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/__init__.py +0 -0
  9. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/_logging.py +0 -0
  10. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/__init__.py +0 -0
  11. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/cancel_callback.py +0 -0
  12. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/dispatcher.py +0 -0
  13. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/participant.py +0 -0
  14. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/runner.py +0 -0
  15. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/strategies.py +0 -0
  16. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/transports.py +0 -0
  17. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/agent/types.py +0 -0
  18. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/auth.py +0 -0
  19. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/base_projection.py +0 -0
  20. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/base_session.py +0 -0
  21. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/client.py +0 -0
  22. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/constants.py +0 -0
  23. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/decision.py +0 -0
  24. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/envelope.py +0 -0
  25. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/errors.py +0 -0
  26. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/handoff.py +0 -0
  27. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/policy.py +0 -0
  28. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/projections.py +0 -0
  29. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/proposal.py +0 -0
  30. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/proto_registry.py +0 -0
  31. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/py.typed +0 -0
  32. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/quorum.py +0 -0
  33. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/retry.py +0 -0
  34. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/task.py +0 -0
  35. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/validation.py +0 -0
  36. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk/watchers.py +0 -0
  37. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk_python.egg-info/SOURCES.txt +0 -0
  38. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk_python.egg-info/dependency_links.txt +0 -0
  39. {macp_sdk_python-0.5.0 → macp_sdk_python-0.6.0}/src/macp_sdk_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: macp-sdk-python
3
- Version: 0.5.0
3
+ Version: 0.6.0
4
4
  Summary: Python SDK for the MACP Rust runtime
5
5
  Author-email: Multi-Agent Coordination Protocol <macp@multiagentcoordinationprotocol.org>
6
6
  License: Apache-2.0
@@ -20,13 +20,11 @@ Classifier: Topic :: Software Development :: Libraries
20
20
  Requires-Python: >=3.11
21
21
  Description-Content-Type: text/markdown
22
22
  License-File: LICENSE
23
- Requires-Dist: grpcio>=1.82.0
23
+ Requires-Dist: grpcio>=1.82.0rc2
24
24
  Requires-Dist: protobuf>=7.35.0
25
- Requires-Dist: macp-proto<0.2.0,>=0.1.6
25
+ Requires-Dist: macp-proto<0.1.9,>=0.1.6
26
26
  Provides-Extra: dev
27
- Requires-Dist: grpcio-tools>=1.74.0; extra == "dev"
28
27
  Requires-Dist: pytest>=8.0; extra == "dev"
29
- Requires-Dist: pytest-asyncio>=0.24; extra == "dev"
30
28
  Requires-Dist: pytest-cov>=5.0; extra == "dev"
31
29
  Requires-Dist: mypy>=1.10; extra == "dev"
32
30
  Requires-Dist: ruff>=0.5; extra == "dev"
@@ -132,9 +130,10 @@ make setup # pip install -e ".[dev,docs]"
132
130
  make lint # ruff check
133
131
  make fmt # ruff format
134
132
  make typecheck # mypy strict
135
- make test # unit tests
133
+ make test # unit tests + coverage gate (85% branch, from pyproject)
134
+ make test-integration # integration tests (auto-skip without a running runtime)
136
135
  make test-all # lint + typecheck + all tests
137
- make coverage # coverage report
136
+ make coverage # HTML + terminal coverage report
138
137
 
139
138
  # Build
140
139
  make build # sdist + wheel
@@ -92,9 +92,10 @@ make setup # pip install -e ".[dev,docs]"
92
92
  make lint # ruff check
93
93
  make fmt # ruff format
94
94
  make typecheck # mypy strict
95
- make test # unit tests
95
+ make test # unit tests + coverage gate (85% branch, from pyproject)
96
+ make test-integration # integration tests (auto-skip without a running runtime)
96
97
  make test-all # lint + typecheck + all tests
97
- make coverage # coverage report
98
+ make coverage # HTML + terminal coverage report
98
99
 
99
100
  # Build
100
101
  make build # sdist + wheel
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "macp-sdk-python"
7
- version = "0.5.0"
7
+ version = "0.6.0"
8
8
  description = "Python SDK for the MACP Rust runtime"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -31,7 +31,14 @@ dependencies = [
31
31
  # macp-proto's own (looser) METADATA. This is the consumer-visible bump in
32
32
  # SDK 0.5.0 — deployments pinned to protobuf 6.x / grpcio < 1.82 cannot
33
33
  # straddle it.
34
- "grpcio>=1.82.0",
34
+ # grpcio 1.82.0 (stable) was YANKED from PyPI with no newer stable published
35
+ # yet, which made a ">=1.82.0" floor unsatisfiable in fresh environments
36
+ # (pip skips yanked versions when resolving ranges). The rc2 floor keeps the
37
+ # gencode's GRPC_GENERATED_VERSION=1.82.0 import check satisfied (verified:
38
+ # macp.v1.*_pb2_grpc imports cleanly under 1.82.0rc2) and, per PEP 440,
39
+ # a pre-release in the specifier lets pip resolve it; pip will prefer the
40
+ # next stable >= 1.82.1 as soon as one exists. Revisit then.
41
+ "grpcio>=1.82.0rc2",
35
42
  "protobuf>=7.35.0",
36
43
  # Requires 0.1.6+ for the runtime v0.5.0 wire surface referenced by the SDK:
37
44
  # SessionStartPayload.max_suspend_ms (0.1.5), HandoffAcceptPayload.implicit
@@ -40,7 +47,12 @@ dependencies = [
40
47
  # Retains the 0.1.3 surface (suspend/cancel/supersede, subscribe_session_id/
41
48
  # after_sequence, context_id/extensions). See docs/contributing.md
42
49
  # "Bumping macp-proto".
43
- "macp-proto>=0.1.6,<0.2.0",
50
+ # Capped below 0.1.8: that release's METADATA floor is "grpcio>=1.82.0",
51
+ # which is unsatisfiable while grpcio 1.82.0 stable is yanked (see the
52
+ # grpcio comment above) — PEP 440 sorts 1.82.0rc2 below 1.82.0, so no
53
+ # candidate exists. 0.1.6/0.1.7 declare "grpcio>=1.74.0" and resolve fine.
54
+ # Re-widen to <0.2.0 once grpcio publishes a stable >= 1.82.1.
55
+ "macp-proto>=0.1.6,<0.1.9",
44
56
  ]
45
57
 
46
58
  [project.urls]
@@ -51,10 +63,12 @@ Changelog = "https://github.com/multiagentcoordinationprotocol/macp-sdk-python/b
51
63
  "Bug Tracker" = "https://github.com/multiagentcoordinationprotocol/macp-sdk-python/issues"
52
64
 
53
65
  [project.optional-dependencies]
66
+ # grpcio-tools was dropped from dev: this repo has no proto-generation step
67
+ # (bindings come from the macp-proto package; generation lives in the spec
68
+ # repo), and every installable grpcio-tools stable caps protobuf<7.0.0,
69
+ # which conflicts with the protobuf>=7.35.0 floor above.
54
70
  dev = [
55
- "grpcio-tools>=1.74.0", # only needed for proto-python package publishing
56
71
  "pytest>=8.0",
57
- "pytest-asyncio>=0.24",
58
72
  "pytest-cov>=5.0",
59
73
  "mypy>=1.10",
60
74
  "ruff>=0.5",
@@ -133,8 +147,27 @@ ignore_missing_imports = true
133
147
 
134
148
  [tool.pytest.ini_options]
135
149
  testpaths = ["tests"]
136
- asyncio_mode = "auto"
150
+ addopts = "--strict-markers"
137
151
  markers = [
138
152
  "integration: requires running MACP runtime",
139
153
  "conformance: replays conformance fixtures against runtime",
140
154
  ]
155
+ filterwarnings = [
156
+ "error",
157
+ # Unit tests build real MacpClient objects against localhost:0 with mocked
158
+ # stubs and rely on GC to reap the never-connected socket; the resulting
159
+ # "unclosed socket" ResourceWarning fires inside socket.__del__ and would
160
+ # otherwise escalate to PytestUnraisableExceptionWarning under -W error.
161
+ "ignore::ResourceWarning",
162
+ ]
163
+
164
+ # Coverage gate: single source of truth for `make test`, `make coverage`, and
165
+ # CI (all invoke pytest with a bare --cov and inherit source/branch/fail_under
166
+ # from here).
167
+ [tool.coverage.run]
168
+ source = ["macp_sdk"]
169
+ branch = true
170
+
171
+ [tool.coverage.report]
172
+ fail_under = 85
173
+ show_missing = true
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: macp-sdk-python
3
- Version: 0.5.0
3
+ Version: 0.6.0
4
4
  Summary: Python SDK for the MACP Rust runtime
5
5
  Author-email: Multi-Agent Coordination Protocol <macp@multiagentcoordinationprotocol.org>
6
6
  License: Apache-2.0
@@ -20,13 +20,11 @@ Classifier: Topic :: Software Development :: Libraries
20
20
  Requires-Python: >=3.11
21
21
  Description-Content-Type: text/markdown
22
22
  License-File: LICENSE
23
- Requires-Dist: grpcio>=1.82.0
23
+ Requires-Dist: grpcio>=1.82.0rc2
24
24
  Requires-Dist: protobuf>=7.35.0
25
- Requires-Dist: macp-proto<0.2.0,>=0.1.6
25
+ Requires-Dist: macp-proto<0.1.9,>=0.1.6
26
26
  Provides-Extra: dev
27
- Requires-Dist: grpcio-tools>=1.74.0; extra == "dev"
28
27
  Requires-Dist: pytest>=8.0; extra == "dev"
29
- Requires-Dist: pytest-asyncio>=0.24; extra == "dev"
30
28
  Requires-Dist: pytest-cov>=5.0; extra == "dev"
31
29
  Requires-Dist: mypy>=1.10; extra == "dev"
32
30
  Requires-Dist: ruff>=0.5; extra == "dev"
@@ -132,9 +130,10 @@ make setup # pip install -e ".[dev,docs]"
132
130
  make lint # ruff check
133
131
  make fmt # ruff format
134
132
  make typecheck # mypy strict
135
- make test # unit tests
133
+ make test # unit tests + coverage gate (85% branch, from pyproject)
134
+ make test-integration # integration tests (auto-skip without a running runtime)
136
135
  make test-all # lint + typecheck + all tests
137
- make coverage # coverage report
136
+ make coverage # HTML + terminal coverage report
138
137
 
139
138
  # Build
140
139
  make build # sdist + wheel
@@ -1,11 +1,9 @@
1
- grpcio>=1.82.0
1
+ grpcio>=1.82.0rc2
2
2
  protobuf>=7.35.0
3
- macp-proto<0.2.0,>=0.1.6
3
+ macp-proto<0.1.9,>=0.1.6
4
4
 
5
5
  [dev]
6
- grpcio-tools>=1.74.0
7
6
  pytest>=8.0
8
- pytest-asyncio>=0.24
9
7
  pytest-cov>=5.0
10
8
  mypy>=1.10
11
9
  ruff>=0.5
File without changes