penman 0.5.10 → 0.6.10

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
  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