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 everybody,
You probably noticed, that there is ongoing build of all Python packages
in Copr [1] and today, I was approached by Miroslav Suchý, that he'd
like to do the same for rubygems. And this in turn triggered these
questions:
1) Would you be interested to create ruby-sig group in FAS? We could
make the group owner of some packages and in turn, the members of the
group could maintain the packages, without explicitly asking for some ACLs.
2) For the Copr rebuild of rubygems, there needs to be some FAS group
again. Python guys are asking for "pypi-builds-sig" group [2], hence
following their lead, I'd like to ask for "rubygems-builds-sig" group
(note that although I don't like the '-sig' suffix in this case, it is
mandated by the infrastructure ticket template).
So what are your thoughts?
Vít
[1]
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org…
[2] https://fedorahosted.org/fedora-infrastructure/ticket/5311
Hi everybody,
Time is running past and it is almost 6 months of development of Ruby
2.4. So I started to prepare some test build again. I am pushing all the
changes into private-ruby-2.4 branch of dist-git if you are interested
and here is the build of r55184:
http://koji.fedoraproject.org/koji/taskinfo?taskID=14278233
One notable change is that XMLRPC library was extracted into separate
gem, so rubygem-xmlrpc is now available as Ruby subpackage.
Please give it a try and let me know if anything goes wrong.
Vít
Hi,
I am slowly pushing Ruby 2.3.2 into Fedora.
Unfortunately, part of Ruby 2.3.2 is update of RubyGems and this update
has one annoying consequence. RubyGems developers decided, that it is
good idea to freeze all strings in generated .gemspec file. But because
of this, there might be several rubygem- packages FTBFS. For example,
rubygem-execjs fails to build with following errror:
```
+ gem build execjs.gemspec
WARNING: See http://guides.rubygems.org/specification-reference/ for help
ERROR: While executing gem ... (Gem::InvalidSpecificationException)
["lib/execjs/support/jscript_runner.js",
"lib/execjs/support/json2.js"] are not files
```
This is because there are some files removed from the package and the
previous sed:
```
+ sed -i -e '/files/ s|"lib/execjs/support/jscript_runner.js", ||' -e
'/files/ s|"lib/execjs/support/json2.js", ||' execjs.gemspec
```
Does not match/substitute anything, due to .freeze call :/ This is the
fix for rubygem-execjs:
```
$ git diff
diff --git a/rubygem-execjs.spec b/rubygem-execjs.spec
index b2df67c..fddb541 100644
--- a/rubygem-execjs.spec
+++ b/rubygem-execjs.spec
@@ -41,8 +41,8 @@ gem unpack %{SOURCE0}
gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
%patch0 -p1
-sed -i -e '/files/ s|"lib/execjs/support/jscript_runner.js", ||' \
- -e '/files/ s|"lib/execjs/support/json2.js", ||' %{gem_name}.gemspec
+sed -i -e '/files/ s|"lib/execjs/support/jscript_runner.js".freeze, ||' \
+ -e '/files/ s|"lib/execjs/support/json2.js".freeze, ||'
%{gem_name}.gemspec
%build
# Create the gem as gem install only works on a gem file
```
I'm sorry for any inconvenience, but suggest to complain to
Ruby/RubyGems upstream, since minor/teeny version changes should not
break anything ...
Vít
Hi,
I am orphaning rubygem-heroku{,-api} since I was never really user of
these. Moreover, there packages are deprecated already and Heroku is
going to sunset the Heroku v2 API as well as these packages on April 15,
2017 [1].
Vít
[1] https://devcenter.heroku.com/changelog-items/862