wip - packaging
DELETE
dev-requirements.txt
-pytest
-pytest-sugar
-pytest-cov
-pytest-lazy-fixture
-scipy
-netcdf4
-h5netcdf
-zarr
--r requirements.txt

MODIFY
pyproject.toml
pyproject.toml
[tool.black]
line-length = 100
+# pyproject.toml
[build-system]
-requires = ["setuptools>=42", "wheel", "setuptools_scm[toml]>=3.4"]
+requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.0"]
+build-backend = "setuptools.build_meta"
-# pyproject.toml
[tool.setuptools_scm]

DELETE
requirements.txt
-setuptools
-click
-dask
-distributed
-rechunker==0.4.2
-xarray@git+https://github.com/pydata/xarray
-zarr >= 2.6.0
-fsspec[http]

MODIFY
setup.cfg
setup.cfg
+[metadata]
+name = pangeo-forge-recipes
+description = Pipeline tools for building and publishing analysis ready datasets.
+long_description = file:README.md
+long_description_content_type = text/markdown
+maintainer = Joe Hamman
+maintainer_email = jhamman@ucar.edu
+classifiers =
+ Development Status :: 1 - Planning
+ License :: OSI Approved :: Apache Software License
+ Operating System :: OS Independent
+ Intended Audience :: Science/Research
+ Programming Language :: Python
+ Programming Language :: Python :: 3
+ Programming Language :: Python :: 3.7
+ Programming Language :: Python :: 3.8
+ Programming Language :: Python :: 3.9
+ Topic :: Scientific/Engineering
+
+url = https://github.com/pangeo-forge/pangeo-forge-recipes
+license = Apache
+keywords = pangeo, data
+
+[options]
+zip_safe = False
+python_requires = >=3.7
+packages = find:
+include_package_data = True
+install_requires =
+ setuptools
+ click
+ dask
+ distributed
+ rechunker==0.4.2
+ xarray >=0.18.0
+ zarr >= 2.6.0
+ fsspec[http]
+
+[options.extras_require]
+dev =
+ pytest
+ pytest-sugar
+ pytest-cov
+ pytest-lazy-fixture
+ scipy
+ netcdf4
+ h5netcdf
+ zarr
+
+[options.entry_points]
+console_scripts =
+ pangeo-forge-recipes = pangeo_forge_recipes.cli:main
+
[flake8]
max-line-length = 100

MODIFY
setup.py
setup.py
-#!/usr/bin/env python
+# shim for editable installs
+from setuptools import setup
-"""The setup script."""
-
-from setuptools import find_packages, setup
-
-with open("requirements.txt") as f:
- install_requires = f.read().strip().split("\n")
-
-with open("README.md") as f:
- long_description = f.read()
-
-
-CLASSIFIERS = [
- "Development Status :: 1 - Planning",
- "License :: OSI Approved :: Apache Software License",
- "Operating System :: OS Independent",
- "Intended Audience :: Science/Research",
- "Programming Language :: Python",
- "Programming Language :: Python :: 3",
- "Programming Language :: Python :: 3.7",
- "Programming Language :: Python :: 3.8",
- "Topic :: Scientific/Engineering",
-]
-
-setup(
- name="pangeo-forge-recipes",
- description="Pipeline tools for building and publishing analysis ready datasets",
- long_description=long_description,
- long_description_content_type="text/markdown",
- python_requires=">=3.7",
- maintainer="Joe Hamman",
- maintainer_email="jhamman@ucar.edu",
- classifiers=CLASSIFIERS,
- url="https://github.com/pangeo-forge/pangeo-forge-recipes",
- packages=find_packages(),
- package_dir={"pangeo_forge_recipes": "pangeo_forge_recipes"},
- include_package_data=True,
- install_requires=install_requires,
- license="Apache",
- zip_safe=False,
- keywords=["pangeo", "data"],
- entry_points=dict(console_scripts=["pangeo-forge-recipes = pangeo_forge_recipes.cli:main"]),
-)
+setup()
\ No newline at end of file

wip - packaging