gherkin 2.11.1-x86-mswin32 → 2.11.2-x86-mswin32

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 (113) hide show
  1. data/History.md +7 -0
  2. data/README.md +1 -1
  3. data/gherkin.gemspec +7 -7
  4. data/lib/1.8/gherkin_lexer_ar.so +0 -0
  5. data/lib/1.8/gherkin_lexer_bg.so +0 -0
  6. data/lib/1.8/gherkin_lexer_bm.so +0 -0
  7. data/lib/1.8/gherkin_lexer_ca.so +0 -0
  8. data/lib/1.8/gherkin_lexer_cs.so +0 -0
  9. data/lib/1.8/gherkin_lexer_cy_gb.so +0 -0
  10. data/lib/1.8/gherkin_lexer_da.so +0 -0
  11. data/lib/1.8/gherkin_lexer_de.so +0 -0
  12. data/lib/1.8/gherkin_lexer_en.so +0 -0
  13. data/lib/1.8/gherkin_lexer_en_au.so +0 -0
  14. data/lib/1.8/gherkin_lexer_en_lol.so +0 -0
  15. data/lib/1.8/gherkin_lexer_en_pirate.so +0 -0
  16. data/lib/1.8/gherkin_lexer_en_scouse.so +0 -0
  17. data/lib/1.8/gherkin_lexer_en_tx.so +0 -0
  18. data/lib/1.8/gherkin_lexer_eo.so +0 -0
  19. data/lib/1.8/gherkin_lexer_es.so +0 -0
  20. data/lib/1.8/gherkin_lexer_et.so +0 -0
  21. data/lib/1.8/gherkin_lexer_fi.so +0 -0
  22. data/lib/1.8/gherkin_lexer_fr.so +0 -0
  23. data/lib/1.8/gherkin_lexer_he.so +0 -0
  24. data/lib/1.8/gherkin_lexer_hr.so +0 -0
  25. data/lib/1.8/gherkin_lexer_hu.so +0 -0
  26. data/lib/1.8/gherkin_lexer_id.so +0 -0
  27. data/lib/1.8/gherkin_lexer_is.so +0 -0
  28. data/lib/1.8/gherkin_lexer_it.so +0 -0
  29. data/lib/1.8/gherkin_lexer_ja.so +0 -0
  30. data/lib/1.8/gherkin_lexer_ko.so +0 -0
  31. data/lib/1.8/gherkin_lexer_lt.so +0 -0
  32. data/lib/1.8/gherkin_lexer_lu.so +0 -0
  33. data/lib/1.8/gherkin_lexer_lv.so +0 -0
  34. data/lib/1.8/gherkin_lexer_nl.so +0 -0
  35. data/lib/1.8/gherkin_lexer_no.so +0 -0
  36. data/lib/1.8/gherkin_lexer_pl.so +0 -0
  37. data/lib/1.8/gherkin_lexer_pt.so +0 -0
  38. data/lib/1.8/gherkin_lexer_ro.so +0 -0
  39. data/lib/1.8/gherkin_lexer_ru.so +0 -0
  40. data/lib/1.8/gherkin_lexer_sk.so +0 -0
  41. data/lib/1.8/gherkin_lexer_sr_cyrl.so +0 -0
  42. data/lib/1.8/gherkin_lexer_sr_latn.so +0 -0
  43. data/lib/1.8/gherkin_lexer_sv.so +0 -0
  44. data/lib/1.8/gherkin_lexer_tr.so +0 -0
  45. data/lib/1.8/gherkin_lexer_uk.so +0 -0
  46. data/lib/1.8/gherkin_lexer_uz.so +0 -0
  47. data/lib/1.8/gherkin_lexer_vi.so +0 -0
  48. data/lib/1.8/gherkin_lexer_zh_cn.so +0 -0
  49. data/lib/1.8/gherkin_lexer_zh_tw.so +0 -0
  50. data/lib/1.9/gherkin_lexer_ar.so +0 -0
  51. data/lib/1.9/gherkin_lexer_bg.so +0 -0
  52. data/lib/1.9/gherkin_lexer_bm.so +0 -0
  53. data/lib/1.9/gherkin_lexer_ca.so +0 -0
  54. data/lib/1.9/gherkin_lexer_cs.so +0 -0
  55. data/lib/1.9/gherkin_lexer_cy_gb.so +0 -0
  56. data/lib/1.9/gherkin_lexer_da.so +0 -0
  57. data/lib/1.9/gherkin_lexer_de.so +0 -0
  58. data/lib/1.9/gherkin_lexer_en.so +0 -0
  59. data/lib/1.9/gherkin_lexer_en_au.so +0 -0
  60. data/lib/1.9/gherkin_lexer_en_lol.so +0 -0
  61. data/lib/1.9/gherkin_lexer_en_pirate.so +0 -0
  62. data/lib/1.9/gherkin_lexer_en_scouse.so +0 -0
  63. data/lib/1.9/gherkin_lexer_en_tx.so +0 -0
  64. data/lib/1.9/gherkin_lexer_eo.so +0 -0
  65. data/lib/1.9/gherkin_lexer_es.so +0 -0
  66. data/lib/1.9/gherkin_lexer_et.so +0 -0
  67. data/lib/1.9/gherkin_lexer_fi.so +0 -0
  68. data/lib/1.9/gherkin_lexer_fr.so +0 -0
  69. data/lib/1.9/gherkin_lexer_he.so +0 -0
  70. data/lib/1.9/gherkin_lexer_hr.so +0 -0
  71. data/lib/1.9/gherkin_lexer_hu.so +0 -0
  72. data/lib/1.9/gherkin_lexer_id.so +0 -0
  73. data/lib/1.9/gherkin_lexer_is.so +0 -0
  74. data/lib/1.9/gherkin_lexer_it.so +0 -0
  75. data/lib/1.9/gherkin_lexer_ja.so +0 -0
  76. data/lib/1.9/gherkin_lexer_ko.so +0 -0
  77. data/lib/1.9/gherkin_lexer_lt.so +0 -0
  78. data/lib/1.9/gherkin_lexer_lu.so +0 -0
  79. data/lib/1.9/gherkin_lexer_lv.so +0 -0
  80. data/lib/1.9/gherkin_lexer_nl.so +0 -0
  81. data/lib/1.9/gherkin_lexer_no.so +0 -0
  82. data/lib/1.9/gherkin_lexer_pl.so +0 -0
  83. data/lib/1.9/gherkin_lexer_pt.so +0 -0
  84. data/lib/1.9/gherkin_lexer_ro.so +0 -0
  85. data/lib/1.9/gherkin_lexer_ru.so +0 -0
  86. data/lib/1.9/gherkin_lexer_sk.so +0 -0
  87. data/lib/1.9/gherkin_lexer_sr_cyrl.so +0 -0
  88. data/lib/1.9/gherkin_lexer_sr_latn.so +0 -0
  89. data/lib/1.9/gherkin_lexer_sv.so +0 -0
  90. data/lib/1.9/gherkin_lexer_tr.so +0 -0
  91. data/lib/1.9/gherkin_lexer_uk.so +0 -0
  92. data/lib/1.9/gherkin_lexer_uz.so +0 -0
  93. data/lib/1.9/gherkin_lexer_vi.so +0 -0
  94. data/lib/1.9/gherkin_lexer_zh_cn.so +0 -0
  95. data/lib/1.9/gherkin_lexer_zh_tw.so +0 -0
  96. data/lib/gherkin/README.md +7 -0
  97. data/lib/gherkin/i18n.json +646 -0
  98. data/lib/gherkin/i18n.rb +5 -10
  99. data/lib/gherkin/native/therubyracer.rb +3 -2
  100. data/lib/gherkin/parser/parser.rb +12 -11
  101. data/ragel/lexer.java.rl.erb +3 -3
  102. data/ragel/lexer.js.rl.erb +5 -5
  103. data/ragel/lexer.rb.rl.erb +4 -2
  104. data/spec/gherkin/native_lexer_spec.rb +29 -0
  105. data/tasks/compile.rake +2 -39
  106. data/tasks/ragel_task.rb +15 -3
  107. metadata +19 -23
  108. data/lib/gherkin/i18n.yml +0 -613
  109. data/lib/gherkin/js_lexer.rb +0 -20
  110. data/lib/gherkin/rb_lexer.rb +0 -8
  111. data/lib/gherkin/rb_lexer/README.rdoc +0 -8
  112. data/spec/gherkin/js_lexer_spec.rb +0 -23
  113. data/spec/gherkin/rb_lexer_spec.rb +0 -20
