Skip to content

Integrate upstream changes from develop - #92

Merged
skyrpex merged 11 commits into
localstackfrom
drg-507-integrate-new-lambda-rie-upstream-changes-from-2026-02-12
Apr 24, 2026
Merged

skyrpex merged 11 commits into
localstackfrom
drg-507-integrate-new-lambda-rie-upstream-changes-from-2026-02-12

Conversation

@carole-lavillonniere

@carole-lavillonniere carole-lavillonniere commented Apr 8, 2026

Copy link
Copy Markdown
  • Merges upstream AWS changes from develop into localstack branch following this guide
  • Resolves all merge conflicts preserving LocalStack customizations while integrating upstream additions

mbfreder and others added 11 commits August 8, 2025 14:45
* chore(deps): Update go-chi to v5.2.2
* Add support for multi-tenancy
---------
Co-authored-by: Chengjun Li <>
* ci: scope down permissions for release.yml

* ci: scope down permissions for integ-tests.yml

* ci: scope down permissions for check-binaries.yml
* Update from upstream - 2026-03-18

* Update from upstream - 2026-03-18

* Update from upstream - 2026-03-18

* Update from upstream - 2026-03-19

* Update from upstream - 2026-03-19

* Potential fix for code scanning alert no. 7: Workflow does not contain permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Update from upstream - 2026-03-27

* Update from upstream - 2026-03-30

---------

Co-authored-by: lambda-tooling+rie <lambda-tooling+rie@amazon.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* Update from upstream - 2026-03-18

* Update from upstream - 2026-03-18

* Update from upstream - 2026-03-18

* Update from upstream - 2026-03-19

* Update from upstream - 2026-03-19

* Potential fix for code scanning alert no. 7: Workflow does not contain permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Update from upstream - 2026-03-27

* Update from upstream - 2026-03-30

* Update from upstream - 2026-04-01

---------

Co-authored-by: lambda-tooling+rie <lambda-tooling+rie@amazon.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
@carole-lavillonniere carole-lavillonniere changed the title Integrate upstream changes from develop (2026-02-12) Integrate upstream changes from develop Apr 8, 2026
@carole-lavillonniere
carole-lavillonniere marked this pull request as ready for review April 9, 2026 11:27

@joe4dev joe4dev left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

These upstream changes were already reviewed, so we assume they are fine as long as they pass the full LocalStack test suite (including localstack-pro).

Resolves all merge conflicts preserving LocalStack customizations while integrating upstream additions

What merge conflicts were these?
Wouldn't we expect no more merge conflicts given the two one-line fixes merged in aws#176 ?

package invoke

const (
RequestIdHeader = "X-Amzn-RequestId"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

FYI: Interesting to see RequestId supported natively via headers now, which differs from our current approach sending it via the LS invoke payload.

const (
RequestIdHeader = "X-Amzn-RequestId"

ClientContextHeader = "X-Amz-Client-Context"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

FYI: Nice to see upstream support added for the client context header

Related to @drauedo PR #75

@joe4dev

joe4dev commented Apr 17, 2026

Copy link
Copy Markdown
Member

Closing this PR, given the changes are already merged manually and released as v0.1.44-pre, following our guidance https://github.com/localstack/lambda-runtime-init/blob/localstack/README-LOCALSTACK.md#integrate-upstream-changes

@joe4dev joe4dev closed this Apr 17, 2026
@carole-lavillonniere

Copy link
Copy Markdown
Author

Closing this PR, given the changes are already merged manually and released as v0.1.44-pre, following our guidance https://github.com/localstack/lambda-runtime-init/blob/localstack/README-LOCALSTACK.md#integrate-upstream-changes

I created the release 1.44 just to test in localstack-core/pro but the changes are not merged yet, reopening the PR.

@carole-lavillonniere

Copy link
Copy Markdown
Author

These upstream changes were already reviewed, so we assume they are fine as long as they pass the full LocalStack test suite (including localstack-pro).

Resolves all merge conflicts preserving LocalStack customizations while integrating upstream additions

What merge conflicts were these? Wouldn't we expect no more merge conflicts given the two one-line fixes merged in aws#176 ?

I pushed this branch so we can visualize all the conflicts that were resolved: a2cf589

My understanding is that these conflicts happened because PR #62 did cherry-picks instead of a merge. We ended up with the same commits but different commit hashes and both sides created the same files independently.
This PR should fix things by doing a real merge, upstream integration should be conflict-free in the future.

@joe4dev

joe4dev commented Apr 20, 2026

Copy link
Copy Markdown
Member

Thank you very much for the clarification and full merge conflict transparency 👏👏
That's many more conflicts than expected, kudos for fixing the rebase 🙇

This PR should fix things by doing a real merge, upstream integration should be conflict-free in the future.

I'm looking forward to that 🚀
It should only be the Go version and Go dependencies, which might be out of sync. Assuming we can move "internal" somehow, having an import-based approach would make updates so much easier 🤞

@dfangl dfangl left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looks good from my side! Thanks for resolving the conflicts!

@skyrpex

skyrpex commented Apr 22, 2026

Copy link
Copy Markdown

Some tests in LocalStack were failing with this version, not sure why. I started a clean merge here #98, it seems to work but there are some file differences. I'll review them.

@skyrpex
skyrpex merged commit 7448358 into localstack Apr 24, 2026
7 of 8 checks passed
@skyrpex
skyrpex deleted the drg-507-integrate-new-lambda-rie-upstream-changes-from-2026-02-12 branch April 24, 2026 07:25
carole-lavillonniere added a commit that referenced this pull request Sep 22, 2026
Brings the fork up to aws/aws-lambda-runtime-interface-emulator@3ccddd7
(Update from upstream - 2026-09-17), covering four upstream syncs:

  3ccddd7 Update from upstream - 2026-09-17 (aws#189)
  c622c06 Update from upstream - 2026-08-25 (aws#187)
  ddf2bc4 Update from upstream - 2026-07-31 (aws#182)
  a0f264a chore: sync from internal (rie-private-to-public) (aws#181)

The fork had been on develop@391c3f1 since April, and a0f264a is why this
matters now: it makes raptor.Server.Shutdown drain in-flight responses via
httpServer.Shutdown instead of calling httpServer.Close(), which severed
connections whose handler was still writing. That race is what failed the
weekly release twice -- as `Post ...: EOF` in TestRie_InvokeFatalError, and as
a 10m package timeout in TestRie_InvokeWaitingForInitError, where the invoke
goroutine's require.NoError skipped its un-deferred wg.Done() and deadlocked
the package. Both tests are green on this merge: 0 failures in 40 runs of the
package under -race, against 10/10 hangs before it.

Conflicts, all in files we customize:

  go.mod                Kept our go 1.27.1 directive over upstream's 1.26.6.
  Makefile              Kept our GO_VERSION derived from go.mod, and the
                        nojsonv2 GOEXPERIMENT export.
  check-binaries.yml    Took upstream's switch from robinraju/release-downloader
  release.yml           to `gh release download`, and from softprops/action-gh-release
                        to `gh release create`; kept our Renovate action bumps
                        (checkout/setup-python v7). release.yml's trailing
                        context had already moved to upstream's shape, so
                        keeping ours there would not have parsed.
  integ-tests.yml       Version bumps only; kept ours.

Note for the next integration: the previous one (#92) landed as a single
squashed commit, so its upstream parent was lost and git computed the merge
base as the Go 1.24 bump from 2025 -- 48 conflicts, 36 of them spurious
add/add on files that were already identical. This was resolved against the
true base (391c3f1) using a local `git replace --graft`, giving the 5 real
conflicts above. Merging this one with --ff, per README-LOCALSTACK step 7,
records the upstream parent and stops the next integration needing that.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.