Skip to content

refactor(s2n-events): Reduce generated diffs when changing metric definitions#2993

Open
Mark-Simulacrum wants to merge 1 commit intoaws:mainfrom
Mark-Simulacrum:reduce-metrics-diffs
Open

refactor(s2n-events): Reduce generated diffs when changing metric definitions#2993
Mark-Simulacrum wants to merge 1 commit intoaws:mainfrom
Mark-Simulacrum:reduce-metrics-diffs

Conversation

@Mark-Simulacrum
Copy link
Collaborator

Release Summary:

Resolved issues:

n/a

Description of changes:

Previously the raw integers were embedded in multiple places, and inserting into the middle of the list caused all integers to change. This meant a huge diff for a tiny change, and also increased the risk of merge conflicts. This updates the generator to have a list of constants each with value (previous + 1), which means that any change should only touch ~1 adjacent constant to any newly added metric at most.

This shouldn't have any change in runtime behavior or performance since all offsets/indices remain computed at compile-time.

Call-outs:

n/a

Testing:

There's some unit/integration tests and I've poked through a couple of example events and things look reasonable.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@Mark-Simulacrum Mark-Simulacrum marked this pull request as ready for review February 27, 2026 18:54
@Mark-Simulacrum Mark-Simulacrum requested a review from a team as a code owner February 27, 2026 18:54
Previously the raw integers were embedded in multiple places, and
inserting into the middle of the list caused all integers to change.
This meant a huge diff for a tiny change, and also increased the risk of
merge conflicts. This updates the generator to have a list of constants
each with value (previous + 1), which means that any change should only
touch ~1 adjacent constant to any newly added metric at most.

This shouldn't have any change in runtime behavior or performance since
all offsets/indices remain computed at compile-time.
@Mark-Simulacrum
Copy link
Collaborator Author

I'll rebase this once the generator is approved since it needs rebasing after any event-touching PR.

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.

2 participants