release: 0.1.0#1
Open
stainless-app[bot] wants to merge 50 commits into
Open
Conversation
Author
|
🧪 Testing To try out this version of the SDK: Expires at: Sat, 13 Jun 2026 19:42:53 GMT |
Author
|
🧪 Testing To try out this version of the SDK: Expires at: Sat, 06 Jun 2026 19:37:20 GMT |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
68d3f00 to
759ea11
Compare
Add missing `Status` enum to `BridgeFiatCustomerResponse` and `BridgeSandboxFiatCustomerResponse` (referenced but undefined), and replace the broken `Transaction::Details` subclass in `Wallets::TransactionGetResponse` — which tried to inherit from the `TransactionDetail` union module — with a direct union reference. **Do not merge:** should be fixed as part of generation. Co-Authored-By: Claude Opus 4.7 [noreply@anthropic.com](mailto:noreply@anthropic.com) Committed-By-Agent: claude
759ea11 to
4f6dab2
Compare
Thread TESTOPTS through the rake test task so Minitest receives it as ARGV, and default scripts/test to -v so each test name prints as it runs. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Committed-By-Agent: claude
4f6dab2 to
e5466bf
Compare
## Summary Sets up the basic `Privy::PrivyClient`, wrapping the generated `Privy::Client`, along with services like Wallets, Users, Policies and KeyQuorums Committed-By-Agent: claude
e5466bf to
1d6ebb7
Compare
…e helper (#5) Committed-By-Agent: claude
1d6ebb7 to
4331504
Compare
…#6) ## Summary Covers Wallet creation and minimal RPC **for an ownerless wallet**. More importantly: sets up integration e2e testing Committed-By-Agent: claude
4331504 to
9d8138a
Compare
## Summary The generated SDK lacks logging support. While it is built, this adds minimal **test only** logs for the http calls Committed-By-Agent: claude
9d8138a to
e7db13a
Compare
…ng-sig rejection) (#8)
e7db13a to
7dc20ee
Compare
7dc20ee to
eccbcb3
Compare
…ncy headers (#10) Override Privy::Services::Wallets#create/update/rpc to translate the public idempotency_key: and authorization_context: kwargs into the generated privy-* header params. Signing routes through Privy::Authorization.prepare with the server-matching URL; idempotency-key header is included in the signed payload when both are present. Unit tests cover header presence and signature verification; migrate existing P-256 integration tests onto the new API and add an end-to-end sign_fns test.
eccbcb3 to
f6257c1
Compare
Adds an `integration` job that runs `bundle exec rake test:integration` on pull_request events (non-fork heads only) and on pushes to `main` and `next`. TEST_APP_ID, TEST_APP_SECRET, JWT_AUTH_SK, and TEST_APP_TEST_ACCOUNT_OTP are injected from repository secrets. Forks are skipped because secrets are not available there.
f6257c1 to
b68f22b
Compare
* feat(jwt-exchange): add JwtExchangeService with HPKE decryption and caching Implements JWT-to-authorization-key exchange matching the Node SDK pattern. Uses shared HpkeRecipient (P-256/HKDF-SHA256/ChaCha20-Poly1305) per service instance with an LRU cache (TTL-based eviction from server's expires_at). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Committed-By-Agent: claude * fix(test): handle empty JWT_AUTH_SK in CI and normalize PEM whitespace The GitHub secret may be unset (empty string) or contain \r characters. Guard against both to prevent RSA parse errors in CI. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Committed-By-Agent: claude --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
b68f22b to
80c6133
Compare
Port two CI guardrails from the go-sdk: - branch-target.yml fails any PR that targets `main` (with a sticky comment explaining how to retarget to `next`), and exempts the Stainless release bot. - pr-title.yml enforces conventional-commit style on PR titles. Committed-By-Agent: claude
Pin all GitHub Actions referenced in generated workflows (both first-party `actions/*` and third-party) to immutable commit SHAs. Updating pinned actions is now a deliberate codegen-side bump rather than implicit on every workflow run.
Mirrors the kwargs-style create wrappers in wallets, policies, and key_quorums. Includes an integration test against staging that exercises a custom-auth linked account plus a pregenerated Ethereum wallet, modeled on the Go SDK's TestUsers/New/WithCustomAuthAndWallet. Committed-By-Agent: claude
9b254ab to
e7aa38f
Compare
## Summary - Generate a unique custom-auth subject per test instance instead of reusing a static `JWT_AUTH_SUBJECT` (default `java-sdk-sub-id`) - Add `jwt_auth_user` helper that lazily creates a fresh Privy user via `users.create` with a `custom_auth` linked account - `generate_test_jwt` now ensures the user exists before signing, since downstream endpoints (e.g. `/wallets/authenticate`) reject JWTs for unknown subjects - JWT exchange tests provision a wallet for the user upfront — `/wallets/authenticate` requires the user to own a wallet; the old shared user worked only because it had wallets accumulated from past runs ## Why Each integration run added wallets under the same shared user, eventually tripping the per-user wallet limit (e.g. `User has reached a maximum limit of 100 tron wallets`). A fresh user per test means every run starts clean. ## Test plan - [x] `bundle exec rake test:integration` passes twice in succession (verifies fresh data per run) - [x] `bundle exec rake test` passes - [x] `bundle exec rake lint` passes
e7aa38f to
6910732
Compare
6910732 to
23c25cd
Compare
Align the gem name with staging/generated, which uses `privy_ruby` instead of `privy`. The Ruby module/file name (`require "privy"`) is unchanged — only the published gem name.
23c25cd to
68e4195
Compare
Committed-By-Agent: claude
68e4195 to
437aa75
Compare
Committed-By-Agent: claude
437aa75 to
39a9fdd
Compare
39a9fdd to
0d814df
Compare
Committed-By-Agent: claude
0d814df to
4e59ef3
Compare
The Stainless-generated transport now elides the Content-Type header on bodyless requests (commit 6741307), so the hand-rolled `extra_headers: {"Content-Type" => nil}` overrides in `policies.delete`, `policies.delete_rule`, and `key_quorums.delete` are redundant.
Committed-By-Agent: claude
272d4f4 to
6d85fdf
Compare
Committed-By-Agent: claude
6d85fdf to
a2ef497
Compare
README: add "Configuring request expiry" section under Usage describing the 11 authorized methods that auto-set privy-request-expiry, plus how to override the default, disable it, or override per-call. Committed-By-Agent: claude
a2ef497 to
a826ea2
Compare
Committed-By-Agent: claude
a826ea2 to
49a71ec
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated Release PR
0.1.0 (2026-05-14)
Full Changelog: v0.0.1...v0.1.0
Features
Bug Fixes
Chores
Documentation
Refactors
This pull request is managed by Stainless's GitHub App.
The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.
For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.
🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions