[#113435] [Ruby master Feature#19634] Pattern matching dynamic key — "baweaver (Brandon Weaver) via ruby-core" <ruby-core@...>
Issue #19634 has been reported by baweaver (Brandon Weaver).
6 messages
2023/05/09
[#113489] [Ruby master Bug#19642] Remove vectored read/write from `io.c`. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>
Issue #19642 has been reported by ioquatix (Samuel Williams).
10 messages
2023/05/15
[ruby-core:113609] [Ruby master Bug#19687] Should a development version of the standard library be included in ruby/ruby?
From:
"jaruga (Jun Aruga) via ruby-core" <ruby-core@...>
Date:
2023-05-24 06:29:32 UTC
List:
ruby-core #113609
Issue #19687 has been updated by jaruga (Jun Aruga).
> Could you show the output of gem list | grep stringio?
Sure. Below is the result.
```
$ which gem
~/.local/ruby-bd786e7896/bin/gem
$ gem list | grep stringio
stringio (default: 3.0.7)
```
I was able to reproduce this on the latest master branch `78e9197f4a01676ab194d014d20c3ba4e9a1ee87` in the ruby/opnessl.
```
$ git remote -v | grep origin
origin git@github.com:ruby/openssl.git (fetch)
origin git@github.com:ruby/openssl.git (push)
$ git log --pretty=oneline | head -1
78e9197f4a01676ab194d014d20c3ba4e9a1ee87 Merge pull request #623 from junaruga/wip/enable-mkmf-verbose
$ bundle install --standalone
Fetching gem metadata from https://rubygems.org/.........
Resolving dependencies...
Fetching rake 13.0.6
Installing rake 13.0.6
Using bundler 2.5.0.dev
Using openssl 3.1.0 from source at `.`
Fetching power_assert 2.0.3
stringio-3.0.7 is built in to Ruby, and can't be cached because your Gemfile doesn't have any sources that contain it.
Fetching rake-compiler 1.2.1
Installing power_assert 2.0.3
Fetching test-unit 3.5.8
Installing rake-compiler 1.2.1
Installing test-unit 3.5.8
Bundler::GemNotFound: Could not find stringio-3.0.7.gem for installation
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/source/rubygems.rb:157:in
`install'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:54:in
`install'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:16:in
`install_from_spec'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:156:in
`do_install'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:147:in
`block in worker_pool'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:62:in `apply_func'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:57:in `block in
process_queue'
<internal:kernel>:187:in `loop'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:54:in `process_queue'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:90:in `block (2
levels) in create_threads'
An error occurred while installing stringio (3.0.7), and Bundler cannot continue.
In Gemfile:
rdoc was resolved to 6.5.0, which depends on
psych was resolved to 5.1.0, which depends on
stringio
```
----------------------------------------
Bug #19687: Should a development version of the standard library be included in ruby/ruby?
https://bugs.ruby-lang.org/issues/19687#change-103253
* Author: jaruga (Jun Aruga)
* Status: Feedback
* Priority: Normal
* Assignee: kou (Kouhei Sutou)
* ruby -v: ruby 3.3.0dev (2023-05-22T03:58:17Z master bd786e7896) [x86_64-linux]
* Backport: 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN
----------------------------------------
The `stringio` gem uses the value of the `STRINGIO_VERSION` as the gem version.
https://github.com/ruby/ruby/blob/31ac8efca8ecb574e1e7b7c32cce54cb1b97f19a/ext/stringio/stringio.gemspec#L15
https://github.com/ruby/ruby/blob/31ac8efca8ecb574e1e7b7c32cce54cb1b97f19a/ext/stringio/stringio.c#L15
```
#define STRINGIO_VERSION "3.0.7"
```
It seems that that `stringio` on the current master branch in ruby/ruby sets the version 3.0.7 that doesn't exist in the RubyGems <https://rubygems.org/gems/stringio> by the commit <https://github.com/ruby/ruby/commit/67743d582317544d2c830b63d3423b04bad185a7>.
And I see that this causes raising an error when running `bundle install` on ruby/openssl with Ruby on the master branch. I captured the `Gemeifile.lock` by `bundle lock`. And I see the `rdoc` depending on `psych` depending on `stringio`.
The workaround was to add `gem "stringio", "< 3.0.7"` to the `Gemfile`. However, it's not convenient. Is it an expected behavior? Or should the ruby/ruby always merge the static version of the ruby/* (upstream standard libraries such as "stringio") rater than the development version?
```
$ which ruby
~/.local/ruby-bd786e7896/bin/ruby
$ ruby -v
ruby 3.3.0dev (2023-05-22T03:58:17Z master bd786e7896) [x86_64-linux]
$ pwd
/home/jaruga/git/ruby/openssl
$ bundle install --standalone
...
stringio-3.0.7 is built in to Ruby, and can't be cached because your Gemfile doesn't have any sources that contain it.
...
Bundler::GemNotFound: Could not find stringio-3.0.7.gem for installation
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/source/rubygems.rb:157:in
`install'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:54:in
`install'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:16:in
`install_from_spec'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:156:in
`do_install'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:147:in
`block in worker_pool'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:62:in `apply_func'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:57:in `block in
process_queue'
<internal:kernel>:187:in `loop'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:54:in `process_queue'
/home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:90:in `block (2
levels) in create_threads'
An error occurred while installing stringio (3.0.7), and Bundler cannot continue.
```
--
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/