relaton-index 0.2.15 → 0.2.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/relaton/index/file_io.rb +24 -16
- data/lib/relaton/index/version.rb +1 -1
- data/relaton-index.gemspec +1 -1
- metadata +5 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 788bf4331c7923b1671faeb8b9655aab2caaa856dcf5f6fb6b9a95a930c9376c
|
|
4
|
+
data.tar.gz: 6d6e14df3e79b577e04e654579cdb4fb1c2dfdbe458763de1aabc28ca1d3af84
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f1b8d3dfe3686f754cf65a592daaa6ac475f6370aa0473da8eb77d48f9d53fc6694d0a71cad06a0fe3657829e2fd29d5928ecbaf5bd333547148b8066cb8bbfa
|
|
7
|
+
data.tar.gz: d6b868fa97d70774e5fcc865c390dabb64c8321be488c47127278cc33767f5725763e1da67848975a73c9ae539a432d8aa55d29e609c6d95a02e9aec0986bfd2
|
|
@@ -106,12 +106,7 @@ module Relaton
|
|
|
106
106
|
yaml = Index.config.storage.read(file)
|
|
107
107
|
return unless yaml
|
|
108
108
|
|
|
109
|
-
|
|
110
|
-
return deserialize_pubid(index) if check_format index
|
|
111
|
-
|
|
112
|
-
warn_local_index_error "Wrong structure of the"
|
|
113
|
-
rescue Psych::SyntaxError
|
|
114
|
-
warn_local_index_error "YAML parsing error when reading"
|
|
109
|
+
load_index(yaml) || []
|
|
115
110
|
end
|
|
116
111
|
|
|
117
112
|
def deserialize_pubid(index)
|
|
@@ -134,6 +129,23 @@ module Relaton
|
|
|
134
129
|
@progname ||= "relaton-#{@dir}"
|
|
135
130
|
end
|
|
136
131
|
|
|
132
|
+
def load_index(yaml, save = false)
|
|
133
|
+
index = YAML.safe_load(yaml, permitted_classes: [Symbol])
|
|
134
|
+
save index if save
|
|
135
|
+
return deserialize_pubid(index) if check_format index
|
|
136
|
+
|
|
137
|
+
if save
|
|
138
|
+
warn_remote_index_error "Wrong structure of"
|
|
139
|
+
else
|
|
140
|
+
warn_local_index_error "Wrong structure of"
|
|
141
|
+
end
|
|
142
|
+
rescue Psych::SyntaxError
|
|
143
|
+
if save
|
|
144
|
+
warn_remote_index_error "YAML parsing error when reading"
|
|
145
|
+
else
|
|
146
|
+
warn_local_index_error "YAML parsing error when reading"
|
|
147
|
+
end
|
|
148
|
+
end
|
|
137
149
|
#
|
|
138
150
|
# Fetch index from external repository and save it to storage
|
|
139
151
|
#
|
|
@@ -141,17 +153,13 @@ module Relaton
|
|
|
141
153
|
#
|
|
142
154
|
def fetch_and_save
|
|
143
155
|
resp = StringIO.new(URI(url).read)
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
156
|
+
yaml = nil
|
|
157
|
+
Zip::File.open_buffer(resp) do |zip|
|
|
158
|
+
entry = zip.entries.first
|
|
159
|
+
yaml = entry.get_input_stream.read
|
|
160
|
+
end
|
|
149
161
|
Util.info "Downloaded index from `#{url}`", progname
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
warn_remote_index_error "Wrong structure of"
|
|
153
|
-
rescue Psych::SyntaxError
|
|
154
|
-
warn_remote_index_error "YAML parsing error when reading"
|
|
162
|
+
load_index(yaml, save = true)
|
|
155
163
|
end
|
|
156
164
|
|
|
157
165
|
def warn_remote_index_error(reason)
|
data/relaton-index.gemspec
CHANGED
|
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
|
|
|
30
30
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
|
31
31
|
spec.require_paths = ["lib"]
|
|
32
32
|
|
|
33
|
-
spec.add_dependency "pubid-core", "~> 1.
|
|
33
|
+
spec.add_dependency "pubid-core", "~> 1.15.0"
|
|
34
34
|
spec.add_dependency "relaton-logger", "~> 0.2.0"
|
|
35
35
|
spec.add_dependency "rubyzip", "~> 2.3.0"
|
|
36
36
|
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: relaton-index
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.17
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ribose Inc.
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: exe
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: pubid-core
|
|
@@ -16,14 +15,14 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - "~>"
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 1.
|
|
18
|
+
version: 1.15.0
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - "~>"
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 1.
|
|
25
|
+
version: 1.15.0
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: relaton-logger
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -52,7 +51,6 @@ dependencies:
|
|
|
52
51
|
- - "~>"
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
53
|
version: 2.3.0
|
|
55
|
-
description:
|
|
56
54
|
email:
|
|
57
55
|
- open.source@ribose.com
|
|
58
56
|
executables: []
|
|
@@ -81,7 +79,6 @@ licenses:
|
|
|
81
79
|
metadata:
|
|
82
80
|
homepage_uri: https://github.com/relaton/relaton-index
|
|
83
81
|
source_code_uri: https://github.com/relaton/relaton-index
|
|
84
|
-
post_install_message:
|
|
85
82
|
rdoc_options: []
|
|
86
83
|
require_paths:
|
|
87
84
|
- lib
|
|
@@ -96,8 +93,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
96
93
|
- !ruby/object:Gem::Version
|
|
97
94
|
version: '0'
|
|
98
95
|
requirements: []
|
|
99
|
-
rubygems_version: 3.
|
|
100
|
-
signing_key:
|
|
96
|
+
rubygems_version: 3.6.9
|
|
101
97
|
specification_version: 4
|
|
102
98
|
summary: Relaton Index is a library for indexing Relaton files.
|
|
103
99
|
test_files: []
|