[build-system]
# Our setup.py imports other things from this directory, meaning
# in needs to be on sys.path. That's not guaranteed in a PEP517 world;
# the __legacy__ build module makes that true. Ultimately we need to do that
# ourself (and/or continue to simplify our build system).
build-backend = "setuptools.build_meta:__legacy__"
requires = [
     "setuptools >= 40.8.0",
     "wheel",

     # Python 3.7 requires at least Cython 0.27.3.
     # 0.28 is faster, and (important!) lets us specify the target module
     # name to be created so that we can have both foo.py and _foo.so
     # at the same time. 0.29 fixes some issues with Python 3.7,
     # and adds the 3str mode for transition to Python 3. 0.29.14+ is
     # required for Python 3.8
     "Cython >= 0.29.14",
     # See version requirements in setup.py
     "cffi >= 1.12.3 ; platform_python_implementation == 'CPython'",
     # Python 3.7 requires at least 0.4.14, which is ABI incompatible with earlier
     "greenlet>=0.4.14 ; platform_python_implementation == 'CPython'",
]

[tool.towncrier]
directory = "docs/changes"
filename = "CHANGES.rst"
package = "gevent"
package_dir = "src"
issue_format = ":issue:`{issue}`"
title_format = false
template = "docs/_templates/hr-between-versions.rst.tmpl"