--- Begin Message ---
Package: src:ruby-json
Version: 2.0.1+dfsg-3
Severity: normal
Tags: patch
Hi,
I noticed ruby-json Java extension was not being built from this
package.
So, since I need that to get JRuby unit tests passing and it should be
useful for real-world users, I added that missing component to this
package.
If there are no objections to my approach (please see the debdiff
below), I was planning to merge this and do an upload to experimental
very soon.
This builds OK in sbuild and I'm using it locally to build and test
recent JRuby releases.
I'm also attaching the build log if anyone is curious about this.
diff -Nru ruby-json-2.0.1+dfsg/debian/changelog
ruby-json-2.0.1+dfsg/debian/changelog
--- ruby-json-2.0.1+dfsg/debian/changelog 2016-12-05 23:33:24.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/changelog 2017-03-13 18:31:15.000000000
+0000
@@ -1,3 +1,10 @@
+ruby-json (2.0.1+dfsg-4) experimental; urgency=medium
+
+ * Team upload.
+ * Build java extension and add new binary package jruby-json for it.
+
+ -- Miguel Landaeta <[email protected]> Mon, 13 Mar 2017 18:31:15 +0000
+
ruby-json (2.0.1+dfsg-3) unstable; urgency=medium
* Add Conflicts: ruby-json-pure (Closes: #847141)
diff -Nru ruby-json-2.0.1+dfsg/debian/control
ruby-json-2.0.1+dfsg/debian/control
--- ruby-json-2.0.1+dfsg/debian/control 2016-12-05 23:33:24.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/control 2017-03-13 11:54:41.000000000 +0000
@@ -6,7 +6,11 @@
Antonio Terceiro <[email protected]>,
Cédric Boutillier <[email protected]>
Build-Depends: debhelper (>= 9~),
+ default-jdk,
gem2deb,
+ git,
+ jruby,
+ locales-all,
ruby-test-unit
Standards-Version: 3.9.8
Vcs-Git: https://anonscm.debian.org/git/pkg-ruby-extras/ruby-json.git
@@ -26,3 +30,19 @@
Ruby, allowing the developer to easily convert data between Ruby and JSON. You
can think of it as a low fat alternative to XML, if you want to store data to
disk or transmit it over a network rather than use a verbose markup language.
+
+Package: jruby-json
+Architecture: all
+Depends: ${misc:Depends},
+ ${shlibs:Depends}
+Enhances: jruby
+Description: JSON library for Ruby - java extension
+ This library implements the JSON (JavaScript Object Notation) specification in
+ Ruby, allowing the developer to easily convert data between Ruby and JSON. You
+ can think of it as a low fat alternative to XML, if you want to store data to
+ disk or transmit it over a network rather than use a verbose markup language.
+ .
+ This package contains an implementation of JSON Ruby specification written in
+ Java and is suitable for use with JRuby interpreter since provides a better
+ performance than the "pure" JSON gem written in Ruby and available in
ruby-json
+ package.
diff -Nru ruby-json-2.0.1+dfsg/debian/jruby-json.docs
ruby-json-2.0.1+dfsg/debian/jruby-json.docs
--- ruby-json-2.0.1+dfsg/debian/jruby-json.docs 1970-01-01 00:00:00.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/jruby-json.docs 2017-03-13 12:11:36.000000000
+0000
@@ -0,0 +1,2 @@
+README-json-jruby.md
+README.md
diff -Nru ruby-json-2.0.1+dfsg/debian/jruby-json.examples
ruby-json-2.0.1+dfsg/debian/jruby-json.examples
--- ruby-json-2.0.1+dfsg/debian/jruby-json.examples 1970-01-01
00:00:00.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/jruby-json.examples 2017-03-13
12:12:42.000000000 +0000
@@ -0,0 +1 @@
+tools/*
diff -Nru ruby-json-2.0.1+dfsg/debian/jruby-json.install
ruby-json-2.0.1+dfsg/debian/jruby-json.install
--- ruby-json-2.0.1+dfsg/debian/jruby-json.install 1970-01-01
00:00:00.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/jruby-json.install 2017-03-12
23:24:37.000000000 +0000
@@ -0,0 +1 @@
+lib/json usr/share/jruby/lib/ruby/stdlib
diff -Nru
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
---
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
2016-12-05 23:33:24.000000000 +0000
+++
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
2017-03-13 12:21:51.000000000 +0000
@@ -4,56 +4,10 @@
This is required so that autopkgtest finds the correct gemspec.
---
- json-java.gemspec | 38 --------------------------------------
json_pure.gemspec | 37 -------------------------------------
- 2 files changed, 75 deletions(-)
- delete mode 100644 json-java.gemspec
+ 1 files changed, 37 deletions(-)
delete mode 100644 json_pure.gemspec
-diff --git a/json-java.gemspec b/json-java.gemspec
-deleted file mode 100644
-index 1524b1f..0000000
---- a/json-java.gemspec
-+++ /dev/null
-@@ -1,38 +0,0 @@
--#!/usr/bin/env jruby
--require "rubygems"
--
--spec = Gem::Specification.new do |s|
-- s.name = "json"
-- s.version = File.read("VERSION").chomp
-- s.summary = "JSON implementation for JRuby"
-- s.description = "A JSON implementation as a JRuby extension."
-- s.author = "Daniel Luz"
-- s.email = "[email protected]"
-- s.homepage = "http://json-jruby.rubyforge.org/"
-- s.platform = 'java'
-- s.rubyforge_project = "json-jruby"
-- s.licenses = ["Ruby"]
--
-- s.files = Dir["{docs,lib,tests}/**/*"]
--
-- if s.respond_to? :specification_version then
-- s.specification_version = 4
--
-- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
-- s.add_development_dependency(%q<rake>, [">= 0"])
-- s.add_development_dependency(%q<test-unit>, ["~> 2.0"])
-- else
-- s.add_dependency(%q<rake>, [">= 0"])
-- s.add_dependency(%q<test-unit>, ["~> 2.0"])
-- end
-- else
-- s.add_dependency(%q<rake>, [">= 0"])
-- s.add_dependency(%q<test-unit>, ["~> 2.0"])
-- end
--end
--
--if $0 == __FILE__
-- Gem::Builder.new(spec).build
--else
-- spec
--end
diff --git a/json_pure.gemspec b/json_pure.gemspec
deleted file mode 100644
index bf7dc79..0000000
diff -Nru
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
---
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
1970-01-01 00:00:00.000000000 +0000
+++
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
2017-03-13 12:18:06.000000000 +0000
@@ -0,0 +1,13 @@
+Description: Disable rubygems usage for dependencies management
+Author: Miguel Landaeta <[email protected]>
+Forwarded: no
+Last-Update: 2017-03-12
+
+--- ruby-json-2.0.1+dfsg.orig/tests/test_helper.rb
++++ ruby-json-2.0.1+dfsg/tests/test_helper.rb
+@@ -1,4 +1,4 @@
+-gem 'json', File.read('VERSION').chomp
++# gem 'json', File.read('VERSION').chomp
+
+ case ENV['JSON']
+ when 'pure'
diff -Nru ruby-json-2.0.1+dfsg/debian/patches/series
ruby-json-2.0.1+dfsg/debian/patches/series
--- ruby-json-2.0.1+dfsg/debian/patches/series 2016-12-05 23:33:24.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/patches/series 2017-03-13 11:05:59.000000000
+0000
@@ -1,3 +1,4 @@
02-fix-fuzz.rb-shebang.patch
04-fix-tests-path.patch
0003-Remove-additional-gemspec-files.patch
+0005-Disable-rubygems-usage-in-tests-helper.patch
diff -Nru ruby-json-2.0.1+dfsg/debian/ruby-tests.rb
ruby-json-2.0.1+dfsg/debian/ruby-tests.rb
--- ruby-json-2.0.1+dfsg/debian/ruby-tests.rb 2016-12-05 23:33:24.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/ruby-tests.rb 2017-03-12 23:23:21.000000000
+0000
@@ -7,3 +7,6 @@
ENV['json'] = 'ext'
puts "Ext version of the tests"
system("#{ENV['RUBY_TEST_BIN']} #{inc} tests/*_test.rb") or raise
+ENV['JSON'] = 'ext'
+puts "Java ext version of the tests"
+system("jruby -S rake test_ext") or raise
diff -Nru ruby-json-2.0.1+dfsg/debian/rules ruby-json-2.0.1+dfsg/debian/rules
--- ruby-json-2.0.1+dfsg/debian/rules 2016-12-05 23:33:24.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/rules 2017-03-13 12:06:58.000000000 +0000
@@ -2,6 +2,21 @@
export DH_RUBY_GEMSPEC=json.gemspec
export GEM2DEB_TEST_RUNNER = --check-dependencies
+export JAVA_HOME = /usr/lib/jvm/default-java
+export LC_ALL = en_US.UTF-8
%:
dh $@ --buildsystem=ruby --with ruby
+
+override_dh_auto_build:
+ jruby -S rake build
+
+override_dh_install:
+ dh_install
+ find ./debian/ruby-json/ -type f -name '*.jar' -delete
+ find ./debian/jruby-json/ -type f -name '.keep' -size 0 -delete
+
+override_dh_auto_clean:
+ dh_auto_clean
+ jruby -S rake clean
+ -rm -r ./pkg/
Cheers,
Miguel.
-- System Information:
Debian Release: 8.7
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 4.0.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=UTF-8 (charmap=UTF-8) (ignored: LC_ALL set
to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
--
Miguel Landaeta, nomadium at debian.org
secure email with PGP 0x6E608B637D8967E9 available at http://miguel.cc/key.
"Faith means not wanting to know what is true." -- Nietzsche
diff -Nru ruby-json-2.0.1+dfsg/debian/changelog
ruby-json-2.0.1+dfsg/debian/changelog
--- ruby-json-2.0.1+dfsg/debian/changelog 2016-12-05 23:33:24.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/changelog 2017-03-13 18:31:15.000000000
+0000
@@ -1,3 +1,10 @@
+ruby-json (2.0.1+dfsg-4) experimental; urgency=medium
+
+ * Team upload.
+ * Build java extension and add new binary package jruby-json for it.
+
+ -- Miguel Landaeta <[email protected]> Mon, 13 Mar 2017 18:31:15 +0000
+
ruby-json (2.0.1+dfsg-3) unstable; urgency=medium
* Add Conflicts: ruby-json-pure (Closes: #847141)
diff -Nru ruby-json-2.0.1+dfsg/debian/control
ruby-json-2.0.1+dfsg/debian/control
--- ruby-json-2.0.1+dfsg/debian/control 2016-12-05 23:33:24.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/control 2017-03-13 11:54:41.000000000 +0000
@@ -6,7 +6,11 @@
Antonio Terceiro <[email protected]>,
Cédric Boutillier <[email protected]>
Build-Depends: debhelper (>= 9~),
+ default-jdk,
gem2deb,
+ git,
+ jruby,
+ locales-all,
ruby-test-unit
Standards-Version: 3.9.8
Vcs-Git: https://anonscm.debian.org/git/pkg-ruby-extras/ruby-json.git
@@ -26,3 +30,19 @@
Ruby, allowing the developer to easily convert data between Ruby and JSON. You
can think of it as a low fat alternative to XML, if you want to store data to
disk or transmit it over a network rather than use a verbose markup language.
+
+Package: jruby-json
+Architecture: all
+Depends: ${misc:Depends},
+ ${shlibs:Depends}
+Enhances: jruby
+Description: JSON library for Ruby - java extension
+ This library implements the JSON (JavaScript Object Notation) specification in
+ Ruby, allowing the developer to easily convert data between Ruby and JSON. You
+ can think of it as a low fat alternative to XML, if you want to store data to
+ disk or transmit it over a network rather than use a verbose markup language.
+ .
+ This package contains an implementation of JSON Ruby specification written in
+ Java and is suitable for use with JRuby interpreter since provides a better
+ performance than the "pure" JSON gem written in Ruby and available in
ruby-json
+ package.
diff -Nru ruby-json-2.0.1+dfsg/debian/jruby-json.docs
ruby-json-2.0.1+dfsg/debian/jruby-json.docs
--- ruby-json-2.0.1+dfsg/debian/jruby-json.docs 1970-01-01 00:00:00.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/jruby-json.docs 2017-03-13 12:11:36.000000000
+0000
@@ -0,0 +1,2 @@
+README-json-jruby.md
+README.md
diff -Nru ruby-json-2.0.1+dfsg/debian/jruby-json.examples
ruby-json-2.0.1+dfsg/debian/jruby-json.examples
--- ruby-json-2.0.1+dfsg/debian/jruby-json.examples 1970-01-01
00:00:00.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/jruby-json.examples 2017-03-13
12:12:42.000000000 +0000
@@ -0,0 +1 @@
+tools/*
diff -Nru ruby-json-2.0.1+dfsg/debian/jruby-json.install
ruby-json-2.0.1+dfsg/debian/jruby-json.install
--- ruby-json-2.0.1+dfsg/debian/jruby-json.install 1970-01-01
00:00:00.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/jruby-json.install 2017-03-12
23:24:37.000000000 +0000
@@ -0,0 +1 @@
+lib/json usr/share/jruby/lib/ruby/stdlib
diff -Nru
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
---
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
2016-12-05 23:33:24.000000000 +0000
+++
ruby-json-2.0.1+dfsg/debian/patches/0003-Remove-additional-gemspec-files.patch
2017-03-13 12:21:51.000000000 +0000
@@ -4,56 +4,10 @@
This is required so that autopkgtest finds the correct gemspec.
---
- json-java.gemspec | 38 --------------------------------------
json_pure.gemspec | 37 -------------------------------------
- 2 files changed, 75 deletions(-)
- delete mode 100644 json-java.gemspec
+ 1 files changed, 37 deletions(-)
delete mode 100644 json_pure.gemspec
-diff --git a/json-java.gemspec b/json-java.gemspec
-deleted file mode 100644
-index 1524b1f..0000000
---- a/json-java.gemspec
-+++ /dev/null
-@@ -1,38 +0,0 @@
--#!/usr/bin/env jruby
--require "rubygems"
--
--spec = Gem::Specification.new do |s|
-- s.name = "json"
-- s.version = File.read("VERSION").chomp
-- s.summary = "JSON implementation for JRuby"
-- s.description = "A JSON implementation as a JRuby extension."
-- s.author = "Daniel Luz"
-- s.email = "[email protected]"
-- s.homepage = "http://json-jruby.rubyforge.org/"
-- s.platform = 'java'
-- s.rubyforge_project = "json-jruby"
-- s.licenses = ["Ruby"]
--
-- s.files = Dir["{docs,lib,tests}/**/*"]
--
-- if s.respond_to? :specification_version then
-- s.specification_version = 4
--
-- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
-- s.add_development_dependency(%q<rake>, [">= 0"])
-- s.add_development_dependency(%q<test-unit>, ["~> 2.0"])
-- else
-- s.add_dependency(%q<rake>, [">= 0"])
-- s.add_dependency(%q<test-unit>, ["~> 2.0"])
-- end
-- else
-- s.add_dependency(%q<rake>, [">= 0"])
-- s.add_dependency(%q<test-unit>, ["~> 2.0"])
-- end
--end
--
--if $0 == __FILE__
-- Gem::Builder.new(spec).build
--else
-- spec
--end
diff --git a/json_pure.gemspec b/json_pure.gemspec
deleted file mode 100644
index bf7dc79..0000000
diff -Nru
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
---
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
1970-01-01 00:00:00.000000000 +0000
+++
ruby-json-2.0.1+dfsg/debian/patches/0005-Disable-rubygems-usage-in-tests-helper.patch
2017-03-13 12:18:06.000000000 +0000
@@ -0,0 +1,13 @@
+Description: Disable rubygems usage for dependencies management
+Author: Miguel Landaeta <[email protected]>
+Forwarded: no
+Last-Update: 2017-03-12
+
+--- ruby-json-2.0.1+dfsg.orig/tests/test_helper.rb
++++ ruby-json-2.0.1+dfsg/tests/test_helper.rb
+@@ -1,4 +1,4 @@
+-gem 'json', File.read('VERSION').chomp
++# gem 'json', File.read('VERSION').chomp
+
+ case ENV['JSON']
+ when 'pure'
diff -Nru ruby-json-2.0.1+dfsg/debian/patches/series
ruby-json-2.0.1+dfsg/debian/patches/series
--- ruby-json-2.0.1+dfsg/debian/patches/series 2016-12-05 23:33:24.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/patches/series 2017-03-13 11:05:59.000000000
+0000
@@ -1,3 +1,4 @@
02-fix-fuzz.rb-shebang.patch
04-fix-tests-path.patch
0003-Remove-additional-gemspec-files.patch
+0005-Disable-rubygems-usage-in-tests-helper.patch
diff -Nru ruby-json-2.0.1+dfsg/debian/ruby-tests.rb
ruby-json-2.0.1+dfsg/debian/ruby-tests.rb
--- ruby-json-2.0.1+dfsg/debian/ruby-tests.rb 2016-12-05 23:33:24.000000000
+0000
+++ ruby-json-2.0.1+dfsg/debian/ruby-tests.rb 2017-03-12 23:23:21.000000000
+0000
@@ -7,3 +7,6 @@
ENV['json'] = 'ext'
puts "Ext version of the tests"
system("#{ENV['RUBY_TEST_BIN']} #{inc} tests/*_test.rb") or raise
+ENV['JSON'] = 'ext'
+puts "Java ext version of the tests"
+system("jruby -S rake test_ext") or raise
diff -Nru ruby-json-2.0.1+dfsg/debian/rules ruby-json-2.0.1+dfsg/debian/rules
--- ruby-json-2.0.1+dfsg/debian/rules 2016-12-05 23:33:24.000000000 +0000
+++ ruby-json-2.0.1+dfsg/debian/rules 2017-03-13 12:06:58.000000000 +0000
@@ -2,6 +2,21 @@
export DH_RUBY_GEMSPEC=json.gemspec
export GEM2DEB_TEST_RUNNER = --check-dependencies
+export JAVA_HOME = /usr/lib/jvm/default-java
+export LC_ALL = en_US.UTF-8
%:
dh $@ --buildsystem=ruby --with ruby
+
+override_dh_auto_build:
+ jruby -S rake build
+
+override_dh_install:
+ dh_install
+ find ./debian/ruby-json/ -type f -name '*.jar' -delete
+ find ./debian/jruby-json/ -type f -name '.keep' -size 0 -delete
+
+override_dh_auto_clean:
+ dh_auto_clean
+ jruby -S rake clean
+ -rm -r ./pkg/
ruby-json_2.0.1+dfsg-4_amd64.build.gz
Description: application/gzip
signature.asc
Description: Digital signature
--- End Message ---