Skip to content

[build] clarify dependency pin and update tasks#17463

Merged
titusfortner merged 2 commits into
trunkfrom
deps
May 18, 2026
Merged

[build] clarify dependency pin and update tasks#17463
titusfortner merged 2 commits into
trunkfrom
deps

Conversation

@titusfortner

@titusfortner titusfortner commented May 15, 2026

Copy link
Copy Markdown
Member

This fixes the distinctions between the 3 functions of dependency management

  • pin: regenerate lockfiles, checksums, or Bazel dependency metadata from the current declarations. (Run after update or upgrade tasks, or when updating things manually, or when we put back renovate)
  • update: move resolved dependency versions within the current declarations, then pin.
  • upgrade: change dependency declarations to later versions. UPDATED: This is not going to be its own task, this will be managed by Renovate.

It's a little confusing because

  • Java can't distinguish between update and upgrade like the other bindings.
  • Node does have the ability to "upgrade" but none of the other ecosystems have an equivalent
  • Python's custom script we were using was doing "upgrade"

The plan is to have tasks for everything for "update" and "pin" and use Renovate as appropriate for "upgrade" notifications.

💥 What does this PR do?

  • Python updates were inadvertently left out of release process
  • Release workflow needs to "pin" version updates after bump to nightly not "update"
  • Rust was just updating selenium version, this brings it in line with everything else, and splits pin and update behavior
  • UPDATED Python now splits pin and update by removing the py update script and relying on bazel tooling.

🔧 Implementation Notes

🤖 AI assistance

  • No substantial AI assistance used
  • AI assisted (complete below)
    • Tool(s): claude
    • What was generated: rust commands
    • I reviewed all AI output and can explain the change

💡 Additional Considerations

Next step is figuring out Renovate
Upcoming PR to move Python dependencies to ranges so "update" won't be a noop

🔄 Types of changes

  • New feature (non-breaking change which adds functionality and tests!)

@qodo-code-review

Copy link
Copy Markdown
Contributor

Review Summary by Qodo

Clarify dependency management tasks and include Python in release workflow

✨ Enhancement 📦 Other

Grey Divider

Walkthroughs

Description
• Clarify dependency management by distinguishing pin, update, and upgrade tasks
• Add Python to release workflow dependency pinning process
• Separate Rust pin and update behaviors for consistency
• Refactor Node.js tasks to split update and upgrade functionality
• Update release workflow to use pin instead of update for lockfiles
Diagram
flowchart LR
  A["Dependency Tasks"] --> B["Pin Task"]
  A --> C["Update Task"]
  A --> D["Upgrade Task"]
  B --> B1["Regenerate lockfiles<br/>and checksums"]
  C --> C1["Move versions within<br/>current declarations"]
  C --> B
  D --> D1["Change declarations<br/>to later versions"]
  D --> C
  E["Release Workflow"] --> F["Uses pin instead<br/>of update"]
  F --> G["All language bindings<br/>including Python"]
Loading

Grey Divider

File Changes

1. rake_tasks/java.rake ✨ Enhancement +3/-0

Add Maven upgrade task alias

• Add new upgrade task that aliases to update for Maven dependencies
• Clarify task descriptions for pin and update operations

rake_tasks/java.rake


2. rake_tasks/node.rake ✨ Enhancement +9/-6

Split Node update and upgrade tasks

• Split update task to only update within current ranges
• Create new upgrade task with --latest flag for bumping ranges
• Both tasks now invoke pin to refresh lockfile
• Remove task parameter for latest flag

rake_tasks/node.rake


3. rake_tasks/python.rake ✨ Enhancement +5/-5

Separate Python pin and update tasks

• Move update_py_deps script execution from pin to new update task
• Remove git add operations from pin task
• Change update from alias to standalone task that invokes pin
• Clarify task descriptions

rake_tasks/python.rake


View more (3)
4. rake_tasks/rust.rake ✨ Enhancement +13/-2

Split Rust pin and update tasks

• Create new pin task for Cargo.lock and Bazel crate metadata
• Refactor update task to update all dependencies instead of just selenium-manager
• Update task now invokes pin after updating
• Clarify task descriptions

rake_tasks/rust.rake


5. .github/workflows/release.yml ⚙️ Configuration changes +1/-1

Update release workflow to use pin task

• Change release workflow to use pin instead of update for lockfile reset
• Apply change to all language bindings including Rust

.github/workflows/release.yml


6. Rakefile ✨ Enhancement +2/-0

Include Python in all dependency tasks

• Add Python pin task to all:pin namespace
• Add Python update task to all:update namespace
• Ensure Python dependencies are included in batch operations

Rakefile


Grey Divider

Qodo Logo

@selenium-ci selenium-ci added the B-build Includes scripting, bazel and CI integrations label May 15, 2026
@qodo-code-review

qodo-code-review Bot commented May 15, 2026

Copy link
Copy Markdown
Contributor

Code Review by Qodo

🐞 Bugs (1) 📘 Rule violations (2) 📎 Requirement gaps (0)

Grey Divider


Action required

1. Missing report validation ✓ Resolved 🐞 Bug ☼ Reliability
Description
scripts/update_py_deps.py treats missing packages in pip’s JSON report as “no change”, so it can
print “All repo tooling requirements are up to date!” even when version resolution didn’t return
entries for some/all requested requirements. This can silently leave py/requirements.txt stale while
the command exits successfully.
Code

scripts/update_py_deps.py[R54-73]

+    report = json.loads(result.stdout)
+    installed = {item["metadata"]["name"].lower(): item["metadata"]["version"] for item in report.get("install", [])}
+
+    # Update versions in original lines
+    updated_lines = []
+    updates = []
+    for orig_line, name_with_extras, name_normalized in packages:
+        old_version = orig_line.split("==")[1]
+        new_version = installed.get(name_normalized)
+
+        if new_version and new_version != old_version:
+            updates.append((name_with_extras, old_version, new_version))
+            updated_lines.append(f"{name_with_extras}=={new_version}")
+            print(f"  {name_with_extras}: {old_version} -> {new_version}")
+        else:
+            updated_lines.append(orig_line)
+
+    if not updates:
+        print("\nAll repo tooling requirements are up to date!")
+        return
Evidence
The script constructs installed only from report.get("install", []), then uses .get() to look
up each requested package; missing keys become None and are treated as “no update”. If this
happens for all packages, updates remains empty and the script returns early with an “up to date”
message, even though no versions were actually obtained.

scripts/update_py_deps.py[54-73]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`scripts/update_py_deps.py` builds `installed` from `report.get("install", [])` and then uses `installed.get(name_normalized)`; missing entries are treated as unchanged, and if `updates` stays empty the script prints a success message and exits. This can mask cases where the report is empty/partial and no versions were actually resolved.

## Issue Context
This script is used to update pinned versions in `py/requirements.txt` and is invoked via Bazel (`bazel run //scripts:update_py_deps`). A silent success with no updates when resolution data is missing makes dependency maintenance unreliable.

## Fix Focus Areas
- scripts/update_py_deps.py[54-73]

## Suggested fix
- After parsing the report, validate that every `name_normalized` from `packages` exists in `installed`.
 - If any are missing, raise a `RuntimeError` that includes a helpful diagnostic (e.g., mention missing names and include `result.stderr` and a truncated `result.stdout`).
