Skip to content

release: 0.4.0#53

Open
stainless-app[bot] wants to merge 12 commits intomainfrom
release-please--branches--main--changes--next
Open

release: 0.4.0#53
stainless-app[bot] wants to merge 12 commits intomainfrom
release-please--branches--main--changes--next

Conversation

@stainless-app
Copy link
Copy Markdown
Contributor

@stainless-app stainless-app bot commented Mar 6, 2026

Automated Release PR

0.4.0 (2026-04-07)

Full Changelog: v0.3.0...v0.4.0

Features

  • internal: implement indices array format for query and form serialization (04ba964)

Bug Fixes

  • client: preserve hardcoded query params when merging with user params (80f3981)
  • deps: bump minimum typing-extensions version (23ea212)
  • pydantic: do not pass by_alias unless set (b098b05)
  • sanitize endpoint path params (e385e21)

Chores

  • ci: skip lint on metadata-only changes (e11e58f)
  • ci: skip uploading artifacts on stainless-internal branches (e3ed836)
  • internal: tweak CI branches (1fc1ee4)
  • internal: update gitignore (97672af)
  • update placeholder string (3a623d4)

Refactors

  • types: use extra_items from PEP 728 (de6e4e4)

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

@cursor
Copy link
Copy Markdown

cursor bot commented Mar 6, 2026

PR Summary

Medium Risk
Touches core request building and URL/path handling (query param merging, endpoint path interpolation, query array serialization), which could affect how requests are formed across the SDK. CI gating changes are low risk but could change what runs on certain branches/commits.

Overview
Bumps the SDK to v0.4.0 (manifest/version files, changelog) and raises the minimum typing-extensions to >=4.14.

Improves request construction by preserving hardcoded query params already present in options.url when merging with user-provided params, and adds coverage for this behavior. Adds support for indices array serialization in the query/form stringifier.

Introduces path_template() for sanitized endpoint path interpolation (percent-encoding + rejecting ./.. path segments) and migrates models.retrieve to use it, with new unit tests. Updates pydantic compatibility to avoid passing by_alias unless explicitly set, and refactors a generated TypedDict to use PEP 728 extra_items.

CI is tweaked to adjust branch filters, skip lint/build on codegen metadata-only pushes, and avoid artifact uploads on internal stl/* branches; .gitignore adds .stdy.log, and test fixtures replace raw file contents with Example data.

Reviewed by Cursor Bugbot for commit d9a10c4. Bugbot is set up for automated code reviews on this repo. Configure here.

Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: Minimum typing-extensions version too low for extra_items
    • Updated the package dependency constraint to typing-extensions>=4.13 so TypedDict(extra_items=...) is supported at import time.

Create PR

Or push these changes by commenting:

@cursor push 4d33f509c1
Preview (4d33f509c1)
diff --git a/pyproject.toml b/pyproject.toml
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -11,7 +11,7 @@
 dependencies = [
   "httpx>=0.23.0, <1",
   "pydantic>=1.9.0, <3",
-  "typing-extensions>=4.10, <5",
+  "typing-extensions>=4.13, <5",
   "anyio>=3.5.0, <5",
   "distro>=1.7.0, <2",
   "sniffio",

@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from b40181c to db00e7a Compare March 7, 2026 12:56
@stainless-app
Copy link
Copy Markdown
Contributor Author

stainless-app bot commented Mar 7, 2026

🧪 Testing

To try out this version of the SDK:

pip install 'https://pkg.stainless.com/s/dedalus-sdk-python/80f3981cb6e10bd7a9dbe39412abbd6277b0ab64/dedalus_labs-0.3.0-py3-none-any.whl'

Expires at: Thu, 07 May 2026 16:12:15 GMT
Updated at: Tue, 07 Apr 2026 16:12:15 GMT

@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from db00e7a to e3f484a Compare March 7, 2026 13:17
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from e3f484a to 14149b0 Compare March 16, 2026 17:35
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 14149b0 to fa5441e Compare March 16, 2026 19:04
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from fa5441e to 73aba21 Compare March 16, 2026 20:49
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 73aba21 to ffeed0c Compare March 19, 2026 15:39
stainless-app bot added 2 commits March 23, 2026 12:40
Note that we still want to run tests, as these depend on the metadata.
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from ffeed0c to 6ebd591 Compare March 24, 2026 15:19
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 6ebd591 to 8e8f7a0 Compare March 26, 2026 19:26
@stainless-app stainless-app bot changed the title release: 0.3.1 release: 0.4.0 Mar 26, 2026
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 8e8f7a0 to cb3d817 Compare March 26, 2026 19:26
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from cb3d817 to d9a10c4 Compare April 7, 2026 16:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants