aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rubygems
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems')
-rw-r--r--lib/rubygems/specification.rb44
-rw-r--r--lib/rubygems/version.rb2
2 files changed, 24 insertions, 22 deletions
diff --git a/lib/rubygems/specification.rb b/lib/rubygems/specification.rb
index e98f3284cd..f4e609a5eb 100644
--- a/lib/rubygems/specification.rb
+++ b/lib/rubygems/specification.rb
@@ -241,6 +241,28 @@ class Gem::Specification < Gem::BasicSpecification
attr_reader :summary
##
+ # Singular writer for #authors
+ #
+ # Usage:
+ #
+ # spec.author = 'John Jones'
+
+ def author= o
+ self.authors = [o]
+ end
+
+ ##
+ # Sets the list of authors, ensuring it is an array.
+ #
+ # Usage:
+ #
+ # spec.authors = ['John Jones', 'Mary Smith']
+
+ def authors= value
+ @authors = Array(value).flatten.grep(String)
+ end
+
+ ##
# The platform this gem runs on.
#
# This is usually Gem::Platform::RUBY or Gem::Platform::CURRENT.
@@ -443,28 +465,6 @@ class Gem::Specification < Gem::BasicSpecification
end
##
- # Singular writer for #authors
- #
- # Usage:
- #
- # spec.author = 'John Jones'
-
- def author= o
- self.authors = [o]
- end
-
- ##
- # Sets the list of authors, ensuring it is an array.
- #
- # Usage:
- #
- # spec.authors = ['John Jones', 'Mary Smith']
-
- def authors= value
- @authors = Array(value).flatten.grep(String)
- end
-
- ##
# Executables included in the gem.
#
# For example, the rake gem has rake as an executable. You don’t specify the
diff --git a/lib/rubygems/version.rb b/lib/rubygems/version.rb
index 28b2e09701..20663326ef 100644
--- a/lib/rubygems/version.rb
+++ b/lib/rubygems/version.rb
@@ -189,6 +189,8 @@ class Gem::Version
@@all = {}
def self.new version # :nodoc:
+ return super unless Gem::VERSION == self.class
+
@@all[version] ||= super
end