Skip to content

Releases: microsoft/mu_devops

v12.4.0

06 Jan 23:16
1915931
Compare
Choose a tag to compare

What's Changed

  • .sync/rust\_config/rustfmt.toml: Add struct and enum alignment @zurcher (#389)
    Change Details
      Add arguments to rustfmt for vertically aligning struct and enum members. Usage requires `+nightly`.

    Value of 8 matches 'align_var_struct_span' from uncrustify.cfg.




🚀 Features & ✨ Enhancements

  • Update Release Drafter for Dev Branches @makubacki (#387)
    Change Details
      Changes the way release drafter handles drafting releases on repos with release branches (which have dev branches now).

    Ultimately, a release is drafted for the dev branch and the release branch. The releases are differentiated by both their release title and tag.

    • Release Branch
      • Title: release-v<version>
      • Tag: v<version>
    • Dev Branch
      • Title: dev-v<version>
      • Tag: dev-v<version>

    Note that the tag for the release branch follows the same convention as existing release tags.

    The "release branch" release includes all pull requests made to the dev branch with the type:backport label since the last "dev branch" release. For this reason, the "dev branch" and "release branch" should be released at the same time. Then, this effectively results in the "release branch" having all relevant changes since the last release. The "dev branch" release will be based at the same point in history as the "release branch" release but include all changes not just those with the type:backport label.

    The "release branch" release for the current release branch should be marked as "latest". For example, if "release/202311" and "release/202405" exist, the "release/202405" "release branch" release would be marked as latest.

    The release-drafter/release-drafter action is still used.




Full Changelog: v12.3.0...v12.4.0

v12.3.0

01 Nov 15:34
21da0ab
Compare
Choose a tag to compare

What's Changed

  • Version.njk: Update to container version 4bebc96 @makubacki (#384)
    Change Details
      Main reason to update is to pick up the latest Ubuntu container build that uses Python 3.12.

    A complete list of changes compared to the previous container version (d1e4ff1) is in:

    d1e4ff1...4bebc96




  • .sync/Dockerfile: Add Python 3.12 installation steps @makubacki (#383)
    Change Details
      Some additional steps are needed to move the container build to Python 3.12.

    The Deadsnakes PPA is needed to get Python 3.12. Add a step to add that repo and then use apt to install Python 3.12 from it. gnupg is needed to add the key for Deadsnakes. Distutils was removed from Python 3.12 but we still need it to build QEMU so that is added as a separate installation.


    Changes tested in #382




🚀 Features & ✨ Enhancements

  • Add release branch backport workflow @makubacki (#386)
    Change Details
      Closes #372

    This new workflow will attempt to automatically cherry-pick marked contributions to a development branch to its corresponding release branch. If a merge conflict occurs, the commit is committed to a new branch with merge markers and then a PR is created into the target branch with those markers. The PR is labeled with
    type:release-merge-conflict to indicate that it needs manual resolution.

    The PR (if created) is expected to fail compilation and status checks of course due to the merge conflict markers. A human should then checkout the PR branch, resolve the conflicts, and push the changes back to the PR branch.


    • To mark a PR going into the development branch so that it should be cherry-picked to the release branch, add the type:backport label to the PR.

    Notes:

    • The workflow is synced to all repos that currently have a dev branch.
    • Each repo that backport-to-release-branch.yml is synced to must have a CHERRY_PICK_TOKEN defined with repo write permission.


Full Changelog: v12.2.0...v12.3.0

v12.2.0

24 Oct 00:01
Compare
Choose a tag to compare

What's Changed

  • Use a Single Python Version Definition [Rebase \& FF] @makubacki (#380)
    Change Details
      **Define Python version once**

    Defines the Python version in a single location Version.njk and
    syncs that version to other files. Sets the Python version to 3.12
    (although 3.13 was recently released) for continued compatibility
    with the version already used in Windows pipelines.


    .sync/Version.njk: Update to Mu DevOps v12.2.0

    See the following comparison for details of the changes
    between these releases:

    v12.0.2...v12.2.0

    Note: Testing is in progress.




  • Containers: Update QEMU to version 9.0.0 @cfernald (#377)
    Change Details
      QEMU Version 9.0.0 is required for SMMU and GIC support on the sbsa-ref machine. This version is already used in the mu_tiano_platforms ext-dep

Full Changelog: v12.1.0...v12.2.0

v12.1.0

24 Sep 23:56
422dd88
Compare
Choose a tag to compare

What's Changed

  • .sync/Version.njk: Update to Mu DevOps v12.0.2 @makubacki (#375)
    Change Details
      See the following comparison for details of the changes between these releases:

    v10.0.0...v12.0.2




🚀 Features & ✨ Enhancements

  • PrGate.yml: Add extra\_pre\_build\_steps param @makubacki (#378)
    Change Details
      Adds a new template parameter called `extra_pre_build_steps` that allows a step list to run before any stuart build related commands are executed.

Full Changelog: v12.0.2...v12.1.0

v12.0.2

23 Sep 23:08
7d2b147
Compare
Choose a tag to compare

What's Changed

  • Version.njk: Update to container version d1e4ff1 @makubacki (#374)
    Change Details
      Main reason to update is to use the latest Rust versions in Version.njk.
    {# The Rust toolchain version to use. #}
    {% set rust_toolchain = "1.80.0" %}
    
    {# Rust tool versions. #}
    {% set cargo_make = "0.37.9" %}
    {% set cargo_tarpaulin = "0.31.2" %}
    

    A complete list of changes compared to the previous container
    version (0e124c1) is in:

    0e124c1...d1e4ff1




  • Build-Containers.yml: Trigger on Version.njk change @makubacki (#373)
    Change Details
      Builds the container on a change to the version file.

Full Changelog: v12.0.1...v12.0.2

v12.0.1

23 Sep 20:06
d1e4ff1
Compare
Choose a tag to compare

What's Changed

  • .sync: Update codeql to run on dev/\* branches @Javagedes (#371)
    Change Details
      Updates `codeql.yml` and `codeql-platform.yml` to run on dev/* branches.

Full Changelog: v12.0.0...v12.0.1

v12.0.0

23 Sep 14:31
eb24f97
Compare
Choose a tag to compare

What's Changed

  • .sync/dependabot: Add Features/DEBUGGER to ignore list @makubacki (#369)
    Change Details
      Let the submodule-release-updater GitHub action handle updates based on versioned GitHub releases.

⚠️ Breaking Changes

  • RustSetupSteps.yml: Update to latest cargo\_tarpaulin 31.2 and Rust Toolchain @antklein (#363)
    Change Details
      Update to the latest version of cargo_tarpaulin, release 31.2. This change is required to allow tarpaulin to function with Rust toolchain 1.80. Running tarpaulin 27.3 with toolchain 1.80 results in the tool failing with a "Parse error".

Full Changelog: v11.1.0...v12.0.0

v11.1.0

23 Sep 14:30
9d11880
Compare
Choose a tag to compare

What's Changed

  • Steps/BuildPlatform: Add toggle for stuart\_pr\_eval @Javagedes (#368)
    Change Details
      Adds a True / False parameter to the BuildPlatform step to allow disabling PR evaluation, similar to that of Steps/PrGate.yml. Default value is True to match current behavior.

  • Minor fix to PR template @zurcher (#367)
    Change Details
      ## Description

    Remove redundant "to complete" from PR template




  • Update the Rust toolchain to version 1.80.0 @antklein (#362)
    Change Details
      Update to a newer Rust toolchain in order to incorporate improvements with newer versions. For example, an improvement on the size optimization of output rust binaries.

Full Changelog: v11.0.3...v12.0.0

v11.0.3

24 Aug 04:13
39e6111
Compare
Choose a tag to compare

What's Changed

  • .sync/version.njk: Update latest Mu branch to 202405 @makubacki (#360)
    Change Details
      Also updates references to 202302 throughout the repo to prevent the examples from getting too stale over time.

Full Changelog: v11.0.2...v11.0.3

v11.0.2

15 Aug 02:13
9517bb6
Compare
Choose a tag to compare

What's Changed

  • Add extra\_npm\_args for InstallMarkdownLink.yml and InstallSpellCheck @MarcChen46 (#361)
    Change Details
      Add "extra_npm_args" for InstallMarkdownLint.yml and InstallSpellCheck.yml steps to increase the flexibility to npm actions.

Full Changelog: v11.0.1...v11.0.2