From 430bfe06ab9314f3f3013bf6928d47a9a450109e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 6 Mar 2026 23:19:27 +0000 Subject: [PATCH 1/3] refactor(types): use `extra_items` from PEP 728 --- src/moderation_api/types/author_create_params.py | 9 +++------ src/moderation_api/types/author_update_params.py | 9 +++------ src/moderation_api/types/content_submit_params.py | 10 ++-------- 3 files changed, 8 insertions(+), 20 deletions(-) diff --git a/src/moderation_api/types/author_create_params.py b/src/moderation_api/types/author_create_params.py index 5a76f7c..427c575 100644 --- a/src/moderation_api/types/author_create_params.py +++ b/src/moderation_api/types/author_create_params.py @@ -2,8 +2,8 @@ from __future__ import annotations -from typing import Dict, Union, Optional -from typing_extensions import Required, TypeAlias, TypedDict +from typing import Optional +from typing_extensions import Required, TypedDict __all__ = ["AuthorCreateParams", "Metadata"] @@ -40,7 +40,7 @@ class AuthorCreateParams(TypedDict, total=False): """URL of the author's profile picture""" -class MetadataTyped(TypedDict, total=False): +class Metadata(TypedDict, total=False, extra_items=object): # type: ignore[call-arg] """Additional metadata provided by your system. We recommend including any relevant information that may assist in the moderation process. @@ -57,6 +57,3 @@ class MetadataTyped(TypedDict, total=False): phone_verified: Optional[bool] """Whether the author's phone number is verified""" - - -Metadata: TypeAlias = Union[MetadataTyped, Dict[str, object]] diff --git a/src/moderation_api/types/author_update_params.py b/src/moderation_api/types/author_update_params.py index d9c9ca1..0faecbc 100644 --- a/src/moderation_api/types/author_update_params.py +++ b/src/moderation_api/types/author_update_params.py @@ -2,8 +2,8 @@ from __future__ import annotations -from typing import Dict, Union, Optional -from typing_extensions import TypeAlias, TypedDict +from typing import Optional +from typing_extensions import TypedDict __all__ = ["AuthorUpdateParams", "Metadata"] @@ -37,7 +37,7 @@ class AuthorUpdateParams(TypedDict, total=False): """URL of the author's profile picture""" -class MetadataTyped(TypedDict, total=False): +class Metadata(TypedDict, total=False, extra_items=object): # type: ignore[call-arg] """Additional metadata provided by your system. We recommend including any relevant information that may assist in the moderation process. @@ -54,6 +54,3 @@ class MetadataTyped(TypedDict, total=False): phone_verified: Optional[bool] """Whether the author's phone number is verified""" - - -Metadata: TypeAlias = Union[MetadataTyped, Dict[str, object]] diff --git a/src/moderation_api/types/content_submit_params.py b/src/moderation_api/types/content_submit_params.py index 6cbd67c..abddc88 100644 --- a/src/moderation_api/types/content_submit_params.py +++ b/src/moderation_api/types/content_submit_params.py @@ -380,7 +380,7 @@ class PolicyCodeAbuse(TypedDict, total=False): threshold: float -class PolicyPiiMaskingEntitiesTyped(TypedDict, total=False): +class PolicyPiiMaskingEntities(TypedDict, total=False, extra_items=object): # type: ignore[call-arg] enable: bool flag: bool @@ -390,16 +390,13 @@ class PolicyPiiMaskingEntitiesTyped(TypedDict, total=False): should_mask: Annotated[bool, PropertyInfo(alias="shouldMask")] -PolicyPiiMaskingEntities: TypeAlias = Union[PolicyPiiMaskingEntitiesTyped, Dict[str, object]] - - class PolicyPiiMasking(TypedDict, total=False): id: Required[Literal["pii"]] entities: Required[Dict[str, PolicyPiiMaskingEntities]] -class PolicyURLMaskingEntitiesTyped(TypedDict, total=False): +class PolicyURLMaskingEntities(TypedDict, total=False, extra_items=object): # type: ignore[call-arg] enable: bool flag: bool @@ -409,9 +406,6 @@ class PolicyURLMaskingEntitiesTyped(TypedDict, total=False): should_mask: Annotated[bool, PropertyInfo(alias="shouldMask")] -PolicyURLMaskingEntities: TypeAlias = Union[PolicyURLMaskingEntitiesTyped, Dict[str, object]] - - class PolicyURLMasking(TypedDict, total=False): id: Required[Literal["url"]] From e6100213a30c4915355288c031b412f945479bc8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 7 Mar 2026 21:46:37 +0000 Subject: [PATCH 2/3] chore(ci): skip uploading artifacts on stainless-internal branches --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f3ef159..8a5c919 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -55,14 +55,18 @@ jobs: run: uv build - name: Get GitHub OIDC Token - if: github.repository == 'stainless-sdks/moderation-api-python' + if: |- + github.repository == 'stainless-sdks/moderation-api-python' && + !startsWith(github.ref, 'refs/heads/stl/') id: github-oidc uses: actions/github-script@v8 with: script: core.setOutput('github_token', await core.getIDToken()); - name: Upload tarball - if: github.repository == 'stainless-sdks/moderation-api-python' + if: |- + github.repository == 'stainless-sdks/moderation-api-python' && + !startsWith(github.ref, 'refs/heads/stl/') env: URL: https://pkg.stainless.com/s AUTH: ${{ steps.github-oidc.outputs.github_token }} From 63ca851b8c7b8024cbef742f41f96bacb8c57050 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 7 Mar 2026 21:46:52 +0000 Subject: [PATCH 3/3] release: 1.11.1 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 13 +++++++++++++ pyproject.toml | 2 +- src/moderation_api/_version.py | 2 +- 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index caf1487..271a68c 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.11.0" + ".": "1.11.1" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 81fc521..c7d6d18 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## 1.11.1 (2026-03-07) + +Full Changelog: [v1.11.0...v1.11.1](https://github.com/moderation-api/sdk-python/compare/v1.11.0...v1.11.1) + +### Chores + +* **ci:** skip uploading artifacts on stainless-internal branches ([e610021](https://github.com/moderation-api/sdk-python/commit/e6100213a30c4915355288c031b412f945479bc8)) + + +### Refactors + +* **types:** use `extra_items` from PEP 728 ([430bfe0](https://github.com/moderation-api/sdk-python/commit/430bfe06ab9314f3f3013bf6928d47a9a450109e)) + ## 1.11.0 (2026-03-03) Full Changelog: [v1.10.0...v1.11.0](https://github.com/moderation-api/sdk-python/compare/v1.10.0...v1.11.0) diff --git a/pyproject.toml b/pyproject.toml index c28e711..c82953e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "moderation_api" -version = "1.11.0" +version = "1.11.1" description = "The official Python library for the moderation-api API" dynamic = ["readme"] license = "Apache-2.0" diff --git a/src/moderation_api/_version.py b/src/moderation_api/_version.py index ba9e3f9..f8e0379 100644 --- a/src/moderation_api/_version.py +++ b/src/moderation_api/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "moderation_api" -__version__ = "1.11.0" # x-release-please-version +__version__ = "1.11.1" # x-release-please-version