1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
|
[build-system]
requires = [
"wheel",
"setuptools >= 40.6.0",
"Cython >= 0.29.24",
# numpy requirement for wheel builds for distribution on PyPI - building
# against 2.x yields wheels that are also compatible with numpy 1.x at
# runtime.
# Note that building against numpy 1.x works fine too - users and
# redistributors can do this by installing the numpy version they like and
# disabling build isolation.
"numpy>=2.0.0rc1",
"setuptools_scm >= 7.0.0",
]
build-backend = "setuptools.build_meta"
[project]
name = "Cartopy"
authors = [
{name = "UK Met Office"},
]
description = "A Python library for cartographic visualizations with Matplotlib"
readme = "README.md"
requires-python = ">=3.10"
keywords = ["cartography", "map", "transform", "projection", "pyproj", "shapely", "shapefile"]
license = {file = "LICENSE"}
classifiers = [
'Development Status :: 4 - Beta',
'Framework :: Matplotlib',
'License :: OSI Approved :: BSD License',
'Operating System :: MacOS :: MacOS X',
'Operating System :: Microsoft :: Windows',
'Operating System :: POSIX',
'Operating System :: POSIX :: AIX',
'Operating System :: POSIX :: Linux',
'Programming Language :: C++',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3 :: Only',
'Topic :: Scientific/Engineering',
'Topic :: Scientific/Engineering :: GIS',
'Topic :: Scientific/Engineering :: Visualization',
]
dependencies = [
"numpy>=1.23",
"matplotlib>=3.6",
"shapely>=1.8",
"packaging>=21",
"pyshp>=2.3",
"pyproj>=3.3.1",
]
dynamic = ["version"]
[project.optional-dependencies]
doc = ["pydata-sphinx-theme", "sphinx", "sphinx-gallery"]
speedups = ["pykdtree", "fiona"]
ows = ["OWSLib>=0.27.0", "pillow>=9.1"]
plotting = ["pillow>=9.1", "scipy>=1.9"]
srtm = ["beautifulsoup4"]
test = ["pytest>=5.1.2", "pytest-mpl>=0.11", "pytest-xdist", "pytest-cov", "coveralls"]
[project.scripts]
cartopy_feature_download = "cartopy.feature.download.__main__:main"
[project.urls]
documentation='https://scitools.org.uk/cartopy/docs/latest/'
homepage='https://github.com/SciTools/cartopy'
[tool.setuptools.packages.find]
where = ["lib"]
exclude = ["cartopy.tests*"]
[tool.setuptools.package-data]
cartopy = ["lib/cartopy/tests/mpl/baseline_images/**",
"lib/cartopy/data/**",
"lib/cartopy/tests/lakes_shapefile/**",
"io/srtm.npz"]
[tool.setuptools_scm]
write_to = "lib/cartopy/_version.py"
[tool.codespell]
ignore-words-list = "damon,koordinates,linz,manuel,slippy,subtiles,tring"
skip = "docs/source/copyright.rst,*.cpp,*.css,*.examples,*.js,*.html,*.ipynb,*.pdf,*.rst.txt"
[tool.check-manifest]
ignore = [
"lib/cartopy/_version.py",
"lib/cartopy/trace.cpp",
]
[tool.pytest.ini_options]
addopts = "--mpl"
testpaths = ["lib"]
python_files = ["test_*.py"]
[tool.ruff]
lint.select = ["E", "F", "I", "W"]
[tool.ruff.lint.isort]
force-sort-within-sections = true
known-first-party = ["cartopy"]
lines-after-imports = 2
no-lines-before = ["local-folder"]
|