Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
00250bb
fix(perf): skip traversing types for NotGiven values
stainless-app[bot] Apr 12, 2025
4ce95f7
fix(perf): optimize some hot paths
stainless-app[bot] Apr 12, 2025
c1a4b25
chore(internal): update pyright settings
stainless-app[bot] Apr 15, 2025
b4af709
chore(client): minor internal fixes
stainless-app[bot] Apr 15, 2025
b56ec6c
chore(internal): bump pyright version
stainless-app[bot] Apr 17, 2025
7e7f8c5
chore(internal): base client updates
stainless-app[bot] Apr 17, 2025
4e84f01
chore(internal): update models test
stainless-app[bot] Apr 19, 2025
f51cedc
chore(ci): add timeout thresholds for CI jobs
stainless-app[bot] Apr 23, 2025
bb1b5a8
chore(internal): import reformatting
stainless-app[bot] Apr 23, 2025
12bba1b
chore(internal): fix list file params
stainless-app[bot] Apr 23, 2025
af64ff0
chore(internal): refactor retries to not use recursion
stainless-app[bot] Apr 23, 2025
c16373d
fix(pydantic v1): more robust ModelField.annotation check
stainless-app[bot] Apr 23, 2025
317b682
feat(api): api update
stainless-app[bot] Apr 23, 2025
1f83169
chore(internal): minor formatting changes
stainless-app[bot] Apr 24, 2025
3719d1b
chore(internal): codegen related update
stainless-app[bot] Apr 24, 2025
6c155eb
chore(ci): only use depot for staging repos
stainless-app[bot] Apr 24, 2025
3bff15d
chore: broadly detect json family of content-type headers
stainless-app[bot] Apr 24, 2025
d281683
codegen metadata
stainless-app[bot] Apr 24, 2025
8cfc989
feat(api): api update
stainless-app[bot] Apr 30, 2025
0f46ea8
codegen metadata
stainless-app[bot] May 8, 2025
79c1774
chore(internal): avoid errors for isinstance checks on proxies
stainless-app[bot] May 9, 2025
e082d60
fix(package): support direct resource imports
stainless-app[bot] May 10, 2025
eef43f5
codegen metadata
stainless-app[bot] May 12, 2025
8fda6da
feat(api): api update
stainless-app[bot] May 13, 2025
c07ffc7
codegen metadata
stainless-app[bot] May 13, 2025
f1879ec
codegen metadata
stainless-app[bot] May 13, 2025
da9ab06
codegen metadata
stainless-app[bot] May 14, 2025
ed6c603
chore(ci): upload sdks to package manager
stainless-app[bot] May 15, 2025
02f7bb0
chore(ci): fix installation instructions
stainless-app[bot] May 16, 2025
78f5da8
codegen metadata
stainless-app[bot] May 17, 2025
dc90fe3
feat(api): api update
stainless-app[bot] May 19, 2025
59323c4
codegen metadata
stainless-app[bot] May 20, 2025
8f09ac8
chore(docs): grammar improvements
stainless-app[bot] May 22, 2025
18a5eaf
feat(api): api update
stainless-app[bot] May 23, 2025
07d802a
feat(api): api update
stainless-app[bot] May 24, 2025
558ab83
feat(api): api update
stainless-app[bot] May 27, 2025
84767d7
feat(api): api update
stainless-app[bot] May 27, 2025
179cefd
release: 5.4.0
stainless-app[bot] May 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 34 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
- next
branches-ignore:
- 'generated'
- 'codegen/**'
- 'integrated/**'
- 'stl-preview-head/**'
- 'stl-preview-base/**'

