Commit graph

660 commits

Author SHA1 Message Date
Vít Ondruch
700aaba203 Ignore no-library-dependency-{on,for} rpmlint check.
Upstream suggest to ignore these checks on Fedora:

https://github.com/rpm-software-management/rpmlint/issues/781
2022-01-06 17:08:32 +01:00
Vít Ondruch
6a42974108 Ignore crypto-policy-non-compliance-openssl rpmlint issue.
`SSL_CTX_set_cipher_list` is used as part of Ruby API to enable setting
custom cipher list.
2022-01-06 17:07:47 +01:00
Vít Ondruch
b914a99102 Examples in Rake are false positive. 2022-01-06 17:07:45 +01:00
Vít Ondruch
d6f55f05a3 Ignore W: library-not-linked-against-libc for Ruby utility libraries. 2022-01-06 16:55:59 +01:00
Vít Ondruch
b50e2b8cda Update the E: non-executable-script filter.
All the original issues were resolved, but there is more.
2022-01-05 18:00:50 +01:00
Vít Ondruch
5ad0794cdd s/lib/library/ to follow rpmlint changes.
c95f0b98c9
2022-01-04 18:59:55 +01:00
Vít Ondruch
2c0683f117 Remove missing-call-to-chdir-with-chroot from rpmlint filter.
This test was removed in rpmlint 2.0.0:

https://github.com/rpm-software-management/rpmlint/pull/219
2022-01-04 18:55:03 +01:00
Vít Ondruch
85118a4cb8 Upgrade to Ruby 3.1.0. 2022-01-04 10:53:16 +01:00
Vít Ondruch
41a14c975c Do not glob libruby.so.
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_listing_shared_library_files
2022-01-04 10:04:47 +01:00
Vít Ondruch
2bdf463c09 Upgrade to Ruby 3.1.0 (40a1af6151). 2021-12-23 16:14:01 +01:00
Vít Ondruch
00ba817911 Upgrade to Ruby 3.1.0 (fdf3996349). 2021-12-22 14:56:44 +01:00
Vít Ondruch
7e982d49d8 Upgrade to Ruby 3.1.0 (cdb7d699d0). 2021-12-22 11:56:53 +01:00
Vít Ondruch
eeac29b5d5 Upgrade to Ruby 3.1.0 (74b58dd690). 2021-12-17 19:43:54 +01:00
Vít Ondruch
2d39dd4a0d Remove colon from load call.
This is not needed by RPM 4.17+ and might improve backwared compatibilty
with RHEL 7, where the original LUA implementation of `load` macro was
used.
2021-12-17 10:45:03 +01:00
Vít Ondruch
eaf93bb94a Disable TestReadline#test_interrupt_in_other_thread failing on armv7hl. 2021-12-07 15:13:23 +01:00
Vít Ondruch
46d6846170 Upgrade to Ruby 3.1.0 (ec878dac90). 2021-12-07 13:09:25 +01:00
Vít Ondruch
42d22095f3 Upgrade to Ruby 3.1.0 (715a51a0d6). 2021-12-06 17:19:25 +01:00
Vít Ondruch
653022d2e1 Update Bundler vendored libraries. 2021-12-02 18:49:15 +01:00
Vít Ondruch
84c1bf6900 Upgrade to Ruby 3.1.0 (a84dc9d80d).
rbs downgraded to version 1.6.2 and debug gem not included due to build
issues.

Added ruby-bundled-gems subpackage to ship all gems bundled in Ruby
without providing independent subpackage for each.
2021-12-02 18:04:49 +01:00
Vít Ondruch
d584a5bfb3 Upgrade to Ruby 3.0.3. 2021-11-25 17:46:48 +01:00
Vít Ondruch
c4f8814a93 Fix OpenSSL 3.0 compatibility.
Resolves: rhbz#2021922
2021-11-22 18:21:04 +01:00
Jun Aruga
78a9fbc351 Add AC_PROG_CC to make C++ compiler dependency optional on autoconf >= 2.70.
Resolves: rhbz#1999479
2021-10-04 12:23:30 +02:00
Sahana Prasad
d75a6c86f9 Rebuilt with OpenSSL 3.0.0 2021-09-14 19:13:53 +02:00
Vít Ondruch
11a27766bd Load user installed RubyGems plugins. 2021-08-24 18:23:20 +02:00
Vít Ondruch
1170d812fe Enable LTO. 2021-08-24 17:37:08 +02:00
Fedora Release Engineering
089c0a1928 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 11:43:38 +00:00
Jarek Prokop
63065e7db7 Upgrade to Ruby 3.0.2.
- Fix command injection vulnerability in RDoc.
  Resolves: CVE-2021-31799
