patina-v4.0.0
What's Changed
-
.github: Provide ability to skip cargo release dry run @makubacki (#529)
Change Details
## Description
By adding "
(skip cargo release dry run)" in a PR description, cargo release dry run will not be run in the CI workflow in the PR gate. Also, the "Publish Release" workflow will not run the dry run if that text is in the release description (the PR description is rolled into the release notes automatically). This means adding "(skip cargo release dry run)" to the PR description will skip cargo release dry run in both workflows and make it auditable that was done per the descriptions.- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Verified the
cargo releasedry run step is not in the CI and release workflows when the text is present.Integration Instructions
N/A
-
chore: Release v3.1.0 @os-d (#509)
Change Details
## Description
Release v3.1.0
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
N/A.
Integration Instructions
N/A.
</blockquote> <hr> </details>
⚠️ Breaking Changes
-
patina\_sdk: Make patina tests(`#[patina_test]`) an opt-in feature @vineelko (#527)
Change Details
## Description
- The Patina SDK test infrastructure relies on the
linkmecrate.- linkme: Safe cross-platform linker shenanigans
- One requirement of the crate is that the
distributed_slicewe use to collocate all Patina tests must contain at least one element. This means any external utility (e.g., a platform validation tool) that depends onpatina_sdkwill encounter a linker crash (not just an error) if it does not provide at least one#[patina_test]test. - The current feature flag
offis misleading, as opting out of this functionality requires opting in to a feature calledoff - Rename the current feature flag (
off) toenable_patina_tests. - Invert the logic for processing the feature flag to make it opt-in as enabling this functionality by default can trip the consumers.
Linker Crash when building platform validation tool:

(skip cargo release dry run)
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Verified by integrating it with platform validation tool and
cargo make allworksIntegration Instructions
Any crate trying to use this functionality should opt-in to the feature "enable_patina_tests" feature as shown below
patina_sdk = { ...., features = ["enable_patina_tests",...] }</blockquote> <hr> </details> - The Patina SDK test infrastructure relies on the
🚀 Features & ✨ Enhancements
-
patina\_sdk: Make patina tests(`#[patina_test]`) an opt-in feature @vineelko (#527)
Change Details
## Description
- The Patina SDK test infrastructure relies on the
linkmecrate.- linkme: Safe cross-platform linker shenanigans
- One requirement of the crate is that the
distributed_slicewe use to collocate all Patina tests must contain at least one element. This means any external utility (e.g., a platform validation tool) that depends onpatina_sdkwill encounter a linker crash (not just an error) if it does not provide at least one#[patina_test]test. - The current feature flag
offis misleading, as opting out of this functionality requires opting in to a feature calledoff - Rename the current feature flag (
off) toenable_patina_tests. - Invert the logic for processing the feature flag to make it opt-in as enabling this functionality by default can trip the consumers.
Linker Crash when building platform validation tool:

(skip cargo release dry run)
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Verified by integrating it with platform validation tool and
cargo make allworksIntegration Instructions
Any crate trying to use this functionality should opt-in to the feature "enable_patina_tests" feature as shown below
patina_sdk = { ...., features = ["enable_patina_tests",...] }</blockquote> <hr> </details> - The Patina SDK test infrastructure relies on the
📖 Documentation Updates
-
Performance Doc @magravel (#498)
Change Details
## Description
Add documentation for Performance Component.
Fix #70
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
N/A
Integration Instructions
N/A
</blockquote> <hr> </details>
-
Unstable Feature Issue Template @magravel (#486)
Change Details
## Description
This PR adds the unstable issue template introduced by the RFC:
Unstable Feature.RFC PR: #406
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Verify that the template was rendering properly in GitHub.
Integration Instructions
N/A
-
[REBASE \& FF] AdvLogger: Add Theory of Operation @cfernald (#507)
Change Details
## Description
Adds the initial theory of implementation for advanced logger as well as some minor interfaces improvements.
Not marking breaking as none of the removed public APIs were intended and were unused.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
N/A
Integration Instructions
N/A
</blockquote> <hr> </details>
-
[REBASE\&FF] Require all public objects be inline-documented @Javagedes (#506)
Change Details
## Description
This commit change requires all public objects be inline-documented and adds documentation where missing in this repository.
I ask that any writers of any of the code I documented validate my documentation additions.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
CI
Integration Instructions
N/A
Full Changelog: patina-v3.1.0...v4.0.0