@@ -1,4 +1,4 @@
1
- require 'yaml'
1
+ require 'json'
2
2
  require 'gherkin/rubify'
3
3
  require 'gherkin/native'
4
4
 
@@ -11,7 +11,7 @@ module Gherkin
11
11
  FEATURE_ELEMENT_KEYS = %w{feature background scenario scenario_outline examples}
12
12
  STEP_KEYWORD_KEYS = %w{given when then and but}
13
13
  KEYWORD_KEYS = FEATURE_ELEMENT_KEYS + STEP_KEYWORD_KEYS
14
- LANGUAGES = YAML.load_file(File.dirname(__FILE__) + '/i18n.yml')
14
+ LANGUAGES = JSON.parse(IO.read(File.dirname(__FILE__) + '/i18n.json'))
15
15
 
16
16
  class << self
17
17
  include Rubify
@@ -105,7 +105,7 @@ module Gherkin
105
105
  end
106
106
  end
107
107
  rescue LoadError => e
108
- raise LexerNotFound, "No lexer was found for #{iso_code} (#{e.message}). Supported languages are listed in gherkin/i18n.yml."
108
+ raise LexerNotFound, "No lexer was found for #{iso_code} (#{e.message}). Supported languages are listed in gherkin/i18n.json."
109
109
  end
