briard 2.2.6 → 2.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c58e04ae069afae13702c9bdbb209aa556552ee0a6d820890529459de5e45477
4
- data.tar.gz: 7e9d102420da225b33ae3de652460c38cdfda3e3646c6e9a013309e6be96ea32
3
+ metadata.gz: e74ae47f4b6a32a5f5cc0cb9488398b9759ee40b838e86201ad6ce7bff923114
4
+ data.tar.gz: 41e1de7773f27fc79f6f9d56a3130edb975890c3acba9b3bbf41eabf59084fb9
5
5
  SHA512:
6
- metadata.gz: 3389da96a3c82502ac3e73f72866f16e8c1991800bb2bcef01a79c4eb69a060911ddc90e800965f8b0cd6676d58e1ce3b4f03788d49b70bd1318a672cf75f84e
7
- data.tar.gz: 653ea86aa905f965c978c0539c9e8e595dc0ac96e8d4c5c3a6f6b768f3d250eba4c33bc4d4b670bcfbb7f6a1bfe4e21221f58def25d013010e90bc90752a7c8e
6
+ metadata.gz: dd226e70e002d0c8df973fc7e3da607279578ebe52f1769b433f26b8e93aca591247ed589af5d0d4917aff5f97a0a472a84fdd2ae63688b9f1879a734d644e63
7
+ data.tar.gz: 2dbd3973166bfae7e5a2a20f5e9ebd31e6bceadf238507d1776cb74e70ded22a787bb86868c00395cf0ed3dcb7fddcded7d1a71f87b629f0168bdc6aea008887
@@ -11,10 +11,10 @@ jobs:
11
11
  SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
12
12
  steps:
13
13
  - uses: actions/checkout@v2
14
- - name: Set up Ruby 2.6
14
+ - name: Set up Ruby 2.7
15
15
  uses: actions/setup-ruby@v1
16
16
  with:
17
- ruby-version: 2.6.x
17
+ ruby-version: 2.7.x
18
18
 
19
19
  - name: Build and test
20
20
  run: |
@@ -10,10 +10,10 @@ jobs:
10
10
  SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
11
11
  steps:
12
12
  - uses: actions/checkout@v2
13
- - name: Set up Ruby 2.6
13
+ - name: Set up Ruby 2.7
14
14
  uses: actions/setup-ruby@v1
15
15
  with:
16
- ruby-version: 2.6.x
16
+ ruby-version: 2.7.x
17
17
 
18
18
  - name: Build and test
