Skip to content

Support new versioning scheme#137

Open
pleasant-menlo wants to merge 11 commits into
mainfrom
major-minor-version-format-simple
Open

Support new versioning scheme#137
pleasant-menlo wants to merge 11 commits into
mainfrom
major-minor-version-format-simple

Conversation

@pleasant-menlo

Copy link
Copy Markdown
Collaborator

Change Summary

Overview

Implemented handling of major version in IMAP L3 processing including the jobs that manage their own version numbers (cron jobs for GLOWS and maps).

The dependency JSON can now contain additional information about the requested version:

{
  "version": {
    "sci": {
      "major_version": 2,
      "minor_version": 1
    }
  },
  "dependency": [...]
}

We currently assume that version information will only be provided for a single descriptor, because our existing dependency configuration only specifies a single output for each job. This may need to be revisited if the dependency system later expects several outputs for a single L3 job.

The parallel change to imap_processing was made in IMAP-Science-Operations-Center/imap_processing#3313.

See IMAP-Science-Operations-Center/sds-data-manager#1397 for the top-level issue.

Closes #118.

File changes

Version objects are now created from the dependency JSON when they contain version numbers and otherwise fall back to creating version objects from the command line arguments.

Testing

Invoking any job from the command line using a dependency JSON that includes the version numbers should result in an output with the corresponding major and minor version numbers.

@pleasant-menlo pleasant-menlo changed the title Major minor version format simple Support new versioning scheme Jun 26, 2026
@jtniehof

Copy link
Copy Markdown
Collaborator

@bryan-harter @tech3371 @vineetbansal , can one of you take a look at this?

…me to use VersionMap with a version per output descriptor.
…me to use VersionMap for GLOWS processing L3b, L3c, and L3d
@jtniehof

jtniehof commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Note we probably shouldn't merge this until we have all the metadata updates for release 1 done, so we can still build new containers against those.

…s per product descriptor for GLOWS L3bcde
# Conflicts:
#	pyproject.toml
#	tests/glows/l3e/test_glows_l3e_utils.py
#	tests/periodically_run_tests.json
#	uv.lock
Comment thread pyproject.toml Outdated
"astropy_healpix==1.1.2",
"bitstring==4.3.0",
"imap-data-access==0.42.0.dev0",
"imap-data-access>=0.42.0.dev0",

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0.42.0.dev1 is breaking backwards compatibility for versions. We could leave this at ==0.42.0.dev0 for the time being until 0.42.0.dev2 is released.

l3d_initializer_result = GlowsL3DInitializer.should_process_l3d(l3bc_initializer_data.external_dependencies,
l3bs, l3cs)
l3bs, l3cs, l3d_major_version)
if l3d_initializer_result is None:

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this early return just go away? If L3e needs to be regenerated due to a new major version, that should not be gated behind updates or a new major version of L3d

if not latest_l3d_cr:
first_updated_cr = find_first_updated_cr(l3d_output.l3d_cdf_file_path, previous_l3d)
if first_updated_cr is None:
return None

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This early return prevents us from generating any L3e if L3d has not changed. We may still want to process if the L3e major version has changed

…are no changes between the output L3d and the existing L3d
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.

Update L3 repo to take in new science file version - Card 3295

2 participants