cloudcannon-jekyll-bookshop 2.0.2 → 2.0.6
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 +8 -8
- data/cloudcannon-jekyll-bookshop.gemspec +1 -1
- data/lib/cloudcannon-jekyll-bookshop/structures.rb +39 -9
- data/lib/cloudcannon-jekyll-bookshop/version.rb +1 -1
- data/node_modules/@bookshop/cloudcannon-structures/package.json +2 -2
- data/node_modules/@bookshop/toml-narrator/package.json +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e9e4ca9c7dd82b20b523ffc540493a2cb6baffdfdc3aa1e55923aaf2764724c5
|
4
|
+
data.tar.gz: 90f434c71ea590ceaa9ad24864f7290bd156b582f8879f09285c0421b02848d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2f8555fe8d35188431f06a5ad5ba43e9caccf5590aeab79bb8f34d5f38ddf904bf6b5cd81add18c097faf2dcb4eb271dc6d7bad42566e25508464b9675ff1135
|
7
|
+
data.tar.gz: 03f2449f7bcd85610274c39acfd6b398b45bb24b8c5ccc3d95a5405e8961e92fda67e10a4ef1fb183dce379b0dddd6484b94413a78f68a85967c403cb46434d5
|
data/Gemfile.lock
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cloudcannon-jekyll-bookshop (2.0.
|
4
|
+
cloudcannon-jekyll-bookshop (2.0.6)
|
5
5
|
dry-inflector (>= 0.1, < 1.0)
|
6
6
|
jekyll (>= 3.7, < 5.0)
|
7
|
-
node-runner (>= 1.0, < 2.0)
|
7
|
+
node-runner-temp-fix-windows (>= 1.0, < 2.0)
|
8
8
|
toml-rb (>= 2.0, < 3.0)
|
9
9
|
|
10
10
|
GEM
|
@@ -16,7 +16,7 @@ GEM
|
|
16
16
|
ast (2.4.2)
|
17
17
|
builder (3.2.4)
|
18
18
|
citrus (3.0.2)
|
19
|
-
cloudcannon-jekyll (2.0
|
19
|
+
cloudcannon-jekyll (2.2.0)
|
20
20
|
jekyll (>= 2.4.0, < 5)
|
21
21
|
colorator (1.1.0)
|
22
22
|
concurrent-ruby (1.1.9)
|
@@ -25,14 +25,14 @@ GEM
|
|
25
25
|
eventmachine (>= 0.12.9)
|
26
26
|
http_parser.rb (~> 0.6.0)
|
27
27
|
eventmachine (1.2.7)
|
28
|
-
ffi (1.15.
|
28
|
+
ffi (1.15.4)
|
29
29
|
forwardable-extended (2.6.0)
|
30
30
|
hashdiff (1.0.1)
|
31
31
|
http_parser.rb (0.6.0)
|
32
32
|
i18n (1.8.10)
|
33
33
|
concurrent-ruby (~> 1.0)
|
34
34
|
jaro_winkler (1.5.4)
|
35
|
-
jekyll (4.2.
|
35
|
+
jekyll (4.2.1)
|
36
36
|
addressable (~> 2.4)
|
37
37
|
colorator (~> 1.0)
|
38
38
|
em-websocket (~> 0.5)
|
@@ -56,7 +56,7 @@ GEM
|
|
56
56
|
kramdown-parser-gfm (1.1.0)
|
57
57
|
kramdown (~> 2.0)
|
58
58
|
liquid (4.0.3)
|
59
|
-
listen (3.
|
59
|
+
listen (3.7.0)
|
60
60
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
61
61
|
rb-inotify (~> 0.9, >= 0.9.10)
|
62
62
|
mercenary (0.4.0)
|
@@ -66,7 +66,7 @@ GEM
|
|
66
66
|
builder
|
67
67
|
minitest (>= 5.0)
|
68
68
|
ruby-progressbar
|
69
|
-
node-runner (1.0.1)
|
69
|
+
node-runner-temp-fix-windows (1.0.1)
|
70
70
|
parallel (1.20.1)
|
71
71
|
parser (3.0.2.0)
|
72
72
|
ast (~> 2.4.1)
|
@@ -79,7 +79,7 @@ GEM
|
|
79
79
|
rb-inotify (0.10.1)
|
80
80
|
ffi (~> 1.0)
|
81
81
|
rexml (3.2.5)
|
82
|
-
rouge (3.26.
|
82
|
+
rouge (3.26.1)
|
83
83
|
rubocop (0.80.1)
|
84
84
|
jaro_winkler (~> 1.5.1)
|
85
85
|
parallel (~> 1.10)
|
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
|
|
22
22
|
|
23
23
|
spec.add_dependency "jekyll", ">= 3.7", "< 5.0"
|
24
24
|
spec.add_dependency "toml-rb", ">= 2.0", "< 3.0"
|
25
|
-
spec.add_dependency "node-runner", ">= 1.0", "< 2.0"
|
25
|
+
spec.add_dependency "node-runner-temp-fix-windows", ">= 1.0", "< 2.0"
|
26
26
|
spec.add_dependency "dry-inflector", ">= 0.1", "< 1.0"
|
27
27
|
spec.add_development_dependency "cloudcannon-jekyll", ">= 2.0", "< 3.0"
|
28
28
|
spec.add_development_dependency "rubocop", "~> 0.80"
|
@@ -47,6 +47,7 @@ module CloudCannonJekyllBookshop
|
|
47
47
|
array_structures = component.delete("structures")
|
48
48
|
array_structures.each do |key|
|
49
49
|
hash[key] ||= {}
|
50
|
+
hash[key]["id_key"] = "_bookshop_name"
|
50
51
|
hash[key]["values"] ||= []
|
51
52
|
hash[key]["values"].push(component)
|
52
53
|
end
|
@@ -58,18 +59,47 @@ module CloudCannonJekyllBookshop
|
|
58
59
|
Jekyll.logger.info "Bookshop:",
|
59
60
|
"Parsing Stories from #{base_path}"
|
60
61
|
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
62
|
+
files = Dir.glob("**/*.{bookshop}.{toml,tml,tom,tm}", :base => base_path);
|
63
|
+
|
64
|
+
read_attempts = 0
|
65
|
+
while files.size > 0 && read_attempts < 5
|
66
|
+
processing = files.map(&:clone)
|
67
|
+
files = []
|
68
|
+
threads = []
|
69
|
+
processing.each do |f|
|
70
|
+
threads << Thread.new do
|
71
|
+
begin
|
72
|
+
raw_file = File.read(base_path + "/" + f)
|
73
|
+
component = load_component(raw_file)
|
74
|
+
|
75
|
+
transform_component(f, component).each do |transformed_component|
|
76
|
+
add_structure(site.config["_array_structures"], transformed_component)
|
77
|
+
end
|
78
|
+
rescue
|
79
|
+
Thread.current[:output] = f
|
80
|
+
end
|
69
81
|
end
|
70
82
|
end
|
83
|
+
threads.each do |t|
|
84
|
+
t.join
|
85
|
+
files << t[:output] if t[:output]
|
86
|
+
end
|
87
|
+
Jekyll.logger.info "Bookshop:",
|
88
|
+
"Had trouble reading #{files.size} file(s), retrying" if files.size > 0
|
89
|
+
read_attempts += 1
|
90
|
+
end
|
91
|
+
|
92
|
+
if files.size > 0
|
93
|
+
Jekyll.logger.error "Bookshop:",
|
94
|
+
"❌ Failed to read #{files.size} file(s)"
|
95
|
+
files.each do |f|
|
96
|
+
Jekyll.logger.error "Bookshop:",
|
97
|
+
"❌ Failed to read #{f}"
|
98
|
+
end
|
99
|
+
Jekyll.logger.error "Bookshop:",
|
100
|
+
"❌ Check your TOML files are valid."
|
101
|
+
exit 1
|
71
102
|
end
|
72
|
-
threads.each(&:join)
|
73
103
|
end
|
74
104
|
|
75
105
|
def self.setup_helpers
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@bookshop/cloudcannon-structures",
|
3
|
-
"version": "2.0.
|
3
|
+
"version": "2.0.6",
|
4
4
|
"description": "Convert a Bookshop object into a CloudCannon structure",
|
5
5
|
"main": "main.js",
|
6
6
|
"scripts": {
|
@@ -16,7 +16,7 @@
|
|
16
16
|
"access": "public"
|
17
17
|
},
|
18
18
|
"devDependencies": {
|
19
|
-
"@bookshop/toml-narrator": "2.0.
|
19
|
+
"@bookshop/toml-narrator": "2.0.6",
|
20
20
|
"@ltd/j-toml": "^1.17.0",
|
21
21
|
"ava": "^3.15.0",
|
22
22
|
"nyc": "^15.1.0",
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cloudcannon-jekyll-bookshop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Liam Bigelow
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-10-
|
11
|
+
date: 2021-10-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -51,7 +51,7 @@ dependencies:
|
|
51
51
|
- !ruby/object:Gem::Version
|
52
52
|
version: '3.0'
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
|
-
name: node-runner
|
54
|
+
name: node-runner-temp-fix-windows
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
56
56
|
requirements:
|
57
57
|
- - ">="
|