19
19
  run: |
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## [v.2.3](https://github.com/front-matter/briard/tree/v.2.3) (2022-06-19)
4
+
5
+ [Full Changelog](https://github.com/front-matter/briard/compare/v2.2.9...v.2.3)
6
+
7
+ ## [v2.2.9](https://github.com/front-matter/briard/tree/v2.2.9) (2022-06-19)
8
+
9
+ [Full Changelog](https://github.com/front-matter/briard/compare/v2.2.7...v2.2.9)
10
+
11
+ ## [v2.2.7](https://github.com/front-matter/briard/tree/v2.2.7) (2021-12-23)
12
+
13
+ [Full Changelog](https://github.com/front-matter/briard/compare/v2.2.6...v2.2.7)
14
+
15
+ ## [v2.2.6](https://github.com/front-matter/briard/tree/v2.2.6) (2021-12-23)
16
+
17
+ [Full Changelog](https://github.com/front-matter/briard/compare/v2.2.5...v2.2.6)
18
+
3
19
  ## [v2.2.5](https://github.com/front-matter/briard/tree/v2.2.5) (2021-12-09)
4
20
 
5
21
  [Full Changelog](https://github.com/front-matter/briard/compare/v2.2.4...v2.2.5)
data/Gemfile.lock CHANGED
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- briard (2.2.6)
4
+ briard (2.3.1)
5
5
  activesupport (>= 4.2.5)
6
+ base32-url (>= 0.5.0, < 1)
6
7
  benchmark_methods (~> 0.7)
7
8
  bibtex-ruby (>= 5.1.0)
8
9
  builder (~> 3.2, >= 3.2.2)
@@ -18,9 +19,9 @@ PATH
18
19
  json-ld-preloaded (~> 3.1, >= 3.1.3)
19
20
  jsonlint (~> 0.3.0)
20
21
  loofah (~> 2.0, >= 2.0.3)
21
- maremma (>= 4.9.5, < 5)
22
+ maremma (>= 4.9.7, < 5)
22
23
  namae (~> 1.0)
23
- nokogiri (~> 1.11.2)
24
+ nokogiri (~> 1.13.1)
24
25
  oj (~> 3.10)
25
26
  oj_mimic_json (~> 1.0, >= 1.0.1)
26
27
  postrank-uri (~> 1.0, >= 1.0.18)
@@ -32,15 +33,15 @@ PATH
32
33
  GEM
33
34
  remote: https://rubygems.org/
34
35
  specs:
35
- activesupport (6.1.4.4)
36
+ activesupport (7.0.3.1)
36
37
  concurrent-ruby (~> 1.0, >= 1.0.2)
37
38
  i18n (>= 1.6, < 2)
38
39
  minitest (>= 5.1)
39
40
  tzinfo (~> 2.0)
40
- zeitwerk (~> 2.3)
41
41
  addressable (2.8.0)
42
42
  public_suffix (>= 2.0.2, < 5.0)
43
43
  amazing_print (1.4.0)
44
+ base32-url (0.5)
44
45
  benchmark_methods (0.7)
45
46
  bibtex-ruby (6.0.0)
46
47
  latex-decode (~> 0.0)
@@ -51,7 +52,7 @@ GEM
51
52
  citeproc (~> 1.0, >= 1.0.9)
52
53
  csl (~> 1.6)
53
54
  colorize (0.8.1)
54
- concurrent-ruby (1.1.9)
55
+ concurrent-ruby (1.1.10)
55
56
  crack (0.4.5)
56
57
  rexml
57
58
  crass (1.0.6)
@@ -62,18 +63,18 @@ GEM
62
63
  csl (~> 1.0)
63
64
  diff-lcs (1.5.0)
64
65
  docile (1.4.0)
65
- dotenv (2.7.6)
66
- ebnf (2.2.1)
67
- amazing_print (~> 1.2)
66
+ dotenv (2.8.1)
67
+ ebnf (2.3.1)
68
+ amazing_print (~> 1.4)
68
69
  htmlentities (~> 4.3)
69
- rdf (~> 3.1)
70
+ rdf (~> 3.2)
70
71
  scanf (~> 1.0)
71
- sxp (~> 1.1)
72
- unicode-types (~> 1.6)
73
- edtf (3.0.6)
74
- activesupport (>= 3.0, < 7.0)
72
+ sxp (~> 1.2)
73
+ unicode-types (~> 1.7)
74
+ edtf (3.1.0)
75
+ activesupport (>= 3.0, < 8.0)
75
76
  excon (0.71.1)
76
- faraday (0.17.4)
77
+ faraday (0.17.5)
77
78
  multipart-post (>= 1.2, < 3)
78
79
  faraday-encoding (0.0.5)
79
80
  faraday
@@ -84,34 +85,32 @@ GEM
84
85
  haml (5.2.2)
85
86
  temple (>= 0.8.0)
86
87
  tilt
87
- hamster (3.0.0)
88
- concurrent-ruby (~> 1.0)
89
88
  hashdiff (1.0.1)
90
89
  htmlentities (4.3.4)
91
- i18n (1.8.11)
90
+ i18n (1.12.0)
92
91
  concurrent-ruby (~> 1.0)
93
92
  iso8601 (0.9.1)
94
- json (2.6.1)
93
+ json (2.6.2)
95
94
  json-canonicalization (0.3.0)
96
- json-ld (3.1.10)
95
+ json-ld (3.2.3)
97
96
  htmlentities (~> 4.3)
98
- json-canonicalization (~> 0.2)
97
+ json-canonicalization (~> 0.3)
99
98
  link_header (~> 0.0, >= 0.0.8)
100
- multi_json (~> 1.14)
101
- rack (~> 2.0)
102
- rdf (~> 3.1)
103
- json-ld-preloaded (3.1.6)
104
- json-ld (~> 3.1)
105
- rdf (~> 3.1)
99
+ multi_json (~> 1.15)
100
+ rack (~> 2.2)
101
+ rdf (~> 3.2, >= 3.2.9)
102
+ json-ld-preloaded (3.2.0)
103
+ json-ld (~> 3.2)
104
+ rdf (~> 3.2)
106
105
  jsonlint (0.3.0)
107
106
  oj (~> 3)
108
107
  optimist (~> 3)
109
- latex-decode (0.3.2)
108
+ latex-decode (0.4.0)
110
109
  link_header (0.0.8)
111
- loofah (2.13.0)
110
+ loofah (2.18.0)
112
111
  crass (~> 1.0.2)
113
112
  nokogiri (>= 1.5.9)
114
- maremma (4.9.6)
113
+ maremma (4.9.8)
115
114
  activesupport (>= 4.2.5)
116
115
  addressable (>= 2.3.6)
117
116
  builder (~> 3.2, >= 3.2.2)
@@ -119,18 +118,19 @@ GEM
119
118
  faraday (~> 0.17.3)
120
119
  faraday-encoding (~> 0.0.4)
121
120
  faraday_middleware (~> 0.14.0)
122
- nokogiri (~> 1.11.2)
121
+ nokogiri (>= 1.11.2, < 1.14.0)
123
122
  oj (>= 2.8.3)
124
123
  oj_mimic_json (~> 1.0, >= 1.0.1)
125
- mini_portile2 (2.5.3)
126
- minitest (5.15.0)
124
+ matrix (0.4.2)
125
+ mini_portile2 (2.8.0)
126
+ minitest (5.16.2)
127
127
  multi_json (1.15.0)
128
- multipart-post (2.1.1)
128
+ multipart-post (2.2.3)
129
129
  namae (1.1.1)
130
- nokogiri (1.11.7)
131
- mini_portile2 (~> 2.5.0)
130
+ nokogiri (1.13.8)
131
+ mini_portile2 (~> 2.8.0)
132
132
  racc (~> 1.4)
133
- oj (3.13.10)
133
+ oj (3.13.20)
134
134
  oj_mimic_json (1.0.1)
135
135
  optimist (3.0.1)
136
136
  postrank-uri (1.0.24)
@@ -139,49 +139,48 @@ GEM
139
139
  public_suffix (>= 2.0.0, < 2.1)
140
140
  public_suffix (2.0.5)
141
141
  racc (1.6.0)
142
- rack (2.2.3)
142
+ rack (2.2.4)
143
143
  rack-test (0.8.3)
144
144
  rack (>= 1.0, < 3)
145
145
  rake (12.3.3)
146
- rdf (3.1.15)
147
- hamster (~> 3.0)
146
+ rdf (3.2.9)
148
147
  link_header (~> 0.0, >= 0.0.8)
149
- rdf-aggregate-repo (3.1.0)
150
- rdf (~> 3.1)
151
- rdf-rdfa (3.1.3)
148
+ rdf-aggregate-repo (3.2.1)
149
+ rdf (~> 3.2)
150
+ rdf-rdfa (3.2.0)
152
151
  haml (~> 5.2)
153
152
  htmlentities (~> 4.3)
154
- rdf (~> 3.1, >= 3.1.13)
155
- rdf-aggregate-repo (~> 3.1)
156
- rdf-vocab (~> 3.1, >= 3.1.11)
157
- rdf-xsd (~> 3.1)
158
- rdf-rdfxml (3.1.1)
153
+ rdf (~> 3.2)
154
+ rdf-aggregate-repo (~> 3.2)
155
+ rdf-vocab (~> 3.2)
156
+ rdf-xsd (~> 3.2)
157
+ rdf-rdfxml (3.2.0)
159
158
  htmlentities (~> 4.3)
160
- rdf (~> 3.1)
161
- rdf-rdfa (~> 3.1)
162
- rdf-xsd (~> 3.1)
163
- rdf-turtle (3.1.3)
164
- ebnf (~> 2.1)
165
- rdf (~> 3.1, >= 3.1.8)
166
- rdf-vocab (3.1.14)
167
- rdf (~> 3.1, >= 3.1.12)
168
- rdf-xsd (3.1.1)
169
- rdf (~> 3.1)
159
+ rdf (~> 3.2)
160
+ rdf-rdfa (~> 3.2)
161
+ rdf-xsd (~> 3.2)
162
+ rdf-turtle (3.2.1)
163
+ ebnf (~> 2.3)
164
+ rdf (~> 3.2)
165
+ rdf-vocab (3.2.1)
166
+ rdf (~> 3.2, >= 3.2.4)
167
+ rdf-xsd (3.2.1)
168
+ rdf (~> 3.2)
170
169
  rexml (~> 3.2)
171
170
  rexml (3.2.5)
172
- rspec (3.10.0)
173
- rspec-core (~> 3.10.0)
174
- rspec-expectations (~> 3.10.0)
175
- rspec-mocks (~> 3.10.0)
176
- rspec-core (3.10.1)
177
- rspec-support (~> 3.10.0)
178
- rspec-expectations (3.10.1)
171
+ rspec (3.11.0)
172
+ rspec-core (~> 3.11.0)
173
+ rspec-expectations (~> 3.11.0)
174
+ rspec-mocks (~> 3.11.0)
175
+ rspec-core (3.11.0)
176
+ rspec-support (~> 3.11.0)
177
+ rspec-expectations (3.11.0)
179
178
  diff-lcs (>= 1.2.0, < 2.0)
180
- rspec-support (~> 3.10.0)
181
- rspec-mocks (3.10.2)
179
+ rspec-support (~> 3.11.0)
180
+ rspec-mocks (3.11.1)
182
181
  diff-lcs (>= 1.2.0, < 2.0)
183
- rspec-support (~> 3.10.0)
184
- rspec-support (3.10.3)
182
+ rspec-support (~> 3.11.0)
183
+ rspec-support (3.11.0)
185
184
  rspec-xsd (0.1.0)
186
185
  nokogiri (~> 1.6)
187
186
  rspec (~> 3)
@@ -191,21 +190,21 @@ GEM
191
190
  json (>= 1.8, < 3)
192
191
  simplecov-html (~> 0.10.0)
193
192
  simplecov-html (0.10.2)
194
- sxp (1.1.0)
195
- rdf (~> 3.1)
193
+ sxp (1.2.2)
194
+ matrix
195
+ rdf (~> 3.2)
196
196
  temple (0.8.2)
197
- thor (1.1.0)
198
- tilt (2.0.10)
199
- tzinfo (2.0.4)
197
+ thor (1.2.1)
198
+ tilt (2.0.11)
199
+ tzinfo (2.0.5)
200
200
  concurrent-ruby (~> 1.0)
201
201
  unicode-types (1.7.0)
202
202
  unicode_utils (1.4.0)
203
203
  vcr (3.0.3)
204
- webmock (3.14.0)
204
+ webmock (3.17.1)
205
205
  addressable (>= 2.8.0)
206
206
  crack (>= 0.3.2)
207
207
  hashdiff (>= 0.4.0, < 2.0.0)
208
- zeitwerk (2.5.1)
209
208
 
210
209
  PLATFORMS
211
210
  ruby
@@ -223,4 +222,4 @@ DEPENDENCIES
223
222
  webmock (~> 3.0, >= 3.0.1)
224
223
 
225
224
  BUNDLED WITH
226
- 2.2.22
225
+ 2.3.16
data/bolognese.gemspec CHANGED
@@ -16,9 +16,10 @@ Gem::Specification.new do |s|
16
16
  s.required_ruby_version = '~> 2.3'
17
17
 
18
18
  # Declare dependencies here, rather than in the Gemfile
19
- s.add_dependency 'maremma', '>= 4.9.5', '< 5'
19
+ s.add_dependency 'maremma', '>= 4.9.7', '< 5'
20
+ s.add_dependency 'base32-url', '>= 0.5.0', '< 1'
20
21
  s.add_dependency 'faraday', '~> 0.17.3'
21
- s.add_dependency 'nokogiri', '~> 1.11.2'
22
+ s.add_dependency 'nokogiri', '~> 1.13.1'
22
23
  s.add_dependency 'loofah', '~> 2.0', '>= 2.0.3'
23
24
  s.add_dependency 'builder', '~> 3.2', '>= 3.2.2'
24
25
  s.add_dependency 'activesupport', '>= 4.2.5'
@@ -83,8 +83,8 @@ module Briard
83
83
  end
84
84
 
85
85
  # make sure input is encoded as utf8
86
- string = string.force_encoding("UTF-8") if string.present? && string.is_a?(String)
87
- @string = string
86
+ dup_string = string.dup.force_encoding("UTF-8").encode! if string.present? && string.is_a?(String)
87
+ @string = dup_string
88
88
 
89
89
  # input options for citation formatting
90
90
  @style = options[:style]
@@ -27,7 +27,7 @@ module Briard
27
27
  return { "string" => nil, "state" => "not_found" } unless id.present?
28
28
 
29
29
  url = normalize_id(id)
30
- response = Maremma.get(url)
30
+ response = Maremma.get(url, accept: "json", raw: true)
31
31
 
32
32
  # some responses are returned as a hash
33
33
  if response.body["data"].is_a?(Hash)
data/lib/briard/utils.rb CHANGED
@@ -1387,5 +1387,17 @@ module Briard
1387
1387
  "lang" => hsh["lang"] }.compact]
1388
1388
  end
1389
1389
  end
1390
+
1391
+ def encode_doi(prefix)
1392
+ random_int = SecureRandom.random_number(2**63..2**64-1)
1393
+ suffix = Base32::URL.encode(random_int)
1394
+ str = "#{suffix[0,7]}-#{suffix[6,7]}"
1395
+ "https://doi.org/#{prefix}/#{str}"
1396
+ end
1397
+
1398
+ def decode_doi(doi)
1399
+ suffix = doi.split('/', 5).last
1400
+ Base32::URL.decode(suffix)
1401
+ end
1390
1402
  end
1391
1403
  end
@@ -1,3 +1,3 @@
1
1
  module Briard
2
- VERSION = "2.2.6"
2
+ VERSION = "2.3.1"
3
3
  end
data/lib/briard.rb CHANGED
@@ -20,6 +20,7 @@ require 'citeproc/ruby'
20
20
  require 'citeproc'
21
21
  require 'csl/styles'
22
22
  require 'edtf'
23
+ require 'base32/url'
23
24
 
24
25
  require "briard/version"
25
26
  require "briard/metadata"
@@ -0,0 +1,65 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.9.8; mailto:info@front-matter.io)
12
+ Accept:
13
+ - text/xml;charset=utf-8
14
+ Accept-Encoding:
15
+ - gzip,deflate
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sun, 14 Aug 2022 13:47:48 GMT
23
+ Content-Length:
24
+ - '3783'
25
+ Set-Cookie:
26
+ - AWSALB=c91sQp5+wingTLJ8k3J+ZxqikF1Q3VPQ/WdWUPoORXwddzYneJeIS+5pSu+xqHnin3fle4sHbtL28tWV0SfFvRrtc5v9Gyb2wQ+ekLELBz5cwKT+Xv8pwp0cTSzE;
27
+ Expires=Sun, 21 Aug 2022 13:47:47 GMT; Path=/, AWSALBCORS=c91sQp5+wingTLJ8k3J+ZxqikF1Q3VPQ/WdWUPoORXwddzYneJeIS+5pSu+xqHnin3fle4sHbtL28tWV0SfFvRrtc5v9Gyb2wQ+ekLELBz5cwKT+Xv8pwp0cTSzE;
28
+ Expires=Sun, 21 Aug 2022 13:47:47 GMT; Path=/; SameSite=None
29
+ Link:
30
+ - !binary |-
31
+ PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY+ggQ3Jvc2FzIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPjsgdGl0bGU9IkplZmZyZXkgR3JldGhlIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItOTM3Ny0wNzk3PjsgdGl0bGU9IkRhdmlkIEtlbm5lZHkiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI+OyB0aXRsZT0iSGVubmluZyBIZXJtamFrb2IiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg+OyB0aXRsZT0iUGhpbGlwcGUgUm9jY2EtU2VycmEiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA+OyB0aXRsZT0iR3VzdGF2byBEdXJhbmQiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0xNzMxLTUzNDY+OyB0aXRsZT0iUm9iaW4gQmVyam9uIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PjsgdGl0bGU9IlNlYmFzdGlhbiBLYXJjaGVyIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItODQwNi0zODcxPjsgdGl0bGU9Ik1hcnlhbm4gTWFydG9uZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTQwNjAtNzM2MD47IHRpdGxlPSJUaW1vdGh5IENsYXJrIjsgcmVsPSJhdXRob3Ii
32
+ Access-Control-Expose-Headers:
33
+ - Link
34
+ Access-Control-Allow-Headers:
35
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
36
+ Accept-Ranges, Cache-Control
37
+ Access-Control-Allow-Origin:
38
+ - "*"
39
+ Vary:
40
+ - Accept-Encoding
41
+ Content-Encoding:
42
+ - gzip
43
+ Server:
44
+ - Jetty(9.4.40.v20210413)
45
+ X-Ratelimit-Limit:
46
+ - '50'
47
+ X-Ratelimit-Interval:
48
+ - 1s
49
+ X-Api-Pool:
50
+ - polite
51
+ X-Rate-Limit-Limit:
52
+ - '50'
53
+ X-Rate-Limit-Interval:
54
+ - 1s
55
+ Permissions-Policy:
56
+ - interest-cohort=()
57
+ Connection:
58
+ - close
59
+ body:
60
+ encoding: ASCII-8BIT
61
+ string: !binary |-
62
+ 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
63
+ http_version:
64
+ recorded_at: Sun, 14 Aug 2022 13:47:48 GMT
65
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,65 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.9.8; mailto:info@front-matter.io)
12
+ Accept:
13
+ - text/xml;charset=utf-8
14
+ Accept-Encoding:
15
+ - gzip,deflate
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sun, 14 Aug 2022 13:06:39 GMT
23
+ Content-Length:
24
+ - '3783'
25
+ Set-Cookie:
26
+ - AWSALB=km6tnwRMwn4lAnoaixMmmMi768x8KuRd+wkggtRkIGSuX0yJvMPalgW2vndS65XHcWCQX9KKN2waEFCejO/jSp8ENF8pvLid/d87KUjbIlU0azW0IC2YZb9oiGE2;
27
+ Expires=Sun, 21 Aug 2022 13:06:39 GMT; Path=/, AWSALBCORS=km6tnwRMwn4lAnoaixMmmMi768x8KuRd+wkggtRkIGSuX0yJvMPalgW2vndS65XHcWCQX9KKN2waEFCejO/jSp8ENF8pvLid/d87KUjbIlU0azW0IC2YZb9oiGE2;
28
+ Expires=Sun, 21 Aug 2022 13:06:39 GMT; Path=/; SameSite=None
29
+ Link:
30
+ - !binary |-
31
+ PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY+ggQ3Jvc2FzIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPjsgdGl0bGU9IkplZmZyZXkgR3JldGhlIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItOTM3Ny0wNzk3PjsgdGl0bGU9IkRhdmlkIEtlbm5lZHkiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI+OyB0aXRsZT0iSGVubmluZyBIZXJtamFrb2IiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg+OyB0aXRsZT0iUGhpbGlwcGUgUm9jY2EtU2VycmEiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA+OyB0aXRsZT0iR3VzdGF2byBEdXJhbmQiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0xNzMxLTUzNDY+OyB0aXRsZT0iUm9iaW4gQmVyam9uIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PjsgdGl0bGU9IlNlYmFzdGlhbiBLYXJjaGVyIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItODQwNi0zODcxPjsgdGl0bGU9Ik1hcnlhbm4gTWFydG9uZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTQwNjAtNzM2MD47IHRpdGxlPSJUaW1vdGh5IENsYXJrIjsgcmVsPSJhdXRob3Ii
32
+ Access-Control-Expose-Headers:
33
+ - Link
34
+ Access-Control-Allow-Headers:
35
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
36
+ Accept-Ranges, Cache-Control
37
+ Access-Control-Allow-Origin:
38
+ - "*"
39
+ Vary:
40
+ - Accept-Encoding
41
+ Content-Encoding:
42
+ - gzip
43
+ Server:
44
+ - Jetty(9.4.40.v20210413)
45
+ X-Ratelimit-Limit:
46
+ - '50'
47
+ X-Ratelimit-Interval:
48
+ - 1s
49
+ X-Api-Pool:
50
+ - polite
51
+ X-Rate-Limit-Limit:
52
+ - '50'
53
+ X-Rate-Limit-Interval:
54
+ - 1s
55
+ Permissions-Policy:
56
+ - interest-cohort=()
57
+ Connection:
58
+ - close
59
+ body:
60
+ encoding: ASCII-8BIT
61
+ string: !binary |-
62
+ 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
63
+ http_version:
64
+ recorded_at: Sun, 14 Aug 2022 13:06:39 GMT
65
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,65 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.9.8; mailto:info@front-matter.io)
12
+ Accept:
13
+ - text/xml;charset=utf-8
14
+ Accept-Encoding:
15
+ - gzip,deflate
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sun, 14 Aug 2022 13:06:39 GMT
23
+ Content-Length:
24
+ - '3783'
25
+ Set-Cookie:
26
+ - AWSALB=Trc0NhcGV6WBSxie3ofKZvTL+VgpA0Eaaxbmt1WV4U6qP852KFcRetq58I20PtoS10sZACJqDG+nD0B4syTdjvvQdutQxQVn+FaWp2fA7m1MY/sm4ZKJnvYVl0vb;
27
+ Expires=Sun, 21 Aug 2022 13:06:39 GMT; Path=/, AWSALBCORS=Trc0NhcGV6WBSxie3ofKZvTL+VgpA0Eaaxbmt1WV4U6qP852KFcRetq58I20PtoS10sZACJqDG+nD0B4syTdjvvQdutQxQVn+FaWp2fA7m1MY/sm4ZKJnvYVl0vb;
28
+ Expires=Sun, 21 Aug 2022 13:06:39 GMT; Path=/; SameSite=None
29
+ Link:
30
+ - !binary |-
31
+ PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY+ggQ3Jvc2FzIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPjsgdGl0bGU9IkplZmZyZXkgR3JldGhlIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItOTM3Ny0wNzk3PjsgdGl0bGU9IkRhdmlkIEtlbm5lZHkiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI+OyB0aXRsZT0iSGVubmluZyBIZXJtamFrb2IiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg+OyB0aXRsZT0iUGhpbGlwcGUgUm9jY2EtU2VycmEiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA+OyB0aXRsZT0iR3VzdGF2byBEdXJhbmQiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0xNzMxLTUzNDY+OyB0aXRsZT0iUm9iaW4gQmVyam9uIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PjsgdGl0bGU9IlNlYmFzdGlhbiBLYXJjaGVyIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItODQwNi0zODcxPjsgdGl0bGU9Ik1hcnlhbm4gTWFydG9uZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTQwNjAtNzM2MD47IHRpdGxlPSJUaW1vdGh5IENsYXJrIjsgcmVsPSJhdXRob3Ii
32
+ Access-Control-Expose-Headers:
33
+ - Link
34
+ Access-Control-Allow-Headers:
35
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
36
+ Accept-Ranges, Cache-Control
37
+ Access-Control-Allow-Origin:
38
+ - "*"
39
+ Vary:
40
+ - Accept-Encoding
41
+ Content-Encoding:
42
+ - gzip
43
+ Server:
44
+ - Jetty(9.4.40.v20210413)
45
+ X-Ratelimit-Limit:
46
+ - '50'
47
+ X-Ratelimit-Interval:
48
+ - 1s
49
+ X-Api-Pool:
50
+ - polite
51
+ X-Rate-Limit-Limit:
52
+ - '50'
53
+ X-Rate-Limit-Interval:
54
+ - 1s
55
+ Permissions-Policy:
56
+ - interest-cohort=()
57
+ Connection:
58
+ - close
59
+ body:
60
+ encoding: ASCII-8BIT
61
+ string: !binary |-
62
+ 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
63
+ http_version:
64
+ recorded_at: Sun, 14 Aug 2022 13:06:39 GMT
65
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,53 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://blog.front-matter.io/posts/dryad-interview-jen-gibson
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.9.8; mailto:info@front-matter.io)
12
+ Accept:
13
+ - application/json;charset=UTF-8
14
+ Accept-Encoding:
15
+ - gzip,deflate
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Access-Control-Allow-Origin:
22
+ - "*"
23
+ Age:
24
+ - '2459'
25
+ Cache-Control:
26
+ - public, max-age=0, must-revalidate
27
+ Content-Disposition:
28
+ - inline
29
+ Content-Encoding:
30
+ - gzip
31
+ Content-Type:
32
+ - text/html; charset=utf-8
33
+ Date:
34
+ - Sun, 14 Aug 2022 12:01:36 GMT
35
+ Etag:
36
+ - W/"408736d1faeaa63fd2100d00ccfd7dba"
37
+ Server:
38
+ - Vercel
39
+ Strict-Transport-Security:
40
+ - max-age=63072000
41
+ X-Matched-Path:
42
+ - "/posts/dryad-interview-jen-gibson"
43
+ X-Vercel-Cache:
44
+ - HIT
45
+ X-Vercel-Id:
46
+ - fra1::5gvcw-1660478496838-11cf18654b7f
47
+ body:
48
+ encoding: ASCII-8BIT
49
+ string: !binary |-
50
+ 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
51
+ http_version:
52
+ recorded_at: Sun, 14 Aug 2022 12:01:36 GMT
53
+ recorded_with: VCR 3.0.3
@@ -153,7 +153,7 @@ describe Briard::Metadata, vcr: true do
153
153
  it "missing_comma" do
