unparser 0.4.8 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +20 -5
  3. data/bin/unparser +1 -1
  4. data/lib/unparser.rb +115 -61
  5. data/lib/unparser/ast.rb +0 -1
  6. data/lib/unparser/ast/local_variable_scope.rb +6 -76
  7. data/lib/unparser/buffer.rb +19 -16
  8. data/lib/unparser/cli.rb +26 -39
  9. data/lib/unparser/color.rb +0 -3
  10. data/lib/unparser/comments.rb +0 -26
  11. data/lib/unparser/constants.rb +4 -53
  12. data/lib/unparser/diff.rb +0 -17
  13. data/lib/unparser/dsl.rb +0 -32
  14. data/lib/unparser/emitter.rb +23 -425
  15. data/lib/unparser/emitter/alias.rb +2 -8
  16. data/lib/unparser/emitter/args.rb +45 -0
  17. data/lib/unparser/emitter/argument.rb +8 -166
  18. data/lib/unparser/emitter/array.rb +27 -0
  19. data/lib/unparser/emitter/array_pattern.rb +29 -0
  20. data/lib/unparser/emitter/assignment.rb +36 -127
  21. data/lib/unparser/emitter/begin.rb +9 -84
  22. data/lib/unparser/emitter/binary.rb +7 -20
  23. data/lib/unparser/emitter/block.rb +57 -41
  24. data/lib/unparser/emitter/case.rb +6 -48
  25. data/lib/unparser/emitter/case_guard.rb +27 -0
  26. data/lib/unparser/emitter/case_match.rb +40 -0
  27. data/lib/unparser/emitter/cbase.rb +1 -3
  28. data/lib/unparser/emitter/class.rb +6 -26
  29. data/lib/unparser/emitter/const_pattern.rb +24 -0
  30. data/lib/unparser/emitter/def.rb +7 -51
  31. data/lib/unparser/emitter/defined.rb +2 -12
  32. data/lib/unparser/emitter/dstr.rb +22 -0
  33. data/lib/unparser/emitter/dsym.rb +41 -0
  34. data/lib/unparser/emitter/flipflop.rb +11 -10
  35. data/lib/unparser/emitter/float.rb +29 -0
  36. data/lib/unparser/emitter/flow_modifier.rb +8 -55
  37. data/lib/unparser/emitter/for.rb +5 -19
  38. data/lib/unparser/emitter/hash.rb +74 -0
  39. data/lib/unparser/emitter/hash_pattern.rb +67 -0
  40. data/lib/unparser/emitter/hookexe.rb +5 -11
  41. data/lib/unparser/emitter/if.rb +9 -73
  42. data/lib/unparser/emitter/in_match.rb +21 -0
  43. data/lib/unparser/emitter/in_pattern.rb +34 -0
  44. data/lib/unparser/emitter/index.rb +21 -88
  45. data/lib/unparser/emitter/kwbegin.rb +31 -0
  46. data/lib/unparser/emitter/lambda.rb +0 -8
  47. data/lib/unparser/emitter/masgn.rb +20 -0
  48. data/lib/unparser/emitter/match.rb +3 -17
  49. data/lib/unparser/emitter/match_alt.rb +23 -0
  50. data/lib/unparser/emitter/match_as.rb +21 -0
  51. data/lib/unparser/emitter/match_rest.rb +26 -0
  52. data/lib/unparser/emitter/match_var.rb +19 -0
  53. data/lib/unparser/emitter/mlhs.rb +40 -0
  54. data/lib/unparser/emitter/module.rb +3 -9
  55. data/lib/unparser/emitter/op_assign.rb +12 -27
  56. data/lib/unparser/emitter/pin.rb +19 -0
  57. data/lib/unparser/emitter/primitive.rb +93 -0
  58. data/lib/unparser/emitter/range.rb +35 -0
  59. data/lib/unparser/emitter/regexp.rb +35 -0
  60. data/lib/unparser/emitter/repetition.rb +17 -57
  61. data/lib/unparser/emitter/rescue.rb +1 -97
  62. data/lib/unparser/emitter/root.rb +17 -1
  63. data/lib/unparser/emitter/send.rb +10 -219
  64. data/lib/unparser/emitter/simple.rb +33 -0
  65. data/lib/unparser/emitter/splat.rb +2 -18
  66. data/lib/unparser/emitter/super.rb +1 -29
  67. data/lib/unparser/emitter/undef.rb +1 -9
  68. data/lib/unparser/emitter/variable.rb +1 -31
  69. data/lib/unparser/emitter/xstr.rb +72 -0
  70. data/lib/unparser/emitter/yield.rb +1 -9
  71. data/lib/unparser/generation.rb +250 -0
  72. data/lib/unparser/node_details.rb +21 -0
  73. data/lib/unparser/node_details/send.rb +62 -0
  74. data/lib/unparser/node_helpers.rb +45 -6
  75. data/lib/unparser/validation.rb +58 -35
  76. data/lib/unparser/writer.rb +15 -0
  77. data/lib/unparser/writer/binary.rb +99 -0
  78. data/lib/unparser/writer/dynamic_string.rb +233 -0
  79. data/lib/unparser/writer/resbody.rb +40 -0
  80. data/lib/unparser/writer/rescue.rb +39 -0
  81. data/lib/unparser/writer/send.rb +124 -0
  82. data/lib/unparser/{emitter → writer}/send/attribute_assignment.rb +11 -26
  83. data/lib/unparser/writer/send/binary.rb +27 -0
  84. data/lib/unparser/writer/send/conditional.rb +25 -0
  85. data/lib/unparser/writer/send/regular.rb +33 -0
  86. data/lib/unparser/{emitter → writer}/send/unary.rb +10 -17
  87. metadata +65 -89
  88. data/.github/workflows/ci.yml +0 -90
  89. data/.gitignore +0 -37
  90. data/.rspec +0 -4
  91. data/.rubocop.yml +0 -126
  92. data/Changelog.md +0 -162
  93. data/Gemfile +0 -9
  94. data/Gemfile.lock +0 -111
  95. data/LICENSE +0 -20
  96. data/Rakefile +0 -22
  97. data/config/devtools.yml +0 -2
  98. data/config/flay.yml +0 -3
  99. data/config/flog.yml +0 -2
  100. data/config/mutant.yml +0 -6
  101. data/config/reek.yml +0 -98
  102. data/config/yardstick.yml +0 -2
  103. data/lib/unparser/emitter/empty.rb +0 -23
  104. data/lib/unparser/emitter/ensure.rb +0 -37
  105. data/lib/unparser/emitter/literal.rb +0 -10
  106. data/lib/unparser/emitter/literal/array.rb +0 -29
  107. data/lib/unparser/emitter/literal/dynamic.rb +0 -53
  108. data/lib/unparser/emitter/literal/dynamic_body.rb +0 -132
  109. data/lib/unparser/emitter/literal/execute_string.rb +0 -38
  110. data/lib/unparser/emitter/literal/hash.rb +0 -156
  111. data/lib/unparser/emitter/literal/primitive.rb +0 -145
  112. data/lib/unparser/emitter/literal/range.rb +0 -36
  113. data/lib/unparser/emitter/literal/regexp.rb +0 -114
  114. data/lib/unparser/emitter/literal/singleton.rb +0 -26
  115. data/lib/unparser/emitter/meta.rb +0 -16
  116. data/lib/unparser/emitter/redo.rb +0 -25
  117. data/lib/unparser/emitter/resbody.rb +0 -76
  118. data/lib/unparser/emitter/retry.rb +0 -25
  119. data/lib/unparser/emitter/send/binary.rb +0 -57
  120. data/lib/unparser/emitter/send/conditional.rb +0 -40
  121. data/lib/unparser/emitter/send/regular.rb +0 -40
  122. data/lib/unparser/preprocessor.rb +0 -159
  123. data/spec/integration/unparser/corpus_spec.rb +0 -125
  124. data/spec/integrations.yml +0 -92
  125. data/spec/spec_helper.rb +0 -42
  126. data/spec/unit/unparser/buffer/append_spec.rb +0 -24
  127. data/spec/unit/unparser/buffer/append_without_prefix_spec.rb +0 -23
  128. data/spec/unit/unparser/buffer/capture_content_spec.rb +0 -17
  129. data/spec/unit/unparser/buffer/content_spec.rb +0 -38
  130. data/spec/unit/unparser/buffer/fresh_line_spec.rb +0 -20
  131. data/spec/unit/unparser/buffer/indent_spec.rb +0 -20
  132. data/spec/unit/unparser/buffer/nl_spec.rb +0 -16
  133. data/spec/unit/unparser/buffer/unindent_spec.rb +0 -20
  134. data/spec/unit/unparser/color_spec.rb +0 -40
  135. data/spec/unit/unparser/comments/consume_spec.rb +0 -22
  136. data/spec/unit/unparser/comments/take_all_spec.rb +0 -19
  137. data/spec/unit/unparser/comments/take_before_spec.rb +0 -46
  138. data/spec/unit/unparser/comments/take_eol_comments_spec.rb +0 -32
  139. data/spec/unit/unparser/diff_spec.rb +0 -189
  140. data/spec/unit/unparser/emitter/class_methods/handle_spec.rb +0 -17
  141. data/spec/unit/unparser/validation_spec.rb +0 -327
  142. data/spec/unit/unparser_spec.rb +0 -1920
  143. data/unparser.gemspec +0 -35