- Fix FTP PASV command response can cause Net::FTP to connect to arbitrary host.
  Resolves: CVE-2021-31810
- Fix StartTLS stripping vulnerability in Net::IMAP.
  Resolves: CVE-2021-32066
- Fix dependencies of gems with explicit source installed from a different
  source.
  Resolves: CVE-2020-36327
2021-07-15 14:02:23 +02:00
Timm Bäder
6b2ff68f33 Pass ldflags to gem install
We have them, so we may as well pass them. This also fixes building ruby
gems with clang.
2021-05-31 10:25:26 +00:00
Jun Aruga
e6a3dff909 ruby.rpmlintrc: Remove prefix match.
A result of ruby.spec file depends on how the spec file is called by rpmlint.

```
$ rpmlint ruby.spec
ruby.spec:20: E: use-of-RPM_SOURCE_DIR
..
0 packages and 1 specfiles checked; 3 errors, 4 warnings.

$ rpmlint ./ruby.spec
./ruby.spec:20: E: use-of-RPM_SOURCE_DIR
..
0 packages and 1 specfiles checked; 3 errors, 4 warnings.
```
2021-05-18 15:40:11 +02:00
Jun Aruga
a09dbbec17 ruby.rpmlintrc: Ignore a shared-lib-without-dependency-information error.
Nothing referred and no dependency information should be no problem.

Ignore the following error.

```
ruby-libs.x86_64: E: shared-lib-without-dependency-information /usr/lib64/ruby/enc/gb2312.so
```
2021-05-18 15:40:05 +02:00
Jun Aruga
882d68b75c ruby.rpmlintrc: Ignore a false positive missing-call-to-chdir-with-chroot error.
The `chroot` in the `dir.c` is just used as a Ruby binding `Dir.chroot`
for the function.

Ignore the following error.

```
ruby-libs.x86_64: E: missing-call-to-chdir-with-chroot /usr/lib64/libruby.so.3.0.1
```
2021-05-18 15:40:00 +02:00
Jun Aruga
26bc979446 ruby.rpmlintrc: Ignore the non-executable-script errors in bundled gems.
The bundled gem files permissions are overridden as 644 by `make install`.
Ignore following errors in bundled gems.

```
rubygem-power_assert.noarch: E: non-executable-script /usr/share/gems/gems/power_assert-1.2.0/bin/console 644 /usr/bin/env ruby
rubygem-power_assert.noarch: E: non-executable-script /usr/share/gems/gems/power_assert-1.2.0/bin/setup 644 /usr/bin/env bash
rubygem-rake.noarch: E: non-executable-script /usr/share/gems/gems/rake-13.0.3/bin/bundle 644 /usr/bin/env ruby
rubygem-rake.noarch: E: non-executable-script /usr/share/gems/gems/rake-13.0.3/bin/console 644 /usr/bin/env ruby
rubygem-rake.noarch: E: non-executable-script /usr/share/gems/gems/rake-13.0.3/bin/rake 644 /usr/bin/env ruby
rubygem-rake.noarch: E: non-executable-script /usr/share/gems/gems/rake-13.0.3/bin/rdoc 644 /usr/bin/env ruby
rubygem-rake.noarch: E: non-executable-script /usr/share/gems/gems/rake-13.0.3/bin/rubocop 644 /usr/bin/env ruby
rubygem-rake.noarch: E: non-executable-script /usr/share/gems/gems/rake-13.0.3/bin/setup 644 /usr/bin/env bash
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/annotate-with-rdoc 644 /usr/bin/env ruby
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/console 644 /usr/bin/env ruby
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/query-rdoc 644 /usr/bin/env ruby
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/rbs-prof 644 /usr/bin/env ruby
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/setup 644 /usr/bin/env bash
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/sort 644 /usr/bin/env ruby
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/steep 644 /bin/sh
rubygem-rbs.noarch: E: non-executable-script /usr/share/gems/gems/rbs-1.0.4/bin/test_runner.rb 644 /usr/bin/env ruby
rubygem-test-unit.noarch: E: non-executable-script /usr/share/gems/gems/test-unit-3.3.7/test/run-test.rb 644 /usr/bin/env ruby
```
2021-05-18 15:39:53 +02:00
Jun Aruga
fbaee91204 ruby.rpmlintrc: Ignore non executable template files for Bundler.
The template files do not have to have executable bits.
Ignore the following errors.

