Skip to content

Commit 1996efe

Browse files
release: 0.1.0 (#250)
* feat(api): manual updates * feat(api): manual updates * codegen metadata * codegen metadata * feat(api): manual updates * codegen metadata * feat(api): manual updates * feat(api): manual updates * codegen metadata * feat(api): manual updates * codegen metadata * feat(api): manual updates * feat(api): manual updates * feat(api): manual updates * codegen metadata * feat(api): manual updates * chore: speedup initial import * refactor(internal): switch from rye to uv * feat(api): manual updates * feat(api): manual updates * feat(api): manual updates * feat(api): manual updates * feat(api): manual updates * feat(api): manual updates * codegen metadata * feat(api): manual updates * feat(api): manual updates * fix: use async_to_httpx_files in patch method * chore(internal): add `--fix` argument to lint script * feat(api): manual updates * docs: add more examples * feat: [STG-1053] [server] Use fastify-zod-openapi + zod v4 for openapi generation * chore: update SDK settings * chore: update SDK settings * release: 0.1.0 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent 8526eb4 commit 1996efe

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+6576
-1571
lines changed

.devcontainer/Dockerfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT}
33

44
USER vscode
55

6-
RUN curl -sSf https://rye.astral.sh/get | RYE_VERSION="0.44.0" RYE_INSTALL_OPTION="--yes" bash
7-
ENV PATH=/home/vscode/.rye/shims:$PATH
6+
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
87

98
RUN echo "[[ -d .venv ]] && source .venv/bin/activate || export PATH=\$PATH" >> /home/vscode/.bashrc

.devcontainer/devcontainer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"context": ".."
88
},
99

10-
"postStartCommand": "rye sync --all-features",
10+
"postStartCommand": "uv sync --all-extras",
1111

1212
"customizations": {
1313
"vscode": {
@@ -20,7 +20,7 @@
2020
"python.defaultInterpreterPath": ".venv/bin/python",
2121
"python.typeChecking": "basic",
2222
"terminal.integrated.env.linux": {
23-
"PATH": "/home/vscode/.rye/shims:${env:PATH}"
23+
"PATH": "${env:PATH}"
2424
}
2525
}
2626
}

.github/workflows/ci.yml

Lines changed: 15 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,13 @@ jobs:
2121
steps:
2222
- uses: actions/checkout@v4
2323

24-
- name: Install Rye
25-
run: |
26-
curl -sSf https://rye.astral.sh/get | bash
27-
echo "$HOME/.rye/shims" >> $GITHUB_PATH
28-
env:
29-
RYE_VERSION: '0.44.0'
30-
RYE_INSTALL_OPTION: '--yes'
24+
- name: Install uv
25+
uses: astral-sh/setup-uv@v5
26+
with:
27+
version: '0.9.13'
3128

3229
- name: Install dependencies
33-
run: rye sync --all-features
30+
run: uv sync --all-extras
3431

3532
- name: Run lints
3633
run: ./scripts/lint
@@ -46,19 +43,16 @@ jobs:
4643
steps:
4744
- uses: actions/checkout@v4
4845

49-
- name: Install Rye
50-
run: |
51-
curl -sSf https://rye.astral.sh/get | bash
52-
echo "$HOME/.rye/shims" >> $GITHUB_PATH
53-
env:
54-
RYE_VERSION: '0.44.0'
55-
RYE_INSTALL_OPTION: '--yes'
46+
- name: Install uv
47+
uses: astral-sh/setup-uv@v5
48+
with:
49+
version: '0.9.13'
5650

5751
- name: Install dependencies
58-
run: rye sync --all-features
52+
run: uv sync --all-extras
5953

6054
- name: Run build
61-
run: rye build
55+
run: uv build
6256

6357
- name: Get GitHub OIDC Token
6458
if: github.repository == 'stainless-sdks/stagehand-python'
@@ -83,13 +77,10 @@ jobs:
8377
steps:
8478
- uses: actions/checkout@v4
8579

