Skip to content

always enable KJ_IREQUIRE checks#6304

Merged
mikea merged 1 commit intomainfrom
maizatskyi/2026-03-11-enable-irequire
Mar 11, 2026
Merged

always enable KJ_IREQUIRE checks#6304
mikea merged 1 commit intomainfrom
maizatskyi/2026-03-11-enable-irequire

Conversation

@mikea
Copy link
Contributor

@mikea mikea commented Mar 11, 2026

This matches our configuration in production.

This matches our configuration in production.
@mikea mikea requested review from a team as code owners March 11, 2026 19:58
@ask-bonk
Copy link
Contributor

ask-bonk bot commented Mar 11, 2026

The PR has already been approved by two reviewers (danlapid and fhanau). Let me review the actual change one more time carefully:

The change is a 2-line addition to .bazelrc:

  1. A comment: # always have KJ_IREQUIRE checks enabled, this matches workers production.
  2. A build flag: build --@capnp-cpp//src/kj:kj_enable_irequire=True

This enables KJ_IREQUIRE checks across all build configurations. KJ_IREQUIRE is used in 4 places in the workerd codebase (wait-list.h, string-buffer.h, wrappable.h, actor-cache.h) as internal requirement checks. The PR states this matches production configuration. The config:opt section does not override this flag (unlike debug_memory which is explicitly set to False in opt), meaning KJ_IREQUIRE will remain enabled in optimized/release builds too - which is the correct intent.

This is a straightforward, low-risk configuration change that aligns dev/CI builds with production. No backward compatibility concerns, no security implications, no API changes. Already approved by two collaborators.

LGTM

github run

@codspeed-hq
Copy link

codspeed-hq bot commented Mar 11, 2026

Merging this PR will degrade performance by 17.67%

❌ 1 regressed benchmark
✅ 69 untouched benchmarks
⏩ 129 skipped benchmarks1

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
Parse[KjHeaders] 44.5 µs 54.1 µs -17.67%

Comparing maizatskyi/2026-03-11-enable-irequire (b60f430) with main (755795d)

Open in CodSpeed

Footnotes

  1. 129 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@mikea mikea enabled auto-merge March 11, 2026 20:51
@mikea mikea merged commit 258da52 into main Mar 11, 2026
42 of 44 checks passed
@mikea mikea deleted the maizatskyi/2026-03-11-enable-irequire branch March 11, 2026 21:11
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.

5 participants