110
110
 
111
111
  def c(listener)
@@ -114,13 +114,8 @@ module Gherkin
114
114
  end
115
115
 
116
116
  def rb(listener)
117
- require 'gherkin/rb_lexer'
118
- RbLexer[underscored_iso_code].new(listener)
119
- end
120
-
121
- def js(listener)
122
- require 'gherkin/js_lexer'
123
- JsLexer[underscored_iso_code].new(listener)
117
+ require "gherkin/lexer/#{underscored_iso_code}"
118
+ Lexer.const_get(underscored_iso_code.capitalize).new(listener)
124
119
  end
125
120
 
126
121
  def underscored_iso_code
@@ -5,7 +5,8 @@ class Class
5
5
  class << self
6
6
  def new(*args)
7
7
  js = {
8
- 'Gherkin::Formatter::JSONFormatter' => 'js/lib/gherkin/formatter/json_formatter.js'
8
+ 'Gherkin::Formatter::JSONFormatter' => 'js/lib/gherkin/formatter/json_formatter.js',
9
+ 'Gherkin::Lexer::En' => 'js/lib/gherkin/lexer/en.js'
9
10
  }[self.name]
10
11
  if(js)
11
12
  Proxy.new(js, *args)
@@ -24,7 +25,7 @@ class Class
24
25
  # Mimic Node.js / Firebug console.log
25
26
  cxt['console'] = STDOUT
26
27
  def STDOUT.log(*a)
27
- puts sprintf(*a)
28
+ puts sprintf(*a.map(&:to_s))
28
29
  end
29
30
 
30
31
  cxt.load(js)
@@ -21,14 +21,18 @@ module Gherkin
21
21
  @raise_on_error = raise_on_error
22
22
  @machine_name = machine_name
23
23
  @machines = []
24
- push_machine(@machine_name)
25
24
  @lexer = Gherkin::Lexer::I18nLexer.new(self, force_ruby)
26
25
  end
27
26
 
28
27
  def parse(gherkin, feature_uri, line_offset)
