Skip to content

feat: prepare Python SDK 1.1.0 release#35

Merged
barnett merged 6 commits into
masterfrom
cursor/python-sdk-release-prep-314d
May 26, 2026
Merged

feat: prepare Python SDK 1.1.0 release#35
barnett merged 6 commits into
masterfrom
cursor/python-sdk-release-prep-314d

Conversation

@barnett
Copy link
Copy Markdown
Member

@barnett barnett commented May 24, 2026

Fixes #30

Fixes #33

Prepare the Python SDK for a 1.1.0 release.

Summary

  • Bump trolleyhq package version to 1.1.0 and require requests>=2.32.0.
  • Add generic authenticated Gateway.request / Client.request for currently untyped API endpoints.
  • Add Trust verification gateway helpers and trust alias.
  • Add documented endpoint aliases/path construction so SDK surface audit can cover all public API operations.
  • Preserve the public method names and argument order introduced/used by this PR while adding aliases/options for docs coverage.
  • Add documented response attributes for payment, offline payment, recipient account, and invoice payment models.
  • Remove unused recipient ssn and placeOfBirth model fields.
  • Add optional batch_id support to invoice_payment.create, preserving the existing list input used in this PR.
  • Update legacy unit tests to use the current trolley.types.* namespace without reintroducing deprecated paymentrails.* imports.
  • Update CI to run all unit tests with coverage instead of the previous command that collected no tests.

Compatibility notes

  • Compatibility scope is limited to behavior introduced or exercised by this release-prep PR.
  • Existing PR-introduced method names and positional argument order are preserved.
  • New endpoint coverage is additive through aliases, optional parameters, and generic request support.
  • Deprecated paymentrails.* namespace support is intentionally not restored.
  • SDK exceptions now accept both API JSON error bodies and plain string messages.

Test plan

  • python3 -m unittest test/unit/*.py (66 tests)
  • python3 -m pytest -o python_files='test*.py' test/unit/ --cov=trolley --cov-report=term --cov-report=xml (66 tests)
  • python3 -m build
  • python3 scripts/api_docs/run_live_audit.py sdk-surface --language python --sdk-root /agent/repos/python-sdk --output /tmp/sdk_surface_audit_python_no_paymentrails.json (missing_operations=0)
  • Local SDK model attribute audit against /tmp/developer-documentation-pr-193/openapi/openapi-3.2.yml (missing_from_sdk=[])
  • TROLLEY_ACCESS_KEY="$SANDBOX_API_KEY" TROLLEY_SECRET_KEY="$SANDBOX_SECRET_KEY" python3 scripts/api_docs/run_live_audit.py sdk --languages python --runtime-mode bounded --bounded-max-items 200 --output /tmp/sdk_runtime_audit_python_current.json (passed=50, failed=0)
  • python3 - <<'PY' ... PY live sandbox E2E (22 SDK operations passed; cleanup deleted payment, batch, offline payment, recipient account, and recipient)
  • gh api repos/trolley/python-sdk/commits/$(git rev-parse HEAD)/status (ci/circleci:test success)
Open in Web Open in Cursor 

cursoragent and others added 5 commits May 24, 2026 01:47
Co-authored-by: barnett <barnett@trolley.com>
Co-authored-by: barnett <barnett@trolley.com>
Co-authored-by: barnett <barnett@trolley.com>
Co-authored-by: barnett <barnett@trolley.com>
Co-authored-by: barnett <barnett@trolley.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented May 24, 2026

Codecov Report

❌ Patch coverage is 93.11927% with 15 lines in your changes missing coverage. Please review.
✅ Project coverage is 60.51%. Comparing base (07b0b08) to head (201850e).

Files with missing lines Patch % Lines
trolley/verification_gateway.py 91.83% 4 Missing ⚠️
trolley/types/verification.py 86.66% 2 Missing ⚠️
trolley/balances_gateway.py 93.33% 1 Missing ⚠️
trolley/batch_gateway.py 87.50% 1 Missing ⚠️
trolley/client.py 85.71% 1 Missing ⚠️
trolley/gateway.py 83.33% 1 Missing ⚠️
trolley/invoice_payment_gateway.py 83.33% 1 Missing ⚠️
trolley/payment_gateway.py 91.66% 1 Missing ⚠️
trolley/recipient.py 0.00% 1 Missing ⚠️
trolley/recipient_gateway.py 66.66% 1 Missing ⚠️
... and 1 more
Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           master      #35       +/-   ##
===========================================
+ Coverage    0.00%   60.51%   +60.51%     
===========================================
  Files          24       41       +17     
  Lines         855     1274      +419     
===========================================
+ Hits            0      771      +771     
+ Misses        855      503      -352     
Files with missing lines Coverage Δ
trolley/__init__.py 100.00% <100.00%> (+100.00%) ⬆️
trolley/exceptions/baseException.py 91.66% <100.00%> (+91.66%) ⬆️
trolley/recipient_account_gateway.py 90.38% <100.00%> (+90.38%) ⬆️
trolley/types/balances.py 89.47% <100.00%> (ø)
trolley/types/batch.py 97.87% <100.00%> (ø)
trolley/types/batch_summary.py 100.00% <ø> (ø)
trolley/types/invoice_payment.py 78.26% <ø> (ø)
trolley/types/invoice_payment_part.py 46.15% <ø> (ø)
trolley/types/offline_payment.py 93.33% <ø> (ø)
trolley/types/recipient.py 97.50% <100.00%> (ø)
... and 12 more

... and 19 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Co-authored-by: barnett <barnett@trolley.com>
@trolley trolley deleted a comment from cursor Bot May 25, 2026
@barnett barnett marked this pull request as ready for review May 25, 2026 02:04
@barnett barnett requested a review from heyflowmo May 25, 2026 16:00
Copy link
Copy Markdown

@heyflowmo heyflowmo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

@barnett barnett merged commit 4395db4 into master May 26, 2026
3 checks passed
@barnett barnett deleted the cursor/python-sdk-release-prep-314d branch May 26, 2026 00:00
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.

Cannot access Verifications with this SDK Cannot set batch id when creating invoice payment

3 participants