penman 0.5.10 → 0.6.10

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
  SHA1:
3
- metadata.gz: a96b730b1fb4a163b81eae04fba027a66fd3e5a1
4
- data.tar.gz: 45eebf42c944b0852ef8cfc91dacd07c2b98f8a2
3
+ metadata.gz: 47b1baf87461019b679093c6dfd02594e22ed6a5
4
+ data.tar.gz: 85567dfb47568fdba2247bac0cf3f1ea9722ecec
5
5
  SHA512:
6
- metadata.gz: cf270391b6ded5c16ad36d0a069e95a442b21ed5afdc41887c7c5d414ee8b101d9a38a8856a1b22dca23483ef86ed2deabe95e690eebf63418bf5c11b9f81242
7
- data.tar.gz: 1d2f57f13cbc28d34cd94b14804433eecbd7d77cbeb900d439cb4cdf4bc8c55d15e09fea604ec8471e02bee7f708223f5d8c78c1401a7ff6a60ddb4fa51e00a4
6
+ metadata.gz: 9971f30ebacf29ad1a7f81912d2e7302a731ffda9c088c4bda702e05c43a497ddab981a988d80f3e437f0a4cd504624b052123deb6bbfba916286796875a325f
7
+ data.tar.gz: 2b04249ea44765b12947917d814f6e6fd357282aa500d208ed563afb9f97473640abcc0049b16cec733a308fdff4fa752e39ac9f6dea36597d87645cc46feeb0
@@ -115,6 +115,11 @@ module Penman
115
115
  RecordTag.where(record_type: models.map { |m| (m.is_a? String) ? m : m.name })
116
116
  end
117
117
 
118
+ def valid_ordered_models_for_seeds(models)
119
+ valid_models = @@taggable_models & models
120
+ seed_order(valid_models)
121
+ end
122
+
118
123
  def create_custom(attributes = {})
119
124
  attributes = { record_type: 'custom_tag', tag: 'touched', candidate_key: 'n/a' }.merge attributes
120
125
  record_tag = RecordTag.find_or_create_by(attributes)
@@ -122,10 +127,13 @@ module Penman
122
127
  end
123
128
 
124
129
  def generate_seeds
125
- generate_seed_for_models(seed_order)
130
+ generate_seeds_for_models(seed_order)
126
131
  end
127
132
 
128
- def generate_seed_for_models(models)
133
+ def generate_seeds_for_models(models)
134
+ models = valid_ordered_models_for_seeds(models)
135
+ return [] if models.empty?
136
+
129
137
  time = Time.now
130
138
  seed_files = []
131
139
 
@@ -139,7 +147,7 @@ module Penman
139
147
  time += 1.second
140
148
  end
141
149
 
142
- RecordTag.where(record_type: models.map(&:name)).destroy_all
150
+ RecordTag.where(record_type: models.map(&:name)).delete_all
143
151
  seed_files.compact
144
152
  end
145
153
 
@@ -174,9 +182,9 @@ module Penman
174
182
  @@roots -= @@tree[model]
175
183
  end
176
184
 
177
- def seed_order
185
+ def seed_order(models = @@taggable_models)
178
186
  reset_tree
179
- @@taggable_models.each { |m| add_model_to_tree(m) }
187
+ models.each { |m| add_model_to_tree(m) }
180
188
 
181
189
  seed_order = []
182
190
 
@@ -1,6 +1,6 @@
1
1
  module Penman
2
2
  MAJOR = 0 # api
3
- MINOR = 5 # features
3
+ MINOR = 6 # features
4
4
  PATCH = 10 # bug fixes
5
5
 
6
6
  VERSION = [MAJOR, MINOR, PATCH].compact.join('.')
data/lib/penman.rb CHANGED
@@ -36,4 +36,8 @@ module Penman
36
36
  def self.generate_seeds
37
37
  RecordTag.generate_seeds
38
38
  end
39
+
40
+ def self.generate_seeds_for_models(models)
41
+ RecordTag.generate_seeds_for_models(models)
42
+ end
39
43
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: penman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.10
4
+ version: 0.6.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mat Pataki
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-21 00:00:00.000000000 Z
11
+ date: 2016-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails