gherkin 2.3.10-universal-dotnet → 2.4.0-universal-dotnet

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 (45) hide show
  1. data/.gitignore +2 -0
  2. data/.yardopts +5 -0
  3. data/{History.txt → History.md} +144 -133
  4. data/{README.rdoc → README.md} +62 -64
  5. data/Rakefile +1 -1
  6. data/features/json_formatter.feature +1 -1
  7. data/features/json_parser.feature +1 -1
  8. data/gherkin.gemspec +8 -3
  9. data/lib/gherkin/formatter/ansi_escapes.rb +1 -1
  10. data/lib/gherkin/formatter/model.rb +4 -4
  11. data/lib/gherkin/formatter/pretty_formatter.rb +4 -4
  12. data/lib/gherkin/json_parser.rb +1 -1
  13. data/lib/gherkin/listener/formatter_listener.rb +7 -7
  14. data/lib/gherkin/parser/meta.txt +1 -1
  15. data/lib/gherkin/parser/root.txt +1 -1
  16. data/lib/gherkin/parser/steps.txt +1 -1
  17. data/lib/gherkin/rubify.rb +2 -2
  18. data/ragel/lexer.c.rl.erb +1 -1
  19. data/ragel/lexer.java.rl.erb +1 -1
  20. data/ragel/lexer.js.rl.erb +2 -2
  21. data/ragel/lexer.rb.rl.erb +1 -1
  22. data/ragel/lexer_common.rl.erb +4 -4
  23. data/spec/gherkin/c_lexer_spec.rb +1 -1
  24. data/spec/gherkin/fixtures/complex.json +1 -1
  25. data/spec/gherkin/java_lexer_spec.rb +1 -1
  26. data/spec/gherkin/js_lexer_spec.rb +1 -1
  27. data/spec/gherkin/rb_lexer_spec.rb +1 -1
  28. data/spec/gherkin/sexp_recorder.rb +2 -2
  29. data/spec/gherkin/shared/{py_string_group.rb → doc_string_group.rb} +28 -28
  30. data/spec/gherkin/shared/lexer_group.rb +4 -4
  31. data/spec/spec_helper.rb +1 -1
  32. data/tasks/compile.rake +3 -2
  33. data/tasks/cucumber.rake +1 -1
  34. data/tasks/gems.rake +1 -1
  35. data/tasks/release.rake +8 -1
  36. data/tasks/yard.rake +7 -0
  37. data/tasks/yard/default/layout/html/bubble_32x32.png +0 -0
  38. data/tasks/yard/default/layout/html/bubble_48x48.png +0 -0
  39. data/tasks/yard/default/layout/html/footer.erb +5 -0
  40. data/tasks/yard/default/layout/html/index.erb +1 -0
  41. data/tasks/yard/default/layout/html/layout.erb +25 -0
  42. data/tasks/yard/default/layout/html/logo.erb +1 -0
  43. data/tasks/yard/default/layout/html/setup.rb +4 -0
  44. metadata +45 -17
  45. data/tasks/rdoc.rake +0 -9
@@ -23,7 +23,7 @@ module Gherkin
23
23
 
