metanorma-cli 1.3.2 → 1.3.6

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/dependent_repos.env +3 -0
  3. data/.github/workflows/macos.yml +38 -0
  4. data/.github/workflows/ubuntu.yml +72 -0
  5. data/.github/workflows/windows.yml +40 -0
  6. data/.gitignore +21 -0
  7. data/.hound.yml +3 -0
  8. data/.rspec +2 -0
  9. data/.rubocop.yml +515 -0
  10. data/docs/installation.adoc +61 -0
  11. data/docs/navigation.adoc +7 -0
  12. data/docs/usage.adoc +74 -0
  13. data/lib/metanorma/cli/command.rb +16 -2
  14. data/lib/metanorma/cli/setup.rb +9 -25
  15. data/lib/metanorma/cli/version.rb +1 -1
  16. data/metanorma-cli.gemspec +24 -18
  17. data/templates/base/.github/workflows/docker.yml +74 -0
  18. data/templates/base/.github/workflows/macos.yml +50 -0
  19. data/templates/base/.github/workflows/ubuntu.yml +55 -0
  20. data/templates/base/.github/workflows/windows.yml +42 -0
  21. data/templates/base/.gitlab-ci.yml +34 -4
  22. data/templates/base/Makefile +111 -59
  23. data/templates/base/Makefile.win +136 -36
  24. data/templates/base/metanorma.yml +1 -1
  25. metadata +49 -69
  26. data/05-020r26.rxl +0 -75
  27. data/05-020r26.xml.zip +0 -0
  28. data/Gemfile.lock +0 -337
  29. data/a +0 -5
  30. data/a.json +0 -33
  31. data/a.rb +0 -13
  32. data/a.rxl +0 -45
  33. data/b +0 -85
  34. data/csd-tofix 2.zip +0 -0
  35. data/csd-tofix.zip +0 -0
  36. data/exe/metanorma.old +0 -178
  37. data/extract/sourcecode/sourcecode-0000.txt +0 -5
  38. data/files.zip +0 -0
  39. data/relaton/cache/version +0 -1
  40. data/rice.rxl +0 -51
  41. data/sourcecode/0 +0 -5
  42. data/templates/base/.travis.yml +0 -30
  43. data/templates/base/appveyor.yml +0 -29
  44. data/test.rxl +0 -52
  45. data/tmp/my-custom-csd/Gemfile +0 -4
  46. data/tmp/my-custom-csd/Makefile +0 -144
  47. data/tmp/my-custom-csd/Makefile.win +0 -116
  48. data/tmp/my-custom-csd/appveyor.yml +0 -29
  49. data/tmp/my-custom-csd/metanorma.yml +0 -4
  50. data/tmp/my-document/Gemfile +0 -4
  51. data/tmp/my-document/Makefile +0 -144
  52. data/tmp/my-document/Makefile.win +0 -116
  53. data/tmp/my-document/appveyor.yml +0 -29
  54. data/tmp/my-document/metanorma.yml +0 -4
  55. data/tmp/my-local-document/Gemfile +0 -4
  56. data/tmp/my-local-document/Makefile +0 -144
  57. data/tmp/my-local-document/Makefile.win +0 -116
  58. data/tmp/my-local-document/appveyor.yml +0 -29
  59. data/tmp/my-local-document/metanorma.yml +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '089f63693166f74ba4c49d9d562c20cc4d79a012da3109a5483806ef2fcc43ed'
4
- data.tar.gz: ea4809e6d1b1382565a83eca79ea12806f27800e796244369a16e820bcc2a9a9
3
+ metadata.gz: 971ab5a31bcdca149e9d2db05468b0783b11069381f8e8d1f476370471938d92
4
+ data.tar.gz: 4434ee76f7ab6e0b52f3cbe42f4fb3691501db4e69b8f73286c62665ffdeb5c0
5
5
  SHA512:
6
- metadata.gz: 81adac4e4e3ec9efc50f300229cffb185723fdf1fdaf6ca4719fc64b9435a8e1457ebda92a6b83fe69f935821b956541820e2216bdd0180edde6cdba7e9a72ce
7
- data.tar.gz: 87f31a6be12ee8e2771ef8f6f261c54707016bebf266c3b3c195085972d8e3032ef6bcce3b00d640778919876ac51905dbf42c2b6a3647d7283ec75008a24b05
6
+ metadata.gz: b9432b69906459719bde150fef7f66a6081db913d65ec3b8dc708f2e379207f4c4607a99a4388229e9bfb5d6ba7e81120503f88d8a771d11e350b331dabffe78
7
+ data.tar.gz: e9d339f903d42161861b2ad07d1953bc367560eaf81817aecec07388681dff060f2473fd7115f77313ae892ef011a1c3ff99de3eb73045a7230d421c497074a7
@@ -0,0 +1,3 @@
1
+ ORGANISATION=metanorma
2
+ DEPENDENT_REPOS="metanorma-docker metanorma.com packed-mn chocolatey-metanorma homebrew-metanorma metanorma-snap"
3
+ TEMPLATE_REPOS="mn-templates-nist mn-templates-ietf mn-templates-ogc mn-templates-iso mn-templates-csd mn-templates-itu mn-templates-iec"
@@ -0,0 +1,38 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: macos
4
+
5
+ on:
6
+ push:
7
+ branches: [ master ]
8
+ pull_request:
9
+ paths-ignore:
10
+ - .github/workflows/ubuntu.yml
11
+ - .github/workflows/windows.yml
12
+
13
+ jobs:
14
+ test-macos:
15
+ name: Test on Ruby ${{ matrix.ruby }} macOS
16
+ runs-on: macos-latest
17
+ continue-on-error: ${{ matrix.experimental }}
18
+ strategy:
19
+ fail-fast: false
20
+ matrix:
21
+ ruby: [ '2.6', '2.5', '2.4' ]
22
+ experimental: [false]
23
+ include:
24
+ - ruby: '2.7'
25
+ experimental: true
26
+ steps:
27
+ - uses: actions/checkout@master
28
+ - name: Use Ruby
29
+ uses: actions/setup-ruby@v1
30
+ with:
31
+ ruby-version: ${{ matrix.ruby }}
32
+ - name: Update gems
33
+ run: |
34
+ sudo gem install bundler --force
35
+ bundle install --jobs 4 --retry 3
36
+ - name: Run specs
37
+ run: |
38
+ bundle exec rake
@@ -0,0 +1,72 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: ubuntu
4
+
5
+ on:
6
+ push:
7
+ branches: [ master ]
8
+ tags:
9
+ - '*'
10
+ pull_request:
11
+ paths-ignore:
12
+ - .github/workflows/macos.yml
13
+ - .github/workflows/windows.yml
14
+
15
+ jobs:
16
+ test-linux:
17
+ name: Test on Ruby ${{ matrix.ruby }} Ubuntu
18
+ runs-on: ubuntu-latest
19
+ continue-on-error: ${{ matrix.experimental }}
20
+ strategy:
21
+ fail-fast: false
22
+ matrix:
23
+ ruby: [ '2.6', '2.5', '2.4' ]
24
+ experimental: [false]
25
+ include:
26
+ - ruby: '2.7'
27
+ experimental: true
28
+ steps:
29
+ - uses: actions/checkout@master
30
+ - name: Use Ruby
31
+ uses: actions/setup-ruby@v1
32
+ with:
33
+ ruby-version: ${{ matrix.ruby }}
34
+ - name: Update gems
35
+ run: |
36
+ gem install bundler
37
+ bundle install --jobs 4 --retry 3
38
+ - name: Run specs
39
+ run: |
40
+ bundle exec rake
41
+ - name: Trigger repositories
42
+ if: matrix.ruby == '2.6'
43
+ env:
44
+ GH_USERNAME: metanorma-ci
45
+ GH_ACCESS_TOKEN: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
46
+ run: |
47
+ curl -LO --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/trigger-gh-actions.sh
48
+ [[ -f ".github/workflows/dependent_repos.env" ]] && source .github/workflows/dependent_repos.env
49
+ CLIENT_PAYLOAD=$(cat <<EOF
50
+ "{ "ref": "${GITHUB_REF}", "repo": "${GITHUB_REPOSITORY}" }"
51
+ EOF
52
+ )
53
+ for repo in $TEMPLATE_REPOS" $SAMPLES_REPOS"
54
+ do
55
+ sh trigger-gh-actions.sh $ORGANISATION $repo $GH_USERNAME $GH_ACCESS_TOKEN $GITHUB_REPOSITORY "$CLIENT_PAYLOAD"
56
+ done
57
+ - name: Trigger release repositories
58
+ if: (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/v')) && matrix.ruby == '2.6'
59
+ env:
60
+ GH_USERNAME: metanorma-ci
61
+ GH_ACCESS_TOKEN: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
62
+ run: |
63
+ curl -LO --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/trigger-gh-actions.sh
64
+ [[ -f ".github/workflows/dependent_repos.env" ]] && source .github/workflows/dependent_repos.env
65
+ CLIENT_PAYLOAD=$(cat <<EOF
66
+ "{ "ref": "${GITHUB_REF}", "repo": "${GITHUB_REPOSITORY}" }"
67
+ EOF
68
+ )
69
+ for repo in $DEPENDENT_REPOS
70
+ do
71
+ sh trigger-gh-actions.sh $ORGANISATION $repo $GH_USERNAME $GH_ACCESS_TOKEN $GITHUB_REPOSITORY "$CLIENT_PAYLOAD"
72
+ done
@@ -0,0 +1,40 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: windows
4
+
5
+ on:
6
+ push:
7
+ branches: [ master ]
8
+ pull_request:
9
+ paths-ignore:
10
+ - .github/workflows/macos.yml
11
+ - .github/workflows/ubuntu.yml
12
+
13
+ jobs:
14
+ test-windows:
15
+ name: Test on Ruby ${{ matrix.ruby }} Windows
16
+ runs-on: windows-latest
17
+ continue-on-error: ${{ matrix.experimental }}
18
+ strategy:
19
+ fail-fast: false
20
+ matrix:
21
+ ruby: [ '2.6', '2.5', '2.4' ]
22
+ experimental: [false]
23
+ include:
24
+ - ruby: '2.7'
25
+ experimental: true
26
+ steps:
27
+ - uses: actions/checkout@master
28
+ - name: Use Ruby
29
+ uses: actions/setup-ruby@v1
30
+ with:
31
+ ruby-version: ${{ matrix.ruby }}
32
+ - name: Update gems
33
+ shell: pwsh
34
+ run: |
35
+ gem install bundler
36
+ bundle config --local path vendor/bundle
37
+ bundle install --jobs 4 --retry 3
38
+ - name: Run specs
39
+ run: |
40
+ bundle exec rake
@@ -0,0 +1,21 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /_yardoc/
4
+ /coverage/
5
+ /doc/
6
+ /pkg/
7
+ /spec/reports/
8
+ /tmp/
9
+ /.rubocop-https---**
10
+ /Gemfile.lock
11
+ /templates/*
12
+ !/templates/base
13
+ /test.*
14
+ /test
15
+ /testrelaton.xml
16
+ /extract/
17
+
18
+ # rspec failure tracking
19
+ .rspec_status
20
+ .vscode/
21
+ relaton/
@@ -0,0 +1,3 @@
1
+ ruby:
2
+ Enabled: true
3
+ config_file: .rubocop.yml
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
@@ -0,0 +1,515 @@
1
+ ---
2
+ AllCops:
3
+ Exclude:
4
+ - vendor/**/*
5
+ - db/**/*
6
+ - tmp/**/*
7
+ DisplayCopNames: false
8
+ StyleGuideCopsOnly: false
9
+ TargetRubyVersion: 2.4
10
+
11
+ # Disableing for now
12
+ #
13
+ # require:
14
+ # - rubocop-rails
15
+ # - rubocop-performance
16
+ #
17
+ Naming/AccessorMethodName:
18
+ Description: Check the naming of accessor methods for get_/set_.
19
+ Enabled: false
20
+ Style/Alias:
21
+ Description: Use alias_method instead of alias.
22
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#alias-method
23
+ Enabled: false
24
+ Style/ArrayJoin:
25
+ Description: Use Array#join instead of Array#*.
26
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#array-join
27
+ Enabled: false
28
+ Style/AsciiComments:
29
+ Description: Use only ascii symbols in comments.
30
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#english-comments
31
+ Enabled: false
32
+ Naming/AsciiIdentifiers:
33
+ Description: Use only ascii symbols in identifiers.
34
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#english-identifiers
35
+ Enabled: false
36
+ Style/Attr:
37
+ Description: Checks for uses of Module#attr.
38
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#attr
39
+ Enabled: false
40
+ Metrics/BlockNesting:
41
+ Description: Avoid excessive block nesting
42
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#three-is-the-number-thou-shalt-count
43
+ Enabled: true
44
+ Max: 3
45
+ Style/CaseEquality:
46
+ Description: Avoid explicit use of the case equality operator(===).
47
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-case-equality
48
+ Enabled: false
49
+ Style/CharacterLiteral:
50
+ Description: Checks for uses of character literals.
51
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-character-literals
52
+ Enabled: false
53
+ Style/ClassAndModuleChildren:
54
+ Description: Checks style of children classes and modules.
55
+ Enabled: true
56
+ EnforcedStyle: nested
57
+ Metrics/ClassLength:
58
+ Description: Avoid classes longer than 100 lines of code.
59
+ Enabled: false
60
+ CountComments: false
61
+ Max: 100
62
+ Metrics/ModuleLength:
63
+ Description: Avoid modules longer than 100 lines of code.
64
+ Enabled: false
65
+ Style/ClassVars:
66
+ Description: Avoid the use of class variables.
67
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-class-vars
68
+ Enabled: false
69
+ Style/CollectionMethods:
70
+ Enabled: true
71
+ PreferredMethods:
72
+ find: detect
73
+ inject: reduce
74
+ collect: map
75
+ find_all: select
76
+ Style/ColonMethodCall:
77
+ Description: 'Do not use :: for method call.'
78
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#double-colons
79
+ Enabled: false
80
+ Style/CommentAnnotation:
81
+ Description: Checks formatting of special comments (TODO, FIXME, OPTIMIZE, HACK,
82
+ REVIEW).
83
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#annotate-keywords
84
+ Enabled: false
85
+ Metrics/AbcSize:
86
+ Description: A calculated magnitude based on number of assignments, branches, and
87
+ conditions.
88
+ Enabled: true
89
+ Max: 15
90
+ Metrics/BlockLength:
91
+ CountComments: true
92
+ Max: 25
93
+ ExcludedMethods: []
94
+ Exclude:
95
+ - spec/**/*
96
+ Metrics/CyclomaticComplexity:
97
+ Description: A complexity metric that is strongly correlated to the number of test
98
+ cases needed to validate a method.
99
+ Enabled: true
100
+ Max: 6
101
+ Rails/Delegate:
102
+ Description: Prefer delegate method for delegations.
103
+ Enabled: false
104
+ Style/PreferredHashMethods:
105
+ Description: Checks use of `has_key?` and `has_value?` Hash methods.
106
+ StyleGuide: "#hash-key"
107
+ Enabled: false
108
+ Style/Documentation:
109
+ Description: Document classes and non-namespace modules.
110
+ Enabled: false
111
+ Style/DoubleNegation:
112
+ Description: Checks for uses of double negation (!!).
113
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-bang-bang
114
+ Enabled: false
115
+ Style/EachWithObject:
116
+ Description: Prefer `each_with_object` over `inject` or `reduce`.
117
+ Enabled: false
118
+ Style/EmptyLiteral:
119
+ Description: Prefer literals to Array.new/Hash.new/String.new.
120
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#literal-array-hash
121
+ Enabled: false
122
+ Style/Encoding:
123
+ Enabled: false
124
+ Style/EvenOdd:
125
+ Description: Favor the use of Fixnum#even? && Fixnum#odd?
126
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#predicate-methods
127
+ Enabled: false
128
+ Naming/FileName:
129
+ Description: Use snake_case for source file names.
130
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#snake-case-files
131
+ Enabled: false
132
+ Style/FrozenStringLiteralComment:
133
+ Description: Add the frozen_string_literal comment to the top of files to help transition
134
+ from Ruby 2.3.0 to Ruby 3.0.
135
+ Enabled: false
136
+ Lint/FlipFlop:
137
+ Description: Checks for flip flops
138
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-flip-flops
139
+ Enabled: false
140
+ Style/FormatString:
141
+ Description: Enforce the use of Kernel#sprintf, Kernel#format or String#%.
142
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#sprintf
143
+ Enabled: false
144
+ Style/GlobalVars:
145
+ Description: Do not introduce global variables.
146
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#instance-vars
147
+ Reference: http://www.zenspider.com/Languages/Ruby/QuickRef.html
148
+ Enabled: false
149
+ Style/GuardClause:
150
+ Description: Check for conditionals that can be replaced with guard clauses
151
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals
152
+ Enabled: false
153
+ Style/IfUnlessModifier:
154
+ Description: Favor modifier if/unless usage when you have a single-line body.
155
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#if-as-a-modifier
156
+ Enabled: false
157
+ Style/IfWithSemicolon:
158
+ Description: Do not use if x; .... Use the ternary operator instead.
159
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-semicolon-ifs
160
+ Enabled: false
161
+ Style/InlineComment:
162
+ Description: Avoid inline comments.
163
+ Enabled: false
164
+ Style/Lambda:
165
+ Description: Use the new lambda literal syntax for single-line blocks.
166
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#lambda-multi-line
167
+ Enabled: false
168
+ Style/LambdaCall:
169
+ Description: Use lambda.call(...) instead of lambda.(...).
170
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#proc-call
171
+ Enabled: false
172
+ Style/LineEndConcatenation:
173
+ Description: Use \ instead of + or << to concatenate two string literals at line
174
+ end.
175
+ Enabled: false
176
+ Metrics/LineLength:
177
+ Description: Limit lines to 80 characters.
178
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#80-character-limits
179
+ Max: 80
180
+ Enabled: true
181
+ AllowURI: true
182
+ URISchemes:
183
+ - http
184
+ - https
185
+ Metrics/MethodLength:
186
+ Description: Avoid methods longer than 10 lines of code.
187
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#short-methods
188
+ Enabled: true
189
+ CountComments: true
190
+ Max: 10
191
+ Exclude:
192
+ - spec/**/*
193
+ Style/ModuleFunction:
194
+ Description: Checks for usage of `extend self` in modules.
195
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#module-function
196
+ Enabled: false
197
+ Style/MultilineBlockChain:
198
+ Description: Avoid multi-line chains of blocks.
199
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#single-line-blocks
200
+ Enabled: false
201
+ Style/NegatedIf:
202
+ Description: Favor unless over if for negative conditions (or control flow or).
203
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#unless-for-negatives
204
+ Enabled: false
205
+ Style/NegatedWhile:
206
+ Description: Favor until over while for negative conditions.
207
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#until-for-negatives
208
+ Enabled: false
209
+ Style/Next:
210
+ Description: Use `next` to skip iteration instead of a condition at the end.
211
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals
212
+ Enabled: false
213
+ Style/NilComparison:
214
+ Description: Prefer x.nil? to x == nil.
215
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#predicate-methods
216
+ Enabled: false
217
+ Style/Not:
218
+ Description: Use ! instead of not.
219
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#bang-not-not
220
+ Enabled: false
221
+ Style/NumericLiterals:
222
+ Description: Add underscores to large numeric literals to improve their readability.
223
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscores-in-numerics
224
+ Enabled: false
225
+ Style/OneLineConditional:
226
+ Description: Favor the ternary operator(?:) over if/then/else/end constructs.
227
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#ternary-operator
228
+ Enabled: false
229
+ Naming/BinaryOperatorParameterName:
230
+ Description: When defining binary operators, name the argument other.
231
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#other-arg
232
+ Enabled: false
233
+ Metrics/ParameterLists:
234
+ Description: Avoid long parameter lists.
235
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#too-many-params
236
+ Enabled: true
237
+ Max: 5
238
+ CountKeywordArgs: true
239
+ Style/PercentLiteralDelimiters:
240
+ Description: Use `%`-literal delimiters consistently
241
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-literal-braces
242
+ Enabled: false
243
+ Style/PerlBackrefs:
244
+ Description: Avoid Perl-style regex back references.
245
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-perl-regexp-last-matchers
246
+ Enabled: false
247
+ Naming/PredicateName:
248
+ Description: Check the names of predicate methods.
249
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark
250
+ NamePrefixBlacklist:
251
+ - is_
252
+ Exclude:
253
+ - spec/**/*
254
+ Style/Proc:
255
+ Description: Use proc instead of Proc.new.
256
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#proc
257
+ Enabled: false
258
+ Style/RaiseArgs:
259
+ Description: Checks the arguments passed to raise/fail.
260
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#exception-class-messages
261
+ Enabled: false
262
+ Style/RegexpLiteral:
263
+ Description: Use / or %r around regular expressions.
264
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-r
265
+ Enabled: false
266
+ Style/Sample:
267
+ Description: Use `sample` instead of `shuffle.first`, `shuffle.last`, and `shuffle[Fixnum]`.
268
+ Reference: https://github.com/JuanitoFatas/fast-ruby#arrayshufflefirst-vs-arraysample-code
269
+ Enabled: false
270
+ Style/SelfAssignment:
271
+ Description: Checks for places where self-assignment shorthand should have been
272
+ used.
273
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#self-assignment
274
+ Enabled: false
275
+ Style/SingleLineBlockParams:
276
+ Description: Enforces the names of some block params.
277
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#reduce-blocks
278
+ Enabled: false
279
+ Style/SingleLineMethods:
280
+ Description: Avoid single-line methods.
281
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-single-line-methods
282
+ Enabled: false
283
+ Style/SignalException:
284
+ Description: Checks for proper usage of fail and raise.
285
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#fail-method
286
+ Enabled: false
287
+ Style/SpecialGlobalVars:
288
+ Description: Avoid Perl-style global variables.
289
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-cryptic-perlisms
290
+ Enabled: false
291
+ Style/StringLiterals:
292
+ Description: Checks if uses of quotes match the configured preference.
293
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-string-literals
294
+ EnforcedStyle: double_quotes
295
+ Enabled: true
296
+ Style/TrailingCommaInArguments:
297
+ Description: Checks for trailing comma in argument lists.
298
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas
299
+ EnforcedStyleForMultiline: comma
300
+ SupportedStylesForMultiline:
301
+ - comma
302
+ - consistent_comma
303
+ - no_comma
304
+ Enabled: true
305
+ Style/TrailingCommaInArrayLiteral:
306
+ Description: Checks for trailing comma in array literals.
307
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas
308
+ EnforcedStyleForMultiline: comma
309
+ SupportedStylesForMultiline:
310
+ - comma
311
+ - consistent_comma
312
+ - no_comma
313
+ Enabled: true
314
+ Style/TrailingCommaInHashLiteral:
315
+ Description: Checks for trailing comma in hash literals.
316
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas
317
+ EnforcedStyleForMultiline: comma
318
+ SupportedStylesForMultiline:
319
+ - comma
320
+ - consistent_comma
321
+ - no_comma
322
+ Enabled: true
323
+ Style/TrivialAccessors:
324
+ Description: Prefer attr_* methods to trivial readers/writers.
325
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#attr_family
326
+ Enabled: false
327
+ Style/VariableInterpolation:
328
+ Description: Don't interpolate global, instance and class variables directly in
329
+ strings.
330
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#curlies-interpolate
331
+ Enabled: false
332
+ Style/WhenThen:
333
+ Description: Use when x then ... for one-line cases.
334
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#one-line-cases
335
+ Enabled: false
336
+ Style/WhileUntilModifier:
337
+ Description: Favor modifier while/until usage when you have a single-line body.
338
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#while-as-a-modifier
339
+ Enabled: false
340
+ Style/WordArray:
341
+ Description: Use %w or %W for arrays of words.
342
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-w
343
+ Enabled: false
344
+ Layout/AlignParameters:
345
+ Description: Here we check if the parameters on a multi-line method call or definition
346
+ are aligned.
347
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-double-indent
348
+ Enabled: false
349
+ Layout/ConditionPosition:
350
+ Description: Checks for condition placed in a confusing position relative to the
351
+ keyword.
352
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#same-line-condition
353
+ Enabled: false
354
+ Layout/DotPosition:
355
+ Description: Checks the position of the dot in multi-line method calls.
356
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains
357
+ EnforcedStyle: trailing
358
+ Layout/ExtraSpacing:
359
+ Description: Do not use unnecessary spacing.
360
+ Enabled: true
361
+ Layout/MultilineOperationIndentation:
362
+ Description: Checks indentation of binary operations that span more than one line.
363
+ Enabled: true
364
+ EnforcedStyle: indented
365
+ Layout/MultilineMethodCallIndentation:
366
+ Description: Checks indentation of method calls with the dot operator that span
367
+ more than one line.
368
+ Enabled: true
369
+ EnforcedStyle: indented
370
+ Layout/InitialIndentation:
371
+ Description: Checks the indentation of the first non-blank non-comment line in a
372
+ file.
373
+ Enabled: false
374
+ Lint/AmbiguousOperator:
375
+ Description: Checks for ambiguous operators in the first argument of a method invocation
376
+ without parentheses.
377
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#parens-as-args
378
+ Enabled: false
379
+ Lint/AmbiguousRegexpLiteral:
380
+ Description: Checks for ambiguous regexp literals in the first argument of a method
381
+ invocation without parenthesis.
382
+ Enabled: false
383
+ Lint/AssignmentInCondition:
384
+ Description: Don't use assignment in conditions.
385
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#safe-assignment-in-condition
386
+ Enabled: false
387
+ Lint/CircularArgumentReference:
388
+ Description: Don't refer to the keyword argument in the default value.
389
+ Enabled: false
390
+ Lint/DeprecatedClassMethods:
391
+ Description: Check for deprecated class method calls.
392
+ Enabled: false
393
+ Lint/DuplicatedKey:
394
+ Description: Check for duplicate keys in hash literals.
395
+ Enabled: false
396
+ Lint/EachWithObjectArgument:
397
+ Description: Check for immutable argument given to each_with_object.
398
+ Enabled: false
399
+ Lint/ElseLayout:
400
+ Description: Check for odd code arrangement in an else block.
401
+ Enabled: false
402
+ Lint/FormatParameterMismatch:
403
+ Description: The number of parameters to format/sprint must match the fields.
404
+ Enabled: false
405
+ Lint/HandleExceptions:
406
+ Description: Don't suppress exception.
407
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions
408
+ Enabled: false
409
+ Lint/LiteralAsCondition:
410
+ Description: Checks of literals used in conditions.
411
+ Enabled: false
412
+ Lint/LiteralInInterpolation:
413
+ Description: Checks for literals used in interpolation.
414
+ Enabled: false
415
+ Lint/Loop:
416
+ Description: Use Kernel#loop with break rather than begin/end/until or begin/end/while
417
+ for post-loop tests.
418
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#loop-with-break
419
+ Enabled: false
420
+ Lint/NestedMethodDefinition:
421
+ Description: Do not use nested method definitions.
422
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-methods
423
+ Enabled: false
424
+ Lint/NonLocalExitFromIterator:
425
+ Description: Do not use return in iterator to cause non-local exit.
426
+ Enabled: false
427
+ Lint/ParenthesesAsGroupedExpression:
428
+ Description: Checks for method calls with a space before the opening parenthesis.
429
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#parens-no-spaces
430
+ Enabled: false
431
+ Lint/RequireParentheses:
432
+ Description: Use parentheses in the method call to avoid confusion about precedence.
433
+ Enabled: false
434
+ Lint/UnderscorePrefixedVariableName:
435
+ Description: Do not use prefix `_` for a variable that is used.
436
+ Enabled: false
437
+ Lint/UnneededCopDisableDirective:
438
+ Description: 'Checks for rubocop:disable comments that can be removed. Note: this
439
+ cop is not disabled when disabling all cops. It must be explicitly disabled.'
440
+ Enabled: false
441
+ Lint/Void:
442
+ Description: Possible use of operator/literal/variable in void context.
443
+ Enabled: false
444
+ Performance/CaseWhenSplat:
445
+ Description: Place `when` conditions that use splat at the end of the list of `when`
446
+ branches.
447
+ Enabled: false
448
+ Performance/Count:
449
+ Description: Use `count` instead of `select...size`, `reject...size`, `select...count`,
450
+ `reject...count`, `select...length`, and `reject...length`.
451
+ Enabled: false
452
+ Performance/Detect:
453
+ Description: Use `detect` instead of `select.first`, `find_all.first`, `select.last`,
454
+ and `find_all.last`.
455
+ Reference: https://github.com/JuanitoFatas/fast-ruby#enumerabledetect-vs-enumerableselectfirst-code
456
+ Enabled: false
457
+ Performance/FlatMap:
458
+ Description: Use `Enumerable#flat_map` instead of `Enumerable#map...Array#flatten(1)`
459
+ or `Enumberable#collect..Array#flatten(1)`
460
+ Reference: https://github.com/JuanitoFatas/fast-ruby#enumerablemaparrayflatten-vs-enumerableflat_map-code
461
+ Enabled: false
462
+ Performance/ReverseEach:
463
+ Description: Use `reverse_each` instead of `reverse.each`.
464
+ Reference: https://github.com/JuanitoFatas/fast-ruby#enumerablereverseeach-vs-enumerablereverse_each-code
465
+ Enabled: false
466
+ Performance/Size:
467
+ Description: Use `size` instead of `count` for counting the number of elements in
468
+ `Array` and `Hash`.
469
+ Reference: https://github.com/JuanitoFatas/fast-ruby#arraycount-vs-arraysize-code
470
+ Enabled: false
471
+ Performance/StringReplacement:
472
+ Description: Use `tr` instead of `gsub` when you are replacing the same number of
473
+ characters. Use `delete` instead of `gsub` when you are deleting characters.
474
+ Reference: https://github.com/JuanitoFatas/fast-ruby#stringgsub-vs-stringtr-code
475
+ Enabled: false
476
+ Rails/ActionFilter:
477
+ Description: Enforces consistent use of action filter methods.
478
+ Enabled: false
479
+ Rails/Date:
480
+ Description: Checks the correct usage of date aware methods, such as Date.today,
481
+ Date.current etc.
482
+ Enabled: false
483
+ Rails/FindBy:
484
+ Description: Prefer find_by over where.first.
485
+ Enabled: false
486
+ Rails/FindEach:
487
+ Description: Prefer all.find_each over all.find.
488
+ Enabled: false
489
+ Rails/HasAndBelongsToMany:
490
+ Description: Prefer has_many :through to has_and_belongs_to_many.
491
+ Enabled: false
492
+ Rails/Output:
493
+ Description: Checks for calls to puts, print, etc.
494
+ Enabled: false
495
+ Rails/ReadWriteAttribute:
496
+ Description: Checks for read_attribute(:attr) and write_attribute(:attr, val).
497
+ Enabled: false
498
+ Rails/ScopeArgs:
499
+ Description: Checks the arguments of ActiveRecord scopes.
500
+ Enabled: false
501
+ Rails/TimeZone:
502
+ Description: Checks the correct usage of time zone aware methods.
503
+ StyleGuide: https://github.com/bbatsov/rails-style-guide#time
504
+ Reference: http://danilenko.org/2012/7/6/rails_timezones
505
+ Enabled: false
506
+ Rails/Validation:
507
+ Description: Use validates :attribute, hash of validations.
508
+ Enabled: false
509
+ Rails:
510
+ Enabled: true
511
+ Metrics/PerceivedComplexity:
512
+ Description: A complexity metric geared towards measuring complexity for a human
513
+ reader.
514
+ Enabled: true
515
+ Max: 7