defmastership 1.0.18 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -0
  3. data/.gitlab-ci.yml +42 -1
  4. data/Gemfile +49 -18
  5. data/Guardfile +44 -0
  6. data/LICENSE +1 -1
  7. data/README.adoc +24 -0
  8. data/Rakefile +0 -1
  9. data/bin/defmastership +5 -5
  10. data/config/cucumber.yml +3 -0
  11. data/config/mutant.yml +22 -16
  12. data/config/reek.yml +129 -105
  13. data/config/rubocop.yml +67 -28
  14. data/defmastership.gemspec +8 -6
  15. data/features/changeref.feature +0 -8
  16. data/features/definition_checksum.feature +0 -10
  17. data/features/definition_version.feature +168 -10
  18. data/features/export.feature +23 -18
  19. data/features/modify.feature +1 -5
  20. data/features/rename_included_files.feature +0 -5
  21. data/features/step_definitions/git_steps.rb +19 -0
  22. data/lib/defmastership/batch_modifier.rb +23 -5
  23. data/lib/defmastership/comment_filter.rb +2 -1
  24. data/lib/defmastership/definition.rb +26 -6
  25. data/lib/defmastership/definition_parser.rb +2 -2
  26. data/lib/defmastership/document.rb +45 -33
  27. data/lib/defmastership/export/body_formatter.rb +55 -0
  28. data/lib/defmastership/export/csv/formatter.rb +64 -0
  29. data/lib/defmastership/export/header_formatter.rb +51 -0
  30. data/lib/defmastership/filters.rb +15 -12
  31. data/lib/defmastership/matching_line.rb +3 -2
  32. data/lib/defmastership/modifier/change_ref.rb +117 -0
  33. data/lib/defmastership/modifier/factory.rb +17 -0
  34. data/lib/defmastership/modifier/modifier_common.rb +71 -0
  35. data/lib/defmastership/modifier/rename_included_files.rb +223 -0
  36. data/lib/defmastership/modifier/update_def.rb +72 -0
  37. data/lib/defmastership/modifier/update_def_checksum.rb +17 -0
  38. data/lib/defmastership/modifier/update_def_version.rb +110 -0
  39. data/lib/defmastership/set_join_hack.rb +2 -0
  40. data/lib/defmastership/version.rb +3 -2
  41. data/lib/defmastership.rb +6 -8
  42. data/spec/unit/{def_mastership → defmastership}/batch_modifier_spec.rb +15 -13
  43. data/spec/unit/{def_mastership → defmastership}/definition_parser_spec.rb +1 -1
  44. data/spec/unit/{def_mastership → defmastership}/definition_spec.rb +1 -1
  45. data/spec/unit/{def_mastership → defmastership}/document_spec.rb +57 -57
  46. data/spec/unit/{def_mastership/csv_formatter_body_spec.rb → defmastership/export/body_formatter_spec.rb} +4 -4
  47. data/spec/unit/{def_mastership/csv_formatter_spec.rb → defmastership/export/csv/formatter_spec.rb} +13 -8
  48. data/spec/unit/{def_mastership/csv_formatter_header_spec.rb → defmastership/export/header_formatter_spec.rb} +3 -3
  49. data/spec/unit/{def_mastership → defmastership}/matching_line_spec.rb +1 -1
  50. data/spec/unit/{def_mastership/change_ref_modifier_spec.rb → defmastership/modifier/change_ref_spec.rb} +19 -44
  51. data/spec/unit/defmastership/modifier/factory_spec.rb +45 -0
  52. data/spec/unit/{def_mastership/modifier_spec.rb → defmastership/modifier/modifier_common_spec.rb} +11 -18
  53. data/spec/unit/{def_mastership/rename_included_files_modifier_spec.rb → defmastership/modifier/rename_included_files_spec.rb} +3 -3
  54. data/spec/unit/{def_mastership/update_def_checksum_modifier_spec.rb → defmastership/modifier/update_def_checksum_spec.rb} +10 -10
  55. data/spec/unit/{def_mastership/update_def_modifier_spec.rb → defmastership/modifier/update_def_spec.rb} +22 -18
  56. data/spec/unit/defmastership/modifier/update_def_version_spec.rb +351 -0
  57. data/spec/unit/{def_mastership_spec.rb → defmastership_spec.rb} +2 -2
  58. data/tasks/code_quality.rake +74 -0
  59. data/tasks/documentation.rake +19 -0
  60. data/tasks/package.rake +4 -0
  61. data/tasks/test.rake +6 -21
  62. metadata +96 -51
  63. data/.rubocop.yml +0 -76
  64. data/README.rdoc +0 -6
  65. data/config/devtools.yml +0 -2
  66. data/config/flay.yml +0 -3
  67. data/config/flog.yml +0 -2
  68. data/config/yardstick.yml +0 -2
  69. data/cucumber.yml +0 -2
  70. data/defmastership.rdoc +0 -5
  71. data/lib/defmastership/change_ref_modifier.rb +0 -99
  72. data/lib/defmastership/constants.rb +0 -89
  73. data/lib/defmastership/csv_formatter.rb +0 -53
  74. data/lib/defmastership/csv_formatter_body.rb +0 -46
  75. data/lib/defmastership/csv_formatter_header.rb +0 -41
  76. data/lib/defmastership/modifier.rb +0 -42
  77. data/lib/defmastership/modifier_factory.rb +0 -12
  78. data/lib/defmastership/parsing_state.rb +0 -31
  79. data/lib/defmastership/rename_included_files_modifier.rb +0 -182
  80. data/lib/defmastership/update_def_checksum_modifier.rb +0 -16
  81. data/lib/defmastership/update_def_modifier.rb +0 -49
  82. data/lib/defmastership/update_def_version_modifier.rb +0 -66
  83. data/spec/unit/def_mastership/modifier_factory_spec.rb +0 -37
  84. data/spec/unit/def_mastership/parsing_state_spec.rb +0 -62
  85. data/spec/unit/def_mastership/update_def_version_modifier_spec.rb +0 -159
  86. data/tasks/package.task +0 -9
  87. data/tasks/smelling_code.rake +0 -38
  88. /data/{.rspec → config/rspec} +0 -0
  89. /data/spec/unit/{def_mastership → defmastership}/string_spec.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 995e93909012fff3a4dcbeb55605d6e8754e24c3868f63d3000ed1c6674809c7