154
154
  json = IO.read(fixture_path + "datacite_software_missing_comma.json")
155
155
  response = subject.jsonlint(json)
156
- expect(response).to eq(["expected comma, not a string (after doi) at line 4, column 11 [parse.c:388]"])
156
+ expect(response).to eq(["expected comma, not a string (after doi) at line 4, column 11 [parse.c:430]"])
157
157
  end
158
158
 
159
159
  it "overlapping_keys" do
@@ -46,7 +46,7 @@ describe Briard::Metadata, vcr: true do
46
46
  input = fixture_path + "datacite_software_missing_comma.json"
47
47
  subject = Briard::Metadata.new(input: input, from: "datacite_json", show_errors: true)
48
48
  expect(subject.valid?).to be false
49
- expect(subject.errors).to eq(["expected comma, not a string (after doi) at line 4, column 11 [parse.c:388]"])
49
+ expect(subject.errors).to eq(["expected comma, not a string (after doi) at line 4, column 11 [parse.c:430]"])
50
50
  expect(subject.codemeta).to be_nil
51
51
  end
52
52
 
data/spec/utils_spec.rb CHANGED
@@ -624,6 +624,26 @@ describe Briard::Metadata, vcr: true do
624
624
  response = subject.hsh_to_fos(hsh)
625
625
  expect(response).to eq([{"subject"=>"Random tag"}])
