Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to pyproject.toml for package configuration #78

Merged
merged 4 commits into from
Apr 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Configure flake8

[flake8]
max-line-length = 88
max-doc-length = 79
ignore =
# Too many leading '#' for block comment
E266,
# Line too long (82 > 79 characters)
E501,
# Do not use variables named 'I', 'O', or 'l'
E741,
# Line break before binary operator (conflicts with black)
W503,
# Ignore spaces before a colon (Black handles it)
E203,
exclude =
.git,
__pycache__,
.ipynb_checkpoints,
doc/_build,
per-file-ignores =
# disable unused-imports errors on __init__.py
__init__.py: F401,
_io.py: A005,

# Configure flake8-rst-docstrings
# -------------------------------
# Add some roles used in our docstrings
rst-roles =
class,
func,
mod,
meth,
ref,
# Ignore "Unknown target name" raised on citations
extend-ignore = RST306

# Configure flake8-functions
# --------------------------
# Allow a max of 10 arguments per function
max-parameters-amount = 10
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ jobs:
- name: Collect requirements
run: |
echo "Install Dependente to capture dependencies:"
python -m pip install dependente==0.1.0
python -m pip install dependente==0.3.0
echo ""
echo "Capturing run-time dependencies:"
dependente --source install > requirements-full.txt
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ jobs:
- name: Collect requirements
run: |
echo "Install Dependente to capture dependencies:"
python -m pip install dependente==0.1.0
python -m pip install dependente==0.3.0
echo ""
echo "Capturing run-time dependencies:"
if [[ "${{ matrix.dependencies }}" == "oldest" ]]; then
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ prune data
exclude .*.yml
exclude .*rc
exclude .gitignore
exclude .flake8
exclude CONTRIBUTING.md
exclude CODE_OF_CONDUCT.md
exclude environment.yml
Expand Down
47 changes: 45 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,45 @@
# Specify that we use setuptools and setuptools_scm (to generate the version
# string). Actual configuration is in setup.cfg.
[project]
name = "xlandsat"
description = "Analyze Landsat remote sensing images using xarray"
dynamic = ["version"]
authors = [
{name="Leonardo Uieda", email="[email protected]"},
]
readme = "README.md"
license = {text = "MIT License"}
keywords = ["xarray", "remote sensing", "satellite", "landsat"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Intended Audience :: Science/Research",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Topic :: Scientific/Engineering",
"Topic :: Software Development :: Libraries",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
]
requires-python = ">=3.7"
dependencies = [
"numpy>=1.19",
"scipy>=1.5",
"xarray>=0.16",
"scikit-image>=0.18",
"pooch>=1.3.0",
]

[project.urls]
"Documentation" = "https://www.compgeolab.org/xlandsat"
"Changelog" = "https://www.compgeolab.org/xlandsat/latest/changes.html"
"Bug Tracker" = "https://github.com/compgeolab/xlandsat/issues"
"Source Code" = "https://github.com/compgeolab/xlandsat"

[build-system]
requires = ["setuptools>=61", "wheel", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
Expand All @@ -9,6 +49,9 @@ version_scheme = "post-release"
local_scheme = "node-and-date"
write_to = "xlandsat/_version_generated.py"

[tool.setuptools.packages]
find = {} # Scanning implicit namespaces is active by default

# Make sure isort and Black are compatible
[tool.isort]
profile = "black"
Expand Down
83 changes: 0 additions & 83 deletions setup.cfg

This file was deleted.

Loading