annotate 2.6.1 → 2.6.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/CHANGELOG.rdoc +5 -0
- data/annotate.gemspec +5 -7
- data/bin/annotate +2 -2
- data/lib/annotate/annotate_models.rb +26 -39
- data/lib/annotate/version.rb +1 -1
- data/{tasks → lib/tasks}/migrate.rake +0 -0
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
OTk0YjllMjkxZmIzMDQwNDA3ZTNjZGYyOTFjM2E4NDNhYzgyN2RiNQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NGE3NjA2ODE2ZGExNDZiNGMzOWRiM2I4MDFiZDg2NGFmNmM3NjdhOA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZDIwZTMxMDBhOTg2MzEzZmY2N2M4ZTY1MTdjMjQ5ZjE2YTYyNjNmNGQ3N2Vi
|
10
|
+
NWUxNzM1YzdmZDc4NjRlYTQyYjk0ZmZhMmRlYWUzN2E0NmY5NjhmM2QyOGU5
|
11
|
+
NWZhODZkMGJiMjdmMzNjODkwOWIyM2JkMGYwNDQwZDZjNzM1YmU=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZDZjM2M2YjczZmEzMDM1NDVjNWIyMmJhM2UzOTZiZTlkM2I0OGVmZmRmNWQ3
|
14
|
+
ZGNjNzdkYWJmZWFhNzMzMWU2MDZhNGZmM2RiZjJkN2YyMzUwNmI5ZDU0ODhj
|
15
|
+
ZjVkNzhmZTJhYjk1MTRjYjg4N2JmODIyMTc0MzA2NDBmZGI1ZjI=
|
data/CHANGELOG.rdoc
CHANGED
data/annotate.gemspec
CHANGED
@@ -1,20 +1,18 @@
|
|
1
|
-
#
|
2
|
-
# DO NOT EDIT THIS FILE DIRECTLY!
|
3
|
-
# Instead, edit the Rakefile and run 'rake gems:gemspec'.# -*- encoding: utf-8 -*-
|
1
|
+
# -*- encoding: utf-8 -*-
|
4
2
|
# stub: annotate 2.6.1 ruby lib
|
5
3
|
|
6
4
|
Gem::Specification.new do |s|
|
7
5
|
s.name = "annotate"
|
8
|
-
s.version = "2.6.
|
6
|
+
s.version = "2.6.2"
|
9
7
|
|
10
8
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
9
|
s.authors = ["Cuong Tran", "Alex Chaffee", "Marcos Piccinini", "Turadg Aleahmad", "Jon Frisby"]
|
12
|
-
s.date = "
|
10
|
+
s.date = "2014-02-26"
|
13
11
|
s.description = "Annotates Rails/ActiveRecord Models, routes, fixtures, and others based on the database schema."
|
14
|
-
s.email = ["alex@stinky.com", "
|
12
|
+
s.email = ["alex@stinky.com", "cuong.tran@gmail.com", "x@nofxx.com", "turadg@aleahmad.net", "jon@cloudability.com"]
|
15
13
|
s.executables = ["annotate"]
|
16
14
|
s.extra_rdoc_files = ["README.rdoc", "CHANGELOG.rdoc", "TODO.rdoc"]
|
17
|
-
s.files = ["AUTHORS.rdoc", "CHANGELOG.rdoc", "LICENSE.txt", "README.rdoc", "TODO.rdoc", "annotate.gemspec", "bin/annotate", "lib/annotate.rb", "lib/annotate/active_record_patch.rb", "lib/annotate/annotate_models.rb", "lib/annotate/annotate_routes.rb", "lib/annotate/tasks.rb", "lib/annotate/version.rb", "lib/generators/annotate/USAGE", "lib/generators/annotate/install_generator.rb", "lib/generators/annotate/templates/auto_annotate_models.rake", "lib/tasks/annotate_models.rake", "lib/tasks/annotate_routes.rake", "tasks/migrate.rake"]
|
15
|
+
s.files = ["AUTHORS.rdoc", "CHANGELOG.rdoc", "LICENSE.txt", "README.rdoc", "TODO.rdoc", "annotate.gemspec", "bin/annotate", "lib/annotate.rb", "lib/annotate/active_record_patch.rb", "lib/annotate/annotate_models.rb", "lib/annotate/annotate_routes.rb", "lib/annotate/tasks.rb", "lib/annotate/version.rb", "lib/generators/annotate/USAGE", "lib/generators/annotate/install_generator.rb", "lib/generators/annotate/templates/auto_annotate_models.rake", "lib/tasks/annotate_models.rake", "lib/tasks/annotate_routes.rake", "lib/tasks/migrate.rake"]
|
18
16
|
s.homepage = "http://github.com/ctran/annotate_models"
|
19
17
|
s.licenses = ["Ruby"]
|
20
18
|
s.require_paths = ["lib"]
|
data/bin/annotate
CHANGED
@@ -119,8 +119,8 @@ OptionParser.new do |opts|
|
|
119
119
|
end
|
120
120
|
end
|
121
121
|
|
122
|
-
opts.on('-e', '--exclude [
|
123
|
-
exclusions ||= %w(tests fixtures factories)
|
122
|
+
opts.on('-e', '--exclude [tests,fixtures,factories]', Array, "Do not annotate fixtures, test files, and/or factories") do |exclusions|
|
123
|
+
exclusions ||= %w(tests fixtures factories)
|
124
124
|
exclusions.each { |exclusion| ENV["exclude_#{exclusion}"] = "yes" }
|
125
125
|
end
|
126
126
|
|
@@ -31,8 +31,8 @@ module AnnotateModels
|
|
31
31
|
FABRICATORS_SPEC_DIR = File.join("spec", "fabricators")
|
32
32
|
|
33
33
|
TEST_PATTERNS = [
|
34
|
-
|
35
|
-
|
34
|
+
File.join(UNIT_TEST_DIR, "%MODEL_NAME%_test.rb"),
|
35
|
+
File.join(SPEC_MODEL_DIR, "%MODEL_NAME%_spec.rb"),
|
36
36
|
]
|
37
37
|
|
38
38
|
FIXTURE_PATTERNS = [
|
@@ -131,6 +131,11 @@ module AnnotateModels
|
|
131
131
|
end
|
132
132
|
end
|
133
133
|
|
134
|
+
# Check out if we got an array column
|
135
|
+
if col.respond_to?(:array) && col.array
|
136
|
+
attrs << "is an Array"
|
137
|
+
end
|
138
|
+
|
134
139
|
# Check out if we got a geometric column
|
135
140
|
# and print the type and SRID
|
136
141
|
if col.respond_to?(:geometry_type)
|
@@ -227,27 +232,23 @@ module AnnotateModels
|
|
227
232
|
if old_columns == new_columns && !options[:force]
|
228
233
|
return false
|
229
234
|
else
|
235
|
+
# Replace inline the old schema info with the new schema info
|
236
|
+
new_content = old_content.sub(PATTERN, info_block + "\n")
|
230
237
|
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
#
|
236
|
-
#
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
old_content.sub!(encoding, '')
|
246
|
-
old_content.sub!(PATTERN, '')
|
247
|
-
|
248
|
-
new_content = options[position].to_s == 'after' ?
|
249
|
-
(encoding_header + (old_content.rstrip + "\n\n" + info_block)) :
|
250
|
-
(encoding_header + info_block + "\n" + old_content)
|
238
|
+
if new_content.end_with? (info_block + "\n")
|
239
|
+
new_content = old_content.sub(PATTERN, "\n" + info_block)
|
240
|
+
end
|
241
|
+
|
242
|
+
# if there *was* no old schema info (no substitution happened) or :force was passed,
|
243
|
+
# we simply need to insert it in correct position
|
244
|
+
if new_content == old_content || options[:force]
|
245
|
+
old_content.sub!(encoding, '')
|
246
|
+
old_content.sub!(PATTERN, '')
|
247
|
+
|
248
|
+
new_content = options[position].to_s == 'after' ?
|
249
|
+
(encoding_header + (old_content.rstrip + "\n\n" + info_block)) :
|
250
|
+
(encoding_header + info_block + "\n" + old_content)
|
251
|
+
end
|
251
252
|
|
252
253
|
File.open(file_name, "wb") { |f| f.puts new_content }
|
253
254
|
return true
|
@@ -301,8 +302,7 @@ module AnnotateModels
|
|
301
302
|
|
302
303
|
unless options[:exclude_tests]
|
303
304
|
did_annotate = TEST_PATTERNS.
|
304
|
-
map { |
|
305
|
-
map { |pat| find_test_file(*pat) }.
|
305
|
+
map { |file| resolve_filename(file, model_name, table_name) }.
|
306
306
|
map { |file| annotate_one_file(file, info, :position_in_test, options_with_position(options, :position_in_test)) }.
|
307
307
|
detect { |result| result } || did_annotate
|
308
308
|
end
|
@@ -370,7 +370,7 @@ module AnnotateModels
|
|
370
370
|
# in subdirectories without namespacing.
|
371
371
|
def get_model_class(file)
|
372
372
|
# this is for non-rails projects, which don't get Rails auto-require magic
|
373
|
-
require File.expand_path("#{model_dir}/#{file}")
|
373
|
+
require File.expand_path("#{model_dir}/#{file}")
|
374
374
|
model_path = file.gsub(/\.rb$/, '')
|
375
375
|
get_loaded_model(model_path) || get_loaded_model(model_path.split('/').last)
|
376
376
|
end
|
@@ -441,16 +441,7 @@ module AnnotateModels
|
|
441
441
|
model_file_name = File.join(model_dir, file)
|
442
442
|
deannotated_klass = true if(remove_annotation_of_file(model_file_name))
|
443
443
|
|
444
|
-
TEST_PATTERNS.
|
445
|
-
map { |pat| [pat[0], resolve_filename(pat[1], model_name, table_name)]}.
|
446
|
-
map { |pat| find_test_file(*pat) }.each do |file|
|
447
|
-
if(File.exist?(file))
|
448
|
-
remove_annotation_of_file(file)
|
449
|
-
deannotated_klass = true
|
450
|
-
end
|
451
|
-
end
|
452
|
-
|
453
|
-
(FIXTURE_PATTERNS + FACTORY_PATTERNS).
|
444
|
+
(TEST_PATTERNS + FIXTURE_PATTERNS + FACTORY_PATTERNS).
|
454
445
|
map { |file| resolve_filename(file, model_name, table_name) }.
|
455
446
|
each do |file|
|
456
447
|
if File.exist?(file)
|
@@ -468,10 +459,6 @@ module AnnotateModels
|
|
468
459
|
puts "Removed annotations from: #{deannotated.join(', ')}"
|
469
460
|
end
|
470
461
|
|
471
|
-
def find_test_file(dir, file_name)
|
472
|
-
Dir.glob(File.join(dir, "**", file_name)).first || File.join(dir, file_name)
|
473
|
-
end
|
474
|
-
|
475
462
|
def resolve_filename(filename_template, model_name, table_name)
|
476
463
|
return filename_template.
|
477
464
|
gsub('%MODEL_NAME%', model_name).
|
data/lib/annotate/version.rb
CHANGED
File without changes
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: annotate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.6.
|
4
|
+
version: 2.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cuong Tran
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date:
|
15
|
+
date: 2014-02-26 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: rake
|
@@ -50,7 +50,7 @@ description: Annotates Rails/ActiveRecord Models, routes, fixtures, and others b
|
|
50
50
|
on the database schema.
|
51
51
|
email:
|
52
52
|
- alex@stinky.com
|
53
|
-
-
|
53
|
+
- cuong.tran@gmail.com
|
54
54
|
- x@nofxx.com
|
55
55
|
- turadg@aleahmad.net
|
56
56
|
- jon@cloudability.com
|
@@ -80,7 +80,7 @@ files:
|
|
80
80
|
- lib/generators/annotate/templates/auto_annotate_models.rake
|
81
81
|
- lib/tasks/annotate_models.rake
|
82
82
|
- lib/tasks/annotate_routes.rake
|
83
|
-
- tasks/migrate.rake
|
83
|
+
- lib/tasks/migrate.rake
|
84
84
|
homepage: http://github.com/ctran/annotate_models
|
85
85
|
licenses:
|
86
86
|
- Ruby
|