86-
- name: Install Rye
87-
run: |
88-
curl -sSf https://rye.astral.sh/get | bash
89-
echo "$HOME/.rye/shims" >> $GITHUB_PATH
90-
env:
91-
RYE_VERSION: '0.44.0'
92-
RYE_INSTALL_OPTION: '--yes'
80+
- name: Install uv
81+
uses: astral-sh/setup-uv@v5
82+
with:
83+
version: '0.9.13'
9384

9485
- name: Bootstrap
9586
run: ./scripts/bootstrap

.github/workflows/publish-pypi.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# This workflow is triggered when a GitHub release is created.
2+
# It can also be run manually to re-publish to PyPI in case it failed for some reason.
3+
# You can run this workflow by navigating to https://www.github.com/browserbase/stagehand-python/actions/workflows/publish-pypi.yml
4+
name: Publish PyPI
5+
on:
6+
workflow_dispatch:
7+
8+
release:
9+
types: [published]
10+
11+
jobs:
12+
publish:
13+
name: publish
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- uses: actions/checkout@v4
18+
19+
- name: Install uv
20+
uses: astral-sh/setup-uv@v5
21+
with:
22+
version: '0.9.13'
23+
24+
- name: Publish to PyPI
25+
run: |
26+
bash ./bin/publish-pypi
27+
env:
28+
PYPI_TOKEN: ${{ secrets.STAGEHAND_PYPI_TOKEN || secrets.PYPI_TOKEN }}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Release Doctor
2+
on:
3+
pull_request:
4+
branches:
5+
- stainless
6+
workflow_dispatch:
7+
8+
jobs:
9+
release_doctor:
10+
name: release doctor
11+
runs-on: ubuntu-latest
12+
if: github.repository == 'browserbase/stagehand-python' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')
13+
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
- name: Check release environment
18+
run: |
19+
bash ./bin/check-release-environment
20+
env:
21+
PYPI_TOKEN: ${{ secrets.STAGEHAND_PYPI_TOKEN || secrets.PYPI_TOKEN }}

.release-please-manifest.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "0.1.0"
3+
}

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 7
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browserbase%2Fstagehand-0c12f985340be2a9287e8e01ff8733f7f2d02e019149d1ae95f1a8f8798c6690.yml
3-
openapi_spec_hash: efb79934e1dc63763dd4e8493b825273
4-
config_hash: 1548ab91b7e8621f7fa79e8cff0c3f93
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browserbase%2Fstagehand-ed52466945f2f8dfd3814a29e948d7bf30af7b76a7a7689079c03b8baf64e26f.yml
3+
openapi_spec_hash: 5d57aaf2362b0d882372dbf76477ba23
4+
config_hash: 989ddfee371586e9156b4d484ec0a6cc

Brewfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
brew "rye"
1+
brew "uv"
22

