Additional enhancement changes
- Sync changes from Fedora (rpmlintrc file) - Remove unnecessary Obsoletes - Use directory symlink instead of file-symlinks for irb Related: rhbz#1980831
This commit is contained in:
parent
5125f51ce9
commit
006b7e5d43
@ -2,10 +2,55 @@
|
|||||||
|
|
||||||
# There is no way to implement this with `%{SOURCE0}` without `%{_sourcedir}`.
|
# There is no way to implement this with `%{SOURCE0}` without `%{_sourcedir}`.
|
||||||
# The order in the .spec file could be possibly different.
|
# The order in the .spec file could be possibly different.
|
||||||
addFilter(r'^ruby\.(spec|src):20: E: use-of-RPM_SOURCE_DIR$')
|
addFilter(r'ruby\.(spec|src):20: E: use-of-RPM_SOURCE_DIR$')
|
||||||
|
|
||||||
# The used version is not obvious.
|
# The used version is not obvious.
|
||||||
addFilter(r'^ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-build_assert\)$')
|
addFilter(r'ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-build_assert\)$')
|
||||||
addFilter(r'^ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-check_type\)$')
|
addFilter(r'ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-check_type\)$')
|
||||||
addFilter(r'^ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-container_of\)$')
|
addFilter(r'ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-container_of\)$')
|
||||||
addFilter(r'^ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-list\)$')
|
addFilter(r'ruby\.(spec|src):\d+: W: unversioned-explicit-provides bundled\(ccan-list\)$')
|
||||||
|
|
||||||
|
# The template files do not have to have executable bits.
|
||||||
|
addFilter(r'^rubygem-bundler\.noarch: E: non-executable-script /usr/share/gems/gems/bundler-[\d\.]+/lib/bundler/templates/[\w/\.]+ 644 /usr/bin/env ')
|
||||||
|
|
||||||
|
# The bundled gem files permissions are overridden as 644 by `make install`.
|
||||||
|
# https://bugs.ruby-lang.org/issues/17840
|
||||||
|
# power_assert
|
||||||
|
# https://github.com/ruby/power_assert/issues/35
|
||||||
|
addFilter(r'^rubygem-power_assert\.noarch: E: non-executable-script /usr/share/gems/gems/power_assert-[\d\.]+/bin/console 644 ')
|
||||||
|
addFilter(r'^rubygem-power_assert\.noarch: E: non-executable-script /usr/share/gems/gems/power_assert-[\d\.]+/bin/setup 644 ')
|
||||||
|
# rake
|
||||||
|
# https://github.com/ruby/rake/issues/385
|
||||||
|
addFilter(r'^rubygem-rake\.noarch: E: non-executable-script /usr/share/gems/gems/rake-[\d\.]+/bin/bundle 644 ')
|
||||||
|
addFilter(r'^rubygem-rake\.noarch: E: non-executable-script /usr/share/gems/gems/rake-[\d\.]+/bin/console 644 ')
|
||||||
|
addFilter(r'^rubygem-rake\.noarch: E: non-executable-script /usr/share/gems/gems/rake-[\d\.]+/bin/rake 644 ')
|
||||||
|
addFilter(r'^rubygem-rake\.noarch: E: non-executable-script /usr/share/gems/gems/rake-[\d\.]+/bin/rdoc 644 ')
|
||||||
|
addFilter(r'^rubygem-rake\.noarch: E: non-executable-script /usr/share/gems/gems/rake-[\d\.]+/bin/rubocop 644 ')
|
||||||
|
addFilter(r'^rubygem-rake\.noarch: E: non-executable-script /usr/share/gems/gems/rake-[\d\.]+/bin/setup 644 ')
|
||||||
|
# rbs
|
||||||
|
# https://github.com/ruby/rbs/issues/673
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/annotate-with-rdoc 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/console 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/query-rdoc 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/rbs-prof 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/setup 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/sort 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/steep 644 ')
|
||||||
|
addFilter(r'^rubygem-rbs\.noarch: E: non-executable-script /usr/share/gems/gems/rbs-[\d\.]+/bin/test_runner.rb 644 ')
|
||||||
|
# test-unit
|
||||||
|
addFilter(r'^rubygem-test-unit\.noarch: E: non-executable-script /usr/share/gems/gems/test-unit-[\d\.]+/test/run-test.rb 644 ')
|
||||||
|
|
||||||
|
# The function `chroot` without using `chdir` is detected by rpmlint with the
|
||||||
|
# following message. However it looks a false positive as the `chroot` in the
|
||||||
|
# `dir.c` is just used as a Ruby binding `Dir.chroot` for the function.
|
||||||
|
#
|
||||||
|
# ruby-libs.x86_64: E: missing-call-to-chdir-with-chroot /usr/lib64/libruby.so.3.0.1
|
||||||
|
# This executable appears to call chroot without using chdir to change the
|
||||||
|
# current directory. This is likely an error and permits an attacker to break
|
||||||
|
# out of the chroot by using fchdir. While that's not always a security issue,
|
||||||
|
# this has to be checked.
|
||||||
|
addFilter(r'^ruby-libs\.\w+: E: missing-call-to-chdir-with-chroot /usr/lib(64)?/libruby.so.[\d/.]+$')
|
||||||
|
|
||||||
|
# Nothing referred and no dependency information should be no problem.
|
||||||
|
# https://bugs.ruby-lang.org/issues/16558#note-2
|
||||||
|
addFilter(r'^ruby-libs\.\w+: E: shared-lib-without-dependency-information /usr/lib(64)?/ruby/enc/gb2312.so$')
|
||||||
|
18
ruby.spec
18
ruby.spec
@ -229,16 +229,6 @@ Provides: bundled(rubygem-did_you_mean) = %{did_you_mean_version}
|
|||||||
Provides: bundled(rubygem-openssl) = %{openssl_version}
|
Provides: bundled(rubygem-openssl) = %{openssl_version}
|
||||||
Provides: bundled(rubygem-racc) = %{racc_version}
|
Provides: bundled(rubygem-racc) = %{racc_version}
|
||||||
|
|
||||||
# Tcl/Tk support was removed from stdlib in Ruby 2.4, i.e. F27 timeframe.
|
|
||||||
Obsoletes: ruby-tcltk < 2.4.0
|
|
||||||
|
|
||||||
# The Net::Telnet and XMLRPC were removed in Ruby 2.8, i.e. F34 timeframe.
|
|
||||||
# https://bugs.ruby-lang.org/issues/16484
|
|
||||||
# TODO: Update the versions prior landing in Fedora.
|
|
||||||
Obsoletes: rubygem-net-telnet < 0.2.0-%{release}
|
|
||||||
Obsoletes: rubygem-xmlrpc < 0.3.0-%{release}
|
|
||||||
|
|
||||||
|
|
||||||
%description libs
|
%description libs
|
||||||
This package includes the libruby, necessary to run Ruby.
|
This package includes the libruby, necessary to run Ruby.
|
||||||
|
|
||||||
@ -703,13 +693,7 @@ mkdir -p %{buildroot}%{gem_dir}/gems/irb-%{irb_version}/lib
|
|||||||
mv %{buildroot}%{ruby_libdir}/irb* %{buildroot}%{gem_dir}/gems/irb-%{irb_version}/lib
|
mv %{buildroot}%{ruby_libdir}/irb* %{buildroot}%{gem_dir}/gems/irb-%{irb_version}/lib
|
||||||
mv %{buildroot}%{gem_dir}/specifications/default/irb-%{irb_version}.gemspec %{buildroot}%{gem_dir}/specifications
|
mv %{buildroot}%{gem_dir}/specifications/default/irb-%{irb_version}.gemspec %{buildroot}%{gem_dir}/specifications
|
||||||
ln -s %{gem_dir}/gems/irb-%{irb_version}/lib/irb.rb %{buildroot}%{ruby_libdir}/irb.rb
|
ln -s %{gem_dir}/gems/irb-%{irb_version}/lib/irb.rb %{buildroot}%{ruby_libdir}/irb.rb
|
||||||
# TODO: This should be possible to replaced by simple directory symlink
|
ln -s %{gem_dir}/gems/irb-%{irb_version}/lib/irb %{buildroot}%{ruby_libdir}/irb
|
||||||
# after ~ F31 EOL (rhbz#1691039).
|
|
||||||
mkdir -p %{buildroot}%{ruby_libdir}/irb
|
|
||||||
pushd %{buildroot}%{gem_dir}/gems/irb-%{irb_version}/lib
|
|
||||||
find irb -type d -mindepth 1 -exec mkdir %{buildroot}%{ruby_libdir}/'{}' \;
|
|
||||||
find irb -type f -exec ln -s %{gem_dir}/gems/irb-%{irb_version}/lib/'{}' %{buildroot}%{ruby_libdir}/'{}' \;
|
|
||||||
popd
|
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{gem_dir}/gems/rdoc-%{rdoc_version}/lib
|
mkdir -p %{buildroot}%{gem_dir}/gems/rdoc-%{rdoc_version}/lib
|
||||||
mv %{buildroot}%{ruby_libdir}/rdoc* %{buildroot}%{gem_dir}/gems/rdoc-%{rdoc_version}/lib
|
mv %{buildroot}%{ruby_libdir}/rdoc* %{buildroot}%{gem_dir}/gems/rdoc-%{rdoc_version}/lib
|
||||||
|
Loading…
Reference in New Issue
Block a user