4
- data.tar.gz: 94ae5225d555eb837017ebe243a69bfec21feb0882d14a3329b48f2b016c1ba2
3
+ metadata.gz: 57c8ecae1a1c2e304a23c513b3a65b6c112da30ccaf75fb7f137f9247e9db36c
4
+ data.tar.gz: 2730ff7b5ef8838d4a131f182099479935ab347f0505b3a5518e6561bc30eb8c
5
5
  SHA512:
6
- metadata.gz: 48169bb5cfc6bea00209d60619cace40a45471e2ff6c2b2543cd8846ca001daac2e6a865c18cf20b95ed5e6102b36328302d91b577a69952acf7e3bc0d79c209
7
- data.tar.gz: 00265e2ed2fc50f527ffba937dd2dae5d3d9f2189c2ada4b451f2504dbfdb96efffa73e1b8e18981055ea43c45458bc9df93479630ec014f2e9ec7b8bafd5cc5
6
+ metadata.gz: d4832d0e97edd679f51fe2223bf8eabe28c8e8e2dc14b9b994c055d24c31e14547b3db9fdb962abd843c86d9c370af1c3d3e662a52833260fc0b40b61f70ba7d
7
+ data.tar.gz: fdbfa9b7b031f10129cb5a7e12c9d3aee542ee86d1f56f406a3e05bd17297a20e99a8ec1ddf537bd61e2f128a0d6d764bdd47659d48e2c9e8166b603bc1ca6df
data/.gitignore CHANGED
@@ -1,3 +1,4 @@
1
+ *~
1
2
  /*_results.html
2
3
  /tmp
3
4
  /coverage
@@ -5,3 +6,6 @@ defmastership-0.0.1.gem
5
6
  /Gemfile.lock
6
7
  /pkg/
7
8
  /.ruby-version
9
+ /doc/
10
+ /.yardoc/
11
+ /whatever
data/.gitlab-ci.yml CHANGED
@@ -1,24 +1,40 @@
1
1
  default:
2
- image: ruby:3.2
2
+ image: ruby:3.3
3
3
  before_script:
4
4
  - apt-get update
5
5
  - ruby -v
6
6
  - which ruby
7
7
  - gem install bundler --no-document
8
8
  - bundle install --jobs $(nproc) "${FLAGS[@]}"
9
+ - git config --global user.email "you@example.com"
10
+ - git config --global user.name "Your Name"
9
11
 
10
12
  bdd:
11
13
  script:
12
14
  - bundle exec rake test:features
15
+ artifacts:
16
+ paths:
17
+ - features_results.html
13
18
 
14
19
  unit tests:
15
20
  script:
16
21
  - bundle exec rake test:spec
22
+ artifacts:
23
+ paths:
24
+ - rspec_results.html
25
+ - coverage/*
17
26
 
18
27
  code_quality:
19
28
  script:
20
29
  - bundle exec rake quality:all
21
30
 
31
+ yard documentation:
32
+ script:
33
+ - bundle exec rake yard
34
+ artifacts:
35
+ paths:
36
+ - doc
37
+
22
38
  bdd ruby2.7:
23
39
  image: ruby:2.7
24
40
  before_script:
@@ -27,6 +43,8 @@ bdd ruby2.7:
27
43
  - which ruby
28
44
  - gem install bundler -v 2.4.22 --no-document
29
45
  - bundle install --jobs $(nproc) "${FLAGS[@]}"
46
+ - git config --global user.email "you@example.com"
47
+ - git config --global user.name "Your Name"
30
48
  script:
31
49
  - bundle exec rake test:features
32
50
 
@@ -40,6 +58,11 @@ bdd ruby3.1:
40
58
  script:
41
59
  - bundle exec rake test:features
42
60
 
61
+ bdd ruby3.2:
62
+ image: ruby:3.2
63
+ script:
64
+ - bundle exec rake test:features
65
+
43
66
  unit tests ruby2.7:
44
67
  image: ruby:2.7
45
68
  before_script:
@@ -61,3 +84,21 @@ unit tests ruby3.1:
61
84
  script:
62
85
  - bundle exec rake test:spec
63
86
 
87
+ unit tests ruby3.2:
88
+ image: ruby:3.2
89
+ script:
90
+ - bundle exec rake test:spec
91
+
92
+ pages:
93
+ stage: deploy
94
+ script:
95
+ - mkdir public
96
+ - cp -r doc/* public
97
+ - cp "features_results.html" public
98
+ - cp "rspec_results.html" public
99
+ - cp -r "coverage" public
100
+ artifacts:
101
+ paths:
102
+ - public
103
+ only:
104
+ - master
data/Gemfile CHANGED
@@ -7,11 +7,28 @@ gemspec
7
7
 
8
8
  ruby RUBY_VERSION
9
9
 
10
+ # rubocop:disable Metrics/BlockLength
10
11
  group :development do
11
12
  # cucumber steps for command line tests
12
- gem 'aruba', '~> 2.2'
13
+ gem 'aruba', '~> 2'
13
14
  # bdd
14
- gem 'cucumber', '~> 9.1'
15
+ gem 'cucumber', '~> 9'
16
+
17
+ # code duplication
18
+ gem 'flay', '~> 2'
19
+
20
+ # automatic test run
21
+ gem 'guard', '~> 2'
22
+ # automatic update invocation
23
+ gem 'guard-bundler', '~> 3'
24
+ if RUBY_VERSION >= '3.0'
25
+ # automatic style check
26
+ gem 'guard-reek', '~> 1.2'
27
+ end
28
+ # automatic tdd
29
+ gem 'guard-rspec', '~> 4'
30
+ # automatic style check
31
+ gem 'guard-rubocop', '~> 1'
15
32
 
16
33
  if RUBY_VERSION >= '3.0'
17
34
  # mutation testing
@@ -19,37 +36,51 @@ group :development do
19
36
  key = '7oac4dMz95cTUuFPtGDfTDSQep6ZhdGW'
20
37
  source "https://#{plan}:#{key}@gem.mutant.dev" do
21
38
  # license needed
22
- gem 'mutant-license', '~> 0.1.1'
39
+ gem 'mutant-license', '~> 0'
23
40
  end
24
41
  # mutation testing
25
- gem 'mutant-rspec', '~> 0.11'
42
+ gem 'mutant-rspec', '~> 0'
26
43
  end
27
-
28
44
  # to parse and execute Rakefile
29
- gem 'rake', '~> 13.1'
45
+ gem 'rake', '~> 13'
46
+
47
+ if RUBY_VERSION >= '3.0'
48
+ # needed by yard to render documentation
49
+ gem 'rdoc', '~> 6'
50
+ end
30
51
  # tdd
31
- gem 'rspec', '~> 3.13'
52
+ gem 'rspec', '~> 3'
32
53
  # # to test performances
33
- # gem 'rspec-benchmark', '~> 0.6.0'
54
+ # gem 'rspec-benchmark', '~> 0'
34
55
  # code needs to be clean
35
- gem 'rubocop', '~> 1.62.0'
56
+ gem 'rubocop', '1.68'
36
57
  # code needs to be clean
37
- gem 'rubocop-performance', '~> 1.20.0'
58
+ gem 'rubocop-performance', '~> 1'
38
59
  # test code needs to be clean
39
- gem 'rubocop-rspec', '~> 2.27.0'
40
- # Rakefiels need to be clean
41
- gem 'rubocop-rake', '~> 0.6'
60
+ gem 'rubocop-rspec', '~> 3'
61
+ # Rakefiles need to be clean
62
+ gem 'rubocop-rake', '~> 0'
63
+
42
64
  if RUBY_VERSION >= '3.0'
43
65
  # detect selling code
44
- gem 'reek', '~> 6.3'
66
+ gem 'reek', '~> 6'
67
+ # my code needs to be critiqued
68
+ gem 'rubycritic', '~> 4'
69
+ # Doc need to be clean
70
+ gem 'rubocop-yard', '~> 0'
45
71
  end
72
+
46
73
  # What is tdd without code coverage ?
47
- gem 'simplecov', '~> 0.22', '< 0.23'
48
- # # to document code
49
- # gem 'yard', '~> 0.9.5'
74
+ gem 'simplecov', '~> 0'
75
+
76
+ if RUBY_VERSION >= '3.0'
77
+ # to document code
78
+ gem 'yard', '~> 0'
79
+ end
50
80
  end
81
+ # rubocop:enable Metrics/BlockLength
51
82
 
52
83
  group :debugging do
53
84
  # Sometimes, we need to debug
54
- gem 'pry', '~> 0.14.0'
85
+ gem 'pry', '~> 0'
55
86
  end
data/Guardfile ADDED
@@ -0,0 +1,44 @@
1
+ # Copyright (c) 2024 Jerome Arbez-Gindre
2
+ # frozen_string_literal: true
3
+
4
+ # notifications :emacs
5
+
6
+ guard :bundler do
7
+ require 'guard/bundler'
8
+ require 'guard/bundler/verify'
9
+ helper = Guard::Bundler::Verify.new
10
+
11
+ files = ['Gemfile']
12
+ files += Dir['*.gemspec'] if files.any? { |f| helper.uses_gemspec?(f) }
13
+
14
+ # Assume files are symlinked from somewhere
15
+ files.each { |file| watch(helper.real_path(file)) }
16
+ end
17
+
18
+ guard :rspec, cmd: 'bundle exec rspec --options config/rspec' do
19
+ require 'guard/rspec/dsl'
20
+ dsl = Guard::RSpec::Dsl.new(self)
21
+
22
+ # RSpec files
23
+ rspec = dsl.rspec
24
+ watch(rspec.spec_helper) { rspec.spec_dir }
25
+ watch(rspec.spec_support) { rspec.spec_dir }
26
+ watch(rspec.spec_files)
27
+
28
+ # Ruby files
29
+ ruby = dsl.ruby
30
+ dsl.watch_spec_files_for(ruby.lib_files)
31
+ end
32
+
33
+ guard :rubocop,
34
+ all_on_start: true,
35
+ cli: ['--display-cop-names', '--config=config/rubocop.yml'] do
36
+ watch(/.+\.rb$/)
37
+ watch(%r{(?:.+/)?\.rubocop(?:_todo)?\.yml$}) { |m| File.dirname(m.first) }
38
+ end
39
+
40
+ guard :reek,
41
+ cli: ['--config config/reek.yml', '--single-line'] do
42
+ watch(/.+\.rb$/)
43
+ watch('config/reek.yml')
44
+ end
data/LICENSE CHANGED
@@ -1,7 +1,7 @@
1
1
  MIT License
2
2
 
3
3
  Copyright (c) 2020 Jérôme Arbez-Gindre, and the individual contributors
4
- to DefMastership.
4
+ to Defmastership.
5
5
 
6
6
  Permission is hereby granted, free of charge, to any person obtaining a copy
7
7
  of this software and associated documentation files (the "Software"), to deal
data/README.adoc ADDED
@@ -0,0 +1,24 @@
1
+ = defmastership
2
+
3
+ == Features
4
+
5
+ * CSV export of https://gitlab.com/defmastership/asciidoctor-defmastership[asciidoctor-defmastership] statements.
6
+ * Automatic modifications of asciidoc files for : (See https://defmastership.gitlab.io/defmastership-example/defmastership-example.pdf/#_automatic_modifications[list of modifications].)
7
+ ** Computation of definitions reference ids
8
+ ** Explicit checksums updates
9
+ ** Explicit version updates (note: defmastership-examples not updated with last feature modification)
10
+
11
+ NOTE: depend on https://gitlab.com/defmastership/defmastership-core[defmastership-core]
12
+
13
+ == Development method
14
+
15
+ * BDD:
16
+ ** https://gitlab.com/defmastership/defmastership/-/tree/master/features[features].
17
+ ** https://defmastership.gitlab.io/defmastership/features_results.html[features_results.html]
18
+
19
+ * TDD:
20
+ ** https://gitlab.com/defmastership/defmastership/-/tree/master/spec/unit/defmastership?ref_type=heads[unit tests (rspec)]
21
+ ** https://defmastership.gitlab.io/defmastership/rspec_results.html[rspec_results.html]
22
+ ** https://defmastership.gitlab.io/defmastership/coverage[Unit tests coverage]
23
+
24
+
data/Rakefile CHANGED
@@ -1,7 +1,6 @@
1
1
  # Copyright (c) 2023 Jerome Arbez-Gindre
2
2
  # frozen_string_literal: true
3
3
 
4
- require('bundler/gem_tasks')
5
4
  require('rake/clean')
6
5
 
7
6
  Dir['tasks/**/*.rake'].each { |t| load t }
