cloudcannon-jekyll 3.0.2 → 3.1.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 513b1c1c89c2e6e713b7d1f82496400f8f5f6e60c765c0b68561b5e8cd809f34
4
- data.tar.gz: 1b2b100c5841ff0d833c82b50d64615b81c07f8cab17dd1bede470f55a2a9b4e
3
+ metadata.gz: 0fed35269d24b4a1fd24b64ff5d89264e69e31b4d2b1451923824ae994ed43df
4
+ data.tar.gz: 3f0338deb85d35b56f577f90408ad11660479a05d203ce4b5a17588b44439e0c
5
5
  SHA512:
6
- metadata.gz: 1fbc774784b2c71e1d6bce5e4b0ee9dbee6b2c830b860a3d52a33cf49d14fedd1567bb041c201ad8400a1e05fabe82a8d2daee787e4d5255b7b00df0716df078
7
- data.tar.gz: 2715611c238b1fdf22896bbc4a07b0070209149f03e38e075ab1db4eaae49243344a21a8774312996fb8e27eba9c9d59b0494ce0f73cba7cba60551175291f64
6
+ metadata.gz: 20e086e703f86bf8221b88cc9e419b7f1715976a42fa736a0e0d08df2a1e062b583f0bfdb201f2ee5bfde4cbd1e8a2a8bb0f23436eaba8e5b3275467fec9e08e
7
+ data.tar.gz: 728c3feb864fcc8eed871fd188d4304870733e66074657af3a5ceeef4760d4f38478b59dacfa606c454adde6ff8ba15e45f0da82082535858316cc666d76b027
data/HISTORY.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 3.1.0
2
+
3
+ * Add options for ignoring and preventing parsing collections
4
+ * Fix potential null reference
5
+
1
6
  # 3.0.2
2
7
 
3
8
  * Remove excerpt from output
@@ -24,7 +24,8 @@ module CloudCannonJekyll
24
24
 
25
25
  def generate_collections_config
26
26
  collections = @site.config['collections'] || {}
27
- collections_config = @config['collections_config']&.dup || {}
27
+ input_collections_config = @config['collections_config'] || {}
28
+ collections_config = input_collections_config.reject { |_, v| v == false }
28
29
 
29
30
  return collections_config if @config['collections_config_override']
30
31
 
@@ -56,6 +57,8 @@ module CloudCannonJekyll
56
57
  collection_keys = (defaults.keys + collections.keys).uniq
57
58
 
58
59
  collection_keys.each do |key|
60
+ next if input_collections_config[key] == false
61
+
59
62
  processed = (defaults[key] || {})
60
63
  .merge(collections[key] || {})
61
64
  .merge(collections_config[key] || {})
@@ -71,6 +74,8 @@ module CloudCannonJekyll
71
74
  end
72
75
 
73
76
  @split_posts.each_key do |key|
77
+ next if input_collections_config[key] == false
78
+
74
79
  posts_path = @split_posts[key]&.first&.relative_path&.sub(%r{(^|/)_posts.*}, '\1_posts')
75
80
  next unless posts_path
76
81
 
@@ -84,6 +89,8 @@ module CloudCannonJekyll
84
89
  end
85
90
 
86
91
  @split_drafts.each_key do |key|
92
+ next if input_collections_config[key] == false
93
+
87
94
  drafts_path = @split_drafts[key]&.first&.relative_path&.sub(%r{(^|/)_drafts.*}, '\1_drafts')
88
95
  next unless drafts_path
89
96
 
@@ -113,6 +120,10 @@ module CloudCannonJekyll
113
120
  collections_config.each_key do |key|
114
121
  next if key == 'data'
115
122
 
123
+ collections[key] ||= []
124
+
125
+ next if collections_config.dig(key, 'parser') == false
126
+
116
127
  collections[key] = if key == 'posts' || key.end_with?('/posts')
117
128
  @split_posts[key]
118
129
  elsif key == 'drafts' || key.end_with?('/drafts')
@@ -167,14 +178,12 @@ module CloudCannonJekyll
167
178
  end
168
179
 
169
180
  def legacy_document_data(doc)
170
- data = doc.data.merge(
171
- {
172
- categories: doc.categories,
173
- tags: doc.tags,
174
- date: doc.date
175
- }
176
- )
181
+ legacy_data = {}
182
+ legacy_data['categories'] = doc.categories if doc.respond_to?(:categories)
183
+ legacy_data['tags'] = doc.tags if doc.respond_to?(:tags)
184
+ legacy_data['date'] = doc.date if doc.respond_to?(:date)
177
185
 
186
+ data = doc.data.merge(legacy_data)
178
187
  data['slug'] = doc.slug if doc.respond_to?(:slug)
179
188
  data
180
189
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CloudCannonJekyll
4
- VERSION = '3.0.2'
4
+ VERSION = '3.1.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudcannon-jekyll
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - CloudCannon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-21 00:00:00.000000000 Z
11
+ date: 2022-04-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -120,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  - !ruby/object:Gem::Version
121
121
  version: '0'
122
122
  requirements: []
123
- rubygems_version: 3.0.3
123
+ rubygems_version: 3.1.6
124
124
  signing_key:
125
125
  specification_version: 4
126
126
  summary: CloudCannon Jekyll integration