ndr_dev_support 2.1.1 → 2.1.2

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: ff79dd76561dbabac2a6f54db5b1dadc19439165
4
- data.tar.gz: 1033b76bb6f51a15b9a2fe66a0e475d793102c40
3
+ metadata.gz: b462909165b10c8d687b0748b757ee8a797766bc
4
+ data.tar.gz: bfaa3539a90a7b010f81e12d31c2852a25f1a6e4
5
5
  SHA512:
6
- metadata.gz: 2d0228f1592a2ed805c9191d64de4d91abbcda9b9e180ae2e00ff50369171125e06d10daa37bd5be50803574597231c41af2afe5f4b5375b9afb3a831ebfd480
7
- data.tar.gz: f3f5e3fe9406928742b403eff426e2283eb5117a4b80b1762a87a878b3ac6f1b29ac31b0085dd5d7cc8f4e615cf62b8175f3e6ac010a000fcd2f752189d18fda
6
+ metadata.gz: 202df7fbda561139125efae9eeb3ba6e1753c0252c8e3097a6febb0668a81e866bb2daf1ba8f6480dafb6ecd37cabd1123d7f1a798869ef825a21ea7336f428f
7
+ data.tar.gz: abf58184c149a5053dc394ef41184e54b733a4fe5aaa01be61b3455f11765c5d1aabf91af8a927efdff74d83a3dbcfcbafeac72dc1ceb9ee00fb8cc7216fb26e
@@ -0,0 +1,10 @@
1
+ fail_on_violations: true
2
+
3
+ coffeescript:
4
+ enabled: false
5
+ javascript:
6
+ enabled: false
7
+ ruby:
8
+ config_file: .rubocop.yml
9
+ scss:
10
+ enabled: false
@@ -35,8 +35,8 @@ Style/FrozenStringLiteralComment:
35
35
  # We're not confident enough to make this recommendation everywhere
36
36
  Enabled: false
37
37
 
38
- Style/IfUnlessModifier:
39
- MaxLineLength: 100
38
+ Metrics/LineLength:
39
+ Max: 100
40
40
 
41
41
  Style/ModuleFunction:
42
42
  # `extend self` has fewer side effects than `module_function`.
@@ -50,8 +50,11 @@ Style/SingleLineBlockParams:
50
50
  # Prefer readability of contextually-named variables.
51
51
  Enabled: false
52
52
 
53
- Style/WhileUntilModifier:
54
- MaxLineLength: 100
53
+ ####################### Performance ############################
54
+
55
+ # Disagree; readabilty trumps here IMO.
56
+ Performance/Casecmp:
57
+ Enabled: false
55
58
 
56
59
  ##################### Metrics ##################################
57
60
  # NOTE: we bump some metrics by 50%, in recognition of Rubocop's
@@ -4,10 +4,14 @@ file safety:
4
4
  comments:
5
5
  reviewed_by: timgentry
6
6
  safe_revision: c59a45986f8b6d087c8c21b1e889f31f7346da17
7
+ ".hound.yml":
8
+ comments:
9
+ reviewed_by: timgentry
10
+ safe_revision: c03d4ff0dd037a2798563d464d0daeca1189debe
7
11
  ".rubocop.yml":
8
12
  comments:
9
13
  reviewed_by: timgentry
10
- safe_revision: 7256d6b694c7f3a62769b7d8ef56f32b93772ff9
14
+ safe_revision: ac89be1deb3d47e9fb00ac2de424116593012074
11
15
  ".travis.yml":
12
16
  comments:
13
17
  reviewed_by: josh.pencheon
@@ -87,12 +91,12 @@ file safety:
87
91
  lib/ndr_dev_support/version.rb:
88
92
  comments:
89
93
  reviewed_by: timgentry
90
- safe_revision: 32aea472f527924ab3dad90b5116cc1c5716c3e8
94
+ safe_revision: fde5bc348b5393ab95b8f0e8d5cae9df29a85f34
91
95
  lib/tasks/audit_code.rake:
92
96
  comments: Identical to the version reviewed by josh.pencheon when contained within
93
97
  ndr_support
94
98
  reviewed_by: timgentry
