saxon-rb 0.7.2-java → 0.8.3-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +1203 -51
- data/.rspec-jar-loading +2 -0
- data/.ruby-version +1 -1
- data/README.md +1 -1
- data/Rakefile +13 -5
- data/lib/net/sf/saxon/Saxon-HE/{9.9.1-6/Saxon-HE-9.9.1-6.jar → 9.9.1-7/Saxon-HE-9.9.1-7.jar} +0 -0
- data/lib/saxon-rb.rb +1 -0
- data/lib/saxon-rb_jars.rb +2 -2
- data/lib/saxon/feature_flags/version.rb +1 -4
- data/lib/saxon/jruby_bug_6197_workaround.rb +5 -0
- data/lib/saxon/loader.rb +56 -43
- data/lib/saxon/s9api.rb +17 -17
- data/lib/saxon/version.rb +2 -2
- data/lib/saxon/version/library.rb +3 -3
- data/lib/saxon/xdm/atomic_value.rb +13 -8
- data/saxon-rb.gemspec +1 -1
- metadata +17 -15
data/.rspec-jar-loading
ADDED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
jruby-9.2.
|
1
|
+
jruby-9.2.13.0
|
data/README.md
CHANGED
@@ -15,7 +15,7 @@ Parameter creation and passing, are richer and more expressive; results from
|
|
15
15
|
XSLT, or XPath, that aren't just result trees can be worked with directly in
|
16
16
|
Ruby.
|
17
17
|
|
18
|
-
[![Gem Version](https://badge.fury.io/rb/saxon.svg)](http://badge.fury.io/rb/saxon)
|
18
|
+
[![Gem Version](https://badge.fury.io/rb/saxon-rb.svg)](http://badge.fury.io/rb/saxon-rb)
|
19
19
|
[![Code Climate](https://codeclimate.com/github/fidothe/saxon-rb/badges/gpa.svg)](https://codeclimate.com/github/fidothe/saxon-rb)
|
20
20
|
[![Test Coverage](https://codeclimate.com/github/fidothe/saxon-rb/badges/coverage.svg)](https://codeclimate.com/github/fidothe/saxon-rb/coverage)
|
21
21
|
[![CircleCI](https://circleci.com/gh/fidothe/saxon-rb.svg?style=svg)](https://circleci.com/gh/fidothe/saxon-rb)
|
data/Rakefile
CHANGED
@@ -25,7 +25,7 @@ task :circleci do
|
|
25
25
|
end
|
26
26
|
end
|
27
27
|
def jruby_image_tags
|
28
|
-
%w{9.2.9.0 9.1.17.0 9.2.10.0-SNAPSHOT-latest}
|
28
|
+
%w{9.2.9.0 9.1.17.0 9.2.10.0 9.2.11.1 9.2.12.0 9.2.13.0-SNAPSHOT-latest}
|
29
29
|
end
|
30
30
|
|
31
31
|
def jdk_image_tags
|
@@ -38,7 +38,8 @@ task :circleci do
|
|
38
38
|
|
39
39
|
def alt_saxon_urls
|
40
40
|
{
|
41
|
-
"https://sourceforge.net/projects/saxon/files/Saxon-HE/9.8/SaxonHE9-8-0-15J.zip" => "
|
41
|
+
"https://sourceforge.net/projects/saxon/files/Saxon-HE/9.8/SaxonHE9-8-0-15J.zip" => "saxon-he-9.8",
|
42
|
+
"https://sourceforge.net/projects/saxon/files/Saxon-HE/10/Java/SaxonHE10-2J.zip" => "saxon-he-10.2"
|
42
43
|
}
|
43
44
|
end
|
44
45
|
|
@@ -51,7 +52,7 @@ task :circleci do
|
|
51
52
|
|
52
53
|
def codeclimate_jobs
|
53
54
|
(alt_saxon_urls.keys << nil).map { |alt_saxon_url|
|
54
|
-
["9.2.
|
55
|
+
["9.2.12.0", "8-jdk-slim", alt_saxon_url]
|
55
56
|
}
|
56
57
|
end
|
57
58
|
|
@@ -190,12 +191,19 @@ task :circleci do
|
|
190
191
|
def run_tests_step(opts)
|
191
192
|
command = [
|
192
193
|
"mkdir -p /tmp/test-results",
|
193
|
-
"bundle exec rspec spec --profile 10 --format RspecJunitFormatter --out /tmp/test-results/rspec.xml
|
194
|
+
"VERIFY_SAXON_LAZY_LOADING=1 bundle exec rspec spec/jar_loading_spec.rb --options .rspec-jar-loading --profile 10 --format RspecJunitFormatter --out /tmp/test-results/rspec-jar-loading.xml"
|
194
195
|
]
|
196
|
+
cc_suffix = opts.fetch(:alt_saxon_url) ? "-alt-#{alt_saxon_urls[opts.fetch(:alt_saxon_url)]}" : ''
|
195
197
|
if opts.fetch(:run_codeclimate)
|
196
198
|
command.prepend("./cc-test-reporter before-build")
|
197
|
-
command.append("if [ $? -eq 0 ]; then ./cc-test-reporter format-coverage -t simplecov -o \"cc-coverage#{
|
199
|
+
command.append("if [ $? -eq 0 ]; then ./cc-test-reporter format-coverage -t simplecov -o \"cc-coverage-jar-loading#{cc_suffix}.json\"; fi")
|
198
200
|
end
|
201
|
+
command.append("rm -rf coverage")
|
202
|
+
command.append("bundle exec rspec spec --profile 10 --format RspecJunitFormatter --out /tmp/test-results/rspec.xml --format progress")
|
203
|
+
if opts.fetch(:run_codeclimate)
|
204
|
+
command.append("if [ $? -eq 0 ]; then ./cc-test-reporter format-coverage -t simplecov -o \"cc-coverage-main#{cc_suffix}.json\"; fi")
|
205
|
+
end
|
206
|
+
|
199
207
|
{
|
200
208
|
"run" => {
|
201
209
|
"name" => "Run the tests" + (opts.fetch(:run_codeclimate) ? ", and upload coverage data to Code Climate" : ""),
|
data/lib/net/sf/saxon/Saxon-HE/{9.9.1-6/Saxon-HE-9.9.1-6.jar → 9.9.1-7/Saxon-HE-9.9.1-7.jar}
RENAMED
Binary file
|
data/lib/saxon-rb.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
require 'saxon'
|
data/lib/saxon-rb_jars.rb
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
begin
|
3
3
|
require 'jar_dependencies'
|
4
4
|
rescue LoadError
|
5
|
-
require 'net/sf/saxon/Saxon-HE/9.9.1-
|
5
|
+
require 'net/sf/saxon/Saxon-HE/9.9.1-7/Saxon-HE-9.9.1-7.jar'
|
6
6
|
end
|
7
7
|
|
8
8
|
if defined? Jars
|
9
|
-
require_jar 'net.sf.saxon', 'Saxon-HE', '9.9.1-
|
9
|
+
require_jar 'net.sf.saxon', 'Saxon-HE', '9.9.1-7'
|
10
10
|
end
|
@@ -72,10 +72,7 @@ module Saxon
|
|
72
72
|
#
|
73
73
|
# @return [Saxon::Version::Library] the constraint version
|
74
74
|
def constraint_version
|
75
|
-
@constraint_version ||=
|
76
|
-
components = version_string.split('.').map { |n| Integer(n, 10) }
|
77
|
-
Saxon::Version::Library.new(version_string, components, 'HE')
|
78
|
-
end
|
75
|
+
@constraint_version ||= Saxon::Version::Library.new(version_string, 'HE')
|
79
76
|
end
|
80
77
|
|
81
78
|
private
|
data/lib/saxon/loader.rb
CHANGED
@@ -38,60 +38,73 @@ module Saxon
|
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
LOAD_SEMAPHORE.synchronize do
|
48
|
-
if Saxon::S9API.const_defined?(:Processor)
|
41
|
+
class << self
|
42
|
+
# Are the Saxon jars missing from the Classpath?
|
43
|
+
# @return [Boolean] true if the Jars are not on the Classpath
|
44
|
+
def jars_not_on_classpath?
|
45
|
+
begin
|
46
|
+
Java::net.sf.saxon.s9api.Processor
|
49
47
|
false
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
48
|
+
rescue
|
49
|
+
true
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
# Are the Saxon JARs on the Classpath?
|
54
|
+
# @return [Boolean] whether the Jars are on the Classpath already
|
55
|
+
def jars_on_classpath?
|
56
|
+
!jars_not_on_classpath?
|
57
|
+
end
|
58
|
+
|
59
|
+
# @param saxon_home [String, Pathname] the path to the dir containing
|
60
|
+
# Saxon's .jars. Defaults to the vendored Saxon HE
|
61
|
+
# @return [true, false] Returns true if Saxon had not been loaded and
|
62
|
+
# is now, and false if Saxon was already loaded
|
63
|
+
def load!(saxon_home = nil)
|
64
|
+
return false if instance_variable_defined?(:@saxon_loaded) && @saxon_loaded
|
65
|
+
LOAD_SEMAPHORE.synchronize do
|
66
|
+
if Saxon::S9API.const_defined?(:Processor)
|
67
|
+
false
|
68
|
+
else
|
69
|
+
if jars_not_on_classpath?
|
70
|
+
if saxon_home.nil?
|
71
|
+
require 'saxon-rb_jars'
|
72
|
+
else
|
73
|
+
saxon_home = Pathname.new(saxon_home)
|
74
|
+
raise NoJarsError, saxon_home unless saxon_home.directory?
|
75
|
+
jars = [main_jar(saxon_home)].compact
|
76
|
+
raise MissingJarError if jars.empty?
|
77
|
+
jars += extra_jars(saxon_home)
|
60
78
|
|
61
|
-
|
79
|
+
add_jars_to_classpath!(saxon_home, jars)
|
80
|
+
end
|
62
81
|
end
|
63
|
-
end
|
64
82
|
|
65
|
-
|
66
|
-
|
83
|
+
require_relative 'jruby_bug_6197_workaround'
|
84
|
+
@saxon_loaded = true
|
85
|
+
true
|
86
|
+
end
|
67
87
|
end
|
68
88
|
end
|
69
|
-
end
|
70
89
|
|
71
|
-
|
72
|
-
|
73
|
-
def self.main_jar(path)
|
74
|
-
['saxon9he.jar', 'saxon9pe.jar', 'saxon9ee.jar'].map { |jar| path.join(jar) }.find { |jar| jar.file? }
|
75
|
-
end
|
90
|
+
private
|
76
91
|
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
92
|
+
def main_jar(path)
|
93
|
+
path.children.find { |jar|
|
94
|
+
!jar.basename.to_s.match(/^saxon(?:9[hpe]e\.jar|-[hpe]e-10\.[0-9]+\.jar)$/).nil?
|
95
|
+
}
|
96
|
+
end
|
82
97
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
rescue
|
88
|
-
true
|
98
|
+
def extra_jars(path)
|
99
|
+
optional = ['saxon9-unpack.jar', 'saxon9-sql.jar'].map { |jar| path.join(jar) }.select { |jar| jar.file? }
|
100
|
+
icu = path.children.find { |jar| jar.extname == '.jar' && !jar.basename.to_s.match(/^saxon-icu|^icu4j/).nil? }
|
101
|
+
([icu] + optional).compact
|
89
102
|
end
|
90
|
-
end
|
91
103
|
|
92
|
-
|
93
|
-
|
94
|
-
|
104
|
+
def add_jars_to_classpath!(saxon_home, jars)
|
105
|
+
jars.each do |jar|
|
106
|
+
$CLASSPATH << jar.to_s
|
107
|
+
end
|
95
108
|
end
|
96
109
|
end
|
97
110
|
end
|
data/lib/saxon/s9api.rb
CHANGED
@@ -11,28 +11,28 @@ module Saxon
|
|
11
11
|
# alternate location for them, if they don't want to use the bundled Saxon
|
12
12
|
# HE
|
13
13
|
def const_missing(name)
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
14
|
+
CLASS_IMPORT_SEMAPHORE.synchronize {
|
15
|
+
return const_get(name) if const_defined?(name)
|
16
|
+
Saxon::Loader.load!
|
17
|
+
begin
|
18
|
+
const_set(name, imported_classes.const_get(name))
|
19
|
+
rescue NameError
|
20
|
+
msg = "uninitialized constant Saxon::S9API::#{name}"
|
21
|
+
e = NameError.new(msg, name)
|
22
|
+
raise e
|
23
|
+
end
|
24
|
+
}
|
22
25
|
end
|
23
26
|
|
24
27
|
private
|
25
28
|
|
26
29
|
def imported_classes
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
java_import Java::net.sf.saxon.lib.ParseOptions
|
34
|
-
}
|
35
|
-
end
|
30
|
+
@imported_classes ||= Module.new {
|
31
|
+
include_package 'net.sf.saxon.s9api'
|
32
|
+
java_import Java::net.sf.saxon.Configuration
|
33
|
+
java_import Java::net.sf.saxon.lib.FeatureKeys
|
34
|
+
java_import Java::net.sf.saxon.lib.ParseOptions
|
35
|
+
}
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
data/lib/saxon/version.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
require 'saxon/
|
1
|
+
require 'saxon/version/library'
|
2
2
|
|
3
3
|
module Saxon
|
4
4
|
# Provides the saxon-rb and underlying Saxon library versions
|
5
5
|
module Version
|
6
6
|
# The version of the saxon-rb gem (not of Saxon itself)
|
7
|
-
WRAPPER = "0.
|
7
|
+
WRAPPER = "0.8.3"
|
8
8
|
end
|
9
9
|
end
|
@@ -12,7 +12,7 @@ module Saxon
|
|
12
12
|
Saxon::Loader.load!
|
13
13
|
|
14
14
|
sv = Java::net.sf.saxon.Version
|
15
|
-
new(sv.getProductVersion, sv.
|
15
|
+
new(sv.getProductVersion, sv.softwareEdition)
|
16
16
|
end
|
17
17
|
|
18
18
|
include Comparable
|
@@ -27,9 +27,9 @@ module Saxon
|
|
27
27
|
# @param version [String] the version string
|
28
28
|
# @param components [Array<Integer>] the version components separated
|
29
29
|
# @param edition [String, Symbol] the name of the Saxon edition (e.g. +:he+, +'HE'+)
|
30
|
-
def initialize(version,
|
30
|
+
def initialize(version, edition)
|
31
31
|
@version = version.dup.freeze
|
32
|
-
@components =
|
32
|
+
@components = version.split('.').map { |n| Integer(n, 10) }
|
33
33
|
@edition = edition.downcase.to_sym
|
34
34
|
end
|
35
35
|
|
@@ -36,12 +36,17 @@ module Saxon
|
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
39
|
-
# ItemType representing QNames
|
40
|
-
XS_QNAME = ItemType.get_type('xs:QName')
|
41
|
-
# ItemType representing NOTATION
|
42
|
-
XS_NOTATION = ItemType.get_type('xs:NOTATION')
|
43
|
-
|
44
39
|
class << self
|
40
|
+
# ItemType representing QNames
|
41
|
+
def xs_qname
|
42
|
+
@xs_qname ||= ItemType.get_type('xs:QName')
|
43
|
+
end
|
44
|
+
|
45
|
+
# ItemType representing NOTATION
|
46
|
+
def xs_notation
|
47
|
+
@xs_notation ||= ItemType.get_type('xs:NOTATION')
|
48
|
+
end
|
49
|
+
|
45
50
|
# Convert a single Ruby value into an XDM::AtomicValue
|
46
51
|
#
|
47
52
|
# If no explicit {ItemType} is passed, the correct type is guessed based
|
@@ -71,8 +76,8 @@ module Saxon
|
|
71
76
|
|
72
77
|
item_type = ItemType.get_type(item_type)
|
73
78
|
|
74
|
-
return new(Saxon::S9API::XdmAtomicValue.new(value.to_java)) if item_type ==
|
75
|
-
raise NotationCannotBeDirectlyCreated if item_type ==
|
79
|
+
return new(Saxon::S9API::XdmAtomicValue.new(value.to_java)) if item_type == xs_qname && value_is_qname?(value)
|
80
|
+
raise NotationCannotBeDirectlyCreated if item_type == xs_notation
|
76
81
|
|
77
82
|
value_lexical_string = item_type.lexical_string(value)
|
78
83
|
new(new_s9_xdm_atomic_value(value_lexical_string, item_type))
|
@@ -91,7 +96,7 @@ module Saxon
|
|
91
96
|
# @return [Saxon::XDM::AtomicValue]
|
92
97
|
def from_lexical_string(value, item_type)
|
93
98
|
item_type = ItemType.get_type(item_type)
|
94
|
-
raise CannotCreateQNameFromString if item_type ==
|
99
|
+
raise CannotCreateQNameFromString if item_type == xs_qname
|
95
100
|
new(new_s9_xdm_atomic_value(value.to_s, item_type))
|
96
101
|
end
|
97
102
|
|
data/saxon-rb.gemspec
CHANGED
@@ -24,7 +24,7 @@ It aims to provide an idiomatic Ruby wrapper around all of Saxon's features.}
|
|
24
24
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
25
25
|
spec.require_paths = ['lib']
|
26
26
|
|
27
|
-
spec.requirements << 'jar net.sf.saxon, Saxon-HE, 9.9.1-
|
27
|
+
spec.requirements << 'jar net.sf.saxon, Saxon-HE, 9.9.1-7'
|
28
28
|
|
29
29
|
spec.add_development_dependency 'bundler', '~> 2.0'
|
30
30
|
spec.add_development_dependency 'jar-dependencies'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: saxon-rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.3
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Matt Patterson
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -17,8 +17,8 @@ dependencies:
|
|
17
17
|
- !ruby/object:Gem::Version
|
18
18
|
version: '2.0'
|
19
19
|
name: bundler
|
20
|
-
prerelease: false
|
21
20
|
type: :development
|
21
|
+
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
@@ -31,8 +31,8 @@ dependencies:
|
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '0'
|
33
33
|
name: jar-dependencies
|
34
|
-
prerelease: false
|
35
34
|
type: :development
|
35
|
+
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
@@ -45,8 +45,8 @@ dependencies:
|
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: '12.0'
|
47
47
|
name: rake
|
48
|
-
prerelease: false
|
49
48
|
type: :development
|
49
|
+
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
@@ -59,8 +59,8 @@ dependencies:
|
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '3.0'
|
61
61
|
name: rspec
|
62
|
-
prerelease: false
|
63
62
|
type: :development
|
63
|
+
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
@@ -73,8 +73,8 @@ dependencies:
|
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '4.0'
|
75
75
|
name: vcr
|
76
|
-
prerelease: false
|
77
76
|
type: :development
|
77
|
+
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
@@ -87,8 +87,8 @@ dependencies:
|
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: 2.4.0
|
89
89
|
name: addressable
|
90
|
-
prerelease: false
|
91
90
|
type: :development
|
91
|
+
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
@@ -101,8 +101,8 @@ dependencies:
|
|
101
101
|
- !ruby/object:Gem::Version
|
102
102
|
version: 2.3.2
|
103
103
|
name: webmock
|
104
|
-
prerelease: false
|
105
104
|
type: :development
|
105
|
+
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
@@ -115,8 +115,8 @@ dependencies:
|
|
115
115
|
- !ruby/object:Gem::Version
|
116
116
|
version: 0.9.12
|
117
117
|
name: yard
|
118
|
-
prerelease: false
|
119
118
|
type: :development
|
119
|
+
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
@@ -129,8 +129,8 @@ dependencies:
|
|
129
129
|
- !ruby/object:Gem::Version
|
130
130
|
version: 0.17.1
|
131
131
|
name: simplecov
|
132
|
-
prerelease: false
|
133
132
|
type: :development
|
133
|
+
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
@@ -143,8 +143,8 @@ dependencies:
|
|
143
143
|
- !ruby/object:Gem::Version
|
144
144
|
version: '0'
|
145
145
|
name: rspec_junit_formatter
|
146
|
-
prerelease: false
|
147
146
|
type: :development
|
147
|
+
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - ">="
|
@@ -163,6 +163,7 @@ files:
|
|
163
163
|
- ".circleci/config.yml"
|
164
164
|
- ".gitignore"
|
165
165
|
- ".rspec"
|
166
|
+
- ".rspec-jar-loading"
|
166
167
|
- ".ruby-version"
|
167
168
|
- ".yardopts"
|
168
169
|
- CODE_OF_CONDUCT.md
|
@@ -173,7 +174,7 @@ files:
|
|
173
174
|
- bin/console
|
174
175
|
- bin/setup
|
175
176
|
- docs/templates/plugin.rb
|
176
|
-
- lib/net/sf/saxon/Saxon-HE/9.9.1-
|
177
|
+
- lib/net/sf/saxon/Saxon-HE/9.9.1-7/Saxon-HE-9.9.1-7.jar
|
177
178
|
- lib/saxon-rb.rb
|
178
179
|
- lib/saxon-rb_jars.rb
|
179
180
|
- lib/saxon.rb
|
@@ -188,6 +189,7 @@ files:
|
|
188
189
|
- lib/saxon/item_type/lexical_string_conversion.rb
|
189
190
|
- lib/saxon/item_type/value_to_ruby.rb
|
190
191
|
- lib/saxon/jaxp.rb
|
192
|
+
- lib/saxon/jruby_bug_6197_workaround.rb
|
191
193
|
- lib/saxon/loader.rb
|
192
194
|
- lib/saxon/nokogiri.rb
|
193
195
|
- lib/saxon/occurrence_indicator.rb
|
@@ -244,8 +246,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
244
246
|
- !ruby/object:Gem::Version
|
245
247
|
version: '0'
|
246
248
|
requirements:
|
247
|
-
- jar net.sf.saxon, Saxon-HE, 9.9.1-
|
248
|
-
rubygems_version: 3.
|
249
|
+
- jar net.sf.saxon, Saxon-HE, 9.9.1-7
|
250
|
+
rubygems_version: 3.0.6
|
249
251
|
signing_key:
|
250
252
|
specification_version: 4
|
251
253
|
summary: Saxon 9.9 for JRuby, with an idiomatic Ruby API
|