From 836c890840aeba66af31639ad2cc28af0313bf18 Mon Sep 17 00:00:00 2001 From: Eric Gustin <34000337+EricGustin@users.noreply.github.com> Date: Thu, 10 Jul 2025 10:34:19 -0700 Subject: [PATCH] Release candidates for new toolkits (#479) New toolkit versions are release candidates now. Also fixed a test for e2b toolkit. Also, I am explicitly not running test for toolkits for the post merge workflow because they are run on every PR commit (i.e., they must pass before we even merge) --- .../workflows/release-on-version-change.yml | 2 ++ toolkits/e2b/pyproject.toml | 2 +- toolkits/e2b/tests/test_e2b.py | 20 +++++++++++++------ toolkits/firecrawl/pyproject.toml | 2 +- toolkits/gmail/pyproject.toml | 2 +- toolkits/google_calendar/pyproject.toml | 2 +- toolkits/google_contacts/pyproject.toml | 2 +- toolkits/google_docs/pyproject.toml | 2 +- toolkits/google_drive/pyproject.toml | 2 +- toolkits/google_finance/pyproject.toml | 2 +- toolkits/google_flights/pyproject.toml | 2 +- toolkits/google_hotels/pyproject.toml | 2 +- toolkits/google_jobs/pyproject.toml | 2 +- toolkits/google_maps/pyproject.toml | 2 +- toolkits/google_news/pyproject.toml | 2 +- toolkits/google_search/pyproject.toml | 2 +- toolkits/google_sheets/pyproject.toml | 2 +- toolkits/google_shopping/pyproject.toml | 2 +- toolkits/outlook_calendar/pyproject.toml | 2 +- toolkits/outlook_mail/pyproject.toml | 2 +- toolkits/walmart/pyproject.toml | 2 +- toolkits/youtube/pyproject.toml | 2 +- 22 files changed, 36 insertions(+), 26 deletions(-) diff --git a/.github/workflows/release-on-version-change.yml b/.github/workflows/release-on-version-change.yml index a621761a..18833c22 100644 --- a/.github/workflows/release-on-version-change.yml +++ b/.github/workflows/release-on-version-change.yml @@ -84,6 +84,8 @@ jobs: working-directory: ${{ matrix.package }} - name: Run tests + # Skip tests for toolkits - tests are run on every PR commit for toolkits + if: ${{ !startsWith(matrix.package, 'toolkits/') }} working-directory: ${{ matrix.package }} run: | # Run tests if they exist diff --git a/toolkits/e2b/pyproject.toml b/toolkits/e2b/pyproject.toml index e672d343..375a86a9 100644 --- a/toolkits/e2b/pyproject.toml +++ b/toolkits/e2b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_e2b" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for running code in a sandbox using E2B" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/e2b/tests/test_e2b.py b/toolkits/e2b/tests/test_e2b.py index 3d8ee7d6..36724a08 100644 --- a/toolkits/e2b/tests/test_e2b.py +++ b/toolkits/e2b/tests/test_e2b.py @@ -4,9 +4,9 @@ import pytest from arcade_tdk import ToolContext, ToolSecretItem from arcade_tdk.errors import ToolExecutionError +import arcade_e2b.tools.create_chart +import arcade_e2b.tools.run_code from arcade_e2b.enums import E2BSupportedLanguage -from arcade_e2b.tools.create_chart import create_static_matplotlib_chart -from arcade_e2b.tools.run_code import run_code @pytest.fixture @@ -31,7 +31,9 @@ def test_run_code_success(mock_run_code_sandbox, mock_context): mock_execution.to_json.return_value = '{"result": "success"}' mock_run_code_sandbox.run_code.return_value = mock_execution - result = run_code(mock_context, "print('Hello, World!')", E2BSupportedLanguage.PYTHON) + result = arcade_e2b.tools.run_code( + mock_context, "print('Hello, World!')", E2BSupportedLanguage.PYTHON + ) assert result == '{"result": "success"}' @@ -41,7 +43,9 @@ def test_run_code_error(mock_run_code_sandbox, mock_context): mock_run_code_sandbox.run_code.return_value = mock_execution with pytest.raises(ToolExecutionError, match="Execution failed"): - run_code(mock_context, "print('Hello, World!')", E2BSupportedLanguage.PYTHON) + arcade_e2b.tools.run_code( + mock_context, "print('Hello, World!')", E2BSupportedLanguage.PYTHON + ) def test_create_static_matplotlib_chart_success(mock_create_chart_sandbox, mock_context): @@ -51,7 +55,9 @@ def test_create_static_matplotlib_chart_success(mock_create_chart_sandbox, mock_ mock_execution.error = None mock_create_chart_sandbox.run_code.return_value = mock_execution - result = create_static_matplotlib_chart(mock_context, "import matplotlib.pyplot as plt") + result = arcade_e2b.tools.create_chart.create_static_matplotlib_chart( + mock_context, "import matplotlib.pyplot as plt" + ) assert result == { "base64_image": "base64encodedimage", "logs": '{"logs": "log data"}', @@ -66,7 +72,9 @@ def test_create_static_matplotlib_chart_error(mock_create_chart_sandbox, mock_co mock_execution.error.to_json.return_value = '{"error": "some error"}' mock_create_chart_sandbox.run_code.return_value = mock_execution - result = create_static_matplotlib_chart(mock_context, "import matplotlib.pyplot as plt") + result = arcade_e2b.tools.create_chart.create_static_matplotlib_chart( + mock_context, "import matplotlib.pyplot as plt" + ) assert result == { "base64_image": None, "logs": '{"logs": "log data"}', diff --git a/toolkits/firecrawl/pyproject.toml b/toolkits/firecrawl/pyproject.toml index 79b3790d..33d3bd4c 100644 --- a/toolkits/firecrawl/pyproject.toml +++ b/toolkits/firecrawl/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_firecrawl" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for web scraping related tasks via Firecrawl" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "firecrawl-py>=1.3.1,<2.0.0",] diff --git a/toolkits/gmail/pyproject.toml b/toolkits/gmail/pyproject.toml index f34b4d98..54eba467 100644 --- a/toolkits/gmail/pyproject.toml +++ b/toolkits/gmail/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_gmail" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for Gmail" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_calendar/pyproject.toml b/toolkits/google_calendar/pyproject.toml index 38b8f076..32390bad 100644 --- a/toolkits/google_calendar/pyproject.toml +++ b/toolkits/google_calendar/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_calendar" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for Google Calendar" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_contacts/pyproject.toml b/toolkits/google_contacts/pyproject.toml index 01d0a71a..d8984107 100644 --- a/toolkits/google_contacts/pyproject.toml +++ b/toolkits/google_contacts/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_contacts" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for Google Contacts" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_docs/pyproject.toml b/toolkits/google_docs/pyproject.toml index 58e3f128..96cd68fb 100644 --- a/toolkits/google_docs/pyproject.toml +++ b/toolkits/google_docs/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_docs" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for Google Docs" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_drive/pyproject.toml b/toolkits/google_drive/pyproject.toml index 616c2d77..69af5677 100644 --- a/toolkits/google_drive/pyproject.toml +++ b/toolkits/google_drive/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_drive" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for Google Drive" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_finance/pyproject.toml b/toolkits/google_finance/pyproject.toml index 0f0f97c1..95a9576f 100644 --- a/toolkits/google_finance/pyproject.toml +++ b/toolkits/google_finance/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_finance" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for getting financial data via Google Finance" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "serpapi>=0.1.5,<1.0.0",] diff --git a/toolkits/google_flights/pyproject.toml b/toolkits/google_flights/pyproject.toml index c99a7199..169378b9 100644 --- a/toolkits/google_flights/pyproject.toml +++ b/toolkits/google_flights/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_flights" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for getting flights via Google Flights" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "serpapi>=0.1.5,<1.0.0",] diff --git a/toolkits/google_hotels/pyproject.toml b/toolkits/google_hotels/pyproject.toml index 20ebf5e4..aa3b138e 100644 --- a/toolkits/google_hotels/pyproject.toml +++ b/toolkits/google_hotels/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_hotels" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for getting Hotel information via Google Hotels" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "serpapi>=0.1.5,<1.0.0",] diff --git a/toolkits/google_jobs/pyproject.toml b/toolkits/google_jobs/pyproject.toml index ca5152ae..bb95c947 100644 --- a/toolkits/google_jobs/pyproject.toml +++ b/toolkits/google_jobs/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_jobs" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for getting job postings via Google Jobs" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "serpapi>=0.1.5,<1.0.0",] diff --git a/toolkits/google_maps/pyproject.toml b/toolkits/google_maps/pyproject.toml index 7adb3620..b507cd9b 100644 --- a/toolkits/google_maps/pyproject.toml +++ b/toolkits/google_maps/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_maps" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for getting directions via Google Maps" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "serpapi>=0.1.5,<1.0.0",] diff --git a/toolkits/google_news/pyproject.toml b/toolkits/google_news/pyproject.toml index 36513703..40eda8e6 100644 --- a/toolkits/google_news/pyproject.toml +++ b/toolkits/google_news/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_news" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for getting new via Google News" requires-python = ">=3.10" dependencies = [ "arcade-tdk>=2.0.0,<3.0.0", "serpapi>=0.1.5,<1.0.0",] diff --git a/toolkits/google_search/pyproject.toml b/toolkits/google_search/pyproject.toml index 412b3915..d66058ad 100644 --- a/toolkits/google_search/pyproject.toml +++ b/toolkits/google_search/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_search" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for searching via Google" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_sheets/pyproject.toml b/toolkits/google_sheets/pyproject.toml index bf1a6515..8f5dd834 100644 --- a/toolkits/google_sheets/pyproject.toml +++ b/toolkits/google_sheets/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_sheets" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for Google Sheets" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/google_shopping/pyproject.toml b/toolkits/google_shopping/pyproject.toml index 787c6ea5..dae0fd51 100644 --- a/toolkits/google_shopping/pyproject.toml +++ b/toolkits/google_shopping/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_google_shopping" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for shopping via Google Shopping" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/outlook_calendar/pyproject.toml b/toolkits/outlook_calendar/pyproject.toml index a9f7fb48..f1d1b8cd 100644 --- a/toolkits/outlook_calendar/pyproject.toml +++ b/toolkits/outlook_calendar/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_outlook_calendar" -version = "1.0.0" +version = "1.0.0rc1" description = "rcade.dev LLM tools for Outlook Calendar" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/outlook_mail/pyproject.toml b/toolkits/outlook_mail/pyproject.toml index 765458b6..95be89f0 100644 --- a/toolkits/outlook_mail/pyproject.toml +++ b/toolkits/outlook_mail/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_outlook_mail" -version = "1.0.0" +version = "1.0.0rc1" description = "Arcade.dev LLM tools for Outlook Mail" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/walmart/pyproject.toml b/toolkits/walmart/pyproject.toml index b391d9ea..a03d62c4 100644 --- a/toolkits/walmart/pyproject.toml +++ b/toolkits/walmart/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_walmart" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for searching for products sold by Walmart" requires-python = ">=3.10" dependencies = [ diff --git a/toolkits/youtube/pyproject.toml b/toolkits/youtube/pyproject.toml index fb552c8d..bc3f0d29 100644 --- a/toolkits/youtube/pyproject.toml +++ b/toolkits/youtube/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "arcade_youtube" -version = "2.0.0" +version = "2.0.0rc1" description = "Arcade.dev LLM tools for searching for YouTube videos"" requires-python = ">=3.10" dependencies = [