95
- safe_revision: 063ba98f4ce8449cf586231dd9630a28aacc0743
99
+ safe_revision: 4813e92fc951a3c033c08c848a9e07e8d5867133
96
100
  lib/tasks/rubocop.rake:
97
101
  comments:
98
102
  reviewed_by: josh.pencheon
@@ -100,7 +104,7 @@ file safety:
100
104
  ndr_dev_support.gemspec:
101
105
  comments:
102
106
  reviewed_by: timgentry
103
- safe_revision: 6436fb4ccee84240eec27f56f6f59528a10442e7
107
+ safe_revision: ac89be1deb3d47e9fb00ac2de424116593012074
104
108
  test/ndr_dev_support_test.rb:
105
109
  comments:
106
110
  reviewed_by: timgentry
@@ -2,5 +2,5 @@
2
2
  # This defines the NdrDevSupport version. If you change it, rebuild and commit the gem.
3
3
  # Use "rake build" to build the gem, see rake -T for all bundler rake tasks (and our own).
4
4
  module NdrDevSupport
5
- VERSION = '2.1.1'.freeze
5
+ VERSION = '2.1.2'.freeze
6
6
  end
@@ -13,6 +13,11 @@ SAFETY_FILE =
13
13
  # Temporary overrides to only audit external access files
14
14
  SAFETY_REPOS = [['/svn/era', '/svn/extra/era/external-access']]
15
15
 
16
+ # Returns the (Bundler aware) rake command
17
+ def rake_cmd
18
+ ENV['BUNDLE_BIN_PATH'] ? 'bundle exec rake' : 'rake'
19
+ end
20
+
16
21
  # Parameter max_print is number of entries to print before truncating output
17
22
  # (negative value => print all)
18
23
  def audit_code_safety(max_print = 20, ignore_new = false, show_diffs = false, show_in_priority = false, user_name = 'usr')
@@ -57,7 +62,8 @@ def audit_code_safety(max_print = 20, ignore_new = false, show_diffs = false, sh
57
62
  file_safety[f] = {
58
63
  'comments' => nil,
59
64
  'reviewed_by' => nil,
60
- 'safe_revision' => nil }
65
+ 'safe_revision' => nil
66
+ }
61
67
  end
62
68
  File.open(SAFETY_FILE, 'w') do |file|
63
69
  # Consistent file diffs, as ruby preserves Hash insertion order since v1.9
@@ -72,19 +78,19 @@ def audit_code_safety(max_print = 20, ignore_new = false, show_diffs = false, sh
72
78
  puts "Number of new files added: #{file_safety.size - orig_count}"
73
79
 
74
80
  missing_files = file_safety.keys.reject { |path| File.file?(path) }
75
-
81
+
76
82
  if missing_files.length > 0
77
83
  puts "Number of files no longer in repository but in code_safety.yml: #{missing_files.length}"
78
- puts " Please run rake audit:tidy_code_safety_file to remove redundant files"
79
- missing_files.each { |path| puts " " + path }
84
+ puts " Please run #{rake_cmd} audit:tidy_code_safety_file to remove redundant files"
85
+ missing_files.each { |path| puts ' ' + path }
80
86
  end
81
87
 
82
88
  # Now generate statistics:
83
89
  unknown = file_safety.values.select { |x| x['safe_revision'].nil? }
84
90
  unsafe = file_safety.values.select do |x|
85
91
  !x['safe_revision'].nil? && x['safe_revision'] != -1 &&
86
- x['last_changed_rev'] != x['safe_revision'] &&
87
- !(x['last_changed_rev'] =~ /^[0-9]+$/ && x['safe_revision'] =~ /^[0-9]+$/ &&
92
+ x['last_changed_rev'] != x['safe_revision'] &&
93
+ !(x['last_changed_rev'] =~ /^[0-9]+$/ && x['safe_revision'] =~ /^[0-9]+$/ &&
88
94
  x['last_changed_rev'].to_i < x['safe_revision'].to_i)
89
95
  end
90
96
  puts "Number of files with no safe version: #{unknown.size}"
@@ -196,7 +202,7 @@ def repository_type
196
202
  @repository_type ||= if Dir.exist?('.svn') || system("svn info . > /dev/null 2>&1")
197
203
  'svn'
198
204
  elsif Dir.exist?('.git') && open('.git/config').grep(/svn/).any?
199
- 'git-svn'
205
+ 'git-svn'
200
206
  elsif Dir.exist?('.git') && open('.git/config').grep(/git/).any?
201
207
  'git'
202
208
  else
@@ -209,17 +215,17 @@ def get_trunk_repo
209
215
  when 'svn'
210
216
  repo_info = %x[svn info]
211
217
  puts 'svn case'
212
- return repo_info.split("\n").select { |x| x =~ /^URL: / }.collect { |x| x[5..-1] }.first
218
+ repo_info.split("\n").select { |x| x =~ /^URL: / }.collect { |x| x[5..-1] }.first
213
219
  when 'git-svn'
214
220
  puts 'git-svn case'
215
221
  repo_info = %x[git svn info]
216
- return repo_info.split("\n").select { |x| x =~ /^URL: / }.collect { |x| x[5..-1] }.first
222
+ repo_info.split("\n").select { |x| x =~ /^URL: / }.collect { |x| x[5..-1] }.first
217
223
  when 'git'
218
224
  puts 'git case'
219
225
  repo_info = %x[git remote -v]
220
- return repo_info.split("\n").first[7..-9]
226
+ repo_info.split("\n").first[7..-9]
221
227
  else
222
- return 'Information not available. Unknown repository type'
228
+ 'Information not available. Unknown repository type'
223
229
  end
224
230
  end
225
231
 
@@ -359,7 +365,7 @@ def print_repo_file_diffs(repolatest, repo, fname, user_name, safe_revision)
359
365
  end
360
366
  if cmd
361
367
  puts(cmd.join(' '))
362
- stdout_and_err_str, status = Open3.capture2e(*cmd)
368
+ stdout_and_err_str, _status = Open3.capture2e(*cmd)
363
369
  puts 'Invalid commit ID in code_safety.yml ' + safe_revision if stdout_and_err_str.start_with?('fatal: Invalid revision range ')
364
370
  puts(stdout_and_err_str)
365
371
  else
@@ -367,7 +373,8 @@ def print_repo_file_diffs(repolatest, repo, fname, user_name, safe_revision)
367
373
  end
368
374
 
369
375
  puts %(To flag the changes to this file as safe, run:)
370
- puts %( rake audit:safe release=#{repolatest} file=#{fname} reviewed_by=#{user_name} comments="")
376
+ puts " #{rake_cmd} audit:safe release=#{repolatest} file=#{fname} reviewed_by=#{user_name}" \
377
+ ' comments=""'
371
378
  puts
372
379
  end
373
380
 
@@ -397,27 +404,27 @@ def get_release
397
404
  end
398
405
 
399
406
  def clean_working_copy?
400
- case repository_type
401
- when 'svn'
402
- system('svn status | grep -q [^AMCDG]')
403
- when 'git', 'git-svn'
404
- system('git diff --quiet HEAD')
405
- end
407
+ case repository_type
408
+ when 'svn'
409
+ system('svn status | grep -q [^AMCDG]')
410
+ when 'git', 'git-svn'
411
+ system('git diff --quiet HEAD')
412
+ end
406
413
  end
407
414
 
408
415
  def remove_non_existent_files_from_code_safety
409
416
  safety_cfg = YAML.load_file(SAFETY_FILE)
410
417
  file_safety = safety_cfg['file safety']
411
- files_no_longer_in_repo = file_safety.keys.reject {|ff| File.file?(ff)}
418
+ files_no_longer_in_repo = file_safety.keys.reject { |ff| File.file?(ff) }
412
419
  files_no_longer_in_repo.each do |f|
413
- puts 'No longer in repository ' + f
420
+ puts 'No longer in repository ' + f
414
421
  file_safety.delete f
415
- end
422
+ end
416
423
  File.open(SAFETY_FILE, 'w') do |file|
417
424
  # Consistent file diffs, as ruby preserves Hash insertion order since v1.9
418
425
  safety_cfg['file safety'] = Hash[file_safety.sort]
419
426
  YAML.dump(safety_cfg, file) # Save changes before checking latest revisions
420
- end
427
+ end
421
428
  end
422
429
 
423
430
  namespace :audit do
@@ -440,17 +447,16 @@ files which have changed since they were last verified as safe."
440
447
  all_safe = audit_code_safety(max_print, ignore_new, show_diffs, show_in_priority, reviewer)
441
448
 
442
449
  unless show_diffs
443
- puts 'To show file diffs, run: rake audit:code max_print=-1 show_diffs=true'
450
+ puts "To show file diffs, run: #{rake_cmd} audit:code max_print=-1 show_diffs=true"
444
451
  end
445
452
 
446
453
  exit(1) unless all_safe
447
454
  end
448
455
 
449
456
  desc "Flag a source file as safe.
450
-
451
457
  Usage:
452
- Flag as safe: rake audit:safe release=revision reviewed_by=usr [comments=...] file=f
453
- Needs review: rake audit:safe release=0 [comments=...] file=f"
458
+ Flag as safe: #{rake_cmd} audit:safe release=revision reviewed_by=usr [comments=...] file=f
459
+ Needs review: #{rake_cmd} audit:safe release=0 [comments=...] file=f"
454
460
  task(:safe) do
455
461
  release = get_release
456
462
 
@@ -458,14 +464,14 @@ Usage:
458
464
  required_fields << 'reviewed_by' if release # 'Needs review' doesn't need a reviewer
459
465
  missing = required_fields.collect { |f| (f if ENV[f].to_s.empty? || (f == 'reviewed_by' && ENV[f] == 'usr')) }.compact # Avoid accidental missing username
460
466
  unless missing.empty?
461
- puts 'Usage: rake audit:safe release=revision reviewed_by=usr [comments=...] file=f'
462
- puts 'or, to flag a file for review: rake audit:safe release=0 [comments=...] file=f'
467
+ puts "Usage: #{rake_cmd} audit:safe release=revision reviewed_by=usr [comments=...] file=f"
468
+ puts "or, to flag a file for review: #{rake_cmd} audit:safe release=0 [comments=...] file=f"
463
469
  abort("Error: Missing required argument(s): #{missing.join(', ')}")
464
470
  end
465
471
 
466
472
  unless release.nil? || release_valid?(release)
467
- puts 'Usage: rake audit:safe release=revision reviewed_by=usr [comments=...] file=f'
468
- puts 'or, to flag a file for review: rake audit:safe release=0 [comments=...] file=f'
473
+ puts "Usage: #{rake_cmd} audit:safe release=revision reviewed_by=usr [comments=...] file=f"
474
+ puts "or, to flag a file for review: #{rake_cmd} audit:safe release=0 [comments=...] file=f"
469
475
  abort("Error: Invalid release: #{ENV['release']}")
470
476
  end
471
477
 
@@ -495,7 +501,7 @@ Usage:
495
501
  rescue SystemExit => ex
496
502
  puts '=============================================================='
497
503
  puts 'Code safety review of some files are not up-to-date; aborting!'
498
- puts ' - to review the files in question, run: rake audit:code'
504
+ puts " - to review the files in question, run: #{rake_cmd} audit:code"
499
505
  puts '=============================================================='
500
506
 
501
507
  raise ex
@@ -505,4 +511,3 @@ end
505
511
 
506
512
  # Prevent building of un-reviewed gems:
507
513
  task build: :'audit:ensure_safe'
508
-
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.add_dependency 'pry'
24
24
 
25
25
  # Rubocop dependencies:
26
- spec.add_dependency 'rubocop', '0.44.1'
26
+ spec.add_dependency 'rubocop', '0.52.1'
27
27
  spec.add_dependency 'parser'
28
28
  spec.add_dependency 'rainbow'
29
29
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ndr_dev_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - NCRS Development Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-05-22 00:00:00.000000000 Z
11
+ date: 2018-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 0.44.1
33
+ version: 0.52.1
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 0.44.1
40
+ version: 0.52.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: parser
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -157,6 +157,7 @@ extensions: []
157
157
  extra_rdoc_files: []
158
158
  files:
159
159
  - ".gitignore"
160
+ - ".hound.yml"
160
161
  - ".rubocop.yml"
161
162
  - ".travis.yml"
162
163
  - CODE_OF_CONDUCT.md