Skip to content

Addressing several issues: bug fixes and improvements - #25

Merged
mkavulich merged 30 commits into
developfrom
feature/fix_some_issues
Jul 9, 2026
Merged

Addressing several issues: bug fixes and improvements#25
mkavulich merged 30 commits into
developfrom
feature/fix_some_issues

Conversation

@mkavulich

@mkavulich mkavulich commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

DESCRIPTION OF CHANGES:

This PR resolves a number of open issues in the repository:

Resolved issues:

Other changes:

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
    • As part of the capability to pull best track data from FTP, the BEST_TRACK variable is renamed to BEST_TRACK_DIR and BEST_TRACK_FILE is now an option to specify the best track filename rather than having it hard-coded in conf files. There is now a check in setup.py to ensure that old user config files will fail with a descriptive error message.

TESTS CONDUCTED:

Ran all WE2E tests on Ursa. All pass now!

DEPENDENCIES:

None

DOCUMENTATION:

None needed

ISSUE:

Fixes:

CONTRIBUTORS (optional):

A few commits in this PR were authored, partially or in full, by Claude CLI. These commits include the specific model used as a co-author. All of these changes were manually reviewed by me and checked for correctness.

mkavulich and others added 20 commits June 16, 2026 13:01
 - Replace call to load_modules_wflow.sh with call to setup_conda.sh
 - Since we no longer have module loads, ROCOTO_PATH is provided as a variable in the machine file for each platform
Read ROCOTO_PATH from the machine config file and prefix all calls to
rocotorun and rocotostat with it, consistent with launch_vx_wflow.sh.
Machines without ROCOTO_PATH (jet, noaacloud, linux, macos) fall back
to bare binary names. rocoto_path is stored in the WE2E monitor YAML
and propagated through update_expt_status/compare_rocotostat; added to
all non-task entry skip lists to avoid being treated as a task.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The statuses loop in update_expt_status had 8-space indentation while
the other two skip lists had 12-space indentation, so the replace_all
edit missed it. This caused a TypeError when iterating over the expt
dict since rocoto_path (a string) was not excluded from the task loop.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Resolve SCRIPT_DIR from ${BASH_SOURCE[0]} at the top and anchor all
relative file/directory references (conda_loc, conda/, environment.yml)
to it. Also replaces readlink -f with cd && pwd for macOS compatibility
without requiring GNU coreutils.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
A user-defined cd function in .bashrc that prints to stdout would
corrupt any variable set via $(cd ... && pwd) command substitution.
Using builtin cd bypasses shell functions and calls the built-in
directly, preventing spurious output from being captured.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…! Also, make HAFS-A WE2E test case work on all platforms
@georgemccabe georgemccabe mentioned this pull request Jun 30, 2026
34 tasks
georgemccabe added a commit that referenced this pull request Jun 30, 2026
…ent <native> tag for rocoto when submitting to the HPSS queue (just like how get_obs tasks already do)
@gsketefian

Copy link
Copy Markdown
Collaborator

@mkavulich FYI I'm just starting my review.

Comment thread .github/workflows/python_tests.yaml
Comment thread .github/PULL_REQUEST_TEMPLATE Outdated

## TESTS CONDUCTED:
<!-- Explicitly state what tests were run on these changes, or if any are still pending (for README or other text-only changes, just put "None required"). Make note of the compilers used, the platform/machine, and other relevant details as necessary. For more complicated changes, or those resulting in scientific changes, please be explicit! -->
<!-- Explicitly state what tests were run on these changes, or if any are still pending (for README or other text-only changes, just put "None required"). Make note of the platform/machine, and other relevant details as necessary. For more complicated changes, or those resulting in scientific changes, please be explicit! -->

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Remove comma after "platform/machine" (according to my middle school grammar lessons).

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.

Done

Comment thread .github/PULL_REQUEST_TEMPLATE
Comment thread parm/data_locations.yml
Comment thread scripts/pcpcombine.sh
Comment thread scripts/tcpairs.py
Comment thread tests/WE2E/utils.py
Comment thread tests/WE2E/utils.py
Comment thread ush/launch_vx_wflow.sh
Comment thread setup_conda.sh
Comment thread setup_conda.sh Outdated
# (conda_loc, conda/, environment.yml) work regardless of the caller's CWD.
SCRIPT_DIR=$(builtin cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)

# Check for existing conda/ subdirectory from previous installations

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This comment would be clearer if changed to something like this:

# If the conda location file is not specified but a conda installation exists under dtc-vx-workflow from a previous installation...

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.

Updated the comment with more detail

Comment thread setup_conda.sh Outdated
if ! conda env list | grep -q "^vx_workflow\s" ; then
mamba env create -n vx_workflow --file "${VX_WFLOW_DIR}/environment.yml" -y

# Check if conda location file exists

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This comment would be clearer if changed to something like this:

# If the conda location file is not specified but a (system) conda installation is still available...

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.

Updated for a more clear and accurate comment

@mkavulich mkavulich left a comment

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.

@gsketefian Thanks for your review, I believe I've addressed all your comments

Comment thread .github/workflows/python_tests.yaml
Comment thread .github/PULL_REQUEST_TEMPLATE
Comment thread .github/PULL_REQUEST_TEMPLATE Outdated

## TESTS CONDUCTED:
<!-- Explicitly state what tests were run on these changes, or if any are still pending (for README or other text-only changes, just put "None required"). Make note of the compilers used, the platform/machine, and other relevant details as necessary. For more complicated changes, or those resulting in scientific changes, please be explicit! -->
<!-- Explicitly state what tests were run on these changes, or if any are still pending (for README or other text-only changes, just put "None required"). Make note of the platform/machine, and other relevant details as necessary. For more complicated changes, or those resulting in scientific changes, please be explicit! -->

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.

Done

Comment thread parm/data_locations.yml
Comment thread scripts/tcpairs.py
Comment thread tests/WE2E/utils.py
Comment thread ush/launch_vx_wflow.sh
Comment thread setup_conda.sh Outdated
# (conda_loc, conda/, environment.yml) work regardless of the caller's CWD.
SCRIPT_DIR=$(builtin cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)

# Check for existing conda/ subdirectory from previous installations

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.

Updated the comment with more detail

Comment thread setup_conda.sh Outdated
if ! conda env list | grep -q "^vx_workflow\s" ; then
mamba env create -n vx_workflow --file "${VX_WFLOW_DIR}/environment.yml" -y

# Check if conda location file exists

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.

Updated for a more clear and accurate comment

Comment thread setup_conda.sh
@gsketefian

Copy link
Copy Markdown
Collaborator

@mkavulich Left a couple of replies and approved.

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.

2 participants