CHANGELOG.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# Changelog
2+
3+
## 0.1.0 (2025-12-23)
4+
5+
Full Changelog: [v0.0.1...v0.1.0](https://github.com/browserbase/stagehand-python/compare/v0.0.1...v0.1.0)
6+
7+
### Features
8+
9+
* [STG-1053] [server] Use fastify-zod-openapi + zod v4 for openapi generation ([405c606](https://github.com/browserbase/stagehand-python/commit/405c6068de29f39d90882b31805cc2785c6b94e0))
10+
* **api:** manual updates ([dde1e8b](https://github.com/browserbase/stagehand-python/commit/dde1e8b312f72179c416baaa8603c4a5da9ce706))
11+
* **api:** manual updates ([577cea0](https://github.com/browserbase/stagehand-python/commit/577cea04ec2814b9ec70e5f18119292991e5b635))
12+
* **api:** manual updates ([0cdb22b](https://github.com/browserbase/stagehand-python/commit/0cdb22be4350e78b49a2c90bb62fbf5fcc0d4a25))
13+
* **api:** manual updates ([fcf7666](https://github.com/browserbase/stagehand-python/commit/fcf7666829c41b7892d708c430a1a16b3ea6097e))
14+
* **api:** manual updates ([8590a04](https://github.com/browserbase/stagehand-python/commit/8590a048dbe8a82b8b298b7345b30b71876b6e10))
15+
* **api:** manual updates ([8d1c5ae](https://github.com/browserbase/stagehand-python/commit/8d1c5ae737a481f22818a4adcaba162d015142ee))
16+
* **api:** manual updates ([638e928](https://github.com/browserbase/stagehand-python/commit/638e92824408754dadebbffab7be6e5f14c0034c))
17+
* **api:** manual updates ([13484f8](https://github.com/browserbase/stagehand-python/commit/13484f87d343a9b02d58027ab17114c07fda5220))
18+
* **api:** manual updates ([722abc9](https://github.com/browserbase/stagehand-python/commit/722abc902c2d7210b6b8c35655b9a8dbd6433ee3))
19+
* **api:** manual updates ([72aa8b8](https://github.com/browserbase/stagehand-python/commit/72aa8b8476bddf351364a1bf161454206eaea3ba))
20+
* **api:** manual updates ([54f3289](https://github.com/browserbase/stagehand-python/commit/54f32894104f60ca81cad4797b19a86903f4ef73))
21+
* **api:** manual updates ([9b9d548](https://github.com/browserbase/stagehand-python/commit/9b9d548fb1a4f8a489d4dd920399d2145f4bd3af))
22+
* **api:** manual updates ([54fb057](https://github.com/browserbase/stagehand-python/commit/54fb05764ac58ad86e9ef4a96aefdda001839fc7))
23+
* **api:** manual updates ([5efd001](https://github.com/browserbase/stagehand-python/commit/5efd001ad8e5dbcea9f5aa7dad31584ade9402ae))
24+
* **api:** manual updates ([19a67fd](https://github.com/browserbase/stagehand-python/commit/19a67fd34a16a0acd72427862bcd0eafd6dab353))
25+
* **api:** manual updates ([80413be](https://github.com/browserbase/stagehand-python/commit/80413be240dd2cdf8c0c95f3e47c5537fbeed017))
26+
* **api:** manual updates ([585015c](https://github.com/browserbase/stagehand-python/commit/585015c998f014040086fd927d91949c7d153b86))
27+
* **api:** manual updates ([f032352](https://github.com/browserbase/stagehand-python/commit/f032352d00c69dd94438500c0ced3a110a7cc521))
28+
* **api:** manual updates ([2dcbe2d](https://github.com/browserbase/stagehand-python/commit/2dcbe2d88a8a35781d42e5bbdcebb44e0ba830dc))
29+
* **api:** tweak branding and fix some config fields ([8526eb4](https://github.com/browserbase/stagehand-python/commit/8526eb4417d0f2b69397294b1aa3d4da5892f2d6))
30+
31+
32+
### Bug Fixes
33+
34+
* use async_to_httpx_files in patch method ([77eb123](https://github.com/browserbase/stagehand-python/commit/77eb1234c04a9aa95cedddb15bef377d644f6c42))
35+
36+
37+
### Chores
38+
39+
* **internal:** add `--fix` argument to lint script ([f7eefb4](https://github.com/browserbase/stagehand-python/commit/f7eefb45344f354cfbdbfa00505f0225ce1ad396))
40+
* **internal:** add missing files argument to base client ([5c05e7b](https://github.com/browserbase/stagehand-python/commit/5c05e7b37ae9aff8e259cc3190998d7e259f0cef))
41+
* speedup initial import ([5aafb83](https://github.com/browserbase/stagehand-python/commit/5aafb83959802f8d2a6d7544f115de28a6495d2e))
42+
* update SDK settings ([b8d1cd3](https://github.com/browserbase/stagehand-python/commit/b8d1cd34b5ee9608e52ea009ff31b7a429cdec62))
43+
* update SDK settings ([4c0b2c8](https://github.com/browserbase/stagehand-python/commit/4c0b2c8045935a5790b668e553c114d82550b85e))
44+
45+
46+
### Documentation
47+
48+
* add more examples ([681e90f](https://github.com/browserbase/stagehand-python/commit/681e90f695f60d3b59ee017da3270bd344cf01f6))
49+
50+
51+
### Refactors
52+
53+
* **internal:** switch from rye to uv ([0eba9d2](https://github.com/browserbase/stagehand-python/commit/0eba9d2e2ba2ff82a412adf06e80866e3dc4b7cb))

CONTRIBUTING.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,32 @@
11
## Setting up the environment
22

3-
### With Rye
3+
### With `uv`
44

5-
We use [Rye](https://rye.astral.sh/) to manage dependencies because it will automatically provision a Python environment with the expected Python version. To set it up, run:
5+
We use [uv](https://docs.astral.sh/uv/) to manage dependencies because it will automatically provision a Python environment with the expected Python version. To set it up, run:
66

77
```sh
88
$ ./scripts/bootstrap
99
```
1010

11-
Or [install Rye manually](https://rye.astral.sh/guide/installation/) and run:
11+
Or [install uv manually](https://docs.astral.sh/uv/getting-started/installation/) and run:
1212

1313
```sh
14-
$ rye sync --all-features
14+
$ uv sync --all-extras
1515
```
1616

17-
You can then run scripts using `rye run python script.py` or by activating the virtual environment:
17+
You can then run scripts using `uv run python script.py` or by manually activating the virtual environment:
1818

1919
```sh
20-
# Activate the virtual environment - https://docs.python.org/3/library/venv.html#how-venvs-work
20+
# manually activate - https://docs.python.org/3/library/venv.html#how-venvs-work
2121
$ source .venv/bin/activate
2222

23-
# now you can omit the `rye run` prefix
23+
# now you can omit the `uv run` prefix
2424
$ python script.py
2525
```
2626

27-
### Without Rye
27+
### Without `uv`
2828

29-
Alternatively if you don't want to install `Rye`, you can stick with the standard `pip` setup by ensuring you have the Python version specified in `.python-version`, create a virtual environment however you desire and then install dependencies using this command:
29+
Alternatively if you don't want to install `uv`, you can stick with the standard `pip` setup by ensuring you have the Python version specified in `.python-version`, create a virtual environment however you desire and then install dependencies using this command:
3030

3131
```sh
3232
$ pip install -r requirements-dev.lock
@@ -45,7 +45,7 @@ All files in the `examples/` directory are not modified by the generator and can
4545
```py
4646
# add an example to examples/<your-example>.py
4747

48-
#!/usr/bin/env -S rye run python
48+
#!/usr/bin/env -S uv run python
4949
5050
```
5151

@@ -62,7 +62,7 @@ If you’d like to use the repository from source, you can either install from g
6262
To install via git:
6363

6464
```sh
65-
$ pip install git+ssh://[email protected]/stainless-sdks/stagehand-python.git
65+
$ pip install git+ssh://[email protected]/browserbase/stagehand-python#stainless.git
6666
```
6767

6868
Alternatively, you can build from source and install the wheel file:
@@ -72,7 +72,7 @@ Building this package will create two files in the `dist/` directory, a `.tar.gz
7272
To create a distributable version of the library, all you have to do is run this command:
7373

7474
```sh
75-
$ rye build
75+
$ uv build
7676
# or
7777
$ python -m build
7878
```
@@ -120,7 +120,7 @@ the changes aren't made through the automated pipeline, you may want to make rel
120120

121121
### Publish with a GitHub workflow
122122

123-
You can release to package managers by using [the `Publish PyPI` GitHub action](https://www.github.com/stainless-sdks/stagehand-python/actions/workflows/publish-pypi.yml). This requires a setup organization or repository secret to be set up.
123+
You can release to package managers by using [the `Publish PyPI` GitHub action](https://www.github.com/browserbase/stagehand-python/actions/workflows/publish-pypi.yml). This requires a setup organization or repository secret to be set up.
124124

125125
### Publish manually
126126

0 commit comments

Comments
 (0)