cucumber-in-the-yard 1.7.3 → 1.7.4

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,3 +1,10 @@
1
+ === 1.7.4 / 2010-12-11
2
+
3
+ * Ruby 1.9.2 Support
4
+ * Change to YARD Server support:
5
+ yard server -e /path/to/gem/lib/server.b
6
+
7
+
1
8
  === 1.7.3 / 2010-12-06
2
9
 
3
10
  * Shortcut Keys (t) for tags and (r) for features (f was taken)
data/README.md CHANGED
@@ -77,6 +77,10 @@ OPTS environment variable:
77
77
 
78
78
  $ yardoc -e path/to/cucumber-in-the-yard/lib/city.rb -p path/to/cucumber-in-the-yard/lib/templates 'features/**/*.*'
79
79
 
80
+ **3. YARD Server**
81
+
82
+ $ yard server -e path/to/cucumber-in-the-yard/lib/server.rb
83
+
80
84
 
81
85
  Details
82
86
  --------
@@ -109,31 +113,34 @@ functionality may provide a valuable tool for many as I feel it helps more solid
109
113
  the documentation by putting a coat of paint on it.
110
114
 
111
115
 
112
- Short Term Goals
116
+ **Current Goals**
113
117
  ----------------
114
118
 
115
- 1. Add the features listing to the index.html
116
- 2. The landing page for 'All features' should be requirements landing page.
117
- 3. 'All Features' takes you to all the features.
119
+ 1. The landing page for 'All features' should be requirements landing page.
120
+
121
+ 2. 'All Features' takes you to all the features.
118
122
  * represent the file structure in a file structure way and change
119
123
  the subtitle 'subdirectories' to 'features by directory' and
120
124
  show the directory headings with the features within them
121
- 6. Provide readme.md markdown support within each of the feature subdirectories
122
- 7. Tag filering
125
+
126
+ 3. Provide readme.md markdown support within each of the feature subdirectories
127
+
128
+ 4. Tag filering
123
129
  * create and provide a video link of how to filter
124
130
  * allow you to remove tag elements visually with the mouse click
125
131
  * provide a copy to clipboard for the command line execution
126
- 8. Step Transformers
127
- * provide copy to clipboard
128
- * Think of a way to illustrate that a step has a transform being applied
129
- 9. Feature Directory
132
+ * Further testing for tag filtering
133
+
134
+ 5. Step Transformers
135
+ * Better way to illustrate that a step has a transformed applied to a parameter
136
+
137
+ 6. Feature Directory
130
138
  * Layout of the subdirectories should be more directory like and provide more information
131
- Roadmap
132
139
  * Parent directories of directories contain no feature/scenario/tags statistics
133
140
 
134
141
  -------
135
142
 
136
- **Future Feature Ideas**
143
+ **Future Ideas**
137
144
 
138
145
  **1. Table Step Transforms**
139
146
 
data/Rakefile CHANGED
@@ -2,12 +2,19 @@ require 'rake'
2
2
 
3
3
  task :default => :gendoc
4
4
 
5
- task :gendoc do
5
+ task :clean do
6
6
  `rm -rf doc`
7
7
  `rm -rf .yardoc`
8
- `yardoc -e lib/city.rb -p lib/templates 'example/**/*.*' --debug`
9
8
  end
10
9
 
11
- task :server do
12
- `yard server -e lib/city.rb --debug`
10
+ task :gendoc => :clean do
11
+ `yardoc -e ./lib/city.rb -p ./lib/templates 'example/**/*' --debug`
12
+ end
13
+
14
+ task :old => :clean do
15
+ `/usr/bin/yardoc -e lib/city.rb -p lib/templates 'example/**/*' --debug`
13
16
  end
17
+
18
+ task :server do
19
+ `yard server -e ./lib/server.rb --debug`
20
+ end
data/lib/city.rb CHANGED
@@ -2,8 +2,9 @@ require 'cucumber/parser/gherkin_builder'
2
2
  require 'gherkin/parser/parser'
3
3
  require 'gherkin/formatter/tag_count_formatter'