- Optionally wrap `json.loads(result.stdout)` in `try/except json.JSONDecodeError` and raise a clearer error including stderr/stdout context.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


2. node:update drops latest arg 📘 Rule violation ≡ Correctness
Description
The node:update rake task no longer accepts/handles the latest argument, changing a user-invoked
interface and behavior for upgrading dependency ranges. This is a breaking change without
deprecation guidance to use node:upgrade instead.
Code

rake_tasks/node.rake[R47-56]

+desc 'Update JavaScript dependencies and refresh lockfile'
+task :update do
+  Bazel.execute('run', ['--', 'update', '-r', '--dir', Dir.pwd], '@pnpm//:pnpm')
+  Rake::Task['node:pin'].invoke
+end
+
+desc 'Upgrade JavaScript dependency declarations and refresh lockfile'
+task :upgrade do
+  Bazel.execute('run', ['--', 'update', '-r', '--latest', '--dir', Dir.pwd], '@pnpm//:pnpm')
  Rake::Task['node:pin'].invoke
Evidence
PR Compliance ID 2 requires maintaining backward compatibility for user-facing interfaces;
node:update is now defined without any argument handling and does not apply --latest. PR
Compliance ID 5 requires deprecating public functionality before removal with guidance; there is no
deprecation warning or compatibility shim directing users of node:update[latest] to
node:upgrade.

AGENTS.md
AGENTS.md
rake_tasks/node.rake[47-57]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`node:update` used to support a `latest` argument to bump dependency ranges; the task now ignores/removes that interface and behavior, which breaks existing invocations and provides no deprecation guidance.

## Issue Context
This PR introduces a new `node:upgrade` task that uses `--latest`, but existing workflows/users may still call `rake "node:update[latest]"` expecting the previous behavior.

## Fix Focus Areas
- rake_tasks/node.rake[47-56]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


3. py:update breaks on Windows ✓ Resolved 🐞 Bug ☼ Reliability
Description
The py:update rake task now runs //scripts:update_py_deps, but update_py_deps.py hardcodes the venv
pip location as <venv>/bin/pip, which does not exist on Windows (venv uses Scripts/). This will make
./go py:update fail on Windows environments with a FileNotFoundError when trying to execute pip.
Code

rake_tasks/python.rake[R132-136]

+desc 'Update Python dependencies'
+task :update do
+  Bazel.execute('run', [], '//scripts:update_py_deps')
+  Rake::Task['py:pin'].invoke
+end
Evidence
The PR changes py:update to run //scripts:update_py_deps, and that script currently builds a pip
path under venv_dir/bin which is POSIX-specific and will not exist on Windows venvs, causing the
subprocess invocations to fail.

rake_tasks/python.rake[127-136]
scripts/update_py_deps.py[34-71]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

### Issue description
`py:update` now invokes `//scripts:update_py_deps`, but `scripts/update_py_deps.py` assumes a POSIX virtualenv layout (`venv/bin/pip`). On Windows the venv executables live under `venv\Scripts\` (e.g., `pip.exe`), so the script will fail when it tries to run pip.

### Issue Context
This regression is introduced by changing `py:update` from an alias of `py:pin` to executing `//scripts:update_py_deps`.

### Fix Focus Areas
- scripts/update_py_deps.py[34-71]
- rake_tasks/python.rake[127-136]

### Suggested fix
Update `scripts/update_py_deps.py` to invoke pip via the venv’s python in a cross-platform way:
- Determine the venv python path with `Scripts/python.exe` on Windows and `bin/python` on POSIX, then run `python -m pip ...`.
- Avoid directly calling `venv_dir / "bin" / "pip"`.

Example sketch:
```py
import os
bin_dir = "Scripts" if os.name == "nt" else "bin"
python = venv_dir / bin_dir / ("python.exe" if os.name == "nt" else "python")

subprocess.run([str(python), "-m", "pip", "install", "-q", "--upgrade", "pip"], ...)
subprocess.run([str(python), "-m", "pip", "install", "-q", *install_names], ...)
subprocess.run([str(python), "-m", "pip", "list", "--format=json"], ...)
```

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools



Remediation recommended

4. update_py_deps Bazel target removed 📘 Rule violation ⚙ Maintainability
Description
The PR removes the //scripts:update_py_deps Bazel target (and its backing script), which can break
existing user/tooling workflows that invoke it. No deprecation path or compatibility alias is
provided to guide users to the replacement flow.
Code

scripts/BUILD.bazel[L50-54]

-py_binary(
-    name = "update_py_deps",
-    srcs = ["update_py_deps.py"],
-)
-
Evidence
Rule 2 requires avoiding breaking changes to existing user-invokable interfaces without explicit
direction, and Rule 6 requires deprecating public functionality before removal with an alternative.
The update_py_deps target is no longer present in scripts/BUILD.bazel, while py:update now
points users to the replacement //py:requirements.update -- --upgrade behavior, but without a
deprecation/compatibility bridge for the removed target.

AGENTS.md
AGENTS.md
scripts/BUILD.bazel[1-61]
rake_tasks/python.rake[127-135]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The `//scripts:update_py_deps` Bazel target was removed, which can break downstream automation/users that still invoke it. Per compliance guidance, removals of user-invokable/public functionality should be preceded by deprecation and an explicit alternative.

## Issue Context
The new intended workflow appears to be `//py:requirements.update` (and `rake py:update` now passes `--upgrade`). However, existing callers of `bazel run //scripts:update_py_deps` will now fail without a clear migration path.

## Fix Focus Areas
- scripts/BUILD.bazel[47-55]
- rake_tasks/python.rake[127-135]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


5. Rust repin path diverges 🐞 Bug ⚙ Maintainability
Description
rust:pin repins Rust crate metadata via bazel fetch @crates//... with CARGO_BAZEL_REPIN, but
the repo’s existing Rust repin automation uses CARGO_BAZEL_REPIN=true bazel run @crates//:all.
Since fetch does not execute @crates//:all, running ./go rust:pin will not follow the same
repin mechanism as CI, making local/manual repins inconsistent with the repo-standard repin process.
Code

rake_tasks/rust.rake[R26-34]

+desc 'Pin Rust dependencies'
+task :pin do
+  puts 'pinning Cargo.lock and Bazel crate metadata'
+  manifest = File.expand_path('rust/Cargo.toml')
+  Bazel.execute('run',
+                ['--', 'generate-lockfile', '--manifest-path', manifest],
+                '@rules_rust//tools/upstream_wrapper:cargo')
+  Bazel.execute('fetch', ['--repo_env=CARGO_BAZEL_REPIN=true'], '@crates//...')
+end
Evidence
The new rust:pin task uses bazel fetch ... @crates//..., while the repo’s Rust repin workflow
explicitly runs bazel run @crates//:all with CARGO_BAZEL_REPIN=true, demonstrating the standard
repin mechanism used in CI.

rake_tasks/rust.rake[26-34]
.github/workflows/ci-renovate-rbe.yml[19-26]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`rust:pin` currently uses `bazel fetch` to repin the Rust crate universe, but the repo’s CI repin workflow uses `CARGO_BAZEL_REPIN=true bazel run @crates//:all`. This means the local `rust:pin` task won’t exercise the same repin mechanism CI uses.

## Issue Context
The repo already has an established Rust repin command in `.github/workflows/ci-renovate-rbe.yml`. Aligning `rust:pin` with that command improves consistency and reduces “works locally but not in CI” drift.

## Fix Focus Areas
- rake_tasks/rust.rake[26-34]

### Suggested change
Replace the `Bazel.execute('fetch', ..., '@crates//...')` call with a `bazel run` of the repin target (e.g. `@crates//:all`) using the same `CARGO_BAZEL_REPIN` trigger.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


6. pip --report JSON unvalidated ✓ Resolved 📘 Rule violation ☼ Reliability
Description
The new dependency resolution flow parses pip --report - output with json.loads(result.stdout)
and then assumes specific keys exist, which can crash with non-actionable
JSONDecodeError/KeyError if pip emits non-JSON output or the report schema differs. This
violates the requirement to validate external/protocol inputs and raise deterministic, descriptive
exceptions.
Code

scripts/update_py_deps.py[R54-55]

+    report = json.loads(result.stdout)
+    installed = {item["metadata"]["name"].lower(): item["metadata"]["version"] for item in report.get("install", [])}
Evidence
The checklist requires validating external/protocol inputs and producing deterministic, actionable
exceptions. The code directly JSON-decodes pip stdout and indexes nested fields without guarding
against invalid JSON or missing keys, which can lead to unclear runtime crashes.

scripts/update_py_deps.py[54-55]
Best Practice: Learned patterns

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`scripts/update_py_deps.py` parses `pip --report -` output without validating that the output is valid JSON or that expected keys exist, which can produce unclear crashes (e.g., `JSONDecodeError`, `KeyError`).

## Issue Context
This script consumes external/protocol-derived data (pip report JSON). Per compliance, failures should be deterministic and actionable (explicit exceptions indicating what was wrong and how to fix).

## Fix Focus Areas
- scripts/update_py_deps.py[54-56]

## Suggested implementation notes
- Wrap `json.loads(result.stdout)` in `try/except json.JSONDecodeError` and raise a `RuntimeError` (or custom exception) that includes a short message and relevant `stderr/stdout` context.
- Validate `report` is a dict and that `report.get("install")` is a list.
- When building `installed`, use `.get()` accessors (or explicit checks) and raise a descriptive exception if required fields like `metadata.name`/`metadata.version` are missing.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

Qodo Logo

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR clarifies the distinction between pin, update, and upgrade dependency-management tasks across language bindings, and fixes the release workflow to invoke pin (refresh lockfiles after a version bump) instead of update (which would also bump resolved dependency versions). Python's tasks are also restructured so update actually upgrades resolved versions and pin only regenerates lockfiles, and Python is added to the all: aggregates that previously omitted it.

Changes:

  • Split pin vs update semantics for Rust and Python; add a separate node:upgrade and a java:upgrade alias for ranged bumps.
  • Add py:pin/py:update to all:pin/all:update so Python is no longer skipped.
  • Switch the release "Reset Dependencies" step from :update to :pin (and rust:updaterust:pin).

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
Rakefile Adds py:pin and py:update to the all: aggregate tasks.
rake_tasks/rust.rake Introduces rust:pin (generate-lockfile + CARGO_BAZEL_REPIN) and broadens rust:update to update all crates, then pin.
rake_tasks/python.rake Makes py:pin only refresh the lockfile and py:update actually bump deps via //scripts:update_py_deps, then pin.
rake_tasks/node.rake Splits the old update[:latest] task into node:update and a new node:upgrade (uses --latest), each followed by node:pin.
rake_tasks/java.rake Adds a java:upgrade alias to java:update for naming parity with other bindings.
.github/workflows/release.yml Changes the post-version-bump reset step to call :pin (and rust:pin) instead of :update.

Comment thread rake_tasks/node.rake Outdated
Comment thread rake_tasks/python.rake Outdated
@qodo-code-review

qodo-code-review Bot commented May 15, 2026

Copy link
Copy Markdown
Contributor

Persistent review updated to latest commit dde3f25

Comment thread scripts/update_py_deps.py Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 7 changed files in this pull request and generated no new comments.

@qodo-code-review

qodo-code-review Bot commented May 15, 2026

Copy link
Copy Markdown
Contributor

Persistent review updated to latest commit 11c1b0f

@qodo-code-review

qodo-code-review Bot commented May 15, 2026

Copy link
Copy Markdown
Contributor

Persistent review updated to latest commit 3092715

@titusfortner

Copy link
Copy Markdown
Member Author

Not merging until @cgoldberg verifies the Python pieces look right. :)

@qodo-code-review

qodo-code-review Bot commented May 16, 2026

Copy link
Copy Markdown
Contributor

Persistent review updated to latest commit 1ea3b7a

@qodo-code-review

qodo-code-review Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor

Persistent review updated to latest commit 4d9383e

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.

@qodo-code-review

qodo-code-review Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor

Persistent review updated to latest commit 49a794a

This was referenced Jun 16, 2026
PhilipWoulfe pushed a commit to PhilipWoulfe/F1Competition that referenced this pull request Jul 5, 2026
Updated
[coverlet.collector](https://github.com/coverlet-coverage/coverlet) from
10.0.0 to 10.0.1.

<details>
<summary>Release notes</summary>

_Sourced from [coverlet.collector's
releases](https://github.com/coverlet-coverage/coverlet/releases)._

## 10.0.1

### Improvements

- Coverlet with MTP 2 doesn't show test coverage statistic in console
[#​1907](https://github.com/coverlet-coverage/coverlet/issues/1907)
- Avoid unnecessary testhost restarts
[#​1912](https://github.com/coverlet-coverage/coverlet/issues/1912) by
<https://github.com/mawosoft>

### Fixed

- Fix inconsistent paths in cobertura reports
[#​1723](https://github.com/coverlet-coverage/coverlet/issues/1723)
- Fix when using "is" with "and" in pattern matching, branch coverage is
lower than normal
[#​1313](https://github.com/coverlet-coverage/coverlet/issues/1313)
- Fix Coverlet flagging a branch for an async functions finally block
where none exists
[#​1337](https://github.com/coverlet-coverage/coverlet/issues/1337)
- Fix Coverlet Tracker Missing CompilerGeneratedAttribute
[#​1828](https://github.com/coverlet-coverage/coverlet/issues/1828)

### Maintenance

- Add architecture docs and diagrams for all integrations
[#​1927](https://github.com/coverlet-coverage/coverlet/pull/1927)
- Update NuGet packages and .NET SDK versions
[#​1933](https://github.com/coverlet-coverage/coverlet/pull/1933)

[Diff between 10.0.0 and
10.0.1](https://github.com/coverlet-coverage/coverlet/compare/v10.0.0...v10.0.1)

Commits viewable in [compare
view](https://github.com/coverlet-coverage/coverlet/compare/v10.0.0...v10.0.1).
</details>

Updated
[coverlet.msbuild](https://github.com/coverlet-coverage/coverlet) from
10.0.0 to 10.0.1.

<details>
<summary>Release notes</summary>

_Sourced from [coverlet.msbuild's
releases](https://github.com/coverlet-coverage/coverlet/releases)._

## 10.0.1

### Improvements

- Coverlet with MTP 2 doesn't show test coverage statistic in console
[#​1907](https://github.com/coverlet-coverage/coverlet/issues/1907)
- Avoid unnecessary testhost restarts
[#​1912](https://github.com/coverlet-coverage/coverlet/issues/1912) by
<https://github.com/mawosoft>

### Fixed

- Fix inconsistent paths in cobertura reports
[#​1723](https://github.com/coverlet-coverage/coverlet/issues/1723)
- Fix when using "is" with "and" in pattern matching, branch coverage is
lower than normal
[#​1313](https://github.com/coverlet-coverage/coverlet/issues/1313)
- Fix Coverlet flagging a branch for an async functions finally block
where none exists
[#​1337](https://github.com/coverlet-coverage/coverlet/issues/1337)
- Fix Coverlet Tracker Missing CompilerGeneratedAttribute
[#​1828](https://github.com/coverlet-coverage/coverlet/issues/1828)

### Maintenance

- Add architecture docs and diagrams for all integrations
[#​1927](https://github.com/coverlet-coverage/coverlet/pull/1927)
- Update NuGet packages and .NET SDK versions
[#​1933](https://github.com/coverlet-coverage/coverlet/pull/1933)

[Diff between 10.0.0 and
10.0.1](https://github.com/coverlet-coverage/coverlet/compare/v10.0.0...v10.0.1)

Commits viewable in [compare
view](https://github.com/coverlet-coverage/coverlet/compare/v10.0.0...v10.0.1).
</details>

Updated
[Microsoft.AspNetCore.Components.Authorization](https://github.com/dotnet/aspnetcore)
from 8.0.27 to 8.0.28.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Components.Authorization's
releases](https://github.com/dotnet/aspnetcore/releases)._

## 8.0.28

[Release](https://github.com/dotnet/core/releases/tag/v8.0.28)

## What's Changed
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66589
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66556
* [release/8.0] Update dependencies from dotnet/source-build-assets by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66471
* [release/8.0] Update dependencies from dotnet/source-build-externals
by @​dotnet-maestro[bot] in
https://github.com/dotnet/aspnetcore/pull/66344
* [release/8.0] Strip UTF-8 BOM from template localization files and
remove version override by @​wtgodbe in
https://github.com/dotnet/aspnetcore/pull/66427
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66662


**Full Changelog**:
https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28

Commits viewable in [compare
view](https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28).
</details>

Updated
[Microsoft.AspNetCore.Components.WebAssembly](https://github.com/dotnet/aspnetcore)
from 8.0.27 to 8.0.28.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Components.WebAssembly's
releases](https://github.com/dotnet/aspnetcore/releases)._

## 8.0.28

[Release](https://github.com/dotnet/core/releases/tag/v8.0.28)

## What's Changed
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66589
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66556
* [release/8.0] Update dependencies from dotnet/source-build-assets by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66471
* [release/8.0] Update dependencies from dotnet/source-build-externals
by @​dotnet-maestro[bot] in
https://github.com/dotnet/aspnetcore/pull/66344
* [release/8.0] Strip UTF-8 BOM from template localization files and
remove version override by @​wtgodbe in
https://github.com/dotnet/aspnetcore/pull/66427
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66662


**Full Changelog**:
https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28

Commits viewable in [compare
view](https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28).
</details>

Updated
[Microsoft.AspNetCore.Components.WebAssembly.DevServer](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Components.WebAssembly.DevServer's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.AspNetCore.Http.Abstractions](https://github.com/dotnet/aspnetcore)
from 2.3.10 to 2.3.11.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Http.Abstractions's
releases](https://github.com/dotnet/aspnetcore/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/aspnetcore/commits).
</details>

Updated
[Microsoft.AspNetCore.Mvc.Testing](https://github.com/dotnet/aspnetcore)
from 8.0.27 to 8.0.28.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Mvc.Testing's
releases](https://github.com/dotnet/aspnetcore/releases)._

## 8.0.28

[Release](https://github.com/dotnet/core/releases/tag/v8.0.28)

## What's Changed
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66589
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66556
* [release/8.0] Update dependencies from dotnet/source-build-assets by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66471
* [release/8.0] Update dependencies from dotnet/source-build-externals
by @​dotnet-maestro[bot] in
https://github.com/dotnet/aspnetcore/pull/66344
* [release/8.0] Strip UTF-8 BOM from template localization files and
remove version override by @​wtgodbe in
https://github.com/dotnet/aspnetcore/pull/66427
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66662


**Full Changelog**:
https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28

Commits viewable in [compare
view](https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28).
</details>

Updated
[Microsoft.AspNetCore.OpenApi](https://github.com/dotnet/aspnetcore)
from 8.0.27 to 8.0.28.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.OpenApi's
releases](https://github.com/dotnet/aspnetcore/releases)._

## 8.0.28

[Release](https://github.com/dotnet/core/releases/tag/v8.0.28)

## What's Changed
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66589
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66556
* [release/8.0] Update dependencies from dotnet/source-build-assets by
@​dotnet-maestro[bot] in https://github.com/dotnet/aspnetcore/pull/66471
* [release/8.0] Update dependencies from dotnet/source-build-externals
by @​dotnet-maestro[bot] in
https://github.com/dotnet/aspnetcore/pull/66344
* [release/8.0] Strip UTF-8 BOM from template localization files and
remove version override by @​wtgodbe in
https://github.com/dotnet/aspnetcore/pull/66427
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/aspnetcore/pull/66662


**Full Changelog**:
https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28

Commits viewable in [compare
view](https://github.com/dotnet/aspnetcore/compare/v8.0.27...v8.0.28).
</details>

Updated
[Microsoft.EntityFrameworkCore](https://github.com/dotnet/efcore) from
9.0.16 to 9.0.17.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.EntityFrameworkCore's
releases](https://github.com/dotnet/efcore/releases)._

## 9.0.17

[Release](https://github.com/dotnet/core/releases/tag/v9.0.17)

## What's Changed
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/efcore/pull/38204
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38227
* Update branding to 9.0.17 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38228
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38230
* Merging internal commits for release/9.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38262
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38263
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38266


**Full Changelog**:
https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17

Commits viewable in [compare
view](https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17).
</details>

Updated
[Microsoft.EntityFrameworkCore.Design](https://github.com/dotnet/efcore)
from 9.0.16 to 9.0.17.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.EntityFrameworkCore.Design's
releases](https://github.com/dotnet/efcore/releases)._

## 9.0.17

[Release](https://github.com/dotnet/core/releases/tag/v9.0.17)

## What's Changed
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/efcore/pull/38204
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38227
* Update branding to 9.0.17 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38228
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38230
* Merging internal commits for release/9.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38262
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38263
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38266


**Full Changelog**:
https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17

Commits viewable in [compare
view](https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17).
</details>

Updated
[Microsoft.EntityFrameworkCore.InMemory](https://github.com/dotnet/efcore)
from 9.0.16 to 9.0.17.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.EntityFrameworkCore.InMemory's
releases](https://github.com/dotnet/efcore/releases)._

## 9.0.17

[Release](https://github.com/dotnet/core/releases/tag/v9.0.17)

## What's Changed
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/efcore/pull/38204
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38227
* Update branding to 9.0.17 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38228
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38230
* Merging internal commits for release/9.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38262
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38263
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38266


**Full Changelog**:
https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17

Commits viewable in [compare
view](https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17).
</details>

Updated
[Microsoft.EntityFrameworkCore.Relational](https://github.com/dotnet/efcore)
from 9.0.16 to 9.0.17.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.EntityFrameworkCore.Relational's
releases](https://github.com/dotnet/efcore/releases)._

## 9.0.17

[Release](https://github.com/dotnet/core/releases/tag/v9.0.17)

## What's Changed
* [release/8.0] Update dependencies from dotnet/arcade by
@​dotnet-maestro[bot] in https://github.com/dotnet/efcore/pull/38204
* Update branding to 8.0.28 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38227
* Update branding to 9.0.17 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38228
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38230
* Merging internal commits for release/9.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38262
* Merging internal commits for release/8.0 by @​vseanreesermsft in
https://github.com/dotnet/efcore/pull/38263
* [automated] Merge branch 'release/8.0' => 'release/9.0' by
@​github-actions[bot] in https://github.com/dotnet/efcore/pull/38266


**Full Changelog**:
https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17

Commits viewable in [compare
view](https://github.com/dotnet/efcore/compare/v9.0.16...v9.0.17).
</details>

Updated
[Microsoft.Extensions.Caching.Abstractions](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Caching.Abstractions's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration.Binder](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration.Binder's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated [Microsoft.Extensions.Hosting](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Hosting's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated [Microsoft.Extensions.Http](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Http's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Options.DataAnnotations](https://github.com/dotnet/dotnet)
from 10.0.8 to 10.0.9.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Options.DataAnnotations's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.IdentityModel.Tokens](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet)
from 8.18.0 to 8.19.1.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.IdentityModel.Tokens's
releases](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/releases)._

## 8.19.1

## Bug Fixes
- Update `JwtSecurityTokenHandler` for
`IssuerSigningKeyResolverUsingConfiguration` to take priority over
`IssuerSigningKeyResolver`, matching the documented contract and the
correct behavior already present in `JsonWebTokenHandler`. See [PR
#​3519](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3519).

## 8.19.0

## New Features
- Add ML-DSA (FIPS 204) post-quantum signature support. See [PR
#​3479](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3479).
- Cache custom crypto providers in CryptoProviderFactory. See [PR
#​3489](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3489).

## Bug Fixes
- Disable automatic redirects on default HttpClient for JKU retrieval.
See [PR
#​3494](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3494).
- Adjust rented buffer handling in claim set parsing. See [PR
#​3493](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3493).
- Tidy null handling in SAML conditions validation. See [PR
#​3491](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3491).
- Improve validation of `jku` claim. See [PR
#​3481](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3481).
- Limit telemetry algorithm dimension cardinality. See [PR
#​3490](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3490).
- Add defensive copy of collections in ValidationParameters. See [PR
#​3492](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3492).
- Update TokenValidationParameter copy constructor to make a deep copy.
See [PR
#​3488](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3488).
- Update to fail-closed when replay protection isn't configured and
other DPoP hardening. See [PR
#​3505](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3505).
- Apply RFC 3986 section 6.2.2 normalization to DPoP `htu` comparison.
See [PR
#​3509](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3509).

Commits viewable in [compare
view](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/compare/8.18.0...8.19.1).
</details>

Updated [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest)
from 18.5.1 to 18.7.0.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.NET.Test.Sdk's
releases](https://github.com/microsoft/vstest/releases)._

## 18.7.0

## What's Changed
* Add ARM64 msdia140.dll support to test platform packages by
@​jamesmcroft in https://github.com/microsoft/vstest/pull/15689
* Update System.Memory from 4.5.5 to 4.6.3 by @​nohwnd in
https://github.com/microsoft/vstest/pull/15706

## New Contributors
* @​jamesmcroft made their first contribution in
https://github.com/microsoft/vstest/pull/15689

**Full Changelog**:
https://github.com/microsoft/vstest/compare/v18.6.0...v18.7.0

## 18.6.0

## What's Changed
* Revert removal of Video Recorder by @​nohwnd in
https://github.com/microsoft/vstest/pull/15336
* Speed up blame by filtering non-.NET processes from dump collection by
@​nohwnd in https://github.com/microsoft/vstest/pull/15518
* Add README.md to NuGet packages by @​nohwnd in
https://github.com/microsoft/vstest/pull/15550
* Report child process info on connection timeout by @​nohwnd in
https://github.com/microsoft/vstest/pull/15603


### Changes to tests and infra
* Brand as 18.6 by @​nohwnd in
https://github.com/microsoft/vstest/pull/15423
* Upgrading code coverage version to 18.5.1, by @​fhnaseer in
https://github.com/microsoft/vstest/pull/15422
* Updating System.Collections.Immutable to 9.0.11 by @​MSLukeWest in
https://github.com/microsoft/vstest/pull/15425
* Fix attachVS when used for debugging integration tests by @​nohwnd in
https://github.com/microsoft/vstest/pull/15451
* Replace dotnet.config, with global.json by @​nohwnd in
https://github.com/microsoft/vstest/pull/15449
* Document debugging integration tests with AttachVS by @​Copilot in
https://github.com/microsoft/vstest/pull/15452
* Fix stack overflow tests by @​nohwnd in
https://github.com/microsoft/vstest/pull/15461
* Make TestAssets.sln buildable locally by @​Youssef1313 in
https://github.com/microsoft/vstest/pull/15466
* Try filtering out tests by @​nohwnd in
https://github.com/microsoft/vstest/pull/15463
* Build just once when tfms run in parallel by @​nohwnd in
https://github.com/microsoft/vstest/pull/15465
* Review simplify compatibility sources, deduplicate tests by @​nohwnd
in https://github.com/microsoft/vstest/pull/15472
* Cleanup dead TRX code by @​Youssef1313 in
https://github.com/microsoft/vstest/pull/15474
* Update .NET runtimes to 8.0.25, 9.0.14, and 10.0.4 by @​nohwnd in
https://github.com/microsoft/vstest/pull/15481
* Compat matrix checker by @​nohwnd in
https://github.com/microsoft/vstest/pull/15480
* Add trx analysis skill by @​nohwnd in
https://github.com/microsoft/vstest/pull/15486
* Split integration tests to single tfm and multi tfm project by
@​nohwnd in https://github.com/microsoft/vstest/pull/15484
* Update matrix by @​nohwnd in
https://github.com/microsoft/vstest/pull/15477
* Break infinite restore loop in VS by @​nohwnd in
https://github.com/microsoft/vstest/pull/15503
* Use global package cache for build, and local for running integration
tests by @​nohwnd in https://github.com/microsoft/vstest/pull/15500
* Update contributing by @​nohwnd in
https://github.com/microsoft/vstest/pull/15505
* Reduce test wall-clock time by increasing minThreads by @​drognanar in
https://github.com/microsoft/vstest/pull/15502
* Indicator flakiness by @​nohwnd in
https://github.com/microsoft/vstest/pull/15513
* Fix ci build by @​nohwnd in
https://github.com/microsoft/vstest/pull/15515
* Fix thread safety issues by @​Evangelink in
https://github.com/microsoft/vstest/pull/15512
* Optimize DotnetSDKSimulation_PostProcessing test (163s → 61s) by
@​nohwnd in https://github.com/microsoft/vstest/pull/15516
* Build isolated test assets for single TFM instead of 7 by @​nohwnd in
https://github.com/microsoft/vstest/pull/15517
* Remove unused dependencies from Library.IntegrationTests by @​nohwnd
in https://github.com/microsoft/vstest/pull/15527
* Remove printing _attachments content to console by @​nohwnd in
https://github.com/microsoft/vstest/pull/15520
* Add Linux/macOS test filtering guide to CONTRIBUTING.md by @​nohwnd in
https://github.com/microsoft/vstest/pull/15521
* Change integration test parallelization from ClassLevel to MethodLevel
by @​nohwnd in https://github.com/microsoft/vstest/pull/15526
* Unify target framework checks with IsNetFrameworkTarget/IsNetTarget by
@​nohwnd in https://github.com/microsoft/vstest/pull/15523
* Add unattended work instructions to copilot-instructions.md by
@​nohwnd in https://github.com/microsoft/vstest/pull/15531
* Reduce code style rule severity from warning to suggestion by @​nohwnd
in https://github.com/microsoft/vstest/pull/15522
* Remove Debug/Release line number branching from tests by @​nohwnd in
https://github.com/microsoft/vstest/pull/15519
* Revise unattended work instructions in copilot-instructions.md by
@​nohwnd in https://github.com/microsoft/vstest/pull/15532
* Improve CompatibilityRowsBuilder error message with diagnostic details
by @​nohwnd in https://github.com/microsoft/vstest/pull/15529
* docs: add git worktree and upstream sync workflow to
copilot-instructions.md by @​nohwnd in
https://github.com/microsoft/vstest/pull/15538
* Add VSIX runner to smoke tests by @​nohwnd in
https://github.com/microsoft/vstest/pull/15541
* Remove deprecated WebTest and TMI test methods by @​nohwnd in
https://github.com/microsoft/vstest/pull/15525
* Fix compatibility test failures for legacy vstest.console and MSTest
adapter by @​nohwnd in https://github.com/microsoft/vstest/pull/15534
* Convert TestPlatform.sln to slnx format by @​nohwnd in
https://github.com/microsoft/vstest/pull/15551
* Convert test/TestAssets .sln files to .slnx format by @​nohwnd in
https://github.com/microsoft/vstest/pull/15557
 ... (truncated)

Commits viewable in [compare
view](https://github.com/microsoft/vstest/compare/v18.5.1...v18.7.0).
</details>

Updated [Selenium.Support](https://github.com/SeleniumHQ/selenium) from
4.44.0 to 4.45.0.

<details>
<summary>Release notes</summary>

_Sourced from [Selenium.Support's
releases](https://github.com/SeleniumHQ/selenium/releases)._

## 4.45.0

## Detailed Changelogs by Component

<img src="https://www.selenium.dev/images/programming/java.svg"
width="20" height="20">
**[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/python.svg" width="20"
height="20">
**[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
height="20">
**[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
height="20">
**[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/javascript.svg"
width="20" height="20">
**[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
<br>


<!-- Release notes generated using configuration in .github/release.yml
at selenium-4.45.0 -->

## What's Changed
* [build] derive PR diff base from HEAD^1 instead of trunk tip by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17438
* [build] setup trusted publishing from Github to npmrc by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17445
* [build] generate release notes from previous minor release tag by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17449
* [build] fix when to update lock files during the release process by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17450
* [java] remove deprecated logging classes by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17453
* [grid] Close pre-handshake race in WebSocket proxy by @​shs96c in
https://github.com/SeleniumHQ/selenium/pull/17435
* [JavaScript] Correct handling for older browsers and missing casing by
@​AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17451
* Use pyproject for Python runtime deps lock input by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17452
* [rb] deprecate curb http client support by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17443
* [javascript] Migrate find-elements atom from Closure to TypeScript by
@​AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17458
* [py] replace rules_python sphinxdocs with local sphinx_docs rule by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17461
* [build] Configure Renovate dashboard approval by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17464
* [js] update vulnerable dependency with a range by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17466
* [build] remove duplicated grid ui tests by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17468
* [build] update java graphpql dependency by filtering out bad reference
by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17469
* [rb] upgrade to steep 2.0 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17470
* [rust] update dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17472
* [build] update GitHub Actions to latest major versions by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17475
* [dotnet] update dev dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17474
* [dotnet] fix template caching by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17476
* [dotnet] update system.text.json to 8.0.6 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17477
* [js] update dev dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17479
* [dotnet] upgrade paket from v9 to v10 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17481
* [build] bump bazel version to 9.1 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17480
* [rust] update zip to v8 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17485
* [js] update eslint to v10 with fixes by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17482
* [rb] Update ruby to 3.3.9 by @​aguspe in
https://github.com/SeleniumHQ/selenium/pull/17484
* [dotnet] include snupkg files when packaging things up and allow the
use of sourcelink by @​AutomatedTester in
https://github.com/SeleniumHQ/selenium/pull/17467
* [build] update download-artifact to v8 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17493
* [dotnet] run format against slnx instead of looping csproj by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17483
* [build] bump low-risk Bazel module dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17494
* [rust] update reqwest to 0.13 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17488
* [dotnet] [build] Fix remote linkage in SourceLink by @​nvborisenko in
https://github.com/SeleniumHQ/selenium/pull/17495
* [build] remove renovate update requests pending work done in #​17427
by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17498
* [dotnet] [build] Support deterministic build output by @​nvborisenko
in https://github.com/SeleniumHQ/selenium/pull/17497
* [build] bump ruby versions to latest patch releases by @​titusfortner
in https://github.com/SeleniumHQ/selenium/pull/17496
* [js] remove npm dependency by using bazel for everything by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17499
* [build] bump rules_jvm_external by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17501
* [build] bump rules_closure version by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17500
* [build] clarify dependency pin and update tasks by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17463
* [build] simplify commit-changes workflow by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17503
 ... (truncated)

Commits viewable in [compare
view](https://github.com/SeleniumHQ/selenium/compare/selenium-4.44.0...selenium-4.45.0).
</details>

Updated [Selenium.WebDriver](https://github.com/SeleniumHQ/selenium)
from 4.44.0 to 4.45.0.

<details>
<summary>Release notes</summary>

_Sourced from [Selenium.WebDriver's
releases](https://github.com/SeleniumHQ/selenium/releases)._

## 4.45.0

## Detailed Changelogs by Component

<img src="https://www.selenium.dev/images/programming/java.svg"
width="20" height="20">
**[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/python.svg" width="20"
height="20">
**[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
height="20">
**[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
height="20">
**[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
&nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
src="https://www.selenium.dev/images/programming/javascript.svg"
width="20" height="20">
**[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
<br>


<!-- Release notes generated using configuration in .github/release.yml
at selenium-4.45.0 -->

## What's Changed
* [build] derive PR diff base from HEAD^1 instead of trunk tip by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17438
* [build] setup trusted publishing from Github to npmrc by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17445
* [build] generate release notes from previous minor release tag by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17449
* [build] fix when to update lock files during the release process by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17450
* [java] remove deprecated logging classes by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17453
* [grid] Close pre-handshake race in WebSocket proxy by @​shs96c in
https://github.com/SeleniumHQ/selenium/pull/17435
* [JavaScript] Correct handling for older browsers and missing casing by
@​AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17451
* Use pyproject for Python runtime deps lock input by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17452
* [rb] deprecate curb http client support by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17443
* [javascript] Migrate find-elements atom from Closure to TypeScript by
@​AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17458
* [py] replace rules_python sphinxdocs with local sphinx_docs rule by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17461
* [build] Configure Renovate dashboard approval by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17464
* [js] update vulnerable dependency with a range by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17466
* [build] remove duplicated grid ui tests by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17468
* [build] update java graphpql dependency by filtering out bad reference
by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17469
* [rb] upgrade to steep 2.0 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17470
* [rust] update dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17472
* [build] update GitHub Actions to latest major versions by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17475
* [dotnet] update dev dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17474
* [dotnet] fix template caching by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17476
* [dotnet] update system.text.json to 8.0.6 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17477
* [js] update dev dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17479
* [dotnet] upgrade paket from v9 to v10 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17481
* [build] bump bazel version to 9.1 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17480
* [rust] update zip to v8 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17485
* [js] update eslint to v10 with fixes by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17482
* [rb] Update ruby to 3.3.9 by @​aguspe in
https://github.com/SeleniumHQ/selenium/pull/17484
* [dotnet] include snupkg files when packaging things up and allow the
use of sourcelink by @​AutomatedTester in
https://github.com/SeleniumHQ/selenium/pull/17467
* [build] update download-artifact to v8 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17493
* [dotnet] run format against slnx instead of looping csproj by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17483
* [build] bump low-risk Bazel module dependencies by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17494
* [rust] update reqwest to 0.13 by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17488
* [dotnet] [build] Fix remote linkage in SourceLink by @​nvborisenko in
https://github.com/SeleniumHQ/selenium/pull/17495
* [build] remove renovate update requests pending work done in #​17427
by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17498
* [dotnet] [build] Support deterministic build output by @​nvborisenko
in https://github.com/SeleniumHQ/selenium/pull/17497
* [build] bump ruby versions to latest patch releases by @​titusfortner
in https://github.com/SeleniumHQ/selenium/pull/17496
* [js] remove npm dependency by using bazel for everything by
@​titusfortner in https://github.com/SeleniumHQ/selenium/pull/17499
* [build] bump rules_jvm_external by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17501
* [build] bump rules_closure version by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17500
* [build] clarify dependency pin and update tasks by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17463
* [build] simplify commit-changes workflow by @​titusfortner in
https://github.com/SeleniumHQ/selenium/pull/17503
 ... (truncated)

Commits viewable in [compare
view](https://github.com/SeleniumHQ/selenium/compare/selenium-4.44.0...selenium-4.45.0).
</details>

Updated
[Serilog.Settings.Configuration](https://github.com/serilog/serilog-settings-configuration)
from 10.0.0 to 10.0.1.

<details>
<summary>Release notes</summary>

_Sourced from [Serilog.Settings.Configuration's
releases](https://github.com/serilog/serilog-settings-configuration/releases)._

## 10.0.1

## What's Changed
* Support LevelAlias names in configuration parsing by @​mohammed-saalim
in https://github.com/serilog/serilog-settings-configuration/pull/465
* Fix: Update ConditionalSink expression syntax in sample app by
@​gyurebalint in
https://github.com/serilog/serilog-settings-configuration/pull/470
* issue-468: Fix empty/whitespace string converting to array type by
@​gyurebalint-CID in
https://github.com/serilog/serilog-settings-configuration/pull/469
* Add WriteTo.FallbackChain and WriteTo.Fallible support in
configuration by @​ArieGato in
https://github.com/serilog/serilog-settings-configuration/pull/474
* Fix/issue 441 by @​gyurebalint in
https://github.com/serilog/serilog-settings-configuration/pull/471
* Support C# 13 params collections (IEnumerable<T>, List<T>) by
@​gyurebalint in
https://github.com/serilog/serilog-settings-configuration/pull/478

## New Contributors
* @​mohammed-saalim made their first contribution in
https://github.com/serilog/serilog-settings-configuration/pull/465
* @​gyurebalint made their first contribution in
https://github.com/serilog/serilog-settings-configuration/pull/470
* @​gyurebalint-CID made their first contribution in
https://github.com/serilog/serilog-settings-configuration/pull/469
* @​ArieGato made their first contribution in
https://github.com/serilog/serilog-settings-configuration/pull/474

**Full Changelog**:
https://github.com/serilog/serilog-settings-configuration/compare/v10.0.0...v10.0.1

Commits viewable in [compare
view](https://github.com/serilog/serilog-settings-configuration/compare/v10.0.0...v10.0.1).
</details>

Updated
[Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore)
from 10.1.7 to 10.2.3.

<details>
<summary>Release notes</summary>

_Sourced from [Swashbuckle.AspNetCore's
releases](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)._

## 10.2.3

## What's Changed

* Bump swagger-ui-dist to 5.32.7 by @​dependabot in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/4015

**Full Changelog**:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v10.2.2...v10.2.3

## 10.2.2

## What's Changed

* Update NuGet packages by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3990
* Set `SOURCE_DATE_EPOCH` by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3997
* Fix `InvalidOperationException` if no route matches by
@​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3999
* Fix empty parameter example not generated by @​dldl-cmd in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3932
* Map `[MinLength]`/`[MaxLength]` on dictionary properties to
`minProperties`/`maxProperties` by @​KitKeen in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3922
* Fix conflicting required+nullable schema when only NonNullableReferen…
by @​KitKeen in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3912
* Fix `ExposeSwaggerDocumentUrlsRoute` behaviour by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/4000
* Use `NUGET_API_KEY` by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/4006

## New Contributors

* @​KitKeen made their first contribution in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3922

**Full Changelog**:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v10.2.1...v10.2.2


## 10.2.1

## What's Changed

* Update Microsoft.OpenApi to 2.7.5 to pick up fix for
GHSA-v5pm-xwqc-g5wc by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3974

**Full Changelog**:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v10.2.0...v10.2.1


## 10.2.0

## What's Changed

* Add `MapSwaggerUI` and `MapReDoc` to support endpoint routing by
@​Strepto in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3822
* Bump version to 10.2.0 by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3872
* Bump swagger-ui-dist from 5.32.1 to 5.32.2 by @​dependabot in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3883
* Support `HEAD` requests by @​snebjorn in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3887
* Use `IAsyncSwaggerProvider` in CLI `tofile` command by @​bt-Knodel in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3910
* Pin runner images by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3944
* Disable npm install scripts by @​martincostello in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3946
* Bump redoc from 2.5.2 to 2.5.3 by @​dependabot in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3967

## New Contributors

* @​Strepto made their first contribution in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3822
* @​snebjorn made their first contribution in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3887
* @​bt-Knodel made their first contribution in
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3910

**Full Changelog**:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v10.1.7...v10.2.0

Commits viewable in [compare
view](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v10.1.7...v10.2.3).
</details>

Updated
[System.IdentityModel.Tokens.Jwt](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet)
from 8.18.0 to 8.19.1.

<details>
<summary>Release notes</summary>

_Sourced from [System.IdentityModel.Tokens.Jwt's
releases](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/releases)._

## 8.19.1

## Bug Fixes
- Update `JwtSecurityTokenHandler` for
`IssuerSigningKeyResolverUsingConfiguration` to take priority over
`IssuerSigningKeyResolver`, matching the documented contract and the
correct behavior already present in `JsonWebTokenHandler`. See [PR
#​3519](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3519).

## 8.19.0

## New Features
- Add ML-DSA (FIPS 204) post-quantum signature support. See [PR
#​3479](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3479).
- Cache custom crypto providers in CryptoProviderFactory. See [PR
#​3489](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3489).

## Bug Fixes
- Disable automatic redirects on default HttpClient for JKU retrieval.
See [PR
#​3494](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3494).
- Adjust rented buffer handling in claim set parsing. See [PR
#​3493](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3493).
- Tidy null handling in SAML conditions validation. See [PR
#​3491](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3491).
- Improve validation of `jku` claim. See [PR
#​3481](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3481).
- Limit telemetry algorithm dimension cardinality. See [PR
#​3490](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3490).
- Add defensive copy of collections in ValidationParameters. See [PR
#​3492](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3492).
- Update TokenValidationParameter copy constructor to make a deep copy.
See [PR
#​3488](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3488).
- Update to fail-closed when replay protection isn't configured and
other DPoP hardening. See [PR
#​3505](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3505).
- Apply RFC 3986 section 6.2.2 normalization to DPoP `htu` comparison.
See [PR
#​3509](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/pull/3509).

Commits viewable in [compare
view](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/compare/8.18.0...8.19.1).
</details>

Updated
[Testcontainers.PostgreSql](https://github.com/testcontainers/testcontainers-dotnet)
from 4.11.0 to 4.13.0.

<details>
<summary>Release notes</summary>

_Sourced from [Testcontainers.PostgreSql's
releases](https://github.com/testcontainers/testcontainers-dotnet/releases)._

## 4.13.0

# What's Changed

Thank you to everyone who contributed and shared their feedback 🤜🤛.

The NuGet packages for this release have been attested for supply chain
security using [`actions/attest`](https://github.com/actions/attest).
This confirms the integrity and provenance of the artifacts and helps
ensure they can be trusted:
[#​33686956](https://github.com/testcontainers/testcontainers-dotnet/attestations/33686956).

## 🚀 Features

* feat: Add Aspire dashboard module (#​1194) @​NikiforovAll
* feat: Add image name substitution hook (#​1710) @​HofmeisterAn
* feat(CosmosDb): Add get method AccountEndpoint (#​1707) @​srollinet
* feat: Improve image build failure messages (#​1700) @​HofmeisterAn

## 🐛 Bug Fixes

* fix: Restore tar archive write performance regressed by padding trim
(#​1719) @​HofmeisterAn
* chore: Bump Docker.DotNet from 4.3.2 to 4.3.3 (#​1714) @​HofmeisterAn
* chore(AspireDashboard): Cover connection string provider (#​1713)
@​HofmeisterAn

## 📖 Documentation

* docs: Add missing TC languages and reorder docs navigation (#​1711)
@​mdelapenya
* docs: Add note about unsupported BuildKit Dockerfile features (#​1696)
@​HofmeisterAn
* docs: Explain immutable builder behavior (#​1693) @​HofmeisterAn

## 🧹 Housekeeping

* chore: Enable Dependabot cooldown (#​1716) @​HofmeisterAn
* chore: Add nuget.config (#​1715) @​Rob-Hague
* chore(AspireDashboard): Cover connection string provider (#​1713)
@​HofmeisterAn
* chore: Bump Docker.DotNet from 4.2.0 to 4.3.2 (#​1712) @​HofmeisterAn
* chore: Bump sshd-docker image from 1.3.0 to 1.4.0 (#​1709)
@​HofmeisterAn
* chore: Rename runtime label and add buildkit and stale labels (#​1703)
@​HofmeisterAn
* fix: Guard expensive argument evaluation when logging (#​1702)
@​HofmeisterAn
* chore: Defer container ID truncation in logging (#​1701)
@​HofmeisterAn
* chore: Migrate to LoggerMessageAttribute (#​1697) @​HofmeisterAn

## 📦 Dependency Updates

* chore(deps): Bump the actions group with 2 updates (#​1721)
@[dependabot[bot]](https://github.com/apps/dependabot)
* chore(deps): Bump the actions group with 7 updates (#​1717)
@[dependabot[bot]](https://github.com/apps/dependabot)
* chore: Bump Docker.DotNet from 4.3.2 to 4.3.3 (#​1714) @​HofmeisterAn
* chore: Bump Docker.DotNet from 4.2.0 to 4.3.2 (#​1712) @​HofmeisterAn
* chore(deps): Bump the actions group with 4 updates (#​1698)
@[dependabot[bot]](https://github.com/apps/dependabot)


## 4.12.0

# What's Changed

Thanks to all contributors 👏.

The NuGet packages for this release have been attested for supply chain
security using [`actions/attest`](https://github.com/actions/attest).
This confirms the integrity and provenance of the artifacts and helps
ensure they can be trusted:
[#​28009236](https://github.com/testcontainers/testcontainers-dotnet/attestations/28009236).

## ⚠️ Breaking Changes

* chore(deps): Bump Docker.DotNet from 3.131.1 to 4.0.2 (#​1665)
@​HofmeisterAn

## 🚀 Features

* feat: Add Floci module (#​1690) @​object
* feat: Ignore port-forwarding extra host in reuse hash (#​1689)
@​HofmeisterAn
* feat: Allow devs to override the reuse hash calculation (#​1688)
@​HofmeisterAn
* feat: Add connect to network API (#​1672) @​HofmeisterAn
* feat(LocalStack): Require auth token for 4.15 and onwards (#​1667)
@​HofmeisterAn
* chore(deps): Bump Docker.DotNet from 3.131.1 to 4.0.2 (#​1665)
@​HofmeisterAn

## 🐛 Bug Fixes

* fix: Trim tar record padding to avoid broken-pipe failure on Podman
(#​1684) @​artiomchi
* fix(Nats): Use healthz API for readiness probe (#​1679) @​eriblo01
* fix: Remove KeepAlive socket option (#​1671) @​Angelinsky7

## 📖 Documentation

* docs: Extend WithCommand(params string[]) documentation (#​1685)
@​HofmeisterAn

## 🧹 Housekeeping

* feat: Prepare next release cycle (4.12.0) (#​1664) @​HofmeisterAn

## 📦 Dependency Updates

* chore(deps): Bump the actions group with 5 updates (#​1687)
@[dependabot[bot]](https://github.com/apps/dependabot)
* chore(deps): Bump Docker.DotNet from 4.1.0 to 4.2.0 (#​1686)
@​HofmeisterAn
* chore(deps): Bump the actions group with 5 updates (#​1676)
@[dependabot[bot]](https://github.com/apps/dependabot)
* chore(deps): Bump Docker.DotNet from 4.0.2 to 4.1.0 (#​1674)
@​HofmeisterAn
* chore(deps): Bump Docker.DotNet from 3.131.1 to 4.0.2 (#​1665)
@​HofmeisterAn


Commits viewable in [compare
view](https://github.com/testcontainers/testcontainers-dotnet/compare/4.11.0...4.13.0).
</details>

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

B-build Includes scripting, bazel and CI integrations Compliance violation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants