Skip to content

fix(python-sdk): export NotSupported at package root#1000

Open
realfishsam wants to merge 1 commit into
mainfrom
fix/sdk-error-parity-small
Open

fix(python-sdk): export NotSupported at package root#1000
realfishsam wants to merge 1 commit into
mainfrom
fix/sdk-error-parity-small

Conversation

@realfishsam

Copy link
Copy Markdown
Contributor

Summary

  • Re-export NotSupported from the Python package root
  • Include NotSupported in pmxt.__all__ for parity with the TypeScript SDK package exports

Fixes #985

Test Plan

  • python3 -m py_compile sdks/python/pmxt/__init__.py sdks/python/pmxt/errors.py
  • Static export smoke: verified NotSupported import and __all__ entries in sdks/python/pmxt/__init__.py
  • Runtime import pmxt is blocked in this checkout by missing generated pmxt_internal, so no package import smoke was run.

@realfishsam

Copy link
Copy Markdown
Contributor Author

Independent validation for the PR-scoped change passed: python3 -m py_compile sdks/python/pmxt/__init__.py sdks/python/pmxt/errors.py and static export checks for NotSupported import/__all__. Current red generated-client/API-reference checks are the repo-wide hosted-client generator drift (running the generator removes hosted-mode client helpers unrelated to this PR), so I did not commit that broad generated drift into this focused fix.

@realfishsam

Copy link
Copy Markdown
Contributor Author

PR Review: PASS (NOT VERIFIED)

What This Does

Exports NotSupported from the Python package root so users can import it with from pmxt import NotSupported. This aligns package-root exports with the SDK error surface.

Blast Radius

Python SDK package exports in sdks/python/pmxt/__init__.py only.

Consumer Verification

Before (base branch):
NotSupported existed in pmxt.errors but was not imported into package root or listed in __all__.

After (PR branch):
sdks/python/pmxt/__init__.py imports NotSupported and includes it in __all__. Changed Python syntax passes py_compile.

Test Results

  • Build: PASS (npm run build --workspace=pmxt-core)
  • Core unit tests: PASS (27 suites / 652 tests passed; 1 suite / 3 tests skipped)
  • Python syntax: PASS (py_compile on changed file)
  • Full npm test: FAIL in this checkout during Python SDK collection because pmxt_internal / eth_account are not available.
  • Server starts: N/A (package export only)
  • E2E smoke: Not run because importing the package root in this checkout is blocked by missing generated pmxt_internal

Findings

No blocking findings.

PMXT Pipeline Check

  • Field propagation (3-layer): N/A
  • OpenAPI sync: N/A
  • Financial precision: N/A
  • Type safety: OK
  • Auth safety: N/A

Semver Impact

patch -- additive Python export.

Risk

Runtime import could not be executed in this checkout due missing generated Python package, but the diff is a direct import/export addition.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

SDK drift: NotSupported error class is exported from TypeScript SDK but absent from Python __init__.py exports

1 participant