unitsml 0.2.9 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +9 -1
- data/lib/unitsml/error.rb +8 -0
- data/lib/unitsml/errors/plurimath_load_error.rb +19 -0
- data/lib/unitsml/formula.rb +9 -1
- data/lib/unitsml/utility.rb +2 -0
- data/lib/unitsml/version.rb +1 -1
- data/lib/unitsml.rb +1 -0
- data/unitsml.gemspec +2 -8
- metadata +8 -90
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5eec8700e144a7983623483da1e4093d961a717e0344f429ec03687257f1450f
|
4
|
+
data.tar.gz: 40b736d843d780c4b1366b11eb1441cbc53ba611f16507a33482b3f1c702ed7c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b14c95f4aaa4c223138212b82e082e42b5ae5d86689d4186d657f8b97dc9c8553b171c14cf08b386c930dae4ac2532400ecb286b9624a36c8e29a4fb8d8d6c10
|
7
|
+
data.tar.gz: cc1a2a790ae2084763eddda110f3fd7a3425d3cf8ae93c65649b7496e4f6fa6c4a52c856bee4bbc2e436ca09aff9a3ce852316ba7407dffea9949a763b4af0f6
|
data/Gemfile
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Unitsml
|
4
|
+
module Errors
|
5
|
+
class PlurimathLoadError < Unitsml::Error
|
6
|
+
def to_s
|
7
|
+
<<~MESSAGE
|
8
|
+
[unitsml] Error: Failed to require 'plurimath'.
|
9
|
+
[unitsml] Please add 'plurimath' in your gemfile and run 'bundle install'
|
10
|
+
[unitsml] OR
|
11
|
+
[unitsml] run following command to install the gem:
|
12
|
+
[unitsml] gem install plurimath
|
13
|
+
[unitsml] If this is a bug, please report at our official issue tracker:
|
14
|
+
[unitsml] https://github.com/unitsml/unitsml-ruby/issues
|
15
|
+
MESSAGE
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/unitsml/formula.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "plurimath"
|
4
3
|
require_relative "utility"
|
5
4
|
module Unitsml
|
6
5
|
class Formula
|
@@ -68,6 +67,7 @@ module Unitsml
|
|
68
67
|
end
|
69
68
|
|
70
69
|
def to_plurimath
|
70
|
+
ensure_plurimath_defined!
|
71
71
|
return Plurimath::Math.parse(to_asciimath, :asciimath) if @orig_text.match?(/-$/)
|
72
72
|
|
73
73
|
Plurimath::Math.parse(to_mathml, :mathml)
|
@@ -160,5 +160,13 @@ module Unitsml
|
|
160
160
|
Utility.quantity(norm_text, explicit_value&.dig(:quantity)),
|
161
161
|
].join
|
162
162
|
end
|
163
|
+
|
164
|
+
def ensure_plurimath_defined!
|
165
|
+
return if Object.const_defined?(:Plurimath)
|
166
|
+
|
167
|
+
require "plurimath"
|
168
|
+
rescue LoadError => e
|
169
|
+
raise Errors::PlurimathLoadError
|
170
|
+
end
|
163
171
|
end
|
164
172
|
end
|
data/lib/unitsml/utility.rb
CHANGED
data/lib/unitsml/version.rb
CHANGED
data/lib/unitsml.rb
CHANGED
data/unitsml.gemspec
CHANGED
@@ -28,12 +28,6 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.require_paths = ["lib", "unitsdb/**/*.yaml"]
|
29
29
|
|
30
30
|
spec.add_dependency "htmlentities"
|
31
|
-
spec.add_dependency "
|
32
|
-
spec.
|
33
|
-
spec.add_development_dependency "equivalent-xml"
|
34
|
-
spec.add_development_dependency "pry", "~> 0.12.2"
|
35
|
-
spec.add_development_dependency "rake", "~> 12.0"
|
36
|
-
spec.add_development_dependency "rspec", "~> 3.6"
|
37
|
-
spec.add_development_dependency "rubocop", "= 0.54.0"
|
38
|
-
spec.add_development_dependency "simplecov", "~> 0.15"
|
31
|
+
spec.add_dependency "ox"
|
32
|
+
spec.add_dependency "parslet"
|
39
33
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: unitsml
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-02-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: htmlentities
|
@@ -25,27 +25,13 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 0.8.4
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 0.8.4
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: byebug
|
28
|
+
name: ox
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
44
30
|
requirements:
|
45
31
|
- - ">="
|
46
32
|
- !ruby/object:Gem::Version
|
47
33
|
version: '0'
|
48
|
-
type: :
|
34
|
+
type: :runtime
|
49
35
|
prerelease: false
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
51
37
|
requirements:
|
@@ -53,89 +39,19 @@ dependencies:
|
|
53
39
|
- !ruby/object:Gem::Version
|
54
40
|
version: '0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
42
|
+
name: parslet
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
58
44
|
requirements:
|
59
45
|
- - ">="
|
60
46
|
- !ruby/object:Gem::Version
|
61
47
|
version: '0'
|
62
|
-
type: :
|
48
|
+
type: :runtime
|
63
49
|
prerelease: false
|
64
50
|
version_requirements: !ruby/object:Gem::Requirement
|
65
51
|
requirements:
|
66
52
|
- - ">="
|
67
53
|
- !ruby/object:Gem::Version
|
68
54
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: pry
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 0.12.2
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 0.12.2
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: rake
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '12.0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '12.0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: rspec
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '3.6'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '3.6'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: rubocop
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - '='
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: 0.54.0
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - '='
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: 0.54.0
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: simplecov
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - "~>"
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '0.15'
|
132
|
-
type: :development
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - "~>"
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0.15'
|
139
55
|
description: Gem-wrapper for working with unitsdb
|
140
56
|
email:
|
141
57
|
- open.source@ribose.com
|
@@ -158,6 +74,8 @@ files:
|
|
158
74
|
- docs/navigation.adoc
|
159
75
|
- lib/unitsml.rb
|
160
76
|
- lib/unitsml/dimension.rb
|
77
|
+
- lib/unitsml/error.rb
|
78
|
+
- lib/unitsml/errors/plurimath_load_error.rb
|
161
79
|
- lib/unitsml/extender.rb
|
162
80
|
- lib/unitsml/formula.rb
|
163
81
|
- lib/unitsml/parse.rb
|