Skip to content

Releases: microsoft/mu_basecore

v2022080001.2.0

17 Apr 20:16
74ceeb9
Compare
Choose a tag to compare

What's Changed

🚀 Features & ✨ Enhancements

  • Infinite boot retries @apop5 (#347)
    Change Details
      ## Description

    This is a draft of infinite boot retries based on a newly created PCD. When true, the system will never stop retrying the boot options.

    PCD default is FALSE to match existing functionality.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    Integration Instructions

    n/a




Full Changelog: v2022080001.1.0...v2022080001.2.0

v2022080001.1.0

17 Apr 15:39
b188842
Compare
Choose a tag to compare

What's Changed

  • Fix MdeModulePkg host test @kuqin12 (#357)
    Change Details
      # Preface

    Please ensure you have read the contribution docs prior
    to submitting the pull request. In particular,
    pull request guidelines.

    Description

    This change fixed a host unit test break introduced in #354.

    It should be removed when resolving this issue #356.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    This was tested on the pipeline.

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    
  • Remove UefiBootServicesTableLib from inclusion file @kuqin12 (#354)
    Change Details
      # Preface

    Please ensure you have read the contribution docs prior
    to submitting the pull request. In particular,
    pull request guidelines.

    Description

    The inclusion file change will potentially change the library linkage of UefiBootServicesTableLib, which could be an incompatible instance compared to the existing consumers.

    This change temporarily removes this inclusion until all unit tests from the consumers migrated their unit tests to the common implementation.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    This was tested on consumer packages that uses UefiBootServicesTableLib.

    Integration Instructions

    For packages uses UefiBootServicesTableLib|UnitTestFrameworkPkg/Library/UnitTestUefiBootServicesTableLib/UnitTestUefiBootServicesTableLib.inf for unit tests, one needs to update the host test dsc to include the entry. Otherwise, no changes needed.




🚀 Features & ✨ Enhancements

  • [CHERRY-PICK] Google Mock Support [Rebase \& FF] @makubacki (#350)
    Change Details
      ## Description

    Extend the GooggleTestLib in the UnitTestFrameworkPkg to support
    gmock. gmock is for C++ code, so some extensions are required
    to make it work for C code. These extensions include SubhookLib
    and FunctionMockLib.

    https://bugzilla.tianocore.org/show_bug.cgi?id=4389

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    CI including execution of Google Test examples.

    Integration Instructions

    Use Google Mock support if applicable. See UnitTestFrameworkPkg ReadMe.md for
    more details.

    Signed-off-by: Michael Kubacki [email protected]




Full Changelog: v2022080001.0.0...v2022080001.1.0

v2022080001.0.0

13 Apr 00:08
Compare
Choose a tag to compare

About This Release

This is the first Mu Basecore release 🎉

Moving forward this repository will be following semantic versioning and regularly making
releases. You will always be able to find the latest release on the repo landing page under
the "Releases" section on the right side.

It is recommended to consume code from the code in this repo (outside of development purposes)
through a versioned release.

The release notes will categorize changes to make it easy to see what's changed since the
last release and the source code will be tagged with the release version.

A semantic versioning process (version is <major.minor.patch>) is followed with the following rules:

  • Major Version

    • A major version change indicates a breaking change. This means that the release is not backward
      compatible with the previous release. This is typically a change to the API or ABI of a component.

    • The major version in Mu Basecore is broken down into the following components:

      • <Mu Release Version><Major Version>
        • Mu Release Version is 6 digits and corresponds to the edk2 stable tag the Mu release branch is based on.
        • Major Version is 4 digits and tracks the monotonically incrementing major version within the branch.
        • For example, 2022080001 would be the first major version value in the release/202208 branch.
  • Minor Version

    • A minor version change indicates a new feature or enhancement. This means that the release is backward
      compatible with the previous release but includes new functionality or a major rework of existing functionality.
  • Patch Version

    • A patch version change indicates a bug fix or any other change. This means that the release is backward compatible
      with the previous release and contains no new functionality.

Note that the release notes for this first release are not categorized due to the large number of changes included.


What's Changed

  • [Cherry-pick] Add ExceptionPersistenceLib by @kenlautner in #120
  • [Cherry-pick] Cherry-picked all the commits that went in after the rebase to 202208 started. by @kenlautner in #121
  • Updated the BaseCryptoDriver binaries to the newly built ones by @kenlautner in #122
  • [Cherry-pick] Include recent changes from release/202202 by @kenlautner in #124
  • Updated pipelines to only run CI and PR gates on release/202208 and r… by @kenlautner in #131
  • Use Mu DevOps by @makubacki in #139
  • Fixing bug in GuidCheck plugin + cleanup by @bkarstens in #147
  • Fixing local build for PolicyDxe by @kuqin12 in #150
  • Update Stack Cookie Conditionals for VS2022 by @TaylorBeebe in #156
  • Add Stack Cookie Failure to ExceptionPersistenceLib by @TaylorBeebe in #157
  • Update __security_check_cookie_Failure to Emit 0x40 Interrupt by @TaylorBeebe in #159
  • Add Stack Cookie Support to the Memory Protection Policy by @TaylorBeebe in #158
  • Include Stack Cookie Support Libs on Release Builds by @TaylorBeebe in #161
  • [REBASE && FF] Cherry-pick Memory Protection Init Updates by @TaylorBeebe in #155
  • [REBASE && FF] Improve Security of MP Buffers and MMIO Ranges by @TaylorBeebe in #164
  • Fix buffer overflow when merging guard pages in MergeMemoryMap by @cfernald in #126
  • Update Stack Cookie Vector to Fixed PCD by @TaylorBeebe in #165
  • Add CodeQL support by @makubacki in #163
  • .github/dependabot.yml: Enable dependabot by @makubacki in #169
  • .github/dependabot.yml: Remove submodules by @makubacki in #178
  • CodeQlBuildPlugin: More selectively clean build output trees by @makubacki in #180
  • UefiBootManagerLib: Update assert condition in BmFindBootOptionInVariable() by @makubacki in #182
  • pip: bump antlr4-python3-runtime from 4.7.1 to 4.11.1 by @dependabot in #174
  • Enable stale bot GitHub Action by @makubacki in #186
  • Enable Label Sync GitHub Action by @makubacki in #187
  • Add support for HTTP error 429 by @mikeytdisco in #190
  • pull_request_template.md: Remove since file is in .github now by @makubacki in #189
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #191
  • Create memory bin override library to allow for more extensive platform customization by @cfernald in #194
  • [Rebase & FF] Introducing MP services test application by @kuqin12 in #196
  • Set EFI_MEMORY_XP as a required capability for PciHostBridge by @os-d in #198
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #197
  • Add logic for container build to Matrix-Build-Job.yml by @cfernald in #199
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #201
  • Fix missing logs from GenMake.py by @antklein in #195
  • Update FillInMemoryMap() to Ignore Regions of GCD Memory Type Non-Existent by @TaylorBeebe in #200
  • Add debug messages for DHCP state changes, Tftp progress, and PxeBc progress. by @mikeytdisco in #188
  • .sync/workflows: Add file sync notice to some files (#67) by @uefibot in #202
  • Update CryptoPkg binary generation to always include EC by @kenlautner in #203
  • Plugin/CodeQL: Fix query specifier assignment by @makubacki in #204
  • Plugin/CodeQL: Skip CodeQlBuildPlugin if --skipbuild is given by @makubacki in #205
  • Plugin/CodeQL: Add an integration file by @makubacki in #206
  • CodeQL plugin filter support [Rebase & FF] by @makubacki in #207
  • pip: update edk2-pytool-extensions requirement from ~=0.20.0 to ~=0.20.1 by @dependabot in #210
  • Increase Temp Buffer Size in FillMemoryMap() Routine by @TaylorBeebe in #213
  • [bug] Absolute path support for DscCompleteCheck by @bkarstens in #212
  • Improve log messages for DependencyCheck, UncrustifyCheck, and SpellCheck (#115) by @makubacki in #215
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #214
  • HostUnitTestCompilerPlugin: enable single module build test execution by @Javagedes in #219
  • Add a PCD to allow the AP wakeup buffer to be reserved by @cfernald in #209
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #221
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #222
  • Add Readme Section on Memory Protection Special Regions by @TaylorBeebe in #208
  • Update the FillMemoryMap() Routine to Calculate the Required Buffer Size Before Allocation by @TaylorBeebe in #218
  • Set MMIO NX Based on Memory Protection Policy by @TaylorBeebe in #211
  • Add CpuMpDebugProtocol for Debug Reporting AP Stack Buffers by @TaylorBeebe in #216
  • Repo File Sync: Synced file(s) with microsoft/mu_devops by @uefibot in #223
  • pip: update edk2-pytool-extensions requirement from ~=0.20.1 to ~=0.21.0 by @dependabot in #220
  • Restore BSP Exception Stack Initialization by @TaylorBeebe in #225
  • Convert files from LF to CRLF and update LineEndingCheck CI plugin [Rebase & FF] by @makubacki in #226
  • Add ability to request maintainer feedback in issues (#90) by @uefibot in #228
  • Add scheduled maintenance workflow (#92) by @uefibot in #232
  • Updated readme to include changes of note that happened with the 202208 transition. by @kenlautner in #227
  • pip: update edk2-pytool-extensions requirement from ~=0.21.0 to ~=0.21.2...
Read more

2019-03 Stable release candidate 1

01 Aug 05:29
Compare
Choose a tag to compare
1903_RC1

Finalize release notes for 1903_RC1.