Hello community, here is the log from the commit of package ruby2.2 for openSUSE:Factory checked in at 2015-05-07 08:27:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ruby2.2 (Old) and /work/SRC/openSUSE:Factory/.ruby2.2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ruby2.2" Changes: -------- --- /work/SRC/openSUSE:Factory/ruby2.2/ruby2.2.changes 2015-02-10 20:23:28.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.ruby2.2.new/ruby2.2.changes 2015-05-07 08:27:39.000000000 +0200 @@ -1,0 +2,65 @@ +Thu Apr 16 23:42:00 UTC 2015 - [email protected] + +- update to 2.2.2 (bsc# 926974) + - stricter hostname verification following RFC 6125. with the + patch provided by Tony Arcieri and Hiroshi Nakamura + [ruby-core:61545] [Bug #9644] CVE-2015-1855 + - fix segfault by null caused by syntax error. [ruby-core:68851] + [Bug #10957] + - parse.y (primary): empty parentheses at cmdarg can be null. + [ruby-core:68477] [Bug #10957] + - ext/io/wait/wait.c (io_nread): wrap return value with INT2FIX + Thanks to Yura Sokolov <[email protected]> + [ruby-core:68369] [Bug#10923] + - test/io/wait/test_io_wait.rb (test_nread_buffered): fix broken + test + - vm_eval.c (vm_call_super): search next super class from the + original class, to get rid of infinite recursion with + prepending. a patch by Seiei Higa <hanachin AT gmail.com> at + [ruby-core:68434]. [ruby-core:68093] [Bug #10847] + - class.c (rb_prepend_module): need a WB for klass -> origin. + - ext/fiddle/extconf.rb: needs --enable-shared when linked to + libruby or fiddle.so. since --with-static-linked-ext does no + longer link extensions to ruby program with --enable-shared, + the only combination needs --enable-static is --disable-shared + and --with-static-linked-ext. [ruby-dev:48901] [Bug #10960] + - ext/fiddle/extconf.rb: make PIC objects if it will be linked as + a shared object eventually. [ruby-core:67128] + - spec/default.mspec: use default configuration file name. + https://github.com/ruby/rubyspec/commit/cc69f337b06362e5607ffa3e3ad40ef7494960cf + - spec/default.mspec: remove specific version number. + https://github.com/ruby/rubyspec/commit/7a909e925c1baa9c700bd44af9241aef6e596714 + - common.mk: use ruby organization for rubyspec. + For all the changes see /usr/share/doc/packages/ruby2.2/ChangeLog + +------------------------------------------------------------------- +Wed Mar 11 19:51:48 UTC 2015 - [email protected] + +- while merging the changes with the 2.1 package i noticed 2 + problems: + - we still rewrote the she bang lines to ruby 2.1. + - the macro files weren't marked as config. + +------------------------------------------------------------------- +Wed Mar 11 19:32:05 UTC 2015 - [email protected] + +- Remove the support to have the shared files from ruby-common + intree again. + +------------------------------------------------------------------- +Wed Mar 11 17:25:54 UTC 2015 - [email protected] + +- update to 2.2.1 + This release includes the fix for ffi build failure and memory + leak issue on Symbol GC (See Bug #10686). + + For more details see /usr/share/doc/packages/ruby2.2/ChangeLog +- match the version number in the rubygems provides to what is + actually shipped with ruby 2.2 + +------------------------------------------------------------------- +Wed Feb 11 10:55:05 UTC 2015 - [email protected] + +- port make-gem-build-reproducible.patch from ruby 2.1 + +------------------------------------------------------------------- Old: ---- gem_build_cleanup gem_install.sh generate_buildrequires.sh ruby-2.2.0.tar.xz ruby.macros ruby.rpm-macros rubygems.attr rubygemsdeps.rb New: ---- make-gem-build-reproducible.patch ruby-2.2.2.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ruby2.2.spec ++++++ --- /var/tmp/diff_new_pack.OlsDhh/_old 2015-05-07 08:27:39.000000000 +0200 +++ /var/tmp/diff_new_pack.OlsDhh/_new 2015-05-07 08:27:39.000000000 +0200 @@ -16,8 +16,6 @@ # -%bcond_with ruby_intree_common - Name: ruby2.2 #### @@ -27,7 +25,7 @@ #### %define patch_level p0 -Version: 2.2.0 +Version: 2.2.2 Release: 0 # make the exported API version explicit %define api_version 2.2.0 @@ -38,7 +36,7 @@ %define rpm_macros_version 3 # -%define pkg_version 2.2.0 +%define pkg_version 2.2.2 %define libname libruby2_2-2_2 # keep in sync with macro file! %define rb_ver %{api_version} @@ -100,11 +98,6 @@ %if 0%{?suse_version} > 1130 Conflicts: ruby(abi) = %{rb_ver} %endif -%if %{with ruby_intree_common} -Provides: ruby-common = %{rpm_macros_version} -Obsoletes: ruby-common < %{rpm_macros_version} -Provides: ruby-macros = %{rpm_macros_version} -%endif Provides: ruby22 = %{version}-%{release} Requires: %{libname} = %{version} Requires: %{name}-stdlib = %{version} @@ -116,18 +109,10 @@ # Url: http://www.ruby-lang.org/ Source: http://cache.ruby-lang.org/pub/ruby/2.2/ruby-%{version}.tar.xz -# sources from former ruby-common -Source1: gem_build_cleanup -Source2: ruby.macros -Source3: ruby.rpm-macros -Source4: rubygems.attr -Source5: rubygemsdeps.rb -Source6: gem_install.sh -Source7: generate_buildrequires.sh -Source8: generate_rubygemprovides.awk +Source1: generate_rubygemprovides.awk # -Source10: %{name}.macros -Source11: %{name}-default.macros +Source2: %{name}.macros +Source3: %{name}-default.macros Source99: %{name}-rpmlintrc # to be regenerated patches? @@ -135,6 +120,7 @@ Source101: ruby2.2.x_rbinstall_gem_buildroot.patch Patch0: ruby-1.9.2p290_tcl_no_stupid_rpaths.patch +Patch1: make-gem-build-reproducible.patch # Summary: An Interpreted Object-Oriented Scripting Language License: BSD-2-Clause or Ruby @@ -196,8 +182,8 @@ # - the usual means to generate provides for rubygems is using ruby # and ruby is not available while building ruby :-/ -%define gen_embedded_provides4() %(awk -f %{S:8} -- %api_version %arch %1 %2 %3 %4) -%define gen_embedded_provides5() %(awk -f %{S:8} -- %api_version %arch %1 %2 %3 %4 %5) +%define gen_embedded_provides4() %(awk -f %{S:1} -- %api_version %arch %1 %2 %3 %4) +%define gen_embedded_provides5() %(awk -f %{S:1} -- %api_version %arch %1 %2 %3 %4 %5) %gen_embedded_provides4 io-console 0 4 2 %gen_embedded_provides4 json 1 8 1 %gen_embedded_provides4 minitest 4 7 5 @@ -215,7 +201,7 @@ Summary: Development files to link against Ruby Group: Development/Languages/Ruby Requires: %{name} = %{version} -Provides: rubygems = 2.2.2 +Provides: rubygems = 2.4.5 Provides: rubygems_with_buildroot_patch %description devel @@ -312,9 +298,10 @@ %prep %setup -q -n ruby-%{pkg_version} %patch0 +%patch1 -p1 find sample -type f -print0 | xargs -r0 chmod a-x grep -Erl '^#! */' benchmark bootstraptest ext lib sample test \ - | xargs -r perl -p -i -e 's|^#!\s*\S+(\s+.*)?$|#!/usr/bin/ruby2.1$1|' + | xargs -r perl -p -i -e 's|^#!\s*\S+(\s+.*)?$|#!/usr/bin/ruby%{rb_binary_suffix} $1|' %build # iseq.c needs -fno-strict-aliasing @@ -348,22 +335,10 @@ %define rb_binary %{buildroot}/usr/bin/ruby -I %{buildroot}%{rb_libdir} -I %{buildroot}%{rb_archdir} export LD_LIBRARY_PATH=%{buildroot}%{_libdir} -%if %{with ruby_intree_common} -# formerly ruby-common -# we need to make sure it overwrites older macro versions and rpm sorts alphabetically -install -D -m 0644 %{S:2} %{buildroot}/etc/rpm/macros.ruby -install -D -m 0644 %{S:3} %{buildroot}/etc/rpm/macros.suse-ruby -install -D -m 0644 %{S:4} %{buildroot}/usr/lib/rpm/fileattrs/rubygems.attr -install -D -m 0755 %{S:5} %{buildroot}/usr/lib/rpm/rubygemsdeps.rb -install -D -m 0755 %{S:6} %{buildroot}/usr/lib/rpm/gem_install.sh -install -D -m 0755 %{S:1} %{buildroot}/usr/lib/rpm/gem_build_cleanup.sh -install -D -m 0755 %{S:7} %{buildroot}/usr/lib/rpm/generate_buildrequires.sh -%endif - -install -D -m 0644 %{S:10} %{buildroot}/etc/rpm/macros.suse-ruby2.2 +install -D -m 0644 %{S:2} %{buildroot}/etc/rpm/macros.suse-ruby2.2 mkdir -p %{buildroot}%{_sysconfdir}/alternatives %if "%{rb_default_ruby_suffix}" == "%{rb_soname}" - install -D -m 0644 %{S:11} %{buildroot}/etc/rpm/macros.suse-ruby2.2-default + install -D -m 0644 %{S:3} %{buildroot}/etc/rpm/macros.suse-ruby2.2-default for bin in %{buildroot}%{_bindir}/{erb,gem,irb,ruby}%{rb_binary_suffix} ; do # yes really hard links ln $bin ${bin%%%{rb_binary_suffix}} @@ -459,18 +434,7 @@ %{_mandir}/man1/rake*.1* %{_mandir}/man1/ruby*.1* %doc ChangeLog COPYING COPYING.ja GPL KNOWNBUGS.rb LEGAL NEWS README* -/etc/rpm/macros.suse-ruby2.2* -%if %{with ruby_intree_common} -# former ruby-common files -%config(noreplace) /etc/rpm/macros.ruby -%config /etc/rpm/macros.suse-ruby -%dir /usr/lib/rpm/fileattrs -/usr/lib/rpm/fileattrs/rubygems.attr -/usr/lib/rpm/rubygemsdeps.rb -/usr/lib/rpm/gem_install.sh -/usr/lib/rpm/gem_build_cleanup.sh -/usr/lib/rpm/generate_buildrequires.sh -%endif +%config /etc/rpm/macros.suse-ruby2.2* %files -n %{libname} %defattr(-,root,root,-) ++++++ make-gem-build-reproducible.patch ++++++ Index: ruby-2.2.0/lib/rubygems/package.rb =================================================================== --- ruby-2.2.0.orig/lib/rubygems/package.rb +++ ruby-2.2.0/lib/rubygems/package.rb @@ -108,9 +108,12 @@ class Gem::Package def self.build spec, skip_validation=false gem_file = spec.file_name + spec_file = spec.loaded_from + spec_file = "Gemfile" if spec_file.nil? || spec_file.empty? package = new gem_file package.spec = spec + package.build_time = File.stat(spec_file).mtime.to_i package.build skip_validation gem_file @@ -187,6 +190,7 @@ class Gem::Package digests = tar.add_file_signed 'data.tar.gz', 0444, @signer do |io| gzip_to io do |gz_io| Gem::Package::TarWriter.new gz_io do |data_tar| + data_tar.mtime = @build_time add_files data_tar end end Index: ruby-2.2.0/lib/rubygems/package/tar_writer.rb =================================================================== --- ruby-2.2.0.orig/lib/rubygems/package/tar_writer.rb +++ ruby-2.2.0/lib/rubygems/package/tar_writer.rb @@ -90,12 +90,15 @@ class Gem::Package::TarWriter nil end + attr_accessor :mtime + ## # Creates a new TarWriter that will write to +io+ def initialize(io) @io = io @closed = false + @mtime = Time.now end ## @@ -124,7 +127,7 @@ class Gem::Package::TarWriter header = Gem::Package::TarHeader.new :name => name, :mode => mode, :size => size, :prefix => prefix, - :mtime => Time.now + :mtime => mtime @io.write header @io.pos = final_pos @@ -217,7 +220,7 @@ class Gem::Package::TarWriter header = Gem::Package::TarHeader.new(:name => name, :mode => mode, :size => size, :prefix => prefix, - :mtime => Time.now).to_s + :mtime => mtime).to_s @io.write header os = BoundedStream.new @io, size @@ -279,7 +282,7 @@ class Gem::Package::TarWriter header = Gem::Package::TarHeader.new :name => name, :mode => mode, :typeflag => "5", :size => 0, :prefix => prefix, - :mtime => Time.now + :mtime => mtime @io.write header ++++++ ruby-2.2.0.tar.xz -> ruby-2.2.2.tar.xz ++++++ /work/SRC/openSUSE:Factory/ruby2.2/ruby-2.2.0.tar.xz /work/SRC/openSUSE:Factory/.ruby2.2.new/ruby-2.2.2.tar.xz differ: char 26, line 1
