Scope: maintenance release for
LocalStack.Client.Extensionsonly.
LocalStack.Clientstays 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
LocalStackClientConfigurationExceptionwhenUseLocalStackisfalse(#52).
AWSSDK.Extensions.NETCore.Setup4.0.4 added an optional parameter to the internalClientFactory<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 theAWSOptionsparameter and defaults any trailing ones, so both the pre‑4.0.4 and 4.0.4+ shapes work.- Only the
UseLocalStack: falsepath was affected — LocalStack‑only usage never reaches this code, which is why the break stayed quiet for ~70 days.
- Only the
- 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.Setupis 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 theNU1901advisory (GHSA-9cvc-h2w8-phrp) onAWSSDK.Core4.0.0.15. - Added a scheduled AWS SDK canary that builds against the newest
AWSSDK.CoreandAWSSDK.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: falsepath works again.
⬆️ Upgrading
dotnet add package LocalStack.Client.Extensions --version 2.0.1Nothing 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