```
rubygem-bundler.noarch: E: non-executable-script /usr/share/gems/gems/bundler-2.2.15/lib/bundler/templates/Executable 644 /usr/bin/env <%= Bundler.settings[:shebang] || RbConfig::CONFIG["ruby_install_name"] %>
rubygem-bundler.noarch: E: non-executable-script /usr/share/gems/gems/bundler-2.2.15/lib/bundler/templates/Executable.bundler 644 /usr/bin/env <%= Bundler.settings[:shebang] || RbConfig::CONFIG["ruby_install_name"] %>
rubygem-bundler.noarch: E: non-executable-script /usr/share/gems/gems/bundler-2.2.15/lib/bundler/templates/Executable.standalone 644 /usr/bin/env <%= Bundler.settings[:shebang] || RbConfig::CONFIG["ruby_install_name"] %>
rubygem-bundler.noarch: E: non-executable-script /usr/share/gems/gems/bundler-2.2.15/lib/bundler/templates/newgem/bin/console.tt 644 /usr/bin/env ruby
rubygem-bundler.noarch: E: non-executable-script /usr/share/gems/gems/bundler-2.2.15/lib/bundler/templates/newgem/bin/setup.tt 644 /usr/bin/env bash
rubygem-bundler.noarch: E: non-executable-script /usr/share/gems/gems/bundler-2.2.15/lib/bundler/templates/newgem/exe/newgem.tt 644 /usr/bin/env ruby
```
2021-05-18 15:39:38 +02:00
Jun Aruga
1b641ac57f Fix FTBFS due to an incompatible load.
The FTBFS has started to happen with rpm-4.16.90-0.git15395.2.fc35.

root.log

```
DEBUG util.py:444:  error: line 116: Unknown tag: /chroot_tmpdir/srpm_unpacked/SOURCES/macros.ruby
```

As the `%{?load:...}` is undocumented, it is gone.

https://github.com/rpm-software-management/rpm/issues/1669
2021-05-05 14:15:31 +02:00
Vít Ondruch
9e656cf658 Upgrade to Ruby 3.0.1. 2021-04-06 12:57:56 +02:00
Vít Ondruch
fd8c8ee765 Remove IRB dependency from rubygem-rdoc.
The IRB dependency was dropped in RDoc 6.0.0 already, but nobody
noticed:

https://github.com/ruby/rdoc/pull/512
2021-04-01 13:10:34 +02:00
Jun Aruga
4108f57be7 Ignore the rpmlint "W: unversioned-explicit-provides".
Ignore the following warnings for bundled ccan-* libraries.

```
ruby.spec:231: W: unversioned-explicit-provides bundled(ccan-build_assert)
ruby.spec:232: W: unversioned-explicit-provides bundled(ccan-check_type)
ruby.spec:233: W: unversioned-explicit-provides bundled(ccan-container_of)
ruby.spec:234: W: unversioned-explicit-provides bundled(ccan-list)
ruby.src:231: W: unversioned-explicit-provides bundled(ccan-build_assert)
ruby.src:232: W: unversioned-explicit-provides bundled(ccan-check_type)
ruby.src:233: W: unversioned-explicit-provides bundled(ccan-container_of)
ruby.src:234: W: unversioned-explicit-provides bundled(ccan-list)
```
2021-03-24 14:33:39 +01:00
Jun Aruga
b65d1d3090 Ignore the rpmlint "E: use-of-RPM_SOURCE_DIR".
Ignore the following errors.

