From fa6fc8cd184974dab282cc872646400361b98b5c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 12 May 2025 02:53:56 +0000 Subject: [PATCH 001/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250511.1 (#8228) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d3283c93b31..40af192fe1f 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics aebf15d23e5a25ab718e780a29d8aca9a5280425 - + https://github.com/dotnet/diagnostics aebf15d23e5a25ab718e780a29d8aca9a5280425 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics aebf15d23e5a25ab718e780a29d8aca9a5280425 diff --git a/eng/Versions.props b/eng/Versions.props index ed89538267d..edd140df9d1 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25256.1 - 9.0.0-preview.25260.1 - 9.0.0-preview.25260.1 + 9.0.0-preview.25261.1 + 9.0.0-preview.25261.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626001 + 1.0.626101 $(MicrosoftNETCoreApp80Version) From 0cd27b5fbc23c58897d381c3f063e64924d114dd Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 12 May 2025 08:57:38 -0700 Subject: [PATCH 002/112] Update releases information. (#8227) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/releases.json | 4 ++-- documentation/releases.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/releases.json b/.github/releases.json index ed52bcbfa92..f7b3cb4d64b 100644 --- a/.github/releases.json +++ b/.github/releases.json @@ -8,10 +8,10 @@ ], "supported": [ "9.0", - "8.1", - "8.0" + "8.1" ], "unsupported": [ + "8.0", "7.3", "6.3" ], diff --git a/documentation/releases.md b/documentation/releases.md index bded13578f4..9af274730c6 100644 --- a/documentation/releases.md +++ b/documentation/releases.md @@ -6,13 +6,13 @@ | --- | --- | --- | --- | --- | --- | | 9.0 | November 12, 2024 | [9.0.2](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.0.2) | February 11, 2025 | | net9.0 | | 8.1 | February 11, 2025 | [8.1.0](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.1.0) | February 11, 2025 | | net8.0 | -| 8.0 | November 14, 2023 | [8.0.8](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.0.8) | February 11, 2025 | May 11, 2025 | net8.0 | ## Out of support versions | Version | Original Release Date | Latest Patch Version | Patch Release Date | End of Support | Runtime Frameworks | | --- | --- | --- | --- | --- | --- | +| 8.0 | November 14, 2023 | [8.0.8](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.0.8) | February 11, 2025 | May 11, 2025 | net8.0 | | 7.3 | August 8, 2023 | [7.3.4](https://github.com/dotnet/dotnet-monitor/releases/tag/v7.3.4) | May 14, 2024 | May 14, 2024 | net6.0
net7.0 | | 6.3 | October 11, 2022 | [6.3.10](https://github.com/dotnet/dotnet-monitor/releases/tag/v6.3.10) | November 12, 2024 | November 12, 2024 | net6.0
netcoreapp3.1 | From f8f8b76d610f5bb4a383b5cbba00c06a90960399 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 02:50:24 +0000 Subject: [PATCH 003/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250512.2 (#8236) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 40af192fe1f..1c37e9f6b1e 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78
- + https://github.com/dotnet/diagnostics - aebf15d23e5a25ab718e780a29d8aca9a5280425 + 3a08702ea8e0083a74e10556c60c0bccd868b64a - + https://github.com/dotnet/diagnostics - aebf15d23e5a25ab718e780a29d8aca9a5280425 + 3a08702ea8e0083a74e10556c60c0bccd868b64a https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics - aebf15d23e5a25ab718e780a29d8aca9a5280425 + 3a08702ea8e0083a74e10556c60c0bccd868b64a https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index edd140df9d1..fa77d4167d1 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25256.1 - 9.0.0-preview.25261.1 - 9.0.0-preview.25261.1 + 9.0.0-preview.25262.2 + 9.0.0-preview.25262.2 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626101 + 1.0.626202 $(MicrosoftNETCoreApp80Version) From cc71cec7ee3f7e8e6d1a7e4d1e8ce3fafddaa406 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Mon, 12 May 2025 22:50:49 -0700 Subject: [PATCH 004/112] Map Uri config value as string (#8234) --- src/Tools/dotnet-monitor/CommonOptionsExtensions.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Tools/dotnet-monitor/CommonOptionsExtensions.cs b/src/Tools/dotnet-monitor/CommonOptionsExtensions.cs index 718ffa4f27a..ad7ef6bfbd4 100644 --- a/src/Tools/dotnet-monitor/CommonOptionsExtensions.cs +++ b/src/Tools/dotnet-monitor/CommonOptionsExtensions.cs @@ -118,7 +118,8 @@ private static void MapValue(object? value, string valueName, string separator, valueType.IsEnum || typeof(Guid) == valueType || typeof(string) == valueType || - typeof(TimeSpan) == valueType) + typeof(TimeSpan) == valueType || + typeof(Uri) == valueType) { map.Add( valueName, From ccf42a8471c44549ffc77e0dea80c3f24427b8aa Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 09:43:18 -0700 Subject: [PATCH 005/112] Add 8.1.1 release notes (#8237) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Justin Anderson --- documentation/releaseNotes/releaseNotes.v8.1.1.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 documentation/releaseNotes/releaseNotes.v8.1.1.md diff --git a/documentation/releaseNotes/releaseNotes.v8.1.1.md b/documentation/releaseNotes/releaseNotes.v8.1.1.md new file mode 100644 index 00000000000..334b1d08887 --- /dev/null +++ b/documentation/releaseNotes/releaseNotes.v8.1.1.md @@ -0,0 +1,7 @@ +Today we are releasing the 8.1.1 build of the `dotnet monitor` tool. This release includes: + +- Updated dependencies + + + +If you would like to provide additional feedback to the team [please fill out this survey](https://aka.ms/dotnet-monitor-survey?src=rn). From ae76e4eaa4f5c9742d581c662daee176cf3372fe Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 09:43:37 -0700 Subject: [PATCH 006/112] Add 9.0.3 release notes (#8238) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Justin Anderson --- documentation/releaseNotes/releaseNotes.v9.0.3.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 documentation/releaseNotes/releaseNotes.v9.0.3.md diff --git a/documentation/releaseNotes/releaseNotes.v9.0.3.md b/documentation/releaseNotes/releaseNotes.v9.0.3.md new file mode 100644 index 00000000000..beff5b0d102 --- /dev/null +++ b/documentation/releaseNotes/releaseNotes.v9.0.3.md @@ -0,0 +1,7 @@ +Today we are releasing the 9.0.3 build of the `dotnet monitor` tool. This release includes: + +- Updated dependencies + + + +If you would like to provide additional feedback to the team [please fill out this survey](https://aka.ms/dotnet-monitor-survey?src=rn). From f0b8a8aa1a4e488fb8a31146119706818276cfc7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 09:43:57 -0700 Subject: [PATCH 007/112] generate release notes (#8240) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../releaseNotes/releaseNotes.v9.1.0-preview.3.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 documentation/releaseNotes/releaseNotes.v9.1.0-preview.3.md diff --git a/documentation/releaseNotes/releaseNotes.v9.1.0-preview.3.md b/documentation/releaseNotes/releaseNotes.v9.1.0-preview.3.md new file mode 100644 index 00000000000..4d86759a6dd --- /dev/null +++ b/documentation/releaseNotes/releaseNotes.v9.1.0-preview.3.md @@ -0,0 +1,7 @@ +Today we are releasing the next official preview version of the `dotnet monitor` tool. This release includes: + +- Added support for resetting in process features when dotnet-monitor is restarted. ([#8154](https://github.com/dotnet/dotnet-monitor/pull/8154)) + + + +If you would like to provide additional feedback to the team [please fill out this survey](https://aka.ms/dotnet-monitor-survey?src=rn). \ No newline at end of file From 11378f95f6bc4d7a81d8b401fc8b48172ba9d375 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 16:50:33 -0700 Subject: [PATCH 008/112] Register new release information (#8241) * Register v9.1.0-preview.3.25257.5 release information * Register v9.0.3 release information --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/releases.json | 10 +++++----- documentation/releases.md | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/releases.json b/.github/releases.json index f7b3cb4d64b..8ccc48fd607 100644 --- a/.github/releases.json +++ b/.github/releases.json @@ -46,9 +46,9 @@ "outOfSupportDate": "2024-05-14T00:00:00.000Z" }, "9.0": { - "tag": "v9.0.2", + "tag": "v9.0.3", "minorReleaseDate": "2024-11-12T00:00:00.000Z", - "patchReleaseDate": "2025-02-11T00:00:00.000Z", + "patchReleaseDate": "2025-05-13T00:00:00.000Z", "supportedFrameworks": [ "net9.0" ] @@ -62,9 +62,9 @@ ] }, "9.1": { - "tag": "v9.1.0-preview.2.25201.5", - "minorReleaseDate": "2025-04-08T00:00:00.000Z", - "patchReleaseDate": "2025-04-08T00:00:00.000Z", + "tag": "v9.1.0-preview.3.25257.5", + "minorReleaseDate": "2025-05-13T00:00:00.000Z", + "patchReleaseDate": "2025-05-13T00:00:00.000Z", "supportedFrameworks": [ "net9.0" ] diff --git a/documentation/releases.md b/documentation/releases.md index 9af274730c6..c269237773f 100644 --- a/documentation/releases.md +++ b/documentation/releases.md @@ -4,7 +4,7 @@ | Version | Original Release Date | Latest Patch Version | Patch Release Date | End of Support | Runtime Frameworks | | --- | --- | --- | --- | --- | --- | -| 9.0 | November 12, 2024 | [9.0.2](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.0.2) | February 11, 2025 | | net9.0 | +| 9.0 | November 12, 2024 | [9.0.3](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.0.3) | May 13, 2025 | | net9.0 | | 8.1 | February 11, 2025 | [8.1.0](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.1.0) | February 11, 2025 | | net8.0 | @@ -21,6 +21,6 @@ | Version | Release Date | Latest Version | Runtime Frameworks | | --- | --- | --- | --- | -| 9.1 | April 8, 2025 | [9.1.0 preview 2](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.1.0-preview.2.25201.5) | net9.0 | +| 9.1 | May 13, 2025 | [9.1.0 preview 3](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.1.0-preview.3.25257.5) | net9.0 | From 66fa8c5249344e95b0b2d973bb1f1da3ebcbc0fc Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 17:42:29 -0700 Subject: [PATCH 009/112] Register v8.1.1 release information (#8242) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/releases.json | 15 ++------------- documentation/releases.md | 3 +-- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/.github/releases.json b/.github/releases.json index 8ccc48fd607..db213637684 100644 --- a/.github/releases.json +++ b/.github/releases.json @@ -12,7 +12,6 @@ ], "unsupported": [ "8.0", - "7.3", "6.3" ], "releases": { @@ -35,16 +34,6 @@ ], "outOfSupportDate": "2025-05-11T00:00:00.000Z" }, - "7.3": { - "tag": "v7.3.4", - "minorReleaseDate": "2023-08-08T00:00:00.000Z", - "patchReleaseDate": "2024-05-14T00:00:00.000Z", - "supportedFrameworks": [ - "net6.0", - "net7.0" - ], - "outOfSupportDate": "2024-05-14T00:00:00.000Z" - }, "9.0": { "tag": "v9.0.3", "minorReleaseDate": "2024-11-12T00:00:00.000Z", @@ -54,9 +43,9 @@ ] }, "8.1": { - "tag": "v8.1.0", + "tag": "v8.1.1", "minorReleaseDate": "2025-02-11T00:00:00.000Z", - "patchReleaseDate": "2025-02-11T00:00:00.000Z", + "patchReleaseDate": "2025-05-14T00:00:00.000Z", "supportedFrameworks": [ "net8.0" ] diff --git a/documentation/releases.md b/documentation/releases.md index c269237773f..b757800cd95 100644 --- a/documentation/releases.md +++ b/documentation/releases.md @@ -5,7 +5,7 @@ | Version | Original Release Date | Latest Patch Version | Patch Release Date | End of Support | Runtime Frameworks | | --- | --- | --- | --- | --- | --- | | 9.0 | November 12, 2024 | [9.0.3](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.0.3) | May 13, 2025 | | net9.0 | -| 8.1 | February 11, 2025 | [8.1.0](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.1.0) | February 11, 2025 | | net8.0 | +| 8.1 | February 11, 2025 | [8.1.1](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.1.1) | May 14, 2025 | | net8.0 | ## Out of support versions @@ -13,7 +13,6 @@ | Version | Original Release Date | Latest Patch Version | Patch Release Date | End of Support | Runtime Frameworks | | --- | --- | --- | --- | --- | --- | | 8.0 | November 14, 2023 | [8.0.8](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.0.8) | February 11, 2025 | May 11, 2025 | net8.0 | -| 7.3 | August 8, 2023 | [7.3.4](https://github.com/dotnet/dotnet-monitor/releases/tag/v7.3.4) | May 14, 2024 | May 14, 2024 | net6.0
net7.0 | | 6.3 | October 11, 2022 | [6.3.10](https://github.com/dotnet/dotnet-monitor/releases/tag/v6.3.10) | November 12, 2024 | November 12, 2024 | net6.0
netcoreapp3.1 | From bdd1e9be5001dfadc627ad03fac12d52357a930c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 14 May 2025 03:28:40 +0000 Subject: [PATCH 010/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250513.1 (#8244) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 1c37e9f6b1e..892b03f30a6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 3a08702ea8e0083a74e10556c60c0bccd868b64a
- + https://github.com/dotnet/command-line-api - 493a1d270887d7c51372fd17f774ea44b0c3101a + aba0e9a8c4800abd33e7a4f2efcd623ace2c0fa4 diff --git a/eng/Versions.props b/eng/Versions.props index fa77d4167d1..d857c233f69 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25256.1 + 2.0.0-beta5.25263.1 9.0.0-preview.25262.2 9.0.0-preview.25262.2 From aa4eecb2c307d05398726e6c50d07313a118a3af Mon Sep 17 00:00:00 2001 From: Justin Anderson Date: Wed, 14 May 2025 11:14:34 -0700 Subject: [PATCH 011/112] Remove nuget.config links (#8235) --- eng/dependabot/independent/NuGet.config | 1 - eng/dependabot/net8.0/NuGet.config | 1 - eng/dependabot/net9.0/NuGet.config | 1 - 3 files changed, 3 deletions(-) delete mode 120000 eng/dependabot/independent/NuGet.config delete mode 120000 eng/dependabot/net8.0/NuGet.config delete mode 120000 eng/dependabot/net9.0/NuGet.config diff --git a/eng/dependabot/independent/NuGet.config b/eng/dependabot/independent/NuGet.config deleted file mode 120000 index 941555881f8..00000000000 --- a/eng/dependabot/independent/NuGet.config +++ /dev/null @@ -1 +0,0 @@ -../../../NuGet.config \ No newline at end of file diff --git a/eng/dependabot/net8.0/NuGet.config b/eng/dependabot/net8.0/NuGet.config deleted file mode 120000 index 941555881f8..00000000000 --- a/eng/dependabot/net8.0/NuGet.config +++ /dev/null @@ -1 +0,0 @@ -../../../NuGet.config \ No newline at end of file diff --git a/eng/dependabot/net9.0/NuGet.config b/eng/dependabot/net9.0/NuGet.config deleted file mode 120000 index 941555881f8..00000000000 --- a/eng/dependabot/net9.0/NuGet.config +++ /dev/null @@ -1 +0,0 @@ -../../../NuGet.config \ No newline at end of file From 0a8abd7db1d5b5d05bc38da0cd7aceffc76a23ac Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 15 May 2025 02:46:17 +0000 Subject: [PATCH 012/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250513.2 (#8257) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 892b03f30a6..2f2eaaa4979 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 3a08702ea8e0083a74e10556c60c0bccd868b64a + a3c354f4ea00123f55276619455569d53c4c402d - + https://github.com/dotnet/diagnostics - 3a08702ea8e0083a74e10556c60c0bccd868b64a + a3c354f4ea00123f55276619455569d53c4c402d https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics - 3a08702ea8e0083a74e10556c60c0bccd868b64a + a3c354f4ea00123f55276619455569d53c4c402d https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index d857c233f69..58a93f4f752 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25263.1 - 9.0.0-preview.25262.2 - 9.0.0-preview.25262.2 + 9.0.0-preview.25263.2 + 9.0.0-preview.25263.2 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626202 + 1.0.626302 $(MicrosoftNETCoreApp80Version) From 833a9bbe40dcc92e5e03e75916c68a84c2dbf71c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 16 May 2025 02:51:54 +0000 Subject: [PATCH 013/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250515.1 (#8265) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 2f2eaaa4979..fb948485490 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics a3c354f4ea00123f55276619455569d53c4c402d - + https://github.com/dotnet/command-line-api - aba0e9a8c4800abd33e7a4f2efcd623ace2c0fa4 + bd9602cb9a55977c58bc820ef05bfaeaff56982d diff --git a/eng/Versions.props b/eng/Versions.props index 58a93f4f752..e2b6de527af 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25263.1 + 2.0.0-beta5.25265.1 9.0.0-preview.25263.2 9.0.0-preview.25263.2 From cbfa4bdc23032ed1839ac14cf7de7757d7204bc0 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 16 May 2025 02:57:28 +0000 Subject: [PATCH 014/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250515.1 (#8264) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index fb948485490..b496e4f8023 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics a3c354f4ea00123f55276619455569d53c4c402d - + https://github.com/dotnet/diagnostics a3c354f4ea00123f55276619455569d53c4c402d @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics a3c354f4ea00123f55276619455569d53c4c402d diff --git a/eng/Versions.props b/eng/Versions.props index e2b6de527af..974832503ce 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25263.2 - 9.0.0-preview.25263.2 + 9.0.0-preview.25265.1 + 9.0.0-preview.25265.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626302 + 1.0.626501 $(MicrosoftNETCoreApp80Version) From db1326e490ca3d75c69ef93422957707e263b78b Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 17 May 2025 02:56:06 +0000 Subject: [PATCH 015/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250516.1 (#8271) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index b496e4f8023..aa340ec7e35 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - a3c354f4ea00123f55276619455569d53c4c402d + ce653def0d1969dca0d518a95559b2acc3c6128c - + https://github.com/dotnet/diagnostics - a3c354f4ea00123f55276619455569d53c4c402d + ce653def0d1969dca0d518a95559b2acc3c6128c https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics - a3c354f4ea00123f55276619455569d53c4c402d + ce653def0d1969dca0d518a95559b2acc3c6128c https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 974832503ce..19658e0b91b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25265.1 - 9.0.0-preview.25265.1 + 9.0.0-preview.25266.1 + 9.0.0-preview.25266.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626501 + 1.0.626601 $(MicrosoftNETCoreApp80Version) From 264bc89d7a0820dfcfd56535e914359ad1e58491 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 18 May 2025 02:56:42 +0000 Subject: [PATCH 016/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250517.1 (#8272) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index aa340ec7e35..33c0ae4542d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c diff --git a/eng/Versions.props b/eng/Versions.props index 19658e0b91b..8093f8c9626 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25266.1 - 9.0.0-preview.25266.1 + 9.0.0-preview.25267.1 + 9.0.0-preview.25267.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626601 + 1.0.626701 $(MicrosoftNETCoreApp80Version) From 99860ca61d54422901368f12fae6a1b69ed4eb9d Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 19 May 2025 02:48:36 +0000 Subject: [PATCH 017/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250518.1 (#8276) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 33c0ae4542d..0683a9e7293 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c diff --git a/eng/Versions.props b/eng/Versions.props index 8093f8c9626..5c315eb04cf 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25267.1 - 9.0.0-preview.25267.1 + 9.0.0-preview.25268.1 + 9.0.0-preview.25268.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626701 + 1.0.626801 $(MicrosoftNETCoreApp80Version) From ddd40d93d213270451e659e3d140b136c986601d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 May 2025 09:57:12 -0700 Subject: [PATCH 018/112] Bump dependabot/fetch-metadata from 2.3.0 to 2.4.0 (#8229) Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 2.3.0 to 2.4.0. - [Release notes](https://github.com/dependabot/fetch-metadata/releases) - [Commits](https://github.com/dependabot/fetch-metadata/compare/d7267f607e9d3fb96fc2fbe83e0af444713e90b7...08eff52bf64351f401fb50d4972fa95b9f2c2d1b) --- updated-dependencies: - dependency-name: dependabot/fetch-metadata dependency-version: 2.4.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/verify-dependabot-clearly-defined.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/verify-dependabot-clearly-defined.yml b/.github/workflows/verify-dependabot-clearly-defined.yml index 7b386b375dd..e6f82076da8 100644 --- a/.github/workflows/verify-dependabot-clearly-defined.yml +++ b/.github/workflows/verify-dependabot-clearly-defined.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Fetch Dependabot metadata id: metadata - uses: dependabot/fetch-metadata@d7267f607e9d3fb96fc2fbe83e0af444713e90b7 + uses: dependabot/fetch-metadata@08eff52bf64351f401fb50d4972fa95b9f2c2d1b - name: Check ClearlyDefined if: ${{steps.metadata.outputs.package-ecosystem == 'nuget'}} From 0157ba5496ed499ddb7b2fb157ad8c7be9b8b435 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 20 May 2025 03:07:30 +0000 Subject: [PATCH 019/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250519.1 (#8277) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 0683a9e7293..f3a0bffb914 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1cfa39f82d00b3659a3d367bc344241946e10681 - + https://github.com/dotnet/diagnostics ce653def0d1969dca0d518a95559b2acc3c6128c diff --git a/eng/Versions.props b/eng/Versions.props index 5c315eb04cf..cc7ff41c5f5 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25268.1 - 9.0.0-preview.25268.1 + 9.0.0-preview.25269.1 + 9.0.0-preview.25269.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626801 + 1.0.626901 $(MicrosoftNETCoreApp80Version) From 4f18478608d3a7063d8046051d9d8c2a7e94f2a0 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 22 May 2025 02:54:59 +0000 Subject: [PATCH 020/112] Update dependencies from https://github.com/dotnet/arcade build 20250521.1 (#8281) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- global.json | 6 +++--- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index f3a0bffb914..6ce7bc06de9 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 1cfa39f82d00b3659a3d367bc344241946e10681 + 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/arcade - 1cfa39f82d00b3659a3d367bc344241946e10681 + 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/arcade - 1cfa39f82d00b3659a3d367bc344241946e10681 + 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/arcade - 1cfa39f82d00b3659a3d367bc344241946e10681 + 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/arcade - 1cfa39f82d00b3659a3d367bc344241946e10681 + 086a1771875b63404b4a710d27250fe384dc2810 https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index cc7ff41c5f5..b237f78bd79 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25255.5 - 9.0.0-beta.25255.5 - 9.0.0-beta.25255.5 + 9.0.0-beta.25271.1 + 9.0.0-beta.25271.1 + 9.0.0-beta.25271.1 9.0.1 9.0.1-rtm.24610.9 diff --git a/global.json b/global.json index 53c82b11ee8..07ae9185aaf 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "9.0.105", + "dotnet": "9.0.106", "runtimes": { "aspnetcore": [ "$(MicrosoftAspNetCoreApp80Version)", @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25255.5", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25255.5" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25271.1", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25271.1" } } From 836336b6919c2ed1aebfe0f0fe53c45b3d5e3ebc Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 22 May 2025 03:00:24 +0000 Subject: [PATCH 021/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250521.1 (#8280) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 6ce7bc06de9..fe72a723977 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - ce653def0d1969dca0d518a95559b2acc3c6128c + 2650c60bc7260c7c54a27ad1e61638f1a536f7e8 - + https://github.com/dotnet/diagnostics - ce653def0d1969dca0d518a95559b2acc3c6128c + 2650c60bc7260c7c54a27ad1e61638f1a536f7e8 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics - ce653def0d1969dca0d518a95559b2acc3c6128c + 2650c60bc7260c7c54a27ad1e61638f1a536f7e8 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index b237f78bd79..30f6e4a5211 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25269.1 - 9.0.0-preview.25269.1 + 9.0.0-preview.25271.1 + 9.0.0-preview.25271.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.626901 + 1.0.627101 $(MicrosoftNETCoreApp80Version) From b56f190aa0728686ee43692162dc06a37b5b1027 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 23 May 2025 03:00:39 +0000 Subject: [PATCH 022/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250522.1 (#8283) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index fe72a723977..3d88de41d55 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 2650c60bc7260c7c54a27ad1e61638f1a536f7e8 + 84b028b7d7da893d5e5097852b0cbdc0189e19de - + https://github.com/dotnet/diagnostics - 2650c60bc7260c7c54a27ad1e61638f1a536f7e8 + 84b028b7d7da893d5e5097852b0cbdc0189e19de https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics - 2650c60bc7260c7c54a27ad1e61638f1a536f7e8 + 84b028b7d7da893d5e5097852b0cbdc0189e19de https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 30f6e4a5211..1668227f5aa 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25271.1 - 9.0.0-preview.25271.1 + 9.0.0-preview.25272.1 + 9.0.0-preview.25272.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627101 + 1.0.627201 $(MicrosoftNETCoreApp80Version) From 07ba631c80c6ff076d2e07d44d24f34624d07880 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 24 May 2025 02:49:54 +0000 Subject: [PATCH 023/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250523.1 (#8284) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 3d88de41d55..ea0b0b93187 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 84b028b7d7da893d5e5097852b0cbdc0189e19de + 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/diagnostics - 84b028b7d7da893d5e5097852b0cbdc0189e19de + 5996972195ecc1c85a0201dff6f579bf4d9fbd6e https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics - 84b028b7d7da893d5e5097852b0cbdc0189e19de + 5996972195ecc1c85a0201dff6f579bf4d9fbd6e https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 1668227f5aa..eadebb76f1c 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25265.1 - 9.0.0-preview.25272.1 - 9.0.0-preview.25272.1 + 9.0.0-preview.25273.1 + 9.0.0-preview.25273.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627201 + 1.0.627301 $(MicrosoftNETCoreApp80Version) From 188ba0d8d18157c2e82ac2dd5112a94f7b5097b2 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 24 May 2025 02:55:12 +0000 Subject: [PATCH 024/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250523.1 (#8285) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index ea0b0b93187..beda6367a86 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/command-line-api - bd9602cb9a55977c58bc820ef05bfaeaff56982d + 77b277a9dc0981b2bbeaebb3cb17baded0c8cc51 diff --git a/eng/Versions.props b/eng/Versions.props index eadebb76f1c..6772b9142dd 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25265.1 + 2.0.0-beta5.25273.1 9.0.0-preview.25273.1 9.0.0-preview.25273.1 From a056517d751c170050e744f0955f8a97c36b8516 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 25 May 2025 02:49:21 +0000 Subject: [PATCH 025/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250524.1 (#8286) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index beda6367a86..51ec63fff25 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e diff --git a/eng/Versions.props b/eng/Versions.props index 6772b9142dd..769d726faf5 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25273.1 - 9.0.0-preview.25273.1 - 9.0.0-preview.25273.1 + 9.0.0-preview.25274.1 + 9.0.0-preview.25274.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627301 + 1.0.627401 $(MicrosoftNETCoreApp80Version) From 971956363d3c6822fcd5217940c26b131c97ba6c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 27 May 2025 02:56:19 +0000 Subject: [PATCH 026/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250525.1 (#8291) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 51ec63fff25..cd81cb34a96 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e diff --git a/eng/Versions.props b/eng/Versions.props index 769d726faf5..539aca7c17c 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25273.1 - 9.0.0-preview.25274.1 - 9.0.0-preview.25274.1 + 9.0.0-preview.25275.1 + 9.0.0-preview.25275.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627401 + 1.0.627501 $(MicrosoftNETCoreApp80Version) From 99831374d5986b773eea0165065349b3b9c886eb Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 28 May 2025 03:02:11 +0000 Subject: [PATCH 027/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250527.1 (#8293) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index cd81cb34a96..73a750525ef 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/command-line-api - 77b277a9dc0981b2bbeaebb3cb17baded0c8cc51 + e22447d0a07219d3d5ddf7b345b53561e3bde7a9 diff --git a/eng/Versions.props b/eng/Versions.props index 539aca7c17c..fd6b73f2f5d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25273.1 + 2.0.0-beta5.25277.1 9.0.0-preview.25275.1 9.0.0-preview.25275.1 From c9b0035bdf60576558db194b238342320420a07b Mon Sep 17 00:00:00 2001 From: Wiktor Kopec Date: Wed, 28 May 2025 09:21:15 -0700 Subject: [PATCH 028/112] Remove obsolete reference (#8292) --- src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs b/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs index 6f879b1b58f..12af7e224ec 100644 --- a/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs +++ b/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs @@ -408,7 +408,6 @@ private static DefaultAzureCredentialOptions GetDefaultCredentialOptions() => ExcludeEnvironmentCredential = true, ExcludeInteractiveBrowserCredential = true, ExcludeSharedTokenCacheCredential = true, - ExcludeVisualStudioCodeCredential = true, ExcludeVisualStudioCredential = true, }; } From 78352396dbf87cbecbf6243f217e484340ffa307 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 May 2025 16:27:23 -0700 Subject: [PATCH 029/112] Bump streetsidesoftware/cspell-action from 7.0.0 to 7.0.1 (#8299) Bumps [streetsidesoftware/cspell-action](https://github.com/streetsidesoftware/cspell-action) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/streetsidesoftware/cspell-action/releases) - [Changelog](https://github.com/streetsidesoftware/cspell-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/streetsidesoftware/cspell-action/compare/eb29b6a67d122d2e6af385ff16bdb200d93b2e54...69543c3f9f14d4fcc6004c7bee03c4d366f11d64) --- updated-dependencies: - dependency-name: streetsidesoftware/cspell-action dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/spellcheck.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index 9918ce2afec..f8dc5d55f95 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -17,7 +17,7 @@ jobs: with: persist-credentials: false - - uses: streetsidesoftware/cspell-action@eb29b6a67d122d2e6af385ff16bdb200d93b2e54 + - uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 name: Documentation spellcheck if: ${{ !cancelled() }} with: @@ -25,7 +25,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@eb29b6a67d122d2e6af385ff16bdb200d93b2e54 + - uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 name: Resx spellcheck if: ${{ !cancelled() }} with: @@ -33,7 +33,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@eb29b6a67d122d2e6af385ff16bdb200d93b2e54 + - uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 name: Source code spellcheck if: ${{ !cancelled() }} with: From b879d31d2c37493b5820537c6afc2b84cb1be852 Mon Sep 17 00:00:00 2001 From: Wiktor Kopec Date: Thu, 29 May 2025 16:41:14 -0700 Subject: [PATCH 030/112] Fixup test case (#8302) --- .../AzureBlobEgressProviderTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Tests/Microsoft.Diagnostics.Monitoring.AzureBlobStorageTests.UnitTests/AzureBlobEgressProviderTests.cs b/src/Tests/Microsoft.Diagnostics.Monitoring.AzureBlobStorageTests.UnitTests/AzureBlobEgressProviderTests.cs index 6636862dcee..d30722a2286 100644 --- a/src/Tests/Microsoft.Diagnostics.Monitoring.AzureBlobStorageTests.UnitTests/AzureBlobEgressProviderTests.cs +++ b/src/Tests/Microsoft.Diagnostics.Monitoring.AzureBlobStorageTests.UnitTests/AzureBlobEgressProviderTests.cs @@ -249,7 +249,7 @@ public void AzureBlobEgress_DefaultCredentials() nameof(DefaultAzureCredentialOptions.ExcludeInteractiveBrowserCredential), nameof(DefaultAzureCredentialOptions.ExcludeAzureCliCredential), nameof(DefaultAzureCredentialOptions.ExcludeVisualStudioCredential), - nameof(DefaultAzureCredentialOptions.ExcludeVisualStudioCodeCredential), + "ExcludeVisualStudioCodeCredential", // Don't use nameof for an Obsolete member nameof(DefaultAzureCredentialOptions.ExcludeAzurePowerShellCredential), }; From 8ca5f0fb866fc2eec28c47be75b68b2a33fe144c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 29 May 2025 18:38:28 -0700 Subject: [PATCH 031/112] Update: (#8261) - Azure.Core to 1.46.1 - Azure.Identity to 1.14.0 --- updated-dependencies: - dependency-name: Azure.Core dependency-version: 1.46.1 dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: Azure.Identity dependency-version: 1.14.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index 63639b5b153..c40b39c5eec 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -2,8 +2,8 @@ - 1.46.0 - 1.13.2 + 1.46.1 + 1.14.0 12.24.0 12.22.0 3.8.4 From aadd5d33096f68889b2e6b5fbff80bdde64f1d82 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 30 May 2025 02:28:38 +0000 Subject: [PATCH 032/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250527.1 (#8294) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 73a750525ef..d4a6e909dbc 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e diff --git a/eng/Versions.props b/eng/Versions.props index fd6b73f2f5d..f22e3e2086e 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25277.1 - 9.0.0-preview.25275.1 - 9.0.0-preview.25275.1 + 9.0.0-preview.25277.1 + 9.0.0-preview.25277.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627501 + 1.0.627701 $(MicrosoftNETCoreApp80Version) From ea054dc93cca20d15cf43fe0e2f57272b7cc0529 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 30 May 2025 03:00:21 +0000 Subject: [PATCH 033/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250529.3 (#8307) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d4a6e909dbc..a8750558686 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 5996972195ecc1c85a0201dff6f579bf4d9fbd6e - + https://github.com/dotnet/command-line-api - e22447d0a07219d3d5ddf7b345b53561e3bde7a9 + 3bbc68e8ee1817bb5463c01f86e58b384ceefbd9 diff --git a/eng/Versions.props b/eng/Versions.props index f22e3e2086e..44ca88dba5d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25277.1 + 2.0.0-beta5.25279.3 9.0.0-preview.25277.1 9.0.0-preview.25277.1 From bf24c22691300958e8cc73026f2455b874776b39 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 30 May 2025 03:10:55 +0000 Subject: [PATCH 034/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250529.1 (#8308) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index a8750558686..4b4c85901ef 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 5996972195ecc1c85a0201dff6f579bf4d9fbd6e + 8bbc63df036b0c31c865fc1ee0060564caf40f85 - + https://github.com/dotnet/diagnostics - 5996972195ecc1c85a0201dff6f579bf4d9fbd6e + 8bbc63df036b0c31c865fc1ee0060564caf40f85 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics - 5996972195ecc1c85a0201dff6f579bf4d9fbd6e + 8bbc63df036b0c31c865fc1ee0060564caf40f85 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 44ca88dba5d..ccebde5114f 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25279.3 - 9.0.0-preview.25277.1 - 9.0.0-preview.25277.1 + 9.0.0-preview.25279.1 + 9.0.0-preview.25279.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627701 + 1.0.627901 $(MicrosoftNETCoreApp80Version) From 9ba2e5558604d3ee17edf914cc37fc50ba8ea256 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 31 May 2025 02:59:25 +0000 Subject: [PATCH 035/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250530.1 (#8314) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 4b4c85901ef..de29de10314 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 diff --git a/eng/Versions.props b/eng/Versions.props index ccebde5114f..e96a303c058 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25279.3 - 9.0.0-preview.25279.1 - 9.0.0-preview.25279.1 + 9.0.0-preview.25280.1 + 9.0.0-preview.25280.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.627901 + 1.0.628001 $(MicrosoftNETCoreApp80Version) From 15fe5ff49872f2878c542859848dfaff6e91b532 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 1 Jun 2025 02:59:36 +0000 Subject: [PATCH 036/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250531.1 (#8317) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index de29de10314..349855614c7 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 diff --git a/eng/Versions.props b/eng/Versions.props index e96a303c058..f09f5952813 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25279.3 - 9.0.0-preview.25280.1 - 9.0.0-preview.25280.1 + 9.0.0-preview.25281.1 + 9.0.0-preview.25281.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.628001 + 1.0.628101 $(MicrosoftNETCoreApp80Version) From 81be8eee97569a2f1906cdb7f0df85801bf6bd97 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 3 Jun 2025 03:06:42 +0000 Subject: [PATCH 037/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250602.1 (#8324) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 349855614c7..6c8dba1b570 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 086a1771875b63404b4a710d27250fe384dc2810 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 diff --git a/eng/Versions.props b/eng/Versions.props index f09f5952813..f4de4c32384 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25279.3 - 9.0.0-preview.25281.1 - 9.0.0-preview.25281.1 + 9.0.0-preview.25302.1 + 9.0.0-preview.25302.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.628101 + 1.0.630201 $(MicrosoftNETCoreApp80Version) From ace3c437822b5b7d36080ef2f512d96ccbfcd22b Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 3 Jun 2025 03:12:10 +0000 Subject: [PATCH 038/112] Update dependencies from https://github.com/dotnet/arcade build 20250602.2 (#8325) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 +++++++++---------- eng/Versions.props | 6 +++--- .../core-templates/post-build/post-build.yml | 6 ++++++ eng/common/post-build/publish-using-darc.ps1 | 7 ++++++- global.json | 4 ++-- 5 files changed, 27 insertions(+), 16 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 6c8dba1b570..7b874674acc 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 086a1771875b63404b4a710d27250fe384dc2810 + 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/arcade - 086a1771875b63404b4a710d27250fe384dc2810 + 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/arcade - 086a1771875b63404b4a710d27250fe384dc2810 + 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/arcade - 086a1771875b63404b4a710d27250fe384dc2810 + 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/arcade - 086a1771875b63404b4a710d27250fe384dc2810 + 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index f4de4c32384..d84d5ee061f 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25271.1 - 9.0.0-beta.25271.1 - 9.0.0-beta.25271.1 + 9.0.0-beta.25302.2 + 9.0.0-beta.25302.2 + 9.0.0-beta.25302.2 9.0.1 9.0.1-rtm.24610.9 diff --git a/eng/common/core-templates/post-build/post-build.yml b/eng/common/core-templates/post-build/post-build.yml index 454fd75c7af..a8c0bd3b921 100644 --- a/eng/common/core-templates/post-build/post-build.yml +++ b/eng/common/core-templates/post-build/post-build.yml @@ -44,6 +44,11 @@ parameters: displayName: Publish installers and checksums type: boolean default: true + + - name: requireDefaultChannels + displayName: Fail the build if there are no default channel(s) registrations for the current build + type: boolean + default: false - name: SDLValidationParameters type: object @@ -312,5 +317,6 @@ stages: -PublishingInfraVersion ${{ parameters.publishingInfraVersion }} -AzdoToken '$(System.AccessToken)' -WaitPublishingFinish true + -RequireDefaultChannels ${{ parameters.requireDefaultChannels }} -ArtifactsPublishingAdditionalParameters '${{ parameters.artifactsPublishingAdditionalParameters }}' -SymbolPublishingAdditionalParameters '${{ parameters.symbolPublishingAdditionalParameters }}' diff --git a/eng/common/post-build/publish-using-darc.ps1 b/eng/common/post-build/publish-using-darc.ps1 index 90b58e32a87..a261517ef90 100644 --- a/eng/common/post-build/publish-using-darc.ps1 +++ b/eng/common/post-build/publish-using-darc.ps1 @@ -5,7 +5,8 @@ param( [Parameter(Mandatory=$false)][string] $MaestroApiEndPoint = 'https://maestro.dot.net', [Parameter(Mandatory=$true)][string] $WaitPublishingFinish, [Parameter(Mandatory=$false)][string] $ArtifactsPublishingAdditionalParameters, - [Parameter(Mandatory=$false)][string] $SymbolPublishingAdditionalParameters + [Parameter(Mandatory=$false)][string] $SymbolPublishingAdditionalParameters, + [Parameter(Mandatory=$false)][string] $RequireDefaultChannels ) try { @@ -33,6 +34,10 @@ try { if ("false" -eq $WaitPublishingFinish) { $optionalParams.Add("--no-wait") | Out-Null } + + if ("true" -eq $RequireDefaultChannels) { + $optionalParams.Add("--default-channels-required") | Out-Null + } & $darc add-build-to-channel ` --id $buildId ` diff --git a/global.json b/global.json index 07ae9185aaf..8e2f7eb90c0 100644 --- a/global.json +++ b/global.json @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25271.1", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25271.1" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25302.2", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25302.2" } } From a1840a8c2cd150509abf1f74a0b747f7339b2123 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 4 Jun 2025 03:01:21 +0000 Subject: [PATCH 039/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250603.1 (#8328) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 7b874674acc..8270e6d4560 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 diff --git a/eng/Versions.props b/eng/Versions.props index d84d5ee061f..aeb0f55f7be 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25279.3 - 9.0.0-preview.25302.1 - 9.0.0-preview.25302.1 + 9.0.0-preview.25303.1 + 9.0.0-preview.25303.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.630201 + 1.0.630301 $(MicrosoftNETCoreApp80Version) From 98db59119412bb4e937d02b512a2db996e4f1e28 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 4 Jun 2025 03:06:52 +0000 Subject: [PATCH 040/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250603.1 (#8329) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 2 +- eng/Versions.props | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 8270e6d4560..326e4b4054a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,7 +12,7 @@ https://github.com/dotnet/diagnostics 8bbc63df036b0c31c865fc1ee0060564caf40f85 - + https://github.com/dotnet/command-line-api 3bbc68e8ee1817bb5463c01f86e58b384ceefbd9 diff --git a/eng/Versions.props b/eng/Versions.props index aeb0f55f7be..972048470ec 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25279.3 + 2.0.0-beta5.25303.1 9.0.0-preview.25303.1 9.0.0-preview.25303.1 From a7fe6255820d5ea89e36696e39bc84d1cb5a0199 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 6 Jun 2025 02:49:45 +0000 Subject: [PATCH 041/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250604.1 (#8335) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 326e4b4054a..2a57e5d46fb 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 8bbc63df036b0c31c865fc1ee0060564caf40f85 + a083d65b84428784901cf8bacdf8403be18fa78f - + https://github.com/dotnet/diagnostics - 8bbc63df036b0c31c865fc1ee0060564caf40f85 + a083d65b84428784901cf8bacdf8403be18fa78f https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics - 8bbc63df036b0c31c865fc1ee0060564caf40f85 + a083d65b84428784901cf8bacdf8403be18fa78f https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 972048470ec..8cdb361876d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25303.1 - 9.0.0-preview.25303.1 - 9.0.0-preview.25303.1 + 9.0.0-preview.25304.1 + 9.0.0-preview.25304.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.630301 + 1.0.630401 $(MicrosoftNETCoreApp80Version) From 3d79251b21ebe30db3ff6b984127fc85c0d58744 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 7 Jun 2025 03:06:25 +0000 Subject: [PATCH 042/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250606.1 (#8337) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 2a57e5d46fb..51ea6f99e14 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f - + https://github.com/dotnet/command-line-api - 3bbc68e8ee1817bb5463c01f86e58b384ceefbd9 + 806a6d90bdd57f268bff30f36e2132a26371b08a diff --git a/eng/Versions.props b/eng/Versions.props index 8cdb361876d..66169415490 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25303.1 + 2.0.0-beta5.25306.1 9.0.0-preview.25304.1 9.0.0-preview.25304.1 From 44a373e3dcaf66b2943cb49b3a239e4b485a5787 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 9 Jun 2025 03:04:49 +0000 Subject: [PATCH 043/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250608.1 (#8340) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 51ea6f99e14..9106f84a8bc 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f - + https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f diff --git a/eng/Versions.props b/eng/Versions.props index 66169415490..fb3506bab4c 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25306.1 - 9.0.0-preview.25304.1 - 9.0.0-preview.25304.1 + 9.0.0-preview.25308.1 + 9.0.0-preview.25308.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.630401 + 1.0.630801 $(MicrosoftNETCoreApp80Version) From 336dad9552b85374a01f82275eeca5968e9b9eb4 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 02:57:39 +0000 Subject: [PATCH 044/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250609.1 (#8341) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 9106f84a8bc..26f4c8feb85 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f - + https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics a083d65b84428784901cf8bacdf8403be18fa78f diff --git a/eng/Versions.props b/eng/Versions.props index fb3506bab4c..27397894669 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25306.1 - 9.0.0-preview.25308.1 - 9.0.0-preview.25308.1 + 9.0.0-preview.25309.1 + 9.0.0-preview.25309.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.630801 + 1.0.630901 $(MicrosoftNETCoreApp80Version) From 5d4c1ec2da76c832119c85cb63cb724e2c9ffa1e Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 16 Jun 2025 12:57:01 -0700 Subject: [PATCH 045/112] [main] Update dependencies from dotnet/diagnostics (#8343) * Update dependencies from https://github.com/dotnet/diagnostics build 20250610.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25309.1 -> To Version 9.0.0-preview.25310.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250611.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25309.1 -> To Version 9.0.0-preview.25311.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250613.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25309.1 -> To Version 9.0.0-preview.25313.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250614.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25309.1 -> To Version 9.0.0-preview.25314.1 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 26f4c8feb85..d2787ccb735 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - a083d65b84428784901cf8bacdf8403be18fa78f + 30592b41a2d7e4f67567cb61a0c3951cb3c56673 - + https://github.com/dotnet/diagnostics - a083d65b84428784901cf8bacdf8403be18fa78f + 30592b41a2d7e4f67567cb61a0c3951cb3c56673 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics - a083d65b84428784901cf8bacdf8403be18fa78f + 30592b41a2d7e4f67567cb61a0c3951cb3c56673 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 27397894669..cfb90b93d97 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25306.1 - 9.0.0-preview.25309.1 - 9.0.0-preview.25309.1 + 9.0.0-preview.25314.1 + 9.0.0-preview.25314.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.630901 + 1.0.631401 $(MicrosoftNETCoreApp80Version) From 5939737fcd7177556929ea14fabe2e8c6de1334f Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 17 Jun 2025 03:20:43 +0000 Subject: [PATCH 046/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250616.1 (#8348) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d2787ccb735..166d0ff18d8 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 30592b41a2d7e4f67567cb61a0c3951cb3c56673 + 6b1e6c531cb5167f9157d68d21724d42d2ad6537 - + https://github.com/dotnet/diagnostics - 30592b41a2d7e4f67567cb61a0c3951cb3c56673 + 6b1e6c531cb5167f9157d68d21724d42d2ad6537 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics - 30592b41a2d7e4f67567cb61a0c3951cb3c56673 + 6b1e6c531cb5167f9157d68d21724d42d2ad6537 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index cfb90b93d97..b4f66371599 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25306.1 - 9.0.0-preview.25314.1 - 9.0.0-preview.25314.1 + 9.0.0-preview.25316.1 + 9.0.0-preview.25316.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.631401 + 1.0.631601 $(MicrosoftNETCoreApp80Version) From 4dd8768f7e134cb617727c58ca6ebb1a2290648e Mon Sep 17 00:00:00 2001 From: Wiktor Kopec Date: Wed, 18 Jun 2025 16:20:04 -0700 Subject: [PATCH 047/112] Update AWS packages (#8334) * Update AWS packages * Fix build issues --- eng/dependabot/independent/Versions.props | 4 ++-- src/Extensions/S3Storage/S3Storage.cs | 11 +++-------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index c40b39c5eec..d97a7bb57f2 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -14,8 +14,8 @@ 13.0.3 11.0.0 - 3.7.305.7 - 3.7.300.33 + 4.0.0.3 + 4.0.0.2 - Azure 3.0 $(HelixArchitecture) $(HelixConfiguration) - Debian 12 $(HelixArchitecture) $(HelixConfiguration) - Ubuntu 20.04 $(HelixArchitecture) $(HelixConfiguration) @@ -93,7 +93,7 @@ Alpine 3.20 $(HelixArchitecture) $(HelixConfiguration) - Alpine 3.20 $(HelixArchitecture) $(HelixConfiguration) From e10a9919f96323587b9878aac9af7e34bd03574c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 19 Jun 2025 03:29:44 +0000 Subject: [PATCH 049/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250618.1 (#8361) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 166d0ff18d8..b02b53e9da1 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 6b1e6c531cb5167f9157d68d21724d42d2ad6537 + ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d - + https://github.com/dotnet/diagnostics - 6b1e6c531cb5167f9157d68d21724d42d2ad6537 + ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics - 6b1e6c531cb5167f9157d68d21724d42d2ad6537 + ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index b4f66371599..2dc7df7e230 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta5.25306.1 - 9.0.0-preview.25316.1 - 9.0.0-preview.25316.1 + 9.0.0-preview.25318.1 + 9.0.0-preview.25318.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.631601 + 1.0.631801 $(MicrosoftNETCoreApp80Version) From bedd9ac3e54f2c71614d2e357f1cf43d1f577808 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 02:56:01 +0000 Subject: [PATCH 050/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250619.3 (#8366) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index b02b53e9da1..1e4d1499f39 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d - + https://github.com/dotnet/command-line-api - 806a6d90bdd57f268bff30f36e2132a26371b08a + 7b5313f905987f0fbcc8f49883d792e1aef14932 diff --git a/eng/Versions.props b/eng/Versions.props index 2dc7df7e230..f54108be291 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta5.25306.1 + 2.0.0-beta6.25319.3 9.0.0-preview.25318.1 9.0.0-preview.25318.1 From 1a9962ccbabd5427d3e5e3eb75dd9c532d437ea9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 10:51:22 -0700 Subject: [PATCH 051/112] [main] Bump the azure-sdk-dependencies group with 2 updates (#8359) Bumps Azure.Core from 1.46.1 to 1.46.2 Bumps Azure.Storage.Blobs from 12.24.0 to 12.24.1 --- updated-dependencies: - dependency-name: Azure.Core dependency-version: 1.46.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdk-dependencies - dependency-name: Azure.Storage.Blobs dependency-version: 12.24.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdk-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index d97a7bb57f2..c73eb3472dc 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -2,9 +2,9 @@ - 1.46.1 + 1.46.2 1.14.0 - 12.24.0 + 12.24.1 12.22.0 3.8.4 1.6.24 From 62e3682dc7c0b71c4ebf1ae35558f2b25e683084 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 10:51:46 -0700 Subject: [PATCH 052/112] [main] Bump the runtime-dependencies group with 4 updates (#8358) Bumps Microsoft.Extensions.Configuration.Abstractions from 9.0.4 to 9.0.6 Bumps Microsoft.Extensions.Logging from 9.0.4 to 9.0.6 Bumps Microsoft.Extensions.Logging.Console from 9.0.4 to 9.0.6 Bumps System.Text.Json from 9.0.4 to 9.0.6 --- updated-dependencies: - dependency-name: Microsoft.Extensions.Configuration.Abstractions dependency-version: 9.0.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging dependency-version: 9.0.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging.Console dependency-version: 9.0.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: System.Text.Json dependency-version: 9.0.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/net9.0/Versions.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/dependabot/net9.0/Versions.props b/eng/dependabot/net9.0/Versions.props index 8a7dfb77b34..5d7cb26ec68 100644 --- a/eng/dependabot/net9.0/Versions.props +++ b/eng/dependabot/net9.0/Versions.props @@ -2,16 +2,16 @@ - 9.0.4 + 9.0.6 - 9.0.4 + 9.0.6 - 9.0.4 + 9.0.6 - 9.0.4 + 9.0.6 9.0.4 - 9.0.4 + 9.0.6 From 3e23a5ec60b05c7eb006b1c597eca415e93566e0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 10:52:20 -0700 Subject: [PATCH 053/112] [main] Bump the identity-dependencies group with 1 update (#8363) Bumps Microsoft.Identity.Web from 3.8.4 to 3.9.4 --- updated-dependencies: - dependency-name: Microsoft.Identity.Web dependency-version: 3.9.4 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: identity-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index c73eb3472dc..7f3c28a439c 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -6,7 +6,7 @@ 1.14.0 12.24.1 12.22.0 - 3.8.4 + 3.9.4 1.6.24 4.3.2 5.0.0 From 1b21f4382964a9711ab95733042d2eb64dd34435 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 11:04:52 -0700 Subject: [PATCH 054/112] [main] Bump the runtime-dependencies group with 1 update (#8354) Bumps Microsoft.NETCore.DotNetHost from 8.0.15 to 8.0.17 --- updated-dependencies: - dependency-name: Microsoft.NETCore.DotNetHost dependency-version: 8.0.17 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/net8.0/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/net8.0/Versions.props b/eng/dependabot/net8.0/Versions.props index 0803cf4a0d0..5b8a903f356 100644 --- a/eng/dependabot/net8.0/Versions.props +++ b/eng/dependabot/net8.0/Versions.props @@ -10,7 +10,7 @@ 8.0.1 - 8.0.15 + 8.0.17 8.0.5 From 5165d16afbb166bd91b364907eae42559e1a8782 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 14:15:10 -0700 Subject: [PATCH 055/112] Bump dawidd6/action-download-artifact from 9 to 11 (#8347) Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 9 to 11. - [Release notes](https://github.com/dawidd6/action-download-artifact/releases) - [Commits](https://github.com/dawidd6/action-download-artifact/compare/07ab29fd4a977ae4d2b275087cf67563dfdf0295...ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5) --- updated-dependencies: - dependency-name: dawidd6/action-download-artifact dependency-version: '11' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/submit-to-do-issue.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/submit-to-do-issue.yml b/.github/workflows/submit-to-do-issue.yml index 3c6c7dd3a58..49592f23d32 100644 --- a/.github/workflows/submit-to-do-issue.yml +++ b/.github/workflows/submit-to-do-issue.yml @@ -35,7 +35,7 @@ jobs: # The default artifact download action doesn't support cross-workflow # artifacts, so use a 3rd party one. - name: 'Download linting results' - uses: dawidd6/action-download-artifact@07ab29fd4a977ae4d2b275087cf67563dfdf0295 + uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 with: workflow: ${{env.workflow_name}} run_id: ${{github.event.workflow_run.id }} From 502cd4a38bac6f2e476d75cd41b08dc1a0cc6d52 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 23:05:21 +0000 Subject: [PATCH 056/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250619.1 (#8365) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 1e4d1499f39..7a7ebd4b8e6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d + c80de30e0d582df0c6fb9b24e8b10c3a78c97161 - + https://github.com/dotnet/diagnostics - ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d + c80de30e0d582df0c6fb9b24e8b10c3a78c97161 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics - ff0733e1db96306495bd2a5c6d0a6c2e19fb4d8d + c80de30e0d582df0c6fb9b24e8b10c3a78c97161 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index f54108be291..fa39821e60e 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.3 - 9.0.0-preview.25318.1 - 9.0.0-preview.25318.1 + 9.0.0-preview.25319.1 + 9.0.0-preview.25319.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.631801 + 1.0.631901 $(MicrosoftNETCoreApp80Version) From 4c0ed9cd213d860ee64ace2910c9944d1d1fe78e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 16:20:59 -0700 Subject: [PATCH 057/112] Update Learning Paths (#8316) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/learning-path-sha.txt | 2 +- documentation/learningPath/aks.md | 2 +- documentation/learningPath/api.md | 10 ++-- documentation/learningPath/collectionrules.md | 30 +++++----- documentation/learningPath/configuration.md | 16 +++--- documentation/learningPath/egress.md | 22 ++++---- documentation/learningPath/testing.md | 56 +++++++++---------- 7 files changed, 69 insertions(+), 69 deletions(-) diff --git a/.github/learning-path-sha.txt b/.github/learning-path-sha.txt index fc91a65203e..a8fb7c517b3 100644 --- a/.github/learning-path-sha.txt +++ b/.github/learning-path-sha.txt @@ -1 +1 @@ -cd505c19acbea28dc8d9aff84908ced335911801 \ No newline at end of file +9ba2e5558604d3ee17edf914cc37fc50ba8ea256 \ No newline at end of file diff --git a/documentation/learningPath/aks.md b/documentation/learningPath/aks.md index 39b984b1927..2a669aeba22 100644 --- a/documentation/learningPath/aks.md +++ b/documentation/learningPath/aks.md @@ -6,7 +6,7 @@ In addition to its availability as a .NET CLI tool, the `dotnet monitor` tool is This workflow takes your local development copy of `dotnet-monitor`, patches it with a local development copy of the [.NET Core Diagnostics Repo](https://github.com/dotnet/diagnostics#net-core-diagnostics-repo), and makes it available as an image for you to consume in an ACR (Azure Container Registry). Note that there are many other ways to do this - this is meant to serve as a basic template that can be adapted to match your needs. -1. Open `pwsh` and run the [generate-dev-sln script](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/generate-dev-sln.ps1), providing a path to your local copy of the diagnostics repo. +1. Open `pwsh` and run the [generate-dev-sln script](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/generate-dev-sln.ps1), providing a path to your local copy of the diagnostics repo. > [!NOTE] > If your changes do not involve the [.NET Core Diagnostics Repo](https://github.com/dotnet/diagnostics#net-core-diagnostics-repo), you don't need to complete this step. diff --git a/documentation/learningPath/api.md b/documentation/learningPath/api.md index 77f0e9cd753..73976fcb8e6 100644 --- a/documentation/learningPath/api.md +++ b/documentation/learningPath/api.md @@ -4,15 +4,15 @@ dotnet-monitor exposes functionality through both [collection rules](./collectio ## Adding New APIs -The web API surface is defined by a series of controllers [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/). It's common for an API to expose functionality also available via [Actions](./collectionrules.md#actions) and so methods in these controllers are often wrappers around a shared implementation. Each controller may have one or more attributes that configure how and where it is exposed, you can learn more about the notable controller attributes [here](#notable-controller-attributes). +The web API surface is defined by a series of controllers [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/). It's common for an API to expose functionality also available via [Actions](./collectionrules.md#actions) and so methods in these controllers are often wrappers around a shared implementation. Each controller may have one or more attributes that configure how and where it is exposed, you can learn more about the notable controller attributes [here](#notable-controller-attributes). -If the new API needs to either accept or return structured data, a dedicated model should be used. Models are defined [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/Models/). +If the new API needs to either accept or return structured data, a dedicated model should be used. Models are defined [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Models/). When adding a new API, it's important to also update the [`openapi.json`](../openapi.json) spec which describes the API surface. There are CI tests that will ensure this file has been updated to reflect any API changes. Learn more about updating `openapi.json` [here](./testing.md#openapi-generation). ### Adding Tests -Web APIs in dotnet-monitor are typically tested using functional tests that leverage the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs) to call a specific API. Learn more about how the functional tests are defined and operate [here](./testing.md#functional-tests). +Web APIs in dotnet-monitor are typically tested using functional tests that leverage the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs) to call a specific API. Learn more about how the functional tests are defined and operate [here](./testing.md#functional-tests). ## Notable Controller Attributes @@ -32,6 +32,6 @@ dotnet-monitor supports multiple different [authentication modes](../authenticat ### Determining Authentication Mode -When dotnet-monitor starts, the command line arguments are first inspected to see if a specific authentication mode was set (such as `--no-auth`), referred to as the `StartupAuthenticationMode`, this is calculated [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L28). If no modes were explicitly set via a command line argument, dotnet-monitor will select `Deferred` as the `StartupAuthenticationMode`. This indicates that the user configuration should be looked at to determine the authentication mode later on in the startup process. +When dotnet-monitor starts, the command line arguments are first inspected to see if a specific authentication mode was set (such as `--no-auth`), referred to as the `StartupAuthenticationMode`, this is calculated [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L28). If no modes were explicitly set via a command line argument, dotnet-monitor will select `Deferred` as the `StartupAuthenticationMode`. This indicates that the user configuration should be looked at to determine the authentication mode later on in the startup process. -After determining the `StartupAuthenticationMode` mode, the relevant [IAuthenticationConfigurator](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Auth/IAuthenticationConfigurator.cs) is created by the [AuthConfiguratorFactory](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Auth/AuthConfiguratorFactory.cs). This factory also handles deciding what authentication mode to use when `StartupAuthenticationMode` is `Deferred`. The selected configurator is used to configure various parts of dotnet-monitor that are specific to authentication, such as protecting the web APIs and adding authentication-mode specific logging. +After determining the `StartupAuthenticationMode` mode, the relevant [IAuthenticationConfigurator](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Auth/IAuthenticationConfigurator.cs) is created by the [AuthConfiguratorFactory](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Auth/AuthConfiguratorFactory.cs). This factory also handles deciding what authentication mode to use when `StartupAuthenticationMode` is `Deferred`. The selected configurator is used to configure various parts of dotnet-monitor that are specific to authentication, such as protecting the web APIs and adding authentication-mode specific logging. diff --git a/documentation/learningPath/collectionrules.md b/documentation/learningPath/collectionrules.md index e9625973cc3..8fb2bead4c7 100644 --- a/documentation/learningPath/collectionrules.md +++ b/documentation/learningPath/collectionrules.md @@ -29,49 +29,49 @@ graph LR ### Key Areas Of The Code -* Collection rules are registered [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L141). When adding a new trigger or action, these types need to be added here to take effect. This section is also responsible for making sure options get configured and validated. -* Options for collection rules can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleOptions.cs). -* Rules are applied, removed, and restarted in response to configuration changes [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleService.cs). This is also responsible for generating a description of each collection rule's state for the `/collectionrules` API Endpoint. -* The pipeline responsible for the lifetime of a single executing collection rule can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L56). -* To run collection rules, `dotnet monitor` must be in `Listen` mode - this is set via [DiagnosticPortOptions](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Options/DiagnosticPortOptions.cs). +* Collection rules are registered [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L141). When adding a new trigger or action, these types need to be added here to take effect. This section is also responsible for making sure options get configured and validated. +* Options for collection rules can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleOptions.cs). +* Rules are applied, removed, and restarted in response to configuration changes [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleService.cs). This is also responsible for generating a description of each collection rule's state for the `/collectionrules` API Endpoint. +* The pipeline responsible for the lifetime of a single executing collection rule can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L56). +* To run collection rules, `dotnet monitor` must be in `Listen` mode - this is set via [DiagnosticPortOptions](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options/DiagnosticPortOptions.cs). * For each type of trigger, the [dotnet diagnostics repo](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/ITraceEventTrigger.cs#L29) is responsible for determining whether the triggering conditions have been satisfied. ### Triggers -A trigger will monitor for a specific condition in the target application and raise a notification when that condition has been observed. Options for triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleTriggerOptions.cs); the type of `Settings` is determined by which trigger is being used (possible trigger types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers)). The interface for all triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Triggers/ICollectionRuleTrigger.cs) - this allows `dotnet monitor` to start and stop triggers, regardless of the trigger's properties. The collection rule pipeline creates instances of triggers [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L101) before waiting for the trigger to [satisfy its conditions](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/Pipelines/TraceEventTriggerPipeline.cs#L107) - each trigger has its own set of criteria that determines when a trigger has been satisfied. +A trigger will monitor for a specific condition in the target application and raise a notification when that condition has been observed. Options for triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleTriggerOptions.cs); the type of `Settings` is determined by which trigger is being used (possible trigger types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers)). The interface for all triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Triggers/ICollectionRuleTrigger.cs) - this allows `dotnet monitor` to start and stop triggers, regardless of the trigger's properties. The collection rule pipeline creates instances of triggers [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L101) before waiting for the trigger to [satisfy its conditions](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/Pipelines/TraceEventTriggerPipeline.cs#L107) - each trigger has its own set of criteria that determines when a trigger has been satisfied. ### Actions -Actions allow executing an operation or an external executable in response to a trigger condition being satisfied. Options for actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleActionOptions.cs); the type of `Settings` is determined by which action is being used (possible action types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/Actions)). The interface for all actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Actions/ICollectionRuleAction.cs) - this allows `dotnet monitor` to start an action, wait for it to complete, and get its output values regardless of the action's properties. The action list is [executed](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L155) once the triggering condition has been met (assuming the action list isn't throttled), with each action by default starting without waiting for prior actions to complete. +Actions allow executing an operation or an external executable in response to a trigger condition being satisfied. Options for actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleActionOptions.cs); the type of `Settings` is determined by which action is being used (possible action types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Actions)). The interface for all actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Actions/ICollectionRuleAction.cs) - this allows `dotnet monitor` to start an action, wait for it to complete, and get its output values regardless of the action's properties. The action list is [executed](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L155) once the triggering condition has been met (assuming the action list isn't throttled), with each action by default starting without waiting for prior actions to complete. ### Filters -Filters can optionally be applied to a collection rule to choose which processes can trigger the rule. This uses the same set of [options](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Options/ProcessFilterOptions.cs#L48) as setting the default process for `dotnet-monitor`. When starting a collection rule, [these filters are used to check if the current process should have the collection rule applied to it](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleContainer.cs#L186); if so, the collection rule starts. +Filters can optionally be applied to a collection rule to choose which processes can trigger the rule. This uses the same set of [options](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options/ProcessFilterOptions.cs#L48) as setting the default process for `dotnet-monitor`. When starting a collection rule, [these filters are used to check if the current process should have the collection rule applied to it](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleContainer.cs#L186); if so, the collection rule starts. ### Limits -Limits can optionally be applied to a collection rule to constrain the lifetime of the rule and how often its actions can be run before being throttled. Options for limits can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleLimitsOptions.cs). When provided (or when using default values), limits are evaluated in the collection rule pipeline while running. `RuleDuration` is used to [create a token](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L81) that shuts down the pipeline. `ActionCountSlidingWindowDuration` does not rely on setting cancellation tokens; rather, the number of executions within the sliding window are checked on-demand [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L211), and `ActionCount` is referenced to determine whether the rule needs to [terminate](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L194) or [throttle](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L234). +Limits can optionally be applied to a collection rule to constrain the lifetime of the rule and how often its actions can be run before being throttled. Options for limits can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleLimitsOptions.cs). When provided (or when using default values), limits are evaluated in the collection rule pipeline while running. `RuleDuration` is used to [create a token](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L81) that shuts down the pipeline. `ActionCountSlidingWindowDuration` does not rely on setting cancellation tokens; rather, the number of executions within the sliding window are checked on-demand [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L211), and `ActionCount` is referenced to determine whether the rule needs to [terminate](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L194) or [throttle](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L234). ## Miscellaneous ### Trigger Shortcuts -Trigger Shortcuts provide improved defaults, range validation, and a simpler syntax for [several commonly used `EventCounter` triggers](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts). These shortcuts provide the same functionality as using the standard `EventCounter` syntax, but have fewer available options (since there is no need to specify the `ProviderName` or the `CounterName`) - as a result, shortcuts do not inherit from `EventCounterOptions`, but rather [IEventCounterShortcuts](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts/IEventCounterShortcuts.cs). Each type of shortcut is registered independently [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L159). After binding with configuration and undergoing validation, shortcuts are then converted to be treated as `EventCounter` triggers [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs), using their respective defaults instead of the generic ones. +Trigger Shortcuts provide improved defaults, range validation, and a simpler syntax for [several commonly used `EventCounter` triggers](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts). These shortcuts provide the same functionality as using the standard `EventCounter` syntax, but have fewer available options (since there is no need to specify the `ProviderName` or the `CounterName`) - as a result, shortcuts do not inherit from `EventCounterOptions`, but rather [IEventCounterShortcuts](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts/IEventCounterShortcuts.cs). Each type of shortcut is registered independently [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L159). After binding with configuration and undergoing validation, shortcuts are then converted to be treated as `EventCounter` triggers [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs), using their respective defaults instead of the generic ones. ### Templates -Templates allow users to design reusable collection rule components by associating a name with a piece of configuration. Options for templates can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/TemplateOptions.cs). Before collection rules undergo validation, `dotnet monitor` checks to see if any of the rule's components in configuration [list the name of a template](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs) - if so, the collection rule's options are populated from the correspondingly named template. Note that templates undergo the same binding process for triggers/actions as collection rules; however, since templates are treated as separate parts of configuration, this binding instead happens [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Configuration/TemplatesConfigureNamedOptions.cs). +Templates allow users to design reusable collection rule components by associating a name with a piece of configuration. Options for templates can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/TemplateOptions.cs). Before collection rules undergo validation, `dotnet monitor` checks to see if any of the rule's components in configuration [list the name of a template](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs) - if so, the collection rule's options are populated from the correspondingly named template. Note that templates undergo the same binding process for triggers/actions as collection rules; however, since templates are treated as separate parts of configuration, this binding instead happens [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Configuration/TemplatesConfigureNamedOptions.cs). ### Collection Rule Defaults -Defaults can be used to limit the verbosity of configuration, allowing frequently used values for collection rules to be assigned as defaults. Options for collection rule defaults can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleDefaultsOptions.cs). These defaults are merged with the user's provided configuration [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/CollectionRules/Options/DefaultCollectionRulePostConfigureOptions.cs) - any properties that the user hasn't set (that have corresponding default values) will be updated at this point to use the default values. This step occurs prior to `dotnet monitor` attempting to use its built-in defaults, which allows user defaults to take precedence. +Defaults can be used to limit the verbosity of configuration, allowing frequently used values for collection rules to be assigned as defaults. Options for collection rule defaults can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleDefaultsOptions.cs). These defaults are merged with the user's provided configuration [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/DefaultCollectionRulePostConfigureOptions.cs) - any properties that the user hasn't set (that have corresponding default values) will be updated at this point to use the default values. This step occurs prior to `dotnet monitor` attempting to use its built-in defaults, which allows user defaults to take precedence. ### Collection Rule API Endpoint -The Collection Rule API Endpoint allows users to get information about the state of their collection rules, providing general information [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L500) and more specific information about a particular rule [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L522). **This API is solely for viewing the current state of rules, not altering state**. +The Collection Rule API Endpoint allows users to get information about the state of their collection rules, providing general information [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L500) and more specific information about a particular rule [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L522). **This API is solely for viewing the current state of rules, not altering state**. -Each collection rule pipeline has a [state holder](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs) that keeps track of the rule's execution. By keeping track of the pipeline's state in real-time, this state doesn't need to be calculated in response to a user hitting the `/collectionrules` endpoint. However, other user-facing information, such as countdowns, are calculated on-demand - these values are solely for display purposes and not used by `dotnet-monitor` when determining when to change state (see [Limits](#limits) for more information). +Each collection rule pipeline has a [state holder](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs) that keeps track of the rule's execution. By keeping track of the pipeline's state in real-time, this state doesn't need to be calculated in response to a user hitting the `/collectionrules` endpoint. However, other user-facing information, such as countdowns, are calculated on-demand - these values are solely for display purposes and not used by `dotnet-monitor` when determining when to change state (see [Limits](#limits) for more information). ## Keeping Documentation Up-To-Date -When making changes to collection rules that require updates to configuration, these changes should be added [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/documentation/configuration/collection-rule-configuration.md). Additional information on collection rules and examples can be provided [here](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/documentation/collectionrules). +When making changes to collection rules that require updates to configuration, these changes should be added [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/configuration/collection-rule-configuration.md). Additional information on collection rules and examples can be provided [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/collectionrules). diff --git a/documentation/learningPath/configuration.md b/documentation/learningPath/configuration.md index dcb1d6772e0..b9e01b2ca31 100644 --- a/documentation/learningPath/configuration.md +++ b/documentation/learningPath/configuration.md @@ -4,22 +4,22 @@ ## How Configuration Works -`dotnet-monitor` accepts configuration from several different sources, and must [combine these sources for the host builder](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/HostBuilder/HostBuilderHelper.cs#L48). Configuration sources are added in the order of lowest to highest precedence - meaning that if there is a conflict between a property in two configuration sources, the property found in the latter configuration source will be used. +`dotnet-monitor` accepts configuration from several different sources, and must [combine these sources for the host builder](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/HostBuilder/HostBuilderHelper.cs#L48). Configuration sources are added in the order of lowest to highest precedence - meaning that if there is a conflict between a property in two configuration sources, the property found in the latter configuration source will be used. -To see the merged configuration, the user can run the `config show` command (see [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Program.cs#L71) and [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Commands/ConfigShowCommandHandler.cs)); the `--show-sources` flag can be used to reveal which configuration source is responsible for each property. The `config show` command's output is [written out as JSON](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/ConfigurationJsonWriter.cs); this section must be manually updated whenever new options are added (or existing options are changed). +To see the merged configuration, the user can run the `config show` command (see [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Program.cs#L71) and [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Commands/ConfigShowCommandHandler.cs)); the `--show-sources` flag can be used to reveal which configuration source is responsible for each property. The `config show` command's output is [written out as JSON](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ConfigurationJsonWriter.cs); this section must be manually updated whenever new options are added (or existing options are changed). -Once configuration has been merged, any singletons that have been added to the `IServiceCollection` (see [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs) and [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L84)), such as `IConfigureOptions`, `IPostConfigureOptions`, and `IValidateOptions`, are called when an object of that type is first used, **not on startup**. This step is often used to incorporate defaults for properties that were not explicitly set by configuration, or to validate that options were set correctly. +Once configuration has been merged, any singletons that have been added to the `IServiceCollection` (see [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs) and [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L84)), such as `IConfigureOptions`, `IPostConfigureOptions`, and `IValidateOptions`, are called when an object of that type is first used, **not on startup**. This step is often used to incorporate defaults for properties that were not explicitly set by configuration, or to validate that options were set correctly. -Any changes to the configuration need to be propagated to the [schema](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/documentation/schema.json). **The updated schema should be generated automatically; you should never need to manually edit the JSON.** To update the schema in Visual Studio: -* Set [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema) as the startup project +Any changes to the configuration need to be propagated to the [schema](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/schema.json). **The updated schema should be generated automatically; you should never need to manually edit the JSON.** To update the schema in Visual Studio: +* Set [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema) as the startup project * Build the project, with a single command-line argument for the schema's absolute path -* Validate that the schema was correctly updated using the tests in [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests) +* Validate that the schema was correctly updated using the tests in [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests) ## Keeping Documentation Up-To-Date -Our configuration is primarily documented [here](https://github.com/dotnet/dotnet-monitor/tree/cd505c19acbea28dc8d9aff84908ced335911801/documentation/configuration). Sections are typically comprised of: +Our configuration is primarily documented [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/configuration). Sections are typically comprised of: * A brief overview of the feature that is being configured * Configuration samples in all supported formats * A list of properties with descriptions, types, and whether a property is required -Types are defined in [definitions.md](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/documentation/api/definitions.md), and additional information about configuring collection rules can be found in the [collection rules](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/documentation/collectionrules) directory. Where appropriate, indicate if configuration only pertains to a specific version of `dotnet-monitor` (e.g. `7.0+`). +Types are defined in [definitions.md](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/api/definitions.md), and additional information about configuring collection rules can be found in the [collection rules](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/collectionrules) directory. Where appropriate, indicate if configuration only pertains to a specific version of `dotnet-monitor` (e.g. `7.0+`). diff --git a/documentation/learningPath/egress.md b/documentation/learningPath/egress.md index 6f79ac68dd2..51e05b7c6ba 100644 --- a/documentation/learningPath/egress.md +++ b/documentation/learningPath/egress.md @@ -23,11 +23,11 @@ graph LR class ide2 altColor ``` -1. [User initiates collection of artifact with a designated egress provider](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.WebApi/Operation/EgressOperation.cs#L45) -1. [Locate extension's executable and manifest](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Extensibility/ExtensionDiscoverer.cs#L28) -1. [Start extension and pass configuration/artifact via StdIn to the other process](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L104) -1. [Connect to egress provider using configuration and send artifact](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs#L36) -1. [Provide success/failure information via StdOut to dotnet-monitor](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L77) +1. [User initiates collection of artifact with a designated egress provider](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Operation/EgressOperation.cs#L45) +1. [Locate extension's executable and manifest](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Extensibility/ExtensionDiscoverer.cs#L28) +1. [Start extension and pass configuration/artifact via StdIn to the other process](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L104) +1. [Connect to egress provider using configuration and send artifact](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs#L36) +1. [Provide success/failure information via StdOut to dotnet-monitor](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L77) ## Distribution and Acquisition Model @@ -38,7 +38,7 @@ There are two versions of the `dotnet-monitor` image being offered: `monitor` an ### Well Known Egress Provider Locations -There are 3 [locations](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L291) that `dotnet-monitor` scans when looking for the extensions directory (the highest priority location is listed first): +There are 3 [locations](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L291) that `dotnet-monitor` scans when looking for the extensions directory (the highest priority location is listed first): - Next to the executing `dotnet-monitor` assembly - SharedConfigDirectory - On Windows, `%ProgramData%\dotnet-monitor` @@ -56,23 +56,23 @@ The distribution/acquisition model for third-party egress providers is determine ### Extension Manifest -All extensions must include a manifest titled [`extension.json`](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Extensions/AzureBlobStorage/extension.json) that provides `dotnet-monitor` with some basic information about the extension. +All extensions must include a manifest titled [`extension.json`](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Extensions/AzureBlobStorage/extension.json) that provides `dotnet-monitor` with some basic information about the extension. | Name | Required | Type | Description | |---|---|---|---| | `Name` | true | string | The name of the extension (e.g. AzureBlobStorage) that users will use when writing configuration for the egress provider. | | `ExecutableFileName` | false | string | If specified, the executable file (without extension) to be launched when executing the extension; either `AssemblyFileName` or `ExecutableFileName` must be specified. | | `AssemblyFileName` | false | string | If specified, executes the extension using the shared .NET host (e.g. dotnet.exe) with the specified entry point assembly (without extension); either `AssemblyFileName` or `ExecutableFileName` must be specified. | -| `Modes` | false | [[ExtensionMode](../api/definitions.md#extensionmode)] | Additional modes the extension can be configured to run in (see an example of Validation [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L80)). | +| `Modes` | false | [[ExtensionMode](../api/definitions.md#extensionmode)] | Additional modes the extension can be configured to run in (see an example of Validation [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L80)). | ### Configuration Extensions are designed to receive all user configuration through `dotnet monitor` - the extension itself should not rely on any additional configuration sources. -In addition to the configuration provided specifically for your egress provider, `dotnet-monitor` also includes the values stored in [`Properties`](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Options/EgressOptions.cs#L21). Note that `Properties` may include information that is not relevant to the current egress provider, since it is a shared bucket between all configured egress providers. +In addition to the configuration provided specifically for your egress provider, `dotnet-monitor` also includes the values stored in [`Properties`](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options/EgressOptions.cs#L21). Note that `Properties` may include information that is not relevant to the current egress provider, since it is a shared bucket between all configured egress providers. ### Communicating With Dotnet-Monitor -[`dotnet monitor` will pass serialized configuration via `StdIn` to the extension](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L184); an example of how the `AzureBlobStorage` egress provider interprets the egress payload can be found [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L139). **It's important to validate the version number at the beginning of the stream; if an extension does not have the same version as `dotnet-monitor`, it should not attempt to continue reading from the stream, and users may need to update to a newer version of the extension.** +[`dotnet monitor` will pass serialized configuration via `StdIn` to the extension](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L184); an example of how the `AzureBlobStorage` egress provider interprets the egress payload can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L139). **It's important to validate the version number at the beginning of the stream; if an extension does not have the same version as `dotnet-monitor`, it should not attempt to continue reading from the stream, and users may need to update to a newer version of the extension.** -All output from the extension will be passed back to `dotnet-monitor`; this is logged [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L64). The contents of the `StandardOutput` and `StandardError` streams are handled and logged as seen [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L34), with the `StandardOutput` stream being logged at the `Info` level and the `StandardError` stream being logged at the `Warning` level. `Dotnet-Monitor` will continue reading output until it receives a [result](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tools/dotnet-monitor/Egress/Extension/EgressArtifactResult.cs) from the extension via the `StandardOutput` stream, at which point the extension's process will be terminated and `dotnet-monitor` will display the appropriate log message depending on the success/failure of the operation. Exceptions thrown during the egress operation are caught [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L71); this allows the extension to report a failure message back to `dotnet-monitor` that will be displayed to the user. +All output from the extension will be passed back to `dotnet-monitor`; this is logged [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L64). The contents of the `StandardOutput` and `StandardError` streams are handled and logged as seen [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L34), with the `StandardOutput` stream being logged at the `Info` level and the `StandardError` stream being logged at the `Warning` level. `Dotnet-Monitor` will continue reading output until it receives a [result](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressArtifactResult.cs) from the extension via the `StandardOutput` stream, at which point the extension's process will be terminated and `dotnet-monitor` will display the appropriate log message depending on the success/failure of the operation. Exceptions thrown during the egress operation are caught [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L71); this allows the extension to report a failure message back to `dotnet-monitor` that will be displayed to the user. diff --git a/documentation/learningPath/testing.md b/documentation/learningPath/testing.md index ad64fa221dc..dc95b4502f3 100644 --- a/documentation/learningPath/testing.md +++ b/documentation/learningPath/testing.md @@ -4,81 +4,81 @@ Tests can be executed with the command line (via [build.cmd](../../Build.cmd) -test), as part of the PR build, or in Visual Studio. Note that because of limited resources in the build pool, tests ran from the command line or in the build pool are serialized. This avoids test failures associated with parallel testing. Visual Studio does not have such restrictions and is best used for individual tests and test investigations. When running from the command line, using the `-testgroup` parameter can be used to limit the amount of tests executed. For example `build.cmd -test -testgroup PR` will run the same tests as the PR build. -The framework of the test assemblies is controlled by [TestTargetFrameworks](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/eng/Versions.props). The test itself is attributed with a particular framework based on the [TargetFrameworkMonikerTraitAttribute](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/TargetFrameworkMonikerTraitAttribute.cs). +The framework of the test assemblies is controlled by [TestTargetFrameworks](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/eng/Versions.props). The test itself is attributed with a particular framework based on the [TargetFrameworkMonikerTraitAttribute](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/TargetFrameworkMonikerTraitAttribute.cs). ## Unit Tests -- [Microsoft.Diagnostics.Monitoring.Tool.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests) -- [Microsoft.Diagnostics.Monitoring.WebApi.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.WebApi.UnitTests/) -- [CollectionRuleActions.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/CollectionRuleActions.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.Tool.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests) +- [Microsoft.Diagnostics.Monitoring.WebApi.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.WebApi.UnitTests/) +- [CollectionRuleActions.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/CollectionRuleActions.UnitTests/) Unit test assemblies directly reference types from various dotnet-monitor assemblies. However, since most of dotnet-monitor heavily relies on code injection, there are utility classes to simplify unit test creation. -- [TestHostHelper](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/TestHostHelper.cs) can be used to setup a basic unit test scenario using dependency injection. -- [CollectionRuleOptionsExtensions](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/Options/CollectionRuleOptionsExtensions.cs) can be used to easily create collection rules from configuration. +- [TestHostHelper](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/TestHostHelper.cs) can be used to setup a basic unit test scenario using dependency injection. +- [CollectionRuleOptionsExtensions](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/Options/CollectionRuleOptionsExtensions.cs) can be used to easily create collection rules from configuration. ## Functional Tests -- [Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests) -- [Microsoft.Diagnostics.Monitoring.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/) +- [Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests) +- [Microsoft.Diagnostics.Monitoring.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/) Functional tests are composed of 3 main parts: 1. The test itself, which sets up and validates the results. 1. An instance of dotnet-monitor 1. An instance of an application that is being monitored (from the UnitTestApp assembly) -* [ScenarioRunner](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/Runners/ScenarioRunner.cs) is typically used to orchestrate test runs. The class will spawn both an instance of dotnet-monitor and an instance of test application. The app and the test communicate via stdio. The test communicates with dotnet-monitor via its Api surface. -* The dotnet-monitor Api surface can be accessed through the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs). -* New scenarios can be added [here](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/). -* The [AsyncWaitScenario](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/AsyncWaitScenario.cs) is sufficient for most tests. -* Coordination of the scenario and the test is done via message passing (json over stdio) between the test and the app. To send messages to the app from the test, [AppRunner](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/Runners/AppRunner.cs)'s `SendCommandAsync` is used. In the scenario definition, [ScenarioHelpers](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/ScenarioHelpers.cs)'s `WaitForCommandAsync` is used. This can be used to synchronize various points of the test application with the execution of the dotnet-monitor Api from the test itself. +* [ScenarioRunner](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/Runners/ScenarioRunner.cs) is typically used to orchestrate test runs. The class will spawn both an instance of dotnet-monitor and an instance of test application. The app and the test communicate via stdio. The test communicates with dotnet-monitor via its Api surface. +* The dotnet-monitor Api surface can be accessed through the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs). +* New scenarios can be added [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/). +* The [AsyncWaitScenario](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/AsyncWaitScenario.cs) is sufficient for most tests. +* Coordination of the scenario and the test is done via message passing (json over stdio) between the test and the app. To send messages to the app from the test, [AppRunner](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/Runners/AppRunner.cs)'s `SendCommandAsync` is used. In the scenario definition, [ScenarioHelpers](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/ScenarioHelpers.cs)'s `WaitForCommandAsync` is used. This can be used to synchronize various points of the test application with the execution of the dotnet-monitor Api from the test itself. ## Native/Profiler Tests -- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp/) +- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp/) This test assembly provides a test to make sure the dotnet-monitor profiler can load into a target app. ## Schema Generation -- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/) -- [Microsoft.Diagnostics.Monitoring.Options](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Microsoft.Diagnostics.Monitoring.Options) +- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/) +- [Microsoft.Diagnostics.Monitoring.Options](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options) -Dotnet-monitor generates [schema.json](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/documentation/schema.json) using unit tests. If dotnet-monitor's configuration changes, the schema.json file needs to be updated. -Note that it is possible to compile option classes directly into the `ConfigurationSchema` project. This may be necessary in order to attribute properties appropriately for schema generation. See [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj). See the [Configuration](./configuration.md#how-configuration-works) learning path for more details. +Dotnet-monitor generates [schema.json](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/schema.json) using unit tests. If dotnet-monitor's configuration changes, the schema.json file needs to be updated. +Note that it is possible to compile option classes directly into the `ConfigurationSchema` project. This may be necessary in order to attribute properties appropriately for schema generation. See [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj). See the [Configuration](./configuration.md#how-configuration-works) learning path for more details. ## OpenAPI generation -- [Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.OpenApiGen](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen/) +- [Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.OpenApiGen](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen/) -These assemblies and tests are used to generate the [OpenAPI spec](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/documentation/openapi.json) for the dotnet-monitor API. Changes to the dotnet-monitor api surface require updating `openapi.json`. +These assemblies and tests are used to generate the [OpenAPI spec](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/openapi.json) for the dotnet-monitor API. Changes to the dotnet-monitor api surface require updating `openapi.json`. If using VSCode or Codespaces, you can also use the `Regenerate openapi.json` task. ## Startup hooks / hosting startup -- [Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook/) +- [Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook/) This assembly is injected into a dotnet-monitor runner (using `DOTNET_STARTUP_HOOKS`) to facilitate Assembly resolution during test runs. -- [Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup/) +- [Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup/) Uses `ASPNETCORE_HOSTINGSTARTUPASSEMBLIES` to inject a service into dotnet-monitor during test time. This allows tests to locate files that are not normally part of the test deployment, such as the native profiler. -- [Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests/) Unit tests around features that are injected via `DOTNET_STARTUP_HOOKS` into the target application. This currently includes the Exceptions History feature. ## Misc test assemblies -- [Microsoft.Diagnostics.Monitoring.TestCommon](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/) +- [Microsoft.Diagnostics.Monitoring.TestCommon](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/) Utility classes that are shared between Unit Tests and Functional Tests. -- [Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon](https://github.com/dotnet/dotnet-monitor/blob/cd505c19acbea28dc8d9aff84908ced335911801/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/) +- [Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/) Utility classes shared between unit test assemblies. From bcdbcefe7ef0a7105679e38bfbee553f55959b14 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 21 Jun 2025 03:01:38 +0000 Subject: [PATCH 058/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250619.6 (#8370) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 7a7ebd4b8e6..3af8f0e4756 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 - + https://github.com/dotnet/command-line-api - 7b5313f905987f0fbcc8f49883d792e1aef14932 + 68b6dad50acc558276958b19b4c9189d70721d76 diff --git a/eng/Versions.props b/eng/Versions.props index fa39821e60e..5f144e67fea 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta6.25319.3 + 2.0.0-beta6.25319.6 9.0.0-preview.25319.1 9.0.0-preview.25319.1 From ec746fb1338627c3443d50445e38b94dfc1a1961 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 21 Jun 2025 03:05:54 +0000 Subject: [PATCH 059/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250620.1 (#8369) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 3af8f0e4756..44283db39b4 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 - + https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 - + https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 diff --git a/eng/Versions.props b/eng/Versions.props index 5f144e67fea..c3d546ee1f1 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.6 - 9.0.0-preview.25319.1 - 9.0.0-preview.25319.1 + 9.0.0-preview.25320.1 + 9.0.0-preview.25320.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.631901 + 1.0.632001 $(MicrosoftNETCoreApp80Version) From e98c4b3a96d03ae398ed54b2be1f240cb3689492 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 24 Jun 2025 03:02:21 +0000 Subject: [PATCH 060/112] Update dependencies from https://github.com/dotnet/arcade build 20250623.2 (#8374) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- eng/common/core-templates/job/job.yml | 4 ++++ eng/common/internal/NuGet.config | 3 +++ global.json | 6 +++--- 5 files changed, 23 insertions(+), 16 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 44283db39b4..15923fea6cd 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 + 533b40ed3b73fcb6f4509e301db76203bd58f920 - + https://github.com/dotnet/arcade - 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 + 533b40ed3b73fcb6f4509e301db76203bd58f920 - + https://github.com/dotnet/arcade - 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 + 533b40ed3b73fcb6f4509e301db76203bd58f920 - + https://github.com/dotnet/arcade - 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 + 533b40ed3b73fcb6f4509e301db76203bd58f920 - + https://github.com/dotnet/arcade - 0d52a8b262d35fa2fde84e398cb2e791b8454bd2 + 533b40ed3b73fcb6f4509e301db76203bd58f920 https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index c3d546ee1f1..aae0d8aa671 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25302.2 - 9.0.0-beta.25302.2 - 9.0.0-beta.25302.2 + 9.0.0-beta.25323.2 + 9.0.0-beta.25323.2 + 9.0.0-beta.25323.2 9.0.1 9.0.1-rtm.24610.9 diff --git a/eng/common/core-templates/job/job.yml b/eng/common/core-templates/job/job.yml index ba53ebfbd51..abe80a2a0e0 100644 --- a/eng/common/core-templates/job/job.yml +++ b/eng/common/core-templates/job/job.yml @@ -134,6 +134,10 @@ jobs: signType: $(_SignType) zipSources: false feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json + ${{ if eq(variables['System.TeamProject'], 'DevDiv') }}: + ConnectedPMEServiceName: 6cc74545-d7b9-4050-9dfa-ebefcc8961ea + ${{ else }}: + ConnectedPMEServiceName: 248d384a-b39b-46e3-8ad5-c2c210d5e7ca env: TeamName: $(_TeamName) MicroBuildOutputFolderOverride: '$(Agent.TempDirectory)' diff --git a/eng/common/internal/NuGet.config b/eng/common/internal/NuGet.config index 19d3d311b16..f70261ed689 100644 --- a/eng/common/internal/NuGet.config +++ b/eng/common/internal/NuGet.config @@ -4,4 +4,7 @@ + + + diff --git a/global.json b/global.json index 8e2f7eb90c0..5e90d4c9169 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "9.0.106", + "dotnet": "9.0.107", "runtimes": { "aspnetcore": [ "$(MicrosoftAspNetCoreApp80Version)", @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25302.2", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25302.2" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25323.2", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25323.2" } } From 70993bf5a4603e815ff860996542eb0b3def5d46 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 25 Jun 2025 03:07:55 +0000 Subject: [PATCH 061/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250624.1 (#8376) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 15923fea6cd..c6ccb3329f6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 - + https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 533b40ed3b73fcb6f4509e301db76203bd58f920 - + https://github.com/dotnet/diagnostics c80de30e0d582df0c6fb9b24e8b10c3a78c97161 diff --git a/eng/Versions.props b/eng/Versions.props index aae0d8aa671..9d1f82afc73 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.6 - 9.0.0-preview.25320.1 - 9.0.0-preview.25320.1 + 9.0.0-preview.25324.1 + 9.0.0-preview.25324.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.632001 + 1.0.632401 $(MicrosoftNETCoreApp80Version) From 4ea045557efe198179f1e892b01fb6dec2e83fef Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 26 Jun 2025 03:02:25 +0000 Subject: [PATCH 062/112] Update dependencies from https://github.com/dotnet/arcade build 20250625.4 (#8380) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- global.json | 4 ++-- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index c6ccb3329f6..8ebfa776177 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 533b40ed3b73fcb6f4509e301db76203bd58f920 + 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/arcade - 533b40ed3b73fcb6f4509e301db76203bd58f920 + 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/arcade - 533b40ed3b73fcb6f4509e301db76203bd58f920 + 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/arcade - 533b40ed3b73fcb6f4509e301db76203bd58f920 + 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/arcade - 533b40ed3b73fcb6f4509e301db76203bd58f920 + 13b20849f8294593bf150a801cab639397e6c29d https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index 9d1f82afc73..ed0fb07375a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25323.2 - 9.0.0-beta.25323.2 - 9.0.0-beta.25323.2 + 9.0.0-beta.25325.4 + 9.0.0-beta.25325.4 + 9.0.0-beta.25325.4 9.0.1 9.0.1-rtm.24610.9 diff --git a/global.json b/global.json index 5e90d4c9169..271bd7895f0 100644 --- a/global.json +++ b/global.json @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25323.2", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25323.2" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25325.4", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25325.4" } } From 350d8276fea39f8a822939b485c1b8cc1960f56c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sat, 28 Jun 2025 02:58:42 +0000 Subject: [PATCH 063/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250627.1 (#8383) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 8ebfa776177..21179e2e49d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - c80de30e0d582df0c6fb9b24e8b10c3a78c97161 + e32a259690378945a52bc8ac5cc5e302d9beb193 - + https://github.com/dotnet/diagnostics - c80de30e0d582df0c6fb9b24e8b10c3a78c97161 + e32a259690378945a52bc8ac5cc5e302d9beb193 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics - c80de30e0d582df0c6fb9b24e8b10c3a78c97161 + e32a259690378945a52bc8ac5cc5e302d9beb193 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index ed0fb07375a..dc2b4f45165 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.6 - 9.0.0-preview.25324.1 - 9.0.0-preview.25324.1 + 9.0.0-preview.25327.1 + 9.0.0-preview.25327.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.632401 + 1.0.632701 $(MicrosoftNETCoreApp80Version) From 082a6ffc353de80a8a5550e9bbcd56b1acc0719a Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 29 Jun 2025 02:56:51 +0000 Subject: [PATCH 064/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250628.1 (#8384) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 21179e2e49d..6c517e18542 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics e32a259690378945a52bc8ac5cc5e302d9beb193 - + https://github.com/dotnet/diagnostics e32a259690378945a52bc8ac5cc5e302d9beb193 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics e32a259690378945a52bc8ac5cc5e302d9beb193 diff --git a/eng/Versions.props b/eng/Versions.props index dc2b4f45165..3183b31e674 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.6 - 9.0.0-preview.25327.1 - 9.0.0-preview.25327.1 + 9.0.0-preview.25328.1 + 9.0.0-preview.25328.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.632701 + 1.0.632801 $(MicrosoftNETCoreApp80Version) From 0c3a91196f7e0abe8b9fa5cd8907378c4598b10a Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 30 Jun 2025 03:05:31 +0000 Subject: [PATCH 065/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250629.1 (#8385) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 6c517e18542..607b4c2398a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics e32a259690378945a52bc8ac5cc5e302d9beb193 - + https://github.com/dotnet/diagnostics e32a259690378945a52bc8ac5cc5e302d9beb193 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics e32a259690378945a52bc8ac5cc5e302d9beb193 diff --git a/eng/Versions.props b/eng/Versions.props index 3183b31e674..01b71ec617b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.6 - 9.0.0-preview.25328.1 - 9.0.0-preview.25328.1 + 9.0.0-preview.25329.1 + 9.0.0-preview.25329.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.632801 + 1.0.632901 $(MicrosoftNETCoreApp80Version) From 4dbd7ae4f972c065c141116d8a7599d4b995e642 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 09:17:27 -0700 Subject: [PATCH 066/112] [main] Update dependencies from dotnet/diagnostics (#8387) * Update dependencies from https://github.com/dotnet/diagnostics build 20250630.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25329.1 -> To Version 9.0.0-preview.25330.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250701.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25329.1 -> To Version 9.0.0-preview.25351.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250702.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25329.1 -> To Version 9.0.0-preview.25352.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250704.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25329.1 -> To Version 9.0.0-preview.25354.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250705.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25329.1 -> To Version 9.0.0-preview.25355.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250706.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25329.1 -> To Version 9.0.0-preview.25356.1 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 607b4c2398a..506864c3276 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - e32a259690378945a52bc8ac5cc5e302d9beb193 + 4e54d322759e7248b14ce40d8b24eb5947a054a1 - + https://github.com/dotnet/diagnostics - e32a259690378945a52bc8ac5cc5e302d9beb193 + 4e54d322759e7248b14ce40d8b24eb5947a054a1 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics - e32a259690378945a52bc8ac5cc5e302d9beb193 + 4e54d322759e7248b14ce40d8b24eb5947a054a1 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 01b71ec617b..37da880cc23 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta6.25319.6 - 9.0.0-preview.25329.1 - 9.0.0-preview.25329.1 + 9.0.0-preview.25356.1 + 9.0.0-preview.25356.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.632901 + 1.0.635601 $(MicrosoftNETCoreApp80Version) From 819a4cc7b53adb4e9a9a7b77cd63ab319702af70 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 11:29:27 -0700 Subject: [PATCH 067/112] [main] Update dependencies from dotnet/command-line-api (#8388) * Update dependencies from https://github.com/dotnet/command-line-api build 20250702.1 System.CommandLine From Version 2.0.0-beta6.25319.6 -> To Version 2.0.0-beta7.25352.1 * Update dependencies from https://github.com/dotnet/command-line-api build 20250703.2 System.CommandLine From Version 2.0.0-beta6.25319.6 -> To Version 2.0.0-beta7.25353.2 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 506864c3276..753bdb8912e 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 4e54d322759e7248b14ce40d8b24eb5947a054a1 - + https://github.com/dotnet/command-line-api - 68b6dad50acc558276958b19b4c9189d70721d76 + d9bee5fddf7de066002c13adcb5ecdfc566d83d0 diff --git a/eng/Versions.props b/eng/Versions.props index 37da880cc23..e49aac5daf6 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta6.25319.6 + 2.0.0-beta7.25353.2 9.0.0-preview.25356.1 9.0.0-preview.25356.1 From 46dbb4a148370986c9739d67d9147986f1972a7d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 11:30:26 -0700 Subject: [PATCH 068/112] Bump streetsidesoftware/cspell-action from 7.0.1 to 7.1.0 (#8389) Bumps [streetsidesoftware/cspell-action](https://github.com/streetsidesoftware/cspell-action) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/streetsidesoftware/cspell-action/releases) - [Changelog](https://github.com/streetsidesoftware/cspell-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/streetsidesoftware/cspell-action/compare/69543c3f9f14d4fcc6004c7bee03c4d366f11d64...ad35d5e5f85f4690dadb33f568e4b963d6a358f0) --- updated-dependencies: - dependency-name: streetsidesoftware/cspell-action dependency-version: 7.1.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/spellcheck.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index f8dc5d55f95..0e00a8e4a58 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -17,7 +17,7 @@ jobs: with: persist-credentials: false - - uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 + - uses: streetsidesoftware/cspell-action@ad35d5e5f85f4690dadb33f568e4b963d6a358f0 name: Documentation spellcheck if: ${{ !cancelled() }} with: @@ -25,7 +25,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 + - uses: streetsidesoftware/cspell-action@ad35d5e5f85f4690dadb33f568e4b963d6a358f0 name: Resx spellcheck if: ${{ !cancelled() }} with: @@ -33,7 +33,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@69543c3f9f14d4fcc6004c7bee03c4d366f11d64 + - uses: streetsidesoftware/cspell-action@ad35d5e5f85f4690dadb33f568e4b963d6a358f0 name: Source code spellcheck if: ${{ !cancelled() }} with: From 3893d24717f4b2bab74b579a3edad5e6a67d202d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Jul 2025 17:48:14 +0000 Subject: [PATCH 069/112] [main] Bump the azure-sdk-dependencies group with 1 update (#8379) Bumps Azure.Identity from 1.14.0 to 1.14.1 --- updated-dependencies: - dependency-name: Azure.Identity dependency-version: 1.14.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdk-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index 7f3c28a439c..b42771af7df 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -3,7 +3,7 @@ 1.46.2 - 1.14.0 + 1.14.1 12.24.1 12.22.0 3.9.4 From 2294beb94d2d390d5a45dbb0949220c087d2646a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:17:21 -0700 Subject: [PATCH 070/112] [main] Bump the azure-sdk-dependencies group with 1 update (#8402) Bumps Azure.Core from 1.46.2 to 1.47.0 --- updated-dependencies: - dependency-name: Azure.Core dependency-version: 1.47.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: azure-sdk-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index b42771af7df..726f345c6b2 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -2,7 +2,7 @@ - 1.46.2 + 1.47.0 1.14.1 12.24.1 12.22.0 From c285817069841451ebdf37a415613a0b3d059676 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:19:11 -0700 Subject: [PATCH 071/112] [main] Bump the runtime-dependencies group with 4 updates (#8399) Bumps Microsoft.Extensions.Configuration.Abstractions from 9.0.6 to 9.0.7 Bumps Microsoft.Extensions.Logging from 9.0.6 to 9.0.7 Bumps Microsoft.Extensions.Logging.Console from 9.0.6 to 9.0.7 Bumps System.Text.Json from 9.0.6 to 9.0.7 --- updated-dependencies: - dependency-name: Microsoft.Extensions.Configuration.Abstractions dependency-version: 9.0.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging dependency-version: 9.0.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging.Console dependency-version: 9.0.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: System.Text.Json dependency-version: 9.0.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/net9.0/Versions.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/dependabot/net9.0/Versions.props b/eng/dependabot/net9.0/Versions.props index 5d7cb26ec68..bf866651513 100644 --- a/eng/dependabot/net9.0/Versions.props +++ b/eng/dependabot/net9.0/Versions.props @@ -2,16 +2,16 @@ - 9.0.6 + 9.0.7 - 9.0.6 + 9.0.7 - 9.0.6 + 9.0.7 - 9.0.6 + 9.0.7 9.0.4 - 9.0.6 + 9.0.7 From 0b3058221c8fe129694963c9fc8f5691818fb0c3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:19:49 -0700 Subject: [PATCH 072/112] [main] Bump the runtime-dependencies group with 2 updates (#8398) Bumps Microsoft.NETCore.DotNetHost from 8.0.17 to 8.0.18 Bumps System.Text.Json from 8.0.5 to 8.0.6 --- updated-dependencies: - dependency-name: Microsoft.NETCore.DotNetHost dependency-version: 8.0.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: System.Text.Json dependency-version: 8.0.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/net8.0/Versions.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/dependabot/net8.0/Versions.props b/eng/dependabot/net8.0/Versions.props index 5b8a903f356..bac24195f8c 100644 --- a/eng/dependabot/net8.0/Versions.props +++ b/eng/dependabot/net8.0/Versions.props @@ -10,8 +10,8 @@ 8.0.1 - 8.0.17 + 8.0.18 - 8.0.5 + 8.0.6 From 55d62efc116398cc071f08b6f89a4f2dafba6692 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:22:35 -0700 Subject: [PATCH 073/112] [main] Update dependencies from dotnet/diagnostics (#8394) * Update dependencies from https://github.com/dotnet/diagnostics build 20250708.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25356.1 -> To Version 9.0.0-preview.25358.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250709.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25356.1 -> To Version 9.0.0-preview.25359.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250711.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25356.1 -> To Version 9.0.0-preview.25361.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250712.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25356.1 -> To Version 9.0.0-preview.25362.1 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 753bdb8912e..bd90d64abb0 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 4e54d322759e7248b14ce40d8b24eb5947a054a1 + c3c57bbd7ce6950087b2e99be7a1a1170cf94923 - + https://github.com/dotnet/diagnostics - 4e54d322759e7248b14ce40d8b24eb5947a054a1 + c3c57bbd7ce6950087b2e99be7a1a1170cf94923 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics - 4e54d322759e7248b14ce40d8b24eb5947a054a1 + c3c57bbd7ce6950087b2e99be7a1a1170cf94923 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index e49aac5daf6..aa7a0b0279b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25353.2 - 9.0.0-preview.25356.1 - 9.0.0-preview.25356.1 + 9.0.0-preview.25362.1 + 9.0.0-preview.25362.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.635601 + 1.0.636201 $(MicrosoftNETCoreApp80Version) From 5cf9f76990d5390f3a85248bf7b24721fd06549f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:23:22 -0700 Subject: [PATCH 074/112] Bump streetsidesoftware/cspell-action from 7.1.0 to 7.1.1 (#8393) Bumps [streetsidesoftware/cspell-action](https://github.com/streetsidesoftware/cspell-action) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/streetsidesoftware/cspell-action/releases) - [Changelog](https://github.com/streetsidesoftware/cspell-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/streetsidesoftware/cspell-action/compare/ad35d5e5f85f4690dadb33f568e4b963d6a358f0...157048954070986ce4315d0813573a2d8faee361) --- updated-dependencies: - dependency-name: streetsidesoftware/cspell-action dependency-version: 7.1.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/spellcheck.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index 0e00a8e4a58..d8bff7f16ae 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -17,7 +17,7 @@ jobs: with: persist-credentials: false - - uses: streetsidesoftware/cspell-action@ad35d5e5f85f4690dadb33f568e4b963d6a358f0 + - uses: streetsidesoftware/cspell-action@157048954070986ce4315d0813573a2d8faee361 name: Documentation spellcheck if: ${{ !cancelled() }} with: @@ -25,7 +25,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@ad35d5e5f85f4690dadb33f568e4b963d6a358f0 + - uses: streetsidesoftware/cspell-action@157048954070986ce4315d0813573a2d8faee361 name: Resx spellcheck if: ${{ !cancelled() }} with: @@ -33,7 +33,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@ad35d5e5f85f4690dadb33f568e4b963d6a358f0 + - uses: streetsidesoftware/cspell-action@157048954070986ce4315d0813573a2d8faee361 name: Source code spellcheck if: ${{ !cancelled() }} with: From c725bec581b1353455fae86467d103137c128a6f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:26:02 -0700 Subject: [PATCH 075/112] [main] Bump the identity-dependencies group with 1 update (#8390) Bumps Microsoft.Identity.Web from 3.9.4 to 3.10.0 --- updated-dependencies: - dependency-name: Microsoft.Identity.Web dependency-version: 3.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: identity-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index 726f345c6b2..b96a7dee0a7 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -6,7 +6,7 @@ 1.14.1 12.24.1 12.22.0 - 3.9.4 + 3.10.0 1.6.24 4.3.2 5.0.0 From 9383caac6be5bec848b76c56ed7dc31dc3107c35 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:35:00 -0700 Subject: [PATCH 076/112] Update Learning Paths (#8386) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/learning-path-sha.txt | 2 +- documentation/learningPath/aks.md | 2 +- documentation/learningPath/api.md | 10 ++-- documentation/learningPath/collectionrules.md | 30 +++++----- documentation/learningPath/configuration.md | 16 +++--- documentation/learningPath/egress.md | 22 ++++---- documentation/learningPath/testing.md | 56 +++++++++---------- 7 files changed, 69 insertions(+), 69 deletions(-) diff --git a/.github/learning-path-sha.txt b/.github/learning-path-sha.txt index a8fb7c517b3..23fdf5fa3b6 100644 --- a/.github/learning-path-sha.txt +++ b/.github/learning-path-sha.txt @@ -1 +1 @@ -9ba2e5558604d3ee17edf914cc37fc50ba8ea256 \ No newline at end of file +0c3a91196f7e0abe8b9fa5cd8907378c4598b10a \ No newline at end of file diff --git a/documentation/learningPath/aks.md b/documentation/learningPath/aks.md index 2a669aeba22..997ddb5eca1 100644 --- a/documentation/learningPath/aks.md +++ b/documentation/learningPath/aks.md @@ -6,7 +6,7 @@ In addition to its availability as a .NET CLI tool, the `dotnet monitor` tool is This workflow takes your local development copy of `dotnet-monitor`, patches it with a local development copy of the [.NET Core Diagnostics Repo](https://github.com/dotnet/diagnostics#net-core-diagnostics-repo), and makes it available as an image for you to consume in an ACR (Azure Container Registry). Note that there are many other ways to do this - this is meant to serve as a basic template that can be adapted to match your needs. -1. Open `pwsh` and run the [generate-dev-sln script](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/generate-dev-sln.ps1), providing a path to your local copy of the diagnostics repo. +1. Open `pwsh` and run the [generate-dev-sln script](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/generate-dev-sln.ps1), providing a path to your local copy of the diagnostics repo. > [!NOTE] > If your changes do not involve the [.NET Core Diagnostics Repo](https://github.com/dotnet/diagnostics#net-core-diagnostics-repo), you don't need to complete this step. diff --git a/documentation/learningPath/api.md b/documentation/learningPath/api.md index 73976fcb8e6..44bfc168083 100644 --- a/documentation/learningPath/api.md +++ b/documentation/learningPath/api.md @@ -4,15 +4,15 @@ dotnet-monitor exposes functionality through both [collection rules](./collectio ## Adding New APIs -The web API surface is defined by a series of controllers [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/). It's common for an API to expose functionality also available via [Actions](./collectionrules.md#actions) and so methods in these controllers are often wrappers around a shared implementation. Each controller may have one or more attributes that configure how and where it is exposed, you can learn more about the notable controller attributes [here](#notable-controller-attributes). +The web API surface is defined by a series of controllers [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/). It's common for an API to expose functionality also available via [Actions](./collectionrules.md#actions) and so methods in these controllers are often wrappers around a shared implementation. Each controller may have one or more attributes that configure how and where it is exposed, you can learn more about the notable controller attributes [here](#notable-controller-attributes). -If the new API needs to either accept or return structured data, a dedicated model should be used. Models are defined [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Models/). +If the new API needs to either accept or return structured data, a dedicated model should be used. Models are defined [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Models/). When adding a new API, it's important to also update the [`openapi.json`](../openapi.json) spec which describes the API surface. There are CI tests that will ensure this file has been updated to reflect any API changes. Learn more about updating `openapi.json` [here](./testing.md#openapi-generation). ### Adding Tests -Web APIs in dotnet-monitor are typically tested using functional tests that leverage the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs) to call a specific API. Learn more about how the functional tests are defined and operate [here](./testing.md#functional-tests). +Web APIs in dotnet-monitor are typically tested using functional tests that leverage the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs) to call a specific API. Learn more about how the functional tests are defined and operate [here](./testing.md#functional-tests). ## Notable Controller Attributes @@ -32,6 +32,6 @@ dotnet-monitor supports multiple different [authentication modes](../authenticat ### Determining Authentication Mode -When dotnet-monitor starts, the command line arguments are first inspected to see if a specific authentication mode was set (such as `--no-auth`), referred to as the `StartupAuthenticationMode`, this is calculated [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L28). If no modes were explicitly set via a command line argument, dotnet-monitor will select `Deferred` as the `StartupAuthenticationMode`. This indicates that the user configuration should be looked at to determine the authentication mode later on in the startup process. +When dotnet-monitor starts, the command line arguments are first inspected to see if a specific authentication mode was set (such as `--no-auth`), referred to as the `StartupAuthenticationMode`, this is calculated [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L28). If no modes were explicitly set via a command line argument, dotnet-monitor will select `Deferred` as the `StartupAuthenticationMode`. This indicates that the user configuration should be looked at to determine the authentication mode later on in the startup process. -After determining the `StartupAuthenticationMode` mode, the relevant [IAuthenticationConfigurator](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Auth/IAuthenticationConfigurator.cs) is created by the [AuthConfiguratorFactory](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Auth/AuthConfiguratorFactory.cs). This factory also handles deciding what authentication mode to use when `StartupAuthenticationMode` is `Deferred`. The selected configurator is used to configure various parts of dotnet-monitor that are specific to authentication, such as protecting the web APIs and adding authentication-mode specific logging. +After determining the `StartupAuthenticationMode` mode, the relevant [IAuthenticationConfigurator](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Auth/IAuthenticationConfigurator.cs) is created by the [AuthConfiguratorFactory](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Auth/AuthConfiguratorFactory.cs). This factory also handles deciding what authentication mode to use when `StartupAuthenticationMode` is `Deferred`. The selected configurator is used to configure various parts of dotnet-monitor that are specific to authentication, such as protecting the web APIs and adding authentication-mode specific logging. diff --git a/documentation/learningPath/collectionrules.md b/documentation/learningPath/collectionrules.md index 8fb2bead4c7..c4501133380 100644 --- a/documentation/learningPath/collectionrules.md +++ b/documentation/learningPath/collectionrules.md @@ -29,49 +29,49 @@ graph LR ### Key Areas Of The Code -* Collection rules are registered [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L141). When adding a new trigger or action, these types need to be added here to take effect. This section is also responsible for making sure options get configured and validated. -* Options for collection rules can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleOptions.cs). -* Rules are applied, removed, and restarted in response to configuration changes [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleService.cs). This is also responsible for generating a description of each collection rule's state for the `/collectionrules` API Endpoint. -* The pipeline responsible for the lifetime of a single executing collection rule can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L56). -* To run collection rules, `dotnet monitor` must be in `Listen` mode - this is set via [DiagnosticPortOptions](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options/DiagnosticPortOptions.cs). +* Collection rules are registered [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L141). When adding a new trigger or action, these types need to be added here to take effect. This section is also responsible for making sure options get configured and validated. +* Options for collection rules can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleOptions.cs). +* Rules are applied, removed, and restarted in response to configuration changes [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleService.cs). This is also responsible for generating a description of each collection rule's state for the `/collectionrules` API Endpoint. +* The pipeline responsible for the lifetime of a single executing collection rule can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L56). +* To run collection rules, `dotnet monitor` must be in `Listen` mode - this is set via [DiagnosticPortOptions](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options/DiagnosticPortOptions.cs). * For each type of trigger, the [dotnet diagnostics repo](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/ITraceEventTrigger.cs#L29) is responsible for determining whether the triggering conditions have been satisfied. ### Triggers -A trigger will monitor for a specific condition in the target application and raise a notification when that condition has been observed. Options for triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleTriggerOptions.cs); the type of `Settings` is determined by which trigger is being used (possible trigger types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers)). The interface for all triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Triggers/ICollectionRuleTrigger.cs) - this allows `dotnet monitor` to start and stop triggers, regardless of the trigger's properties. The collection rule pipeline creates instances of triggers [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L101) before waiting for the trigger to [satisfy its conditions](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/Pipelines/TraceEventTriggerPipeline.cs#L107) - each trigger has its own set of criteria that determines when a trigger has been satisfied. +A trigger will monitor for a specific condition in the target application and raise a notification when that condition has been observed. Options for triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleTriggerOptions.cs); the type of `Settings` is determined by which trigger is being used (possible trigger types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers)). The interface for all triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Triggers/ICollectionRuleTrigger.cs) - this allows `dotnet monitor` to start and stop triggers, regardless of the trigger's properties. The collection rule pipeline creates instances of triggers [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L101) before waiting for the trigger to [satisfy its conditions](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/Pipelines/TraceEventTriggerPipeline.cs#L107) - each trigger has its own set of criteria that determines when a trigger has been satisfied. ### Actions -Actions allow executing an operation or an external executable in response to a trigger condition being satisfied. Options for actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleActionOptions.cs); the type of `Settings` is determined by which action is being used (possible action types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Actions)). The interface for all actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Actions/ICollectionRuleAction.cs) - this allows `dotnet monitor` to start an action, wait for it to complete, and get its output values regardless of the action's properties. The action list is [executed](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L155) once the triggering condition has been met (assuming the action list isn't throttled), with each action by default starting without waiting for prior actions to complete. +Actions allow executing an operation or an external executable in response to a trigger condition being satisfied. Options for actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleActionOptions.cs); the type of `Settings` is determined by which action is being used (possible action types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Actions)). The interface for all actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Actions/ICollectionRuleAction.cs) - this allows `dotnet monitor` to start an action, wait for it to complete, and get its output values regardless of the action's properties. The action list is [executed](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L155) once the triggering condition has been met (assuming the action list isn't throttled), with each action by default starting without waiting for prior actions to complete. ### Filters -Filters can optionally be applied to a collection rule to choose which processes can trigger the rule. This uses the same set of [options](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options/ProcessFilterOptions.cs#L48) as setting the default process for `dotnet-monitor`. When starting a collection rule, [these filters are used to check if the current process should have the collection rule applied to it](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleContainer.cs#L186); if so, the collection rule starts. +Filters can optionally be applied to a collection rule to choose which processes can trigger the rule. This uses the same set of [options](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options/ProcessFilterOptions.cs#L48) as setting the default process for `dotnet-monitor`. When starting a collection rule, [these filters are used to check if the current process should have the collection rule applied to it](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleContainer.cs#L186); if so, the collection rule starts. ### Limits -Limits can optionally be applied to a collection rule to constrain the lifetime of the rule and how often its actions can be run before being throttled. Options for limits can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleLimitsOptions.cs). When provided (or when using default values), limits are evaluated in the collection rule pipeline while running. `RuleDuration` is used to [create a token](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L81) that shuts down the pipeline. `ActionCountSlidingWindowDuration` does not rely on setting cancellation tokens; rather, the number of executions within the sliding window are checked on-demand [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L211), and `ActionCount` is referenced to determine whether the rule needs to [terminate](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L194) or [throttle](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L234). +Limits can optionally be applied to a collection rule to constrain the lifetime of the rule and how often its actions can be run before being throttled. Options for limits can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleLimitsOptions.cs). When provided (or when using default values), limits are evaluated in the collection rule pipeline while running. `RuleDuration` is used to [create a token](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L81) that shuts down the pipeline. `ActionCountSlidingWindowDuration` does not rely on setting cancellation tokens; rather, the number of executions within the sliding window are checked on-demand [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L211), and `ActionCount` is referenced to determine whether the rule needs to [terminate](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L194) or [throttle](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L234). ## Miscellaneous ### Trigger Shortcuts -Trigger Shortcuts provide improved defaults, range validation, and a simpler syntax for [several commonly used `EventCounter` triggers](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts). These shortcuts provide the same functionality as using the standard `EventCounter` syntax, but have fewer available options (since there is no need to specify the `ProviderName` or the `CounterName`) - as a result, shortcuts do not inherit from `EventCounterOptions`, but rather [IEventCounterShortcuts](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts/IEventCounterShortcuts.cs). Each type of shortcut is registered independently [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L159). After binding with configuration and undergoing validation, shortcuts are then converted to be treated as `EventCounter` triggers [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs), using their respective defaults instead of the generic ones. +Trigger Shortcuts provide improved defaults, range validation, and a simpler syntax for [several commonly used `EventCounter` triggers](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts). These shortcuts provide the same functionality as using the standard `EventCounter` syntax, but have fewer available options (since there is no need to specify the `ProviderName` or the `CounterName`) - as a result, shortcuts do not inherit from `EventCounterOptions`, but rather [IEventCounterShortcuts](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts/IEventCounterShortcuts.cs). Each type of shortcut is registered independently [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L159). After binding with configuration and undergoing validation, shortcuts are then converted to be treated as `EventCounter` triggers [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs), using their respective defaults instead of the generic ones. ### Templates -Templates allow users to design reusable collection rule components by associating a name with a piece of configuration. Options for templates can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/TemplateOptions.cs). Before collection rules undergo validation, `dotnet monitor` checks to see if any of the rule's components in configuration [list the name of a template](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs) - if so, the collection rule's options are populated from the correspondingly named template. Note that templates undergo the same binding process for triggers/actions as collection rules; however, since templates are treated as separate parts of configuration, this binding instead happens [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Configuration/TemplatesConfigureNamedOptions.cs). +Templates allow users to design reusable collection rule components by associating a name with a piece of configuration. Options for templates can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/TemplateOptions.cs). Before collection rules undergo validation, `dotnet monitor` checks to see if any of the rule's components in configuration [list the name of a template](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs) - if so, the collection rule's options are populated from the correspondingly named template. Note that templates undergo the same binding process for triggers/actions as collection rules; however, since templates are treated as separate parts of configuration, this binding instead happens [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Configuration/TemplatesConfigureNamedOptions.cs). ### Collection Rule Defaults -Defaults can be used to limit the verbosity of configuration, allowing frequently used values for collection rules to be assigned as defaults. Options for collection rule defaults can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleDefaultsOptions.cs). These defaults are merged with the user's provided configuration [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/CollectionRules/Options/DefaultCollectionRulePostConfigureOptions.cs) - any properties that the user hasn't set (that have corresponding default values) will be updated at this point to use the default values. This step occurs prior to `dotnet monitor` attempting to use its built-in defaults, which allows user defaults to take precedence. +Defaults can be used to limit the verbosity of configuration, allowing frequently used values for collection rules to be assigned as defaults. Options for collection rule defaults can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleDefaultsOptions.cs). These defaults are merged with the user's provided configuration [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/DefaultCollectionRulePostConfigureOptions.cs) - any properties that the user hasn't set (that have corresponding default values) will be updated at this point to use the default values. This step occurs prior to `dotnet monitor` attempting to use its built-in defaults, which allows user defaults to take precedence. ### Collection Rule API Endpoint -The Collection Rule API Endpoint allows users to get information about the state of their collection rules, providing general information [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L500) and more specific information about a particular rule [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L522). **This API is solely for viewing the current state of rules, not altering state**. +The Collection Rule API Endpoint allows users to get information about the state of their collection rules, providing general information [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L500) and more specific information about a particular rule [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L522). **This API is solely for viewing the current state of rules, not altering state**. -Each collection rule pipeline has a [state holder](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs) that keeps track of the rule's execution. By keeping track of the pipeline's state in real-time, this state doesn't need to be calculated in response to a user hitting the `/collectionrules` endpoint. However, other user-facing information, such as countdowns, are calculated on-demand - these values are solely for display purposes and not used by `dotnet-monitor` when determining when to change state (see [Limits](#limits) for more information). +Each collection rule pipeline has a [state holder](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs) that keeps track of the rule's execution. By keeping track of the pipeline's state in real-time, this state doesn't need to be calculated in response to a user hitting the `/collectionrules` endpoint. However, other user-facing information, such as countdowns, are calculated on-demand - these values are solely for display purposes and not used by `dotnet-monitor` when determining when to change state (see [Limits](#limits) for more information). ## Keeping Documentation Up-To-Date -When making changes to collection rules that require updates to configuration, these changes should be added [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/configuration/collection-rule-configuration.md). Additional information on collection rules and examples can be provided [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/collectionrules). +When making changes to collection rules that require updates to configuration, these changes should be added [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/configuration/collection-rule-configuration.md). Additional information on collection rules and examples can be provided [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/collectionrules). diff --git a/documentation/learningPath/configuration.md b/documentation/learningPath/configuration.md index b9e01b2ca31..3703dde6469 100644 --- a/documentation/learningPath/configuration.md +++ b/documentation/learningPath/configuration.md @@ -4,22 +4,22 @@ ## How Configuration Works -`dotnet-monitor` accepts configuration from several different sources, and must [combine these sources for the host builder](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/HostBuilder/HostBuilderHelper.cs#L48). Configuration sources are added in the order of lowest to highest precedence - meaning that if there is a conflict between a property in two configuration sources, the property found in the latter configuration source will be used. +`dotnet-monitor` accepts configuration from several different sources, and must [combine these sources for the host builder](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/HostBuilder/HostBuilderHelper.cs#L48). Configuration sources are added in the order of lowest to highest precedence - meaning that if there is a conflict between a property in two configuration sources, the property found in the latter configuration source will be used. -To see the merged configuration, the user can run the `config show` command (see [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Program.cs#L71) and [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Commands/ConfigShowCommandHandler.cs)); the `--show-sources` flag can be used to reveal which configuration source is responsible for each property. The `config show` command's output is [written out as JSON](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ConfigurationJsonWriter.cs); this section must be manually updated whenever new options are added (or existing options are changed). +To see the merged configuration, the user can run the `config show` command (see [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Program.cs#L71) and [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Commands/ConfigShowCommandHandler.cs)); the `--show-sources` flag can be used to reveal which configuration source is responsible for each property. The `config show` command's output is [written out as JSON](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ConfigurationJsonWriter.cs); this section must be manually updated whenever new options are added (or existing options are changed). -Once configuration has been merged, any singletons that have been added to the `IServiceCollection` (see [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs) and [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L84)), such as `IConfigureOptions`, `IPostConfigureOptions`, and `IValidateOptions`, are called when an object of that type is first used, **not on startup**. This step is often used to incorporate defaults for properties that were not explicitly set by configuration, or to validate that options were set correctly. +Once configuration has been merged, any singletons that have been added to the `IServiceCollection` (see [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs) and [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L84)), such as `IConfigureOptions`, `IPostConfigureOptions`, and `IValidateOptions`, are called when an object of that type is first used, **not on startup**. This step is often used to incorporate defaults for properties that were not explicitly set by configuration, or to validate that options were set correctly. -Any changes to the configuration need to be propagated to the [schema](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/schema.json). **The updated schema should be generated automatically; you should never need to manually edit the JSON.** To update the schema in Visual Studio: -* Set [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema) as the startup project +Any changes to the configuration need to be propagated to the [schema](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/schema.json). **The updated schema should be generated automatically; you should never need to manually edit the JSON.** To update the schema in Visual Studio: +* Set [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema) as the startup project * Build the project, with a single command-line argument for the schema's absolute path -* Validate that the schema was correctly updated using the tests in [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests) +* Validate that the schema was correctly updated using the tests in [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests) ## Keeping Documentation Up-To-Date -Our configuration is primarily documented [here](https://github.com/dotnet/dotnet-monitor/tree/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/configuration). Sections are typically comprised of: +Our configuration is primarily documented [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/configuration). Sections are typically comprised of: * A brief overview of the feature that is being configured * Configuration samples in all supported formats * A list of properties with descriptions, types, and whether a property is required -Types are defined in [definitions.md](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/api/definitions.md), and additional information about configuring collection rules can be found in the [collection rules](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/collectionrules) directory. Where appropriate, indicate if configuration only pertains to a specific version of `dotnet-monitor` (e.g. `7.0+`). +Types are defined in [definitions.md](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/api/definitions.md), and additional information about configuring collection rules can be found in the [collection rules](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/collectionrules) directory. Where appropriate, indicate if configuration only pertains to a specific version of `dotnet-monitor` (e.g. `7.0+`). diff --git a/documentation/learningPath/egress.md b/documentation/learningPath/egress.md index 51e05b7c6ba..7dd10ee1bde 100644 --- a/documentation/learningPath/egress.md +++ b/documentation/learningPath/egress.md @@ -23,11 +23,11 @@ graph LR class ide2 altColor ``` -1. [User initiates collection of artifact with a designated egress provider](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.WebApi/Operation/EgressOperation.cs#L45) -1. [Locate extension's executable and manifest](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Extensibility/ExtensionDiscoverer.cs#L28) -1. [Start extension and pass configuration/artifact via StdIn to the other process](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L104) -1. [Connect to egress provider using configuration and send artifact](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs#L36) -1. [Provide success/failure information via StdOut to dotnet-monitor](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L77) +1. [User initiates collection of artifact with a designated egress provider](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Operation/EgressOperation.cs#L45) +1. [Locate extension's executable and manifest](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Extensibility/ExtensionDiscoverer.cs#L28) +1. [Start extension and pass configuration/artifact via StdIn to the other process](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L104) +1. [Connect to egress provider using configuration and send artifact](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs#L36) +1. [Provide success/failure information via StdOut to dotnet-monitor](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L77) ## Distribution and Acquisition Model @@ -38,7 +38,7 @@ There are two versions of the `dotnet-monitor` image being offered: `monitor` an ### Well Known Egress Provider Locations -There are 3 [locations](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L291) that `dotnet-monitor` scans when looking for the extensions directory (the highest priority location is listed first): +There are 3 [locations](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L291) that `dotnet-monitor` scans when looking for the extensions directory (the highest priority location is listed first): - Next to the executing `dotnet-monitor` assembly - SharedConfigDirectory - On Windows, `%ProgramData%\dotnet-monitor` @@ -56,23 +56,23 @@ The distribution/acquisition model for third-party egress providers is determine ### Extension Manifest -All extensions must include a manifest titled [`extension.json`](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Extensions/AzureBlobStorage/extension.json) that provides `dotnet-monitor` with some basic information about the extension. +All extensions must include a manifest titled [`extension.json`](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Extensions/AzureBlobStorage/extension.json) that provides `dotnet-monitor` with some basic information about the extension. | Name | Required | Type | Description | |---|---|---|---| | `Name` | true | string | The name of the extension (e.g. AzureBlobStorage) that users will use when writing configuration for the egress provider. | | `ExecutableFileName` | false | string | If specified, the executable file (without extension) to be launched when executing the extension; either `AssemblyFileName` or `ExecutableFileName` must be specified. | | `AssemblyFileName` | false | string | If specified, executes the extension using the shared .NET host (e.g. dotnet.exe) with the specified entry point assembly (without extension); either `AssemblyFileName` or `ExecutableFileName` must be specified. | -| `Modes` | false | [[ExtensionMode](../api/definitions.md#extensionmode)] | Additional modes the extension can be configured to run in (see an example of Validation [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L80)). | +| `Modes` | false | [[ExtensionMode](../api/definitions.md#extensionmode)] | Additional modes the extension can be configured to run in (see an example of Validation [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L80)). | ### Configuration Extensions are designed to receive all user configuration through `dotnet monitor` - the extension itself should not rely on any additional configuration sources. -In addition to the configuration provided specifically for your egress provider, `dotnet-monitor` also includes the values stored in [`Properties`](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options/EgressOptions.cs#L21). Note that `Properties` may include information that is not relevant to the current egress provider, since it is a shared bucket between all configured egress providers. +In addition to the configuration provided specifically for your egress provider, `dotnet-monitor` also includes the values stored in [`Properties`](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options/EgressOptions.cs#L21). Note that `Properties` may include information that is not relevant to the current egress provider, since it is a shared bucket between all configured egress providers. ### Communicating With Dotnet-Monitor -[`dotnet monitor` will pass serialized configuration via `StdIn` to the extension](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L184); an example of how the `AzureBlobStorage` egress provider interprets the egress payload can be found [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L139). **It's important to validate the version number at the beginning of the stream; if an extension does not have the same version as `dotnet-monitor`, it should not attempt to continue reading from the stream, and users may need to update to a newer version of the extension.** +[`dotnet monitor` will pass serialized configuration via `StdIn` to the extension](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L184); an example of how the `AzureBlobStorage` egress provider interprets the egress payload can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L139). **It's important to validate the version number at the beginning of the stream; if an extension does not have the same version as `dotnet-monitor`, it should not attempt to continue reading from the stream, and users may need to update to a newer version of the extension.** -All output from the extension will be passed back to `dotnet-monitor`; this is logged [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L64). The contents of the `StandardOutput` and `StandardError` streams are handled and logged as seen [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L34), with the `StandardOutput` stream being logged at the `Info` level and the `StandardError` stream being logged at the `Warning` level. `Dotnet-Monitor` will continue reading output until it receives a [result](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tools/dotnet-monitor/Egress/Extension/EgressArtifactResult.cs) from the extension via the `StandardOutput` stream, at which point the extension's process will be terminated and `dotnet-monitor` will display the appropriate log message depending on the success/failure of the operation. Exceptions thrown during the egress operation are caught [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L71); this allows the extension to report a failure message back to `dotnet-monitor` that will be displayed to the user. +All output from the extension will be passed back to `dotnet-monitor`; this is logged [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L64). The contents of the `StandardOutput` and `StandardError` streams are handled and logged as seen [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L34), with the `StandardOutput` stream being logged at the `Info` level and the `StandardError` stream being logged at the `Warning` level. `Dotnet-Monitor` will continue reading output until it receives a [result](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressArtifactResult.cs) from the extension via the `StandardOutput` stream, at which point the extension's process will be terminated and `dotnet-monitor` will display the appropriate log message depending on the success/failure of the operation. Exceptions thrown during the egress operation are caught [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L71); this allows the extension to report a failure message back to `dotnet-monitor` that will be displayed to the user. diff --git a/documentation/learningPath/testing.md b/documentation/learningPath/testing.md index dc95b4502f3..160609b8987 100644 --- a/documentation/learningPath/testing.md +++ b/documentation/learningPath/testing.md @@ -4,81 +4,81 @@ Tests can be executed with the command line (via [build.cmd](../../Build.cmd) -test), as part of the PR build, or in Visual Studio. Note that because of limited resources in the build pool, tests ran from the command line or in the build pool are serialized. This avoids test failures associated with parallel testing. Visual Studio does not have such restrictions and is best used for individual tests and test investigations. When running from the command line, using the `-testgroup` parameter can be used to limit the amount of tests executed. For example `build.cmd -test -testgroup PR` will run the same tests as the PR build. -The framework of the test assemblies is controlled by [TestTargetFrameworks](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/eng/Versions.props). The test itself is attributed with a particular framework based on the [TargetFrameworkMonikerTraitAttribute](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/TargetFrameworkMonikerTraitAttribute.cs). +The framework of the test assemblies is controlled by [TestTargetFrameworks](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/eng/Versions.props). The test itself is attributed with a particular framework based on the [TargetFrameworkMonikerTraitAttribute](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/TargetFrameworkMonikerTraitAttribute.cs). ## Unit Tests -- [Microsoft.Diagnostics.Monitoring.Tool.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests) -- [Microsoft.Diagnostics.Monitoring.WebApi.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.WebApi.UnitTests/) -- [CollectionRuleActions.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/CollectionRuleActions.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.Tool.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests) +- [Microsoft.Diagnostics.Monitoring.WebApi.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.WebApi.UnitTests/) +- [CollectionRuleActions.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/CollectionRuleActions.UnitTests/) Unit test assemblies directly reference types from various dotnet-monitor assemblies. However, since most of dotnet-monitor heavily relies on code injection, there are utility classes to simplify unit test creation. -- [TestHostHelper](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/TestHostHelper.cs) can be used to setup a basic unit test scenario using dependency injection. -- [CollectionRuleOptionsExtensions](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/Options/CollectionRuleOptionsExtensions.cs) can be used to easily create collection rules from configuration. +- [TestHostHelper](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/TestHostHelper.cs) can be used to setup a basic unit test scenario using dependency injection. +- [CollectionRuleOptionsExtensions](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/Options/CollectionRuleOptionsExtensions.cs) can be used to easily create collection rules from configuration. ## Functional Tests -- [Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests) -- [Microsoft.Diagnostics.Monitoring.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/) +- [Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests) +- [Microsoft.Diagnostics.Monitoring.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/) Functional tests are composed of 3 main parts: 1. The test itself, which sets up and validates the results. 1. An instance of dotnet-monitor 1. An instance of an application that is being monitored (from the UnitTestApp assembly) -* [ScenarioRunner](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/Runners/ScenarioRunner.cs) is typically used to orchestrate test runs. The class will spawn both an instance of dotnet-monitor and an instance of test application. The app and the test communicate via stdio. The test communicates with dotnet-monitor via its Api surface. -* The dotnet-monitor Api surface can be accessed through the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs). -* New scenarios can be added [here](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/). -* The [AsyncWaitScenario](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/AsyncWaitScenario.cs) is sufficient for most tests. -* Coordination of the scenario and the test is done via message passing (json over stdio) between the test and the app. To send messages to the app from the test, [AppRunner](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/Runners/AppRunner.cs)'s `SendCommandAsync` is used. In the scenario definition, [ScenarioHelpers](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/ScenarioHelpers.cs)'s `WaitForCommandAsync` is used. This can be used to synchronize various points of the test application with the execution of the dotnet-monitor Api from the test itself. +* [ScenarioRunner](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/Runners/ScenarioRunner.cs) is typically used to orchestrate test runs. The class will spawn both an instance of dotnet-monitor and an instance of test application. The app and the test communicate via stdio. The test communicates with dotnet-monitor via its Api surface. +* The dotnet-monitor Api surface can be accessed through the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs). +* New scenarios can be added [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/). +* The [AsyncWaitScenario](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/AsyncWaitScenario.cs) is sufficient for most tests. +* Coordination of the scenario and the test is done via message passing (json over stdio) between the test and the app. To send messages to the app from the test, [AppRunner](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/Runners/AppRunner.cs)'s `SendCommandAsync` is used. In the scenario definition, [ScenarioHelpers](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/ScenarioHelpers.cs)'s `WaitForCommandAsync` is used. This can be used to synchronize various points of the test application with the execution of the dotnet-monitor Api from the test itself. ## Native/Profiler Tests -- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp/) +- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp/) This test assembly provides a test to make sure the dotnet-monitor profiler can load into a target app. ## Schema Generation -- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/) -- [Microsoft.Diagnostics.Monitoring.Options](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Microsoft.Diagnostics.Monitoring.Options) +- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/) +- [Microsoft.Diagnostics.Monitoring.Options](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options) -Dotnet-monitor generates [schema.json](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/schema.json) using unit tests. If dotnet-monitor's configuration changes, the schema.json file needs to be updated. -Note that it is possible to compile option classes directly into the `ConfigurationSchema` project. This may be necessary in order to attribute properties appropriately for schema generation. See [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj). See the [Configuration](./configuration.md#how-configuration-works) learning path for more details. +Dotnet-monitor generates [schema.json](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/schema.json) using unit tests. If dotnet-monitor's configuration changes, the schema.json file needs to be updated. +Note that it is possible to compile option classes directly into the `ConfigurationSchema` project. This may be necessary in order to attribute properties appropriately for schema generation. See [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj). See the [Configuration](./configuration.md#how-configuration-works) learning path for more details. ## OpenAPI generation -- [Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.OpenApiGen](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen/) +- [Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.OpenApiGen](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen/) -These assemblies and tests are used to generate the [OpenAPI spec](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/documentation/openapi.json) for the dotnet-monitor API. Changes to the dotnet-monitor api surface require updating `openapi.json`. +These assemblies and tests are used to generate the [OpenAPI spec](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/openapi.json) for the dotnet-monitor API. Changes to the dotnet-monitor api surface require updating `openapi.json`. If using VSCode or Codespaces, you can also use the `Regenerate openapi.json` task. ## Startup hooks / hosting startup -- [Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook/) +- [Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook/) This assembly is injected into a dotnet-monitor runner (using `DOTNET_STARTUP_HOOKS`) to facilitate Assembly resolution during test runs. -- [Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup/) +- [Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup/) Uses `ASPNETCORE_HOSTINGSTARTUPASSEMBLIES` to inject a service into dotnet-monitor during test time. This allows tests to locate files that are not normally part of the test deployment, such as the native profiler. -- [Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests/) Unit tests around features that are injected via `DOTNET_STARTUP_HOOKS` into the target application. This currently includes the Exceptions History feature. ## Misc test assemblies -- [Microsoft.Diagnostics.Monitoring.TestCommon](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/) +- [Microsoft.Diagnostics.Monitoring.TestCommon](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/) Utility classes that are shared between Unit Tests and Functional Tests. -- [Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon](https://github.com/dotnet/dotnet-monitor/blob/9ba2e5558604d3ee17edf914cc37fc50ba8ea256/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/) +- [Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/) Utility classes shared between unit test assemblies. From 03122899b72e8761ee68261cf4aff1b2774037a4 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 02:57:03 +0000 Subject: [PATCH 077/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250714.1 (#8408) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index bd90d64abb0..dd3002eb7e3 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - c3c57bbd7ce6950087b2e99be7a1a1170cf94923 + 3d11b96dce35ba8c590ccce46884b2230f177ab6 - + https://github.com/dotnet/diagnostics - c3c57bbd7ce6950087b2e99be7a1a1170cf94923 + 3d11b96dce35ba8c590ccce46884b2230f177ab6 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics - c3c57bbd7ce6950087b2e99be7a1a1170cf94923 + 3d11b96dce35ba8c590ccce46884b2230f177ab6 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index aa7a0b0279b..dbb02e90fe7 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25353.2 - 9.0.0-preview.25362.1 - 9.0.0-preview.25362.1 + 9.0.0-preview.25364.1 + 9.0.0-preview.25364.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.636201 + 1.0.636401 $(MicrosoftNETCoreApp80Version) From cd0c56288e0ab733f0a7080c05676687c808f15b Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 16 Jul 2025 03:07:07 +0000 Subject: [PATCH 078/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250715.6 (#8413) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index dd3002eb7e3..242511149e7 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 3d11b96dce35ba8c590ccce46884b2230f177ab6 + 15863918a40fc31d0498ca5f1b8a5f7f7ada113a - + https://github.com/dotnet/diagnostics - 3d11b96dce35ba8c590ccce46884b2230f177ab6 + 15863918a40fc31d0498ca5f1b8a5f7f7ada113a https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 13b20849f8294593bf150a801cab639397e6c29d - + https://github.com/dotnet/diagnostics - 3d11b96dce35ba8c590ccce46884b2230f177ab6 + 15863918a40fc31d0498ca5f1b8a5f7f7ada113a https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index dbb02e90fe7..51405c823e4 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25353.2 - 9.0.0-preview.25364.1 - 9.0.0-preview.25364.1 + 9.0.0-preview.25365.6 + 9.0.0-preview.25365.6 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.636401 + 1.0.636506 $(MicrosoftNETCoreApp80Version) From e458a306bdb97ba7d1f6c9833bce06fb6555a0eb Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 18 Jul 2025 16:10:07 +0000 Subject: [PATCH 079/112] Update dependencies from https://github.com/dotnet/arcade build 20250716.1 (#8417) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- eng/common/tools.ps1 | 2 +- global.json | 4 ++-- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 242511149e7..ff1f0daee3a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 13b20849f8294593bf150a801cab639397e6c29d + 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/arcade - 13b20849f8294593bf150a801cab639397e6c29d + 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/arcade - 13b20849f8294593bf150a801cab639397e6c29d + 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/arcade - 13b20849f8294593bf150a801cab639397e6c29d + 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/arcade - 13b20849f8294593bf150a801cab639397e6c29d + 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index 51405c823e4..34b38f01df1 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25325.4 - 9.0.0-beta.25325.4 - 9.0.0-beta.25325.4 + 9.0.0-beta.25366.1 + 9.0.0-beta.25366.1 + 9.0.0-beta.25366.1 9.0.1 9.0.1-rtm.24610.9 diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index 22b49e09d09..9b3ad8840fd 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -416,7 +416,7 @@ function InitializeVisualStudioMSBuild([bool]$install, [object]$vsRequirements = # Locate Visual Studio installation or download x-copy msbuild. $vsInfo = LocateVisualStudio $vsRequirements - if ($vsInfo -ne $null) { + if ($vsInfo -ne $null -and $env:ForceUseXCopyMSBuild -eq $null) { # Ensure vsInstallDir has a trailing slash $vsInstallDir = Join-Path $vsInfo.installationPath "\" $vsMajorVersion = $vsInfo.installationVersion.Split('.')[0] diff --git a/global.json b/global.json index 271bd7895f0..54c76ddb6e9 100644 --- a/global.json +++ b/global.json @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25325.4", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25325.4" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25366.1", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25366.1" } } From 195b7851dbbc9c64249b03bec309361cc64bdb02 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 13:14:01 -0700 Subject: [PATCH 080/112] Bump streetsidesoftware/cspell-action from 7.1.1 to 7.1.2 (#8424) Bumps [streetsidesoftware/cspell-action](https://github.com/streetsidesoftware/cspell-action) from 7.1.1 to 7.1.2. - [Release notes](https://github.com/streetsidesoftware/cspell-action/releases) - [Changelog](https://github.com/streetsidesoftware/cspell-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/streetsidesoftware/cspell-action/compare/157048954070986ce4315d0813573a2d8faee361...6f05386161564ebe24dcfa1513cde203230d1edc) --- updated-dependencies: - dependency-name: streetsidesoftware/cspell-action dependency-version: 7.1.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/spellcheck.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index d8bff7f16ae..ad5d583b387 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -17,7 +17,7 @@ jobs: with: persist-credentials: false - - uses: streetsidesoftware/cspell-action@157048954070986ce4315d0813573a2d8faee361 + - uses: streetsidesoftware/cspell-action@6f05386161564ebe24dcfa1513cde203230d1edc name: Documentation spellcheck if: ${{ !cancelled() }} with: @@ -25,7 +25,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@157048954070986ce4315d0813573a2d8faee361 + - uses: streetsidesoftware/cspell-action@6f05386161564ebe24dcfa1513cde203230d1edc name: Resx spellcheck if: ${{ !cancelled() }} with: @@ -33,7 +33,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@157048954070986ce4315d0813573a2d8faee361 + - uses: streetsidesoftware/cspell-action@6f05386161564ebe24dcfa1513cde203230d1edc name: Source code spellcheck if: ${{ !cancelled() }} with: From 989a8f55a30df010976d0e176a2f0a52b273fabc Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 13:14:40 -0700 Subject: [PATCH 081/112] [main] Update dependencies from dotnet/diagnostics (#8416) * Update dependencies from https://github.com/dotnet/diagnostics build 20250716.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25365.6 -> To Version 9.0.0-preview.25366.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250717.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25365.6 -> To Version 9.0.0-preview.25367.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250718.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25365.6 -> To Version 9.0.0-preview.25368.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250719.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25365.6 -> To Version 9.0.0-preview.25369.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250720.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25365.6 -> To Version 9.0.0-preview.25370.1 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index ff1f0daee3a..cd59fcc5821 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 15863918a40fc31d0498ca5f1b8a5f7f7ada113a + fcaeae336c70cc9af2f7627c4b785c5eade0787f - + https://github.com/dotnet/diagnostics - 15863918a40fc31d0498ca5f1b8a5f7f7ada113a + fcaeae336c70cc9af2f7627c4b785c5eade0787f https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics - 15863918a40fc31d0498ca5f1b8a5f7f7ada113a + fcaeae336c70cc9af2f7627c4b785c5eade0787f https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 34b38f01df1..60ea11fe911 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25353.2 - 9.0.0-preview.25365.6 - 9.0.0-preview.25365.6 + 9.0.0-preview.25370.1 + 9.0.0-preview.25370.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.636506 + 1.0.637001 $(MicrosoftNETCoreApp80Version) From ccc3043ea6c9ea729665ccce5637b6c03a2f9be9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 13:15:07 -0700 Subject: [PATCH 082/112] [main] Bump the azure-sdk-dependencies group with 3 updates (#8410) Bumps Azure.Identity from 1.14.1 to 1.14.2 Bumps Azure.Storage.Blobs from 12.24.1 to 12.25.0 Bumps Azure.Storage.Queues from 12.22.0 to 12.23.0 --- updated-dependencies: - dependency-name: Azure.Identity dependency-version: 1.14.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdk-dependencies - dependency-name: Azure.Storage.Blobs dependency-version: 12.25.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: azure-sdk-dependencies - dependency-name: Azure.Storage.Queues dependency-version: 12.23.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: azure-sdk-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index b96a7dee0a7..4bc7860ef54 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -3,9 +3,9 @@ 1.47.0 - 1.14.1 - 12.24.1 - 12.22.0 + 1.14.2 + 12.25.0 + 12.23.0 3.10.0 1.6.24 4.3.2 From f92f8d5c54523e32dbec14e969e6d79ca59ec5dd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 13:18:47 -0700 Subject: [PATCH 083/112] Bump actions/first-interaction from 1.3.0 to 2.0.0 (#8415) Bumps [actions/first-interaction](https://github.com/actions/first-interaction) from 1.3.0 to 2.0.0. - [Release notes](https://github.com/actions/first-interaction/releases) - [Commits](https://github.com/actions/first-interaction/compare/34f15e814fe48ac9312ccf29db4e74fa767cbab7...2d4393e6bc0e2efb2e48fba7e06819c3bf61ffc9) --- updated-dependencies: - dependency-name: actions/first-interaction dependency-version: 2.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/respond-to-first-issue.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/respond-to-first-issue.yml b/.github/workflows/respond-to-first-issue.yml index 5a4aca5f4ac..e619dd39c49 100644 --- a/.github/workflows/respond-to-first-issue.yml +++ b/.github/workflows/respond-to-first-issue.yml @@ -12,7 +12,7 @@ jobs: permissions: issues: write steps: - - uses: actions/first-interaction@34f15e814fe48ac9312ccf29db4e74fa767cbab7 + - uses: actions/first-interaction@2d4393e6bc0e2efb2e48fba7e06819c3bf61ffc9 with: repo-token: ${{ secrets.GITHUB_TOKEN }} issue-message: "## Welcome to dotnet-monitor!\nThanks for creating your first issue; let us know what you think of dotnet-monitor by filling out our [survey](https://aka.ms/dotnet-monitor-survey?src=firstissue)." From ae0029eef7b67b05aae1199d38b1c3b69226b3a0 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 14:59:03 -0700 Subject: [PATCH 084/112] [main] Update dependencies from dotnet/command-line-api (#8395) * Update dependencies from https://github.com/dotnet/command-line-api build 20250708.2 System.CommandLine From Version 2.0.0-beta7.25353.2 -> To Version 2.0.0-beta7.25358.2 * Update dependencies from https://github.com/dotnet/command-line-api build 20250709.1 System.CommandLine From Version 2.0.0-beta7.25353.2 -> To Version 2.0.0-beta7.25359.1 * Update dependencies from https://github.com/dotnet/command-line-api build 20250715.1 System.CommandLine From Version 2.0.0-beta7.25353.2 -> To Version 2.0.0-beta7.25365.1 * Fixup command line --------- Co-authored-by: dotnet-maestro[bot] Co-authored-by: Wiktor Kopec --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- src/Tools/dotnet-monitor/Program.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index cd59fcc5821..ebe9f8f3511 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics fcaeae336c70cc9af2f7627c4b785c5eade0787f - + https://github.com/dotnet/command-line-api - d9bee5fddf7de066002c13adcb5ecdfc566d83d0 + dbc3781d3398b69cd9ffe24f60a7b77110bdadbf diff --git a/eng/Versions.props b/eng/Versions.props index 60ea11fe911..e2021b11d1c 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta7.25353.2 + 2.0.0-beta7.25365.1 9.0.0-preview.25370.1 9.0.0-preview.25370.1 diff --git a/src/Tools/dotnet-monitor/Program.cs b/src/Tools/dotnet-monitor/Program.cs index 2547446eba4..3a9b7b1f0b9 100644 --- a/src/Tools/dotnet-monitor/Program.cs +++ b/src/Tools/dotnet-monitor/Program.cs @@ -27,7 +27,7 @@ private static Command GenerateApiKeyCommand() GenerateApiKeyCommandHandler.Invoke( result.GetValue(OutputOption), result.GetValue(ExpirationOption), - result.Configuration.Output); + result.InvocationConfiguration.Output); }); return command; From 05d3dca40ec87ddda35aa7def72e1383606283f4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Jul 2025 16:11:32 -0700 Subject: [PATCH 085/112] [main] Bump the identity-dependencies group with 1 update (#8429) Bumps Microsoft.Identity.Web from 3.10.0 to 3.11.0 --- updated-dependencies: - dependency-name: Microsoft.Identity.Web dependency-version: 3.11.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: identity-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index 4bc7860ef54..66565c614ad 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -2,11 +2,11 @@ - 1.47.0 + 1.47.1 1.14.2 12.25.0 12.23.0 - 3.10.0 + 3.11.0 1.6.24 4.3.2 5.0.0 From 2f47e59d8c89c35bd688ec980fe51d3a6e8abe0f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Jul 2025 16:12:24 -0700 Subject: [PATCH 086/112] [main] Bump the azure-sdk-dependencies group with 1 update (#8427) Bumps Azure.Core from 1.47.0 to 1.47.1 --- updated-dependencies: - dependency-name: Azure.Core dependency-version: 1.47.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdk-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> From 11010855e542b90f224a7b6af8663c90f22abedf Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 22 Jul 2025 23:51:07 +0000 Subject: [PATCH 087/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250721.1 (#8425) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index ebe9f8f3511..51dcf464bbd 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - fcaeae336c70cc9af2f7627c4b785c5eade0787f + 790647464027d129ad72b901d25ecaba8474e9c6 - + https://github.com/dotnet/diagnostics - fcaeae336c70cc9af2f7627c4b785c5eade0787f + 790647464027d129ad72b901d25ecaba8474e9c6 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics - fcaeae336c70cc9af2f7627c4b785c5eade0787f + 790647464027d129ad72b901d25ecaba8474e9c6 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index e2021b11d1c..16865c8aa60 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25365.1 - 9.0.0-preview.25370.1 - 9.0.0-preview.25370.1 + 9.0.0-preview.25371.1 + 9.0.0-preview.25371.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637001 + 1.0.637101 $(MicrosoftNETCoreApp80Version) From 5d111818d06c18c22d620ec820a4e9812703a9c5 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 23 Jul 2025 02:57:43 +0000 Subject: [PATCH 088/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250722.1 (#8434) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 51dcf464bbd..f71f3b5b119 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 790647464027d129ad72b901d25ecaba8474e9c6 - + https://github.com/dotnet/diagnostics 790647464027d129ad72b901d25ecaba8474e9c6 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics 790647464027d129ad72b901d25ecaba8474e9c6 diff --git a/eng/Versions.props b/eng/Versions.props index 16865c8aa60..999fd61b177 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25365.1 - 9.0.0-preview.25371.1 - 9.0.0-preview.25371.1 + 9.0.0-preview.25372.1 + 9.0.0-preview.25372.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637101 + 1.0.637201 $(MicrosoftNETCoreApp80Version) From b734e3ac2f297897048e1b4f9cd6bcdfb927eef9 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Fri, 25 Jul 2025 15:26:54 -0700 Subject: [PATCH 089/112] Publish dotnet monitor sha512 files to `dotnetcli` instead of `dotnetclichecksums` (#8439) * Initial plan * Fix checksum publishing to use dotnetcli instead of dotnetclichecksums Co-authored-by: wiktork <15879456+wiktork@users.noreply.github.com> * Fix documentation wording for single storage account usage Co-authored-by: lbussell <36081148+lbussell@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: wiktork <15879456+wiktork@users.noreply.github.com> Co-authored-by: lbussell <36081148+lbussell@users.noreply.github.com> --- documentation/release-process.md | 8 ++++---- eng/pipelines/dotnet-monitor-release.yml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/documentation/release-process.md b/documentation/release-process.md index 386b836cc3e..19282ece9bf 100644 --- a/documentation/release-process.md +++ b/documentation/release-process.md @@ -109,14 +109,14 @@ The remainder of the release will automatically push NuGet packages to nuget.org ## Release to Storage Accounts -1. Approximately 3 days before Docker image release, execute a dry-run of the [dotnet-monitor-release](https://dev.azure.com/dnceng/internal/_build?definitionId=1103) pipeline (`Branch` should be set to `main`; `IsDryRun` should be checked; uncheck `IsTestRun`; under `Resources`, select the `dotnet monitor` build from which assets will be published). This will validate that the `.nupkg` files can be published to the `dotnetcli` storage account and checksums can be published to the `dotnetclichecksums` storage account. -1. **For release/\* build**: The **day before** Docker image release, execute run of the [dotnet-monitor-release](https://dev.azure.com/dnceng/internal/_build?definitionId=1103) pipeline (`Branch` should be set to `main`; uncheck `IsDryRun`; uncheck `IsTestRun`; under `Resources`, select the `dotnet monitor` build from which assets will be published). This will publish the archive files to the `dotnetcli` storage account and the checksums to the `dotnetclichecksums` storage account. -1. **For internal/release/\* build**: The **morning of** Docker image release, execute run of the [dotnet-monitor-release](https://dev.azure.com/dnceng/internal/_build?definitionId=1103) pipeline (`Branch` should be set to `main`; uncheck `IsDryRun`; uncheck `IsTestRun`; under `Resources`, select the `dotnet monitor` build from which assets will be published). This will publish the archive files to the `dotnetcli` storage account and the checksums to the `dotnetclichecksums` storage account. Make sure that .NET has started to officially release. Be sure to coordinate the timing of this publish process with the .NET Containers team. +1. Approximately 3 days before Docker image release, execute a dry-run of the [dotnet-monitor-release](https://dev.azure.com/dnceng/internal/_build?definitionId=1103) pipeline (`Branch` should be set to `main`; `IsDryRun` should be checked; uncheck `IsTestRun`; under `Resources`, select the `dotnet monitor` build from which assets will be published). This will validate that the `.nupkg` files and checksums can be published to the `dotnetcli` storage account. +1. **For release/\* build**: The **day before** Docker image release, execute run of the [dotnet-monitor-release](https://dev.azure.com/dnceng/internal/_build?definitionId=1103) pipeline (`Branch` should be set to `main`; uncheck `IsDryRun`; uncheck `IsTestRun`; under `Resources`, select the `dotnet monitor` build from which assets will be published). This will publish the archive files and checksums to the `dotnetcli` storage account. +1. **For internal/release/\* build**: The **morning of** Docker image release, execute run of the [dotnet-monitor-release](https://dev.azure.com/dnceng/internal/_build?definitionId=1103) pipeline (`Branch` should be set to `main`; uncheck `IsDryRun`; uncheck `IsTestRun`; under `Resources`, select the `dotnet monitor` build from which assets will be published). This will publish the archive files and checksums to the `dotnetcli` storage account. Make sure that .NET has started to officially release. Be sure to coordinate the timing of this publish process with the .NET Containers team. ## Release Docker Images 1. Contact .NET Containers team with final version that should be released. This version should be latest version in the `nightly` branch. -1. Docker image build from main branch requires assets to be published to `dotnetcli` and `dotnetclichecksums` storage accounts. See [Release to Storage Accounts](#release-to-storage-accounts). +1. Docker image build from main branch requires assets to be published to the `dotnetcli` storage account. See [Release to Storage Accounts](#release-to-storage-accounts). 1. The .NET Containers team will merge from `nightly` branch to `main` branch and wait for `dotnet-monitor` team approval. Typically, these changes are completed the day before the release date. 1. The .NET Containers team will start the build ahead of the release and wait for the all-clear from `dotnet-monitor` team before publishing the images. diff --git a/eng/pipelines/dotnet-monitor-release.yml b/eng/pipelines/dotnet-monitor-release.yml index b8b87e2f1af..d406bf92c3f 100644 --- a/eng/pipelines/dotnet-monitor-release.yml +++ b/eng/pipelines/dotnet-monitor-release.yml @@ -117,7 +117,7 @@ extends: - name: DestinationAccountName value: dotnetcli - name: ChecksumsAccountName - value: dotnetclichecksums + value: dotnetcli workspace: clean: all From b1570ad10ecd4fc2dcf7b2308998ea5cd7305b4a Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 27 Jul 2025 14:38:52 -0700 Subject: [PATCH 090/112] [main] Update dependencies from dotnet/diagnostics (#8441) * Update dependencies from https://github.com/dotnet/diagnostics build 20250724.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25372.1 -> To Version 9.0.0-preview.25374.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250725.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25372.1 -> To Version 9.0.0-preview.25375.1 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index f71f3b5b119..aaa6e0bf302 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 790647464027d129ad72b901d25ecaba8474e9c6 + 24de8bfbfd5795acd1dde863ed8172d538a9f585 - + https://github.com/dotnet/diagnostics - 790647464027d129ad72b901d25ecaba8474e9c6 + 24de8bfbfd5795acd1dde863ed8172d538a9f585 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics - 790647464027d129ad72b901d25ecaba8474e9c6 + 24de8bfbfd5795acd1dde863ed8172d538a9f585 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 999fd61b177..f6ec7e82bee 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-beta7.25365.1 - 9.0.0-preview.25372.1 - 9.0.0-preview.25372.1 + 9.0.0-preview.25375.1 + 9.0.0-preview.25375.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637201 + 1.0.637501 $(MicrosoftNETCoreApp80Version) From f3d573b17f01cbdc6acf71a7cba108ba0696fe00 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 27 Jul 2025 16:11:56 -0700 Subject: [PATCH 091/112] [main] Update dependencies from dotnet/command-line-api (#8442) * Update dependencies from https://github.com/dotnet/command-line-api build 20250724.1 System.CommandLine From Version 2.0.0-beta7.25365.1 -> To Version 2.0.0-rc.1.25374.1 * Update dependencies from https://github.com/dotnet/command-line-api build 20250725.2 System.CommandLine From Version 2.0.0-beta7.25365.1 -> To Version 2.0.0-rc.1.25375.2 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index aaa6e0bf302..f4f78c2b1fa 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 - + https://github.com/dotnet/command-line-api - dbc3781d3398b69cd9ffe24f60a7b77110bdadbf + e68587e7ac93a5b02feaa71bd714544e0e41d568 diff --git a/eng/Versions.props b/eng/Versions.props index f6ec7e82bee..210f911f649 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-beta7.25365.1 + 2.0.0-rc.1.25375.2 9.0.0-preview.25375.1 9.0.0-preview.25375.1 From 2666784927de2f2ca4d806d255fb9530f3b3559f Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 02:55:16 +0000 Subject: [PATCH 092/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250727.1 (#8451) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index f4f78c2b1fa..a938998a7ac 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 - + https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 diff --git a/eng/Versions.props b/eng/Versions.props index 210f911f649..44eb5c228fe 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-rc.1.25375.2 - 9.0.0-preview.25375.1 - 9.0.0-preview.25375.1 + 9.0.0-preview.25377.1 + 9.0.0-preview.25377.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637501 + 1.0.637701 $(MicrosoftNETCoreApp80Version) From 01bd9cb54b2c24397cdc25059f9cff9c1af2912c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 29 Jul 2025 02:57:12 +0000 Subject: [PATCH 093/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250728.1 (#8454) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 6 +++--- eng/Versions.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index a938998a7ac..fdf6fca0de7 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,11 +4,11 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 - + https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 @@ -42,7 +42,7 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 diff --git a/eng/Versions.props b/eng/Versions.props index 44eb5c228fe..aaf0e6339d0 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-rc.1.25375.2 - 9.0.0-preview.25377.1 - 9.0.0-preview.25377.1 + 9.0.0-preview.25378.1 + 9.0.0-preview.25378.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637701 + 1.0.637801 $(MicrosoftNETCoreApp80Version) From 9ed4b74f9d7edb009454a1ac4bec1348642e38f7 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 29 Jul 2025 17:48:07 +0000 Subject: [PATCH 094/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250728.1 (#8455) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index fdf6fca0de7..b8c419d585a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 24de8bfbfd5795acd1dde863ed8172d538a9f585 - + https://github.com/dotnet/command-line-api - e68587e7ac93a5b02feaa71bd714544e0e41d568 + 0a63bad40daacd4999d273d95dac663496f628df diff --git a/eng/Versions.props b/eng/Versions.props index aaf0e6339d0..7e574c224eb 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-rc.1.25375.2 + 2.0.0-rc.1.25378.1 9.0.0-preview.25378.1 9.0.0-preview.25378.1 From 2b65dafdf52db2af8ebbd5f9ff4d028bbb889385 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 30 Jul 2025 03:13:31 +0000 Subject: [PATCH 095/112] Update dependencies from https://github.com/dotnet/diagnostics build 20250729.1 (#8460) [main] Update dependencies from dotnet/diagnostics --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index b8c419d585a..2083791f723 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 24de8bfbfd5795acd1dde863ed8172d538a9f585 + 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 - + https://github.com/dotnet/diagnostics - 24de8bfbfd5795acd1dde863ed8172d538a9f585 + 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f - + https://github.com/dotnet/diagnostics - 24de8bfbfd5795acd1dde863ed8172d538a9f585 + 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index 7e574c224eb..9374d6be5d6 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-rc.1.25378.1 - 9.0.0-preview.25378.1 - 9.0.0-preview.25378.1 + 9.0.0-preview.25379.1 + 9.0.0-preview.25379.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637801 + 1.0.637901 $(MicrosoftNETCoreApp80Version) From e973263b09f539d9e3751799a1c4416d0b9b2749 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 31 Jul 2025 02:58:21 +0000 Subject: [PATCH 096/112] Update dependencies from https://github.com/dotnet/arcade build 20250730.1 (#8463) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- global.json | 4 ++-- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 2083791f723..d937204d58a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f + 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 - + https://github.com/dotnet/arcade - 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f + 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 - + https://github.com/dotnet/arcade - 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f + 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 - + https://github.com/dotnet/arcade - 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f + 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 - + https://github.com/dotnet/arcade - 1a2e280a031aaed0dca606ec8c59c6fe0f9bfc7f + 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index 9374d6be5d6..3b722f2547d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25366.1 - 9.0.0-beta.25366.1 - 9.0.0-beta.25366.1 + 9.0.0-beta.25380.1 + 9.0.0-beta.25380.1 + 9.0.0-beta.25380.1 9.0.1 9.0.1-rtm.24610.9 diff --git a/global.json b/global.json index 54c76ddb6e9..b5543fc69ec 100644 --- a/global.json +++ b/global.json @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25366.1", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25366.1" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25380.1", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25380.1" } } From 51a6fa3b8ba50d4d27159e2be8e655c6d45cc492 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 1 Aug 2025 03:02:56 +0000 Subject: [PATCH 097/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250731.1 (#8469) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d937204d58a..740c3fff0ff 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 - + https://github.com/dotnet/command-line-api - 0a63bad40daacd4999d273d95dac663496f628df + 1f2adb879324452ff2403b6b9d3f49825eb2bebc diff --git a/eng/Versions.props b/eng/Versions.props index 3b722f2547d..b67b14008a1 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-rc.1.25378.1 + 2.0.0-rc.1.25381.1 9.0.0-preview.25379.1 9.0.0-preview.25379.1 From 1fe8c186380857f6047c09b88784d4ad12a7cb86 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 4 Aug 2025 15:31:03 -0700 Subject: [PATCH 098/112] generate release notes (#8476) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- documentation/releaseNotes/releaseNotes.v8.1.2.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 documentation/releaseNotes/releaseNotes.v8.1.2.md diff --git a/documentation/releaseNotes/releaseNotes.v8.1.2.md b/documentation/releaseNotes/releaseNotes.v8.1.2.md new file mode 100644 index 00000000000..f5abf0af9f8 --- /dev/null +++ b/documentation/releaseNotes/releaseNotes.v8.1.2.md @@ -0,0 +1,7 @@ +Today we are releasing the 8.1.2 build of the `dotnet monitor` tool. This release includes: + +- Updated dependencies + + + +If you would like to provide additional feedback to the team [please fill out this survey](https://aka.ms/dotnet-monitor-survey?src=rn). \ No newline at end of file From 671651d9f481a1de1f737f6736dea358dd99ea2d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 4 Aug 2025 15:31:21 -0700 Subject: [PATCH 099/112] generate release notes (#8475) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- documentation/releaseNotes/releaseNotes.v9.0.4.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 documentation/releaseNotes/releaseNotes.v9.0.4.md diff --git a/documentation/releaseNotes/releaseNotes.v9.0.4.md b/documentation/releaseNotes/releaseNotes.v9.0.4.md new file mode 100644 index 00000000000..b2e1d049ad7 --- /dev/null +++ b/documentation/releaseNotes/releaseNotes.v9.0.4.md @@ -0,0 +1,7 @@ +Today we are releasing the 9.0.4 build of the `dotnet monitor` tool. This release includes: + +- Updated dependencies + + + +If you would like to provide additional feedback to the team [please fill out this survey](https://aka.ms/dotnet-monitor-survey?src=rn). \ No newline at end of file From 641010673793dd8bf5d514bf6ac6da44c71baeec Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 5 Aug 2025 04:14:24 +0000 Subject: [PATCH 100/112] Update dependencies from https://github.com/dotnet/command-line-api build 20250804.2 (#8477) [main] Update dependencies from dotnet/command-line-api --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 740c3fff0ff..3d746a1b11d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 - + https://github.com/dotnet/command-line-api - 1f2adb879324452ff2403b6b9d3f49825eb2bebc + 1decc9de664fd11afb282b9b4eecd09ccd70dbde diff --git a/eng/Versions.props b/eng/Versions.props index b67b14008a1..a9ea1ee24c9 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-rc.1.25381.1 + 2.0.0-rc.1.25404.2 9.0.0-preview.25379.1 9.0.0-preview.25379.1 From 9b3a65e058f0c24c00b3f74fc768e623ed4673d1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 6 Aug 2025 10:15:29 -0700 Subject: [PATCH 101/112] Register new release information (#8483) * Register v8.1.2 release information * Register v9.0.4 release information --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/releases.json | 8 ++++---- documentation/releases.md | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/releases.json b/.github/releases.json index db213637684..8f5e9173ef6 100644 --- a/.github/releases.json +++ b/.github/releases.json @@ -35,17 +35,17 @@ "outOfSupportDate": "2025-05-11T00:00:00.000Z" }, "9.0": { - "tag": "v9.0.3", + "tag": "v9.0.4", "minorReleaseDate": "2024-11-12T00:00:00.000Z", - "patchReleaseDate": "2025-05-13T00:00:00.000Z", + "patchReleaseDate": "2025-08-06T00:00:00.000Z", "supportedFrameworks": [ "net9.0" ] }, "8.1": { - "tag": "v8.1.1", + "tag": "v8.1.2", "minorReleaseDate": "2025-02-11T00:00:00.000Z", - "patchReleaseDate": "2025-05-14T00:00:00.000Z", + "patchReleaseDate": "2025-08-06T00:00:00.000Z", "supportedFrameworks": [ "net8.0" ] diff --git a/documentation/releases.md b/documentation/releases.md index b757800cd95..de20cc2a32a 100644 --- a/documentation/releases.md +++ b/documentation/releases.md @@ -4,8 +4,8 @@ | Version | Original Release Date | Latest Patch Version | Patch Release Date | End of Support | Runtime Frameworks | | --- | --- | --- | --- | --- | --- | -| 9.0 | November 12, 2024 | [9.0.3](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.0.3) | May 13, 2025 | | net9.0 | -| 8.1 | February 11, 2025 | [8.1.1](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.1.1) | May 14, 2025 | | net8.0 | +| 9.0 | November 12, 2024 | [9.0.4](https://github.com/dotnet/dotnet-monitor/releases/tag/v9.0.4) | August 6, 2025 | | net9.0 | +| 8.1 | February 11, 2025 | [8.1.2](https://github.com/dotnet/dotnet-monitor/releases/tag/v8.1.2) | August 6, 2025 | | net8.0 | ## Out of support versions From 0c962f9be5b54ca4e5c5c7a495812bc011be14ca Mon Sep 17 00:00:00 2001 From: Wiktor Kopec Date: Wed, 6 Aug 2025 12:43:23 -0700 Subject: [PATCH 102/112] Update release pipeline (#8485) * Updated dotnet-monitor-release.yml * inline all scripts * Remove checkout * More script removal * publish build logs not allowed * auth attempt * hardcode versions * Checksums and logs * Single source + maestro api testing * Use pipeline variable for token * No token * Use entra app id * Add az login * az login no params * Use darc cli * Add ci * Comments --- .vscode/settings.json | 4 +- eng/pipelines/dotnet-monitor-release.yml | 409 ++++++++++++++++++++--- 2 files changed, 367 insertions(+), 46 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 1142807f19e..8c2fce6cb63 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -29,7 +29,6 @@ "omnisharp.enableAsyncCompletion": true, "omnisharp.enableEditorConfigSupport": true, "omnisharp.enableRoslynAnalyzers": true, - "omnisharp.organizeImportsOnFormat": true, "omnisharp.autoStart": true, // ms-vscode.powershell settings @@ -47,5 +46,6 @@ "xml", "msbuild", "javascript" - ] + ], + "dotnet.formatting.organizeImportsOnFormat": true } diff --git a/eng/pipelines/dotnet-monitor-release.yml b/eng/pipelines/dotnet-monitor-release.yml index d406bf92c3f..afb469b6514 100644 --- a/eng/pipelines/dotnet-monitor-release.yml +++ b/eng/pipelines/dotnet-monitor-release.yml @@ -22,6 +22,144 @@ variables: value: ${{ parameters.IsTestRun }} readonly: true + # There are restrictions on what we can do in a release pipeline. + # - We cannot publish artifacts (which means the azcopy logs are now not published just written out) + # - We cannot checkout the source code + # - All powershell scripts were inlined in the pipeline. + # - Darc installation is done via tasks instead of darc-init. + # - We share scripts between the validation and publish stages as variables. + + # Future improvements / TODO + # - Move the scripts into yaml template assuming the release job allows it + # - Save the results of build version / release version from the validation job and use it in the release job + # - Validate that dotnetcli can be used for checksums + +- name: GetBarIdScript + value: | + $ErrorActionPreference = 'Stop' + Set-StrictMode -Version 2.0 + + $BuildId = "$(resources.pipeline.Build.runID)" + $TaskVariableName = 'BarId' + + if ([String]::IsNullOrEmpty($env:System_AccessToken)) { + Write-Error 'System access token missing, this script needs access.' + } + + $tagsUri = "${env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI}${env:SYSTEM_TEAMPROJECT}/_apis/build/builds/$BuildId/tags?api-version=6.0" + $buildData = Invoke-RestMethod ` + -Uri $tagsUri ` + -Method 'GET' ` + -Headers @{ 'accept' = 'application/json'; 'Authorization' = "Bearer ${env:System_AccessToken}" } + + Write-Verbose 'BuildData:' + $buildDataJson = $buildData | ConvertTo-Json + Write-Verbose $buildDataJson + + $barId = -1; + $buildData.Value | Foreach-Object { + if ($_.StartsWith('BAR ID - ')) { + if ($barId -ne -1) { + Write-Error 'Multiple BAR IDs found in tags.' + } + $barId = $_.SubString(9) + } + } + + if ($barId -eq -1) { + Write-Error 'Failed to get BAR ID from tags.' + } + + Write-Verbose "BAR ID: $barId" + + Write-Host "##vso[task.setvariable variable=$TaskVariableName]$barId" + Write-Output $barId + readonly: true +- name: GetReleaseVersionScript + value: | + $ErrorActionPreference = 'Stop' + Set-StrictMode -Version 2.0 + + $BarId = "$(BarId)" + $TaskVariableName = 'ReleaseVersion' + + try { + # Use DARC tool to get build information + $darcPath = "$(Agent.ToolsDirectory)/darc/darc.exe" + + if (!(Test-Path $darcPath)) { + Write-Error "DARC tool not found at $darcPath" + } + + # Get build information using DARC + $buildInfo = & $darcPath get-build --id $BarId --output-format json --extended --ci + if ($LASTEXITCODE -ne 0) { + Write-Error "DARC get-build command failed with exit code $LASTEXITCODE" + } + + $buildData = $buildInfo | ConvertFrom-Json + + [array]$matchingData = $buildData.assets | Where-Object { $_.name -match '^dotnet-monitor$' } + + if (!$matchingData -or $matchingData.Length -ne 1) { + Write-Error 'Unable to obtain release version' + } + + $version = $matchingData[0].version + + Write-Host "Release Version: $version" + + Write-Host "##vso[task.setvariable variable=$TaskVariableName]$version" + Write-Output $version + } + catch { + Write-Error "Failed to get release version: $($_.Exception.Message)" + throw + } + readonly: true +- name: GetBuildVersionScript + value: | + $ErrorActionPreference = 'Stop' + Set-StrictMode -Version 2.0 + + $BarId = "$(BarId)" + $TaskVariableName = 'BuildVersion' + + try { + # Use DARC tool to get build information + $darcPath = "$(Agent.ToolsDirectory)/darc/darc.exe" + + if (!(Test-Path $darcPath)) { + Write-Error "DARC tool not found at $darcPath" + } + + # Get build information using DARC + $buildInfo = & $darcPath get-build --id $BarId --output-format json --extended --ci + if ($LASTEXITCODE -ne 0) { + Write-Error "DARC get-build command failed with exit code $LASTEXITCODE" + } + + $buildData = $buildInfo | ConvertFrom-Json + + [array]$matchingData = $buildData.assets | Where-Object { $_.name -match 'MergedManifest.xml$' -and $_.nonShipping } + + if (!$matchingData -or $matchingData.Length -ne 1) { + Write-Error 'Unable to obtain build version.' + } + + $version = $matchingData[0].version + + Write-Host "Build Version: $version" + + Write-Host "##vso[task.setvariable variable=$TaskVariableName]$version" + Write-Output $version + } + catch { + Write-Error "Failed to get build version: $($_.Exception.Message)" + throw + } + readonly: true + resources: pipelines: - pipeline: Build @@ -52,13 +190,27 @@ extends: steps: - download: none + - task: UseDotNet@2 + displayName: Install .NET 9 + inputs: + packageType: 'sdk' + version: '9.x' + installationPath: $(Agent.ToolsDirectory)/dotnet + + - task: AzureCLI@2 + displayName: Install DARC Tool + inputs: + azureSubscription: "Darc: Maestro Production" + scriptType: ps + scriptLocation: inlineScript + inlineScript: | + dotnet tool install microsoft.dotnet.darc --tool-path "$(Agent.ToolsDirectory)/darc" --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json --prerelease + - task: PowerShell@2 displayName: Get BAR ID inputs: - filePath: $(Build.SourcesDirectory)/eng/release/Scripts/GetBarId.ps1 - arguments: >- - -BuildId $(resources.pipeline.Build.runID) - -TaskVariableName 'BarId' + targetType: 'inline' + script: $(GetBarIdScript) env: SYSTEM_ACCESSTOKEN: $(System.AccessToken) @@ -67,20 +219,16 @@ extends: inputs: azureSubscription: "Darc: Maestro Production" scriptType: ps - scriptPath: $(Build.SourcesDirectory)/eng/release/Scripts/GetReleaseVersion.ps1 - arguments: >- - -BarId $(BarId) - -TaskVariableName 'ReleaseVersion' + scriptLocation: inlineScript + inlineScript: $(GetReleaseVersionScript) - task: AzureCLI@2 displayName: Get Build Version inputs: azureSubscription: "Darc: Maestro Production" scriptType: ps - scriptPath: $(Build.SourcesDirectory)/eng/release/Scripts/GetBuildVersion.ps1 - arguments: >- - -BarId $(BarId) - -TaskVariableName 'BuildVersion' + scriptLocation: inlineScript + inlineScript: $(GetBuildVersionScript) - powershell: | $buildName = "${env:ReleaseVersion} [${env:BuildVersion}]" @@ -100,6 +248,9 @@ extends: jobs: - deployment: PublishToStorageAccounts + templateContext: + type: releaseJob + isProduction: true displayName: Publish to Storage Accounts ${{ if eq(parameters.IsTestRun, 'true') }}: @@ -126,24 +277,75 @@ extends: runOnce: deploy: steps: - - checkout: self - download: none + - task: UseDotNet@2 + displayName: Install .NET 9 + inputs: + packageType: 'sdk' + version: '9.x' + installationPath: $(Agent.ToolsDirectory)/dotnet + + - task: AzureCLI@2 + displayName: Install DARC Tool + inputs: + azureSubscription: "Darc: Maestro Production" + scriptType: ps + scriptLocation: inlineScript + inlineScript: | + dotnet tool install microsoft.dotnet.darc --tool-path "$(Agent.ToolsDirectory)/darc" --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json --prerelease + - task: PowerShell@2 displayName: Install AzCopy inputs: - filePath: $(Build.SourcesDirectory)/eng/release/Scripts/InstallAzCopy.ps1 - arguments: >- - -ToolsDirectory $(Agent.ToolsDirectory) - -TaskVariableName 'AzCopyPath' + targetType: 'inline' + script: | + $ErrorActionPreference = 'Stop' + Set-StrictMode -Version 2.0 + + $ToolsDirectory = "$(Agent.ToolsDirectory)" + $TaskVariableName = 'AzCopyPath' + + $url = 'https://aka.ms/downloadazcopy-v10-windows' + $basePath = Join-Path $ToolsDirectory 'azcopy' + + $zipPath = Join-Path $basePath 'azcopy.zip' + $toolDirPath = Join-Path $basePath 'azcopy' + $azCopyPath = Join-Path $toolDirPath 'azcopy.exe' + + if (Test-Path $azCopyPath) { + Write-Verbose 'Already installed' + } else { + if (!(Test-Path $basePath)) { + New-Item -ItemType 'Directory' -Path $basePath | Out-Null + } + + Write-Verbose 'Fetching...' + Invoke-WebRequest -Uri $url -OutFile $zipPath + + Write-Verbose 'Unzipping...' + Expand-Archive -LiteralPath $zipPath -Force -DestinationPath $basePath + + # There should only be one directory that is named like 'azcopy_windows_amd64_' + Write-Verbose 'Renaming...' + $unpackDirName = Get-ChildItem -Path $basePath -Directory -Name + $unpackDirPath = Join-Path $basePath $unpackDirName + Rename-Item -Path $unpackDirPath -NewName 'azcopy' + + # Delete zip + Remove-Item -Path $zipPath + + Write-Verbose 'Finished' + } + + Write-Host "##vso[task.setvariable variable=$TaskVariableName]$azCopyPath" + Write-Output $azCopyPath - task: PowerShell@2 displayName: Get BAR ID inputs: - filePath: $(Build.SourcesDirectory)/eng/release/Scripts/GetBarId.ps1 - arguments: >- - -BuildId $(resources.pipeline.Build.runID) - -TaskVariableName 'BarId' + targetType: 'inline' + script: $(GetBarIdScript) env: SYSTEM_ACCESSTOKEN: $(System.AccessToken) @@ -152,20 +354,16 @@ extends: inputs: azureSubscription: "Darc: Maestro Production" scriptType: ps - scriptPath: $(Build.SourcesDirectory)/eng/release/Scripts/GetReleaseVersion.ps1 - arguments: >- - -BarId $(BarId) - -TaskVariableName 'ReleaseVersion' + scriptLocation: inlineScript + inlineScript: $(GetReleaseVersionScript) - task: AzureCLI@2 displayName: Get Build Version inputs: azureSubscription: "Darc: Maestro Production" scriptType: ps - scriptPath: $(Build.SourcesDirectory)/eng/release/Scripts/GetBuildVersion.ps1 - arguments: >- - -BarId $(BarId) - -TaskVariableName 'BuildVersion' + scriptLocation: inlineScript + inlineScript: $(GetBuildVersionScript) - powershell: Install-PackageProvider -Name NuGet -Force -Scope CurrentUser displayName: Install NuGet PowerShell Package Provider @@ -194,24 +392,147 @@ extends: # Save the service principal details to the environment so that azcopy can use them addSpnToEnvironment: true scriptType: ps - scriptLocation: scriptPath - scriptPath: $(Build.SourcesDirectory)/eng/release/Scripts/PublishToBlobAccounts.ps1 - arguments: >- - -AzCopyPath $(AzCopyPath) - -BuildVersion $(BuildVersion) - -ReleaseVersion $(ReleaseVersion) - -DestinationAccountName $(DestinationAccountName) - -DestinationSasTokenBase64 $Env:DestinationSasTokenBase64 - -ChecksumsAccountName $(ChecksumsAccountName) - -WhatIf:${{ format('${0}', parameters.IsDryRun) }} + scriptLocation: inlineScript + inlineScript: | + $ErrorActionPreference = 'Stop' + Set-StrictMode -Version 2.0 + + $AzCopyPath = "$(AzCopyPath)" + $BuildVersion = "$(BuildVersion)" + $ReleaseVersion = "$(ReleaseVersion)" + $DestinationAccountName = "$(DestinationAccountName)" + $DestinationSasTokenBase64 = $Env:DestinationSasTokenBase64 + $ChecksumsAccountName = "$(ChecksumsAccountName)" + $WhatIfPreference = $${{ parameters.IsDryRun }} + + # Use the OAuth token that was obtained by the az cli when it logged in. + $Env:AZCOPY_AUTO_LOGIN_TYPE="AZCLI" + + $sourceAccountName = 'dotnetstage' + $sourceContainerName = 'dotnet-monitor' + $destinationContainerName = 'dotnet' + + function Generate-Source-Uri{ + [CmdletBinding()] + Param( + [Parameter(Mandatory=$true)][string]$AssetType + ) + + return "https://$sourceAccountName.blob.core.windows.net/$sourceContainerName/$BuildVersion/${AssetType}Assets/*" + } + + function Generate-Destination-Uri{ + [CmdletBinding()] + Param( + [Parameter(Mandatory=$true)][string]$AccountName + ) + + return "https://$AccountName.blob.core.windows.net/$destinationContainerName/diagnostics/monitor/$ReleaseVersion" + } + + function Transfer-File{ + [CmdletBinding(SupportsShouldProcess)] + Param( + [Parameter(Mandatory=$true)][string]$From, + [Parameter(Mandatory=$true)][string]$To, + [Parameter(Mandatory=$false)][string]$ToToken = $null + ) + + if ($ToToken -and ($ToToken[0] -ne '?')) { + $ToToken = '?' + $ToToken + } + + Write-Host "Copy $From -> $To" + + if ($From -eq $to) { + Write-Host 'Skipping copy because source and destination are the same.' + } else { + [array]$azCopyArgs = "$From" + $azCopyArgs += "$To$ToToken" + $azCopyArgs += "--s2s-preserve-properties" + $azCopyArgs += "--s2s-preserve-access-tier=false" + if ($WhatIfPreference) { + $azCopyArgs += "--dry-run" + } + & $AzCopyPath cp @azCopyArgs + } + } + + # Create source URI + $sourceUri = Generate-Source-Uri ` + -AssetType 'Blob' + + # Create destination URI + $destinationUri = Generate-Destination-Uri ` + -AccountName $DestinationAccountName + + # Copy files to destination account + Transfer-File ` + -From $sourceUri ` + -To $destinationUri ` + -ToToken ([Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($DestinationSasTokenBase64))) + + # Create source checksums URI + $checksumsSourceUri = Generate-Source-Uri ` + -AssetType 'Checksum' + + # Create checksums destination URI + $checksumsDestinationUri = Generate-Destination-Uri ` + -AccountName $ChecksumsAccountName + + # Copy checksums to checksum account + Transfer-File ` + -From $checksumsSourceUri ` + -To $checksumsDestinationUri env: DestinationSasTokenBase64: $(DotNetCliDelegationSasTokenBase64) - - task: 1ES.PublishBuildArtifacts@1 - displayName: Publish Logs + - task: PowerShell@2 + displayName: Display AzCopy Logs inputs: - PathtoPublish: '$(USERPROFILE)\.azcopy' - PublishLocation: Container - ArtifactName: AzCopyLogs + targetType: 'inline' + script: | + $ErrorActionPreference = 'Continue' + + $azCopyLogDir = Join-Path $env:USERPROFILE '.azcopy' + + Write-Host "Checking AzCopy logs directory: $azCopyLogDir" + + if (Test-Path $azCopyLogDir) { + Write-Host "AzCopy logs directory exists." + + # Get all log files + $logFiles = Get-ChildItem -Path $azCopyLogDir -File -Recurse | Sort-Object LastWriteTime -Descending + + if ($logFiles.Count -eq 0) { + Write-Host "No log files found in AzCopy directory." + } else { + Write-Host "Found $($logFiles.Count) log file(s):" + + foreach ($logFile in $logFiles) { + Write-Host "" + Write-Host "=========================================" + Write-Host "Log File: $($logFile.FullName)" + Write-Host "Size: $($logFile.Length) bytes" + Write-Host "Last Modified: $($logFile.LastWriteTime)" + Write-Host "=========================================" + + try { + $content = Get-Content -Path $logFile.FullName -Raw + if ([string]::IsNullOrWhiteSpace($content)) { + Write-Host "Log file is empty." + } else { + Write-Host $content + } + } catch { + Write-Host "Error reading log file: $($_.Exception.Message)" + } + + Write-Host "" + } + } + } else { + Write-Host "AzCopy logs directory does not exist: $azCopyLogDir" + } continueOnError: true condition: succeededOrFailed() From 7cb4e1331bbb61b70e57c260126749530af0d929 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Aug 2025 12:44:12 -0700 Subject: [PATCH 103/112] [main] Bump the runtime-dependencies group with 5 updates (#8481) Bumps Microsoft.Extensions.Configuration.Abstractions from 9.0.7 to 9.0.8 Bumps Microsoft.Extensions.Logging from 9.0.7 to 9.0.8 Bumps Microsoft.Extensions.Logging.Abstractions from 9.0.7 to 9.0.8 Bumps Microsoft.Extensions.Logging.Console from 9.0.7 to 9.0.8 Bumps System.Text.Json from 9.0.7 to 9.0.8 --- updated-dependencies: - dependency-name: Microsoft.Extensions.Configuration.Abstractions dependency-version: 9.0.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging dependency-version: 9.0.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging.Abstractions dependency-version: 9.0.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: Microsoft.Extensions.Logging.Console dependency-version: 9.0.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies - dependency-name: System.Text.Json dependency-version: 9.0.8 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/net9.0/Versions.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/dependabot/net9.0/Versions.props b/eng/dependabot/net9.0/Versions.props index bf866651513..8ac69b4c5fe 100644 --- a/eng/dependabot/net9.0/Versions.props +++ b/eng/dependabot/net9.0/Versions.props @@ -2,16 +2,16 @@ - 9.0.7 + 9.0.8 - 9.0.7 + 9.0.8 - 9.0.7 + 9.0.8 - 9.0.7 + 9.0.8 9.0.4 - 9.0.7 + 9.0.8 From ff30aabc3b4d12502160b7802e0c53b7f5b5d4a7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Aug 2025 12:45:34 -0700 Subject: [PATCH 104/112] [main] Bump the identity-dependencies group with 1 update (#8466) Bumps Microsoft.Identity.Web from 3.11.0 to 3.12.0 --- updated-dependencies: - dependency-name: Microsoft.Identity.Web dependency-version: 3.12.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: identity-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/independent/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/independent/Versions.props b/eng/dependabot/independent/Versions.props index 66565c614ad..30faab75923 100644 --- a/eng/dependabot/independent/Versions.props +++ b/eng/dependabot/independent/Versions.props @@ -6,7 +6,7 @@ 1.14.2 12.25.0 12.23.0 - 3.11.0 + 3.12.0 1.6.24 4.3.2 5.0.0 From 5fd7c52ce2cb0b3b1d1eb3e3f3c59327763cba71 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 7 Aug 2025 02:56:43 +0000 Subject: [PATCH 105/112] Update dependencies from https://github.com/dotnet/arcade build 20250806.1 (#8486) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- eng/common/core-templates/job/job.yml | 10 ++++++---- global.json | 4 ++-- 4 files changed, 21 insertions(+), 19 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 3d746a1b11d..da1201a656d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 + cfad7219713eb776273d540fa1b65f1662fdf241 - + https://github.com/dotnet/arcade - 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 + cfad7219713eb776273d540fa1b65f1662fdf241 - + https://github.com/dotnet/arcade - 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 + cfad7219713eb776273d540fa1b65f1662fdf241 - + https://github.com/dotnet/arcade - 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 + cfad7219713eb776273d540fa1b65f1662fdf241 - + https://github.com/dotnet/arcade - 7e67a7b4b62513a475afe46c4cd74d54b68f65c9 + cfad7219713eb776273d540fa1b65f1662fdf241 https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index a9ea1ee24c9..d2e6d60991d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25380.1 - 9.0.0-beta.25380.1 - 9.0.0-beta.25380.1 + 9.0.0-beta.25406.1 + 9.0.0-beta.25406.1 + 9.0.0-beta.25406.1 9.0.1 9.0.1-rtm.24610.9 diff --git a/eng/common/core-templates/job/job.yml b/eng/common/core-templates/job/job.yml index abe80a2a0e0..8947ea3f059 100644 --- a/eng/common/core-templates/job/job.yml +++ b/eng/common/core-templates/job/job.yml @@ -19,6 +19,7 @@ parameters: # publishing defaults artifacts: '' enableMicrobuild: false + microbuildUseESRP: true enablePublishBuildArtifacts: false enablePublishBuildAssets: false enablePublishTestResults: false @@ -134,10 +135,11 @@ jobs: signType: $(_SignType) zipSources: false feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json - ${{ if eq(variables['System.TeamProject'], 'DevDiv') }}: - ConnectedPMEServiceName: 6cc74545-d7b9-4050-9dfa-ebefcc8961ea - ${{ else }}: - ConnectedPMEServiceName: 248d384a-b39b-46e3-8ad5-c2c210d5e7ca + ${{ if eq(parameters.microbuildUseESRP, true) }}: + ${{ if eq(variables['System.TeamProject'], 'DevDiv') }}: + ConnectedPMEServiceName: 6cc74545-d7b9-4050-9dfa-ebefcc8961ea + ${{ else }}: + ConnectedPMEServiceName: 248d384a-b39b-46e3-8ad5-c2c210d5e7ca env: TeamName: $(_TeamName) MicroBuildOutputFolderOverride: '$(Agent.TempDirectory)' diff --git a/global.json b/global.json index b5543fc69ec..0a95f6a3d43 100644 --- a/global.json +++ b/global.json @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25380.1", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25380.1" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25406.1", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25406.1" } } From c57705b441b0ce65747b0e8e164abb7309322d38 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 8 Aug 2025 03:28:38 +0000 Subject: [PATCH 106/112] Update dependencies from https://github.com/dotnet/arcade build 20250807.2 (#8488) [main] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 ++++++++++---------- eng/Versions.props | 6 +++--- global.json | 6 +++--- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index da1201a656d..8089c73bfc4 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://github.com/dotnet/roslyn-analyzers 16865ea61910500f1022ad2b96c499e5df02c228 - + https://github.com/dotnet/arcade - cfad7219713eb776273d540fa1b65f1662fdf241 + e29823691315ed6b3acff20d5bdf3b0be7628283 - + https://github.com/dotnet/arcade - cfad7219713eb776273d540fa1b65f1662fdf241 + e29823691315ed6b3acff20d5bdf3b0be7628283 - + https://github.com/dotnet/arcade - cfad7219713eb776273d540fa1b65f1662fdf241 + e29823691315ed6b3acff20d5bdf3b0be7628283 - + https://github.com/dotnet/arcade - cfad7219713eb776273d540fa1b65f1662fdf241 + e29823691315ed6b3acff20d5bdf3b0be7628283 - + https://github.com/dotnet/arcade - cfad7219713eb776273d540fa1b65f1662fdf241 + e29823691315ed6b3acff20d5bdf3b0be7628283 https://github.com/dotnet/diagnostics diff --git a/eng/Versions.props b/eng/Versions.props index d2e6d60991d..7426884ad28 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -48,9 +48,9 @@ --> - 9.0.0-beta.25406.1 - 9.0.0-beta.25406.1 - 9.0.0-beta.25406.1 + 9.0.0-beta.25407.2 + 9.0.0-beta.25407.2 + 9.0.0-beta.25407.2 9.0.1 9.0.1-rtm.24610.9 diff --git a/global.json b/global.json index 0a95f6a3d43..d471d2b923d 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "9.0.107", + "dotnet": "9.0.109", "runtimes": { "aspnetcore": [ "$(MicrosoftAspNetCoreApp80Version)", @@ -22,7 +22,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25406.1", - "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25406.1" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25407.2", + "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25407.2" } } From 912e641cd348297af3c6ed00a5e5d332f0787cad Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 11 Aug 2025 09:39:36 -0700 Subject: [PATCH 107/112] [main] Update dependencies from dotnet/command-line-api (#8484) * Update dependencies from https://github.com/dotnet/command-line-api build 20250805.1 System.CommandLine From Version 2.0.0-rc.1.25404.2 -> To Version 2.0.0-rc.1.25405.1 * Update dependencies from https://github.com/dotnet/command-line-api build 20250806.1 System.CommandLine From Version 2.0.0-rc.1.25404.2 -> To Version 2.0.0-rc.1.25406.1 * Update dependencies from https://github.com/dotnet/command-line-api build 20250806.2 System.CommandLine From Version 2.0.0-rc.1.25404.2 -> To Version 2.0.0-rc.1.25406.2 * Update dependencies from https://github.com/dotnet/command-line-api build 20250808.2 System.CommandLine From Version 2.0.0-rc.1.25404.2 -> To Version 2.0.0-rc.1.25408.2 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 8089c73bfc4..b3eede72ba4 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -12,9 +12,9 @@ https://github.com/dotnet/diagnostics 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 - + https://github.com/dotnet/command-line-api - 1decc9de664fd11afb282b9b4eecd09ccd70dbde + 0b4618bc860374941e605d8eb1d2bc29c32801db diff --git a/eng/Versions.props b/eng/Versions.props index 7426884ad28..f1dee069992 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,7 +55,7 @@ 9.0.1 9.0.1-rtm.24610.9 - 2.0.0-rc.1.25404.2 + 2.0.0-rc.1.25408.2 9.0.0-preview.25379.1 9.0.0-preview.25379.1 From a27238fa946284a864aa867f9b7fb866bedc76d0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Aug 2025 09:39:53 -0700 Subject: [PATCH 108/112] [main] Bump the runtime-dependencies group with 1 update (#8478) Bumps Microsoft.NETCore.DotNetHost from 8.0.18 to 8.0.19 --- updated-dependencies: - dependency-name: Microsoft.NETCore.DotNetHost dependency-version: 8.0.19 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- eng/dependabot/net8.0/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/dependabot/net8.0/Versions.props b/eng/dependabot/net8.0/Versions.props index bac24195f8c..f15afd963f8 100644 --- a/eng/dependabot/net8.0/Versions.props +++ b/eng/dependabot/net8.0/Versions.props @@ -10,7 +10,7 @@ 8.0.1 - 8.0.18 + 8.0.19 8.0.6 From 4e65ae293971577cf5e72dce44db1ef829f99b51 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Aug 2025 09:40:34 -0700 Subject: [PATCH 109/112] Bump streetsidesoftware/cspell-action from 7.1.2 to 7.2.0 (#8459) Bumps [streetsidesoftware/cspell-action](https://github.com/streetsidesoftware/cspell-action) from 7.1.2 to 7.2.0. - [Release notes](https://github.com/streetsidesoftware/cspell-action/releases) - [Changelog](https://github.com/streetsidesoftware/cspell-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/streetsidesoftware/cspell-action/compare/6f05386161564ebe24dcfa1513cde203230d1edc...dcd03dc3e8a59ec2e360d0c62db517baa0b4bb6d) --- updated-dependencies: - dependency-name: streetsidesoftware/cspell-action dependency-version: 7.2.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/spellcheck.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index ad5d583b387..454c0b99d33 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -17,7 +17,7 @@ jobs: with: persist-credentials: false - - uses: streetsidesoftware/cspell-action@6f05386161564ebe24dcfa1513cde203230d1edc + - uses: streetsidesoftware/cspell-action@dcd03dc3e8a59ec2e360d0c62db517baa0b4bb6d name: Documentation spellcheck if: ${{ !cancelled() }} with: @@ -25,7 +25,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@6f05386161564ebe24dcfa1513cde203230d1edc + - uses: streetsidesoftware/cspell-action@dcd03dc3e8a59ec2e360d0c62db517baa0b4bb6d name: Resx spellcheck if: ${{ !cancelled() }} with: @@ -33,7 +33,7 @@ jobs: inline: error incremental_files_only: true - - uses: streetsidesoftware/cspell-action@6f05386161564ebe24dcfa1513cde203230d1edc + - uses: streetsidesoftware/cspell-action@dcd03dc3e8a59ec2e360d0c62db517baa0b4bb6d name: Source code spellcheck if: ${{ !cancelled() }} with: From 71cd02e08f4ee130a196f5e2d69cf34519ad0fe8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 11 Aug 2025 09:41:51 -0700 Subject: [PATCH 110/112] Update Learning Paths (#8467) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .github/learning-path-sha.txt | 2 +- documentation/learningPath/aks.md | 2 +- documentation/learningPath/api.md | 10 ++-- documentation/learningPath/collectionrules.md | 30 +++++----- documentation/learningPath/configuration.md | 16 +++--- documentation/learningPath/egress.md | 22 ++++---- documentation/learningPath/testing.md | 56 +++++++++---------- 7 files changed, 69 insertions(+), 69 deletions(-) diff --git a/.github/learning-path-sha.txt b/.github/learning-path-sha.txt index 23fdf5fa3b6..9c72d80418c 100644 --- a/.github/learning-path-sha.txt +++ b/.github/learning-path-sha.txt @@ -1 +1 @@ -0c3a91196f7e0abe8b9fa5cd8907378c4598b10a \ No newline at end of file +e973263b09f539d9e3751799a1c4416d0b9b2749 \ No newline at end of file diff --git a/documentation/learningPath/aks.md b/documentation/learningPath/aks.md index 997ddb5eca1..baa206f75c7 100644 --- a/documentation/learningPath/aks.md +++ b/documentation/learningPath/aks.md @@ -6,7 +6,7 @@ In addition to its availability as a .NET CLI tool, the `dotnet monitor` tool is This workflow takes your local development copy of `dotnet-monitor`, patches it with a local development copy of the [.NET Core Diagnostics Repo](https://github.com/dotnet/diagnostics#net-core-diagnostics-repo), and makes it available as an image for you to consume in an ACR (Azure Container Registry). Note that there are many other ways to do this - this is meant to serve as a basic template that can be adapted to match your needs. -1. Open `pwsh` and run the [generate-dev-sln script](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/generate-dev-sln.ps1), providing a path to your local copy of the diagnostics repo. +1. Open `pwsh` and run the [generate-dev-sln script](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/generate-dev-sln.ps1), providing a path to your local copy of the diagnostics repo. > [!NOTE] > If your changes do not involve the [.NET Core Diagnostics Repo](https://github.com/dotnet/diagnostics#net-core-diagnostics-repo), you don't need to complete this step. diff --git a/documentation/learningPath/api.md b/documentation/learningPath/api.md index 44bfc168083..b44a96da391 100644 --- a/documentation/learningPath/api.md +++ b/documentation/learningPath/api.md @@ -4,15 +4,15 @@ dotnet-monitor exposes functionality through both [collection rules](./collectio ## Adding New APIs -The web API surface is defined by a series of controllers [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/). It's common for an API to expose functionality also available via [Actions](./collectionrules.md#actions) and so methods in these controllers are often wrappers around a shared implementation. Each controller may have one or more attributes that configure how and where it is exposed, you can learn more about the notable controller attributes [here](#notable-controller-attributes). +The web API surface is defined by a series of controllers [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/). It's common for an API to expose functionality also available via [Actions](./collectionrules.md#actions) and so methods in these controllers are often wrappers around a shared implementation. Each controller may have one or more attributes that configure how and where it is exposed, you can learn more about the notable controller attributes [here](#notable-controller-attributes). -If the new API needs to either accept or return structured data, a dedicated model should be used. Models are defined [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Models/). +If the new API needs to either accept or return structured data, a dedicated model should be used. Models are defined [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/Models/). When adding a new API, it's important to also update the [`openapi.json`](../openapi.json) spec which describes the API surface. There are CI tests that will ensure this file has been updated to reflect any API changes. Learn more about updating `openapi.json` [here](./testing.md#openapi-generation). ### Adding Tests -Web APIs in dotnet-monitor are typically tested using functional tests that leverage the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs) to call a specific API. Learn more about how the functional tests are defined and operate [here](./testing.md#functional-tests). +Web APIs in dotnet-monitor are typically tested using functional tests that leverage the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs) to call a specific API. Learn more about how the functional tests are defined and operate [here](./testing.md#functional-tests). ## Notable Controller Attributes @@ -32,6 +32,6 @@ dotnet-monitor supports multiple different [authentication modes](../authenticat ### Determining Authentication Mode -When dotnet-monitor starts, the command line arguments are first inspected to see if a specific authentication mode was set (such as `--no-auth`), referred to as the `StartupAuthenticationMode`, this is calculated [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L28). If no modes were explicitly set via a command line argument, dotnet-monitor will select `Deferred` as the `StartupAuthenticationMode`. This indicates that the user configuration should be looked at to determine the authentication mode later on in the startup process. +When dotnet-monitor starts, the command line arguments are first inspected to see if a specific authentication mode was set (such as `--no-auth`), referred to as the `StartupAuthenticationMode`, this is calculated [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L28). If no modes were explicitly set via a command line argument, dotnet-monitor will select `Deferred` as the `StartupAuthenticationMode`. This indicates that the user configuration should be looked at to determine the authentication mode later on in the startup process. -After determining the `StartupAuthenticationMode` mode, the relevant [IAuthenticationConfigurator](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Auth/IAuthenticationConfigurator.cs) is created by the [AuthConfiguratorFactory](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Auth/AuthConfiguratorFactory.cs). This factory also handles deciding what authentication mode to use when `StartupAuthenticationMode` is `Deferred`. The selected configurator is used to configure various parts of dotnet-monitor that are specific to authentication, such as protecting the web APIs and adding authentication-mode specific logging. +After determining the `StartupAuthenticationMode` mode, the relevant [IAuthenticationConfigurator](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Auth/IAuthenticationConfigurator.cs) is created by the [AuthConfiguratorFactory](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Auth/AuthConfiguratorFactory.cs). This factory also handles deciding what authentication mode to use when `StartupAuthenticationMode` is `Deferred`. The selected configurator is used to configure various parts of dotnet-monitor that are specific to authentication, such as protecting the web APIs and adding authentication-mode specific logging. diff --git a/documentation/learningPath/collectionrules.md b/documentation/learningPath/collectionrules.md index c4501133380..53339e704fe 100644 --- a/documentation/learningPath/collectionrules.md +++ b/documentation/learningPath/collectionrules.md @@ -29,49 +29,49 @@ graph LR ### Key Areas Of The Code -* Collection rules are registered [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L141). When adding a new trigger or action, these types need to be added here to take effect. This section is also responsible for making sure options get configured and validated. -* Options for collection rules can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleOptions.cs). -* Rules are applied, removed, and restarted in response to configuration changes [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleService.cs). This is also responsible for generating a description of each collection rule's state for the `/collectionrules` API Endpoint. -* The pipeline responsible for the lifetime of a single executing collection rule can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L56). -* To run collection rules, `dotnet monitor` must be in `Listen` mode - this is set via [DiagnosticPortOptions](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options/DiagnosticPortOptions.cs). +* Collection rules are registered [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L141). When adding a new trigger or action, these types need to be added here to take effect. This section is also responsible for making sure options get configured and validated. +* Options for collection rules can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleOptions.cs). +* Rules are applied, removed, and restarted in response to configuration changes [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleService.cs). This is also responsible for generating a description of each collection rule's state for the `/collectionrules` API Endpoint. +* The pipeline responsible for the lifetime of a single executing collection rule can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L56). +* To run collection rules, `dotnet monitor` must be in `Listen` mode - this is set via [DiagnosticPortOptions](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Options/DiagnosticPortOptions.cs). * For each type of trigger, the [dotnet diagnostics repo](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/ITraceEventTrigger.cs#L29) is responsible for determining whether the triggering conditions have been satisfied. ### Triggers -A trigger will monitor for a specific condition in the target application and raise a notification when that condition has been observed. Options for triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleTriggerOptions.cs); the type of `Settings` is determined by which trigger is being used (possible trigger types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers)). The interface for all triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Triggers/ICollectionRuleTrigger.cs) - this allows `dotnet monitor` to start and stop triggers, regardless of the trigger's properties. The collection rule pipeline creates instances of triggers [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L101) before waiting for the trigger to [satisfy its conditions](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/Pipelines/TraceEventTriggerPipeline.cs#L107) - each trigger has its own set of criteria that determines when a trigger has been satisfied. +A trigger will monitor for a specific condition in the target application and raise a notification when that condition has been observed. Options for triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleTriggerOptions.cs); the type of `Settings` is determined by which trigger is being used (possible trigger types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers)). The interface for all triggers can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Triggers/ICollectionRuleTrigger.cs) - this allows `dotnet monitor` to start and stop triggers, regardless of the trigger's properties. The collection rule pipeline creates instances of triggers [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L101) before waiting for the trigger to [satisfy its conditions](https://github.com/dotnet/diagnostics/blob/v6.0.351802/src/Microsoft.Diagnostics.Monitoring.EventPipe/Triggers/Pipelines/TraceEventTriggerPipeline.cs#L107) - each trigger has its own set of criteria that determines when a trigger has been satisfied. ### Actions -Actions allow executing an operation or an external executable in response to a trigger condition being satisfied. Options for actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleActionOptions.cs); the type of `Settings` is determined by which action is being used (possible action types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Actions)). The interface for all actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Actions/ICollectionRuleAction.cs) - this allows `dotnet monitor` to start an action, wait for it to complete, and get its output values regardless of the action's properties. The action list is [executed](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L155) once the triggering condition has been met (assuming the action list isn't throttled), with each action by default starting without waiting for prior actions to complete. +Actions allow executing an operation or an external executable in response to a trigger condition being satisfied. Options for actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleActionOptions.cs); the type of `Settings` is determined by which action is being used (possible action types can be found [here](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/Actions)). The interface for all actions can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Actions/ICollectionRuleAction.cs) - this allows `dotnet monitor` to start an action, wait for it to complete, and get its output values regardless of the action's properties. The action list is [executed](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L155) once the triggering condition has been met (assuming the action list isn't throttled), with each action by default starting without waiting for prior actions to complete. ### Filters -Filters can optionally be applied to a collection rule to choose which processes can trigger the rule. This uses the same set of [options](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options/ProcessFilterOptions.cs#L48) as setting the default process for `dotnet-monitor`. When starting a collection rule, [these filters are used to check if the current process should have the collection rule applied to it](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleContainer.cs#L186); if so, the collection rule starts. +Filters can optionally be applied to a collection rule to choose which processes can trigger the rule. This uses the same set of [options](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Options/ProcessFilterOptions.cs#L48) as setting the default process for `dotnet-monitor`. When starting a collection rule, [these filters are used to check if the current process should have the collection rule applied to it](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/CollectionRuleContainer.cs#L186); if so, the collection rule starts. ### Limits -Limits can optionally be applied to a collection rule to constrain the lifetime of the rule and how often its actions can be run before being throttled. Options for limits can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleLimitsOptions.cs). When provided (or when using default values), limits are evaluated in the collection rule pipeline while running. `RuleDuration` is used to [create a token](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L81) that shuts down the pipeline. `ActionCountSlidingWindowDuration` does not rely on setting cancellation tokens; rather, the number of executions within the sliding window are checked on-demand [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L211), and `ActionCount` is referenced to determine whether the rule needs to [terminate](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L194) or [throttle](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L234). +Limits can optionally be applied to a collection rule to constrain the lifetime of the rule and how often its actions can be run before being throttled. Options for limits can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleLimitsOptions.cs). When provided (or when using default values), limits are evaluated in the collection rule pipeline while running. `RuleDuration` is used to [create a token](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/CollectionRulePipeline.cs#L81) that shuts down the pipeline. `ActionCountSlidingWindowDuration` does not rely on setting cancellation tokens; rather, the number of executions within the sliding window are checked on-demand [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L211), and `ActionCount` is referenced to determine whether the rule needs to [terminate](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L194) or [throttle](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs#L234). ## Miscellaneous ### Trigger Shortcuts -Trigger Shortcuts provide improved defaults, range validation, and a simpler syntax for [several commonly used `EventCounter` triggers](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts). These shortcuts provide the same functionality as using the standard `EventCounter` syntax, but have fewer available options (since there is no need to specify the `ProviderName` or the `CounterName`) - as a result, shortcuts do not inherit from `EventCounterOptions`, but rather [IEventCounterShortcuts](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts/IEventCounterShortcuts.cs). Each type of shortcut is registered independently [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L159). After binding with configuration and undergoing validation, shortcuts are then converted to be treated as `EventCounter` triggers [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs), using their respective defaults instead of the generic ones. +Trigger Shortcuts provide improved defaults, range validation, and a simpler syntax for [several commonly used `EventCounter` triggers](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts). These shortcuts provide the same functionality as using the standard `EventCounter` syntax, but have fewer available options (since there is no need to specify the `ProviderName` or the `CounterName`) - as a result, shortcuts do not inherit from `EventCounterOptions`, but rather [IEventCounterShortcuts](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/Triggers/EventCounterShortcuts/IEventCounterShortcuts.cs). Each type of shortcut is registered independently [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L159). After binding with configuration and undergoing validation, shortcuts are then converted to be treated as `EventCounter` triggers [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs), using their respective defaults instead of the generic ones. ### Templates -Templates allow users to design reusable collection rule components by associating a name with a piece of configuration. Options for templates can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/TemplateOptions.cs). Before collection rules undergo validation, `dotnet monitor` checks to see if any of the rule's components in configuration [list the name of a template](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs) - if so, the collection rule's options are populated from the correspondingly named template. Note that templates undergo the same binding process for triggers/actions as collection rules; however, since templates are treated as separate parts of configuration, this binding instead happens [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Configuration/TemplatesConfigureNamedOptions.cs). +Templates allow users to design reusable collection rule components by associating a name with a piece of configuration. Options for templates can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/TemplateOptions.cs). Before collection rules undergo validation, `dotnet monitor` checks to see if any of the rule's components in configuration [list the name of a template](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs) - if so, the collection rule's options are populated from the correspondingly named template. Note that templates undergo the same binding process for triggers/actions as collection rules; however, since templates are treated as separate parts of configuration, this binding instead happens [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Configuration/TemplatesConfigureNamedOptions.cs). ### Collection Rule Defaults -Defaults can be used to limit the verbosity of configuration, allowing frequently used values for collection rules to be assigned as defaults. Options for collection rule defaults can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleDefaultsOptions.cs). These defaults are merged with the user's provided configuration [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/CollectionRules/Options/DefaultCollectionRulePostConfigureOptions.cs) - any properties that the user hasn't set (that have corresponding default values) will be updated at this point to use the default values. This step occurs prior to `dotnet monitor` attempting to use its built-in defaults, which allows user defaults to take precedence. +Defaults can be used to limit the verbosity of configuration, allowing frequently used values for collection rules to be assigned as defaults. Options for collection rule defaults can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/CollectionRuleDefaultsOptions.cs). These defaults are merged with the user's provided configuration [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/CollectionRules/Options/DefaultCollectionRulePostConfigureOptions.cs) - any properties that the user hasn't set (that have corresponding default values) will be updated at this point to use the default values. This step occurs prior to `dotnet monitor` attempting to use its built-in defaults, which allows user defaults to take precedence. ### Collection Rule API Endpoint -The Collection Rule API Endpoint allows users to get information about the state of their collection rules, providing general information [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L500) and more specific information about a particular rule [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L522). **This API is solely for viewing the current state of rules, not altering state**. +The Collection Rule API Endpoint allows users to get information about the state of their collection rules, providing general information [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L500) and more specific information about a particular rule [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/Controllers/DiagController.cs#L522). **This API is solely for viewing the current state of rules, not altering state**. -Each collection rule pipeline has a [state holder](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs) that keeps track of the rule's execution. By keeping track of the pipeline's state in real-time, this state doesn't need to be calculated in response to a user hitting the `/collectionrules` endpoint. However, other user-facing information, such as countdowns, are calculated on-demand - these values are solely for display purposes and not used by `dotnet-monitor` when determining when to change state (see [Limits](#limits) for more information). +Each collection rule pipeline has a [state holder](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/CollectionRulePipelineState.cs) that keeps track of the rule's execution. By keeping track of the pipeline's state in real-time, this state doesn't need to be calculated in response to a user hitting the `/collectionrules` endpoint. However, other user-facing information, such as countdowns, are calculated on-demand - these values are solely for display purposes and not used by `dotnet-monitor` when determining when to change state (see [Limits](#limits) for more information). ## Keeping Documentation Up-To-Date -When making changes to collection rules that require updates to configuration, these changes should be added [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/configuration/collection-rule-configuration.md). Additional information on collection rules and examples can be provided [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/collectionrules). +When making changes to collection rules that require updates to configuration, these changes should be added [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/configuration/collection-rule-configuration.md). Additional information on collection rules and examples can be provided [here](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/collectionrules). diff --git a/documentation/learningPath/configuration.md b/documentation/learningPath/configuration.md index 3703dde6469..a6f7e5cbf07 100644 --- a/documentation/learningPath/configuration.md +++ b/documentation/learningPath/configuration.md @@ -4,22 +4,22 @@ ## How Configuration Works -`dotnet-monitor` accepts configuration from several different sources, and must [combine these sources for the host builder](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/HostBuilder/HostBuilderHelper.cs#L48). Configuration sources are added in the order of lowest to highest precedence - meaning that if there is a conflict between a property in two configuration sources, the property found in the latter configuration source will be used. +`dotnet-monitor` accepts configuration from several different sources, and must [combine these sources for the host builder](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/HostBuilder/HostBuilderHelper.cs#L48). Configuration sources are added in the order of lowest to highest precedence - meaning that if there is a conflict between a property in two configuration sources, the property found in the latter configuration source will be used. -To see the merged configuration, the user can run the `config show` command (see [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Program.cs#L71) and [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Commands/ConfigShowCommandHandler.cs)); the `--show-sources` flag can be used to reveal which configuration source is responsible for each property. The `config show` command's output is [written out as JSON](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ConfigurationJsonWriter.cs); this section must be manually updated whenever new options are added (or existing options are changed). +To see the merged configuration, the user can run the `config show` command (see [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Program.cs#L71) and [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Commands/ConfigShowCommandHandler.cs)); the `--show-sources` flag can be used to reveal which configuration source is responsible for each property. The `config show` command's output is [written out as JSON](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/ConfigurationJsonWriter.cs); this section must be manually updated whenever new options are added (or existing options are changed). -Once configuration has been merged, any singletons that have been added to the `IServiceCollection` (see [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs) and [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L84)), such as `IConfigureOptions`, `IPostConfigureOptions`, and `IValidateOptions`, are called when an object of that type is first used, **not on startup**. This step is often used to incorporate defaults for properties that were not explicitly set by configuration, or to validate that options were set correctly. +Once configuration has been merged, any singletons that have been added to the `IServiceCollection` (see [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs) and [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Commands/CollectCommandHandler.cs#L84)), such as `IConfigureOptions`, `IPostConfigureOptions`, and `IValidateOptions`, are called when an object of that type is first used, **not on startup**. This step is often used to incorporate defaults for properties that were not explicitly set by configuration, or to validate that options were set correctly. -Any changes to the configuration need to be propagated to the [schema](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/schema.json). **The updated schema should be generated automatically; you should never need to manually edit the JSON.** To update the schema in Visual Studio: -* Set [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema) as the startup project +Any changes to the configuration need to be propagated to the [schema](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/schema.json). **The updated schema should be generated automatically; you should never need to manually edit the JSON.** To update the schema in Visual Studio: +* Set [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema) as the startup project * Build the project, with a single command-line argument for the schema's absolute path -* Validate that the schema was correctly updated using the tests in [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests) +* Validate that the schema was correctly updated using the tests in [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests) ## Keeping Documentation Up-To-Date -Our configuration is primarily documented [here](https://github.com/dotnet/dotnet-monitor/tree/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/configuration). Sections are typically comprised of: +Our configuration is primarily documented [here](https://github.com/dotnet/dotnet-monitor/tree/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/configuration). Sections are typically comprised of: * A brief overview of the feature that is being configured * Configuration samples in all supported formats * A list of properties with descriptions, types, and whether a property is required -Types are defined in [definitions.md](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/api/definitions.md), and additional information about configuring collection rules can be found in the [collection rules](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/collectionrules) directory. Where appropriate, indicate if configuration only pertains to a specific version of `dotnet-monitor` (e.g. `7.0+`). +Types are defined in [definitions.md](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/api/definitions.md), and additional information about configuring collection rules can be found in the [collection rules](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/collectionrules) directory. Where appropriate, indicate if configuration only pertains to a specific version of `dotnet-monitor` (e.g. `7.0+`). diff --git a/documentation/learningPath/egress.md b/documentation/learningPath/egress.md index 7dd10ee1bde..560d463e358 100644 --- a/documentation/learningPath/egress.md +++ b/documentation/learningPath/egress.md @@ -23,11 +23,11 @@ graph LR class ide2 altColor ``` -1. [User initiates collection of artifact with a designated egress provider](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.WebApi/Operation/EgressOperation.cs#L45) -1. [Locate extension's executable and manifest](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Extensibility/ExtensionDiscoverer.cs#L28) -1. [Start extension and pass configuration/artifact via StdIn to the other process](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L104) -1. [Connect to egress provider using configuration and send artifact](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs#L36) -1. [Provide success/failure information via StdOut to dotnet-monitor](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L77) +1. [User initiates collection of artifact with a designated egress provider](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.WebApi/Operation/EgressOperation.cs#L45) +1. [Locate extension's executable and manifest](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Extensibility/ExtensionDiscoverer.cs#L28) +1. [Start extension and pass configuration/artifact via StdIn to the other process](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L104) +1. [Connect to egress provider using configuration and send artifact](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Extensions/AzureBlobStorage/AzureBlobEgressProvider.cs#L36) +1. [Provide success/failure information via StdOut to dotnet-monitor](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L77) ## Distribution and Acquisition Model @@ -38,7 +38,7 @@ There are two versions of the `dotnet-monitor` image being offered: `monitor` an ### Well Known Egress Provider Locations -There are 3 [locations](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L291) that `dotnet-monitor` scans when looking for the extensions directory (the highest priority location is listed first): +There are 3 [locations](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs#L291) that `dotnet-monitor` scans when looking for the extensions directory (the highest priority location is listed first): - Next to the executing `dotnet-monitor` assembly - SharedConfigDirectory - On Windows, `%ProgramData%\dotnet-monitor` @@ -56,23 +56,23 @@ The distribution/acquisition model for third-party egress providers is determine ### Extension Manifest -All extensions must include a manifest titled [`extension.json`](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Extensions/AzureBlobStorage/extension.json) that provides `dotnet-monitor` with some basic information about the extension. +All extensions must include a manifest titled [`extension.json`](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Extensions/AzureBlobStorage/extension.json) that provides `dotnet-monitor` with some basic information about the extension. | Name | Required | Type | Description | |---|---|---|---| | `Name` | true | string | The name of the extension (e.g. AzureBlobStorage) that users will use when writing configuration for the egress provider. | | `ExecutableFileName` | false | string | If specified, the executable file (without extension) to be launched when executing the extension; either `AssemblyFileName` or `ExecutableFileName` must be specified. | | `AssemblyFileName` | false | string | If specified, executes the extension using the shared .NET host (e.g. dotnet.exe) with the specified entry point assembly (without extension); either `AssemblyFileName` or `ExecutableFileName` must be specified. | -| `Modes` | false | [[ExtensionMode](../api/definitions.md#extensionmode)] | Additional modes the extension can be configured to run in (see an example of Validation [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L80)). | +| `Modes` | false | [[ExtensionMode](../api/definitions.md#extensionmode)] | Additional modes the extension can be configured to run in (see an example of Validation [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L80)). | ### Configuration Extensions are designed to receive all user configuration through `dotnet monitor` - the extension itself should not rely on any additional configuration sources. -In addition to the configuration provided specifically for your egress provider, `dotnet-monitor` also includes the values stored in [`Properties`](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options/EgressOptions.cs#L21). Note that `Properties` may include information that is not relevant to the current egress provider, since it is a shared bucket between all configured egress providers. +In addition to the configuration provided specifically for your egress provider, `dotnet-monitor` also includes the values stored in [`Properties`](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Options/EgressOptions.cs#L21). Note that `Properties` may include information that is not relevant to the current egress provider, since it is a shared bucket between all configured egress providers. ### Communicating With Dotnet-Monitor -[`dotnet monitor` will pass serialized configuration via `StdIn` to the extension](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L184); an example of how the `AzureBlobStorage` egress provider interprets the egress payload can be found [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L139). **It's important to validate the version number at the beginning of the stream; if an extension does not have the same version as `dotnet-monitor`, it should not attempt to continue reading from the stream, and users may need to update to a newer version of the extension.** +[`dotnet monitor` will pass serialized configuration via `StdIn` to the extension](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.cs#L184); an example of how the `AzureBlobStorage` egress provider interprets the egress payload can be found [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L139). **It's important to validate the version number at the beginning of the stream; if an extension does not have the same version as `dotnet-monitor`, it should not attempt to continue reading from the stream, and users may need to update to a newer version of the extension.** -All output from the extension will be passed back to `dotnet-monitor`; this is logged [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L64). The contents of the `StandardOutput` and `StandardError` streams are handled and logged as seen [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L34), with the `StandardOutput` stream being logged at the `Info` level and the `StandardError` stream being logged at the `Warning` level. `Dotnet-Monitor` will continue reading output until it receives a [result](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tools/dotnet-monitor/Egress/Extension/EgressArtifactResult.cs) from the extension via the `StandardOutput` stream, at which point the extension's process will be terminated and `dotnet-monitor` will display the appropriate log message depending on the success/failure of the operation. Exceptions thrown during the egress operation are caught [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L71); this allows the extension to report a failure message back to `dotnet-monitor` that will be displayed to the user. +All output from the extension will be passed back to `dotnet-monitor`; this is logged [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L64). The contents of the `StandardOutput` and `StandardError` streams are handled and logged as seen [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Egress/Extension/EgressExtension.OutputParser.cs#L34), with the `StandardOutput` stream being logged at the `Info` level and the `StandardError` stream being logged at the `Warning` level. `Dotnet-Monitor` will continue reading output until it receives a [result](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tools/dotnet-monitor/Egress/Extension/EgressArtifactResult.cs) from the extension via the `StandardOutput` stream, at which point the extension's process will be terminated and `dotnet-monitor` will display the appropriate log message depending on the success/failure of the operation. Exceptions thrown during the egress operation are caught [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Extension.Common/EgressHelper.cs#L71); this allows the extension to report a failure message back to `dotnet-monitor` that will be displayed to the user. diff --git a/documentation/learningPath/testing.md b/documentation/learningPath/testing.md index 160609b8987..22411b7e2db 100644 --- a/documentation/learningPath/testing.md +++ b/documentation/learningPath/testing.md @@ -4,81 +4,81 @@ Tests can be executed with the command line (via [build.cmd](../../Build.cmd) -test), as part of the PR build, or in Visual Studio. Note that because of limited resources in the build pool, tests ran from the command line or in the build pool are serialized. This avoids test failures associated with parallel testing. Visual Studio does not have such restrictions and is best used for individual tests and test investigations. When running from the command line, using the `-testgroup` parameter can be used to limit the amount of tests executed. For example `build.cmd -test -testgroup PR` will run the same tests as the PR build. -The framework of the test assemblies is controlled by [TestTargetFrameworks](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/eng/Versions.props). The test itself is attributed with a particular framework based on the [TargetFrameworkMonikerTraitAttribute](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/TargetFrameworkMonikerTraitAttribute.cs). +The framework of the test assemblies is controlled by [TestTargetFrameworks](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/eng/Versions.props). The test itself is attributed with a particular framework based on the [TargetFrameworkMonikerTraitAttribute](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/TargetFrameworkMonikerTraitAttribute.cs). ## Unit Tests -- [Microsoft.Diagnostics.Monitoring.Tool.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests) -- [Microsoft.Diagnostics.Monitoring.WebApi.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.WebApi.UnitTests/) -- [CollectionRuleActions.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/CollectionRuleActions.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.Tool.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests) +- [Microsoft.Diagnostics.Monitoring.WebApi.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.WebApi.UnitTests/) +- [CollectionRuleActions.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/CollectionRuleActions.UnitTests/) Unit test assemblies directly reference types from various dotnet-monitor assemblies. However, since most of dotnet-monitor heavily relies on code injection, there are utility classes to simplify unit test creation. -- [TestHostHelper](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/TestHostHelper.cs) can be used to setup a basic unit test scenario using dependency injection. -- [CollectionRuleOptionsExtensions](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/Options/CollectionRuleOptionsExtensions.cs) can be used to easily create collection rules from configuration. +- [TestHostHelper](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/TestHostHelper.cs) can be used to setup a basic unit test scenario using dependency injection. +- [CollectionRuleOptionsExtensions](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/Options/CollectionRuleOptionsExtensions.cs) can be used to easily create collection rules from configuration. ## Functional Tests -- [Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests) -- [Microsoft.Diagnostics.Monitoring.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/) +- [Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests) +- [Microsoft.Diagnostics.Monitoring.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/) Functional tests are composed of 3 main parts: 1. The test itself, which sets up and validates the results. 1. An instance of dotnet-monitor 1. An instance of an application that is being monitored (from the UnitTestApp assembly) -* [ScenarioRunner](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/Runners/ScenarioRunner.cs) is typically used to orchestrate test runs. The class will spawn both an instance of dotnet-monitor and an instance of test application. The app and the test communicate via stdio. The test communicates with dotnet-monitor via its Api surface. -* The dotnet-monitor Api surface can be accessed through the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs). -* New scenarios can be added [here](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/). -* The [AsyncWaitScenario](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/AsyncWaitScenario.cs) is sufficient for most tests. -* Coordination of the scenario and the test is done via message passing (json over stdio) between the test and the app. To send messages to the app from the test, [AppRunner](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/Runners/AppRunner.cs)'s `SendCommandAsync` is used. In the scenario definition, [ScenarioHelpers](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/ScenarioHelpers.cs)'s `WaitForCommandAsync` is used. This can be used to synchronize various points of the test application with the execution of the dotnet-monitor Api from the test itself. +* [ScenarioRunner](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/Runners/ScenarioRunner.cs) is typically used to orchestrate test runs. The class will spawn both an instance of dotnet-monitor and an instance of test application. The app and the test communicate via stdio. The test communicates with dotnet-monitor via its Api surface. +* The dotnet-monitor Api surface can be accessed through the [ApiClient](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.FunctionalTests/HttpApi/ApiClient.cs). +* New scenarios can be added [here](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/). +* The [AsyncWaitScenario](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/Scenarios/AsyncWaitScenario.cs) is sufficient for most tests. +* Coordination of the scenario and the test is done via message passing (json over stdio) between the test and the app. To send messages to the app from the test, [AppRunner](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/Runners/AppRunner.cs)'s `SendCommandAsync` is used. In the scenario definition, [ScenarioHelpers](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.UnitTestApp/ScenarioHelpers.cs)'s `WaitForCommandAsync` is used. This can be used to synchronize various points of the test application with the execution of the dotnet-monitor Api from the test itself. ## Native/Profiler Tests -- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp/) +- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Profiler.UnitTestApp/) This test assembly provides a test to make sure the dotnet-monitor profiler can load into a target app. ## Schema Generation -- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/) -- [Microsoft.Diagnostics.Monitoring.Options](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Microsoft.Diagnostics.Monitoring.Options) +- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.ConfigurationSchema](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/) +- [Microsoft.Diagnostics.Monitoring.Options](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Microsoft.Diagnostics.Monitoring.Options) -Dotnet-monitor generates [schema.json](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/schema.json) using unit tests. If dotnet-monitor's configuration changes, the schema.json file needs to be updated. -Note that it is possible to compile option classes directly into the `ConfigurationSchema` project. This may be necessary in order to attribute properties appropriately for schema generation. See [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj). See the [Configuration](./configuration.md#how-configuration-works) learning path for more details. +Dotnet-monitor generates [schema.json](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/schema.json) using unit tests. If dotnet-monitor's configuration changes, the schema.json file needs to be updated. +Note that it is possible to compile option classes directly into the `ConfigurationSchema` project. This may be necessary in order to attribute properties appropriately for schema generation. See [Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.ConfigurationSchema/Microsoft.Diagnostics.Monitoring.ConfigurationSchema.csproj). See the [Configuration](./configuration.md#how-configuration-works) learning path for more details. ## OpenAPI generation -- [Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests/) -- [Microsoft.Diagnostics.Monitoring.OpenApiGen](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen/) +- [Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.OpenApiGen](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.OpenApiGen/) -These assemblies and tests are used to generate the [OpenAPI spec](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/documentation/openapi.json) for the dotnet-monitor API. Changes to the dotnet-monitor api surface require updating `openapi.json`. +These assemblies and tests are used to generate the [OpenAPI spec](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/documentation/openapi.json) for the dotnet-monitor API. Changes to the dotnet-monitor api surface require updating `openapi.json`. If using VSCode or Codespaces, you can also use the `Regenerate openapi.json` task. ## Startup hooks / hosting startup -- [Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook/) +- [Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestStartupHook/) This assembly is injected into a dotnet-monitor runner (using `DOTNET_STARTUP_HOOKS`) to facilitate Assembly resolution during test runs. -- [Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup/) +- [Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.TestHostingStartup/) Uses `ASPNETCORE_HOSTINGSTARTUPASSEMBLIES` to inject a service into dotnet-monitor during test time. This allows tests to locate files that are not normally part of the test deployment, such as the native profiler. -- [Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests/) +- [Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.StartupHook.UnitTests/) Unit tests around features that are injected via `DOTNET_STARTUP_HOOKS` into the target application. This currently includes the Exceptions History feature. ## Misc test assemblies -- [Microsoft.Diagnostics.Monitoring.TestCommon](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/) +- [Microsoft.Diagnostics.Monitoring.TestCommon](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.TestCommon/) Utility classes that are shared between Unit Tests and Functional Tests. -- [Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon](https://github.com/dotnet/dotnet-monitor/blob/0c3a91196f7e0abe8b9fa5cd8907378c4598b10a/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/) +- [Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon](https://github.com/dotnet/dotnet-monitor/blob/e973263b09f539d9e3751799a1c4416d0b9b2749/src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTestCommon/) Utility classes shared between unit test assemblies. From fc938daa4682791aab9340a90b9c1a1821779b8c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 12 Aug 2025 10:01:36 -0700 Subject: [PATCH 111/112] [main] Update dependencies from dotnet/diagnostics (#8468) * Update dependencies from https://github.com/dotnet/diagnostics build 20250731.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25381.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250801.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25401.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250802.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25402.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250803.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25403.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250804.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25404.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250805.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25405.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250808.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25408.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250809.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25409.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250810.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25410.1 * Update dependencies from https://github.com/dotnet/diagnostics build 20250811.1 Microsoft.Diagnostics.Monitoring , Microsoft.Diagnostics.Monitoring.EventPipe , Microsoft.FileFormats From Version 9.0.0-preview.25379.1 -> To Version 9.0.0-preview.25411.1 --------- Co-authored-by: dotnet-maestro[bot] --- eng/Version.Details.xml | 12 ++++++------ eng/Versions.props | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index b3eede72ba4..362b31fabf8 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -4,13 +4,13 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore 4442a188f9200a57635373dcd640893c0e8dcc78 - + https://github.com/dotnet/diagnostics - 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 + 0dd6f2bab2a10c27e6330517e5760357370efeec - + https://github.com/dotnet/diagnostics - 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 + 0dd6f2bab2a10c27e6330517e5760357370efeec https://github.com/dotnet/command-line-api @@ -42,9 +42,9 @@ https://github.com/dotnet/arcade e29823691315ed6b3acff20d5bdf3b0be7628283 - + https://github.com/dotnet/diagnostics - 481bc26ad85ce7b9f14a4424bd1ea9a3006975f1 + 0dd6f2bab2a10c27e6330517e5760357370efeec https://dev.azure.com/dnceng/internal/_git/dotnet-runtime diff --git a/eng/Versions.props b/eng/Versions.props index f1dee069992..5897de0391b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -57,8 +57,8 @@ 2.0.0-rc.1.25408.2 - 9.0.0-preview.25379.1 - 9.0.0-preview.25379.1 + 9.0.0-preview.25411.1 + 9.0.0-preview.25411.1 9.0.0-preview.25076.3 @@ -67,7 +67,7 @@ 9.0.200-rtm.25073.13 - 1.0.637901 + 1.0.641101 $(MicrosoftNETCoreApp80Version) From 87f78b41be8b1b124a30a4adc7a95237fa820672 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 18 Aug 2025 00:11:43 +0000 Subject: [PATCH 112/112] Restore branch-specific files --- eng/common/core-templates/job/job.yml | 21 ++++++-------------- eng/common/post-build/publish-using-darc.ps1 | 7 ++++++- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/eng/common/core-templates/job/job.yml b/eng/common/core-templates/job/job.yml index 4651b0c8242..d9013251542 100644 --- a/eng/common/core-templates/job/job.yml +++ b/eng/common/core-templates/job/job.yml @@ -19,6 +19,7 @@ parameters: # publishing defaults artifacts: '' enableMicrobuild: false + enableMicrobuildForMacAndLinux: false microbuildUseESRP: true enablePublishBuildArtifacts: false enablePublishBuildAssets: false @@ -124,21 +125,11 @@ jobs: - ${{ preStep }} - ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}: - - ${{ if eq(parameters.enableMicrobuild, 'true') }}: - - task: MicroBuildSigningPlugin@4 - displayName: Install MicroBuild plugin - inputs: - signType: $(_SignType) - zipSources: false - feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json - ${{ if eq(parameters.microbuildUseESRP, true) }}: - ${{ if eq(variables['System.TeamProject'], 'DevDiv') }}: - ConnectedPMEServiceName: 6cc74545-d7b9-4050-9dfa-ebefcc8961ea - ${{ else }}: - ConnectedPMEServiceName: 248d384a-b39b-46e3-8ad5-c2c210d5e7ca - env: - TeamName: $(_TeamName) - MicroBuildOutputFolderOverride: '$(Agent.TempDirectory)' + - template: /eng/common/core-templates/steps/install-microbuild.yml + parameters: + enableMicrobuild: ${{ parameters.enableMicrobuild }} + enableMicrobuildForMacAndLinux: ${{ parameters.enableMicrobuildForMacAndLinux }} + microbuildUseESRP: ${{ parameters.microbuildUseESRP }} continueOnError: ${{ parameters.continueOnError }} - ${{ if and(eq(parameters.runAsPublic, 'false'), eq(variables['System.TeamProject'], 'internal')) }}: diff --git a/eng/common/post-build/publish-using-darc.ps1 b/eng/common/post-build/publish-using-darc.ps1 index a261517ef90..1eda208a3bb 100644 --- a/eng/common/post-build/publish-using-darc.ps1 +++ b/eng/common/post-build/publish-using-darc.ps1 @@ -6,7 +6,8 @@ param( [Parameter(Mandatory=$true)][string] $WaitPublishingFinish, [Parameter(Mandatory=$false)][string] $ArtifactsPublishingAdditionalParameters, [Parameter(Mandatory=$false)][string] $SymbolPublishingAdditionalParameters, - [Parameter(Mandatory=$false)][string] $RequireDefaultChannels + [Parameter(Mandatory=$false)][string] $RequireDefaultChannels, + [Parameter(Mandatory=$false)][string] $SkipAssetsPublishing ) try { @@ -39,6 +40,10 @@ try { $optionalParams.Add("--default-channels-required") | Out-Null } + if ("true" -eq $SkipAssetsPublishing) { + $optionalParams.Add("--skip-assets-publishing") | Out-Null + } + & $darc add-build-to-channel ` --id $buildId ` --publishing-infra-version $PublishingInfraVersion `