feat: add crewai-tools workspace and fix tests/dependencies

* feat: add crewai-tools workspace structure

* Squashed 'temp-crewai-tools/' content from commit 9bae5633

git-subtree-dir: temp-crewai-tools
git-subtree-split: 9bae56339096cb70f03873e600192bd2cd207ac9

* feat: configure crewai-tools workspace package with dependencies

* fix: apply ruff auto-formatting to crewai-tools code

* chore: update lockfile

* fix: don't allow tool tests yet

* fix: comment out extra pytest flags for now

* fix: remove conflicting conftest.py from crewai-tools tests

* fix: resolve dependency conflicts and test issues

- Pin vcrpy to 7.0.0 to fix pytest-recording compatibility
- Comment out types-requests to resolve urllib3 conflict
- Update requests requirement in crewai-tools to >=2.32.0
This commit is contained in:
Greyson LaLonde
2025-09-28 00:05:42 -04:00
committed by GitHub
parent c591c1ac87
commit 289b90f00a
304 changed files with 46489 additions and 376 deletions

View File

@@ -15,12 +15,13 @@ dev = [
"pytest>=8.4.2",
"pytest-asyncio>=1.2.0",
"pytest-subprocess>=1.5.3",
"vcrpy==7.0.0", # pinned, less versions break pytest-recording
"pytest-recording>=0.13.4",
"pytest-randomly>=4.0.1",
"pytest-timeout>=2.4.0",
"pytest-xdist>=3.8.0",
"pytest-split>=0.10.0",
"types-requests==2.32.*",
# "types-requests==2.32.*",
"types-pyyaml==6.0.*",
"types-regex==2024.11.6.*",
"types-appdirs==1.4.*",
@@ -81,21 +82,30 @@ convention = "google"
[tool.ruff.lint.per-file-ignores]
"lib/crewai/tests/**/*.py" = ["S101", "RET504"] # Allow assert statements and unnecessary assignments before return in tests
"lib/crewai-tools/tests/**/*.py" = ["S101", "RET504"] # Allow assert statements and unnecessary assignments before return in tests
[tool.mypy]
exclude = ["lib/crewai/src/crewai/cli/templates", "lib/crewai/tests/"]
exclude = [
"lib/crewai/src/crewai/cli/templates",
"lib/crewai/tests/",
# crewai-tools
"lib/crewai-tools/tests/"
]
plugins = ["pydantic.mypy"]
[tool.bandit]
exclude_dirs = ["lib/crewai/src/crewai/cli/templates"]
[tool.pytest.ini_options]
markers = [
"telemetry: mark test as a telemetry test (don't mock telemetry)",
]
testpaths = [
"lib/crewai/tests",
"lib/crewai-tools/tests",
]
asyncio_mode = "strict"
asyncio_default_fixture_loop_scope = "function"
@@ -108,7 +118,10 @@ python_functions = "test_*"
[tool.uv.workspace]
members = [
"lib/crewai",
"lib/crewai-tools",
]
[tool.uv.sources]
crewai = { workspace = true }
crewai-tools = { workspace = true }