Skip to content
Snippets Groups Projects
pyproject.toml 3.59 KiB
[project]
name = "odoo_scripts"
dynamic = ["version"]
description = "Collection of scripts for Odoo"
readme = "README.rst"
requires-python = ">=3.6"
license = { file = "LICENSE" }
authors = [{ name = "XCG Consulting" }]
classifiers = [
  "Development Status :: 5 - Production/Stable",
  "Programming Language :: Python :: 3",
  "License :: OSI Approved :: MIT License",
  "Environment :: Console",
]
keywords = ["odoo"]
dependencies = [
  "odoorpc>=0.8.0",
  "odoorpc==0.8.0; python_version=='3.6'",
  "odoorpc>=0.9.0; python_version>='3.10'",
  "python-dateutil>=2.7.0",
  "coloredlogs",
  "PyYAML",
  "importlib_metadata; python_version<'3.8'"
]

[project.optional-dependencies]
doc = [
  "sphinx",
  # used when updating translation files
  "sphinx-intl"
]
conf2reST = []
docker = [
  "docker >=3.4",
  "docker < 6.0.0; python_version<'3.7'",
  "dockerpty",
  # used in docker_rednerd
  "requests_unixsocket",
  "requests",
]
import_sql = ["psycopg2"]
source_control = [
  # Only mercurial 5.2 support Python 3.5+
  "mercurial >=5.2",
  "python-hglib",
]
import_base_import = ["requests-toolbelt>=0.8.0"]

[project.scripts]
import_base_import = "odoo_scripts.import_base_import:main [import_base_import]"
import_jsonrpc = "odoo_scripts.import_jsonrpc:main"
import_sql = "odoo_scripts.import_sql:main [import_sql]"
docker_dev_start = "odoo_scripts.docker_dev_start:main [docker]"
do_tests = "odoo_scripts.do_tests:main"
docker_black = "odoo_scripts.docker_black:main [docker]"
docker_build = "odoo_scripts.docker_build:main [docker]"
docker_build_doc = "odoo_scripts.docker_build_doc:main [docker]"
docker_build_clean = "odoo_scripts.docker_build_clean:main"
docker_build_copy = "odoo_scripts.docker_build_copy:main"
docker_flake8 = "odoo_scripts.docker_flake8:main [docker]"
docker_isort = "odoo_scripts.docker_isort:main [docker]"
docker_pg = "odoo_scripts.docker_postgresql:main [docker]"
docker_prettier = "odoo_scripts.docker_prettier:main [docker]"
docker_pylint = "odoo_scripts.docker_pylint:main [docker]"
docker_rednerd = "odoo_scripts.docker_rednerd:main [docker]"
conf2reST = "odoo_scripts.conf2reST:main [conf2reST]"
odoo_conf_inject_env_var = "odoo_scripts.odoo_conf_inject_env_var:main"
list_modules = "odoo_scripts.list_modules:main"
update_duplicate_sources = "odoo_scripts.update_duplicate_sources:main [source_control]"
docker_redis = "odoo_scripts.docker_redis:main [docker]"

[project.urls]
repository = "https://orus.io/xcg/odoo_scripts"
changelog = "https://orus.io/xcg/odoo_scripts/-/blob/branch/default/NEWS.rst"

[build-system]
requires = ["setuptools >= 45", "wheel", "setuptools_scm[toml] >= 6.2"]
build-backend = "setuptools.build_meta"

[tool.setuptools]
script-files = [
  "create_archive",
  "create_documentation",
  "do_tests",
  "run_tests",
  "start"
]

[tool.setuptools_scm]

[tool.black]
target = 3.6

[tool.isort]
profile = "black"

[tool.coverage.run]
branch = true
source = ["odoo_scripts"]

[tool.coverage.report]
show_missing = true

[tool.tox]
legacy_tox_ini = """
[tox]
minversion = 3.15
envlist = py36,py37,py38,py39,py310,py311,py312,coverage-report
skip_missing_interpreters = true
isolated_build = True

[testenv:py{36,37,38,39,310,311,312}]
setenv =
    COVERAGE_FILE = .coverage.{envname}
deps =
    coverage[toml]
    pytest
commands = coverage run -m pytest --junitxml=report.{envname}.xml {posargs}

[testenv:coverage-report]
skip_install = true
deps = coverage[toml]
depends = py36,py37,py38,py39,py310,py311,py312
commands =
    coverage combine
    coverage report
parallel_show_output = true

[testenv:coverage-xml]
skip_install = true
deps = coverage[toml]
depends = coverage-report
commands =
    coverage xml
"""