24
24
  action store_pystring_content {
25
25
  con = unindent(@start_col, utf8_pack(data[@content_start...@next_keyword_start-1]).sub(/(\r?\n)?([\t ])*\Z/, '').gsub(/\\"\\"\\"/, '"""'))
26
- @listener.py_string(con, @current_line)
26
+ @listener.doc_string(con, @current_line)
27
27
  }
28
28
 
29
29
  action store_feature_content {
@@ -40,11 +40,11 @@
40
40
  RowBody = space* Cell** PIPE :>> (space* EOL+ space*) %store_row;
41
41
  Row = StartRow :>> RowBody <: EndRow?;
42
42
 
43
- StartPyString = '"""' >start_pystring space* :>> EOL;
44
- EndPyString = (space* '"""') >next_keyword_start;
45
- PyString = space* StartPyString %begin_pystring_content (^EOL | EOL)* :>> EndPyString %store_pystring_content space* EOL+;
43
+ StartDocString = '"""' >start_pystring space* :>> EOL;
44
+ EndDocString = (space* '"""') >next_keyword_start;
45
+ DocString = space* StartDocString %begin_pystring_content (^EOL | EOL)* :>> EndDocString %store_pystring_content space* EOL+;
46
46
 
47
- Tokens = BOM? (space | EOL)* (Tags | Comment | FeatureHeading | BackgroundHeading | ScenarioHeading | ScenarioOutlineHeading | ExamplesHeading | Step | Row | PyString)* (space | EOL)* EOF;
47
+ Tokens = BOM? (space | EOL)* (Tags | Comment | FeatureHeading | BackgroundHeading | ScenarioHeading | ScenarioOutlineHeading | ExamplesHeading | Step | Row | DocString)* (space | EOL)* EOF;
48
48
 
49
49
  main := Tokens %end_feature @!end_feature;
50
50
  }%%
@@ -13,7 +13,7 @@ module Gherkin
13
13
 
14
14
  it_should_behave_like "a Gherkin lexer"
15
15
  it_should_behave_like "a Gherkin lexer lexing tags"
16
- it_should_behave_like "a Gherkin lexer lexing py_strings"
16
+ it_should_behave_like "a Gherkin lexer lexing doc_strings"
17
17
  it_should_behave_like "a Gherkin lexer lexing rows"
18
18
  it_should_behave_like "parsing windows files"
19
19
  end
@@ -129,7 +129,7 @@
129
129
  { "name" : "All work and no play",
130
130
  "keyword": "Given ",
131
131
  "multiline_arg": {
132
- "type": "py_string",
132
+ "type": "doc_string",
133
133
  "value": "Makes Homer something something\nAnd something else",
134
134
  "line": 777
135
135
  }
@@ -12,7 +12,7 @@ module Gherkin
12
12
 
13
13
  it_should_behave_like "a Gherkin lexer"
14
14
  it_should_behave_like "a Gherkin lexer lexing tags"
15
- it_should_behave_like "a Gherkin lexer lexing py_strings"
15
+ it_should_behave_like "a Gherkin lexer lexing doc_strings"
16
16
  it_should_behave_like "a Gherkin lexer lexing rows"
17
17
  end
18
18
  end
@@ -13,7 +13,7 @@ module Gherkin
13
13
 
14
14
  it_should_behave_like "a Gherkin lexer"
15
15
  it_should_behave_like "a Gherkin lexer lexing tags"
16
- it_should_behave_like "a Gherkin lexer lexing py_strings"
16
+ it_should_behave_like "a Gherkin lexer lexing doc_strings"
17
17
  it_should_behave_like "a Gherkin lexer lexing rows"
18
18
  # TODO - make this pass!
19
19
  # it_should_behave_like "parsing windows files"
@@ -12,7 +12,7 @@ module Gherkin
12
12
 
13
13
  it_should_behave_like "a Gherkin lexer"
14
14
  it_should_behave_like "a Gherkin lexer lexing tags"
15
- it_should_behave_like "a Gherkin lexer lexing py_strings"
15
+ it_should_behave_like "a Gherkin lexer lexing doc_strings"
16
16
  it_should_behave_like "a Gherkin lexer lexing rows"
17
17
  it_should_behave_like "parsing windows files"
18
18
  end
@@ -10,10 +10,10 @@ module Gherkin
10
10
  end
11
11
 
12
12
  # We can't use method_missing - therubyracer isn't able to invoke methods like that.
13
- [:comment, :tag, :feature, :background, :scenario, :scenario_outline, :examples, :step, :py_string, :row, :eof, :uri, :syntax_error].each do |event|
13
+ [:comment, :tag, :feature, :background, :scenario, :scenario_outline, :examples, :step, :doc_string, :row, :eof, :uri, :syntax_error].each do |event|
14
14
  define_method(event) do |*args|
15
15
  event = :scenario_outline if event == :scenarioOutline # Special Java Lexer handling
16
- event = :py_string if event == :pyString # Special Java Lexer handling
16
+ event = :doc_string if event == :docString # Special Java Lexer handling
17
17
  event = :syntax_error if event == :syntaxError # Special Java Lexer handling
18
18
  args = rubify(args)
19
19
  args = sexpify(args)
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
 
4
4
  module Gherkin
5
5
  module Lexer
6
- shared_examples_for "a Gherkin lexer lexing py_strings" do
6
+ shared_examples_for "a Gherkin lexer lexing doc_strings" do
7
7
  def scan(gherkin)
8
8
  @lexer.scan(gherkin)
9
9
  end
@@ -23,47 +23,47 @@ Feature: some feature
23
23
  """
24
24
  Then bar
25
25
  EOS
26
- @listener.should_receive(:py_string).with(" Hello\nGoodbye", 4)
26
+ @listener.should_receive(:doc_string).with(" Hello\nGoodbye", 4)
27
27
  scan(str)
28
28
  end
29
29
 
30
- it "should parse a simple py_string" do
31
- @listener.should_receive(:py_string).with("I am a py_string", 1)
32
- scan ps("I am a py_string")
30
+ it "should parse a simple doc_string" do
31
+ @listener.should_receive(:doc_string).with("I am a doc_string", 1)
32
+ scan ps("I am a doc_string")
33
33
  end
34
34
 
35
- it "should parse an empty py_string" do
36
- @listener.should_receive(:py_string).with("", 4)
35
+ it "should parse an empty doc_string" do
36
+ @listener.should_receive(:doc_string).with("", 4)
37
37
  scan("Feature: Hi\nScenario: Hi\nGiven a step\n\"\"\"\n\"\"\"")
38
38
  end
39
39
 
40
40
  it "should treat a string containing only newlines as only newlines" do
41
- py_string = <<EOS
41
+ doc_string = <<EOS
42
42
  """
43
43
 
44
44
 
45
45
 
46
46
  """
47
47
  EOS
48
- @listener.should_receive(:py_string).with("\n\n", 1)
49
- scan(py_string)
48
+ @listener.should_receive(:doc_string).with("\n\n", 1)
49
+ scan(doc_string)
50
50
  end
51
51
 
52
52
  it "should parse content separated by two newlines" do
53
53
  scan ps("A\n\nB")
54
54
  @listener.to_sexp.should == [
55
- [:py_string, "A\n\nB", 1],
55
+ [:doc_string, "A\n\nB", 1],
56
56
  [:eof]
57
57
  ]
58
58
  end
59
59
 
60
60
  it "should parse a multiline string" do
61
- @listener.should_receive(:py_string).with("A\nB\nC\nD", 1)
61
+ @listener.should_receive(:doc_string).with("A\nB\nC\nD", 1)
62
62
  scan ps("A\nB\nC\nD")
63
63
  end
64
64
 
65
65
  it "should ignore unescaped quotes inside the string delimeters" do
66
- @listener.should_receive(:py_string).with("What does \"this\" mean?", 1)
66
+ @listener.should_receive(:doc_string).with("What does \"this\" mean?", 1)
67
67
  scan ps('What does "this" mean?')
68
68
  end
69
69
 
@@ -74,17 +74,17 @@ str = <<EOS
74
74
  Line two
75
75
  """
76
76
  EOS
77
- @listener.should_receive(:py_string).with(" Line one\nLine two", 1)
77
+ @listener.should_receive(:doc_string).with(" Line one\nLine two", 1)
78
78
  scan(str)
79
79
  end
80
80
 
81
81
  it "should preserve tabs within the content" do
82
- @listener.should_receive(:py_string).with("I have\tsome tabs\nInside\t\tthe content", 1)
82
+ @listener.should_receive(:doc_string).with("I have\tsome tabs\nInside\t\tthe content", 1)
83
83
  scan ps("I have\tsome tabs\nInside\t\tthe content")
84
84
  end
85
85
 
86
- it "should handle complex py_strings" do
87
- py_string = <<EOS
86
+ it "should handle complex doc_strings" do
87
+ doc_string = <<EOS
88
88
  # Feature comment
89
89
  @one
90
90
  Feature: Sample
@@ -98,34 +98,34 @@ Feature: Sample
98
98
 
99
99
  EOS
100
100
 
101
- @listener.should_receive(:py_string).with(py_string, 1)
102
- scan ps(py_string)
101
+ @listener.should_receive(:doc_string).with(doc_string, 1)
102
+ scan ps(doc_string)
103
103
  end
104
104
 
105
- it "should allow whitespace after the closing py_string delimiter" do
105
+ it "should allow whitespace after the closing doc_string delimiter" do
106
106
  str = <<EOS
107
107
  """
108
108
  Line one
109
109
  """
110
110
  EOS
111
- @listener.should_receive(:py_string).with(" Line one", 1)
111
+ @listener.should_receive(:doc_string).with(" Line one", 1)
112
112
  scan(str)
113
113
  end
114
114
 
115
- it "should preserve the last newline(s) at the end of a py_string" do
115
+ it "should preserve the last newline(s) at the end of a doc_string" do
116
116
  str = <<EOS
117
117
  """
118
- PyString text
118
+ DocString text
119
119
 
120
120
 
121
121
  """
122
122
  EOS
123
- @listener.should_receive(:py_string).with("PyString text\n\n",1)
123
+ @listener.should_receive(:doc_string).with("DocString text\n\n",1)
124
124
  scan(str)
125
125
  end
126
126
 
127
- it "should preserve CRLFs within py_strings" do
128
- @listener.should_receive(:py_string).with("Line one\r\nLine two\r\n", 1)
127
+ it "should preserve CRLFs within doc_strings" do
128
+ @listener.should_receive(:doc_string).with("Line one\r\nLine two\r\n", 1)
129
129
  scan("\"\"\"\r\nLine one\r\nLine two\r\n\r\n\"\"\"")
130
130
  end
131
131
 
@@ -135,7 +135,7 @@ str = <<EOS
135
135
  \\"\\"\\"
136
136
  """
137
137
  EOS
138
- @listener.should_receive(:py_string).with('"""', 1)
138
+ @listener.should_receive(:doc_string).with('"""', 1)
139
139
  scan(str)
140
140
  end
141
141
 
@@ -145,7 +145,7 @@ str = <<EOS
145
145
  \\" \\"\\"
146
146
  """
147
147
  EOS
148
- @listener.should_receive(:py_string).with('\" \"\"', 1)
148
+ @listener.should_receive(:doc_string).with('\" \"\"', 1)
149
149
  scan(str)
150
150
  end
151
151
  end
@@ -282,11 +282,11 @@ f'real
282
282
  ]
283
283
  end
284
284
 
285
- it "should parse steps with inline py_string" do
285
+ it "should parse steps with inline doc_string" do
286
286
  scan("Given I have a string\n\"\"\"\nhello\nworld\n\"\"\"")
287
287
  @listener.to_sexp.should == [
288
288
  [:step, "Given ", "I have a string", 1],
289
- [:py_string, "hello\nworld", 2],
289
+ [:doc_string, "hello\nworld", 2],
290
290
  [:eof]
291
291
  ]
292
292
  end
@@ -497,7 +497,7 @@ f'real
497
497
  [:step, "Then ", "I am happy", 37],
498
498
  [:scenario, "Scenario", "Hammerzeit", "", 39],
499
499
  [:step, "Given ", "All work and no play", 40],
500
- [:py_string, "Makes Homer something something\nAnd something else", 41 ],
500
+ [:doc_string, "Makes Homer something something\nAnd something else", 41 ],
501
501
  [:step, "Then ", "crazy", 45],
502
502
  [:eof]
503
503
  ]
@@ -540,7 +540,7 @@ f'real
540
540
  [:step, "Then ", "I am happy", 37],
541
541
  [:scenario, "Scenario", "Hammerzeit", "", 39],
542
542
  [:step, "Given ", "All work and no play", 40],
543
- [:py_string, "Makes Homer something something\r\nAnd something else", 41],
543
+ [:doc_string, "Makes Homer something something\r\nAnd something else", 41],
544
544
  [:step, "Then ", "crazy", 45],
545
545
  [:eof]
546
546
  ]
data/spec/spec_helper.rb CHANGED
@@ -11,7 +11,7 @@ require 'gherkin/java_libs'
11
11
  require 'gherkin/shared/bom_group'
12
12
  require 'gherkin/shared/lexer_group'
13
13
  require 'gherkin/shared/tags_group'
14
- require 'gherkin/shared/py_string_group'
14
+ require 'gherkin/shared/doc_string_group'
15
15
  require 'gherkin/shared/row_group'
16
16
  $:.unshift(File.dirname(__FILE__))
17
17
 
data/tasks/compile.rake CHANGED
@@ -12,7 +12,8 @@ CLEAN.include [
12
12
  'ext/**/*.c',
13
13
  'java/src/main/java/gherkin/lexer/i18n/*.java',
14
14
  'java/src/main/resources/gherkin/*.properties',
15
- 'js/lib/gherkin/lexer/*.js'
15
+ 'js/lib/gherkin/lexer/*.js',
16
+ 'doc'
16
17
  ]
17
18
 
18
19
  desc "Compile the Java extensions"
@@ -72,7 +73,7 @@ langs.each do |i18n|
72
73
  io.write(<<-EOF)
73
74
  require 'mkmf'
74
75
  CONFIG['warnflags'].gsub!(/-Wshorten-64-to-32/, '') if CONFIG['warnflags']
75
- $CFLAGS << ' -O0 -Wall -Werror' if CONFIG['CC'] =~ /gcc/
76
+ $CFLAGS << ' -O0 -Wall' if CONFIG['CC'] =~ /gcc/
76
77
  dir_config("gherkin_lexer_#{i18n.underscored_iso_code}")
77
78
  have_library("c", "main")
78
79
  create_makefile("gherkin_lexer_#{i18n.underscored_iso_code}")
data/tasks/cucumber.rake CHANGED
@@ -1,4 +1,4 @@
1
- unless ENV['RUBY_CC_VERSION']
1
+ unless ENV['RUBY_CC_VERSION'] || defined?(JRUBY_VERSION)
2
2
  require 'cucumber/rake/task'
3
3
 
4
4
  Cucumber::Rake::Task.new(:cucumber) do |t|
data/tasks/gems.rake CHANGED
@@ -8,7 +8,7 @@ namespace :gems do
8
8
  sh "rvm 1.8.6-p399@cucumber rake cross compile RUBY_CC_VERSION=1.8.6"
9
9
  sh "rvm 1.9.1-p243@cucumber rake cross compile RUBY_CC_VERSION=1.9.1"
10
10
  # This will copy the .so files to the proper place
11
- sh "rake cross compile RUBY_CC_VERSION=1.8.6:1.9.1"
11
+ sh "rake -t cross compile RUBY_CC_VERSION=1.8.6:1.9.1"
12
12
  end
13
13
 
14
14
  desc 'Prepare JRuby binares'
data/tasks/release.rake CHANGED
@@ -1,6 +1,6 @@
1
1
  namespace :release do
2
2
  desc 'Upload all packages and tag git'
3
- task :ALL => ['gems:sanity', :ikvm, :push_jar, :push_native_gems, :push_npm_package, :release, :post_release]
3
+ task :ALL => ['gems:sanity', :ikvm, :push_jar, :push_native_gems, :push_npm_package, :release, :push_yard, :post_release]
4
4
 
5
5
  desc 'Push all gems to rubygems.org (gemcutter)'
6
6
  task :push_native_gems do
@@ -28,4 +28,11 @@ namespace :release do
28
28
  sh("npm publish")
29
29
  end
30
30
  end
31
+
32
+ desc 'Push yardoc to http://cukes.info/gherkin/api/#{GHERKIN_VERSION}'
33
+ task :push_yard => :yard do
34
+ sh("tar czf release/api-#{GHERKIN_VERSION}.tgz -C doc .")
35
+ sh("scp release/api-#{GHERKIN_VERSION}.tgz cukes.info:/var/www/gherkin/api/ruby")
36
+ sh("ssh cukes.info 'cd /var/www/gherkin/api/ruby && mkdir #{GHERKIN_VERSION} && tar xzf api-#{GHERKIN_VERSION}.tgz -C #{GHERKIN_VERSION} && rm -f latest && ln -s #{GHERKIN_VERSION} latest'")
37
+ end
31
38
  end
data/tasks/yard.rake ADDED
@@ -0,0 +1,7 @@
1
+ unless ENV['RUBY_CC_VERSION'] || defined?(JRUBY_VERSION)
2
+ require 'yard'
3
+ require 'yard/rake/yardoc_task'
4
+
5
+ YARD::Templates::Engine.register_template_path(File.expand_path(File.join(File.dirname(__FILE__), 'yard')))
6
+ YARD::Rake::YardocTask.new(:yard)
7
+ end
@@ -0,0 +1,5 @@
1
+ <div id="footer">
2
+ Generated on <%= Time.now.strftime("%c") %> by
3
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
4
+ <%= YARD::VERSION %> (ruby-<%= RUBY_VERSION %>).
5
+ </div>
@@ -0,0 +1 @@
1
+ <%= yieldall %>
@@ -0,0 +1,25 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <%= erb(:headers) %>
6
+ </head>
7
+ <body>
8
+ <script type="text/javascript" charset="utf-8">
9
+ if (window.top.frames.main) document.body.className = 'frames';
10
+ </script>
11
+
12
+ <div id="header">
13
+ <%= erb(:logo) %>
14
+ <%= erb(:breadcrumb) %>
15
+ <%= erb(:search) %>
16
+ <div class="clear"></div>
17
+ </div>
18
+
19
+ <iframe id="search_frame"></iframe>
20
+
21
+ <div id="content"><%= yieldall %></div>
22
+
23
+ <%= erb(:footer) %>
24
+ </body>
25
+ </html>
@@ -0,0 +1 @@
1
+ <h3><img src="<%= url_for('images/bubble_32x32.png') %>"></img> Gherkin <%= GHERKIN_VERSION %></h3>
@@ -0,0 +1,4 @@
1
+ def init
2
+ super
3
+ options[:serializer].serialize('/images/bubble_32x32.png', IO.read(File.dirname(__FILE__) + '/bubble_32x32.png'))
4
+ end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: gherkin
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 2.3.10
5
+ version: 2.4.0
6
6
  platform: universal-dotnet
7
7
  authors:
8
8
  - Mike Sassak
@@ -12,7 +12,7 @@ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
14
 
15
- date: 2011-05-30 00:00:00 +01:00
15
+ date: 2011-06-05 00:00:00 +01:00
16
16
  default_executable: gherkin
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
@@ -89,41 +89,61 @@ dependencies:
89
89
  requirements:
90
90
  - - ">="
91
91
  - !ruby/object:Gem::Version
92
- version: 0.9.0.beta4
92
+ version: 0.9.0.beta7
93
93
  type: :development
94
94
  version_requirements: *id007
95
95
  - !ruby/object:Gem::Dependency
96
- name: term-ansicolor
96
+ name: yard
97
97
  prerelease: false
98
98
  requirement: &id008 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - "="
102
+ - !ruby/object:Gem::Version
103
+ version: 0.7.1
104
+ type: :development
105
+ version_requirements: *id008
106
+ - !ruby/object:Gem::Dependency
107
+ name: rdiscount
108
+ prerelease: false
109
+ requirement: &id009 !ruby/object:Gem::Requirement
110
+ none: false
111
+ requirements:
112
+ - - "="
113
+ - !ruby/object:Gem::Version
114
+ version: 1.6.8
115
+ type: :development
116
+ version_requirements: *id009
117
+ - !ruby/object:Gem::Dependency
118
+ name: term-ansicolor
119
+ prerelease: false
120
+ requirement: &id010 !ruby/object:Gem::Requirement
99
121
  none: false
100
122
  requirements:
101
123
  - - ">="
102
124
  - !ruby/object:Gem::Version
103
125
  version: 1.0.5
104
126
  type: :development
105
- version_requirements: *id008
127
+ version_requirements: *id010
106
128
  - !ruby/object:Gem::Dependency
107
129
  name: builder
108
130
  prerelease: false
109
- requirement: &id009 !ruby/object:Gem::Requirement
131
+ requirement: &id011 !ruby/object:Gem::Requirement
110
132
  none: false
111
133
  requirements:
112
134
  - - ">="
113
135
  - !ruby/object:Gem::Version
114
136
  version: 2.1.2
115
137
  type: :development
116
- version_requirements: *id009
138
+ version_requirements: *id011
117
139
  description: A fast Gherkin lexer/parser for based on the Ragel State Machine Compiler.
118
140
  email: cukes@googlegroups.com
119
141
  executables: []
120
142
 
121
143
  extensions: []
122
144
 
123
- extra_rdoc_files:
124
- - LICENSE
125
- - README.rdoc
126
- - History.txt
145
+ extra_rdoc_files: []
146
+
127
147
  files:
128
148
  - .gitattributes
129
149
  - .gitignore
@@ -131,10 +151,11 @@ files:
131
151
  - .mailmap
132
152
  - .rspec
133
153
  - .rvmrc
154
+ - .yardopts
134
155
  - Gemfile
135
- - History.txt
156
+ - History.md
136
157
  - LICENSE
137
- - README.rdoc
158
+ - README.md
138
159
  - Rakefile
139
160
  - build_native_gems.sh
140
161
  - cucumber.yml
@@ -239,8 +260,8 @@ files:
239
260
  - spec/gherkin/rb_lexer_spec.rb
240
261
  - spec/gherkin/sexp_recorder.rb
241
262
  - spec/gherkin/shared/bom_group.rb
263
+ - spec/gherkin/shared/doc_string_group.rb
242
264
  - spec/gherkin/shared/lexer_group.rb
243
- - spec/gherkin/shared/py_string_group.rb
244
265
  - spec/gherkin/shared/row_group.rb
245
266
  - spec/gherkin/shared/tags_group.rb
246
267
  - spec/gherkin/tag_expression_spec.rb
@@ -254,9 +275,16 @@ files:
254
275
  - tasks/gems.rake
255
276
  - tasks/ikvm.rake
256
277
  - tasks/ragel_task.rb
257
- - tasks/rdoc.rake
258
278
  - tasks/release.rake
259
279
  - tasks/rspec.rake
280
+ - tasks/yard.rake
281
+ - tasks/yard/default/layout/html/bubble_32x32.png
282
+ - tasks/yard/default/layout/html/bubble_48x48.png
283
+ - tasks/yard/default/layout/html/footer.erb
284
+ - tasks/yard/default/layout/html/index.erb
285
+ - tasks/yard/default/layout/html/layout.erb
286
+ - tasks/yard/default/layout/html/logo.erb
287
+ - tasks/yard/default/layout/html/setup.rb
260
288
  - lib/gherkin.dll
261
289
  - lib/IKVM.OpenJDK.Core.dll
262
290
  - lib/IKVM.OpenJDK.Security.dll
@@ -289,7 +317,7 @@ rubyforge_project:
289
317
  rubygems_version: 1.6.2
290
318
  signing_key:
291
319
  specification_version: 3
292
- summary: gherkin-2.3.10
320
+ summary: gherkin-2.4.0
293
321
  test_files:
294
322
  - features/escaped_pipes.feature
295
323
  - features/feature_parser.feature
@@ -341,8 +369,8 @@ test_files:
341
369
  - spec/gherkin/rb_lexer_spec.rb
342
370
  - spec/gherkin/sexp_recorder.rb
343
371
  - spec/gherkin/shared/bom_group.rb
372
+ - spec/gherkin/shared/doc_string_group.rb
344
373
  - spec/gherkin/shared/lexer_group.rb
345
- - spec/gherkin/shared/py_string_group.rb
346
374
  - spec/gherkin/shared/row_group.rb
347
375
  - spec/gherkin/shared/tags_group.rb
348
376
  - spec/gherkin/tag_expression_spec.rb