Skip to content

Modernize packaging and fix runtime warnings#44

Merged
jkrasting merged 4 commits intomainfrom
modernize-packaging
Mar 6, 2026
Merged

Modernize packaging and fix runtime warnings#44
jkrasting merged 4 commits intomainfrom
modernize-packaging

Conversation

@jkrasting
Copy link
Copy Markdown
Owner

Summary

  • Migrate from legacy setup.py/setup.cfg to pyproject.toml with setuptools-git-versioning for dynamic versioning from git tags
  • Replace deprecated pkg_resources with importlib.resources and importlib.metadata
  • Convert scripts/ to proper console_scripts entry points (gfdlvitals, db2nc, plotdb)
  • Fix xarray FutureWarnings: use CFDatetimeCoder, decode_timedelta=False, and compat="override"
  • Streamline NaN warnings from multi-line tracebacks to single-line messages
  • Enable line-buffered stdout so status messages appear immediately when output is redirected
  • Add xgcm, regionmask, and xoverturning to dependencies
  • Add minimal pytest test suite and GitHub Actions CI workflow
  • Update ReadTheDocs config, Sphinx conf, and GitHub Actions publish workflow
  • Fix stale hardcoded version in docs (3.0a1 → dynamic from metadata)

Closes #43

- Replace setup.py/setup.cfg/version.py with pyproject.toml using
  setuptools-git-versioning for dynamic version from git tags
- Convert scripts/ to proper console_scripts entry points (cli_db2nc.py,
  cli_plotdb.py, cli.py main())
- Replace deprecated pkg_resources with importlib.resources
- Replace version.py import with importlib.metadata
- Add minimal pytest test suite
- Add GitHub Actions CI workflow for tests
- Update GitHub Actions publish workflow to v4 actions
- Update ReadTheDocs config and docs build for installed package
- Fix Sphinx conf.py to use dynamic version and installed package path

Closes #43
- Replace deprecated use_cftime kwarg with CFDatetimeCoder in
  xr.open_dataset calls and add decode_timedelta=False
- Add compat="override" to xr.merge in xr_weighted_avg
- Replace verbose warnings.warn with concise single-line print
  for NaN values in write_sqlite_data
@jkrasting jkrasting merged commit eb8f6f0 into main Mar 6, 2026
3 checks passed
@jkrasting jkrasting deleted the modernize-packaging branch March 6, 2026 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

requires setuptools<81

1 participant