data/bin/defmastership CHANGED
@@ -6,14 +6,14 @@ require('csv')
6
6
  require('defmastership')
7
7
  require('gli')
8
8
 
9
- module DefMastership
9
+ module Defmastership
10
10
  # The start of everything !
11
11
  class App
12
12
  extend GLI::App
13
13
 
14
14
  program_desc 'Tool to handle Asciidoctor definition extension'
15
15
 
16
- version DefMastership::VERSION
16
+ version Defmastership::VERSION
17
17
 
18
18
  subcommand_option_handling :normal
19
19
  arguments :strict
@@ -54,12 +54,12 @@ module DefMastership
54
54
  c.switch(%i[no-fail], desc: 'Exit succes even in case of wrong explicit checksum')
55
55
 
56
56
  c.action do |_global_options, options, args|
57
- my_doc = DefMastership::Document.new
57
+ my_doc = Defmastership::Document.new
58
58
  my_doc.parse_file_with_preprocessor(args.first)
59
59
 
60
60
  output_file = args.first.sub(/\.adoc$/, '.csv')
61
61
 
62
- DefMastership::CSVFormatter.new(my_doc, options['separator']).export_to(output_file)
62
+ Defmastership::Export::CSV::Formatter.new(my_doc, options['separator']).export_to(output_file)
63
63
 