29
28
  @formatter.uri(feature_uri)
30
29
  @line_offset = line_offset
31
- @lexer.scan(gherkin)
30
+ push_machine(@machine_name)
31
+ begin
32
+ @lexer.scan(gherkin)
33
+ ensure
34
+ pop_machine
35
+ end
32
36
  end
33
37
 
34
38
  def i18n_language
@@ -39,17 +43,14 @@ module Gherkin
39
43
  @lexer.errors
40
44
  end
41
45
 
42
- # Doesn't yet fall back to super
43
- def method_missing(method, *args)
44
- # TODO: Catch exception and call super
45
- event(method.to_s, args[-1])
46
- @listener.__send__(method, *args)
47
- if method == :eof
48
- pop_machine
49
- push_machine(@machine_name)
46
+ [:comment, :tag, :feature, :background, :scenario, :scenario_outline, :examples, :step, :doc_string, :row, :eof].each do |m|
47
+ define_method(m) do |*args|
48
+ if(event(m.to_s, args[-1]))
49
+ @listener.__send__(m, *args)
50
+ end
50
51
  end
51
52
  end
52
-
53
+
53
54
  def event(ev, line)
54
55
  l = line ? @line_offset+line : nil
55
56
  machine.event(ev, l) do |state, legal_events|
@@ -1,4 +1,4 @@
1
- package gherkin.lexer.i18n;
1
+ package gherkin.lexer;
2
2
 
3
3
  import java.io.UnsupportedEncodingException;
4
4
  import java.util.List;
@@ -8,7 +8,7 @@ import gherkin.lexer.Lexer;
8
8
  import gherkin.lexer.Listener;
9
9
  import gherkin.lexer.LexingError;
10
10
 
