Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
161 commits
Select commit Hold shift + click to select a range
f8b95fe
codegen metadata
stainless-app[bot] Jul 17, 2025
7c7a621
feat(api): api update
stainless-app[bot] Jul 17, 2025
268fdab
feat(api): api update
stainless-app[bot] Jul 21, 2025
d0d1a79
feat(api): api update
stainless-app[bot] Jul 24, 2025
3167be0
docs: note alpha status
stainless-app[bot] Jul 24, 2025
b08df82
feat(api): api update
stainless-app[bot] Jul 26, 2025
25e678a
feat(client): automatically set constants for user
stainless-app[bot] Jul 28, 2025
5a6d432
feat(client): implement implicit union casts
stainless-app[bot] Jul 29, 2025
3eb9334
feat(internal): generate release flow files
stainless-app[bot] Jul 29, 2025
df035d1
feat(client): improve model names
stainless-app[bot] Jul 30, 2025
304c45c
chore: rename some things
stainless-app[bot] Jul 30, 2025
37366c3
fix(internal): prefer to use implicit instantiation when possible
stainless-app[bot] Jul 30, 2025
d670d93
chore: use non-aliased `using`
stainless-app[bot] Jul 30, 2025
f4d1b52
chore(docs): clarify beta library limitations in readme
stainless-app[bot] Jul 30, 2025
049b82c
fix(internal): various minor code fixes
stainless-app[bot] Jul 31, 2025
6fa9d89
chore(internal): use nicer generic names
stainless-app[bot] Jul 31, 2025
a4aa7a5
refactor(client): use plural for service namespace
stainless-app[bot] Aug 1, 2025
928b193
chore: update formatting
stainless-app[bot] Aug 1, 2025
8e82a6b
feat(client): add some convenience constructors
stainless-app[bot] Aug 1, 2025
b71251d
codegen metadata
stainless-app[bot] Aug 29, 2025
ad6f73f
chore(internal): codegen related update
stainless-app[bot] Aug 29, 2025
8420455
feat(api)!: define shared model ConversionRateConfig
stainless-app[bot] Sep 2, 2025
f13e7df
feat(api): api update
stainless-app[bot] Sep 2, 2025
0b9eedc
feat: extract minimum composite to type
stainless-app[bot] Sep 3, 2025
7e10ed7
feat(api): api update
stainless-app[bot] Sep 3, 2025
529c386
feat(api): api update
stainless-app[bot] Sep 5, 2025
ab63f1e
fix(client): handle multiple auth options gracefully
stainless-app[bot] Sep 10, 2025
0dbc21b
fix(internal): improve dictionary instantiation
stainless-app[bot] Sep 10, 2025
2c673c4
feat(api): api update
stainless-app[bot] Sep 10, 2025
d0e9264
feat(api): api update
stainless-app[bot] Sep 12, 2025
1f8e15d
feat(api): api update
stainless-app[bot] Sep 16, 2025
66c1d05
fix(internal): remove example csproj
stainless-app[bot] Sep 17, 2025
6a36022
feat(api): api update
stainless-app[bot] Sep 19, 2025
2ff5c17
fix(internal): various smaller fixes
stainless-app[bot] Sep 23, 2025
d0978b0
feat(api): api update
stainless-app[bot] Sep 29, 2025
79372ab
codegen metadata
stainless-app[bot] Sep 29, 2025
ce002f9
feat(api): api update
stainless-app[bot] Sep 30, 2025
74c487d
feat(client): refactor exceptions
stainless-app[bot] Oct 1, 2025
d7fe315
chore(internal): restructure some imports
stainless-app[bot] Oct 2, 2025
cd5e090
feat(internal): add dev container
stainless-app[bot] Oct 2, 2025
abb7452
feat(api): api update
stainless-app[bot] Oct 3, 2025
9496bca
feat(api): api update
stainless-app[bot] Oct 3, 2025
e4c3bc5
feat(api): api update
stainless-app[bot] Oct 6, 2025
6cf340c
feat(api): api update
stainless-app[bot] Oct 7, 2025
bab0e94
feat(client): refactor unions
stainless-app[bot] Oct 7, 2025
8108e0d
feat(api): api update
stainless-app[bot] Oct 10, 2025
9783129
codegen metadata
stainless-app[bot] Oct 10, 2025
9251b92
feat(api): api update
stainless-app[bot] Oct 13, 2025
1d104ef
feat(api): api update
stainless-app[bot] Oct 15, 2025
d2723fb
codegen metadata
stainless-app[bot] Oct 16, 2025
090a2e3
feat(api): api update
stainless-app[bot] Oct 17, 2025
5c02e33
feat(api): api update
stainless-app[bot] Oct 23, 2025
bbb17bf
codegen metadata
stainless-app[bot] Oct 27, 2025
ef24fb8
codegen metadata
stainless-app[bot] Oct 27, 2025
f109cc7
fix(internal): minor bug fixes on model instantiation and union valid…
stainless-app[bot] Oct 27, 2025
7f1811a
feat(api): api update
stainless-app[bot] Oct 29, 2025
fc01a56
chore(internal): full qualify some references
stainless-app[bot] Oct 30, 2025
713ee01
feat(api): api update
stainless-app[bot] Oct 30, 2025
9504b00
feat(api): api update
stainless-app[bot] Oct 31, 2025
9e6c001
feat(api): api update
stainless-app[bot] Oct 31, 2025
b7feea0
chore(internal): extract `ClientOptions` struct
stainless-app[bot] Nov 3, 2025
a369ef4
feat(api): api update
stainless-app[bot] Nov 3, 2025
3ec7070
feat(client): support request timeout
stainless-app[bot] Nov 3, 2025
dda33ed
feat(client): add response validation option
stainless-app[bot] Nov 4, 2025
8a73d24
feat(api): api update
stainless-app[bot] Nov 4, 2025
585182a
feat(client): add support for option modification
stainless-app[bot] Nov 4, 2025
0b988e2
docs(client): document `WithOptions`
stainless-app[bot] Nov 5, 2025
64968e6
docs(client): document timeout option
stainless-app[bot] Nov 5, 2025
c8458a8
docs(client): document response validation
stainless-app[bot] Nov 5, 2025
6b31ed5
docs(client): improve snippet formatting
stainless-app[bot] Nov 5, 2025
f1fe13a
chore(internal): codegen related update
stainless-app[bot] Nov 5, 2025
22921ae
feat(client)!: make models immutable
stainless-app[bot] Nov 5, 2025
df68529
feat(api): api update
stainless-app[bot] Nov 5, 2025
6378ccb
codegen metadata
stainless-app[bot] Nov 6, 2025
baf08f2
feat(api): api update
stainless-app[bot] Nov 7, 2025
b7bb4f2
feat(client): add some implicit operators
stainless-app[bot] Nov 7, 2025
ac0b263
chore(internal): improve devcontainer
stainless-app[bot] Nov 7, 2025
35502d0
chore(internal): add prism log file to gitignore
stainless-app[bot] Nov 7, 2025
15855b6
fix(client)!: interpret null as omitted in some properties
stainless-app[bot] Nov 7, 2025
d322904
feat(client): add cancellation token support
stainless-app[bot] Nov 7, 2025
b153c54
chore(internal): minor improvements to csproj and gitignore
stainless-app[bot] Nov 7, 2025
006167f
feat(client): add retries support
stainless-app[bot] Nov 7, 2025
9284c15
docs(client): document max retries
stainless-app[bot] Nov 7, 2025
7ae1ca0
refactor(client): pass around `ClientOptions` instead of client
stainless-app[bot] Nov 7, 2025
11b2877
feat(client): send `X-Stainless-Arch` header
stainless-app[bot] Nov 7, 2025
ff4a7fe
feat(client): send `X-Stainless-Lang` and `X-Stainless-OS` headers
stainless-app[bot] Nov 7, 2025
d3b8497
feat(client): send `X-Stainless-Package-Version` headers
stainless-app[bot] Nov 8, 2025
a49e832
feat(client): send `X-Stainless-Runtime` and `X-Stainless-Runtime-Ver…
stainless-app[bot] Nov 8, 2025
c17450e
perf(client): optimize header creation
stainless-app[bot] Nov 8, 2025
d9f32d8
feat(client): send `User-Agent` header
stainless-app[bot] Nov 8, 2025
569bcb2
feat(client): send `X-Stainless-Timeout` header
stainless-app[bot] Nov 8, 2025
d949333
docs(client): separate comment content into paragraphs
stainless-app[bot] Nov 8, 2025
73ff8de
chore(internal): reduce import qualification
stainless-app[bot] Nov 10, 2025
3b0a9ab
refactor(client)!: flatten service namespaces
stainless-app[bot] Nov 10, 2025
e9ab518
feat(client): validate constant values
stainless-app[bot] Nov 10, 2025
aa4b2f8
fix(client)!: use `DateTimeOffset` instead of `DateTime`
stainless-app[bot] Nov 11, 2025
3a51242
feat(client): add `HttpResponse.ReadAsStream` method
stainless-app[bot] Nov 12, 2025
118fd1e
refactor(client): move some defaults out of `ClientOptions`
stainless-app[bot] Nov 12, 2025
35d0ba7
chore(internal): codegen related update
stainless-app[bot] Nov 12, 2025
0531b3c
refactor(client)!: improve names of some types
stainless-app[bot] Nov 13, 2025
395ffe4
chore(client): deprecate some symbols
stainless-app[bot] Nov 13, 2025
d6db301
feat(api): api update
stainless-app[bot] Nov 13, 2025
e28e87b
chore(internal): update release please config
stainless-app[bot] Nov 14, 2025
517311a
feat(api): api update
stainless-app[bot] Nov 16, 2025
9ddf9be
feat(api): api update
stainless-app[bot] Nov 16, 2025
554c0fd
docs(internal): add warning about implementing interface
stainless-app[bot] Nov 17, 2025
64ba8ff
feat(api): api update
stainless-app[bot] Nov 18, 2025
f9b0119
refactor(client): make unknown variants implicit
stainless-app[bot] Nov 18, 2025
7ca3eea
fix(client): deprecate some constructors
stainless-app[bot] Nov 18, 2025
965ec12
feat(client): additional methods for positional params
stainless-app[bot] Nov 19, 2025
30fe818
chore(client): change name of underlying properties for models and pa…
stainless-app[bot] Nov 20, 2025
e7a5617
chore(internal): update release please config
stainless-app[bot] Nov 20, 2025
def9419
fix(internal): minor project fixes
stainless-app[bot] Nov 20, 2025
9d24c26
fix(internal): install csharpier during ci lint phase
stainless-app[bot] Nov 24, 2025
7f5768a
fix(internal): don't format csproj files
stainless-app[bot] Nov 24, 2025
588ef1d
codegen metadata
stainless-app[bot] Nov 24, 2025
47ee157
refactor(internal): remove abstract static methods
stainless-app[bot] Nov 25, 2025
a13a7da
feat(client): support .NET Standard 2.0
stainless-app[bot] Nov 25, 2025
b214c47
chore(internal): remove redundant keyword
stainless-app[bot] Nov 25, 2025
4934a71
chore(internal): suppress diagnostic for .netstandard2.0
stainless-app[bot] Nov 25, 2025
1a56902
feat(api): api update
stainless-app[bot] Nov 25, 2025
284ef6e
feat(client): improve csproj
stainless-app[bot] Nov 25, 2025
c0a7fcc
fix(internal): running net462 tests on ci
stainless-app[bot] Nov 25, 2025
8b7b709
fix(client)!: use readonly types for properties
stainless-app[bot] Nov 26, 2025
bb19c13
docs: add more comments
stainless-app[bot] Nov 26, 2025
0466032
perf(client): use async deserialization in `HttpResponse`
stainless-app[bot] Dec 1, 2025
fc3c17b
chore(internal): equality and more unit tests
stainless-app[bot] Dec 1, 2025
af22d1e
fix(client): handling of null value type
stainless-app[bot] Dec 1, 2025
32d7f99
feat(client): add additional implicit conversions
stainless-app[bot] Dec 1, 2025
1bfa8ec
chore(internal): update csproj formatting
stainless-app[bot] Dec 1, 2025
f90e3ae
feat(api): api update
stainless-app[bot] Dec 2, 2025
54eb187
fix(client): check response status when `MaxRetries = 0`
stainless-app[bot] Dec 2, 2025
1de7a74
fix(client): use `JsonElement` in more places
stainless-app[bot] Dec 2, 2025
58e230c
feat(internal): add additional object tests
stainless-app[bot] Dec 2, 2025
4ccd578
feat(api): api update
stainless-app[bot] Dec 3, 2025
7692fdd
feat(client): improve some names
stainless-app[bot] Dec 3, 2025
6aaa0c9
docs: add more comments
stainless-app[bot] Dec 3, 2025
8a3cdcf
fix(client): with expressions for models
stainless-app[bot] Dec 3, 2025
b487f1b
codegen metadata
stainless-app[bot] Dec 4, 2025
d4caa5e
feat(client): add x-stainless-retry-count
stainless-app[bot] Dec 4, 2025
fb72da9
feat(api): api update
stainless-app[bot] Dec 6, 2025
4758f8b
chore(internal): add enum tests
stainless-app[bot] Dec 10, 2025
e3ba15d
chore(client): improve union validation
stainless-app[bot] Dec 10, 2025
4169656
chore(internal): add union tests
stainless-app[bot] Dec 10, 2025
2a78b4a
chore(internal): codegen related update
stainless-app[bot] Dec 11, 2025
1df879b
fix(internal): add nullability checks for tests
stainless-app[bot] Dec 11, 2025
1bfe99f
feat(client): add EnvironmentUrl
stainless-app[bot] Dec 11, 2025
f8a3a59
chore(client): update test dependencies
stainless-app[bot] Dec 11, 2025
ee84747
codegen metadata
stainless-app[bot] Dec 12, 2025
5496540
chore(internal): use `Random.Shared` in newer .NET versions
stainless-app[bot] Dec 16, 2025
5ad70e6
chore(client): improve object instantiation
stainless-app[bot] Dec 17, 2025
3128f7d
codegen metadata
stainless-app[bot] Dec 17, 2025
b072c6b
feat(client): add multipart form data support
stainless-app[bot] Dec 17, 2025
f916e97
docs: add contributing.md
stainless-app[bot] Dec 17, 2025
b2a0df7
feat(client): use strings for date/time
stainless-app[bot] Dec 18, 2025
4b03b94
chore(internal): share csproj properties with dir build props
stainless-app[bot] Dec 19, 2025
ce616af
test(client): more params tests
stainless-app[bot] Dec 19, 2025
124e833
feat(client)!: add pagination
stainless-app[bot] Dec 19, 2025
1d0fcb0
chore(internal): turn off overzealous lints
stainless-app[bot] Dec 19, 2025
eafd445
codegen metadata
stainless-app[bot] Dec 28, 2025
1db03c4
release: 0.1.0
stainless-app[bot] Dec 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
"isRoot": true,
"tools": {
"csharpier": {
"version": "1.0.1",
"version": "1.1.2",
"commands": [
"csharpier"
],
"rollForward": false
}
}
}
}
2 changes: 2 additions & 0 deletions .csharpierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*.csproj
*.props
12 changes: 12 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/dotnet
{
"name": "C# (.NET)",
"image": "mcr.microsoft.com/devcontainers/dotnet:1-9.0-noble",
"postAttachCommand": "cat .vscode/extensions.json | jq -r .recommendations[] | xargs -n 1 code --install-extension",
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
"features": {
// For the Prism mock server.
"ghcr.io/devcontainers/features/node:1": {}
}
}
10 changes: 9 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,12 @@ insert_final_newline = true

dotnet_diagnostic.IDE0060.severity = none # Caused by resource with no methods and no subresources
dotnet_diagnostic.IDE1006.severity = none # Some names may not match up with C# conventions
dotnet_diagnostic.IDE0290.severity = none # Don't prefer primary constructors
dotnet_diagnostic.IDE0290.severity = none # Don't prefer primary constructors
dotnet_diagnostic.IDE0028.severity = none # "Collection initialization can be simplified" is a bit overzealous
dotnet_diagnostic.IDE0090.severity = none # "Simplify 'new' expression" is a bit overzealous

# For .NET Standard 2.0 support
dotnet_diagnostic.IDE0057.severity = none # Caused by use of `.Substring(...)`
dotnet_diagnostic.CA1866.severity = none # Caused by use of `.StartsWith(...)` with single character string
dotnet_diagnostic.CA1847.severity = none # Caused by use of `.Contains(...)` with single character string
dotnet_diagnostic.CA2263.severity = none # Caused by use of non-generic `Enum.IsDefined(...)`
24 changes: 22 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,17 @@ jobs:
with:
dotnet-version: '8.0.x'

- name: Run bootstrap
run: ./scripts/bootstrap

- name: Run lints
run: ./scripts/lint
test:
build:
timeout-minutes: 10
name: test
name: build
runs-on: ${{ github.repository == 'stainless-sdks/orb-csharp' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork

steps:
- uses: actions/checkout@v4

Expand All @@ -42,5 +46,21 @@ jobs:
with:
dotnet-version: '8.0.x'

- name: Build SDK
run: ./scripts/build

test:
timeout-minutes: 10
name: test
runs-on: ${{ github.repository == 'stainless-sdks/orb-csharp' && 'depot-windows-2022' || 'windows-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v4

- name: Set up .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: '8.0.x'

- name: Run tests
run: ./scripts/test
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
.prism.log
bin/
obj/
.vs/
.idea/
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "0.1.0"
}
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 116
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-612316c13276a207f56e2e2c7bbc68f4bb73de85e3661595a23f23d9ccc80276.yml
openapi_spec_hash: 6e125f05e40521ec485edf6e15beec2e
config_hash: 8c9a47f104c777e2a1e8f3fad15c093b
configured_endpoints: 118
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-647fcb5866bd752a09db1530acb79134f9cc729b2e00d9abecc0b60806183817.yml
openapi_spec_hash: 080cc78660e0a91499a46ef8bf0a3745
config_hash: 05c94c0e6dbeab2c9b554c2e0d6371a0
10 changes: 10 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"recommendations": [
"ms-dotnettools.csharp",
"editorconfig.editorconfig",
"github.vscode-github-actions",
"ms-dotnettools.vscode-dotnet-runtime",
"ms-dotnettools.csdevkit"
],
"unwantedRecommendations": []
}
190 changes: 190 additions & 0 deletions CHANGELOG.md

Large diffs are not rendered by default.

37 changes: 37 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
## Setting up the environment

To set up the repository, run:

```sh
$ ./scripts/bootstrap
$ ./scripts/build
```

This will install required dependencies and build the SDK.

## Modifying/Adding code

Most of the SDK is generated code. Modifications to code will be persisted between generations, but may
result in merge conflicts between manual patches and changes from the generator. The generator will never
modify the contents of the `examples/` directory.

## Using the repository from source

To use a local version of this library from source in another project, add it using a directory reference:

```sh
$ dotnet add reference /path/to/sdk/src/Orb
```

## Formatting and linting

```sh
$ ./scripts/format
$ ./scripts/lint
```

## Running tests

```sh
$ ./scripts/test
```
Loading