626
626
  end
627
+ end
628
+
629
+ context "random doi" do
630
+ it "encode doi" do
631
+ prefix = "10.53731"
632
+ response = subject.encode_doi(prefix)
633
+ expect(response).to match(/#{prefix}\/[-._;()\/:A-Za-z0-9]+/)
634
+ expect(response.length).to eq(40)
635
+ end
627
636
 
637
+ it "decode doi" do
638
+ doi = "https://doi.org/10.53731/revzwnv-rpd913d-8drwz"
639
+ response = subject.decode_doi(doi)
640
+ expect(response).to eq (30286005717401267192153432991)
641
+ end
642
+
643
+ it "decode anothe doi" do
644
+ doi = "https://doi.org/10.53731/rckvde5-tzg61kj-7zvc1"
645
+ response = subject.decode_doi(doi)
646
+ expect(response).to eq (30198793950250854133601922433)
647
+ end
628
648
  end
629
649
  end
@@ -69,6 +69,32 @@ describe Briard::Metadata, vcr: true do
69
69
  expect(crossref.dig("titles", "title")).to eq("Editorial by more than 200 health journals: Call for emergency action to limit global temperature increases, restore biodiversity, and protect health")
70
70
  end
71
71
 
72
+ it "schema.org from front-matter" do
73
+ input = "https://blog.front-matter.io/posts/dryad-interview-jen-gibson"
74
+ subject = Briard::Metadata.new(input: input, from: "schema_org")
75
+ expect(subject.valid?).to be true
76
+ expect(subject.doi).to eq("10.53731/rceh7pn-tzg61kj-7zv63")
77
+ expect(subject.url).to eq("https://blog.front-matter.io/posts/dryad-interview-jen-gibson")
78
+ expect(subject.types["schemaOrg"]).to eq("BlogPosting")
79
+ expect(subject.types["resourceTypeGeneral"]).to eq("Preprint")
80
+ expect(subject.types["ris"]).to eq("GEN")
81
+ expect(subject.types["citeproc"]).to eq("post-weblog")
82
+ expect(subject.titles).to eq([{"title"=>"Dryad: Interview with Jen Gibson"}])
83
+ expect(subject.creators).to eq([{"affiliation"=>[],
84
+ "familyName"=>"Fenner",
85
+ "givenName"=>"Martin",
86
+ "name"=>"Fenner, Martin",
87
+ "nameIdentifiers"=>
88
+ [],
89
+ "nameType"=>"Personal"}])
90
+ expect(subject.subjects).to eq([{"subject"=>"interview"}])
91
+ expect(subject.container).to eq("identifier"=>"2749-9952", "identifierType"=>"ISSN", "title"=>"Front Matter", "type"=>"Blog")
92
+ expect(subject.language).to eq("en")
93
+ expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"cc-by-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"}])
94
+ crossref = Maremma.from_xml(subject.crossref).dig("doi_batch", "body", "posted_content")
95
+ expect(crossref.dig("titles", "title")).to eq("Dryad: Interview with Jen Gibson")
96
+ end
97
+
72
98
  it "embedded schema.org from front matter" do
