[build-system]
requires = [
  "Cython>=3",
  "numpy",
  "setuptools>=61.0",
]
build-backend = "setuptools.build_meta"

[project]
name = "grib2io"
description = "Python interface to the NCEP G2C Library for reading/writing GRIB2 files."
authors = [
  {name = "Eric Engle", email = "eric.engle@noaa.gov"},
  {name = "Adam Schnapp", email = "adam.schnapp@noaa.gov"},
]
requires-python = ">=3.8,<3.15"
keywords = [
  "weather", "data-science", "numpy", "meteorology", "weather-data", "atmospheric-science",
  "grib2", "grib2-decoder", "grib2-encoder", "ncep",
]
readme = "README.md"
license = {text = "MIT"}
#FUTURE license-files = ["LICENSE"]
classifiers = [
  "Development Status :: 5 - Production/Stable",
  "Environment :: Console",
  "Programming Language :: Cython",
  "Programming Language :: Python :: 3",
  "Programming Language :: Python :: 3 :: Only",
  "Programming Language :: Python :: 3.8",
  "Programming Language :: Python :: 3.9",
  "Programming Language :: Python :: 3.10",
  "Programming Language :: Python :: 3.11",
  "Programming Language :: Python :: 3.12",
  "Programming Language :: Python :: 3.13",
  "Programming Language :: Python :: 3.14",
  "Intended Audience :: Science/Research",
  "License :: OSI Approved :: MIT License",
  "Topic :: Scientific/Engineering :: Atmospheric Science",
  "Topic :: Software Development :: Libraries :: Python Modules",
  "Operating System :: POSIX",
  "Operating System :: POSIX :: Linux",
  "Operating System :: MacOS",
]
dependencies = [
  "numpy",
  "pyproj",
]
dynamic = ["version"]

[project.optional-dependencies]
xarray = ["xarray"]

[project.entry-points."xarray.backends"]
grib2io = "grib2io.xarray_backend:GribBackendEntrypoint"

[project.urls]
Documentation = "https://noaa-mdl.github.io/grib2io"
Repository = "https://github.com/NOAA-MDL/grib2io"

[tool.setuptools]
package-dir = {"" = "src"}
packages = ["grib2io", "grib2io.tables", "grib2io.utils"]
zip-safe = false

[tool.setuptools.dynamic]
version = {attr = "grib2io.__config__.grib2io_version"}
