Hi everybody,
Since Ruby 2.2 is going to be released during Christmas and -preview1
release is imminent (this Wednesday?), it is probably time to start
looking into its packaging. So here is the updated .spec file [1] and
scratch build [2], which can be finally build on all platforms. Sorry,
no Copr for you, since Ruby's build fails there due to old RHEL kernel :/.
What has changed from packaging point of view? Luckily, not much, but
here are a few bullets which comes to my mind:
* RPM 4.12 introduces new %load function, which is used to load RPM
macros during RPM build. This allowed to drop my custom RPM macro [3].
On the other hand, you'll be able to build the Ruby only on F21+
(luckily, you should be able to build SRPM everywhere).
* The RubyGems filesystem was not explicit enough, so there might be
something accidentally packages. This is now more explicit, so we should
be safer.
* Ruby now ships with MiniTest and Test::Unit. The very good news is
that they are installed so far as a regular gems. This means that you
have to always specify them in your Gemfile, if you are using Bundler,
but this is generally step in good direction. I hope that upstream will
not change their mind :) Due to this change, we have new subpackages
rubygem-test-unit (and rubygem-power_assert, which is now Test::Unit's
dependency). No more %{_bindir}/testrb (but nobody is using it these
days anyway, right? ;)
* Some prevailing test failures were resolved, some others introduced,
but hopefully they'll get resolved prior stable release.
Generally, I'd say that not much has changed since 2.1, which is good news.
Please test the packaging if you can and let me know about any issues
you encountered.
Also, if you have any other suggestions about Ruby packaging in general,
what we could improve etc, this is probably good time to share. It seems
that OpenSUSE guys are improving their packaging, so you might want to
get some inspiration there [4, 5, 6] ;)
Vít
[1] http://pkgs.fedoraproject.org/cgit/ruby.git/log/?h=private-ruby-2.2
[2] http://koji.fedoraproject.org/koji/taskinfo?taskID=7578843
[3]
http://pkgs.fedoraproject.org/cgit/ruby.git/commit/?h=private-ruby-2.2&id=8…
[4] https://build.opensuse.org/package/show/home:darix:ruby/ruby-common
[5] https://build.opensuse.org/package/show/home:darix:ruby/ruby2.2
[6] https://github.com/openSUSE/gem2rpm/commits/master
Hi,
Ruby currently fails to build due to removal of GCC from buildroot. The
build failure is due to one test case [1] which fails now and which
should be probably fixed to pass even without GCC.
However, digging into this, I wonder if Ruby should have "BR: gcc" or
"BR: gcc-c++". The thing is, that Ruby is checking presence of C++
compiler during its configuration phase. When I was asking upstream what
is the reason for that [2], the answer was that some extension/gems
might use C++. Generally, for distribution purpose, I think that it does
not really make sense and every extension should be configured
separately, therefore we should have just "BR: gcc", i.e. no C++
compiler available during build. However, I am not really sure if this
is going to break something or not. I have tried to build
rubygem-eventmachine at it seems to build just fine, but what else might
be broken?
Anyway, for now, I'll probably stick with "BR: gcc" and we can change to
"BR: gcc-c++" later, if we discover it causes real troubles.
Vít
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1606143#c4
[2] https://bugs.ruby-lang.org/issues/14590
Hello,
I've upgraded Rails to 5.2.1 in Rawhide - sorry for late notice.
I do not plan to rebase it in stable Fedoras, but if you're on F28 and want to try it, you can use my copr:
https://copr.fedorainfracloud.org/coprs/pvalena/ruby-on-rails/
Let me know if something broke.
Regards,
Pavel