73
99
  input = fixture_path + 'schema_org_front-matter.json'
74
100
  subject = Briard::Metadata.new(input: input, from: "schema_org")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: briard
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.6
4
+ version: 2.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Fenner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-23 00:00:00.000000000 Z
11
+ date: 2022-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: maremma
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 4.9.5
19
+ version: 4.9.7
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '5'
@@ -26,10 +26,30 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 4.9.5
29
+ version: 4.9.7
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '5'
33
+ - !ruby/object:Gem::Dependency
34
+ name: base32-url
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: 0.5.0
40
+ - - "<"
41
+ - !ruby/object:Gem::Version
42
+ version: '1'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: 0.5.0
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '1'
33
53
  - !ruby/object:Gem::Dependency
34
54
  name: faraday
35
55
  requirement: !ruby/object:Gem::Requirement
@@ -50,14 +70,14 @@ dependencies:
50
70
  requirements:
51
71
  - - "~>"
52
72
  - !ruby/object:Gem::Version
53
- version: 1.11.2
73
+ version: 1.13.1
54
74
  type: :runtime
55
75
  prerelease: false
56
76
  version_requirements: !ruby/object:Gem::Requirement
57
77
  requirements:
58
78
  - - "~>"
59
79
  - !ruby/object:Gem::Version