11
- public class <%= @i18n.underscored_iso_code.upcase %> implements Lexer {
11
+ public class <%= @i18n.underscored_iso_code.capitalize %> implements Lexer {
12
12
  %%{
13
13
  machine lexer;
14
14
  alphtype byte;
@@ -151,7 +151,7 @@ public class <%= @i18n.underscored_iso_code.upcase %> implements Lexer {
151
151
 
152
152
  private final Listener listener;
153
153
 
154
- public <%= @i18n.underscored_iso_code.upcase %>(Listener listener) {
154
+ public <%= @i18n.underscored_iso_code.capitalize %>(Listener listener) {
155
155
  this.listener = listener;
156
156
  }
157
157
 
@@ -135,10 +135,10 @@ var Lexer = function(listener) {
135
135
  for(e in events) {
136
136
  var event = events[e];
137
137
  if(typeof listener[event] != 'function') {
138
- "Error. No " + event + " function exists on " + JSON.stringify(listener);
138
+ throw "Error. No " + event + " function exists on " + JSON.stringify(listener);
139
139
  }
140
140
  }
141
- this.listener = listener;
141
+ this.listener = listener;
142
142
  };
143
143
 
144
144
  Lexer.prototype.scan = function(data) {
@@ -208,8 +208,8 @@ Lexer.prototype.current_line_content = function(data, p) {
208
208
  };
209
209
 
210
210
  // Node.js export
211
- if(typeof exports !== 'undefined') {
212
- exports.Lexer = Lexer;
211
+ if(typeof module !== 'undefined') {
212
+ module.exports = Lexer;
213
213
  }
214
214
  // Require.js export
215
215
  if (typeof define !== 'undefined') {
@@ -224,4 +224,4 @@ if (typeof define !== 'undefined') {
224
224
  }
225
225
  }
226
226
 
227
- })();
227
+ })();
@@ -1,8 +1,10 @@
1
- require 'gherkin/lexer/i18n_lexer'
1
+ require 'gherkin/native'
2
2
 
3
3
  module Gherkin
4
- module RbLexer
4
+ module Lexer
5
5
  class <%= @i18n.underscored_iso_code.capitalize %> #:nodoc:
6
+ native_impl('gherkin')
7
+
6
8
  %%{
7
9
  machine lexer;
8
10
 
@@ -0,0 +1,29 @@
1
+ #encoding: utf-8
2
+ require 'spec_helper'
3
+
4
+ module Gherkin
5
+ module Lexer
6
+ begin
7
+ require 'gherkin/lexer/en'
8
+ rescue LoadError
9
+ # For Java/JRuby we might not have the generated ruby lexer, which
10
+ # won't be used anyway. Just define a stub.
11
+ class En
12
+ native_impl('gherkin')
13
+ end
14
+ end
15
+
16
+ describe "Native Lexer" do
17
+ before do
18
+ @listener = Gherkin::SexpRecorder.new
19
+ @lexer = Gherkin::Lexer::En.new(@listener)
20
+ end
21
+
22
+ it_should_behave_like "a Gherkin lexer"
23
+ it_should_behave_like "a Gherkin lexer lexing tags"
24
+ it_should_behave_like "a Gherkin lexer lexing doc_strings"
25
+ it_should_behave_like "a Gherkin lexer lexing rows"
26
+ it_should_behave_like "parsing windows files" unless ENV['GHERKIN_JS_NATIVE']
27
+ end
28
+ end
29
+ end
@@ -6,13 +6,8 @@ CLEAN.include [
6
6
  'pkg', 'tmp',
7
7
  '**/*.{o,bundle,jar,so,obj,pdb,lib,def,exp,log,rbc}', 'ext',
8
8
  'java/target',
9
- 'ragel/i18n/*.rl',
10
- 'lib/gherkin/rb_lexer/*.rb',
11
9
  'lib/*.dll',
12
10
  'ext/**/*.c',
13
- 'java/src/main/java/gherkin/lexer/i18n/*.java',
14
- 'java/src/main/resources/gherkin/*.properties',
15
- 'js/lib/gherkin/lexer/*.js',
16
11
  'doc'
17
12
  ]
18
13
 
@@ -23,50 +18,18 @@ file 'lib/gherkin.jar' => Dir['java/src/main/java/**/*.java'] do
23
18
  sh("mvn -f java/pom.xml package")
24
19
  end
25
20
 
26
- desc "Build Javascript lexers"
21
+ desc "Build JavaScript lexers"
27
22
  task :js
28
23
 
29
24
  rl_langs = ENV['RL_LANGS'] ? ENV['RL_LANGS'].split(',') : []
30
25
  langs = Gherkin::I18n.all.select { |lang| rl_langs.empty? || rl_langs.include?(lang.iso_code) }
31
26
 
32
- # http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6457127
33
- file 'lib/gherkin.jar' => "java/src/main/resources/gherkin/I18nKeywords_in.properties"
34
- file "java/src/main/resources/gherkin/I18nKeywords_in.properties" => "java/src/main/resources/gherkin/I18nKeywords_id.properties" do
35
- cp "java/src/main/resources/gherkin/I18nKeywords_id.properties", "java/src/main/resources/gherkin/I18nKeywords_in.properties"
36
- end
37
-
38
- # http://forums.sun.com/thread.jspa?threadID=5335461
39
- file 'lib/gherkin.jar' => "java/src/main/resources/gherkin/I18nKeywords_iw.properties"
40
- file "java/src/main/resources/gherkin/I18nKeywords_iw.properties" => "java/src/main/resources/gherkin/I18nKeywords_he.properties" do
41
- cp "java/src/main/resources/gherkin/I18nKeywords_he.properties", "java/src/main/resources/gherkin/I18nKeywords_iw.properties"
42
- end
43
-
44
- java_i18n_properties = "java/src/main/resources/gherkin/I18n.properties"
45
- file java_i18n_properties => 'lib/gherkin/i18n.yml' do
46
- File.open(java_i18n_properties, 'wb') do |io|
47
- io.puts("# Generated file. Do not edit.")
48
- io.puts("i18n.isoCodes=#{langs.map{|i18n| i18n.iso_code}.join(',')}")
49
- end
50
- end
51
-
52
27
  langs.each do |i18n|
53
28
  java = RagelTask.new('java', i18n)
54
29
  rb = RagelTask.new('rb', i18n)
55
30
  js = RagelTask.new('js', i18n)
56
31
 
57
- lang_country = i18n.iso_code.split(/-/)
58
- suffix = lang_country.length == 1 ? lang_country[0] : "#{lang_country[0]}_#{lang_country[1].upcase}"
59
- java_properties = "java/src/main/resources/gherkin/I18nKeywords_#{suffix}.properties"
60
- file java_properties => 'lib/gherkin/i18n.yml' do
61
- File.open(java_properties, 'wb') do |io|
62
- io.puts("# Generated file. Do not edit.")
63
- (Gherkin::I18n::KEYWORD_KEYS + %w{name native}).each do |key|
64
- value = Gherkin::I18n.unicode_escape(i18n.keywords(key).join("|"))
65
- io.puts("#{key}:#{value}")
66
- end
67
- end
68
- end
69
- file 'lib/gherkin.jar' => [java.target, rb.target, java_properties, java_i18n_properties]
32
+ file 'lib/gherkin.jar' => [java.target]
70
33
 
71
34
  begin
72
35
  if !defined?(JRUBY_VERSION)
@@ -23,6 +23,7 @@ class RagelTask
23
23
  deps = [lang_ragel, common_ragel]
24
24
  deps.unshift(UGLIFYJS) if(@lang == 'js')
25
25
 
26
+ min_target = target.gsub(/\.js$/, '.min.js')
26
27
  file target => deps do
27
28
  mkdir_p(File.dirname(target)) unless File.directory?(File.dirname(target))
28
29
  sh "ragel #{flags} #{lang_ragel} -o #{target}"
@@ -32,10 +33,17 @@ class RagelTask
32
33
  sh %{#{sed} 's/ESCAPED_TRIPLE_QUOTE/\\\\\\\\\\\\"\\\\\\\\\\\\"\\\\\\\\\\\\"/' #{target}}
33
34
 
34
35
  # Minify
35
- sh %{node #{UGLIFYJS} #{target} > #{target.gsub(/\.js$/, '.min.js')}}
36
+ sh %{node #{UGLIFYJS} #{target} > #{min_target}}
36
37
  end
37
38
  end
38
39
 
40
+ if(@lang != 'java')
41
+ CLEAN.include(target)
42
+ end
43
+ if(@lang == 'js')
44
+ CLEAN.include(min_target)
45
+ end
46
+
39
47
  file UGLIFYJS do
40
48
  unless File.exist?(UGLIFYJS)
41
49
  Dir.chdir('js') do
@@ -47,17 +55,21 @@ class RagelTask
47
55
  file lang_ragel => lang_erb do
48
56
  write(ERB.new(IO.read(lang_erb)).result(binding), lang_ragel)
49
57
  end
58
+
59
+ CLEAN.include(lang_ragel)
50
60
 
51
61
  file common_ragel => common_erb do
52
62
  write(ERB.new(IO.read(common_erb)).result(binding), common_ragel)
53
63
  end
64
+
65
+ CLEAN.include(common_ragel)
54
66
  end
55
67
 
56
68
  def target
57
69
  {
58
70
  'c' => "ext/gherkin_lexer_#{@i18n.underscored_iso_code}/gherkin_lexer_#{@i18n.underscored_iso_code}.c",
59
- 'java' => "java/src/main/java/gherkin/lexer/i18n/#{@i18n.underscored_iso_code.upcase}.java",
60
- 'rb' => "lib/gherkin/rb_lexer/#{@i18n.underscored_iso_code}.rb",
71
+ 'java' => "java/src/main/java/gherkin/lexer/#{@i18n.underscored_iso_code.capitalize}.java",
72
+ 'rb' => "lib/gherkin/lexer/#{@i18n.underscored_iso_code}.rb",
61
73
  'js' => "js/lib/gherkin/lexer/#{@i18n.underscored_iso_code}.js"
62
74
  }[@lang]
63
75
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gherkin
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.11.1
4
+ version: 2.11.2
5
5
  prerelease:
6
6
  platform: x86-mswin32
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-06-23 00:00:00.000000000 Z
14
+ date: 2012-08-17 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: json
@@ -68,7 +68,7 @@ dependencies:
68
68
  requirements:
69
69
  - - ! '>='
70
70
  - !ruby/object:Gem::Version
71
- version: 1.1.0
71
+ version: 1.1.5
72
72
  type: :development
73
73
  prerelease: false
74
74
  version_requirements: !ruby/object:Gem::Requirement
@@ -76,7 +76,7 @@ dependencies:
76
76
  requirements:
77
77
  - - ! '>='
78
78
  - !ruby/object:Gem::Version
79
- version: 1.1.0
79
+ version: 1.1.5
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: rspec
82
82
  requirement: !ruby/object:Gem::Requirement
@@ -84,7 +84,7 @@ dependencies:
84
84
  requirements:
85
85
  - - ~>
86
86
  - !ruby/object:Gem::Version
87
- version: 2.10.0
87
+ version: 2.11.0
88
88
  type: :development
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
@@ -92,7 +92,7 @@ dependencies:
92
92
  requirements:
93
93
  - - ~>
94
94
  - !ruby/object:Gem::Version
95
- version: 2.10.0
95
+ version: 2.11.0
96
96
  - !ruby/object:Gem::Dependency
97
97
  name: rubyzip
98
98
  requirement: !ruby/object:Gem::Requirement
@@ -100,7 +100,7 @@ dependencies:
100
100
  requirements:
101
101
  - - ! '>='
102
102
  - !ruby/object:Gem::Version
103
- version: 0.9.8
103
+ version: 0.9.9
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
@@ -108,7 +108,7 @@ dependencies:
108
108
  requirements:
109
109
  - - ! '>='
110
110
  - !ruby/object:Gem::Version
111
- version: 0.9.8
111
+ version: 0.9.9
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: therubyracer
114
114
  requirement: !ruby/object:Gem::Requirement
@@ -116,7 +116,7 @@ dependencies:
116
116
  requirements:
117
117
  - - ! '>='
118
118
  - !ruby/object:Gem::Version
119
- version: 0.10.1
119
+ version: 0.10.2
120
120
  type: :development
121
121
  prerelease: false
122
122
  version_requirements: !ruby/object:Gem::Requirement
@@ -124,7 +124,7 @@ dependencies:
124
124
  requirements:
125
125
  - - ! '>='
126
126
  - !ruby/object:Gem::Version
127
- version: 0.10.1
127
+ version: 0.10.2
128
128
  - !ruby/object:Gem::Dependency
129
129
  name: yard
130
130
  requirement: !ruby/object:Gem::Requirement
@@ -132,7 +132,7 @@ dependencies:
132
132
  requirements:
133
133
  - - ! '>='
134
134
  - !ruby/object:Gem::Version
135
- version: 0.8.0
135
+ version: 0.8.2.1
136
136
  type: :development
137
137
  prerelease: false
138
138
  version_requirements: !ruby/object:Gem::Requirement
@@ -140,7 +140,7 @@ dependencies:
140
140
  requirements:
141
141
  - - ! '>='
142
142
  - !ruby/object:Gem::Version
143
- version: 0.8.0
143
+ version: 0.8.2.1
144
144
  - !ruby/object:Gem::Dependency
145
145
  name: rdiscount
146
146
  requirement: !ruby/object:Gem::Requirement
@@ -164,7 +164,7 @@ dependencies:
164
164
  requirements:
165
165
  - - ! '>='
166
166
  - !ruby/object:Gem::Version
167
- version: 1.0.6
167
+ version: 1.0.7
168
168
  type: :development
169
169
  prerelease: false
170
170
  version_requirements: !ruby/object:Gem::Requirement
@@ -172,7 +172,7 @@ dependencies:
172
172
  requirements:
173
173
  - - ! '>='
174
174
  - !ruby/object:Gem::Version
175
- version: 1.0.6
175
+ version: 1.0.7
176
176
  - !ruby/object:Gem::Dependency
177
177
  name: builder
178
178
  requirement: !ruby/object:Gem::Requirement
@@ -230,6 +230,7 @@ files:
230
230
  - js/.npmignore
231
231
  - js/lib/gherkin/lexer/.npmignore
232
232
  - lib/gherkin.rb
233
+ - lib/gherkin/README.md
233
234
  - lib/gherkin/c_lexer.rb
234
235
  - lib/gherkin/formatter/ansi_escapes.rb
235
236
  - lib/gherkin/formatter/argument.rb
@@ -244,9 +245,8 @@ files:
244
245
  - lib/gherkin/formatter/step_printer.rb
245
246
  - lib/gherkin/formatter/tag_count_formatter.rb
246
247
  - lib/gherkin/formatter/tag_filter.rb
248
+ - lib/gherkin/i18n.json
247
249
  - lib/gherkin/i18n.rb
248
- - lib/gherkin/i18n.yml
249
- - lib/gherkin/js_lexer.rb
250
250
  - lib/gherkin/json_parser.rb
251
251
  - lib/gherkin/lexer/i18n_lexer.rb
252
252
  - lib/gherkin/listener/event.rb
@@ -259,8 +259,6 @@ files:
259
259
  - lib/gherkin/parser/parser.rb
260
260
  - lib/gherkin/parser/root.txt
261
261
  - lib/gherkin/parser/steps.txt
262
- - lib/gherkin/rb_lexer.rb
263
- - lib/gherkin/rb_lexer/README.rdoc
264
262
  - lib/gherkin/rubify.rb
265
263
  - lib/gherkin/tag_expression.rb
266
264
  - ragel/lexer.c.rl.erb
@@ -303,12 +301,11 @@ files:
303
301
  - spec/gherkin/formatter/tag_count_formatter_spec.rb
304
302
  - spec/gherkin/i18n_spec.rb
305
303
  - spec/gherkin/java_lexer_spec.rb
306
- - spec/gherkin/js_lexer_spec.rb
307
304
  - spec/gherkin/json_parser_spec.rb
308
305
  - spec/gherkin/lexer/i18n_lexer_spec.rb
306
+ - spec/gherkin/native_lexer_spec.rb
309
307
  - spec/gherkin/output_stream_string_io.rb
310
308
  - spec/gherkin/parser/parser_spec.rb
311
- - spec/gherkin/rb_lexer_spec.rb
312
309
  - spec/gherkin/sexp_recorder.rb
313
310
  - spec/gherkin/shared/bom_group.rb
314
311
  - spec/gherkin/shared/doc_string_group.rb
@@ -451,7 +448,7 @@ rubyforge_project:
451
448
  rubygems_version: 1.8.24
452
449
  signing_key:
453
450
  specification_version: 3
454
- summary: gherkin-2.11.1
451
+ summary: gherkin-2.11.2
455
452
  test_files:
456
453
  - features/escaped_pipes.feature
457
454
  - features/feature_parser.feature
@@ -502,12 +499,11 @@ test_files:
502
499
  - spec/gherkin/formatter/tag_count_formatter_spec.rb
503
500
  - spec/gherkin/i18n_spec.rb
504
501
  - spec/gherkin/java_lexer_spec.rb
505
- - spec/gherkin/js_lexer_spec.rb
506
502
  - spec/gherkin/json_parser_spec.rb
507
503
  - spec/gherkin/lexer/i18n_lexer_spec.rb
504
+ - spec/gherkin/native_lexer_spec.rb
508
505
  - spec/gherkin/output_stream_string_io.rb
509
506
  - spec/gherkin/parser/parser_spec.rb
510
- - spec/gherkin/rb_lexer_spec.rb
511
507
  - spec/gherkin/sexp_recorder.rb
512
508
  - spec/gherkin/shared/bom_group.rb
513
509
  - spec/gherkin/shared/doc_string_group.rb