Skip to content

Add GADM validation, infrastructure update, and release v2026.04.0 - #1

Merged
dadelforge merged 23 commits into
masterfrom
dev/v2026.01
Apr 8, 2026
Merged

Add GADM validation, infrastructure update, and release v2026.04.0#1
dadelforge merged 23 commits into
masterfrom
dev/v2026.01

Conversation

@dadelforge

Copy link
Copy Markdown
Contributor

Description

This pull request introduces significant enhancements to the EM-TEST framework, moving from the legacy setup to a modern Python packaging infrastructure, adding new validation features, and preparing the project for the 2026.04.0 release.

Key Changes (vs. master)

1. Infrastructure & Dependency Management

  • Modernized Packaging: Migrated from setup.py and requirements.txt to pyproject.toml.
  • uv Integration: Added support for the uv package manager for faster, reproducible environment syncing.
  • Python Support: Expanded and verified support for Python 3.9 through 3.14.

2. New Features & Validation Logic

  • GADM Admin Units: Added support for validating the GADM Admin Units column with JSON-based schema checks.
  • Schema Refinement: Updated emdat_schema to reflect the latest EM-DAT public data structure.
  • Improved Custom Checks: Refactored and extended custom checks in emtest/custom_checks.py for better maintainability.

3. Quality Assurance & CI/CD

  • GitHub Actions: Implemented a new automated testing workflow (Python 3.9–3.14) triggered on push and pull requests.
  • Test Suite: Added comprehensive unit and integration tests using pytest (located in tests/).
  • Release Checklist: Introduced checklist.md to standardize the pre-release verification process.

4. Documentation & Examples

  • Notebook Update: Refreshed examples/example_notebook.ipynb to demonstrate new validation workflows.
  • README Enhancements: Updated installation guides, badges, and citation metadata for the 2026 release cycle.

5. Release Metadata (v2026.04.0)

  • Bumped project version to 2026.04.0.
  • Updated reference baseline and release date to 2026-04-08 across all metadata files (CITATION.cff, __init__.py, pyproject.toml).

…ME.md` with `uv` support, and clarified dependencies.
…lude unnecessary files, and a `uv.lock` file for dependency management.
…ogic for consistency and maintainability. Updated data imports and improved list handling.
…ional dev dependencies. Removed requirements.txt.
Included guides on EM-TEST agent setup and principles, data validation, reference data management, and EM-DAT domain knowledge. Structured documentation for clarity and ease of use.
…EADME and pyproject.toml, added dev dependencies, and revised optional extras configuration. Updated the EM-TEST version to 2026.3.0.
Added unit tests for validation schemas (`test_validation.py`) and custom checks (`test_custom_checks.py`). Introduced reusable test fixtures in `conftest.py` for consistent data setup.
…ions, and added metadata for package sources.
…or compatibility across platforms and versions.
@dadelforge
dadelforge merged commit 2c31298 into master Apr 8, 2026
12 checks passed
@dadelforge
dadelforge deleted the dev/v2026.01 branch April 28, 2026 09:58
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.

1 participant