[#33640] [Ruby 1.9-Bug#4136][Open] Enumerable#reject should not inherit the receiver's instance variables — Hiro Asari <redmine@...>

Bug #4136: Enumerable#reject should not inherit the receiver's instance variables

10 messages 2010/12/08

[#33667] [Ruby 1.9-Bug#4149][Open] Documentation submission: syslog standard library — mathew murphy <redmine@...>

Bug #4149: Documentation submission: syslog standard library

11 messages 2010/12/10

[#33683] [feature:trunk] Enumerable#categorize — Tanaka Akira <akr@...>

Hi.

14 messages 2010/12/12
[#33684] Re: [feature:trunk] Enumerable#categorize — "Martin J. Dst" <duerst@...> 2010/12/12

[#33687] Towards a standardized AST for Ruby code — Magnus Holm <judofyr@...>

Hey folks,

23 messages 2010/12/12
[#33688] Re: Towards a standardized AST for Ruby code — Charles Oliver Nutter <headius@...> 2010/12/12

On Sun, Dec 12, 2010 at 9:55 AM, Magnus Holm <judofyr@gmail.com> wrote:

[#33689] Re: Towards a standardized AST for Ruby code — "Haase, Konstantin" <Konstantin.Haase@...> 2010/12/12

On Dec 12, 2010, at 17:46 , Charles Oliver Nutter wrote:

[#33763] [Ruby 1.9-Bug#4168][Open] WeakRef is unsafe to use in Ruby 1.9 — Brian Durand <redmine@...>

Bug #4168: WeakRef is unsafe to use in Ruby 1.9

43 messages 2010/12/17

[#33815] trunk warnflags build issue with curb 0.7.9? — Jon <jon.forums@...>

As this may turn out to be a 3rd party issue rather than a bug, I'd like some feedback.

11 messages 2010/12/22

[#33833] Ruby 1.9.2 is going to be released — "Yuki Sonoda (Yugui)" <yugui@...>

-----BEGIN PGP SIGNED MESSAGE-----

15 messages 2010/12/23

[#33846] [Ruby 1.9-Feature#4197][Open] Improvement of the benchmark library — Benoit Daloze <redmine@...>

Feature #4197: Improvement of the benchmark library

15 messages 2010/12/23

[#33910] [Ruby 1.9-Feature#4211][Open] Converting the Ruby and C API documentation to YARD syntax — Loren Segal <redmine@...>

Feature #4211: Converting the Ruby and C API documentation to YARD syntax

10 messages 2010/12/26

[#33923] [Ruby 1.9-Bug#4214][Open] Fiddle::WINDOWS == false on Windows — Jon Forums <redmine@...>

Bug #4214: Fiddle::WINDOWS == false on Windows

15 messages 2010/12/27

[ruby-core:33746] Re: [Ruby 1.9-Bug#4163][Assigned] RubyGems uses deprecated API: YAML.quick_emit.

From: Aaron Patterson <aaron@...>
Date: 2010-12-16 02:14:45 UTC
List: ruby-core #33746
On Thu, Dec 16, 2010 at 04:46:33AM +0900, Yui NARUSE wrote:
> Bug #4163: RubyGems uses deprecated API: YAML.quick_emit.
> http://redmine.ruby-lang.org/issues/show/4163
> 
> Author: Yui NARUSE
> Status: Assigned, Priority: Normal
> Assigned to: Eric Hodel, Category: lib, Target version: 1.9.3
> ruby -v: ruby 1.9.3dev (2010-12-15 trunk 30218) [x86_64-freebsd8.1]
> 
> RubyGems::Specification#to_yaml uses depcrecated API: YAML.quick_emit,
> and it show many warnings on make test-all.
> /usr/home/chkbuild/build/ruby-trunk/<buildtime>/ruby/lib/rubygems/specification.rb:706:in `to_yaml': YAML.quick_emit is deprecated

The following patch eliminates the deprecated calls and is backwards compatible
with Ruby 1.8.  I will submit a patch against the Rubygems repository
and bug tracker.

diff --git a/lib/rubygems/builder.rb b/lib/rubygems/builder.rb
index 2bcd4b0..ff6d922 100644
--- a/lib/rubygems/builder.rb
+++ b/lib/rubygems/builder.rb
@@ -20,6 +20,11 @@ class Gem::Builder
   # spec:: [Gem::Specification] The specification instance
 
   def initialize(spec)
+    begin
+      require 'psych'
+    rescue LoadError
+    end
+
     require "yaml"
     require "rubygems/package"
     require "rubygems/security"
@@ -72,7 +77,8 @@ EOM
   def write_package
     open @spec.file_name, 'wb' do |gem_io|
       Gem::Package.open gem_io, 'w', @signer do |pkg|
-        pkg.metadata = @spec.to_yaml
+        yaml = defined?(Psych) ? Psych.dump(@spec) : YAML.dump(@spec)
+        pkg.metadata = yaml
 
         @spec.files.each do |file|
           next if File.directory? file

-- 
Aaron Patterson
http://tenderlovemaking.com/

In This Thread