4
4
 
5
+
5
6
  module CucumberInTheYARD
6
- VERSION = '1.7.3' unless defined?(CucumberInTheYARD::VERSION)
7
+ VERSION = '1.7.4' unless defined?(CucumberInTheYARD::VERSION)
7
8
  end
8
9
 
9
10
  require File.dirname(__FILE__) + "/yard/code_objects/cucumber/base.rb"
@@ -29,21 +30,14 @@ require File.dirname(__FILE__) + "/yard/handlers/cucumber/feature_handler.rb"
29
30
  require File.dirname(__FILE__) + "/yard/handlers/step_definition_handler.rb"
30
31
  require File.dirname(__FILE__) + "/yard/handlers/step_transform_handler.rb"
31
32
 
33
+
34
+ require File.dirname(__FILE__) + "/yard/handlers/legacy/step_definition_handler.rb"
35
+ require File.dirname(__FILE__) + "/yard/handlers/legacy/step_transform_handler.rb"
36
+
32
37
  require File.dirname(__FILE__) + "/yard/parser/source_parser.rb"
33
38
  require File.dirname(__FILE__) + "/yard/templates/helpers/base_helper.rb"
34
39
 
35
40
  require File.dirname(__FILE__) + "/yard/server/commands/list_command.rb"
36
41
  require File.dirname(__FILE__) + "/yard/server/router.rb"
37
42
 
38
- require File.dirname(__FILE__) + "/yard/rake/city_task.rb"
39
-
40
-
41
- #
42
- # For `yard server` utilize the templates and the static files at these locations
43
- # before using the defaults
44
- #
45
- YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/templates'
46
- YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/docserver'
47
-
48
- YARD::Server.register_static_path File.dirname(__FILE__) + "/templates/default/fulldoc/html"
49
- YARD::Server.register_static_path File.dirname(__FILE__) + "/docserver/default/fulldoc/html"
43
+ require File.dirname(__FILE__) + "/yard/rake/city_task.rb"
data/lib/server.rb ADDED
@@ -0,0 +1,10 @@
1
+ require File.dirname(__FILE__) + "/city"
2
+ #
3
+ # For `yard server` utilize the templates and the static files at these locations
4
+ # before using the defaults
5
+ #
6
+ YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/templates'
7
+ YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/docserver'
8
+
9
+ YARD::Server.register_static_path File.dirname(__FILE__) + "/templates/default/fulldoc/html"
10
+ YARD::Server.register_static_path File.dirname(__FILE__) + "/docserver/default/fulldoc/html"
@@ -1,6 +1,7 @@
1
1
  <script type="text/javascript" charset="utf-8">
2
2
  $(function() {
3
3
  $(".developer").hide();
4
+ $(".scenario").css('cursor','pointer');
4
5
  });
5
6
  </script>
6
7
 
@@ -4,7 +4,7 @@
4
4
  <a class="toggle"> - </a>
5
5
  <span class="pre"><%= @scenario.keyword %>:</span>
6
6
  <span class="name"><%= h @scenario.value %></span>
7
- <a style="float:right; clear:right;" href="<% url_for(@scenario.feature,"scenario#{@id}") %>">link</a>
7
+ <a class="link" style="float:right; clear:right;" href="<% url_for(@scenario.feature,"scenario#{@id}") %>">link</a>
8
8
  </div>
9
9
 
10
10
  <% if @scenario.description.length > 0 %>
@@ -4,7 +4,7 @@
4
4
  <a name="<%= anchor_for item %>"></a>
5
5
  <div class="title">
6
6
  <span class="pre"><%= h item.keyword %></span>
7
- <span class="name"><%= h item.value %></span>
7
+ <span class="name"><%= link_constants item %></span>
8
8
  <a style="float: right;" href="http://rubular.com/?regex=<%= urlencode item.value %>" target="_blank">Rubular</a>
9
9
  <div style="clear: both;"></div>
10
10
  </div>
@@ -3,7 +3,6 @@ def init
3
3
  sections.push :stepdefinitions, :steptransforms, :undefined_steps
