[tool.poetry] name = "zai-sdk" version = "0.0.1b1" description = "A SDK library for accessing big model apis from Z.ai" authors = ["Z.ai"] readme = "README.md" packages = [{include = "zai", from = "src"}] [tool.poetry.dependencies] python = ">=3.8,<4.0.0,!=3.9.7 " httpx = ">=0.23.0" pydantic = ">=1.9.0,<3.0" pydantic-core = ">=2.14.6" cachetools = ">=4.2.2" pyjwt = "~=2.8.0" [tool.poetry.group.test.dependencies] # The only dependencies that should be added are # dependencies used for running tests (e.g., pytest, freezegun, response). # Any dependencies that do not meet that criteria will be removed. pytest = "^7.3.0" pytest-cov = "^4.0.0" pytest-dotenv = "^0.5.2" duckdb-engine = "^0.9.2" pytest-watcher = "^0.2.6" freezegun = "^1.2.2" responses = "^0.22.0" pytest-asyncio = { version = "^0.23.2", python = "^3.8" } lark = "^1.1.5" pytest-mock = "^3.10.0" pytest-socket = { version = "^0.6.0", python = ">=3.8.1,<3.9.7 || >3.9.7,<4.0" } syrupy = { version = "^4.0.2", python = ">=3.8.1,<3.9.7 || >3.9.7,<4.0" } requests-mock = "^1.11.0" respx = "0.21.1" [tool.poetry.group.lint] optional = true [tool.poetry.group.lint.dependencies] ruff = "^0.1.5" [tool.poetry.extras] cli = ["typer"] # An extra used to be able to add extended testing. # Please use new-line on formatting to make it easier to add new packages without # merge-conflicts extended_testing = [ "langchain", ] [tool.ruff] line-length = 120 [tool.ruff.lint] select = [ "E", # pycodestyle "F", # pyflakes "I", # isort "T201", # print ] ignore = [ "E101", "T201" ] [tool.ruff.format] quote-style = "single" indent-style = "tab" docstring-code-format = true [tool.coverage.run] omit = [ "tests/*", ] [build-system] requires = ["poetry-core>=1.0.0", "poetry-plugin-pypi-mirror==0.4.2"] build-backend = "poetry.core.masonry.api" [tool.pytest.ini_options] # --strict-markers will raise errors on unknown marks. # https://docs.pytest.org/en/7.1.x/how-to/mark.html#raising-errors-on-unknown-marks # # https://docs.pytest.org/en/7.1.x/reference/reference.html # --strict-config any warnings encountered while parsing the `pytest` # section of the configuration file raise errors. # # https://github.com/tophat/syrupy # --snapshot-warn-unused Prints a warning on unused snapshots rather than fail the test suite. addopts = "--strict-markers --strict-config --durations=5 --snapshot-warn-unused -svv" # Registering custom markers. # https://docs.pytest.org/en/7.1.x/example/markers.html#registering-markers markers = [ "requires: mark tests as requiring a specific library", "scheduled: mark tests to run in scheduled testing", "compile: mark placeholder test used to compile integration tests without running them" ] asyncio_mode = "auto" # https://python-poetry.org/docs/repositories/ # [[tool.poetry.source]] # name = "tsinghua" # url = "https://pypi.tuna.tsinghua.edu.cn/simple/" # priority = "default"