diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d29034bf..10eb580c 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -30,3 +30,4 @@ Mike Playle Phil Elson Robert Coup Tiago Brito +Zachary Burnett diff --git a/README.md b/README.md index c757fc7d..aa17c583 100644 --- a/README.md +++ b/README.md @@ -205,23 +205,22 @@ even 2.0. Python 3 is required. ### Creating wheels -First, make a virtual environment and install `cmake_build_extension` and `wheel` -into it: +First, make a virtual environment and install `build` into it: ``` python3 -m venv venv source venv/bin/activate -pip install cmake_build_extension wheel +pip install build ``` Then build the wheel: ``` -python setup.py bdist_wheel +python -m build ``` The resulting wheel will be in the `dist` directory. -> If OpenSSL is in a non-standard location make sure to set `OPENSSL_ROOT_DIR` -> when calling `setup.py`, see above for more information. +> If OpenSSL is in a non-standard location make sure to set `OPENSSL_ROOT_DIR`; +> see above for more information. ## Other S2 implementations diff --git a/pyproject.toml b/pyproject.toml index 4cdb773f..6a55b8c3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,39 @@ +[project] +name = "s2geometry" +description = "Computational geometry and spatial indexing on the sphere" +authors = [ + { name = "Dan Larkin-York", email = "dan@arangodb.com" }, + { name = "Eric Veach", email = "ericv@google.com" }, + { name = "Jesse Rosenstock", email = "jmr@google.com" }, + { name = "Julien Basch", email = "julienbasch@google.com" }, + { name = "Mike Playle", email = "mike@mythik.co.uk" }, + { name = "Phil Elson", email = "pelson.pub@gmail.com" }, + { name = "Robert Coup", email = "robert.coup@koordinates.com" }, + { name = "Tiago Brito", email = "tiago.brito@90poe.io" }, + { name = "Zachary Burnett", email = "zachary.r.burnett@gmail.com" }, +] +requires-python = ">=3.7" +classifiers = [ + "Programming Language :: Python :: 3", + "Operating System :: POSIX", + "License :: OSI Approved :: Apache Software License", +] +dynamic = [ + "version", +] + +[project.license] +file = "LICENSE" +content-type = "text/plain" + +[project.urls] +Source = "https://github.com/google/s2geometry" + +[project.optional-dependencies] +test = [ + "pytest", +] + [build-system] requires = [ "wheel", @@ -6,3 +42,17 @@ requires = [ "cmake_build_extension", ] build-backend = "setuptools.build_meta" + +[tool.setuptools] +zip-safe = false +include-package-data = false + +[tool.setuptools.packages.find] +where = [ + "src", +] +namespaces = false + +[tool.setuptools.package-dir] +"" = "src" + diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index cc87371b..00000000 --- a/setup.cfg +++ /dev/null @@ -1,22 +0,0 @@ -[metadata] -name = s2geometry -version = 0.11.0.dev1 -description = Python packaging of s2geometry -author = Brian Miles -author_email = selimnairb@gmail.com -license= Apache 2 -project_urls = - Source = https://github.com/google/s2geometry -classifiers = - Programming Language :: Python :: 3 - Operating System :: POSIX - License :: OSI Approved :: Apache Software License - -[options] -zip_safe = False -packages = find: -package_dir = =src -python_requres = >=3.7 - -[options.packages.find] -where = src