← Back to team overview

sts-sponsors team mailing list archive

[Merge] ~ack/maas/+git/maas-release-tools:drop-setup-cfg into ~maas-committers/maas/+git/maas-release-tools:main

 

Alberto Donato has proposed merging ~ack/maas/+git/maas-release-tools:drop-setup-cfg into ~maas-committers/maas/+git/maas-release-tools:main.

Commit message:
drop setup.{py,cfg} files



Requested reviews:
  MAAS Committers (maas-committers)

For more details, see:
https://code.launchpad.net/~ack/maas/+git/maas-release-tools/+merge/438971
-- 
Your team MAAS Committers is requested to review the proposed merge of ~ack/maas/+git/maas-release-tools:drop-setup-cfg into ~maas-committers/maas/+git/maas-release-tools:main.
diff --git a/pyproject.toml b/pyproject.toml
index 2fc49c7..b08041a 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,10 +1,46 @@
+[build-system]
+build-backend = "setuptools.build_meta"
+requires = [
+  "setuptools",
+]
+
+[project]
+name = "maas-release-tools"
+version = "0.0.1"
+description = "MAAS release tools"
+readme = "README.md"
+dependencies = [
+  "jira",
+  "launchpadlib",
+  "pymacaroons",
+  "python-debian",
+  "python-jenkins",
+  "requests",
+]
+[project.optional-dependencies]
+check = [
+  "mypy",
+]
+format = [
+  "black",
+  "flake8",
+  "flake8-pyproject",
+  "isort",
+  "pyproject-fmt",
+]
+[project.scripts]
+missing-estimates = "maas_release_tools.scripts.missingestimates:main"
+release-manage = "maas_release_tools.scripts.release_manage:main"
+release-status = "maas_release_tools.scripts.release_status:main"
+release-upload = "maas_release_tools.scripts.release_upload:main"
+wsjfify = "maas_release_tools.scripts.wsjfify:main"
+[project.entry-points."distutils.commands"]
+console-scripts = "maas_release_tools.scripts:PrintConsoleScripts"
+
+[tool.setuptools.packages.find]
+include = ["maas_release_tools*"]
+
 [tool.black]
-exclude = """
-/.egg
-/.git
-/.mypy_cache
-/.tox
-"""
 line-length = 79
 
 [tool.isort]
@@ -19,6 +55,9 @@ order_by_type = false
 profile = "black"
 use_parentheses = true
 
+[tool.flake8]
+ignore = ["E203", "E266", "E501", "W503"]
+
 [tool.mypy]
 ignore_missing_imports = true
 install_types = true
diff --git a/setup.cfg b/setup.cfg
deleted file mode 100644
index ab3012c..0000000
--- a/setup.cfg
+++ /dev/null
@@ -1,72 +0,0 @@
-[metadata]
-name = maas-release-tools
-version = 0.0.1
-description = MAAS release tools
-long_description = MAAS release tools
-
-[options]
-packages = find:
-install_requires =
-    jira
-    launchpadlib
-    packaging
-    pymacaroons
-    python-debian
-    python-jenkins
-    requests
-
-[options.entry_points]
-console_scripts =
-    release-manage = maas_release_tools.scripts.release_manage:main
-    release-status = maas_release_tools.scripts.release_status:main
-    release-upload = maas_release_tools.scripts.release_upload:main
-    wsjfify = maas_release_tools.scripts.wsjfify:main
-    missing-estimates = maas_release_tools.scripts.missingestimates:main
-distutils.commands =
-    console_scripts = maas_release_tools.scripts:PrintConsoleScripts
-
-[options.extras_require]
-format =
-    black
-    flake8
-    isort
-check =
-    mypy
-
-[flake8]
-ignore = E203, E266, E501, W503
-exclude = .git, .tox, dist, *egg
-
-[globals]
-lint_files = setup.py maas_release_tools
-
-[tox:tox]
-minversion = 1.6
-envlist = lint, check
-skipsdist = True
-
-[testenv]
-usedevelop = True
-
-[testenv:format]
-deps =
-    .[format]
-commands=
-    {envbindir}/isort {[globals]lint_files}
-    {envbindir}/black -q {[globals]lint_files}
-
-[testenv:lint]
-deps =
-    black
-    flake8
-    isort
-commands =
-    {envbindir}/isort --check-only --diff {[globals]lint_files}
-    {envbindir}/black --check {[globals]lint_files}
-    {envbindir}/flake8 {[globals]lint_files}
-
-[testenv:check]
-deps =
-    .[check]
-commands =
-    mypy -p maas_release_tools {posargs}
diff --git a/tox.ini b/tox.ini
new file mode 100644
index 0000000..bd80072
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,34 @@
+[globals]
+lint_files =
+    maas_release_tools
+
+[tox]
+minversion = 4
+envlist = lint, check
+skipsdist = True
+
+[testenv]
+usedevelop = True
+
+[testenv:check]
+deps =
+    .[check]
+commands =
+    mypy -p maas_release_tools {posargs}
+
+[testenv:format]
+deps =
+    .[format]
+commands=
+    isort {[globals]lint_files}
+    black -q {[globals]lint_files}
+    - pyproject-fmt pyproject.toml
+
+[testenv:lint]
+deps =
+    .[format]
+commands =
+    isort --check-only --diff {[globals]lint_files}
+    black --check {[globals]lint_files}
+    flake8 {[globals]lint_files}
+    pyproject-fmt --check pyproject.toml

Follow ups