Skip to content

Release 5.18.0#378

Open
marcosbento wants to merge 67 commits into
mainfrom
release/5.18.0
Open

Release 5.18.0#378
marcosbento wants to merge 67 commits into
mainfrom
release/5.18.0

Conversation

@marcosbento

@marcosbento marcosbento commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Description

As per PR title.

Contributor Declaration

By opening this pull request, I affirm the following:

  • All authors agree to the Contributor License Agreement.
  • The code follows the project's coding standards.
  • I have performed self-review and added comments where needed.
  • I have added or updated tests to verify that my changes are effective and functional.
  • I have run all existing tests and confirmed they pass.

🌦️ >> Documentation << 🌦️
https://sites.ecmwf.int/docs/dev-section/ecflow/pull-requests/PR-378

marcosbento and others added 30 commits June 11, 2026 10:13
This purposely points to Python3.10 on the HPC, which includes an
installation of pybind11 2.10.3. Since pybind11 is a header-only library
there is no need to have a match between the Python version for which it
was installed, and the Python version used to build the ecflow python
extension.
This is a workaround for that fact that the <hostname>.local is not
properly resolved in the macOS runners.
This effectively allows extend the ecflow Python objects, by adding
functions/properties to them.
This was the default when using Boost.python, but needs to be explicitly
defined when using Pybind11.

Re ECFLOW-2100
These debug messages happen every second, within the ecflow server
internal loop, and are considered too noisy.

Re ECFLOW-2098
This provides a brief summary for each of the API sections.

Re ECFLOW-2101
This endpoint returns an array of entries with node information
(path, current state, and last time the state changed).
It allows sorting the output, and selecting only the first N entries.

Re ECFLOW-2105
n.b. This is necessary to cope with heavily loaded CI runners.
Introduce ecf::PTree (`.../core/src/ecflow/core/PTree.{hpp,cpp}`) as a
drop-in JSON property tree replacement for boost::property_tree::ptree.

The new functionality is heavily tested (`.../core/test/TestPTree.cpp`),
to ensure ecf::PTree has the exact same behaviour as boost::property_tree::ptree.
This is used/required by ecflowUI, namely the preservation of repeated keys
and insertion order.
Using AUTOMOC, instead of calling qtX_wrap_cpp, removes the unnecessary
burden of manually managing the list of tracking moc-able files.
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 88.81371% with 248 lines in your changes missing coverage. Please review.
✅ Project coverage is 51.77%. Comparing base (52d11c1) to head (2577391).
⚠️ Report is 5 commits behind head on main.

Files with missing lines Patch % Lines
Viewer/ecflowUI/src/VConfig.cpp 0.00% 58 Missing ⚠️
Viewer/ecflowUI/src/OutputItemWidget.cpp 0.00% 47 Missing ⚠️
Viewer/ecflowUI/src/MenuHandler.cpp 0.00% 26 Missing ⚠️
Viewer/ecflowUI/src/VSettings.cpp 0.00% 18 Missing ⚠️
Viewer/ecflowUI/src/InfoPanelHandler.cpp 0.00% 14 Missing ⚠️
Viewer/ecflowUI/src/VMirrorAttr.cpp 0.00% 14 Missing ⚠️
libs/core/src/ecflow/core/PTree.cpp 92.68% 12 Missing ⚠️
libs/rest/src/ecflow/http/ApiV1.cpp 71.42% 12 Missing ⚠️
Viewer/libViewer/src/Palette.cpp 0.00% 9 Missing ⚠️
libs/node/src/ecflow/node/MirrorAttr.cpp 35.71% 9 Missing ⚠️
... and 11 more
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #378      +/-   ##
==========================================
+ Coverage   50.87%   51.77%   +0.90%     
==========================================
  Files        1239     1244       +5     
  Lines       99249   101117    +1868     
  Branches    14958    15135     +177     
==========================================
+ Hits        50496    52358    +1862     
- Misses      48753    48759       +6     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants