Skip to content

LocalStack.Client.Extensions v2.0.1

Latest

Choose a tag to compare

@Blind-Striker Blind-Striker released this 29 Jul 12:02
6513676

Scope: maintenance release for LocalStack.Client.Extensions only.
LocalStack.Client stays at v2.0.0 — it has no source change, so there is nothing to ship.
Follow draft PR #49 for the reflection‑free path planned for v2.1.

🐞 Fixes

  • Fixed LocalStackClientConfigurationException when UseLocalStack is false (#52).
    AWSSDK.Extensions.NETCore.Setup 4.0.4 added an optional parameter to the internal ClientFactory<T> constructor. The parameter being optional made it source‑compatible on AWS's side, so it shipped as a patch — but it was binary‑breaking for our exact‑signature reflection lookup, and client creation threw. Constructor resolution now matches on the AWSOptions parameter and defaults any trailing ones, so both the pre‑4.0.4 and 4.0.4+ shapes work.
    • Only the UseLocalStack: false path was affected — LocalStack‑only usage never reaches this code, which is why the break stayed quiet for ~70 days.
  • Failure messages now list the constructor signatures actually discovered, so a future AWS SDK change can be diagnosed straight from a bug report instead of a version bisect.

🛠️ General

  • Minimum AWSSDK.Extensions.NETCore.Setup is now 4.0.100.5 (was 4.0.2). No other dependency floor changed.
  • Internal dependency refresh: AWSSDK.Core → 4.0.100.6, 120 AWSSDK service packages, and the analyzer/test toolchain. Clears the NU1901 advisory (GHSA-9cvc-h2w8-phrp) on AWSSDK.Core 4.0.0.15.
  • Added a scheduled AWS SDK canary that builds against the newest AWSSDK.Core and AWSSDK.Extensions.NETCore.Setup, so upstream changes surface before they reach users.
  • Public API unchanged.

🧪 Verification

  • 1,094 tests passing across net472 / net8.0 / net9.0, 0 warnings, 0 errors.
  • 50 functional tests against real LocalStack containers — v3.7.1 and v4.6.0.
  • End‑to‑end S3 round trip (create / list / delete a bucket) run against both LocalStack and real AWS, on the published package, confirming the UseLocalStack: false path works again.

⬆️ Upgrading

dotnet add package LocalStack.Client.Extensions --version 2.0.1

Nothing else to change — the public API is unchanged.

If you have explicitly pinned AWSSDK.Extensions.NETCore.Setup below 4.0.100.5, restore will report NU1605 (package downgrade); remove the pin, or let it float. Note that if you are pinned below 4.0.4 you are not affected by #52 in the first place.

What's Changed

  • fix(extensions): tolerate ClientFactory<T> constructor change in AWS SDK 4.0.4+ (#52) by @Blind-Striker in #53

Full Changelog: v2.0.0...v2.0.1