defmastership 1.0.18 → 1.1.0

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