@@ -1,90 +0,0 @@
1
- name: CI
2
-
3
- on: push
4
-
5
- jobs:
6
- base:
7
- name: Base steps
8
- runs-on: ubuntu-latest
9
- steps:
10
- - uses: actions/checkout@v2
11
- - name: Check Whitespace
12
- run: git diff --check -- HEAD~1
13
- ruby-unit-spec:
14
- name: Unit Specs
15
- runs-on: ${{ matrix.os }}
16
- timeout-minutes: 5
17
- strategy:
18
- fail-fast: false
19
- matrix:
20
- ruby: ['2.6']
21
- os: [ubuntu-latest]
22
- steps:
23
- - uses: actions/checkout@v2
24
- - uses: actions/setup-ruby@v1
25
- with:
26
- ruby-version: ${{ matrix.ruby }}
27
- - run: |
28
- gem install bundler
29
- bundle install
30
- - run: bundle exec rspec spec/unit
31
- ruby-integration-spec:
32
- name: Integration Specs
33
- runs-on: ${{ matrix.os }}
34
- timeout-minutes: 5
35
- strategy:
36
- fail-fast: false
37
- matrix:
38
- ruby: ['2.6']
39
- os: [ubuntu-latest]
40
- steps:
41
- - uses: actions/checkout@v2
42
- - uses: actions/setup-ruby@v1
43
- with:
44
- ruby-version: ${{ matrix.ruby }}
45
- - run: |
46
- gem install bundler
47
- bundle install
48
- - run: bundle exec rspec spec/integration
49
- ruby-mutant:
50
- name: Mutation coverage
51
- runs-on: ${{ matrix.os }}
52
- timeout-minutes: 5
53
- strategy:
54
- fail-fast: false
55
- matrix:
56
- ruby: ['2.6']
57
- os: [ubuntu-latest]
58
- steps:
59
- - uses: actions/checkout@v2
60
- with:
61
- fetch-depth: 0
62
- - uses: actions/setup-ruby@v1
63
- with:
64
- ruby-version: ${{ matrix.ruby }}
65
- - run: |
66
- gem install bundler
67
- bundle install
68
- - run: |
69
- bundle exec mutant \
70
- --since HEAD~1 \
71
- --zombie \
72
- --ignore-subject 'Unparser::CLI*' \
73
- --ignore-subject 'Unparser::Validation.from_string' \
74
- -- 'Unparser*'
75
- ruby-rubocop:
76
- name: Rubocop
77
- runs-on: ${{ matrix.os }}
78
- timeout-minutes: 5
79
- strategy:
80
- fail-fast: false
81
- matrix:
82
- ruby: ['2.6']
83
- os: [ubuntu-latest]
84
- steps:
85
- - uses: actions/checkout@v2
86
- - uses: actions/setup-ruby@v1
87
- with:
88
- ruby-version: ${{ matrix.ruby }}
89
- - run: bundle install
90
- - run: bundle exec rubocop
data/.gitignore DELETED
@@ -1,37 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.sw[op]
15
-
16
- ## Rubinius
17
- *.rbc
18
- .rbx
19
-
20
- ## PROJECT::GENERAL
21
- *.gem
22
- coverage
23
- profiling
24
- turbulence
25
- rdoc
26
- pkg
27
- tmp
28
- doc
29
- log
30
- .yardoc
31
- measurements
32
-
33
- ## BUNDLER
34
- .bundle
35
-
36
- ## PROJECT::SPECIFIC
37
- /vendor
data/.rspec DELETED
@@ -1,4 +0,0 @@
1
- --color
2
- --format progress
3
- --warnings
4
- --order random
@@ -1,126 +0,0 @@
1
- AllCops:
2
- Include:
3
- - 'lib/unparser.rb'
4
- - 'lib/unparser/**/*.rb'
5
- - '**/*.rake'
6
- - 'Gemfile'
7
- - 'Gemfile.triage'
8
-
9
- # Avoid parameter lists longer than five parameters.
10
- ParameterLists:
11
- Max: 3
12
- CountKeywordArgs: true
13
-
14
- MethodLength:
15
- CountComments: false
16
- Max: 17
17
-
18
- AbcSize:
19
- Max: 18
20
-
21
- # Avoid more than `Max` levels of nesting.
22
- BlockNesting:
23
- Max: 3
24
-
25
- # Align with the style guide.
26
- CollectionMethods:
27
- PreferredMethods:
28
- collect: 'map'
29
- inject: 'reduce'
30
- find: 'detect'
31
- find_all: 'select'
32
-
33
- # Limit line length
34
- LineLength:
35
- Max: 113 # TODO: lower to 79 once the rubocop branch in shared/Gemfile is removed
36
-
37
- ClassLength:
38
- Max: 204
39
-
40
- # Prefer modifiers and explicit if statements over returning early for small methods
41
- GuardClause:
42
- Enabled: false
43
-
44
- Metrics/BlockLength:
45
- Exclude:
46
- # Ignore RSpec DSL
47
- - spec/**/*
48
-
49
- # Flags freezes for singletons that could still be mutated like Regexps
50
- RedundantFreeze:
51
- Enabled: false
52
-
53
- # Allow Fixnum and Bignum. This Gem supports versions before 2.4
54
- UnifiedInteger:
55
- Enabled: false
56
-
57
- # Disabled because of indenting with private keyword in class bodies.
58
- IndentationWidth:
59
- Enabled: false
60
-
61
- # I like raise more
62
- SignalException:
63
- Enabled: false
64
-
65
- # False positive in unparser source
66
- OneLineConditional:
67
- Enabled: false
68
-
69
- Documentation:
70
- Enabled: false
71
-
72
- # Disable documentation checking until a class needs to be documented once
73
- Documentation:
74
- Enabled: false
75
-
76
- # Do not favor modifier if/unless usage when you have a single-line body
77
- IfUnlessModifier:
78
- Enabled: false
79
-
80
- # Allow case equality operator (in limited use within the specs)
81
- CaseEquality:
82
- Enabled: false
83
-
84
- # Constants do not always have to use SCREAMING_SNAKE_CASE
85
- ConstantName:
86
- Enabled: false
87
-
88
- # Not all trivial readers/writers can be defined with attr_* methods
89
- TrivialAccessors:
90
- Enabled: false
91
-
92
- # I like to have an empty line before closing the currently opened body
93
- EmptyLinesAroundBlockBody:
94
- Enabled: false
95
-
96
- EmptyLinesAroundClassBody:
97
- Enabled: false
98
-
99
- EmptyLinesAroundModuleBody:
100
- Enabled: false
101
-
102
- # I like my style more
103
- AccessModifierIndentation:
104
- Enabled: false
105
-
106
- Style/CommentedKeyword:
107
- Enabled: false
108
-
109
- Style/MixinGrouping:
110
- Enabled: false
111
-
112
- Lint/BooleanSymbol:
113
- Enabled: false
114
-
115
- Style/AccessModifierDeclarations:
116
- Enabled: false
117
-
118
- Layout/HashAlignment:
119
- EnforcedColonStyle: table
120
- EnforcedHashRocketStyle: table
121
-
122
- Naming/RescuedExceptionsVariableName:
123
- Enabled: false
124
-
125
- Layout/MultilineMethodCallIndentation:
126
- Enabled: false
@@ -1,162 +0,0 @@
1
- # v0.4.8 2020-05-25
2
-
3
- * Change to specific node type when unparser fails on an unknown node type: [#150](https://github.com/mbj/unparser/pull/150)
4
- * Significantly improve verifier (only useful for debugging)
5
- * Add `Unparser::Color` module for colorized source diffs
6
-
7
- # v0.4.7 2020-01-03
8
-
9
- * Add support for endless ranges
10
- * Change to allow parser 2.7, even while syntax is not yet supported.
11
- This reduces downstream complexity.
12
-
13
- # v0.4.6 2020-01-02
14
-
15
- * Upgrades to allow parser dependency to ~> 2.6.5
16
-
17
- # v0.4.5 2019-05-10
18
-
19
- * Bump parser dependency to ~> 2.6.3
20
-
21
- # v0.4.4 2019-03-27
22
-
23
- * Bump parser dependency to ~> 2.6.2
24
-
25
- # v0.4.3 2019-02-24
26
-
27
- * Bump parser dependency to ~> 2.6.0
28
-
29
- # v0.4.2 2018-12-04
30
-
31
- * Drop hard ruby version requirement. Still officially I'll only support 2.5.
32
-
33
- # v0.4.1 2018-12-03
34
-
35
- * Fix unparsing of `def foo(bar: bar())`
36
-
37
- # v0.4.0 2018-12-03
38
-
39
- * Change to modern AST format.
40
- * Add experimental `Unparser.{parser,parse,parse_with_comments}`
41
-
42
- # v0.3.0 2018-11-16
43
-
44
- * Drop support for Ruby < 2.5
45
-
46
- # v0.2.7 2018-07-18
47
-
48
- * Add emitters for `__FILE__` and `__LINE__`
49
- https://github.com/mbj/unparser/pull/70
50
-
51
- # v0.2.7 2018-02-09
52
-
53
- * Allow ruby_parser 2.5
54
-
55
- # v0.2.6 2017-05-30
56
-
57
- * Reduce memory consumption via not requirering all possible parsers
58
- * Allow ruby 2.4
59
- * Update parser dependency
60
-
61
- # v0.2.5 2016-01-24
62
-
63
- * Add support for ruby 2.3
64
- * Bump parser dependency to ~>2.3.0
65
- * Trade uglier for more correct dstring / dsyms
66
- * Drop support for ruby < 2.1
67
-
68
- # v0.2.4 2015-05-30
69
-
70
- * Relax parser dependency to ~>2.2.2
71
-
72
- # v0.2.3 2015-04-28
73
-
74
- * Compatibility with parser ~>2.2.2, >2.2.2.2
75
-
76
- # v0.2.2 2015-01-14
77
-
78
- * Really add back unofficial support for 1.9.3
79
-
80
- # v0.2.1 2015-01-14
81
-
82
- * Add back unofficial support for 1.9.3
83
-
84
- # v0.2.0 2015-01-12
85
-
86
- * Bump required ruby version to 2.0.0
87
-
88
- # v0.1.17 2015-01-10
89
-
90
- * Fix jruby complex / rational generation edge case
91
- * Support generation under MRI 2.2
92
-
93
- # v0.1.16 2014-11-07
94
-
95
- * Add emitter for complex and rational literals
96
- * Fix edge cases for MLHS
97
- * Fix differencies from 2.2.pre7 series of parser
98
-
99
- # v0.1.15 2014-09-24
100
-
101
- * Handle syntax edge case for MRI 2.1.3 parser.
102
-
103
- # v0.1.14 2014-06-15
104
-
105
- * Fix emitter to correctly unparse foo[] = 1
106
-
107
- # v0.1.13 2014-06-08
108
-
109
- * Add support for rubinius.
110
-
111
- # v0.1.12 2014-04-13
112
-
113
- * Add support for 2.1 kwsplat
114
-
115
- # v0.1.11 2014-04-11
116
-
117
- * Fix performance on local variable scope inspection
118
-
119
- # v0.1.10 2014-04-06
120
-
121
- * Fix emit of inline rescues in combination with control flow keywords.
122
- * Begin corpus testing on rake ci against rubyspec
123
-
124
- # v0.1.9 2014-01-14
125
-
126
- * Fix emit of proc { |(a)| }
127
-
128
- # v0.1.8 2014-01-11
129
-
130
- * Fix all bugs found while round tripping rubyspec.
131
-
132
- # v0.1.7 2014-01-03
133
-
134
- * Add back support for root nodes of type resbody https://github.com/mbj/unparser/issues/24
135
-
136
- # v0.1.6 2013-12-31
137
-
138
- * Emit 1.9 style hashes where possible: https://github.com/mbj/unparser/pull/23
139
- * Fix invalid quoting of hash keys: https://github.com/mbj/unparser/issues/22
140
- * Fix crash on take before introduced by code refactorings: https://github.com/mbj/unparser/issues/20
141
- * Fix crash on comment reproduction https://github.com/mbj/unparser/issues/17
142
-
143
- # v0.1.5 2013-11-01
144
-
145
- * Fix crash with comment reproduction.
146
-
147
- # v0.1.4 2013-11-01
148
-
149
- * Code cleanups.
150
- * Remove warnings.
151
-
152
- # v0.0.3 2013-06-17
153
-
154
- * Adjust to changes in parser 2.0.0.beta5 => beta6
155
-
156
- # v0.0.2 2013-06-17
157
-
158
- Crappy release
159
-
160
- # v0.0.1 2013-06-15
161
-
162
- Initial release
data/Gemfile DELETED
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source 'https://rubygems.org'
4
-
5
- gemspec
6
-
7
- source 'https://oss:Px2ENN7S91OmWaD5G7MIQJi1dmtmYrEh@gem.mutant.dev' do
8
- gem 'mutant-license'
9
- end
@@ -1,111 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- unparser (0.4.7)
5
- abstract_type (~> 0.0.7)
6
- adamantium (~> 0.2.0)
7
- anima (~> 0.3.1)
8
- concord (~> 0.1.5)
9
- diff-lcs (~> 1.3)
10
- equalizer (~> 0.0.9)
11
- mprelude (~> 0.1.0)
12
- parser (>= 2.6.5)
13
- procto (~> 0.0.2)
14
-
15
- GEM
16
- remote: https://rubygems.org/
17
- remote: https://oss:Px2ENN7S91OmWaD5G7MIQJi1dmtmYrEh@gem.mutant.dev/
18
- specs:
19
- abstract_type (0.0.7)
20
- adamantium (0.2.0)
21
- ice_nine (~> 0.11.0)
22
- memoizable (~> 0.4.0)
23
- anima (0.3.1)
24
- abstract_type (~> 0.0.7)
25
- adamantium (~> 0.2)
26
- equalizer (~> 0.0.11)
27
- ast (2.4.1)
28
- concord (0.1.5)
29
- adamantium (~> 0.2.0)
30
- equalizer (~> 0.0.9)
31
- diff-lcs (1.3)
32
- equalizer (0.0.11)
33
- ice_nine (0.11.2)
34
- jaro_winkler (1.5.4)
35
- memoizable (0.4.2)
36
- thread_safe (~> 0.3, >= 0.3.1)
37
- mprelude (0.1.0)
38
- abstract_type (~> 0.0.7)
39
- adamantium (~> 0.2.0)
40
- concord (~> 0.1.5)
41
- equalizer (~> 0.0.9)
42
- ice_nine (~> 0.11.1)
43
- procto (~> 0.0.2)
44
- mutant (0.9.9)
45
- abstract_type (~> 0.0.7)
46
- adamantium (~> 0.2.0)
47
- anima (~> 0.3.1)
48
- ast (~> 2.2)
49
- concord (~> 0.1.5)
50
- diff-lcs (= 1.3)
51
- equalizer (~> 0.0.9)
52
- ice_nine (~> 0.11.1)
53
- memoizable (~> 0.4.2)
54
- mprelude (~> 0.1.0)
55
- parser (~> 2.7.1)
56
- procto (~> 0.0.2)
57
- unparser (~> 0.4.6)
58
- variable (~> 0.0.1)
59
- mutant-license (0.1.0)
60
- mutant-rspec (0.9.9)
61
- mutant (~> 0.9.9)
62
- rspec-core (>= 3.8.0, < 4.0.0)
63
- parallel (1.19.2)
64
- parser (2.7.1.4)
65
- ast (~> 2.4.1)
66
- procto (0.0.3)
67
- rainbow (3.0.0)
68
- rspec (3.9.0)
69
- rspec-core (~> 3.9.0)
70
- rspec-expectations (~> 3.9.0)
71
- rspec-mocks (~> 3.9.0)
72
- rspec-core (3.9.2)
73
- rspec-support (~> 3.9.3)
74
- rspec-expectations (3.9.2)
75
- diff-lcs (>= 1.2.0, < 2.0)
76
- rspec-support (~> 3.9.0)
77
- rspec-its (1.2.0)
78
- rspec-core (>= 3.0.0)
79
- rspec-expectations (>= 3.0.0)
80
- rspec-mocks (3.9.1)
81
- diff-lcs (>= 1.2.0, < 2.0)
82
- rspec-support (~> 3.9.0)
83
- rspec-support (3.9.3)
84
- rubocop (0.79.0)
85
- jaro_winkler (~> 1.5.1)
86
- parallel (~> 1.10)
87
- parser (>= 2.7.0.1)
88
- rainbow (>= 2.2.2, < 4.0)
89
- ruby-progressbar (~> 1.7)
90
- unicode-display_width (>= 1.4.0, < 1.7)
91
- ruby-progressbar (1.10.1)
92
- thread_safe (0.3.6)
93
- unicode-display_width (1.6.1)
94
- variable (0.0.1)
95
- equalizer (~> 0.0.11)
96
-
97
- PLATFORMS
98
- ruby
99
-
100
- DEPENDENCIES
101
- mutant (~> 0.9.9)
102
- mutant-license!
103
- mutant-rspec (~> 0.9.9)
104
- rspec (~> 3.9)
105
- rspec-core (~> 3.9)
106
- rspec-its (~> 1.2.0)
107
- rubocop (~> 0.79.0)
108
- unparser!
109
-
110
- BUNDLED WITH
111
- 1.17.3