64
64
  if my_doc.wrong_explicit_checksum?
65
65
  my_doc.definitions.each do |definition|
@@ -112,4 +112,4 @@ module DefMastership
112
112
  end
113
113
  end
114
114
 
115
- exit(DefMastership::App.run(ARGV))
115
+ exit(Defmastership::App.run(ARGV))
@@ -0,0 +1,3 @@
1
+ ---
2
+ default: features --publish-quiet --format html -o features_results.html --format progress -x
3
+ wip: features --publish-quiet --format pretty -x -s --tags '@wip and not @pending'
data/config/mutant.yml CHANGED
@@ -1,26 +1,32 @@
1
1
  ---
2
+ usage: opensource
2
3
  includes:
3
4
  - lib
4
5
  integration:
5
6
  name: rspec
7
+ arguments:
8
+ - --options=config/rspec
9
+ - spec
6
10
  requires:
7
11
  - defmastership
8
12
  matcher:
9
13
  subjects:
10
- - 'DefMastership*'
11
- # ignore:
12
- # - 'DefMastership::BatchModifier*'
13
- # - 'DefMastership::CSVFormatter*'
14
- # - 'DefMastership::CSVFormatterBody*'
15
- # - 'DefMastership::CSVFormatterHeader*'
16
- # - 'DefMastership::ChangeRefModifier*'
17
- # - 'DefMastership::Definition*'
18
- # - 'DefMastership::Document*'
19
- # - 'DefMastership::Modifier*'
20
- # - 'DefMastership::ModifierFactory*'
21
- # - 'DefMastership::ParsingState*'
22
- # - 'DefMastership::RenameIncludedFilesModifier*'
23
- # - 'DefMastership::UpdateDefChecksumModifier*'
24
- # - 'DefMastership::UpdateDefModifier*'
25
- # - 'DefMastership::UpdateDefVersionModifier*'
14
+ - Defmastership*
15
+ ignore:
16
+ - Defmastership::Core*
17
+ # - Defmastership::BatchModifier*
18
+ # - Defmastership::Export::CSV::Formatter*
19
+ # - Defmastership::Export::CSV::BodyFormatter*
20
+ # - Defmastership::Export::CSV::HeaderFormatter*
21
+ # - Defmastership::Modifier::ChangeRef*
22
+ # - Defmastership::Definition*
23
+ # - Defmastership::DefinitionParser*
24
+ # - Defmastership::Document*
25
+ # - Defmastership::Factory*
26
+ # - Defmastership::Modifier::ModifierCommon*
27
+ # - Defmastership::Modifier::Factory*
28
+ # - Defmastership::Modifier::RenameIncludedFiles*
29
+ # - Defmastership::Modifier::UpdateDefChecksum*
30
+ # - Defmastership::Modifier::UpdateDef*
31
+ # - Defmastership::Modifier::UpdateDefVersion*
26
32
  # fail_fast: true