4
4
  end
5
5
 
6
-
7
6
  def stepdefinitions
8
7
  @item_title = "Step Definitions"
9
8
  @item_type = "step definition"
@@ -32,6 +31,18 @@ def unique_steps(steps)
32
31
  uniq_steps
33
32
  end
34
33
 
34
+ def link_constants(definition)
35
+ value = definition.literal_value.dup
36
+
37
+ definition.constants_from_value(value).each do |name|
38
+ constant = YARD::Registry.all(:constant).find{|c| c.name == name.to_sym }
39
+ value.gsub!(/\b#{name}\b/,"<a href='#{url_for(constant)}'>#{name}</a>") if constant
40
+ end
41
+
42
+ value
43
+ end
44
+
45
+
35
46
  def link_transformed_step(step)
36
47
  value = step.value.dup
37
48
 
@@ -5,14 +5,15 @@ module YARD::CodeObjects
5
5
 
6
6
  include Cucumber::LocationHelper
7
7
 
8
- attr_reader :constants, :keyword, :source, :value
8
+ attr_reader :constants, :keyword, :source, :value, :literal_value
9
9
  attr_accessor :steps
10
10
 
11
11
  ESCAPE_PATTERN = /#\{\s*(\w+)\s*\}/
12
12
 
13
13
  def value=(value)
14
+ @literal_value = format_source(value)
14
15
  @value = format_source(value)
15
-
16
+
16
17
  until (nested = constants_from_value).empty?
17
18
  nested.each {|n| @value.gsub!(value_regex(n),find_value_for_constant(n)) }
18
19
  end
@@ -14,7 +14,6 @@ module YARD
14
14
  @@step_definitions = cache(:stepdefinition) unless @@step_definitions
15
15
  @@step_transforms = cache(:steptransform) unless @@step_transforms
16
16
 
17
-
18
17
  if statement
19
18
  # For the background and the scenario, find the steps that have definitions
20
19
  process_scenario(statement.background) if statement.background
@@ -27,7 +26,6 @@ module YARD
27
26
  process_scenario(example)
28
27
  end
29
28
  else
30
- #log.info "Processing Scenario: #{scenario.value}"
31
29
  process_scenario(scenario)
32
30
  end
33
31
  end
@@ -65,8 +63,7 @@ module YARD
65
63
  end
66
64
 
67
65
  def match_step_to_step_definition_and_transforms(step)
68
- @@step_definitions.each do |stepdef,stepdef_object|
69
-
66
+ @@step_definitions.each_pair do |stepdef,stepdef_object|
70
67
  stepdef_matches = step.value.match(stepdef)
71
68
 
72
69
  if stepdef_matches
@@ -81,6 +78,7 @@ module YARD
81
78
  end
82
79
 
83
80
  # Step has been matched to step definition and step transforms
81
+ # TODO: If the step were to match again then we would be able to display ambigous step definitions
84
82
  break
85
83
 
86
84
  end
@@ -0,0 +1,46 @@
1
+ class YARD::Handlers::Ruby::Legacy::StepDefinitionHandler < YARD::Handlers::Ruby::Legacy::Base
2
+ #TODO: This needs to become language independent.
3
+ STEP_DEFINITION_MATCH = /^((When|Given|And|Then)\s*(\/.+\/)\s+do(?:\s*\|.+\|)?\s*)$/
4
+ handles STEP_DEFINITION_MATCH
5
+
6
+ @@unique_name = 0
7
+
8
+ def process
9
+ keyword = statement.tokens.to_s[STEP_DEFINITION_MATCH,2]
10
+ step_definition = statement.tokens.to_s[STEP_DEFINITION_MATCH,3]
11
+
12
+ @@unique_name = @@unique_name + 1
13
+
14
+ stepdef_instance = StepDefinitionObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE, "definition_#{@@unique_name}") do |o|
15
+ o.source = "#{keyword} #{step_definition} do #{statement.block.to_s =~ /^\s*\|.+/ ? '' : "\n "}#{statement.block.to_s}\nend"
16
+ o.value = step_definition
17
+ o.keyword = keyword
18
+ end
19
+
20
+ obj = register stepdef_instance
21
+ parse_block :owner => obj
22
+
23
+ rescue YARD::Handlers::NamespaceMissingError
24
+ end
25
+
26
+ #
27
+ # Step Definitions can contain defined steps within them. While it is likely that they could not
28
+ # very easily be parsed because of variables that are only calculated at runtime, it would be nice
29
+ # to at least list those in use within a step definition and if you can find a match, go ahead and
30
+ # make it
31
+ #
32
+ def find_steps_defined_in_block(block)
33
+ #log.debug "#{block} #{block.class}"
34
+ block.each_with_index do |token,index|
35
+ #log.debug "Token #{token.class} #{token.text}"
36
+ if token.is_a?(YARD::Parser::Ruby::Legacy::RubyToken::TkCONSTANT) &&
37
+ token.text =~ /^(given|when|then|and)$/i &&
38
+ block[index + 2].is_a?(YARD::Parser::Ruby::Legacy::RubyToken::TkSTRING)
39
+ log.debug "Step found in Step Definition: #{block[index + 2].text} "
40
+ end
41
+
42
+ end
43
+
44
+ end
45
+
46
+ end
@@ -0,0 +1,24 @@
1
+ class YARD::Handlers::Ruby::Legacy::StepTransformHandler < YARD::Handlers::Ruby::Legacy::Base
2
+ STEP_TRANSFORM_MATCH = /^(Transform\s*(\/.+\/)\s+do(?:\s*\|.+\|)?\s*)$/
3
+ handles STEP_TRANSFORM_MATCH
4
+
5
+ @@unique_name = 0
6
+
7
+ def process
8
+ transform = statement.tokens.to_s[STEP_TRANSFORM_MATCH,2]
9
+ @@unique_name = @@unique_name + 1
10
+
11
+ instance = StepTransformObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE, "transform_#{@@unique_name}") do |o|
12
+ o.source = "Transform #{transform} do #{statement.block.to_s}\nend"
13
+ o.value = transform
14
+ o.keyword = "Transform"
15
+ end
16
+
17
+ obj = register instance
18
+ parse_block :owner => obj
19
+
20
+ rescue YARD::Handlers::NamespaceMissingError
21
+ end
22
+
23
+ end
24
+
@@ -1,48 +1,42 @@
1
-
2
-
3
- class StepDefinitionHandler < YARD::Handlers::Ruby::Legacy::Base
4
- #TODO: This needs to become language independent.
5
- STEP_DEFINITION_MATCH = /^((When|Given|And|Then)\s*(\/.+\/)\s+do(?:\s*\|.+\|)?\s*)$/
6
- handles STEP_DEFINITION_MATCH
7
-
8
- @@unique_name = 0
9
-
10
- def process
11
- keyword = statement.tokens.to_s[STEP_DEFINITION_MATCH,2]
12
- step_definition = statement.tokens.to_s[STEP_DEFINITION_MATCH,3]
13
-
14
- @@unique_name = @@unique_name + 1
15
-
16
- stepdef_instance = StepDefinitionObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE, "definition_#{@@unique_name}") do |o|
17
- o.source = "#{keyword} #{step_definition} do #{statement.block.to_s =~ /^\s*\|.+/ ? '' : "\n "}#{statement.block.to_s}\nend"
18
- o.value = step_definition
19
- o.keyword = keyword
20
- end
21
-
22
- obj = register stepdef_instance
23
- parse_block :owner => obj
24
-
25
- rescue YARD::Handlers::NamespaceMissingError
26
- end
27
-
28
- #
29
- # Step Definitions can contain defined steps within them. While it is likely that they could not
30
- # very easily be parsed because of variables that are only calculated at runtime, it would be nice
31
- # to at least list those in use within a step definition and if you can find a match, go ahead and
32
- # make it
33
- #
34
- def find_steps_defined_in_block(block)
35
- #log.debug "#{block} #{block.class}"
36
- block.each_with_index do |token,index|
37
- #log.debug "Token #{token.class} #{token.text}"
38
- if token.is_a?(YARD::Parser::Ruby::Legacy::RubyToken::TkCONSTANT) &&
39
- token.text =~ /^(given|when|then|and)$/i &&
40
- block[index + 2].is_a?(YARD::Parser::Ruby::Legacy::RubyToken::TkSTRING)
41
- log.debug "Step found in Step Definition: #{block[index + 2].text} "
42
- end
43
-
44
- end
45
-
46
- end
47
-
48
- end
1
+
2
+ class YARD::Handlers::Ruby::StepDefinitionHandler < YARD::Handlers::Ruby::Base
3
+ handles method_call(:When),method_call(:Given),method_call(:And),method_call(:Then)
4
+
5
+ @@unique_name = 0
6
+
7
+ process do
8
+ @@unique_name += 1
9
+
10
+ instance = StepDefinitionObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE,"step_definition#{@@unique_name}") do |o|
11
+ o.source = statement.source
12
+ o.comments = statement.comments
13
+ o.keyword = statement[0].source
14
+ o.value = statement[1].source
15
+ end
16
+
17
+ obj = register instance
18
+ parse_block(statement[2],:owner => obj)
19
+
20
+ end
21
+
22
+ #
23
+ # Step Definitions can contain defined steps within them. While it is likely that they could not
24
+ # very easily be parsed because of variables that are only calculated at runtime, it would be nice
25
+ # to at least list those in use within a step definition and if you can find a match, go ahead and
26
+ # make it
27
+ #
28
+ def find_steps_defined_in_block(block)
29
+ #log.debug "#{block} #{block.class}"
30
+ block.each_with_index do |token,index|
31
+ #log.debug "Token #{token.class} #{token.text}"
32
+ if token.is_a?(YARD::Parser::Ruby::Legacy::RubyToken::TkCONSTANT) &&
33
+ token.text =~ /^(given|when|then|and)$/i &&
34
+ block[index + 2].is_a?(YARD::Parser::Ruby::Legacy::RubyToken::TkSTRING)
35
+ log.debug "Step found in Step Definition: #{block[index + 2].text} "
36
+ end
37
+
38
+ end
39
+
40
+ end
41
+
42
+ end
@@ -1,26 +1,23 @@
1
-
2
-
3
- class StepTransformHandler < YARD::Handlers::Ruby::Legacy::Base
4
- STEP_TRANSFORM_MATCH = /^(Transform\s*(\/.+\/)\s+do(?:\s*\|.+\|)?\s*)$/
5
- handles STEP_TRANSFORM_MATCH
6
-
7
- @@unique_name = 0
8
-
9
- def process
10
- transform = statement.tokens.to_s[STEP_TRANSFORM_MATCH,2]
11
- @@unique_name = @@unique_name + 1
12
-
13
- instance = StepTransformObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE, "transform_#{@@unique_name}") do |o|
14
- o.source = "Transform #{transform} do #{statement.block.to_s}\nend"
15
- o.value = transform
16
- o.keyword = "Transform"
17
- end
18
-
19
- obj = register instance
20
- parse_block :owner => obj
21
-
22
- rescue YARD::Handlers::NamespaceMissingError
23
- end
24
-
25
- end
26
-
1
+
2
+ class YARD::Handlers::Ruby::StepTransformHandler < YARD::Handlers::Ruby::Base
3
+ handles method_call(:Transform)
4
+
5
+ @@unique_name = 0
6
+
7
+ process do
8
+ @@unique_name += 1
9
+
10
+ instance = StepTransformObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE,"step_definition#{@@unique_name}") do |o|
11
+ o.source = statement.source
12
+ o.comments = statement.comments
13
+ o.keyword = statement[0].source
14
+ o.value = statement[1].source
15
+ end
16
+
17
+ obj = register instance
18
+ parse_block(statement[2],:owner => obj)
19
+
20
+ end
21
+
22
+ end
23
+
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-in-the-yard
3
3
  version: !ruby/object:Gem::Version
