[#107430] [Ruby master Feature#18566] Merge `io-wait` gem into core IO — "byroot (Jean Boussier)" <noreply@...>

Issue #18566 has been reported by byroot (Jean Boussier).

22 messages 2022/02/02

[#107434] [Ruby master Bug#18567] Depending on default gems when not needed considered harmful — "Eregon (Benoit Daloze)" <noreply@...>

Issue #18567 has been reported by Eregon (Benoit Daloze).

31 messages 2022/02/02

[#107443] [Ruby master Feature#18568] Explore lazy RubyGems boot to reduce need for --disable-gems — "headius (Charles Nutter)" <noreply@...>

Issue #18568 has been reported by headius (Charles Nutter).

13 messages 2022/02/02

[#107481] [Ruby master Feature#18571] Removed the bundled sources from release package after Ruby 3.2 — "hsbt (Hiroshi SHIBATA)" <noreply@...>

Issue #18571 has been reported by hsbt (Hiroshi SHIBATA).

9 messages 2022/02/04

[#107490] [Ruby master Bug#18572] Performance regression when invoking refined methods — "palkan (Vladimir Dementyev)" <noreply@...>

Issue #18572 has been reported by palkan (Vladimir Dementyev).

12 messages 2022/02/05

[#107514] [Ruby master Feature#18576] Rename `ASCII-8BIT` encoding to `BINARY` — "byroot (Jean Boussier)" <noreply@...>

Issue #18576 has been reported by byroot (Jean Boussier).

47 messages 2022/02/08

[#107536] [Ruby master Feature#18579] Concatenation of ASCII-8BIT strings shouldn't behave differently depending on string contents — "tenderlovemaking (Aaron Patterson)" <noreply@...>

Issue #18579 has been reported by tenderlovemaking (Aaron Patterson).

11 messages 2022/02/09

[#107547] [Ruby master Bug#18580] Range#include? inconsistency for String ranges — "zverok (Victor Shepelev)" <noreply@...>

Issue #18580 has been reported by zverok (Victor Shepelev).

10 messages 2022/02/10

[#107603] [Ruby master Feature#18589] Finer-grained constant invalidation — "kddeisz (Kevin Newton)" <noreply@...>

Issue #18589 has been reported by kddeisz (Kevin Newton).

17 messages 2022/02/16

[#107624] [Ruby master Bug#18590] String#downcase and CAPITAL LETTER I WITH DOT ABOVE — "andrykonchin (Andrew Konchin)" <noreply@...>

Issue #18590 has been reported by andrykonchin (Andrew Konchin).

13 messages 2022/02/17

[#107651] [Ruby master Misc#18591] DevMeeting-2022-03-17 — "mame (Yusuke Endoh)" <noreply@...>

Issue #18591 has been reported by mame (Yusuke Endoh).

11 messages 2022/02/18

[#107682] [Ruby master Feature#18595] Alias `String#-@` as `String#dedup` — "byroot (Jean Boussier)" <noreply@...>

Issue #18595 has been reported by byroot (Jean Boussier).

15 messages 2022/02/21

[#107699] [Ruby master Feature#18597] Strings need a named method like `dup` that doesn't duplicate if receiver is mutable — "danh337 (Dan H)" <noreply@...>

Issue #18597 has been reported by danh337 (Dan H).

18 messages 2022/02/21

[ruby-core:107573] [Ruby master Misc#18362] mswin builds & vs2022

From: "nobu (Nobuyoshi Nakada)" <noreply@...>
Date: 2022-02-14 06:38:11 UTC
List: ruby-core #107573
Issue #18362 has been updated by nobu (Nobuyoshi Nakada).


Visual Studio 2022 version 17.0.6 released at February 8 seems still unfixed.

I wonder how we deal with this issue (easy -> hard order):

1. wait the fix (or abandon VS2022)
2. disable `O2` optimization on VS2022
3. disable `__assume()` on VS2022
4. rewrite sources not to use `isinf()` and `isnan()` together

It is possible to rewrite ruby itself's source files using `fpclassify()`,
but the similar modification will be needed for extension libraries,
including bundled and un-bundled.
This is [the patch for 3](https://github.com/nobu/ruby/tree/vs2022). 

----------------------------------------
Misc #18362: mswin builds & vs2022
https://bugs.ruby-lang.org/issues/18362#change-96485

* Author: MSP-Greg (Greg L)
* Status: Third Party's Issue
* Priority: Normal
----------------------------------------
With VS2022, I believe `_MSC_VER` is 1930, so I added the following patch so a VS2019 build might compile extension gems using VS2022.  Psych compiled and passed its tests using something similar.  I don't know enough about MSVC to know what versions are compatible, for instance using a VS2016 Ruby with VS2019, or even VS2022.

I posted this due to release being just a few weeks away, VS2022 is released, and Actions also has it available on the windows-2022 image...

```patch
diff --git a/win32/setup.mak b/win32/setup.mak
index 5294a49ee9..4f7decfd11 100644
--- a/win32/setup.mak
+++ b/win32/setup.mak
@@ -159,7 +159,7 @@ echo RUBY_DEVEL = yes
 set /a MSC_VER = _MSC_VER
 #if _MSC_VER > 1900
 set /a MSC_VER_LOWER = MSC_VER/10*10+0
-set /a MSC_VER_UPPER = MSC_VER/10*10+9
+set /a MSC_VER_UPPER = MSC_VER/10*10+19
 #endif
 set MSC_VER
 del %0 & exit
```

As to master, I ran the ruby-loco mswin build with VS2022, and the following failures/errors were generated.  There may be more errors, as it only ran the tests that I run parallel.  It did not run the spec tests (ruby-loco's mingw & ucrt builds use a different build script, so they run all tests with every CI job).

Not sure if this is helpful.  Thanks, Greg

```
3.1.0dev (2021-11-24T21:15:12Z master 9faa599196) [x64-mswin64_140]

 1) Failure:
  TestFixnum#test_divmod [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_fixnum.rb:111]:
  FloatDomainError expected but nothing was raised.

 2) Failure:
  TestFixnum#test_div [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_fixnum.rb:83]:
  [FloatDomainError] exception expected, not #<NoMethodError: undefined method `nan?' for 0:Integer>.

 3) Failure:
  Complex_Test#test_to_s [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_complex.rb:654]:
  <"NaN+NaN*i"> expected but was
  <"N.aNe+9998+N.aNe+9998i">.

 4) Failure:
  TestSH#test_period2 [D:/a/ruby-loco-test/ruby-loco-test/src/test/date/test_switch_hitter.rb:455]:
  <-3937334558197515411197987355> expected but was
  <-3937415408616583513528860675>.

 5) Failure:
  JSONGeneratorTest#test_allow_nan [D:/a/ruby-loco-test/ruby-loco-test/src/test/json/json_generator_test.rb:197]:
  <"[NaN]"> expected but was
  <"[N.aNe+9998]">.

 6) Failure:
  TestBigDecimal#test_cmp_coerce [D:/a/ruby-loco-test/ruby-loco-test/src/test/bigdecimal/test_bigdecimal.rb:646]:
  [ruby-core:64190].
  Expected 0.0 to be < Infinity.

 7) Failure:
  TestFloat#test_divmod [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_float.rb:181]:
  FloatDomainError expected but nothing was raised.

 8) Failure:
  TestFloat#test_to_s [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_float.rb:215]:
  <"NaN"> expected but was
  <"-N.aNe+9998">.

 9) Failure:
  TestFloat#test_div [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_float.rb:190]:
  [FloatDomainError] exception expected, not #<NoMethodError: undefined method `nan?' for 0:Integer>.

10) Failure:
  Rational_Test#test_to_r [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_rational.rb:917]:
  FloatDomainError expected but nothing was raised.

11) Failure:
  Rational_Test#test_rationalize [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_rational.rb:967]:
  FloatDomainError expected but nothing was raised.

12) Failure:
  Rational_Test#test_conv [D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_rational.rb:163]:
  FloatDomainError expected but nothing was raised.

13) Error:
  TestBignum#test_cmp:
  FloatDomainError: Infinity
      D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_bignum.rb:229:in `test_cmp'
      D:/a/ruby-loco-test/ruby-loco-test/src/tool/test/runner.rb:23:in `<top (required)>'
      ../src/test/runner.rb:14:in `require_relative'
      ../src/test/runner.rb:14:in `<main>'

   14) Error:
  TestBigDecimal#test_BigDecimal_with_float:
  ArgumentError: can't omit precision for a Float.
      D:/a/ruby-loco-test/ruby-loco-test/src/test/bigdecimal/test_bigdecimal.rb:167:in `BigDecimal'
      D:/a/ruby-loco-test/ruby-loco-test/src/test/bigdecimal/test_bigdecimal.rb:167:in `block in test_BigDecimal_with_float'
      D:/a/ruby-loco-test/ruby-loco-test/src/test/bigdecimal/test_bigdecimal.rb:165:in `save_exception_mode'
      D:/a/ruby-loco-test/ruby-loco-test/src/test/bigdecimal/test_bigdecimal.rb:165:in `test_BigDecimal_with_float'

15) Error:
  TestFloat#test_cmp:
  FloatDomainError: Infinity
      D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_float.rb:341:in `<=>'
      D:/a/ruby-loco-test/ruby-loco-test/src/test/ruby/test_float.rb:341:in `test_cmp'
```



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread