Skip to content

release: 0.3.0 #62

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 45 commits into from
Jun 10, 2025
Merged

Conversation

stainless-app[bot]
Copy link
Contributor

@stainless-app stainless-app bot commented Feb 19, 2025

Automated Release PR

0.3.0 (2025-06-06)

Full Changelog: v0.2.1...v0.3.0

Features

Bug Fixes

  • ci: ensure pip is always available (#75) (2a3ae1d)
  • ci: remove publishing patch (#76) (fc6ffe9)
  • client: mark some request bodies as optional (a62be8a)
  • perf: optimize some hot paths (4a25116)
  • perf: skip traversing types for NotGiven values (655645b)
  • pydantic v1: more robust ModelField.annotation check (6b28a69)
  • types: handle more discriminated union shapes (#74) (e2efe2b)

Chores

  • broadly detect json family of content-type headers (a4e4e7a)
  • ci: add timeout thresholds for CI jobs (9112f34)
  • ci: only use depot for staging repos (e00a169)
  • client: minor internal fixes (48341b1)
  • docs: update client docstring (#68) (65a92c5)
  • fix typos (#77) (ad69954)
  • internal: base client updates (4615096)
  • internal: bump pyright version (9073aa6)
  • internal: bump rye to 0.44.0 (#73) (64be852)
  • internal: codegen related update (0067daf)
  • internal: codegen related update (#70) (317e72c)
  • internal: codegen related update (#72) (a8f27cc)
  • internal: expand CI branch coverage (c99fbf1)
  • internal: fix list file params (4a852b4)
  • internal: import reformatting (702e260)
  • internal: minor formatting changes (759ff42)
  • internal: properly set pydantic_private (#66) (ce1db49)
  • internal: reduce CI branch coverage (f9fb625)
  • internal: refactor retries to not use recursion (fba2a60)
  • internal: remove extra empty newlines (#71) (5166c0c)
  • internal: remove trailing character (#78) (140ac8b)
  • internal: remove unused http client options forwarding (#69) (69a6bde)
  • internal: slight transform perf improvement (#80) (62166e9)
  • internal: update models test (55f3b64)
  • internal: update pyright settings (d924d39)
  • internal: variable name and test updates (#79) (7de371c)
  • tests: improve enum examples (#81) (7b5fc94)

Documentation

  • update URLs from stainlessapi.com to stainless.com (#67) (cfce519)

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

@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from d3f5c78 to a422668 Compare February 20, 2025 12:10
fix(client): mark some request bodies as optional
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from ff627d5 to a62be8a Compare February 21, 2025 05:20
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 6985159 to f29b9ba Compare February 21, 2025 11:58
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 39d2ed1 to ce1db49 Compare February 26, 2025 03:31
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 58dd175 to cfce519 Compare February 28, 2025 03:08
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from de9d0a6 to 65a92c5 Compare February 28, 2025 03:09
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 50d705f to 69a6bde Compare March 4, 2025 04:03
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from b801518 to 317e72c Compare March 11, 2025 06:44
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 3fbc0c4 to 5166c0c Compare March 14, 2025 04:40
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 9c48f65 to a8f27cc Compare March 15, 2025 03:59
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 80bd9c4 to 64be852 Compare March 15, 2025 04:05
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 7a46a41 to e2efe2b Compare March 15, 2025 04:11
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 7116bc9 to 2a3ae1d Compare March 17, 2025 17:56
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from d7fd4f7 to fc6ffe9 Compare March 17, 2025 18:04
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch 2 times, most recently from 1dbb303 to 72320f5 Compare June 6, 2025 07:55
Copy link
Contributor Author

stainless-app bot commented Jun 6, 2025

🧪 Testing

To try out this version of the SDK, run:

pip install 'https://pkg.stainless.com/s/gitpod-python/640479ad011cec5bc45b8036f92ec07008e48d76'

Last updated: Fri, 06 Jun 2025 08:20:00 GMT

@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch 13 times, most recently from dbe3666 to 72320f5 Compare June 6, 2025 07:59
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next branch from 9cc6637 to 640479a Compare June 6, 2025 08:19
Copy link
Contributor Author

stainless-app bot commented Jun 6, 2025

Note: this release PR has been open for more than 60 days. Until this PR is merged, we will temporarily stop pushing codegen updates due to changes to Stainless' codegen.

@filiptronicek filiptronicek requested a review from Copilot June 10, 2025 12:06
@stainless-app stainless-app bot merged commit ebceec8 into main Jun 10, 2025
4 checks passed
@stainless-app stainless-app bot deleted the release-please--branches--main--changes--next branch June 10, 2025 12:07
Copy link
Contributor Author

stainless-app bot commented Jun 10, 2025

Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Automated release to version 0.3.0 with support for redirect control, retry loop refactoring, new resources, and CI/docs updates

  • Bump package to 0.3.0 and update project metadata, changelogs, and CI workflows
  • Add follow_redirects option in request types and wire it through HTTP client
  • Refactor retry logic into an iterative loop and add new gateways and usage resources

Reviewed Changes

Copilot reviewed 205 out of 205 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/gitpod/_utils/_proxy.py Wraps __get_proxied__ in broad try/except to fall back when proxy is unavailable
src/gitpod/_types.py Introduces follow_redirects in RequestOptions and HttpxSendArgs
src/gitpod/_response.py Changes JSON check to endswith("json") for broader content‐type matching
src/gitpod/_base_client.py Removes deprecated args, adds follow_redirects, refactors recursive retry to loop
scripts/utils/upload-artifact.sh New script for uploading build artifacts
CI & configs (pyproject.toml, workflows, docs, etc.) Version bumps, URL updates, CI timeouts, Dockerfile tweaks, README examples
Comments suppressed due to low confidence (2)

src/gitpod/_types.py:103

  • The new follow_redirects option is added but there are no tests verifying its behavior. Consider adding unit tests to cover both enabling and disabling redirects.
follow_redirects: bool

src/gitpod/_base_client.py:963

  • The follow_redirects feature is wired into the client but not documented in public docstrings or the README. Please update documentation to explain this new option.
if options.follow_redirects is not None:

proxied = self.__get_proxied__()
try:
proxied = self.__get_proxied__()
except Exception:
Copy link
Preview

Copilot AI Jun 10, 2025

Choose a reason for hiding this comment

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

[nitpick] Catching all Exception may hide unexpected errors in __get_proxied__. Consider narrowing this to specific exceptions (e.g. AttributeError) to avoid masking real bugs.

Suggested change
except Exception:
except AttributeError:

Copilot uses AI. Check for mistakes.

@@ -255,7 +255,7 @@ def _parse(self, *, to: type[_T] | None = None) -> R | _T:
# split is required to handle cases where additional information is included
# in the response, e.g. application/json; charset=utf-8
content_type, *_ = response.headers.get("content-type", "*").split(";")
if content_type != "application/json":
if not content_type.endswith("json"):
Copy link
Preview

Copilot AI Jun 10, 2025

Choose a reason for hiding this comment

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

The endswith("json") check is case-sensitive and could miss headers in uppercase or mixed case (e.g., "application/JSON"). Normalize with content_type.lower().endswith("json").

Suggested change
if not content_type.endswith("json"):
if not content_type.lower().endswith("json"):

Copilot uses AI. Check for mistakes.

exit 1
fi

UPLOAD_RESPONSE=$(tar -cz . | curl -v -X PUT \
Copy link
Preview

Copilot AI Jun 10, 2025

Choose a reason for hiding this comment

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

[nitpick] This command compresses the entire repository, including .git. Consider restricting tar to only the build artifact directory to reduce upload size and time.

Suggested change
UPLOAD_RESPONSE=$(tar -cz . | curl -v -X PUT \
BUILD_DIR="build"
UPLOAD_RESPONSE=$(tar -cz "$BUILD_DIR" | curl -v -X PUT \

Copilot uses AI. Check for mistakes.

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.

1 participant