```
ruby.spec:20: E: use-of-RPM_SOURCE_DIR
ruby.src:20: E: use-of-RPM_SOURCE_DIR
```
2021-03-24 14:33:24 +01:00
Jun Aruga
303495d1bf Add ruby.rpmlintrc.
Ignore the false positive errors and warnings by the
`rpmlint --file ruby.rpmlintrc`, that is executed by Zuul CI.

You can run the command on your local like this.

```
$ rpmlint --file ruby.rpmlintrc ruby.spec /var/lib/mock/fedora-rawhide-x86_64/result/*.rpm
```

The `rpmlint` without `--file` option shows the original result.
2021-03-24 14:19:53 +01:00
Vít Ondruch
dae90ef93d Summary should not end with . 2021-03-22 10:10:27 +01:00
Vít Ondruch
cb0039f53c Remove excesive space. 2021-03-05 14:06:28 +01:00
Vít Ondruch
9b149e59e4 Properly support DWARF5 debug information.
Resolves: rhbz#1920533
2021-03-03 11:26:27 +01:00
Vít Ondruch
2bc8b3d5d5 Apply patch fixing flaky excon test suite. 2021-03-02 11:05:16 +01:00
Vít Ondruch
3210f66fb1 Avoid ruby-spec to be stuck in "C-API Kernel function rb_rescue2". 2021-02-16 10:00:33 +01:00
Vít Ondruch
35f28c9a68 Use proper path for plugin wrappers. 2021-01-27 14:03:19 +01:00
Vít Ondruch
b7229da165 Disable test which started to fail presumably after move to DWARF5
https://bugzilla.redhat.com/show_bug.cgi?id=1920533

Unfortunately, these used to be problematic already before:
https://bugs.ruby-lang.org/issues/13758
2021-01-27 14:03:19 +01:00
Vít Ondruch
b3e2d7fc60 Add missing rubygem- prefix for bundled provide.
The `bundled()` provide name must corresponded with package name. This
was omited due to mistake probably.
2021-01-26 12:32:40 +01:00
Vít Ondruch
c7513cd67c Bundle OpenSSL into StdLib.
Symlinks to StdLib provided to preserve `--disable-gems` functionality
together with `require_relative` cause double loading issues [1], e.g.:

~~~
$ ruby --disable-gems -e 'require "openssl"; require "openssl/digest"'
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::MD4
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of MD4 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::MD5
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of MD5 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::RIPEMD160
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of RIPEMD160 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::SHA1
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of SHA1 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::SHA224
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of SHA224 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::SHA256
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of SHA256 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::SHA384
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of SHA384 was here
/usr/share/ruby/openssl/digest.rb:45: warning: already initialized constant OpenSSL::Digest::SHA512
/usr/share/gems/gems/openssl-2.2.0/lib/openssl/digest.rb:45: warning: previous definition of SHA512 was here
/usr/share/ruby/openssl/digest.rb:52:in `<class:Digest>': superclass mismatch for class Digest (TypeError)
	from /usr/share/ruby/openssl/digest.rb:16:in `<module:OpenSSL>'
	from /usr/share/ruby/openssl/digest.rb:15:in `<top (required)>'
	from -e:1:in `require'
	from -e:1:in `<main>'
~~~

We could maintain a downstream patch reverting the `require_relative`,
but given that how much troubles the extracted gems cause, it'll be
better to keep them bundled. This will provide similar experience to
upstream and prevent similar issues.

[1]: https://bugs.ruby-lang.org/issues/16978#note-11
2021-01-26 11:57:47 +01:00
Jun Aruga
cdeff9e00a Refactor small issues. 2021-01-18 19:03:49 +01:00
Vít Ondruch
1e72602218 Fix SEGFAULT in rubygem-shoulda-matchers test suite. 2021-01-16 11:44:56 +01:00