Skip to content

Deferred Features from fre.cmor #27

@ilaflott

Description

@ilaflott

Phase 3: Deferred Features from fre.cmor

This document tracks features from open fre.cmor pull requests that are intentionally deferred for future implementation in fremorizer. Each item corresponds to a specific PR in the fre-cli repository.

Purpose

Phase 3 features represent enhancements and improvements that were in progress in the fre.cmor submodule. These are deferred to focus on:

  1. Establishing a stable, working independent fremorizer package (Phase 1-2)
  2. Validating equivalence with existing fre-cli functionality (Phase 2.5)
  3. Ensuring CI/CD pipelines are robust and reliable

Once the foundation is solid and equivalence testing is complete, these features can be incorporated systematically.

Phase 3 Items

1. PR #826: Replace nccmp with netCDF4 in tests ✅ COMPLETED

2. PR #832: Harden branded-variable disambiguations

3. PR #833: Improved omission tracking

4. PR #834: New fremor init command for config fetching

5. PR #836: Informative error on mip_era/table format mismatch

6. PR #837: Accept CF calendar aliases (noleap/365_day, etc.)

7. PR #838: CMIP7 flavored tests

8. PR #846: Variable list semantics (map modeler vars to MIP table names)

9. PR #817: Update cmor to 3.14.2

Implementation Strategy

When ready to implement Phase 3 features:

  1. Create individual GitHub issues for each item above with:

    • Link to the original fre-cli PR
    • Description of the feature/fix
    • Any fremorizer-specific considerations
    • Testing requirements
  2. Prioritize based on:

    • User impact (e.g., PR #826 fixes current test failures)
    • Dependencies between features
    • Alignment with CMIP6/CMIP7 timelines
  3. Implementation approach:

    • Review the original PR in fre-cli for implementation details
    • Adapt code to fremorizer's independent package structure
    • Ensure all changes maintain test coverage
    • Update documentation as needed
    • Validate no regressions in existing functionality
  4. Testing requirements:

    • All existing tests must continue to pass
    • New tests should be added for new features
    • Phase 2.5 equivalence tests should still pass after each feature addition

Notes

  • Phase 2.5 (equivalence testing with fre-cli) should be completed before implementing Phase 3 features
  • Each Phase 3 feature should be implemented in a separate PR for easier review and rollback if needed
  • Consider creating a project board to track Phase 3 implementation progress

References

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions