Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RELEASE] MRC v24.06.00 #483

Merged
merged 12 commits into from
Jul 3, 2024
Merged

[RELEASE] MRC v24.06.00 #483

merged 12 commits into from
Jul 3, 2024

Conversation

dagardner-nv
Copy link
Contributor

❄️ Code freeze for branch-24.06 and v24.06 release

What does this mean?

Only critical/hotfix level issues should be merged into branch-24.06 until release (merging of this PR).

All other development PRs should be retargeted towards the next release branch: branch-24.10.

What is the purpose of this PR?

  • Update documentation
  • Allow testing for the new release
  • Enable a means to merge branch-24.06 into main for the release

dagardner-nv and others added 11 commits April 3, 2024 20:13
… possible, and as pybind11::object otherwise (#455)

* Add an optional `unserializable_handler_fn` callback to `mrc::pymrc::cast_from_pyobject` which will be invoked for any unsupported Python object. Allowing for serializing unsupported object.
ex:
```cpp
    pymrc::unserializable_handler_fn_t handler_fn = [](const py::object& source,
                                                       const std::string& path) {
        return nlohmann::json(py::cast<float>(source));
    };

    // decimal.Decimal is not serializable
    py::object Decimal = py::module_::import("decimal").attr("Decimal");
    py::object o       = Decimal("1.0");
    EXPECT_EQ(pymrc::cast_from_pyobject(o, handler_fn), nlohmann::json(1.0));
```

* Add `JSONValues` container class which is an immutable container for holding Python values as `nlohmann::json` objects if possible, and as `pybind11::object` otherwise. The container can be copied and moved, but the underlying `nlohmann::json` object is immutable.
* Updates `nlohmann_json` from 3.9 to 3.11 for `patch_inplace` method.
* Incorporates ideas from @drobison00's PR #417 with three key differences:

  1. Changes to the `cast_from_pyobject` are opt-in when `unserializable_handler_fn` is provided, otherwise there is no behavior change to the method.
  2. Unserializable objects are stored in `JSONValues` rather than a global cache.
  3. Does not rely on parsing the place-holder values.

This PR is related to nv-morpheus/Morpheus#1560

Authors:
  - David Gardner (https://github.com/dagardner-nv)
  - Devin Robison (https://github.com/drobison00)

Approvers:
  - Michael Demoret (https://github.com/mdemoret-nv)

URL: #455
* Add pybind11 type-caster for `JSONValues`

Authors:
  - David Gardner (https://github.com/dagardner-nv)

Approvers:
  - Michael Demoret (https://github.com/mdemoret-nv)

URL: #458
Forward-merge branch-24.03 into branch-24.06
Morpheus documentation won't build with doxygen 1.10.0, but we need MRC and Morpheus doxygen versions to match so cross-repository environments can be solved correctly. This PR downgrades doxygen to the version used by Morpheus.

Authors:
  - Christopher Harris (https://github.com/cwharris)

Approvers:
  - Michael Demoret (https://github.com/mdemoret-nv)

URL: #469
…path methods (#465)

* All three methods performed nearly identical operations, but were defined in anonymous namespaces and not exposed in a header preventing sharing.
* Consolidate all three into a new `split_string_to_vector` in `string_utils.hpp`

closes #454

Authors:
  - David Gardner (https://github.com/dagardner-nv)

Approvers:
  - Michael Demoret (https://github.com/mdemoret-nv)

URL: #465
Forward-merge branch-24.03 into branch-24.06
Forward-merge branch-24.03 into branch-24.06
Contributes to rapidsai/dependency-file-generator#89.

`--file_key` has been deprecated in `rapids-dependency-file-generator` for a few months, and I'm looking to fully remove it.

This PR proposes:

* switching this project's uses from `--file_key` to `--file-key`
* updating the version of `rapids-dependency-file-generator` used in `pre-commit` to its latest release
* switching from `mamba env create --force` to `mamba env create --yes`

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Christopher Harris (https://github.com/cwharris)

URL: #482
@dagardner-nv dagardner-nv added the ! - Release Related to a Major Release label Jul 3, 2024
@dagardner-nv dagardner-nv requested review from a team as code owners July 3, 2024 17:11
@dagardner-nv dagardner-nv added the conda-build Enables running the conda-build step on a PR label Jul 3, 2024
@dagardner-nv
Copy link
Contributor Author

/ok to test

Copy link

codecov bot commented Jul 3, 2024

Codecov Report

Attention: Patch coverage is 71.42857% with 6 lines in your changes missing coverage. Please review.

Project coverage is 74.09%. Comparing base (84bfffc) to head (cc89f5f).
Report is 22 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #483      +/-   ##
==========================================
+ Coverage   74.01%   74.09%   +0.07%     
==========================================
  Files         402      403       +1     
  Lines       14406    14401       -5     
  Branches     1133     1132       -1     
==========================================
+ Hits        10663    10670       +7     
+ Misses       3743     3731      -12     
Flag Coverage Δ
cpp 70.85% <71.42%> (+0.05%) ⬆️
py 41.82% <71.42%> (+0.57%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
cpp/mrc/src/internal/utils/parse_ints.cpp 94.11% <100.00%> (-1.72%) ⬇️
cpp/mrc/src/public/utils/string_utils.cpp 100.00% <100.00%> (ø)
python/mrc/_pymrc/src/utilities/json_values.cpp 93.39% <100.00%> (+5.78%) ⬆️
...mrc/_pymrc/include/pymrc/utilities/json_values.hpp 85.71% <80.00%> (-14.29%) ⬇️
cpp/mrc/src/internal/utils/parse_config.cpp 0.00% <0.00%> (ø)

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 84bfffc...cc89f5f. Read the comment docs.

@dagardner-nv dagardner-nv merged commit 20623f1 into main Jul 3, 2024
26 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
! - Release Related to a Major Release conda-build Enables running the conda-build step on a PR
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

4 participants