[tool.ruff] fix = true exclude = [ ".bzr", ".direnv", ".eggs", ".git", ".hg", ".mypy_cache", ".nox", ".pants.d", ".pytype", ".ruff_cache", ".svn", ".tox", ".venv", "__pypackages__", "_build", "buck-out", "build", "dist", "node_modules", "venv", "migrations", ] line-length = 80 [tool.ruff.lint] preview = true select = ["E", "F", "B"] #select = ["E", "F", "I", "PL", "I", "B"] ignore = ["B008", "E501"] # black will take care of line-length violations ignore-init-module-imports = true unfixable = [] [tool.ruff.lint.mccabe] max-complexity = 10 [tool.ruff.lint.per-file-ignores] "__init__.py" = ["F403", "F405", "E501"] "consts.py" = ["E501"] [tool.black] line-length = 80 target-version = ['py39', 'py310', 'py311', 'py312', 'py313'] extend-exclude = ''' /( # The following are specific to Black, you probably don't want those. | blib2to3 | tests/data | profiling )/ ''' [tool.isort] profile = "black" line_length = 80 [tool.uv.sources] sqlmodel-crud-utilities = { git = "https://github.com/fsecada01/SQLModel-CRUD-Utilities", rev = "83e964f6e7b633e339e45ddcaaa49cd8617fa105" } fastapi-debug-toolbar = { git = "https://github.com/fsecada01/fastapi-debug-toolbar.git", rev = "2da9f1e724d1d7ca56990ba7a8e72598fa3e1cf4" } #multi_line_output = 3 #include_trailing_comma = true #force_grid_wrap = 0 [project] name = "agentic_ai_service" authors = [ { name = "Francis Secada", email = "francis.secada@gmail.com" } ] readme = "README.md" classifiers = [ "Programming Language :: Python :: 3", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", ] version = "1.0.0b0" dependencies = [ "aiofiles==24.1.0", "aiomysql==0.2.0", "amqp==5.3.1", "annotated-types==0.7.0", "anthropic==0.44.0", "anyio==4.8.0", "appdirs==1.4.4", "asgiref==3.8.1", "asttokens==2.4.1", "asyncpg==0.30.0", "beautifulsoup4==4.12.3", "billiard==4.2.1", "cachetools==5.5.1", "celery==5.4.0", "certifi==2024.12.14", "charset-normalizer==3.4.1", "click-didyoumean==0.3.1", "click-plugins==1.1.1", "click-repl==0.3.0", "click==8.1.8", "colorama==0.4.6", "cssselect==1.2.0", "deprecated==1.2.15", "devtools==0.12.2", "distro==1.9.0", "eval-type-backport==0.2.2", "executing==2.1.0", "fake-useragent==2.0.3", "fastapi-restful==0.6.0", "fastapi==0.115.6", "fastcrud==0.15.5", "flower==2.0.1", "google-auth==2.37.0", "googleapis-common-protos==1.66.0", "greenlet==3.1.1", "griffe==1.5.5", "groq==0.15.0", "h11==0.14.0", "h2==4.1.0", "hpack==4.0.0", "html5lib==1.1", "httpcore==1.0.7", "httpx-html==0.11.0.dev0", "httpx==0.28.1", "humanize==4.11.0", "hypercorn==0.17.3", "hyperframe==6.0.1", "idna==3.10", "importlib-metadata==8.5.0", "itsdangerous==2.2.0", "jinja2==3.1.5", "jinjax==0.48", "jiter==0.8.2", "jsonpath-python==1.0.6", "kombu==5.4.2", "logfire-api==3.2.0", "logfire==3.2.0", "loguru==0.7.3", "lxml-html-clean==0.4.1", "lxml==5.3.0", "markdown-it-py==3.0.0", "markupsafe==3.0.2", "mdurl==0.1.2", "mistralai==1.4.0", "mypy-extensions==1.0.0", "openai==1.60.0", "opentelemetry-api==1.29.0", "opentelemetry-exporter-otlp-proto-common==1.29.0", "opentelemetry-exporter-otlp-proto-http==1.29.0", "opentelemetry-instrumentation-asgi==0.50b0", "opentelemetry-instrumentation-asyncpg==0.50b0", "opentelemetry-instrumentation-dbapi==0.50b0", "opentelemetry-instrumentation-fastapi==0.50b0", "opentelemetry-instrumentation-sqlite3==0.50b0", "opentelemetry-instrumentation==0.50b0", "opentelemetry-proto==1.29.0", "opentelemetry-sdk==1.29.0", "opentelemetry-semantic-conventions==0.50b0", "opentelemetry-util-http==0.50b0", "packaging==24.2", "parse==1.20.2", "praw==7.8.1", "prawcore==2.4.0", "priority==2.0.0", "prometheus-client==0.21.1", "prompt-toolkit==3.0.50", "protobuf==5.29.3", "psutil==5.9.8", "psycopg==3.2.4", "pyasn1-modules==0.4.1", "pyasn1==0.6.1", "pydantic-ai-examples==0.0.18", "pydantic-ai-slim==0.0.18", "pydantic-ai==0.0.18", "pydantic-core==2.27.2", "pydantic==2.10.5", "pyee==11.1.1", "pygments==2.19.1", "pymysql==1.1.1", "pyppeteer==2.0.0", "pyquery==2.0.1", "python-dateutil==2.9.0.post0", "python-decouple==3.8", "python-dotenv==1.0.1", "python-multipart==0.0.20", "python-slugify==8.0.4", "pytz==2024.2", "redis==5.2.1", "requests==2.32.3", "rich==13.9.4", "rsa==4.9", "simplejson==3.19.3", "six==1.17.0", "sniffio==1.3.1", "socksio==1.0.0", "soupsieve==2.6", "sqlalchemy-mixins==2.0.5", "sqlalchemy-utils==0.41.2", "sqlalchemy==2.0.37", "sqlmodel-crud-utilities", "sqlmodel==0.0.22", "starlette==0.41.3", "text-unidecode==1.3", "tornado==6.4.2", "tqdm==4.67.1", "typing-extensions==4.12.2", "typing-inspect==0.9.0", "tzdata==2025.1", "update-checker==0.18.0", "urllib3==1.26.20", "uvicorn==0.34.0", "vine==5.1.0", "w3lib==2.2.1", "wcwidth==0.2.13", "webencodings==0.5.1", "websocket-client==1.8.0", "websockets==10.4", "win32-setctime==1.2.0", "wrapt==1.17.2", "wsproto==1.2.0", "xmljson==0.2.1", "xmltodict==0.14.2", "zipp==3.21.0", ] [dependency-groups] dev = [ "aiofiles==24.1.0", "alembic==1.14.1", "annotated-types==0.7.0", "anyio==4.8.0", "argon2-cffi-bindings==21.2.0", "argon2-cffi==23.1.0", "arrow==1.3.0", "asttokens==2.4.1", "async-lru==2.0.4", "attrs==24.3.0", "babel==2.16.0", "beautifulsoup4==4.12.3", "black==24.10.0", "bleach==6.2.0", "certifi==2024.12.14", "cffi==1.17.1", "cfgv==3.4.0", "charset-normalizer==3.4.1", "click==8.1.8", "colorama==0.4.6", "comm==0.2.2", "debugpy==1.8.12", "decorator==5.1.1", "defusedxml==0.7.1", "distlib==0.3.9", "executing==2.1.0", "fastapi-debug-toolbar==0.6.3", "fastapi==0.115.6", "fastjsonschema==2.21.1", "filelock==3.17.0", "fqdn==1.5.1", "greenlet==3.1.1", "h11==0.14.0", "httpcore==1.0.7", "httpx==0.28.1", "identify==2.6.6", "idna==3.10", "ipykernel==6.29.5", "ipython==8.31.0", "isoduration==20.11.0", "isort==5.13.2", "jedi==0.19.2", "jinja2==3.1.5", "json5==0.10.0", "jsonpointer==3.0.0", "jsonschema-specifications==2024.10.1", "jsonschema==4.23.0", "jupyter-client==8.6.3", "jupyter-core==5.7.2", "jupyter-events==0.11.0", "jupyter-lsp==2.2.5", "jupyter-server-terminals==0.5.3", "jupyter-server==2.15.0", "jupyterlab-code-formatter==3.0.2", "jupyterlab-pygments==0.3.0", "jupyterlab-server==2.27.3", "jupyterlab==4.3.4", "mako==1.3.8", "markupsafe==3.0.2", "matplotlib-inline==0.1.7", "mistune==3.1.0", "mypy-extensions==1.0.0", "nbclient==0.10.2", "nbconvert==7.16.5", "nbformat==5.10.4", "nest-asyncio==1.6.0", "nodeenv==1.9.1", "notebook-shim==0.2.4", "overrides==7.7.0", "packaging==24.2", "pandocfilters==1.5.1", "parso==0.8.4", "pathspec==0.12.1", "platformdirs==4.3.6", "pre-commit==4.1.0", "prometheus-client==0.21.1", "prompt-toolkit==3.0.50", "psutil==5.9.8", "pure-eval==0.2.3", "pycparser==2.22", "pydantic-core==2.27.2", "pydantic-extra-types==2.10.2", "pydantic-settings==2.7.1", "pydantic==2.10.5", "pygments==2.19.1", "pyinstrument==5.0.0", "python-dateutil==2.9.0.post0", "python-dotenv==1.0.1", "python-json-logger==3.2.1", "pywin32==308", "pywinpty==2.0.14", "pyyaml==6.0.2", "pyzmq==26.2.0", "referencing==0.36.1", "requests==2.32.3", "rfc3339-validator==0.1.4", "rfc3986-validator==0.1.1", "rpds-py==0.22.3", "ruff==0.9.2", "send2trash==1.8.3", "setuptools==75.8.0", "six==1.17.0", "sniffio==1.3.1", "soupsieve==2.6", "sqlalchemy==2.0.37", "sqlparse==0.5.3", "stack-data==0.6.3", "starlette==0.41.3", "terminado==0.18.1", "tinycss2==1.4.0", "tornado==6.4.2", "traitlets==5.14.3", "types-python-dateutil==2.9.0.20241206", "typing-extensions==4.12.2", "uri-template==1.3.0", "urllib3==1.26.20", "virtualenv==20.29.1", "wcwidth==0.2.13", "webcolors==24.11.1", "webencodings==0.5.1", "websocket-client==1.8.0", ]