diff options
Diffstat (limited to 'libre/ruby/remove-nonfree-json-references.patch')
-rw-r--r-- | libre/ruby/remove-nonfree-json-references.patch | 238 |
1 files changed, 238 insertions, 0 deletions
diff --git a/libre/ruby/remove-nonfree-json-references.patch b/libre/ruby/remove-nonfree-json-references.patch new file mode 100644 index 000000000..4fb5dd1e2 --- /dev/null +++ b/libre/ruby/remove-nonfree-json-references.patch @@ -0,0 +1,238 @@ +diff -Nur json-1.8.1.orig/Rakefile json-1.8.1/Rakefile +--- json-1.8.1.orig/Rakefile 2013-10-17 09:53:47.000000000 -0200 ++++ json-1.8.1/Rakefile 2015-04-14 15:33:02.055063119 -0300 +@@ -14,8 +14,7 @@ + require 'rake/clean' + CLOBBER.include 'doc', 'Gemfile.lock' + CLEAN.include FileList['diagrams/*.*'], 'doc', 'coverage', 'tmp', +- FileList["ext/**/{Makefile,mkmf.log}"], 'build', 'dist', FileList['**/*.rbc'], +- FileList["{ext,lib}/**/*.{so,bundle,#{CONFIG['DLEXT']},o,obj,pdb,lib,manifest,exp,def,jar,class,dSYM}"], ++ FileList["lib/**/*.{bundle,pdb,lib,manifest,exp,def,jar,class,dSYM}"], + FileList['java/src/**/*.class'] + + require 'rake/testtask' +@@ -34,15 +33,6 @@ + PKG_VERSION = File.read('VERSION').chomp + PKG_FILES = FileList[`git ls-files`.split(/\n/)] + +-EXT_ROOT_DIR = 'ext/json/ext' +-EXT_PARSER_DIR = "#{EXT_ROOT_DIR}/parser" +-EXT_PARSER_DL = "#{EXT_PARSER_DIR}/parser.#{CONFIG['DLEXT']}" +-RAGEL_PATH = "#{EXT_PARSER_DIR}/parser.rl" +-EXT_PARSER_SRC = "#{EXT_PARSER_DIR}/parser.c" +-EXT_GENERATOR_DIR = "#{EXT_ROOT_DIR}/generator" +-EXT_GENERATOR_DL = "#{EXT_GENERATOR_DIR}/generator.#{CONFIG['DLEXT']}" +-EXT_GENERATOR_SRC = "#{EXT_GENERATOR_DIR}/generator.c" +- + JAVA_DIR = "java/src/json/ext" + JAVA_RAGEL_PATH = "#{JAVA_DIR}/Parser.rl" + JAVA_PARSER_SRC = "#{JAVA_DIR}/Parser.java" +@@ -59,20 +49,8 @@ + ruby 'install.rb' + end + +-task :install_ext_really do +- sitearchdir = CONFIG["sitearchdir"] +- cd 'ext' do +- for file in Dir["json/ext/*.#{CONFIG['DLEXT']}"] +- d = File.join(sitearchdir, file) +- mkdir_p File.dirname(d) +- install(file, d) +- end +- warn " *** Installed EXT ruby library." +- end +-end +- + desc "Installing library (extension)" +-task :install_ext => [ :compile, :install_pure, :install_ext_really ] ++task :install_ext => [ :compile, :install_pure ] + + desc "Installing library (extension)" + task :install => :install_ext +@@ -118,12 +96,10 @@ + s.name = 'json' + s.version = PKG_VERSION + s.summary = PKG_TITLE +- s.description = "This is a JSON implementation as a Ruby extension in C." ++ s.description = "This is a JSON implementation in pure Ruby." + + s.files = PKG_FILES + +- s.extensions = FileList['ext/**/extconf.rb'] +- + s.require_path = 'lib' + s.add_development_dependency 'permutation' + s.add_development_dependency 'sdoc', '~>0.3.16' +@@ -312,96 +288,21 @@ + task :release => :build + else + desc "Compiling extension" +- task :compile => [ EXT_PARSER_DL, EXT_GENERATOR_DL ] +- +- file EXT_PARSER_DL => EXT_PARSER_SRC do +- cd EXT_PARSER_DIR do +- ruby 'extconf.rb' +- sh MAKE +- end +- cp "#{EXT_PARSER_DIR}/parser.#{CONFIG['DLEXT']}", EXT_ROOT_DIR +- end +- +- file EXT_GENERATOR_DL => EXT_GENERATOR_SRC do +- cd EXT_GENERATOR_DIR do +- ruby 'extconf.rb' +- sh MAKE +- end +- cp "#{EXT_GENERATOR_DIR}/generator.#{CONFIG['DLEXT']}", EXT_ROOT_DIR +- end ++ task :compile + + desc "Testing library (extension)" +- task :test_ext => [ :compile, :do_test_ext ] +- +- UndocumentedTestTask.new do |t| +- t.name = 'do_test_ext' +- t.libs << 'ext' << 'lib' +- t.test_files = FileList['tests/test_*.rb'] +- t.verbose = true +- t.options = '-v' +- end ++ task :test_ext => :test_pure + + desc "Create RDOC documentation" +- task :doc => [ :version, EXT_PARSER_SRC ] do +- sh "sdoc -o doc -t '#{PKG_TITLE}' -m README.rdoc README.rdoc lib/json.rb #{FileList['lib/json/**/*.rb']} #{EXT_PARSER_SRC} #{EXT_GENERATOR_SRC}" +- end +- +- desc "Generate parser with ragel" +- task :ragel => EXT_PARSER_SRC +- +- desc "Delete the ragel generated C source" +- task :ragel_clean do +- rm_rf EXT_PARSER_SRC ++ task :doc => :version do ++ sh "sdoc -o doc -t '#{PKG_TITLE}' -m README.rdoc README.rdoc lib/json.rb #{FileList['lib/json/**/*.rb']}" + end + + desc "Update the tags file" + task :tags do +- system 'ctags', *Dir['**/*.{rb,c,h,java}'] +- end +- +- file EXT_PARSER_SRC => RAGEL_PATH do +- cd EXT_PARSER_DIR do +- if RAGEL_CODEGEN == 'ragel' +- sh "ragel parser.rl -G2 -o parser.c" +- else +- sh "ragel -x parser.rl | #{RAGEL_CODEGEN} -G2" +- end +- src = File.read("parser.c").gsub(/[ \t]+$/, '') +- File.open("parser.c", "w") {|f| f.print src} +- end +- end +- +- desc "Generate diagrams of ragel parser (ps)" +- task :ragel_dot_ps do +- root = 'diagrams' +- specs = [] +- File.new(RAGEL_PATH).grep(/^\s*machine\s*(\S+);\s*$/) { specs << $1 } +- for s in specs +- if RAGEL_DOTGEN == 'ragel' +- sh "ragel #{RAGEL_PATH} -S#{s} -p -V | dot -Tps -o#{root}/#{s}.ps" +- else +- sh "ragel -x #{RAGEL_PATH} -S#{s} | #{RAGEL_DOTGEN} -p|dot -Tps -o#{root}/#{s}.ps" +- end +- end +- end +- +- desc "Generate diagrams of ragel parser (png)" +- task :ragel_dot_png do +- root = 'diagrams' +- specs = [] +- File.new(RAGEL_PATH).grep(/^\s*machine\s*(\S+);\s*$/) { specs << $1 } +- for s in specs +- if RAGEL_DOTGEN == 'ragel' +- sh "ragel #{RAGEL_PATH} -S#{s} -p -V | dot -Tpng -o#{root}/#{s}.png" +- else +- sh "ragel -x #{RAGEL_PATH} -S#{s} | #{RAGEL_DOTGEN} -p|dot -Tpng -o#{root}/#{s}.png" +- end +- end ++ system 'ctags', *Dir['**/*.{rb,java}'] + end + +- desc "Generate diagrams of ragel parser" +- task :ragel_dot => [ :ragel_dot_png, :ragel_dot_ps ] +- + desc "Build all gems and archives for a new release of json and json_pure." + task :build => [ :clean, :gemspec, :package ] + +diff -Nur json-1.8.1.orig/json.gemspec json-1.8.1/json.gemspec +--- json-1.8.1.orig/json.gemspec 2013-10-17 09:53:47.000000000 -0200 ++++ json-1.8.1/json.gemspec 2015-04-14 15:33:02.055063119 -0300 +@@ -8,11 +8,10 @@ + s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= + s.authors = ["Florian Frank"] + s.date = "2013-10-17" +- s.description = "This is a JSON implementation as a Ruby extension in C." ++ s.description = "This is a JSON implementation in pure Ruby." + s.email = "flori@ping.de" +- s.extensions = ["ext/json/ext/generator/extconf.rb", "ext/json/ext/parser/extconf.rb"] + s.extra_rdoc_files = ["README.rdoc"] +- s.files = [".gitignore", ".travis.yml", "CHANGES", "COPYING", "COPYING-json-jruby", "GPL", "Gemfile", "README-json-jruby.markdown", "README.rdoc", "Rakefile", "TODO", "VERSION", "data/example.json", "data/index.html", "data/prototype.js", "diagrams/.keep", "ext/json/ext/fbuffer/fbuffer.h", "ext/json/ext/generator/depend", "ext/json/ext/generator/extconf.rb", "ext/json/ext/generator/generator.c", "ext/json/ext/generator/generator.h", "ext/json/ext/parser/depend", "ext/json/ext/parser/extconf.rb", "ext/json/ext/parser/parser.c", "ext/json/ext/parser/parser.h", "ext/json/ext/parser/parser.rl", "install.rb", "java/src/json/ext/ByteListTranscoder.java", "java/src/json/ext/Generator.java", "java/src/json/ext/GeneratorMethods.java", "java/src/json/ext/GeneratorService.java", "java/src/json/ext/GeneratorState.java", "java/src/json/ext/OptionsReader.java", "java/src/json/ext/Parser.java", "java/src/json/ext/Parser.rl", "java/src/json/ext/ParserService.java", "java/src/json/ext/RuntimeInfo.java", "java/src/json/ext/StringDecoder.java", "java/src/json/ext/StringEncoder.java", "java/src/json/ext/Utils.java", "json-java.gemspec", "json.gemspec", "json_pure.gemspec", "lib/json.rb", "lib/json/add/bigdecimal.rb", "lib/json/add/complex.rb", "lib/json/add/core.rb", "lib/json/add/date.rb", "lib/json/add/date_time.rb", "lib/json/add/exception.rb", "lib/json/add/ostruct.rb", "lib/json/add/range.rb", "lib/json/add/rational.rb", "lib/json/add/regexp.rb", "lib/json/add/struct.rb", "lib/json/add/symbol.rb", "lib/json/add/time.rb", "lib/json/common.rb", "lib/json/ext.rb", "lib/json/ext/.keep", "lib/json/generic_object.rb", "lib/json/pure.rb", "lib/json/pure/generator.rb", "lib/json/pure/parser.rb", "lib/json/version.rb", "tests/fixtures/fail1.json", "tests/fixtures/fail10.json", "tests/fixtures/fail11.json", "tests/fixtures/fail12.json", "tests/fixtures/fail13.json", "tests/fixtures/fail14.json", "tests/fixtures/fail18.json", "tests/fixtures/fail19.json", "tests/fixtures/fail2.json", "tests/fixtures/fail20.json", "tests/fixtures/fail21.json", "tests/fixtures/fail22.json", "tests/fixtures/fail23.json", "tests/fixtures/fail24.json", "tests/fixtures/fail25.json", "tests/fixtures/fail27.json", "tests/fixtures/fail28.json", "tests/fixtures/fail3.json", "tests/fixtures/fail4.json", "tests/fixtures/fail5.json", "tests/fixtures/fail6.json", "tests/fixtures/fail7.json", "tests/fixtures/fail8.json", "tests/fixtures/fail9.json", "tests/fixtures/pass1.json", "tests/fixtures/pass15.json", "tests/fixtures/pass16.json", "tests/fixtures/pass17.json", "tests/fixtures/pass2.json", "tests/fixtures/pass26.json", "tests/fixtures/pass3.json", "tests/setup_variant.rb", "tests/test_json.rb", "tests/test_json_addition.rb", "tests/test_json_encoding.rb", "tests/test_json_fixtures.rb", "tests/test_json_generate.rb", "tests/test_json_generic_object.rb", "tests/test_json_string_matching.rb", "tests/test_json_unicode.rb", "tools/fuzz.rb", "tools/server.rb", "./tests/test_json.rb", "./tests/test_json_addition.rb", "./tests/test_json_encoding.rb", "./tests/test_json_fixtures.rb", "./tests/test_json_generate.rb", "./tests/test_json_generic_object.rb", "./tests/test_json_string_matching.rb", "./tests/test_json_unicode.rb"] ++ s.files = [".gitignore", ".travis.yml", "CHANGES", "COPYING", "COPYING-json-jruby", "GPL", "Gemfile", "README-json-jruby.markdown", "README.rdoc", "Rakefile", "TODO", "VERSION", "data/example.json", "data/index.html", "data/prototype.js", "diagrams/.keep", "install.rb", "java/src/json/ext/ByteListTranscoder.java", "java/src/json/ext/Generator.java", "java/src/json/ext/GeneratorMethods.java", "java/src/json/ext/GeneratorService.java", "java/src/json/ext/GeneratorState.java", "java/src/json/ext/OptionsReader.java", "java/src/json/ext/Parser.java", "java/src/json/ext/Parser.rl", "java/src/json/ext/ParserService.java", "java/src/json/ext/RuntimeInfo.java", "java/src/json/ext/StringDecoder.java", "java/src/json/ext/StringEncoder.java", "java/src/json/ext/Utils.java", "json-java.gemspec", "json.gemspec", "json_pure.gemspec", "lib/json.rb", "lib/json/add/bigdecimal.rb", "lib/json/add/complex.rb", "lib/json/add/core.rb", "lib/json/add/date.rb", "lib/json/add/date_time.rb", "lib/json/add/exception.rb", "lib/json/add/ostruct.rb", "lib/json/add/range.rb", "lib/json/add/rational.rb", "lib/json/add/regexp.rb", "lib/json/add/struct.rb", "lib/json/add/symbol.rb", "lib/json/add/time.rb", "lib/json/common.rb", "lib/json/ext.rb", "lib/json/ext/.keep", "lib/json/generic_object.rb", "lib/json/pure.rb", "lib/json/pure/generator.rb", "lib/json/pure/parser.rb", "lib/json/version.rb", "tests/fixtures/fail1.json", "tests/fixtures/fail10.json", "tests/fixtures/fail11.json", "tests/fixtures/fail12.json", "tests/fixtures/fail13.json", "tests/fixtures/fail14.json", "tests/fixtures/fail18.json", "tests/fixtures/fail19.json", "tests/fixtures/fail2.json", "tests/fixtures/fail20.json", "tests/fixtures/fail21.json", "tests/fixtures/fail22.json", "tests/fixtures/fail23.json", "tests/fixtures/fail24.json", "tests/fixtures/fail25.json", "tests/fixtures/fail27.json", "tests/fixtures/fail28.json", "tests/fixtures/fail3.json", "tests/fixtures/fail4.json", "tests/fixtures/fail5.json", "tests/fixtures/fail6.json", "tests/fixtures/fail7.json", "tests/fixtures/fail8.json", "tests/fixtures/fail9.json", "tests/fixtures/pass1.json", "tests/fixtures/pass15.json", "tests/fixtures/pass16.json", "tests/fixtures/pass17.json", "tests/fixtures/pass2.json", "tests/fixtures/pass26.json", "tests/fixtures/pass3.json", "tests/setup_variant.rb", "tests/test_json.rb", "tests/test_json_addition.rb", "tests/test_json_encoding.rb", "tests/test_json_fixtures.rb", "tests/test_json_generate.rb", "tests/test_json_generic_object.rb", "tests/test_json_string_matching.rb", "tests/test_json_unicode.rb", "tools/fuzz.rb", "tools/server.rb", "./tests/test_json.rb", "./tests/test_json_addition.rb", "./tests/test_json_encoding.rb", "./tests/test_json_fixtures.rb", "./tests/test_json_generate.rb", "./tests/test_json_generic_object.rb", "./tests/test_json_string_matching.rb", "./tests/test_json_unicode.rb"] + s.homepage = "http://flori.github.com/json" + s.licenses = ["Ruby"] + s.rdoc_options = ["--title", "JSON implemention for Ruby", "--main", "README.rdoc"] +diff -Nur json-1.8.1.orig/json_pure.gemspec json-1.8.1/json_pure.gemspec +--- json-1.8.1.orig/json_pure.gemspec 2013-10-17 09:53:47.000000000 -0200 ++++ json-1.8.1/json_pure.gemspec 2015-04-14 15:33:02.055063119 -0300 +@@ -11,7 +11,7 @@ + s.description = "This is a JSON implementation in pure Ruby." + s.email = "flori@ping.de" + s.extra_rdoc_files = ["README.rdoc"] +- s.files = [".gitignore", ".travis.yml", "CHANGES", "COPYING", "COPYING-json-jruby", "GPL", "Gemfile", "README-json-jruby.markdown", "README.rdoc", "Rakefile", "TODO", "VERSION", "data/example.json", "data/index.html", "data/prototype.js", "diagrams/.keep", "ext/json/ext/fbuffer/fbuffer.h", "ext/json/ext/generator/depend", "ext/json/ext/generator/extconf.rb", "ext/json/ext/generator/generator.c", "ext/json/ext/generator/generator.h", "ext/json/ext/parser/depend", "ext/json/ext/parser/extconf.rb", "ext/json/ext/parser/parser.c", "ext/json/ext/parser/parser.h", "ext/json/ext/parser/parser.rl", "install.rb", "java/src/json/ext/ByteListTranscoder.java", "java/src/json/ext/Generator.java", "java/src/json/ext/GeneratorMethods.java", "java/src/json/ext/GeneratorService.java", "java/src/json/ext/GeneratorState.java", "java/src/json/ext/OptionsReader.java", "java/src/json/ext/Parser.java", "java/src/json/ext/Parser.rl", "java/src/json/ext/ParserService.java", "java/src/json/ext/RuntimeInfo.java", "java/src/json/ext/StringDecoder.java", "java/src/json/ext/StringEncoder.java", "java/src/json/ext/Utils.java", "json-java.gemspec", "json.gemspec", "json_pure.gemspec", "lib/json.rb", "lib/json/add/bigdecimal.rb", "lib/json/add/complex.rb", "lib/json/add/core.rb", "lib/json/add/date.rb", "lib/json/add/date_time.rb", "lib/json/add/exception.rb", "lib/json/add/ostruct.rb", "lib/json/add/range.rb", "lib/json/add/rational.rb", "lib/json/add/regexp.rb", "lib/json/add/struct.rb", "lib/json/add/symbol.rb", "lib/json/add/time.rb", "lib/json/common.rb", "lib/json/ext.rb", "lib/json/ext/.keep", "lib/json/generic_object.rb", "lib/json/pure.rb", "lib/json/pure/generator.rb", "lib/json/pure/parser.rb", "lib/json/version.rb", "tests/fixtures/fail1.json", "tests/fixtures/fail10.json", "tests/fixtures/fail11.json", "tests/fixtures/fail12.json", "tests/fixtures/fail13.json", "tests/fixtures/fail14.json", "tests/fixtures/fail18.json", "tests/fixtures/fail19.json", "tests/fixtures/fail2.json", "tests/fixtures/fail20.json", "tests/fixtures/fail21.json", "tests/fixtures/fail22.json", "tests/fixtures/fail23.json", "tests/fixtures/fail24.json", "tests/fixtures/fail25.json", "tests/fixtures/fail27.json", "tests/fixtures/fail28.json", "tests/fixtures/fail3.json", "tests/fixtures/fail4.json", "tests/fixtures/fail5.json", "tests/fixtures/fail6.json", "tests/fixtures/fail7.json", "tests/fixtures/fail8.json", "tests/fixtures/fail9.json", "tests/fixtures/pass1.json", "tests/fixtures/pass15.json", "tests/fixtures/pass16.json", "tests/fixtures/pass17.json", "tests/fixtures/pass2.json", "tests/fixtures/pass26.json", "tests/fixtures/pass3.json", "tests/setup_variant.rb", "tests/test_json.rb", "tests/test_json_addition.rb", "tests/test_json_encoding.rb", "tests/test_json_fixtures.rb", "tests/test_json_generate.rb", "tests/test_json_generic_object.rb", "tests/test_json_string_matching.rb", "tests/test_json_unicode.rb", "tools/fuzz.rb", "tools/server.rb", "./tests/test_json.rb", "./tests/test_json_addition.rb", "./tests/test_json_encoding.rb", "./tests/test_json_fixtures.rb", "./tests/test_json_generate.rb", "./tests/test_json_generic_object.rb", "./tests/test_json_string_matching.rb", "./tests/test_json_unicode.rb"] ++ s.files = [".gitignore", ".travis.yml", "CHANGES", "COPYING", "COPYING-json-jruby", "GPL", "Gemfile", "README-json-jruby.markdown", "README.rdoc", "Rakefile", "TODO", "VERSION", "data/example.json", "data/index.html", "data/prototype.js", "diagrams/.keep", "install.rb", "java/src/json/ext/ByteListTranscoder.java", "java/src/json/ext/Generator.java", "java/src/json/ext/GeneratorMethods.java", "java/src/json/ext/GeneratorService.java", "java/src/json/ext/GeneratorState.java", "java/src/json/ext/OptionsReader.java", "java/src/json/ext/Parser.java", "java/src/json/ext/Parser.rl", "java/src/json/ext/ParserService.java", "java/src/json/ext/RuntimeInfo.java", "java/src/json/ext/StringDecoder.java", "java/src/json/ext/StringEncoder.java", "java/src/json/ext/Utils.java", "json-java.gemspec", "json.gemspec", "json_pure.gemspec", "lib/json.rb", "lib/json/add/bigdecimal.rb", "lib/json/add/complex.rb", "lib/json/add/core.rb", "lib/json/add/date.rb", "lib/json/add/date_time.rb", "lib/json/add/exception.rb", "lib/json/add/ostruct.rb", "lib/json/add/range.rb", "lib/json/add/rational.rb", "lib/json/add/regexp.rb", "lib/json/add/struct.rb", "lib/json/add/symbol.rb", "lib/json/add/time.rb", "lib/json/common.rb", "lib/json/ext.rb", "lib/json/ext/.keep", "lib/json/generic_object.rb", "lib/json/pure.rb", "lib/json/pure/generator.rb", "lib/json/pure/parser.rb", "lib/json/version.rb", "tests/fixtures/fail1.json", "tests/fixtures/fail10.json", "tests/fixtures/fail11.json", "tests/fixtures/fail12.json", "tests/fixtures/fail13.json", "tests/fixtures/fail14.json", "tests/fixtures/fail18.json", "tests/fixtures/fail19.json", "tests/fixtures/fail2.json", "tests/fixtures/fail20.json", "tests/fixtures/fail21.json", "tests/fixtures/fail22.json", "tests/fixtures/fail23.json", "tests/fixtures/fail24.json", "tests/fixtures/fail25.json", "tests/fixtures/fail27.json", "tests/fixtures/fail28.json", "tests/fixtures/fail3.json", "tests/fixtures/fail4.json", "tests/fixtures/fail5.json", "tests/fixtures/fail6.json", "tests/fixtures/fail7.json", "tests/fixtures/fail8.json", "tests/fixtures/fail9.json", "tests/fixtures/pass1.json", "tests/fixtures/pass15.json", "tests/fixtures/pass16.json", "tests/fixtures/pass17.json", "tests/fixtures/pass2.json", "tests/fixtures/pass26.json", "tests/fixtures/pass3.json", "tests/setup_variant.rb", "tests/test_json.rb", "tests/test_json_addition.rb", "tests/test_json_encoding.rb", "tests/test_json_fixtures.rb", "tests/test_json_generate.rb", "tests/test_json_generic_object.rb", "tests/test_json_string_matching.rb", "tests/test_json_unicode.rb", "tools/fuzz.rb", "tools/server.rb", "./tests/test_json.rb", "./tests/test_json_addition.rb", "./tests/test_json_encoding.rb", "./tests/test_json_fixtures.rb", "./tests/test_json_generate.rb", "./tests/test_json_generic_object.rb", "./tests/test_json_string_matching.rb", "./tests/test_json_unicode.rb"] + s.homepage = "http://flori.github.com/json" + s.licenses = ["Ruby"] + s.rdoc_options = ["--title", "JSON implemention for ruby", "--main", "README.rdoc"] +diff -Nur json-1.8.1.orig/lib/json/ext.rb json-1.8.1/lib/json/ext.rb +--- json-1.8.1.orig/lib/json/ext.rb 2013-10-17 09:53:47.000000000 -0200 ++++ json-1.8.1/lib/json/ext.rb 2015-04-14 15:33:02.055063119 -0300 +@@ -5,16 +5,18 @@ + end + end + require 'json/common' ++require 'json/pure/parser' ++require 'json/pure/generator' + + module JSON + # This module holds all the modules/classes that implement JSON's +- # functionality as C extensions. ++ # functionality in pure ruby. ++ Ext = Pure ++ + module Ext +- require 'json/ext/parser' +- require 'json/ext/generator' +- $DEBUG and warn "Using Ext extension for JSON." +- JSON.parser = Parser +- JSON.generator = Generator ++ $DEBUG and warn "Using Pure library for JSON." ++ JSON.parser = Pure::Parser ++ JSON.generator = Pure::Generator + end + + JSON_LOADED = true unless defined?(::JSON::JSON_LOADED) +diff -Nur json-1.8.1.orig/lib/json.rb json-1.8.1/lib/json.rb +--- json-1.8.1.orig/lib/json.rb 2013-10-17 09:53:47.000000000 -0200 ++++ json-1.8.1/lib/json.rb 2015-04-14 15:33:02.055063119 -0300 +@@ -54,9 +54,5 @@ + module JSON + require 'json/version' + +- begin +- require 'json/ext' +- rescue LoadError +- require 'json/pure' +- end ++ require 'json/pure' + end |