From 65d9e06acc7a7cbabefb2625c4404848681c0e03 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 22 Aug 2025 02:43:16 +0000 Subject: [PATCH 1/4] chore: update github action --- .github/workflows/ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1c03ca75..de279cc3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: run: ./scripts/lint build: - if: github.repository == 'stainless-sdks/supermemory-new-python' && (github.event_name == 'push' || github.event.pull_request.head.repo.fork) + if: github.event_name == 'push' || github.event.pull_request.head.repo.fork timeout-minutes: 10 name: build permissions: @@ -61,12 +61,14 @@ jobs: run: rye build - name: Get GitHub OIDC Token + if: github.repository == 'stainless-sdks/supermemory-new-python' id: github-oidc uses: actions/github-script@v6 with: script: core.setOutput('github_token', await core.getIDToken()); - name: Upload tarball + if: github.repository == 'stainless-sdks/supermemory-new-python' env: URL: https://pkg.stainless.com/s AUTH: ${{ steps.github-oidc.outputs.github_token }} From cf6d58befc0f976222f875eb74594b64a4e36803 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 24 Aug 2025 20:14:22 +0000 Subject: [PATCH 2/4] feat(api): api update --- .stats.yml | 4 +-- src/supermemory/resources/memories.py | 32 ++++++++++++++++--- src/supermemory/types/memory_add_params.py | 11 +++++-- src/supermemory/types/memory_update_params.py | 11 +++++-- tests/api_resources/test_memories.py | 4 +++ 5 files changed, 52 insertions(+), 10 deletions(-) diff --git a/.stats.yml b/.stats.yml index bc5bbced..2b80d773 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 18 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/supermemory--inc%2Fsupermemory-new-d52acd1a525b4bfe9f4befcc3a645f5d1289d75e7bad999cf1330e539b2ed84e.yml -openapi_spec_hash: c34df5406cfa4d245812d30f99d28116 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/supermemory--inc%2Fsupermemory-new-cdba3e7c4cacab2e42f8d071222818947c5bbbe25407b59ab303e2ac02d46744.yml +openapi_spec_hash: 870497c8690aabac0a0ad68e4fe09076 config_hash: 9b9291a6c872b063900a46386729ba3c diff --git a/src/supermemory/resources/memories.py b/src/supermemory/resources/memories.py index 1cf1c08e..5fdec015 100644 --- a/src/supermemory/resources/memories.py +++ b/src/supermemory/resources/memories.py @@ -52,6 +52,7 @@ def update( self, id: str, *, + container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -67,9 +68,13 @@ def update( Update a memory with any content type (text, url, file, etc.) and metadata Args: - container_tags: Optional tags this memory should be containerized by. This can be an ID for your + container_tag: Optional tag this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. + container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be + containerized by. This can be an ID for your user, a project ID, or any other + identifier you wish to use to group memories. + content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -102,6 +107,7 @@ def update( f"/v3/memories/{id}", body=maybe_transform( { + "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, @@ -212,6 +218,7 @@ def delete( def add( self, *, + container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -227,9 +234,13 @@ def add( Add a memory with any content type (text, url, file, etc.) and metadata Args: - container_tags: Optional tags this memory should be containerized by. This can be an ID for your + container_tag: Optional tag this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. + container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be + containerized by. This can be an ID for your user, a project ID, or any other + identifier you wish to use to group memories. + content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -260,6 +271,7 @@ def add( "/v3/memories", body=maybe_transform( { + "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, @@ -376,6 +388,7 @@ async def update( self, id: str, *, + container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -391,9 +404,13 @@ async def update( Update a memory with any content type (text, url, file, etc.) and metadata Args: - container_tags: Optional tags this memory should be containerized by. This can be an ID for your + container_tag: Optional tag this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. + container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be + containerized by. This can be an ID for your user, a project ID, or any other + identifier you wish to use to group memories. + content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -426,6 +443,7 @@ async def update( f"/v3/memories/{id}", body=await async_maybe_transform( { + "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, @@ -536,6 +554,7 @@ async def delete( async def add( self, *, + container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -551,9 +570,13 @@ async def add( Add a memory with any content type (text, url, file, etc.) and metadata Args: - container_tags: Optional tags this memory should be containerized by. This can be an ID for your + container_tag: Optional tag this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. + container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be + containerized by. This can be an ID for your user, a project ID, or any other + identifier you wish to use to group memories. + content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -584,6 +607,7 @@ async def add( "/v3/memories", body=await async_maybe_transform( { + "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, diff --git a/src/supermemory/types/memory_add_params.py b/src/supermemory/types/memory_add_params.py index d4837214..c822f78e 100644 --- a/src/supermemory/types/memory_add_params.py +++ b/src/supermemory/types/memory_add_params.py @@ -11,13 +11,20 @@ class MemoryAddParams(TypedDict, total=False): - container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] - """Optional tags this memory should be containerized by. + container_tag: Annotated[str, PropertyInfo(alias="containerTag")] + """Optional tag this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. """ + container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] + """ + (DEPRECATED: Use containerTag instead) Optional tags this memory should be + containerized by. This can be an ID for your user, a project ID, or any other + identifier you wish to use to group memories. + """ + content: str """The content to extract and process into a memory. diff --git a/src/supermemory/types/memory_update_params.py b/src/supermemory/types/memory_update_params.py index 9bd1e71c..0faf4478 100644 --- a/src/supermemory/types/memory_update_params.py +++ b/src/supermemory/types/memory_update_params.py @@ -11,13 +11,20 @@ class MemoryUpdateParams(TypedDict, total=False): - container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] - """Optional tags this memory should be containerized by. + container_tag: Annotated[str, PropertyInfo(alias="containerTag")] + """Optional tag this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. """ + container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] + """ + (DEPRECATED: Use containerTag instead) Optional tags this memory should be + containerized by. This can be an ID for your user, a project ID, or any other + identifier you wish to use to group memories. + """ + content: str """The content to extract and process into a memory. diff --git a/tests/api_resources/test_memories.py b/tests/api_resources/test_memories.py index f3d88303..2aec1fb9 100644 --- a/tests/api_resources/test_memories.py +++ b/tests/api_resources/test_memories.py @@ -36,6 +36,7 @@ def test_method_update(self, client: Supermemory) -> None: def test_method_update_with_all_params(self, client: Supermemory) -> None: memory = client.memories.update( id="id", + container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", @@ -177,6 +178,7 @@ def test_method_add(self, client: Supermemory) -> None: @parametrize def test_method_add_with_all_params(self, client: Supermemory) -> None: memory = client.memories.add( + container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", @@ -317,6 +319,7 @@ async def test_method_update(self, async_client: AsyncSupermemory) -> None: async def test_method_update_with_all_params(self, async_client: AsyncSupermemory) -> None: memory = await async_client.memories.update( id="id", + container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", @@ -458,6 +461,7 @@ async def test_method_add(self, async_client: AsyncSupermemory) -> None: @parametrize async def test_method_add_with_all_params(self, async_client: AsyncSupermemory) -> None: memory = await async_client.memories.add( + container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", From 27dcd49c6bbf1c4c1bc11acc02c852a8849f158a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 24 Aug 2025 21:14:22 +0000 Subject: [PATCH 3/4] feat(api): api update --- .stats.yml | 4 +-- src/supermemory/resources/memories.py | 32 +++---------------- src/supermemory/types/memory_add_params.py | 11 ++----- src/supermemory/types/memory_update_params.py | 11 ++----- tests/api_resources/test_memories.py | 4 --- 5 files changed, 10 insertions(+), 52 deletions(-) diff --git a/.stats.yml b/.stats.yml index 2b80d773..a13515f2 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 18 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/supermemory--inc%2Fsupermemory-new-cdba3e7c4cacab2e42f8d071222818947c5bbbe25407b59ab303e2ac02d46744.yml -openapi_spec_hash: 870497c8690aabac0a0ad68e4fe09076 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/supermemory--inc%2Fsupermemory-new-3d4dd8ac24dba1f3cd5632eedbabafdac2ca7a2c4b99376d0896437497992861.yml +openapi_spec_hash: 2ae20c06f18b7be58fabcfd6db1b5acf config_hash: 9b9291a6c872b063900a46386729ba3c diff --git a/src/supermemory/resources/memories.py b/src/supermemory/resources/memories.py index 5fdec015..1cf1c08e 100644 --- a/src/supermemory/resources/memories.py +++ b/src/supermemory/resources/memories.py @@ -52,7 +52,6 @@ def update( self, id: str, *, - container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -68,13 +67,9 @@ def update( Update a memory with any content type (text, url, file, etc.) and metadata Args: - container_tag: Optional tag this memory should be containerized by. This can be an ID for your + container_tags: Optional tags this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. - container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be - containerized by. This can be an ID for your user, a project ID, or any other - identifier you wish to use to group memories. - content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -107,7 +102,6 @@ def update( f"/v3/memories/{id}", body=maybe_transform( { - "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, @@ -218,7 +212,6 @@ def delete( def add( self, *, - container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -234,13 +227,9 @@ def add( Add a memory with any content type (text, url, file, etc.) and metadata Args: - container_tag: Optional tag this memory should be containerized by. This can be an ID for your + container_tags: Optional tags this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. - container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be - containerized by. This can be an ID for your user, a project ID, or any other - identifier you wish to use to group memories. - content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -271,7 +260,6 @@ def add( "/v3/memories", body=maybe_transform( { - "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, @@ -388,7 +376,6 @@ async def update( self, id: str, *, - container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -404,13 +391,9 @@ async def update( Update a memory with any content type (text, url, file, etc.) and metadata Args: - container_tag: Optional tag this memory should be containerized by. This can be an ID for your + container_tags: Optional tags this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. - container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be - containerized by. This can be an ID for your user, a project ID, or any other - identifier you wish to use to group memories. - content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -443,7 +426,6 @@ async def update( f"/v3/memories/{id}", body=await async_maybe_transform( { - "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, @@ -554,7 +536,6 @@ async def delete( async def add( self, *, - container_tag: str | NotGiven = NOT_GIVEN, container_tags: List[str] | NotGiven = NOT_GIVEN, content: str | NotGiven = NOT_GIVEN, custom_id: str | NotGiven = NOT_GIVEN, @@ -570,13 +551,9 @@ async def add( Add a memory with any content type (text, url, file, etc.) and metadata Args: - container_tag: Optional tag this memory should be containerized by. This can be an ID for your + container_tags: Optional tags this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. - container_tags: (DEPRECATED: Use containerTag instead) Optional tags this memory should be - containerized by. This can be an ID for your user, a project ID, or any other - identifier you wish to use to group memories. - content: The content to extract and process into a memory. This can be a URL to a website, a PDF, an image, or a video. @@ -607,7 +584,6 @@ async def add( "/v3/memories", body=await async_maybe_transform( { - "container_tag": container_tag, "container_tags": container_tags, "content": content, "custom_id": custom_id, diff --git a/src/supermemory/types/memory_add_params.py b/src/supermemory/types/memory_add_params.py index c822f78e..d4837214 100644 --- a/src/supermemory/types/memory_add_params.py +++ b/src/supermemory/types/memory_add_params.py @@ -11,20 +11,13 @@ class MemoryAddParams(TypedDict, total=False): - container_tag: Annotated[str, PropertyInfo(alias="containerTag")] - """Optional tag this memory should be containerized by. + container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] + """Optional tags this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. """ - container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] - """ - (DEPRECATED: Use containerTag instead) Optional tags this memory should be - containerized by. This can be an ID for your user, a project ID, or any other - identifier you wish to use to group memories. - """ - content: str """The content to extract and process into a memory. diff --git a/src/supermemory/types/memory_update_params.py b/src/supermemory/types/memory_update_params.py index 0faf4478..9bd1e71c 100644 --- a/src/supermemory/types/memory_update_params.py +++ b/src/supermemory/types/memory_update_params.py @@ -11,20 +11,13 @@ class MemoryUpdateParams(TypedDict, total=False): - container_tag: Annotated[str, PropertyInfo(alias="containerTag")] - """Optional tag this memory should be containerized by. + container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] + """Optional tags this memory should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group memories. """ - container_tags: Annotated[List[str], PropertyInfo(alias="containerTags")] - """ - (DEPRECATED: Use containerTag instead) Optional tags this memory should be - containerized by. This can be an ID for your user, a project ID, or any other - identifier you wish to use to group memories. - """ - content: str """The content to extract and process into a memory. diff --git a/tests/api_resources/test_memories.py b/tests/api_resources/test_memories.py index 2aec1fb9..f3d88303 100644 --- a/tests/api_resources/test_memories.py +++ b/tests/api_resources/test_memories.py @@ -36,7 +36,6 @@ def test_method_update(self, client: Supermemory) -> None: def test_method_update_with_all_params(self, client: Supermemory) -> None: memory = client.memories.update( id="id", - container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", @@ -178,7 +177,6 @@ def test_method_add(self, client: Supermemory) -> None: @parametrize def test_method_add_with_all_params(self, client: Supermemory) -> None: memory = client.memories.add( - container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", @@ -319,7 +317,6 @@ async def test_method_update(self, async_client: AsyncSupermemory) -> None: async def test_method_update_with_all_params(self, async_client: AsyncSupermemory) -> None: memory = await async_client.memories.update( id="id", - container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", @@ -461,7 +458,6 @@ async def test_method_add(self, async_client: AsyncSupermemory) -> None: @parametrize async def test_method_add_with_all_params(self, async_client: AsyncSupermemory) -> None: memory = await async_client.memories.add( - container_tag="user_123", container_tags=["user_123", "project_123"], content="This is a detailed article about machine learning concepts...", custom_id="mem_abc123", From b6d6ea11b84df7b55277c2f9c12a65b090d799f0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 24 Aug 2025 21:14:42 +0000 Subject: [PATCH 4/4] release: 3.0.0-alpha.27 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 14 ++++++++++++++ pyproject.toml | 2 +- src/supermemory/_version.py | 2 +- 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 6680703a..03086f9d 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "3.0.0-alpha.26" + ".": "3.0.0-alpha.27" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index ac06773e..a1a58c08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## 3.0.0-alpha.27 (2025-08-24) + +Full Changelog: [v3.0.0-alpha.26...v3.0.0-alpha.27](https://github.com/supermemoryai/python-sdk/compare/v3.0.0-alpha.26...v3.0.0-alpha.27) + +### Features + +* **api:** api update ([27dcd49](https://github.com/supermemoryai/python-sdk/commit/27dcd49c6bbf1c4c1bc11acc02c852a8849f158a)) +* **api:** api update ([cf6d58b](https://github.com/supermemoryai/python-sdk/commit/cf6d58befc0f976222f875eb74594b64a4e36803)) + + +### Chores + +* update github action ([65d9e06](https://github.com/supermemoryai/python-sdk/commit/65d9e06acc7a7cbabefb2625c4404848681c0e03)) + ## 3.0.0-alpha.26 (2025-08-15) Full Changelog: [v3.0.0-alpha.25...v3.0.0-alpha.26](https://github.com/supermemoryai/python-sdk/compare/v3.0.0-alpha.25...v3.0.0-alpha.26) diff --git a/pyproject.toml b/pyproject.toml index 64bdb490..134bc5d9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "supermemory" -version = "3.0.0-alpha.26" +version = "3.0.0-alpha.27" description = "The official Python library for the supermemory API" dynamic = ["readme"] license = "Apache-2.0" diff --git a/src/supermemory/_version.py b/src/supermemory/_version.py index e1dbbcf7..32bad122 100644 --- a/src/supermemory/_version.py +++ b/src/supermemory/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "supermemory" -__version__ = "3.0.0-alpha.26" # x-release-please-version +__version__ = "3.0.0-alpha.27" # x-release-please-version