commonmeta-ruby 3.3.2 → 3.3.3
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/Gemfile.lock +3 -1
- data/bin/commonmeta +1 -1
- data/commonmeta.gemspec +1 -0
- data/lib/commonmeta/cli.rb +6 -0
- data/lib/commonmeta/utils.rb +21 -1
- data/lib/commonmeta/version.rb +1 -1
- data/lib/commonmeta.rb +1 -0
- metadata +21 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2eb50e7e66b90175ca4b2176de9bd89e7898e06efdb6a4dbae46532233f2736c
|
|
4
|
+
data.tar.gz: 8e8161a7bd4064a04956d47d3945f4165cf147a559488ad943c5e776c3c666d2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 344a8db3f61bad8f9f9b289427d0de3d1ac685e7c93dd092ebb54055969986a76c3f5e763b2c5ccd37d73b4c9de5350c6009b5927d3f943f72b6c213436c598a
|
|
7
|
+
data.tar.gz: 432286ef1601030abcd7b76bd814c399a12c75f2f438e71c8f1a64dcc8a03008be26a5712eeeab4d38f30085f0e3e0bff832fa7a831c13a41d9e50214d53ff8a
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
commonmeta-ruby (3.3.
|
|
4
|
+
commonmeta-ruby (3.3.3)
|
|
5
5
|
activesupport (>= 4.2.5, < 8.0)
|
|
6
6
|
addressable (~> 2.8.1, < 2.8.2)
|
|
7
7
|
base32-url (>= 0.7.0, < 1)
|
|
@@ -16,6 +16,7 @@ PATH
|
|
|
16
16
|
json-ld-preloaded (~> 3.2, >= 3.2.2)
|
|
17
17
|
json_schemer (~> 1.0.1)
|
|
18
18
|
jsonlint (~> 0.3.0)
|
|
19
|
+
jwt (~> 2.7, >= 2.7.1)
|
|
19
20
|
loofah (~> 2.19)
|
|
20
21
|
namae (~> 1.0)
|
|
21
22
|
postrank-uri (~> 1.1)
|
|
@@ -111,6 +112,7 @@ GEM
|
|
|
111
112
|
jsonlint (0.3.0)
|
|
112
113
|
oj (~> 3)
|
|
113
114
|
optimist (~> 3)
|
|
115
|
+
jwt (2.7.1)
|
|
114
116
|
latex-decode (0.4.0)
|
|
115
117
|
link_header (0.0.8)
|
|
116
118
|
llhttp-ffi (0.4.0)
|
data/bin/commonmeta
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
require File.expand_path("../../lib/commonmeta", __FILE__)
|
|
4
4
|
|
|
5
|
-
if (ARGV & %w(--version -v help --help encode decode encode_id decode_id encode_by_blog encode_by_uuid json_feed_not_indexed json_feed_unregistered json_feed_by_blog)).empty?
|
|
5
|
+
if (ARGV & %w(--version -v help --help encode decode encode_id decode_id encode_by_blog encode_by_uuid json_feed_not_indexed json_feed_unregistered json_feed_by_blog ghost_token)).empty?
|
|
6
6
|
Commonmeta::CLI.start(ARGV.dup.unshift("convert"))
|
|
7
7
|
else
|
|
8
8
|
Commonmeta::CLI.start
|
data/commonmeta.gemspec
CHANGED
|
@@ -32,6 +32,7 @@ Gem::Specification.new do |s|
|
|
|
32
32
|
s.add_dependency 'json-ld-preloaded', '~> 3.2', '>= 3.2.2'
|
|
33
33
|
s.add_dependency 'jsonlint', '~> 0.3.0'
|
|
34
34
|
s.add_dependency 'json_schemer', '~> 1.0.1'
|
|
35
|
+
s.add_dependency 'jwt', '~> 2.7', '>= 2.7.1'
|
|
35
36
|
s.add_dependency 'loofah', '~> 2.19'
|
|
36
37
|
s.add_dependency 'namae', '~> 1.0'
|
|
37
38
|
s.add_dependency 'postrank-uri', '~> 1.1'
|
data/lib/commonmeta/cli.rb
CHANGED
data/lib/commonmeta/utils.rb
CHANGED
|
@@ -1385,7 +1385,7 @@ module Commonmeta
|
|
|
1385
1385
|
|
|
1386
1386
|
def encode_doi(prefix, options = {})
|
|
1387
1387
|
return nil unless prefix.present?
|
|
1388
|
-
|
|
1388
|
+
|
|
1389
1389
|
# DOI suffix is a generated from a random number, encoded in base32
|
|
1390
1390
|
# suffix has 8 digits plus two checksum digits. With base32 there are
|
|
1391
1391
|
# 32 possible digits, so 8 digits gives 32^8 possible combinations
|
|
@@ -1452,5 +1452,25 @@ module Commonmeta
|
|
|
1452
1452
|
def json_feed_item_by_uuid_url(uuid)
|
|
1453
1453
|
"https://rogue-scholar.org/api/posts/#{uuid}"
|
|
1454
1454
|
end
|
|
1455
|
+
|
|
1456
|
+
def generate_ghost_token(admin_api_key)
|
|
1457
|
+
# from https://ghost.org/docs/admin-api/
|
|
1458
|
+
|
|
1459
|
+
# Split the key into ID and SECRET
|
|
1460
|
+
id, secret = admin_api_key.split(":")
|
|
1461
|
+
|
|
1462
|
+
# Prepare header and payload
|
|
1463
|
+
iat = Time.now.to_i
|
|
1464
|
+
|
|
1465
|
+
header = { alg: "HS256", typ: "JWT", kid: id }
|
|
1466
|
+
payload = {
|
|
1467
|
+
iat: iat,
|
|
1468
|
+
exp: iat + 5 * 60,
|
|
1469
|
+
aud: "/admin/",
|
|
1470
|
+
}
|
|
1471
|
+
|
|
1472
|
+
# Create the token (including decoding secret)
|
|
1473
|
+
JWT.encode payload, [secret].pack("H*"), "HS256", header
|
|
1474
|
+
end
|
|
1455
1475
|
end
|
|
1456
1476
|
end
|
data/lib/commonmeta/version.rb
CHANGED
data/lib/commonmeta.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: commonmeta-ruby
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.3.
|
|
4
|
+
version: 3.3.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Martin Fenner
|
|
@@ -248,6 +248,26 @@ dependencies:
|
|
|
248
248
|
- - "~>"
|
|
249
249
|
- !ruby/object:Gem::Version
|
|
250
250
|
version: 1.0.1
|
|
251
|
+
- !ruby/object:Gem::Dependency
|
|
252
|
+
name: jwt
|
|
253
|
+
requirement: !ruby/object:Gem::Requirement
|
|
254
|
+
requirements:
|
|
255
|
+
- - "~>"
|
|
256
|
+
- !ruby/object:Gem::Version
|
|
257
|
+
version: '2.7'
|
|
258
|
+
- - ">="
|
|
259
|
+
- !ruby/object:Gem::Version
|
|
260
|
+
version: 2.7.1
|
|
261
|
+
type: :runtime
|
|
262
|
+
prerelease: false
|
|
263
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
264
|
+
requirements:
|
|
265
|
+
- - "~>"
|
|
266
|
+
- !ruby/object:Gem::Version
|
|
267
|
+
version: '2.7'
|
|
268
|
+
- - ">="
|
|
269
|
+
- !ruby/object:Gem::Version
|
|
270
|
+
version: 2.7.1
|
|
251
271
|
- !ruby/object:Gem::Dependency
|
|
252
272
|
name: loofah
|
|
253
273
|
requirement: !ruby/object:Gem::Requirement
|