aboutsummaryrefslogtreecommitdiffstats
path: root/test/rubygems/test_gem_specification.rb
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2019-12-05 19:03:20 +0100
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2021-07-27 09:25:56 +0900
commit88e46cf6b83e2ca701cf122756fef9bc2550e845 (patch)
tree7ae3b612120e82cf36d78ce691bd8c7463a31bc7 /test/rubygems/test_gem_specification.rb
parent6bcedabfdde74a21b8e1c93ec639afbb9698474b (diff)
downloadruby-88e46cf6b83e2ca701cf122756fef9bc2550e845.tar.gz
[rubygems/rubygems] Remove all `syck` traces from `rubygems`
After reading [this blog post](https://blog.rubygems.org/2011/08/31/shaving-the-yaml-yak.html), published almost 10 years ago already, my understanding is that this problem could come up in two ways: * Rubygems.org serving corrupted gemspecs". As far as I understand this was fixed in rubygems.org a lot time ago, since https://github.com/rubygems/rubygems.org/pull/331. * Clients having a ten years old gemspec cache with some of these bad gemspecs. In this case, there's no easy solution but I think ten years is enough and rebuilding the cache should do the trick. So, I think it's time we remove this. https://github.com/rubygems/rubygems/commit/afcb15d556
Diffstat (limited to 'test/rubygems/test_gem_specification.rb')
-rw-r--r--test/rubygems/test_gem_specification.rb164
1 files changed, 0 insertions, 164 deletions
diff --git a/test/rubygems/test_gem_specification.rb b/test/rubygems/test_gem_specification.rb
index 20509c8f3d..88afa3faa0 100644
--- a/test/rubygems/test_gem_specification.rb
+++ b/test/rubygems/test_gem_specification.rb
@@ -107,8 +107,6 @@ end
end
@current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
-
- load 'rubygems/syck_hack.rb'
end
def test_self_find_active_stub_by_path
@@ -747,125 +745,6 @@ end
spec.specification_version
end
- def test_self_from_yaml_syck_date_bug
- # This is equivalent to (and totally valid) psych 1.0 output and
- # causes parse errors on syck.
- yaml = @a1.to_yaml
- yaml.sub!(/^date:.*/, "date: 2011-04-26 00:00:00.000000000Z")
-
- spec = with_syck do
- Gem::Specification.from_yaml yaml
- end
-
- assert_kind_of Time, @a1.date
- assert_kind_of Time, spec.date
- end
-
- def test_self_from_yaml_syck_default_key_bug
- # This is equivalent to (and totally valid) psych 1.0 output and
- # causes parse errors on syck.
- yaml = <<-YAML
---- !ruby/object:Gem::Specification
-name: posix-spawn
-version: !ruby/object:Gem::Version
- version: 0.3.6
- prerelease:
-dependencies:
-- !ruby/object:Gem::Dependency
- name: rake-compiler
- requirement: &70243867725240 !ruby/object:Gem::Requirement
- none: false
- requirements:
- - - =
- - !ruby/object:Gem::Version
- version: 0.7.6
- type: :development
- prerelease: false
- version_requirements: *70243867725240
-platform: ruby
-files: []
-test_files: []
-bindir:
- YAML
-
- spec = with_syck do
- Gem::Specification.from_yaml yaml
- end
-
- op = spec.dependencies.first.requirement.requirements.first.first
- refute_kind_of YAML::Syck::DefaultKey, op
-
- refute_match %r{DefaultKey}, spec.to_ruby
- end
-
- def test_self_from_yaml_cleans_up_defaultkey
- yaml = <<-YAML
---- !ruby/object:Gem::Specification
-name: posix-spawn
-version: !ruby/object:Gem::Version
- version: 0.3.6
- prerelease:
-dependencies:
-- !ruby/object:Gem::Dependency
- name: rake-compiler
- requirement: &70243867725240 !ruby/object:Gem::Requirement
- none: false
- requirements:
- - - !ruby/object:YAML::Syck::DefaultKey {}
-
- - !ruby/object:Gem::Version
- version: 0.7.6
- type: :development
- prerelease: false
- version_requirements: *70243867725240
-platform: ruby
-files: []
-test_files: []
-bindir:
- YAML
-
- spec = Gem::Specification.from_yaml yaml
-
- op = spec.dependencies.first.requirement.requirements.first.first
- refute_kind_of YAML::Syck::DefaultKey, op
-
- refute_match %r{DefaultKey}, spec.to_ruby
- end
-
- def test_self_from_yaml_cleans_up_defaultkey_from_newer_192
- yaml = <<-YAML
---- !ruby/object:Gem::Specification
-name: posix-spawn
-version: !ruby/object:Gem::Version
- version: 0.3.6
- prerelease:
-dependencies:
-- !ruby/object:Gem::Dependency
- name: rake-compiler
- requirement: &70243867725240 !ruby/object:Gem::Requirement
- none: false
- requirements:
- - - !ruby/object:Syck::DefaultKey {}
-
- - !ruby/object:Gem::Version
- version: 0.7.6
- type: :development
- prerelease: false
- version_requirements: *70243867725240
-platform: ruby
-files: []
-test_files: []
-bindir:
- YAML
-
- spec = Gem::Specification.from_yaml yaml
-
- op = spec.dependencies.first.requirement.requirements.first.first
- refute_kind_of YAML::Syck::DefaultKey, op
-
- refute_match %r{DefaultKey}, spec.to_ruby
- end
-
def test_self_from_yaml_cleans_up_Date_objects
yaml = <<-YAML
--- !ruby/object:Gem::Specification
@@ -3860,49 +3739,6 @@ end
end
end
- def with_syck
- begin
- verbose, $VERBOSE = $VERBOSE, nil
- require "yaml"
- old_engine = YAML::ENGINE.yamler
- YAML::ENGINE.yamler = 'syck'
- load 'rubygems/syck_hack.rb'
- rescue NameError
- # probably on 1.8, ignore
- ensure
- $VERBOSE = verbose
- end
-
- yield
- ensure
- begin
- YAML::ENGINE.yamler = old_engine
- load 'rubygems/syck_hack.rb'
- rescue NameError
- # ignore
- end
- end
-
- def with_psych
- begin
- require "yaml"
- old_engine = YAML::ENGINE.yamler
- YAML::ENGINE.yamler = 'psych'
- load 'rubygems/syck_hack.rb'
- rescue NameError
- # probably on 1.8, ignore
- end
-
- yield
- ensure
- begin
- YAML::ENGINE.yamler = old_engine
- load 'rubygems/syck_hack.rb'
- rescue NameError
- # ignore
- end
- end
-
def silence_warnings
old_verbose, $VERBOSE = $VERBOSE, false
yield