jobs:
lint:
timeout-minutes: 10
name: lint
runs-on: ubuntu-latest
runs-on: ${{ github.repository == 'stainless-sdks/asktable-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v4

Expand All @@ -29,9 +30,34 @@ jobs:
- name: Run lints
run: ./scripts/lint

upload:
if: github.repository == 'stainless-sdks/asktable-python'
timeout-minutes: 10
name: upload
permissions:
contents: read
id-token: write
runs-on: depot-ubuntu-24.04
steps:
- uses: actions/checkout@v4

- name: Get GitHub OIDC Token
id: github-oidc
uses: actions/github-script@v6
with:
script: core.setOutput('github_token', await core.getIDToken());

- name: Upload tarball
env:
URL: https://pkg.stainless.com/s
AUTH: ${{ steps.github-oidc.outputs.github_token }}
SHA: ${{ github.sha }}
run: ./scripts/utils/upload-artifact.sh

test:
timeout-minutes: 10
name: test
runs-on: ubuntu-latest
runs-on: ${{ github.repository == 'stainless-sdks/asktable-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v4

Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "5.3.1"
".": "5.4.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 96
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/datamini%2Fasktable-5f188889fe648ea83d57911900fe61825d9d7d1446fce966ffca7a9bbe2e3079.yml
openapi_spec_hash: 42af219a138819686969b60410be0cb6
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/datamini%2Fasktable-fd9a749a4afed8a45757ab4e83984c36c56cf6f4f0d53b80d4d5e0022869c3e1.yml
openapi_spec_hash: d5cf0471c4e715bdfbf597de3f591ef1
config_hash: a572ab842ea60ce13f1d1a1358440cbe
44 changes: 44 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,49 @@
# Changelog

## 5.4.0 (2025-05-27)

Full Changelog: [v5.3.1...v5.4.0](https://github.com/DataMini/asktable-python/compare/v5.3.1...v5.4.0)

### Features

* **api:** api update ([84767d7](https://github.com/DataMini/asktable-python/commit/84767d7648a7df94f1caf85628576ea948d94475))
* **api:** api update ([558ab83](https://github.com/DataMini/asktable-python/commit/558ab837046be3f9e902a2e073096217bda1438e))
* **api:** api update ([07d802a](https://github.com/DataMini/asktable-python/commit/07d802a94360a7e66e0594b5ba39b9fc4916a56d))
* **api:** api update ([18a5eaf](https://github.com/DataMini/asktable-python/commit/18a5eafaf07afc7c59141e957104728fe2d413b5))
* **api:** api update ([dc90fe3](https://github.com/DataMini/asktable-python/commit/dc90fe3f3b0829913fde1a288eb8f3ff6fbf7e6d))
* **api:** api update ([8fda6da](https://github.com/DataMini/asktable-python/commit/8fda6da68f5c439b69572ad06df119915475acd4))
* **api:** api update ([8cfc989](https://github.com/DataMini/asktable-python/commit/8cfc98987196f71dc9b1ac788a66e7fb7a6b62c9))
* **api:** api update ([317b682](https://github.com/DataMini/asktable-python/commit/317b682b9de2a8803f8d2be7be7a9ed8ad1e961c))


### Bug Fixes

* **package:** support direct resource imports ([e082d60](https://github.com/DataMini/asktable-python/commit/e082d60e17dacc06f1a3091454db8d522bf8e7a2))
* **perf:** optimize some hot paths ([4ce95f7](https://github.com/DataMini/asktable-python/commit/4ce95f7c3a5f0b7568ad63d0bb6fe8dade3d20ff))
* **perf:** skip traversing types for NotGiven values ([00250bb](https://github.com/DataMini/asktable-python/commit/00250bbfc900cb7003e3e77239ced58934b6d826))
* **pydantic v1:** more robust ModelField.annotation check ([c16373d](https://github.com/DataMini/asktable-python/commit/c16373dba54d24f705650aa38d3b4c1a772f23ff))


### Chores

* broadly detect json family of content-type headers ([3bff15d](https://github.com/DataMini/asktable-python/commit/3bff15dcccae660478bd3e6a30aa609e4bcc186f))
* **ci:** add timeout thresholds for CI jobs ([f51cedc](https://github.com/DataMini/asktable-python/commit/f51cedc6e85b7300ae989972c02c2f4303c7838a))
* **ci:** fix installation instructions ([02f7bb0](https://github.com/DataMini/asktable-python/commit/02f7bb02172f9ac58153e92c2acc063c876fd63b))
* **ci:** only use depot for staging repos ([6c155eb](https://github.com/DataMini/asktable-python/commit/6c155eb595e7227c769e953a5040b577f85f494c))
* **ci:** upload sdks to package manager ([ed6c603](https://github.com/DataMini/asktable-python/commit/ed6c603a22bc79cf74791566cef81b536dc0d0b3))
* **client:** minor internal fixes ([b4af709](https://github.com/DataMini/asktable-python/commit/b4af709160aa14f36bef3a624c069b21290ded66))
* **docs:** grammar improvements ([8f09ac8](https://github.com/DataMini/asktable-python/commit/8f09ac84dd9df377925ec5ed214037c1c5b23d48))
* **internal:** avoid errors for isinstance checks on proxies ([79c1774](https://github.com/DataMini/asktable-python/commit/79c1774d4d811f45d947711c509911d5b0880e72))
* **internal:** base client updates ([7e7f8c5](https://github.com/DataMini/asktable-python/commit/7e7f8c56783a125505f587d6f206da00da98f438))
* **internal:** bump pyright version ([b56ec6c](https://github.com/DataMini/asktable-python/commit/b56ec6cc156694361cbd43a2d8590813f30a47c0))
* **internal:** codegen related update ([3719d1b](https://github.com/DataMini/asktable-python/commit/3719d1bf1db482d5f08368b6162d67c878e48369))
* **internal:** fix list file params ([12bba1b](https://github.com/DataMini/asktable-python/commit/12bba1b329d0149f1b8065c983efbddda6a1a1d1))
* **internal:** import reformatting ([bb1b5a8](https://github.com/DataMini/asktable-python/commit/bb1b5a84fbea13e655f968639f3e5edf584914ad))
* **internal:** minor formatting changes ([1f83169](https://github.com/DataMini/asktable-python/commit/1f83169570f13ba1ede9c92a23e610018d39f8e0))
* **internal:** refactor retries to not use recursion ([af64ff0](https://github.com/DataMini/asktable-python/commit/af64ff050f75fae9c6368c6c0d105197f227397c))
* **internal:** update models test ([4e84f01](https://github.com/DataMini/asktable-python/commit/4e84f01f5b52e119f73cab72e4ea3ceaa1889e42))
* **internal:** update pyright settings ([c1a4b25](https://github.com/DataMini/asktable-python/commit/c1a4b25eda6192bfb974f1aa6b21ae35f4ea762e))

## 5.3.1 (2025-04-10)

Full Changelog: [v5.3.0...v5.3.1](https://github.com/DataMini/asktable-python/compare/v5.3.0...v5.3.1)
Expand Down
4 changes: 2 additions & 2 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ before making any information public.
## Reporting Non-SDK Related Security Issues

If you encounter security issues that are not directly related to SDKs but pertain to the services
or products provided by Asktable please follow the respective company's security reporting guidelines.
or products provided by Asktable, please follow the respective company's security reporting guidelines.

### Asktable Terms and Policies

Please contact hi@datamini.ai for any questions or concerns regarding security of our services.
Please contact hi@datamini.ai for any questions or concerns regarding the security of our services.

---

Expand Down
5 changes: 3 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "asktable"
version = "5.3.1"
version = "5.4.0"
description = "The official Python library for the Asktable API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down Expand Up @@ -42,7 +42,7 @@ Repository = "https://github.com/DataMini/asktable-python"
managed = true
# version pins are in requirements-dev.lock
dev-dependencies = [
"pyright>=1.1.359",
"pyright==1.1.399",
"mypy",
"respx",
"pytest",
Expand Down Expand Up @@ -147,6 +147,7 @@ exclude = [
]

reportImplicitOverride = true
reportOverlappingOverload = false

reportImportCycles = false
reportPrivateUsage = false
Expand Down
2 changes: 1 addition & 1 deletion requirements-dev.lock
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ pydantic-core==2.27.1
# via pydantic
pygments==2.18.0
# via rich
pyright==1.1.392.post0
pyright==1.1.399
pytest==8.3.3
# via pytest-asyncio
pytest-asyncio==0.24.0
Expand Down
25 changes: 25 additions & 0 deletions scripts/utils/upload-artifact.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#!/usr/bin/env bash
set -exuo pipefail

RESPONSE=$(curl -X POST "$URL" \
-H "Authorization: Bearer $AUTH" \
-H "Content-Type: application/json")

SIGNED_URL=$(echo "$RESPONSE" | jq -r '.url')

if [[ "$SIGNED_URL" == "null" ]]; then
echo -e "\033[31mFailed to get signed URL.\033[0m"
exit 1
fi

UPLOAD_RESPONSE=$(tar -cz . | curl -v -X PUT \
-H "Content-Type: application/gzip" \
--data-binary @- "$SIGNED_URL" 2>&1)

if echo "$UPLOAD_RESPONSE" | grep -q "HTTP/[0-9.]* 200"; then
echo -e "\033[32mUploaded build to Stainless storage.\033[0m"
echo -e "\033[32mInstallation: pip install 'https://pkg.stainless.com/s/asktable-python/$SHA'\033[0m"
else
echo -e "\033[31mFailed to upload artifact.\033[0m"
exit 1
fi
5 changes: 5 additions & 0 deletions src/asktable/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

import typing as _t

from . import types
from ._types import NOT_GIVEN, Omit, NoneType, NotGiven, Transport, ProxiesTypes
from ._utils import file_from_path
Expand Down Expand Up @@ -78,6 +80,9 @@
"DefaultAsyncHttpxClient",
]

if not _t.TYPE_CHECKING:
from ._utils._resources_proxy import resources as resources

_setup_logging()

# Update the __module__ attribute for exported symbols so that
Expand Down
Loading