[tool.poetry] name = "PyInventory" version = "0.18.0rc1" description = "Web based management to catalog things including state and location etc. using Python/Django." authors = [ "Jens Diemer ", ] maintainers = [ "Jens Diemer ", ] homepage = "https://github.com/jedie/PyInventory" packages = [ { include = "inventory", from = "src" }, { include = "inventory_project", from = "src" }, ] keywords=['inventory','django'] classifiers = [ # http://pypi.python.org/pypi?%3Aaction=list_classifiers "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Intended Audience :: End Users/Desktop", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3 :: Only", 'Framework :: Django', "Topic :: Database :: Front-Ends", "Topic :: Documentation", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Internet :: WWW/HTTP :: Site Management", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application", "Operating System :: OS Independent", ] include = ['AUTHORS', 'LICENSE'] license = "GPL-3.0-or-later" readme = 'README.md' [tool.poetry.urls] "Bug Tracker" = "https://github.com/jedie/PyInventory/issues" [tool.poetry.dependencies] python = ">=3.9,<4.0.0" # Stay with 3.9 until YunoHost used >=Debian 11 (Bullseye) django = "<4.1" # FIXME: https://github.com/jedie/django-processinfo/issues/19 colorlog = "*" # https://github.com/borntyping/python-colorlog gunicorn = "*" # https://github.com/benoimyproject.wsgitc/gunicorn django-processinfo = "*" # https://github.com/jedie/django-processinfo/ django-debug-toolbar = "*" # http://django-debug-toolbar.readthedocs.io/en/stable/changes.html django-import-export = "*" # https://github.com/django-import-export/django-import-export django-dbbackup = "*" # https://github.com/django-dbbackup/django-dbbackup django-tools = "*" # https://github.com/jedie/django-tools/ django-reversion-compare = "*" # https://github.com/jedie/django-reversion-compare/ django-ckeditor = "*" # https://github.com/django-ckeditor/django-ckeditor bx_py_utils = "*" # https://github.com/boxine/bx_py_utils bx_django_utils = "*" # https://github.com/boxine/bx_django_utils django-tagulous = "*" # https://github.com/radiac/django-tagulous django-admin-sortable2 = "*" # https://github.com/jrief/django-admin-sortable2 django-axes = "*" # https://github.com/jazzband/django-axes requests = "*" # https://github.com/psf/requests pillow = "*" docker-compose = { version = "*", optional = true } # install via: poetry install --extras "docker" psycopg2-binary = { version = "*", optional = true } # install via: poetry install --extras "postgres-binary" psycopg2 = { version = "*", optional = true } # install via: poetry install --extras "psycopg2-source" [tool.poetry.extras] postgres-binary = ["psycopg2-binary"] psycopg2-source = ["psycopg2"] [tool.poetry.dev-dependencies] dev_shell = "*" # https://github.com/jedie/dev-shell cmd2_ext_test = "*" pytest = "*" pytest-randomly = "*" pytest-cov = "*" pytest-django = "*" pytest-playwright = "*" # https://playwright.dev/python/docs/test-runners flynt = "*" pyupgrade = "*" model_bakery = "*" # https://github.com/model-bakers/model_bakery beautifulsoup4 = "*" lxml = "*" requests-mock = "*" tox = "*" # https://github.com/tox-dev/tox coveralls = "*" # http://github.com/TheKevJames/coveralls-python darker = "*" # https://github.com/akaihola/pytest-darker isort = "*" # https://github.com/pycqa/isort flake8 = "*" # https://github.com/pycqa/flake8 EditorConfig = "*" # https://github.com/editorconfig/editorconfig-core-py safety = "*" # https://github.com/pyupio/safety mypy = "*" # https://github.com/python/mypy tomli = "*" # https://github.com/hukkin/tomli packaging = "*" # https://github.com/pypa/packaging poetry-publish = "*" # https://github.com/jedie/poetry-publish [tool.poetry.scripts] devshell = 'inventory_project.dev_shell:devshell_cmdloop' run_testserver = 'inventory_project.manage:start_test_server' [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.darker] src = ['.'] revision = "origin/main..." line_length = 100 verbose = true skip_string_normalization = true diff = false check = false stdout = false isort = true lint = [ "flake8", ] log_level = "INFO" [tool.flynt] line_length = 100 [tool.isort] # https://pycqa.github.io/isort/docs/configuration/config_files/#pyprojecttoml-preferred-format atomic=true profile='black' line_length = 100 skip_glob=[".*", "*/htmlcov/*","*/migrations/*","*/volumes/*"] known_first_party=["inventory","inventory_project","inventory_tests"] lines_after_imports=2 [tool.coverage.run] omit = [".*"] [tool.pytest.ini_options] # https://docs.pytest.org/en/latest/customize.html#pyproject-toml minversion = "6.0" DJANGO_SETTINGS_MODULE="inventory_project.settings.tests" # Don't overwrite settings.DEBUG: django_debug_mode="keep" markers = [ "playwright: marks Playwright tests", ] norecursedirs = ".* .git __pycache__ coverage* dist htmlcov volumes" # sometimes helpfull "addopts" arguments: # -vv # --verbose # --capture=no # --trace-config # --full-trace # -p no:warnings # -m "not playwright" addopts = """ --ignore-glob=deployment/django/* --reuse-db --nomigrations --cov=. --cov-report term-missing --cov-report xml --no-cov-on-fail --showlocals --doctest-modules --failed-first --last-failed-no-failures all --new-first -p no:randomly """ # TODO: --mypy [tool.tox] # https://tox.readthedocs.io/en/latest/example/basic.html#pyproject-toml-tox-legacy-ini legacy_tox_ini = """ [tox] isolated_build = True envlist = py{39,310,311} skip_missing_interpreters = True [testenv] passenv = * whitelist_externals = poetry commands = python --version poetry run django-admin --version python devshell.py pytest """ [tool.mypy] warn_unused_configs = true ignore_missing_imports = true allow_redefinition = true # https://github.com/python/mypy/issues/7165 show_error_codes = true plugins = [] exclude = ['.venv', 'tests'] [manageprojects] # https://github.com/jedie/manageprojects initial_revision = "b33d693" initial_date = 2022-12-21T22:53:08+01:00 cookiecutter_template = "https://github.com/jedie/cookiecutter_templates/" cookiecutter_directory = "poetry-python" [manageprojects.cookiecutter_context.cookiecutter] full_name = "Jens Diemer" github_username = "jedie" author_email = "PyInventory@jensdiemer.de" package_name = "PyInventory" package_version = "0.18.0" package_description = "Web based management to catalog things including state and location etc. using Python/Django." package_url = "https://github.com/jedie/PyInventory" issues_url = "https://github.com/jedie/PyInventory/issues" license = "GPL-3.0-or-later" _template = "https://github.com/jedie/cookiecutter_templates/"