data/config/reek.yml CHANGED
@@ -1,106 +1,130 @@
1
1
  ---
2
- detectors:
3
- Attribute:
4
- enabled: false
5
- exclude: []
6
- BooleanParameter:
7
- enabled: true
8
- exclude: []
9
- ClassVariable:
10
- enabled: true
11
- exclude: []
12
- ControlParameter:
13
- enabled: true
14
- exclude: []
15
- DataClump:
16
- enabled: true
17
- exclude: []
18
- max_copies: 0
19
- min_clump_size: 2
20
- DuplicateMethodCall:
21
- enabled: true
22
- exclude: []
23
- max_calls: 1
24
- allow_calls: []
25
- FeatureEnvy:
26
- enabled: true
27
- exclude: []
28
- IrresponsibleModule:
29
- enabled: true
30
- exclude: []
31
- LongParameterList:
32
- enabled: true
33
- exclude:
34
- - Devtools::Config#self.attribute
35
- max_params: 2
36
- overrides: {}
37
- LongYieldList:
38
- enabled: true
39
- exclude: []
40
- max_params: 0
41
- NestedIterators:
42
- enabled: true
43
- exclude: []
44
- max_allowed_nesting: 1
45
- ignore_iterators: []
46
- NilCheck:
47
- enabled: true
48
- exclude: []
49
- RepeatedConditional:
50
- enabled: true
51
- exclude: []
52
- max_ifs: 1
53
- TooManyConstants:
54
- enabled: true
55
- exclude:
56
- - Devtools
57
- TooManyInstanceVariables:
58
- enabled: true
59
- exclude: []
60
- max_instance_variables: 2
61
- TooManyMethods:
62
- enabled: true
63
- exclude: []
64
- max_methods: 15
65
- TooManyStatements:
66
- enabled: true
67
- exclude: []
68
- max_statements: 5
69
- UncommunicativeMethodName:
70
- enabled: true
71
- exclude: []
72
- reject:
73
- - '/^[a-z]$/'
74
- - '/[0-9]$/'
75
- - '/[A-Z]/'
76
- accept: []
77
- UncommunicativeModuleName:
78
- enabled: true
79
- exclude: []
80
- reject:
81
- - '/^.$/'
82
- - '/[0-9]$/'
83
- accept: []
84
- UncommunicativeParameterName:
85
- enabled: true
86
- exclude: []
87
- reject:
88
- - '/^.$/'
89
- - '/[0-9]$/'
90
- - '/[A-Z]/'
91
- accept: []
92
- UncommunicativeVariableName:
93
- enabled: true
94
- exclude: []
95
- reject:
96
- - '/^.$/'
97
- - '/[0-9]$/'
98
- - '/[A-Z]/'
99
- accept: []
100
- UnusedParameters:
101
- enabled: true
102
- exclude: []
103
- UtilityFunction:
104
- enabled: true
105
- exclude:
106
- - Devtools::Project::Initializer::Rspec#require_files # intentional for deduplication
2
+ # detectors:
3
+ # Attribute:
4
+ # enabled: true
5
+ # exclude: []
6
+ # BooleanParameter:
7
+ # enabled: true
8
+ # exclude: []
9
+ # ClassVariable:
10
+ # enabled: true
11
+ # exclude: []
12
+ # ControlParameter:
13
+ # enabled: true
14
+ # exclude: []
15
+ # DataClump:
16
+ # enabled: true
17
+ # exclude: []
18
+ # max_copies: 2
19
+ # min_clump_size: 2
20
+ # DuplicateMethodCall:
21
+ # enabled: true
22
+ # exclude: []
23
+ # max_calls: 1
24
+ # allow_calls: []
25
+ # FeatureEnvy:
26
+ # enabled: true
27
+ # exclude: []
28
+ # InstanceVariableAssumption:
29
+ # enabled: true
30
+ # exclude: []
31
+ # IrresponsibleModule:
32
+ # enabled: true
33
+ # exclude: []
34
+ # LongParameterList:
35
+ # enabled: true
36
+ # exclude: []
37
+ # max_params: 3
38
+ # overrides:
39
+ # initialize:
40
+ # max_params: 5
41
+ # LongYieldList:
42
+ # enabled: true
43
+ # exclude: []
44
+ # max_params: 3
45
+ # ManualDispatch:
46
+ # enabled: true
47
+ # exclude: []
48
+ # MissingSafeMethod:
49
+ # enabled: true
50
+ # exclude: []
51
+ # ModuleInitialize:
52
+ # enabled: true
53
+ # exclude: []
54
+ # NestedIterators:
55
+ # enabled: true
56
+ # exclude: []
57
+ # max_allowed_nesting: 1
58
+ # ignore_iterators:
59
+ # - tap
60
+ # - Tempfile.create
61
+ # NilCheck:
62
+ # enabled: true
63
+ # exclude: []
64
+ # RepeatedConditional:
65
+ # enabled: true
66
+ # exclude: []
67
+ # max_ifs: 2
68
+ # SubclassedFromCoreClass:
69
+ # enabled: true
70
+ # exclude: []
71
+ # TooManyConstants:
72
+ # enabled: true
73
+ # exclude: []
74
+ # max_constants: 5
75
+ # TooManyInstanceVariables:
76
+ # enabled: true
77
+ # exclude: []
78
+ # max_instance_variables: 4
79
+ # TooManyMethods:
80
+ # enabled: true
81
+ # exclude: []
82
+ # max_methods: 15
83
+ # TooManyStatements:
84
+ # enabled: true
85
+ # exclude:
86
+ # - initialize
87
+ # max_statements: 5
88
+ # UncommunicativeMethodName:
89
+ # enabled: true
90
+ # exclude: []
91
+ # reject:
92
+ # - "/^[a-z]$/"
93
+ # - "/[0-9]$/"
94
+ # - "/[A-Z]/"
95
+ # accept: []
96
+ # UncommunicativeModuleName:
97
+ # enabled: true
98
+ # exclude: []
99
+ # reject:
100
+ # - "/^.$/"
101
+ # - "/[0-9]$/"
102
+ # accept: []
103
+ # UncommunicativeParameterName:
104
+ # enabled: true
105
+ # exclude: []
106
+ # reject:
107
+ # - "/^.$/"
108
+ # - "/[0-9]$/"
109
+ # - "/[A-Z]/"
110
+ # - "/^_/"
111
+ # accept: []
112
+ # UncommunicativeVariableName:
113
+ # enabled: true
114
+ # exclude: []
115
+ # reject:
116
+ # - "/^.$/"
117
+ # - "/[0-9]$/"
118
+ # - "/[A-Z]/"
119
+ # accept:
120
+ # - "/^_$/"
121
+ # UnusedParameters:
122
+ # enabled: true
123
+ # exclude: []
124
+ # UnusedPrivateMethod:
125
+ # enabled: false
126
+ # exclude: []
127
+ # UtilityFunction:
128
+ # enabled: true
129
+ # exclude: []
130
+ # public_methods_only: false