https://redmine.ruby-lang.org/https://redmine.ruby-lang.org/favicon.ico?17113305112011-09-05T18:15:44ZRuby Issue Tracking SystemBackport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=205832011-09-05T18:15:44Znaruse (Yui NARUSE)naruse@airemix.jp
<ul></ul><p>Following RubySpec also fails on 32bit env.</p>
<ol start="2">
<li>
</ol>
<p>Float#round rounds self to an optionally given precision FAILED<br>
Expected 0.0<br>
to equal 0.42</p>
<p>/home/chkbuild/build/ruby-trunk/20110905T070102Z/rubyspec/core/float/round_spec.rb:26:in <code>block (3 levels) in <top (required)>' /home/chkbuild/build/ruby-trunk/20110905T070102Z/rubyspec/core/float/round_spec.rb:3:in </code><top (required)>'</p> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=205872011-09-06T06:44:43Zmarcandre (Marc-Andre Lafortune)marcandre-ruby-core@marc-andre.ca
<ul><li><strong>Status</strong> changed from <i>Assigned</i> to <i>Closed</i></li><li><strong>% Done</strong> changed from <i>0</i> to <i>100</i></li></ul><p>This issue was solved with changeset r33198.<br>
Yui, thank you for reporting this issue.<br>
Your contribution to Ruby is greatly appreciated.<br>
May Ruby be with you.</p>
<hr>
<ul>
<li>numeric.c (flo_round): Fix criteria for 32 bits platform<br>
part 2 of [bug <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Backport: 4294967295.8.round is 4294967295 on 32bit (Closed)" href="https://redmine.ruby-lang.org/issues/5276">#5276</a>]</li>
</ul> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=205882011-09-06T06:47:10Zmarcandre (Marc-Andre Lafortune)marcandre-ruby-core@marc-andre.ca
<ul></ul><p>Interestingly, the first bug is in dbl2ival, not in my patch. My patch just uncovered it. In particular:</p>
<pre><code>0.59.divmod(7.761021455128987e-11).first # => 7602092113 on 64 bits platform
# but 7602092112 on 32 bits
</code></pre>
<p>This bug was incompletely addressed in r13902.</p>
<p>Fixed in r33198 and r33199.</p>
<p>Moving to backport.</p> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=205892011-09-06T06:47:24Zmarcandre (Marc-Andre Lafortune)marcandre-ruby-core@marc-andre.ca
<ul><li><strong>Tracker</strong> changed from <i>Bug</i> to <i>Backport</i></li><li><strong>Status</strong> changed from <i>Closed</i> to <i>Open</i></li></ul> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=205902011-09-06T06:47:43Zmarcandre (Marc-Andre Lafortune)marcandre-ruby-core@marc-andre.ca
<ul><li><strong>Assignee</strong> deleted (<del><i>marcandre (Marc-Andre Lafortune)</i></del>)</li></ul> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=206372011-09-07T08:08:27Zkosaki (Motohiro KOSAKI)kosaki.motohiro@gmail.com
<ul></ul><p>If I parsed this thread correctly, this bug is not a regression. therefore it's no 1.9.3p0 matter.</p> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=206422011-09-07T12:34:52Zmarcandre (Marc-Andre Lafortune)marcandre-ruby-core@marc-andre.ca
<ul></ul><p>Indeed, this is not a regression. Backports are not always regressions, though. Could you explain why you think that only regressions should be included in 1.9.3p0?</p>
<p>I feel that the bugs I found recently in {Float|Integer}#round (2 each) and the one in Float#divmod are perfect candidates to be included in 1.9.3 because</p>
<ul>
<li>we are still in preview mode</li>
<li>these bugs are very localized and are highly unlikely to impact anything else</li>
<li>these bugs can have serious consequences for anyone dealing with calculations (scientific, etc...)</li>
</ul> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=206612011-09-08T00:23:14Zkosaki (Motohiro KOSAKI)kosaki.motohiro@gmail.com
<ul></ul><blockquote>
<p>Indeed, this is not a regression. Backports are not always regressions, though.<br>
Could you explain why you think that only regressions should be included in 1.9.3p0?</p>
</blockquote>
<p>Yup. It depend on release schedule. If we have one month testing time,<br>
all bugfixes should<br>
be backported. but now we expected 1.9.3p0 will release very soon.<br>
Actually, our release<br>
schedule already have short delay.</p>
<blockquote>
<p>I feel that the bugs I found recently in {Float|Integer}#round (2 each) and the one in Float#divmod are perfect candidates  to be included in 1.9.3 because</p>
<ul>
<li>we are still in preview mode</li>
</ul>
</blockquote>
<p>Yes and no.<br>
Yes, <a href="http://www.ruby-lang.org" class="external">www.ruby-lang.org</a> don't publish 1.9.3-rc1 yet.</p>
<p>However, at <a href="https://blade.ruby-lang.org/ruby-core/39062">[ruby-core:39062]</a>, Yugui talked about she would like<br>
to release r33028 as Ruby 1.9.3 RC1. therefore, almost all commiters stopped<br>
to backport their bugfixes into ruby_1_9_3.</p>
<p>I hope you also follow their gentle developement.</p>
<p>Also, I'd like to explain two good high priority request example.</p>
<ol>
<li><a href="https://blade.ruby-lang.org/ruby-core/39268">[ruby-core:39268]</a> Luis reported new regression and explained why<br>
it is high priority.</li>
<li><a href="/issues/5076">[ruby-core:39298]</a> Yui reported 1.9.3 + Xcode 4.2 Developer Preview<br>
7 don't work at all on Lion.</li>
</ol>
<p>Both explained clearly why we need to take a risk.</p>
<blockquote>
<ul>
<li>these bugs are very localized and are highly unlikely to impact anything else</li>
</ul>
</blockquote>
<p>I have no objection. But, my point is, <em>if</em> we will backport <em>all</em><br>
localized bugs,<br>
our code impact aren't localized anymore. Therefore we need to make<br>
close out point.</p>
<p>Yugui said, (<a href="https://blade.ruby-lang.org/ruby-core/39243">[ruby-core:39243]</a>)</p>
<blockquote>
<p>Soon I'll start final check for release and I believe we can release Ruby 1.9.3<br>
in this 1-2 weeks.</p>
</blockquote>
<p>If a week before is not a good deadline, when should we close out no<br>
urgent backport request?</p>
<blockquote>
<ul>
<li>these bugs can have serious consequences for anyone dealing with calculations (scientific, etc...)</li>
</ul>
</blockquote>
<p>It can. And almost all bugs <em>can</em> make serious fault. so, I don't<br>
think it's a good threshold<br>
for making backporting decision just before the release deadline.</p>
<p>Thank you.</p> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=206632011-09-08T00:53:22Zkosaki (Motohiro KOSAKI)kosaki.motohiro@gmail.com
<ul></ul><blockquote>
<p>Also, I'd like to explain two good high priority request example.</p>
<ol>
<li>Â <a href="https://blade.ruby-lang.org/ruby-core/39268">[ruby-core:39268]</a> Luis reported new regression and explained why<br>
it is high priority.</li>
<li>Â <a href="/issues/5076">[ruby-core:39298]</a> Yui reported 1.9.3 + Xcode 4.2 Developer Preview<br>
7 don't work at all on Lion.</li>
</ol>
<p>Both explained clearly why we need to take a risk.</p>
</blockquote>
<p>In the other hands, recent PHP mistake tell us which development shouldn't do.</p>
<p><a href="https://threatpost.com/en_us/blogs/serious-crypto-bug-found-php-537-082211" class="external">https://threatpost.com/en_us/blogs/serious-crypto-bug-found-php-537-082211</a></p>
<p>short brief: one warnings was removed at last rc for php 5.3.7 and,<br>
actually, its commit<br>
has serious security hole regression.</p>
<p>That's why I want only regression and/or platform disaster patches are<br>
backported.</p> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=214682011-10-23T16:56:05Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>Target version</strong> deleted (<del><i>1.9.3</i></del>)</li></ul> Backport193 - Backport #5276: 4294967295.8.round is 4294967295 on 32bithttps://redmine.ruby-lang.org/issues/5276?journal_id=224922011-11-30T03:04:02Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Closed</i></li></ul><p>This issue was solved with changeset r33899.<br>
Yui, thank you for reporting this issue.<br>
Your contribution to Ruby is greatly appreciated.<br>
May Ruby be with you.</p>
<hr>
<p>merge revision(s) 33198,33199:</p>
<pre><code>* numeric.c (flo_round): Fix criteria for 32 bits platform
part 2 of [bug #5276]
* numeric.c (dbl2ival): Fix Float#divmod and #round for 32 bit
platform. part 1 of [bug #5276]
</code></pre>