Skip to content

[pull] master from ruby:master#1156

Merged
pull[bot] merged 7 commits into
turkdevops:masterfrom
ruby:master
Jun 27, 2026
Merged

[pull] master from ruby:master#1156
pull[bot] merged 7 commits into
turkdevops:masterfrom
ruby:master

Conversation

@pull

@pull pull Bot commented Jun 27, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

BurdetteLamar and others added 7 commits June 26, 2026 20:24
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
… numbers

When parsing JSON floats with extremely negative exponents (like
123.456e-789 or 123e-10000000), the parser would fall back to
rb_cstr_to_dbl which internally calls strtod. When strtod returns
ERANGE due to underflow to 0.0, Ruby emits a "Float out of range"
warning, causing noise in the test output.

Fix: when mantissa_digits + exponent < -324, the effective value is
less than 10^(-324) < DBL_TRUE_MIN/2, so it must round to 0.0 in
IEEE 754 round-to-nearest. Return 0.0 directly without going through
rb_cstr_to_dbl, avoiding the spurious warning.

This fixes warnings introduced by JSONMinefieldParserTest tests
(test_i_number_double_huge_neg_exp and test_i_number_real_underflow)
added in commit ruby/json@6507a836c5.

ruby/json@724eddaeaa
template/Makefile.in is used only by the GNU make build, so on mswin the
common.mk stub was an empty rule and nmake check silently skipped the
SyntaxSuggest spec. Move the recipe to common.mk so both builds share it,
matching how test-bundled-gems-spec is already shared.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The recipe moved into common.mk kept the literal `-Ispec/syntax_suggest:spec/lib`
from template/Makefile.in. On Windows Ruby treats `:` as an invalid path
separator (the drive-letter delimiter), so spec_helper fails to load and the
mswin run errors out instead of running the SyntaxSuggest spec. Use
$(PATH_SEPARATOR) (`;` on mswin, `:` on Unix), matching RAKER just below, so the
single recipe works for both builds. Verified 170 examples, 0 failures on the
VS 2022 mswin build and the msys2 UCRT64 GNU make build.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@pull pull Bot locked and limited conversation to collaborators Jun 27, 2026
@pull pull Bot added the ⤵️ pull label Jun 27, 2026
@pull pull Bot merged commit 3c7a4c1 into turkdevops:master Jun 27, 2026
0 of 2 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants