[build-system] requires = ["setuptools>=61.0", "setuptools-scm[toml]>=6.2"] build-backend = "setuptools.build_meta" [project] name = "ibridges" authors = [ { name = "Christine Staiger", email = "c.staiger@uu.nl" }, { name = "Raoul Schram", email = "r.d.schram@uu.nl" }, { name = "Maarten Schermer", email = "m.d.schermer@uu.nl" }, ] description = "Package for accessing data and metadata on iRODS servers." readme = "README.md" requires-python = ">=3.8" keywords = ["irods", "data management", "storage"] license = { file = "LICENSE" } classifiers = [ "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: MIT License", ] dependencies = [ "python-irodsclient>=2.0.0, !=3.1.0;python_version>='3.9'", "python-irodsclient>=2.0.0, !=3.1.0, <3.2;python_version<'3.9'", "tqdm", "importlib-metadata>=4.6;python_version<'3.10'", ] dynamic = ["version"] [project.urls] GitHub = "https://github.com/iBridges-for-iRODS/iBridges" documentation = "https://github.com/iBridges-for-iRODS/iBridges" [project.optional-dependencies] test = [ "pylint", "pytest", "pytest-cov", "ruff", "mypy", "types-tqdm", ] docs = [ "sphinx<9", "sphinx-rtd-theme", "sphinxcontrib-napoleon", "sphinx-autodoc-typehints", "sphinx_inline_tabs", "sphinx_copybutton", "sphinx-argparse" ] [project.scripts] ibridges = "ibridges.cli.__main__:main" [project.entry-points."ibridges.shell"] builtin = "ibridges.cli.shell:ALL_BUILTIN_COMMANDS" [tool.setuptools] packages = ["ibridges"] [tool.setuptools_scm] write_to = "ibridges/_version.py" [[tool.mypy.overrides]] module = [ "irods.*", "importlib_metadata.*", ] ignore_missing_imports = true [tool.pylint.'MASTER'] ignore-patterns="_version.py" [tool.pylint.'BASIC'] good-names=["e", "f", "m"] [tool.pylint.'FORMAT'] max-line-length=100 max-locals=35 max-args=11 max-positional-arguments=11 # pylint: disable=unrecognized-option # [tool.pylint.'MESSAGES CONTROL'] # disable="too-many-positional-arguments" [tool.pylint."MESSAGES CONTROL"] disable="duplicate-code" [tool.ruff] exclude = ["_version.py"] line-length = 100 lint.select = ["D", "E", "F", "W", "I", "N"] lint.ignore = ["D203", "D213"]