Dne 19.12.2017 v 19:19 Jun Aruga napsal(a): > Vit thanks for the working. > > I tested it. > >> 1) If "gem install" as a regular user still works the same. > Right now there is a 2 type of packages. > Some gem package are "default", others are not. > The gem package that is managed the ruby sub package is not "default" > like "bigdecimal" > > What is the future plan for these kind of pacakge such as "bigdecimal"? > 1. These are "default" removing the sub package? > Or 2. Current default package like "cmath" becomes not "default" > creating the sub package?
There are several differences between how upstream works and how Fedora works. 1) In upstream, "gem install" mixes the packages with the gems bundled in Ruby. One of the reasons for "default" gems is to prevent "gem uninstall" from removing these packages. On Fedora, "gem install" does not manage RPM managed dependencies, so we don't face this issues and we can ignore this feature. 2) On Fedora, we typically keep only single version of package available. If for example upstream releases new version of JSON, we wont to remove the old version and install the new version. This is different from what "gem update" does, since "gem update" keeps the old version on the system. As long as we have "overlapped" packages which allows these updates, then it should be better to make regular gems from the default gems. Therefore the plan is to keep the stuff as it is now, i.e. keep the subpackages as they are now. As far as I know, there should not be any concerning difference in behavior of default and non-default gems. If there is need for updated "cmat" etc, we should probably move them to nondefault. We can do it optionally anyway, but there is more then a few of them ... > Fedora Ruby by regular user. > > > ``` > [mockbuild@026f2c75e4664cfe887005e710a5497e ~]$ gem list | grep default > cmath (default: 1.0.0) > csv (default: 1.0.0) > date (default: 1.0.0) > dbm (default: 1.0.0) > digest (default: 0.1.0) > etc (default: 1.0.0) > fcntl (default: 1.0.0) > fiddle (default: 1.0.0) > fileutils (default: 1.0.1) > gdbm (default: 2.0.0) > ipaddr (default: 1.2.0) > scanf (default: 1.0.0) > sdbm (default: 1.0.0) > stringio (default: 0.0.1) > strscan (default: 0.0.1) > webrick (default: 1.4.0.beta1) > zlib (default: 1.0.0) > > [mockbuild@026f2c75e4664cfe887005e710a5497e ~]$ gem list | grep -v default > bigdecimal (1.3.3) > did_you_mean (1.1.2) > io-console (0.4.6) > json (2.1.0) > minitest (5.10.3) > net-telnet (0.1.1) > openssl (2.1.0.beta2) > power_assert (1.1.1) > psych (3.0.0) > rake (12.3.0) > rdoc (6.0.0) > test-unit (3.2.7) > xmlrpc (0.3.0) > ``` > > On upstream Ruby > > ``` > $ dest/bin/gem list > > *** LOCAL GEMS *** > > bigdecimal (default: 1.3.3) > bundler (default: 1.16.1.pre1) > cmath (default: 1.0.0) > csv (default: 1.0.0) > date (default: 1.0.0) > dbm (default: 1.0.0) > digest (default: 0.1.0) > etc (default: 1.0.0) > fcntl (default: 1.0.0) > fileutils (default: 1.0.1) > gdbm (default: 2.0.0) > io-console (default: 0.4.6) > ipaddr (default: 1.2.0) > json (default: 2.1.0) > openssl (default: 2.1.0) > psych (default: 3.0.0) > rdoc (default: 6.0.0) > scanf (default: 1.0.0) > sdbm (default: 1.0.0) > stringio (default: 0.0.1) > strscan (default: 0.0.1) > webrick (default: 1.4.0.beta1) > zlib (default: 1.0.0) > ``` > >> 2) If "gem install" as root still works the same. > "gem list" result is same for regular user's situation. > > I found the difference of the behavior between Upstream Ruby and Fedora Ruby. > Case 2-1. does not install ri document by "gem install". This is interesting. I remember to notice the shorter output, but I didn't pay enough attention to it. Will take a look at it. > > 1-1. Upstream Ruby by root user > > [root@unused-4-164 ~]# /usr/local/ruby-2.5.0.pre1/bin/gem install digest > Fetching: digest-0.0.1.gem (100%) > Successfully installed digest-0.0.1 > Parsing documentation for digest-0.0.1 > Installing ri documentation for digest-0.0.1 > Done installing documentation for digest after 0 seconds > 1 gem installed > > 2-1. Fedora Ruby by root user > > <mock-chroot> sh-4.4# gem install webrick > Fetching: webrick-1.4.1.gem (100%) > Successfully installed webrick-1.4.1 > 1 gem installed > > 2-2. Fedora Ruby by regular user > > [mockbuild@c187f3581b4e45ecb2837fe5ab6a0af5 ~]$ gem install webrick > Fetching: webrick-1.4.1.gem (100%) > WARNING: You don't have /builddir/bin in your PATH, > gem executables will not run. > Successfully installed webrick-1.4.1 > Parsing documentation for webrick-1.4.1 > Installing ri documentation for webrick-1.4.1 > Done installing documentation for webrick after 0 seconds > 1 gem installed > > > I do not know this difference is this Fedora Ruby specific. > This might be related to this issue? > https://src.fedoraproject.org/rpms/ruby/pull-request/9 > >> 3) If the RPM packages in Fedora (probably just noarch) still installs > and runs just fine. >> 4) If rubygem- RPM packages build using this ruby are still build and > I could not test below cases. I tried to build rubygem-bundler for > your Ruby RPMs. > But I could not build because of conflict with ruby-2.4.2. > > rubygem-bundler > > ``` > $ mock -r fedora-rawhide-x86_64 --with tests -n *.rpm > ... > Error: > Problem: cannot install both ruby-libs-2.4.2-85.fc28.x86_64 and > ruby-libs-2.5.0-0.1.r61214.fc28.x86_64 > ``` You are probably missing some dependency in buildroot. Hard to tell more from this short snippet ... Vít _______________________________________________ ruby-sig mailing list -- ruby-sig@lists.fedoraproject.org To unsubscribe send an email to ruby-sig-le...@lists.fedoraproject.org