4
- hash: 13
5
4
  prerelease: false
6
5
  segments:
7
6
  - 1
8
7
  - 7
9
- - 3
10
- version: 1.7.3
8
+ - 4
9
+ version: 1.7.4
11
10
  platform: ruby
12
11
  authors:
13
12
  - Franklin Webber
@@ -15,7 +14,7 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-12-06 00:00:00 -08:00
17
+ date: 2010-12-12 00:00:00 -08:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
@@ -26,7 +25,6 @@ dependencies:
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- hash: 21
30
28
  segments:
31
29
  - 2
32
30
  - 2
@@ -42,7 +40,6 @@ dependencies:
42
40
  requirements:
43
41
  - - ">="
44
42
  - !ruby/object:Gem::Version
45
- hash: 9
46
43
  segments:
47
44
  - 0
48
45
  - 7
@@ -58,7 +55,6 @@ dependencies:
58
55
  requirements:
59
56
  - - ">="
60
57
  - !ruby/object:Gem::Version
61
- hash: 3
62
58
  segments:
63
59
  - 0
64
60
  - 6
@@ -98,6 +94,7 @@ files:
98
94
  - lib/docserver/default/layout/html/headers.erb
99
95
  - lib/docserver/doc_server/full_list/html/full_list.erb
100
96
  - lib/docserver/doc_server/full_list/html/setup.rb