60
- version: 1.11.2
80
+ version: 1.13.1
61
81
  - !ruby/object:Gem::Dependency
62
82
  name: loofah
63
83
  requirement: !ruby/object:Gem::Requirement
@@ -1158,6 +1178,9 @@ files:
1158
1178
  - spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/hash.yml
1159
1179
  - spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/nil.yml
1160
1180
  - spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/string.yml
1181
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/decode_anothe_doi.yml
1182
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/decode_doi.yml
1183
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/encode_doi.yml
1161
1184
  - spec/fixtures/vcr_cassettes/Briard_Metadata/sanitize/should_only_keep_specific_tags.yml
1162
1185
  - spec/fixtures/vcr_cassettes/Briard_Metadata/sanitize/should_remove_a_tags.yml
1163
1186
  - spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_id.yml
@@ -1248,6 +1271,7 @@ files:
1248
1271
  - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crosscite/with_data_citation_schema_org.yml
1249
1272
  - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/posted_content.yml
1250
1273
  - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_datacite.yml
1274
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_front-matter.yml
1251
1275
  - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_front_matter.yml
1252
1276
  - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/climate_data.yml
1253
1277
  - spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/maremma.yml
@@ -1359,7 +1383,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1359
1383
  - !ruby/object:Gem::Version
1360
1384
  version: '0'
1361
1385
  requirements: []
1362
- rubygems_version: 3.0.3.1
1386
+ rubygems_version: 3.1.6
1363
1387
  signing_key:
1364
1388
  specification_version: 4
1365
1389
  summary: Ruby client library for conversion of DOI Metadata