summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pyproject.toml28
-rw-r--r--setup.cfg23
-rw-r--r--tox.ini35
3 files changed, 58 insertions, 28 deletions
diff --git a/pyproject.toml b/pyproject.toml
index 8d00597..d720aeb 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,7 +1,31 @@
[build-system]
requires = [
- "setuptools >= 40.0.4",
- "setuptools_scm >= 2.0.0",
+ "setuptools >= 42",
"wheel >= 0.29.0",
+ "setuptools_scm[toml] >= 3.4"
]
build-backend = "setuptools.build_meta"
+
+[tool.setuptools_scm]
+version_scheme = "post-release"
+local_scheme = "dirty-tag"
+
+[tool.pytest.ini_options]
+addopts = "-rsx --tb=short"
+testpaths = "tests"
+filterwarnings = "always"
+
+[tool.coverage.run]
+source = ["apscheduler"]
+
+[tool.coverage.report]
+show_missing = true
+
+[tool.isort]
+src_paths = ["src"]
+skip_gitignore = true
+line_length = 99
+multi_line_output = 4
+
+[tool.autopep8]
+max_line_length = 99
diff --git a/setup.cfg b/setup.cfg
index 6fe6cf0..9a7a04a 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -11,46 +11,39 @@ classifiers =
License :: OSI Approved :: MIT License
Programming Language :: Python
Programming Language :: Python :: 3 :: Only
- Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
+ Programming Language :: Python :: 3.9
keywords = scheduling cron
license = MIT
[options]
packages = find:
-python_requires = >= 3.6
+python_requires = >= 3.7
install_requires =
- dataclasses >= 0.7; python_version < '3.7'
+ anyio ~= 2.0
+ backports.zoneinfo; python_version < '3.9'
+ sortedcontainers ~= 2.2
python-dateutil >= 2.8
pytz
tzlocal >= 1.2
[options.extras_require]
+cbor = cbor2 >= 5.0
mongodb = motor ~= 2.1
postgresql = asyncpg >= 0.20
redis = redis
-sqlalchemy = sqlalchemy >= 1.3
+sqlalchemy = sqlalchemy >= 1.4.0b1
twisted = twisted
zookeeper = kazoo
test =
+ coverage
pytest >= 5.0
pytest-cov
pytest-mock
- pytest-tornado5
doc =
sphinx
sphinx-rtd-theme
-[tool:pytest]
-addopts = -rsx --cov --tb=short
-testpaths = tests
-
-[coverage:run]
-source = apscheduler
-
-[coverage:report]
-show_missing = true
-
[flake8]
max-line-length = 99
diff --git a/tox.ini b/tox.ini
index 6e452ad..0de9fdd 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,22 +1,35 @@
[tox]
-minversion = 3.3.0
-envlist = py35, py36, py37, py38, pypy3, flake8
+minversion = 3.7.0
+envlist = lint, py37, py38, py39, flake8
skip_missing_interpreters = true
isolated_build = true
[testenv]
-commands = python -m pytest {posargs}
+commands = coverage run -m pytest {posargs}
extras = test
- gevent
- mongodb
- redis
- rethinkdb
- sqlalchemy
- tornado
- twisted
- zookeeper
+ cbor
+deps =
+ curio
+ trio
+
+[testenv:lint]
+deps =
+ isort
+ autopep8
+commands =
+ autopep8 -r -i apscheduler tests
+ isort apscheduler tests
+skip_install = true
[testenv:flake8]
+basepython = python3.7
+depends = lint
deps = flake8
commands = flake8 apscheduler tests
skip_install = true
+
+[testenv:mypy]
+basepython = python3.8
+deps = mypy
+commands = mypy {posargs} apscheduler
+skip_install = true