97
+ - lib/server.rb
101
98
  - lib/templates/default/feature/html/feature.erb
102
99
  - lib/templates/default/feature/html/no_steps_defined.erb
103
100
  - lib/templates/default/feature/html/outline.erb
@@ -146,6 +143,8 @@ files:
146
143
  - lib/yard/code_objects/step_transformer.rb
147
144
  - lib/yard/handlers/cucumber/base.rb
148
145
  - lib/yard/handlers/cucumber/feature_handler.rb
146
+ - lib/yard/handlers/legacy/step_definition_handler.rb
147
+ - lib/yard/handlers/legacy/step_transform_handler.rb
149
148
  - lib/yard/handlers/step_definition_handler.rb
150
149
  - lib/yard/handlers/step_transform_handler.rb
151
150
  - lib/yard/parser/cucumber/feature.rb
@@ -158,27 +157,9 @@ has_rdoc: true
158
157
  homepage: http://github.com/burtlo/Cucumber-In-The-Yard
159
158
  licenses: []
160
159
 
161
- post_install_message: |+
162
-
163
- (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
164
-
165
- Thank you for installing Cucumber-In-The-YARD 1.7.3 / 2010-12-06.
166
-
167
- Changes:
168
-
169
- * Shortcut Keys (t) for tags and (r) for features (f was taken)
170
- * Step definitions/transforms consolidate steps for easier viewing
171
- and when they have no steps they are colored differently
172
- * Tag filtering supports inverse (~) of tags
173
-
174
- * FIX Scenario Outlines without examples will not crash the parser
175
- * FIX Features, Scenarios, and Directories should display in alphabetic order
176
- * FIX Comments and multiline strings will display correctly
177
- * FIX Feature comments will show
178
-
179
-
180
- (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
181
-
160
+ post_install_message: "\n\
161
+ (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)\n\n Thank you for installing Cucumber-In-The-YARD 1.7.4 / 2010-12-11.\n \n Changes:\n \n * Ruby 1.9.2 Support\n * Change to YARD Server support:\n yard server -e /path/to/gem/lib/server.b\n \n \n\n\
162
+ (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)\n\n"
182
163
  rdoc_options:
183
164
  - --charset=UTF-8
184
165
  require_paths:
@@ -188,7 +169,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
188
169
  requirements:
189
170
  - - ">="
190
171
  - !ruby/object:Gem::Version
191
- hash: 3
192
172
  segments:
193
173
  - 0
194
174
  version: "0"
@@ -197,7 +177,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
197
177
  requirements:
198
178
  - - ">="
199
179
  - !ruby/object:Gem::Version
200
- hash: 3
201
180
  segments:
202
181
  - 0
203
182
  version: "0"