diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8bca429..5169f42 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -40,6 +40,23 @@ jobs: - name: Test run: poetry run pytest -rP -n auto . + security: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + - name: Set up python + uses: actions/setup-python@v4 + with: + python-version: "3.9" + - name: Bootstrap poetry + run: | + curl -sSL https://install.python-poetry.org | python - -y --version 1.5.1 + - name: Install dependencies + run: poetry install + - name: Security scan + run: poetry run pip-audit . + publish: needs: [compile, test] if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..c0d9603 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 AgentMail + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/pyproject.toml b/pyproject.toml index 6245bf4..c94fe77 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -53,6 +53,7 @@ pytest-xdist = "^3.6.1" python-dateutil = "^2.9.0" types-python-dateutil = "^2.9.0.20240316" ruff = "==0.11.5" +pip-audit = "^2.7.0" [tool.pytest.ini_options] testpaths = [ "tests" ] diff --git a/src/agentmail/core/query_encoder.py b/src/agentmail/core/query_encoder.py index 94228a8..ddd5078 100644 --- a/src/agentmail/core/query_encoder.py +++ b/src/agentmail/core/query_encoder.py @@ -1,7 +1,7 @@ # This file was auto-generated by Fern from our API Definition. -from typing import Any, Dict, List, Optional, Tuple import json +from typing import Any, Dict, List, Optional, Tuple import pydantic diff --git a/tests/utils/test_query_encoding.py b/tests/utils/test_query_encoding.py index 4f4c442..e3766a4 100644 --- a/tests/utils/test_query_encoding.py +++ b/tests/utils/test_query_encoding.py @@ -3,6 +3,7 @@ from agentmail.core.query_encoder import encode_query + def test_query_encoding_simple_list() -> None: assert encode_query({"hello": ["world", "today"]}) == [("hello", '["world", "today"]')]