123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- [build-system]
- requires = ["setuptools>=76", "wheel"]
- build-backend = "setuptools.build_meta"
- [project]
- name = "taipy"
- description = "A 360° open-source platform from Python pilots to production-ready web apps."
- readme = "package_desc.md"
- requires-python = ">=3.9,<3.13"
- license = {text = "Apache-2.0"}
- authors = [{name = "Avaiga", email = "dev@taipy.io"}]
- keywords = ["taipy"]
- classifiers = [
- "Intended Audience :: Developers",
- "License :: OSI Approved :: Apache Software License",
- "Natural Language :: English",
- "Programming Language :: Python :: 3",
- "Programming Language :: Python :: 3.9",
- "Programming Language :: Python :: 3.10",
- "Programming Language :: Python :: 3.11",
- "Programming Language :: Python :: 3.12",
- ]
- dynamic = ["version", "dependencies"]
- [tool.setuptools.packages]
- find = {include = ["taipy", "taipy.*"]}
- [project.optional-dependencies]
- ngrok = ["pyngrok>=5.1,<6.0"]
- image = [
- "python-magic>=0.4.24,<0.5",
- "python-magic-bin>=0.4.14,<0.5",
- ]
- rdp = ["rdp>=0.8"]
- arrow = ["pyarrow>=16.0.0,<19.0"]
- mssql = ["pyodbc>=4"]
- test = ["pytest>=6.0"]
- [project.scripts]
- taipy = "taipy._entrypoint:_entrypoint"
- [project.urls]
- Homepage = "https://www.taipy.io"
- Documentation = "https://docs.taipy.io"
- Source = "https://github.com/Avaiga/taipy"
- Download = "https://pypi.org/project/taipy/#files"
- Tracker = "https://github.com/Avaiga/taipy/issues"
- Security = "https://github.com/Avaiga/taipy?tab=security-ov-file#readme"
- [tool.ruff]
- exclude = [
- ".git",
- "__pycache__",
- "setup.py",
- "build",
- "dist",
- "releases",
- ".venv",
- ".mypy_cache",
- ".pytest_cache",
- ".vscode",
- ".github",
- ]
- line-length = 120
- indent-width = 4
- [tool.ruff.lint]
- select = [
- "E", # pycodestyle errors
- "F", # pyflakes errors
- "W", # pycodestyle warnings
- "C", # mccabe complexity checker
- "B", # bugbear best practices checker
- "T", # mypy type errors
- "B", # flake8-bugbear best practices checker
- "I001", # isort import order
- ]
- ignore = []
- # Allow fix for all enabled rules (when `--fix`) is provided.
- fixable = ["ALL"]
- unfixable = []
- [tool.ruff.lint.per-file-ignores]
- "__init__.py" = ["F401", "F403"] # unused import
- "_init.py" = ["F401", "F403"] # unused import
- "taipy/common/config/stubs/pyi_header.py" = ["F401", "F403"] # unused import
- "taipy/templates/*" = ["F401", "F403", "T201"] # unused import, `print` found
- "taipy/gui/utils/types.py" = ["B024"] # abstract base class with no abstract methods
- [tool.ruff.lint.mccabe]
- max-complexity = 18
- [tool.ruff.lint.pydocstyle]
- convention = "google"
- [tool.mypy]
- ignore_missing_imports = true
- implicit_optional = true
- namespace_packages = false
- exclude = "(taipy/templates/|tools/|doc/gui/examples/.*/builder.py)"
- follow_imports = "skip"
- [tool.pyright]
- [tool.codespell]
- skip = '.git,*.pdf,*.svg,go.sum,package-lock.json,*.css'
- check-hidden = true
- ignore-regex = '^\s*"image/\S+": ".*|\b(inPort|anId|IST|Opps|Rouge|notifAction)\b'
- # some unfortunate names for variables
- ignore-words-list = 'ags,selt'
|