Bug #19340
closedRuby master 'make install' not installing rbs gem
Description
Last three daily builds of ruby-dev-builder have not included the rbs gem.
See https://github.com/ruby/ruby-dev-builder/actions/runs/3919887598/jobs/6701177359#step:17:284
ruby/ruby PR https://github.com/ruby/ruby/pull/7114
ruby/ruby-dev-builder PR https://github.com/ruby/ruby-dev-builder/pull/2 checks all bin files work
Added a patch to ruby-loco for it, so its builds are ok.
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
I couldn't reproduce it.
And What should we install their versions?
- rbs of eab5367add3469b3f614e663ba43a3debc62420a(not 3.0.0.dev.1)
- 3.0.0.dev.1
- rbs-2.8.3
- Nothing, We skip to install rbs because there is no tested version yet.
I'm +1 to 3 or 1. But I also prefer to use 4 with skip message.
Updated by MSP-Greg (Greg L) almost 2 years ago
From the ruby-loco log, which has the Ruby PR applied:
Copying rbs@eab5367add3469b3f614e663ba43a3debc62420a to rbs-3.0.0.dev.1
From https://github.com/ruby/rbs
* branch eab5367add3469b3f614e663ba43a3debc62420a -> FETCH_HEAD
HEAD is now at eab5367a Merge pull request #1207 from ruby/single-process-stdlibtest
Copied gems/src/rbs
It is pulling the code from the commit and installing it as rbs-3.0.0.dev.1.
I checked the code in the most recent ruby-loco build, and it includes the changes in rbs@eab5367 to Rakefile
. So, using the line in PR 7114 works as expected...
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
We discuss this issue with @mame (Yusuke Endoh) @nobu (Nobuyoshi Nakada) @ko1 (Koichi Sasada) and @soutaro (Soutaro Matsumoto). The current build-system of bundled gems is very complex.
We decide to the following specification for building the bundled gems.
When we provide this bundled_gems
file:
foo 0.1.2 https://
bar 0.2.3 https://... abc (abcd uses bar-0.2.4)
buzz 0.2.4 https://... xyz (xyz uses buzz-0.2.4)
- We fetch and install foo-0.1.2.
-
make
process will raise error bar-0.2.3 andabc
ref of bar repository. Because their versions are inconsistency. So, we couldn't specify installed version. -
make install
uses buzz-0.2.4 build from xyz ref of buzz repository. It's different from buzz-0.2.4 strictly. It's for only development snapshot version.
Updated by MSP-Greg (Greg L) almost 2 years ago
The particular issue with rbs has been fixed with https://github.com/ruby/ruby/pull/7143
The current build-system of bundled gems is very complex
Agreed. Several recent commits show updates to it.
Given issues with whether one wants a released gem or a commit (or release tag) from the bundled gem's repo, and also dependencies between bundled gems, etc, things can get really messy.
I would think that using the head commit from almost all bundled gems would be the best option, but that is difficult re dependencies, pre-release versions, etc. It also places a burden on the maintainers of them.
Ok to close. Thanks.
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
- Status changed from Open to Closed
Applied in changeset git|17f5631c6ea118b9ce0e8776dc50c7b1dcdaf596.
[Bug #19340] Fix bundle gems with test revision
Build temporary gem package from cloned repository if test revision is
set.
Updated by hsbt (Hiroshi SHIBATA) over 1 year ago
- Related to Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball added
Updated by hsbt (Hiroshi SHIBATA) over 1 year ago
- Related to Bug #19271: irb ignores rbs and debug added
Updated by hsbt (Hiroshi SHIBATA) over 1 year ago
Note, related PRs are:
Updated by hsbt (Hiroshi SHIBATA) over 1 year ago
- Assignee set to hsbt (Hiroshi SHIBATA)
Updated by hsbt (Hiroshi SHIBATA) over 1 year ago
In last weekend, all of Ruby CI results are failed like http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20230305T001003Z.fail.html.gz
It caused by minitest-5.18.0 release and our gem build logic missed to checkout specified revision.
I fixed them at https://github.com/ruby/ruby/pull/7475