gherkin 2.2.0-java → 2.2.1-java

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.
data/.gitignore CHANGED
@@ -1,4 +1,5 @@
1
1
  *.sw?
2
+ *.rbc
2
3
  .DS_Store
3
4
  coverage
4
5
  rdoc
@@ -6,4 +7,4 @@ pkg
6
7
  ext
7
8
  tmp
8
9
  release
9
- gherkin.gemspec
10
+ .bundle
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm @cucumber
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+ gemspec
3
+
4
+ gem 'cucumber', :path => '../cucumber'
@@ -0,0 +1,49 @@
1
+ PATH
2
+ remote: /Users/aslakhellesoy/scm/cucumber
3
+ specs:
4
+ cucumber (0.9.0)
5
+ builder (~> 2.1.2)
6
+ diff-lcs (~> 1.1.2)
7
+ json_pure (~> 1.4.6)
8
+ term-ansicolor (~> 1.0.5)
9
+
10
+ PATH
11
+ remote: .
12
+ specs:
13
+ gherkin (2.2.1)
14
+ trollop (~> 1.16.2)
15
+
16
+ GEM
17
+ remote: http://rubygems.org/
18
+ specs:
19
+ awesome_print (0.2.1)
20
+ builder (2.1.2)
21
+ diff-lcs (1.1.2)
22
+ json_pure (1.4.6)
23
+ rake (0.8.7)
24
+ rake-compiler (0.7.1)
25
+ rake (>= 0.8.3, < 0.9)
26
+ rspec (2.0.0.beta.20)
27
+ rspec-core (= 2.0.0.beta.20)
28
+ rspec-expectations (= 2.0.0.beta.20)
29
+ rspec-mocks (= 2.0.0.beta.20)
30
+ rspec-core (2.0.0.beta.20)
31
+ rspec-expectations (2.0.0.beta.20)
32
+ diff-lcs (>= 1.1.2)
33
+ rspec-mocks (2.0.0.beta.20)
34
+ term-ansicolor (1.0.5)
35
+ trollop (1.16.2)
36
+
37
+ PLATFORMS
38
+ java
39
+ ruby
40
+ x86-mingw32
41
+
42
+ DEPENDENCIES
43
+ awesome_print (~> 0.2.1)
44
+ cucumber!
45
+ gherkin!
46
+ rake (~> 0.8.7)
47
+ rake-compiler (~> 0.7.1)
48
+ rspec (~> 2.0.0.beta.20)
49
+ trollop (~> 1.16.2)
@@ -1,3 +1,11 @@
1
+ == 2.2.1
2
+
3
+ === New Features
4
+ * Windows gems are now built against 1.8.6-p287 and 1.9.1-p243, on both mswin32 and mingw32, and should work on 1.8.6, 1.8.7, 1.9.1 and 1.9.2 versions of rubyinstaller.org as well as older windows rubies. (Aslak Hellesøy)
5
+
6
+ === Changed features
7
+ * Build system no longer uses Jeweler - only Rake, Bundler and Rubygems (Aslak Hellesøy)
8
+
1
9
  == 2.2.0 (2010-07-26)
2
10
 
3
11
  This release breaks some APIs since the previous 2.1.5 release. If you install gherkin 2.2.0 you must also upgrade to
@@ -33,7 +33,7 @@ E.g. in Bash, export RL_LANG="en,fr,no". This can be quite helpful when modifyin
33
33
  ** ikvm/Gherkin/Gherkin.csproj
34
34
  * Make sure both JRuby and MRI has the latest Cucumber installed (from source) otherwise the jruby gem might not get the jar inside it.
35
35
  ** Install cucumber without gherkin dep: gem install --ignore-dependencies pkg/cucumber
36
- * rake release:ALL
36
+ * rake gems:prepare && ./build_native_gems.sh && rake release:ALL
37
37
  * Announce on Cucumber list, IRC and Twitter.
38
38
 
39
39
  == Configuring Rake-Compiler for cross compilation
@@ -41,7 +41,7 @@ In order to build Windows binaries (so we can release Windows gems from OS X/Lin
41
41
 
42
42
  http://github.com/luislavena/rake-compiler/
43
43
 
44
- I didn't want to install macports (I'm on homebrew) and I couldn't figure out how to build MinGW myself. I got prebuilt binaries:
44
+ I didn't want to install macports (I'm on homebrew) and I couldn't figure out how to build MinGW myself. I got prebuilt binaries (version 4.3.0):
45
45
  http://crossgcc.rts-software.org/doku.php - just add the bin folder to your PATH
46
46
 
47
47
  == Note on Patches/Pull Requests
data/Rakefile CHANGED
@@ -1,56 +1,13 @@
1
1
  # encoding: utf-8
2
- require 'rbconfig'
3
2
  require 'rubygems'
4
- require 'rake'
5
- require 'rake/clean'
6
- require 'yaml'
7
-
8
- config = YAML.load_file('VERSION.yml')
9
- GHERKIN_VERSION = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
3
+ require 'bundler'
4
+ Bundler.setup
5
+ Bundler::GemHelper.install_tasks
10
6
 
11
- begin
12
- require 'jeweler'
13
- Jeweler::Tasks.new do |gem|
14
- gem.name = "gherkin"
15
- gem.summary = %Q{Fast Gherkin lexer/parser}
16
- gem.description = %Q{A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.}
17
- gem.email = "cukes@googlegroups.com"
18
- gem.homepage = "http://github.com/aslakhellesoy/gherkin"
19
- gem.authors = ["Mike Sassak", "Gregory Hnatiuk", "Aslak Hellesøy"]
20
- gem.executables = ["gherkin"]
21
- gem.add_dependency "trollop", "~> 1.16.2"
22
- gem.add_development_dependency 'awesome_print', '~> 0.2.1'
23
- gem.add_development_dependency 'rspec', '~> 2.0.0.beta.17'
24
- gem.add_development_dependency "cucumber", "~> 0.9.0"
25
- gem.add_development_dependency "rake-compiler", "~> 0.7.0" unless defined?(JRUBY_VERSION)
7
+ require 'rake/clean'
26
8
 
27
- gem.files -= FileList['ikvm/**/*']
28
- gem.files -= FileList['java/**/*']
29
- case ENV['PLATFORM']
30
- when 'java'
31
- gem.platform = 'java'
32
- gem.files += FileList['lib/gherkin.jar']
33
- gem.extensions = []
34
- when 'i386-mswin32', 'i386-mingw32'
35
- gem.platform = ENV['PLATFORM']
36
- gem.files += FileList['lib/*/*.so']
37
- gem.extensions = []
38
- when 'universal-dotnet'
39
- gem.platform = ENV['PLATFORM']
40
- gem.files += FileList['lib/*.dll']
41
- gem.extensions = []
42
- else
43
- gem.files += FileList['lib/gherkin/rb_lexer/*.rb']
44
- gem.files += FileList['ext/**/*.c']
45
- gem.extensions = FileList['ext/**/extconf.rb']
46
- end
47
-
48
- # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
49
- end
50
- Jeweler::GemcutterTasks.new
51
- rescue LoadError
52
- warn "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
53
- end
9
+ $:.unshift(File.dirname(__FILE__) + '/lib')
10
+ require 'gherkin/version'
54
11
 
55
12
  Dir['tasks/**/*.rake'].each { |rake| load File.expand_path(rake) }
56
13
 
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 2.2.1
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ rm -Rf release
3
+ mkdir release
4
+ GEM_PLATFORM=java gem build gherkin.gemspec
5
+ GEM_PLATFORM=i386-mswin32 gem build gherkin.gemspec
6
+ GEM_PLATFORM=i386-mingw32 gem build gherkin.gemspec
7
+ GEM_PLATFORM=universal-dotnet gem build gherkin.gemspec
8
+ mv *.gem release
@@ -12,7 +12,7 @@ Given /^a JSON lexer$/ do
12
12
  end
13
13
 
14
14
  Given /^the following JSON is parsed:$/ do |text|
15
- @json_parser.parse(JSON.pretty_generate(JSON.parse(text)), "unknown.json")
15
+ @json_parser.parse(JSON.pretty_generate(JSON.parse(text)), "unknown.json", 0)
16
16
  end
17
17
 
18
18
  Then /^the outputted text should be:$/ do |expected_text|
@@ -23,7 +23,7 @@ module PrettyPlease
23
23
  result = StringIO.new
24
24
  pretty_formatter = Gherkin::Formatter::PrettyFormatter.new(result, false)
25
25
  json_parser = Gherkin::JSONParser.new(pretty_formatter)
26
- json_parser.parse(json.string, "#{feature_path}.json")
26
+ json_parser.parse(json.string, "#{feature_path}.json", 0)
27
27
 
28
28
  result.string
29
29
  end
@@ -1,3 +1,7 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ Bundler.setup
4
+
1
5
  # I'm sure there's a better way than this...
2
6
  %w{ /../../spec /../../lib}.each do |path|
3
7
  $LOAD_PATH << File.expand_path(File.dirname(__FILE__) + path)
@@ -0,0 +1,57 @@
1
+ # -*- encoding: utf-8 -*-
2
+ gherkin_dir = Dir.pwd =~ /gherkin\/tmp/ ? File.expand_path("../../../..", Dir.pwd) : File.expand_path("..", __FILE__)
3
+ $LOAD_PATH.unshift File.join(gherkin_dir, 'lib')
4
+ require "gherkin/version"
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "gherkin"
8
+ s.version = Gherkin::VERSION
9
+ s.authors = ["Mike Sassak", "Gregory Hnatiuk", "Aslak Hellesøy"]
10
+ s.description = "A fast Gherkin lexer/parser based on the Ragel State Machine Compiler."
11
+ s.summary = "gherkin-#{Gherkin::VERSION}"
12
+ s.email = "cukes@googlegroups.com"
13
+ s.homepage = "http://github.com/aslakhellesoy/gherkin"
14
+
15
+ s.rubygems_version = "1.3.7"
16
+ s.default_executable = "gherkin"
17
+
18
+ s.files = `git ls-files`.split("\n")
19
+ s.test_files = `git ls-files -- {spec,features}/*`.split("\n")
20
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
21
+ s.extra_rdoc_files = ["LICENSE", "README.rdoc", "History.txt"]
22
+ s.rdoc_options = ["--charset=UTF-8"]
23
+ s.require_path = "lib"
24
+
25
+ s.files -= Dir['ikvm/**/*']
26
+ s.files -= Dir['java/**/*']
27
+ s.files -= Dir['ext/**/*']
28
+ s.files -= Dir['lib/gherkin.jar']
29
+ s.files -= Dir['lib/**/*.dll']
30
+ s.files -= Dir['lib/**/*.bundle']
31
+ s.files -= Dir['lib/**/*.so']
32
+
33
+ if ENV['GEM_PLATFORM']
34
+ puts "GEM_PLATFORM:#{ENV['GEM_PLATFORM']}"
35
+ puts "PLATFORM:#{PLATFORM}"
36
+ end
37
+ s.platform = ENV['GEM_PLATFORM'] if ENV['GEM_PLATFORM']
38
+ case s.platform.to_s
39
+ when /java/
40
+ s.files += ['lib/gherkin.jar']
41
+ when /mswin|mingw32/
42
+ s.files += Dir['lib/*/*.so']
43
+ when /dotnet/
44
+ s.files += Dir['lib/*.dll']
45
+ else # MRI or Rubinius
46
+ s.files += Dir['lib/gherkin/rb_lexer/*.rb']
47
+ s.files += Dir['ext/**/*.c']
48
+ s.extensions = Dir['ext/**/extconf.rb']
49
+ s.add_development_dependency('rake-compiler', '~> 0.7.1')
50
+ end
51
+
52
+ s.add_dependency('trollop', '~> 1.16.2')
53
+ s.add_development_dependency('rake', '~> 0.8.7')
54
+ s.add_development_dependency('awesome_print', '~> 0.2.1')
55
+ s.add_development_dependency('rspec', '~> 2.0.0.beta.20')
56
+ s.add_development_dependency('cucumber', '~> 0.9.0') unless File.directory?(File.join(gherkin_dir, '../cucumber'))
57
+ end
@@ -20,10 +20,10 @@ module Gherkin
20
20
  end
21
21
 
22
22
  class BasicStatement < Hashable
23
- attr_reader :comments, :keyword, :name, :description, :line
23
+ attr_reader :comments, :keyword, :name, :line
24
24
 
25
- def initialize(comments, keyword, name, description, line)
26
- @comments, @keyword, @name, @description, @line = comments, keyword, name, description, line
25
+ def initialize(comments, keyword, name, line)
26
+ @comments, @keyword, @name, @line = comments, keyword, name, line
27
27
  end
28
28
 
29
29
  def line_range
@@ -36,7 +36,16 @@ module Gherkin
36
36
  end
37
37
  end
38
38
 
39
- class TagStatement < BasicStatement
39
+ class DescribedStatement < BasicStatement
40
+ attr_reader :description
41
+
42
+ def initialize(comments, keyword, name, description, line)
43
+ super(comments, keyword, name, line)
44
+ @description = description
45
+ end
46
+ end
47
+
48
+ class TagStatement < DescribedStatement
40
49
  attr_reader :tags
41
50
 
42
51
  def initialize(comments, tags, keyword, name, description, line)
@@ -61,7 +70,7 @@ module Gherkin
61
70
  end
62
71
  end
63
72
 
64
- class Background < BasicStatement
73
+ class Background < DescribedStatement
65
74
  native_impl('gherkin')
66
75
 
67
76
  def initialize(comments, keyword, name, description, line)
@@ -120,8 +129,8 @@ module Gherkin
120
129
 
121
130
  attr_accessor :multiline_arg, :result
122
131
 
123
- def initialize(comments, keyword, name, description, line, multiline_arg=nil, result=nil)
124
- super(comments, keyword, name, nil, line)
132
+ def initialize(comments, keyword, name, line, multiline_arg=nil, result=nil)
133
+ super(comments, keyword, name, line)
125
134
  @multiline_arg = multiline_arg
126
135
  @result = result
127
136
  end
@@ -48,7 +48,7 @@ module Gherkin
48
48
  multiline_arg = Formatter::Model::PyString.new(ma['value'], ma['line'])
49
49
  end
50
50
  end
51
- Formatter::Model::Step.new(comments(o), keyword(o), name(o), nil, line(o), multiline_arg)
51
+ Formatter::Model::Step.new(comments(o), keyword(o), name(o), line(o), multiline_arg)
52
52
  end
53
53
 
54
54
  def rows(o)
@@ -49,7 +49,7 @@ module Gherkin
49
49
 
50
50
  def step(keyword, name, line)
51
51
  replay_step_or_examples
52
- @step_statement = Formatter::Model::Step.new(grab_comments!, keyword, name, nil, line)
52
+ @step_statement = Formatter::Model::Step.new(grab_comments!, keyword, name, line)
53
53
  end
54
54
 
55
55
  def row(cells, line)
@@ -20,7 +20,7 @@ module Gherkin
20
20
  Dir[*globs].uniq.sort.each(&proc)
21
21
  end
22
22
 
23
- def scan(file, formatter)
23
+ def parse(file, formatter)
24
24
  parser = Gherkin::Parser::Parser.new(formatter, true, "root")
25
25
  begin
26
26
  parser.parse(IO.read(file), file, 0)
@@ -10,8 +10,7 @@ module Gherkin
10
10
  each do |file|
11
11
  io = defined?(JRUBY_VERSION) ? Java.java.io.StringWriter.new : StringIO.new
12
12
  formatter = Formatter::PrettyFormatter.new(io, true)
13
- listener = Listener::FormatterListener.new(formatter)
14
- scan(file, listener)
13
+ parse(file, formatter)
15
14
  string = defined?(JRUBY_VERSION) ? io.getBuffer.toString : io.string
16
15
  File.open(file, 'w') {|io| io.write(string)}
17
16
  end
@@ -0,0 +1,3 @@
1
+ module Gherkin
2
+ VERSION = IO.read(File.dirname(__FILE__) + '/../../VERSION').strip
3
+ end
@@ -42,8 +42,8 @@ module Gherkin
42
42
  ['When ', 'foo']
43
43
  ])
44
44
  @l.scenario(Model::Scenario.new([], [], "Scenario", "The scenario", "", 4))
45
- @l.step(Model::Step.new([], "Given ", "some stuff", "", 5, nil, result('passed', nil, nil, "features/step_definitions/bar.rb:56")))
46
- @l.step(Model::Step.new([], "When ", "foo", "", 6, nil, result('passed', nil, nil, "features/step_definitions/bar.rb:96")))
45
+ @l.step(Model::Step.new([], "Given ", "some stuff", 5, nil, result('passed', nil, nil, "features/step_definitions/bar.rb:56")))
46
+ @l.step(Model::Step.new([], "When ", "foo", 6, nil, result('passed', nil, nil, "features/step_definitions/bar.rb:96")))
47
47
 
48
48
  assert_io(%{Feature: Hello
49
49
  World
@@ -61,7 +61,7 @@ module Gherkin
61
61
  ['Given ', 'some stuff that is longer']
62
62
  ])
63
63
  @l.scenario(Model::Scenario.new([], [], "Scenario", "The scenario", "", 4))
64
- @l.step(Model::Step.new([], "Given ", "some stuff that is longer", "", 5, nil, result('passed', nil, nil, "features/step_definitions/bar.rb:56")))
64
+ @l.step(Model::Step.new([], "Given ", "some stuff that is longer", 5, nil, result('passed', nil, nil, "features/step_definitions/bar.rb:56")))
65
65
 
66
66
  assert_io(%{Feature: Hello
67
67
  World
@@ -72,7 +72,7 @@ module Gherkin
72
72
  end
73
73
 
74
74
  it "should highlight arguments for regular steps" do
75
- step = Model::Step.new([], "Given ", "I have 999 cukes in my belly", "", 3, nil, result('passed', nil, [Gherkin::Formatter::Argument.new(7, '999')], nil))
75
+ step = Model::Step.new([], "Given ", "I have 999 cukes in my belly", 3, nil, result('passed', nil, [Gherkin::Formatter::Argument.new(7, '999')], nil))
76
76
  @l.step(step)
77
77
  assert_io(" Given I have 999 cukes in my belly\n")
78
78
  end
@@ -11,7 +11,7 @@ module Gherkin
11
11
  io = StringIO.new
12
12
  f = Formatter::JSONFormatter.new(io)
13
13
  p = JSONParser.new(f)
14
- p.parse(json, 'unknown.json')
14
+ p.parse(json, 'unknown.json', 0)
15
15
  expected = JSON.parse(json)
16
16
  actual = JSON.parse(io.string)
17
17
 
@@ -5,7 +5,7 @@ module Gherkin
5
5
  module Lexer
6
6
  shared_examples_for "a Gherkin lexer" do
7
7
  def scan(gherkin)
8
- @lexer.scan(gherkin, "test.feature", 0)
8
+ @lexer.scan(gherkin)
9
9
  end
10
10
 
11
11
  describe "Comments" do
@@ -5,7 +5,7 @@ module Gherkin
5
5
  module Lexer
6
6
  shared_examples_for "a Gherkin lexer lexing py_strings" do
7
7
  def scan(gherkin)
8
- @lexer.scan(gherkin, "test.feature", 0)
8
+ @lexer.scan(gherkin)
9
9
  end
10
10
 
11
11
  def ps(content)
@@ -5,7 +5,7 @@ module Gherkin
5
5
  module Lexer
6
6
  shared_examples_for "a Gherkin lexer lexing tags" do
7
7
  def scan(gherkin)
8
- @lexer.scan(gherkin, "test.feature", 0)
8
+ @lexer.scan(gherkin)
9
9
  end
10
10
 
11
11
  it "should lex a single tag" do
@@ -1,4 +1,7 @@
1
1
  require 'rubygems'
2
+ require 'bundler'
3
+ Bundler.setup
4
+
2
5
  require 'rspec/autorun'
3
6
  require 'gherkin'
4
7
  require 'stringio'
@@ -4,7 +4,7 @@ require 'gherkin/i18n'
4
4
 
5
5
  CLEAN.include [
6
6
  'pkg', 'tmp',
7
- '**/*.{o,bundle,jar,so,obj,pdb,lib,def,exp,log}', 'ext',
7
+ '**/*.{o,bundle,jar,so,obj,pdb,lib,def,exp,log,rbc}', 'ext',
8
8
  'java/target',
9
9
  'ragel/i18n/*.rl',
10
10
  'lib/gherkin/rb_lexer/*.rb',
@@ -4,7 +4,6 @@ require 'cucumber/rake/task'
4
4
  Cucumber::Rake::Task.new(:cucumber) do |t|
5
5
  t.cucumber_opts = "--profile default"
6
6
  end
7
- task :cucumber => [:check_dependencies]
8
7
 
9
8
  namespace :cucumber do
10
9
  Cucumber::Rake::Task.new(:rcov, "Run Cucumber using RCov") do |t|
@@ -16,7 +15,7 @@ namespace :cucumber do
16
15
  Cucumber::Rake::Task.new(:native_lexer, "Run Native lexer Cucumber features") do |t|
17
16
  t.cucumber_opts = "--profile native_lexer"
18
17
  end
19
- task :native_lexer => [:check_dependencies, :clean, :compile]
18
+ task :native_lexer => [:clean, :compile]
20
19
  end
21
20
 
22
21
  rescue LoadError
@@ -1,46 +1,42 @@
1
1
  namespace :gems do
2
- desc "Build MRI/C POSIX gem"
3
- task :posix => :release_dir do
4
- sh "rake clean spec"
5
- sh "rake gemspec build"
6
- mv "pkg/gherkin-#{GHERKIN_VERSION}.gem", 'release'
7
- end
2
+ task :win do
3
+ unless File.directory?(File.expand_path('~/.rake-compiler'))
4
+ STDERR.puts <<-EOM
5
+
6
+ You must install Windows rubies to ~/.rake-compiler with:
8
7
 
9
- [:mswin32, :mingw32].each do |win_compiler|
10
- desc "Build MRI/C precompiled #{win_compiler} gem"
11
- task win_compiler do
12
- # Bootstrap with:
13
- #
14
- # rake-compiler cross-ruby VERSION=1.9.1-p243
15
- # rake-compiler cross-ruby VERSION=1.8.6-p114
16
- #
17
- sh "rake cross compile RUBY_CC_VERSION=1.8.6:1.9.1"
18
- sh "rake gemspec build PLATFORM=i386-#{win_compiler}"
19
- mv "pkg/gherkin-#{GHERKIN_VERSION}-x86-#{win_compiler}.gem", 'release'
8
+ rake-compiler cross-ruby VERSION=1.8.6-p287
9
+ # (Later 1.9.1 patch levels don't compile on mingw)
10
+ rake-compiler cross-ruby VERSION=1.9.1-p243
11
+ EOM
12
+ exit(1)
20
13
  end
14
+ # rvm and mingw ruby versions have to match to avoid errors
15
+ sh "rvm 1.8.6@cucumber rake cross compile RUBY_CC_VERSION=1.8.6"
16
+ sh "rvm 1.9.1@cucumber rake cross compile RUBY_CC_VERSION=1.9.1"
17
+ # This will copy the .so files to the proper place
18
+ sh "rake cross compile RUBY_CC_VERSION=1.8.6:1.9.1"
21
19
  end
22
20
 
23
- desc 'Build JRuby gem'
24
- task :jruby => :release_dir do
25
- sh "rvm jruby rake spec"
26
- sh "rvm jruby rake gemspec build PLATFORM=java"
27
- raise "The jruby gem looks too small" if File.stat("pkg/gherkin-#{GHERKIN_VERSION}-java.gem").size < 1000000
28
- mv "pkg/gherkin-#{GHERKIN_VERSION}-java.gem", 'release'
21
+ desc 'Prepare JRuby binares'
22
+ task :jruby => [:jar] do
23
+ sh "rvm jruby@cucumber -S rspec spec"
29
24
  end
30
25
 
31
- desc 'Build IronRuby gem'
32
- task :ironruby => [:jruby, 'ikvm:dll', 'ikvm:copy_ikvm_dlls'] do
33
- sh "rake gemspec build PLATFORM=universal-dotnet"
34
- mv "pkg/gherkin-#{GHERKIN_VERSION}-universal-dotnet.gem", 'release'
35
- end
26
+ desc 'Prepare IronRuby binaries'
27
+ task :ironruby => [:jruby, 'ikvm:dll', 'ikvm:copy_ikvm_dlls']
36
28
 
37
- task :release_dir do
38
- mkdir 'release' unless File.directory?('release')
29
+ task :sanity do
30
+ raise "The jruby gem looks too small" if File.stat("release/gherkin-#{Gherkin::VERSION}-java.gem").size < 1000000
39
31
  end
40
32
 
41
- task :clean_release_dir do
42
- rm_rf 'release' if File.directory?('release')
43
- end
44
- end
33
+ desc "Prepare binaries for all gems"
34
+ task :prepare => [
35
+ :clean,
36
+ :spec,
37
+ :win,
38
+ :jruby,
39
+ :ironruby
40
+ ]
45
41
 
46
- task :gems => ['gems:clean_release_dir', 'gems:posix', 'gems:mswin32', 'gems:mingw32', 'gems:jruby', 'gems:ironruby']
42
+ end
@@ -20,18 +20,21 @@ require File.dirname(__FILE__) + '/../spec/gherkin/json'
20
20
  # [mono] mono ikvm/Gherkin/bin/Debug/Gherkin.exe features/steps_parser.feature
21
21
  #
22
22
  namespace :ikvm do
23
- desc 'Make a .NET .exe'
24
- task :exe => 'lib/gherkin.jar' do
23
+ task :dependent_dlls do
25
24
  mkdir_p 'release' unless File.directory?('release')
26
- sh("mono /usr/local/ikvm/bin/ikvmc.exe -target:exe lib/gherkin.jar -out:release/gherkin-#{GHERKIN_VERSION}.exe")
25
+ sh("mono /usr/local/ikvm/bin/ikvmc.exe -target:library #{JSON_SIMPLE_JAR} -out:release/json-simple.dll")
26
+ end
27
+
28
+ desc 'Make a .NET .exe'
29
+ task :exe => ['lib/gherkin.jar', :dependent_dlls] do
30
+ sh("mono /usr/local/ikvm/bin/ikvmc.exe -target:exe lib/gherkin.jar -out:release/gherkin-#{Gherkin::VERSION}.exe -reference:release/json-simple.dll")
27
31
  end
28
32
 
29
33
  desc 'Make a .NET .dll'
30
- task :dll => 'lib/gherkin.jar' do
34
+ task :dll => ['lib/gherkin.jar', :dependent_dlls] do
31
35
  mkdir_p 'release' unless File.directory?('release')
32
- sh("mono /usr/local/ikvm/bin/ikvmc.exe -target:library #{JSON_SIMPLE_JAR} -out:release/json-simple.dll")
33
- sh("mono /usr/local/ikvm/bin/ikvmc.exe -target:library lib/gherkin.jar -out:release/gherkin-#{GHERKIN_VERSION}.dll -reference:release/json-simple.dll")
34
- cp "release/gherkin-#{GHERKIN_VERSION}.dll", 'lib/gherkin.dll'
36
+ sh("mono /usr/local/ikvm/bin/ikvmc.exe -target:library lib/gherkin.jar -out:release/gherkin-#{Gherkin::VERSION}.dll -reference:release/json-simple.dll")
37
+ cp "release/gherkin-#{Gherkin::VERSION}.dll", 'lib/gherkin.dll'
35
38
  end
36
39
 
37
40
  desc 'Copy the IKVM .dll files over to the pkg dir'
@@ -44,6 +47,8 @@ namespace :ikvm do
44
47
  end
45
48
 
46
49
  task :ikvm => ['ikvm:copy_ikvm_dlls', 'ikvm:exe', 'ikvm:dll'] do
47
- sh "mono release/gherkin-#{GHERKIN_VERSION}.exe features"
50
+ puts "************** Pretty printing some features with .NET. **************"
51
+ sh "mono release/gherkin-#{Gherkin::VERSION}.exe features"
52
+ puts "************** DONE Pretty printing some features with .NET. All OK. **************"
48
53
  end
49
54
 
@@ -1,11 +1,8 @@
1
1
  require 'rake/rdoctask'
2
2
 
3
3
  Rake::RDocTask.new do |rdoc|
4
- config = YAML.load_file('VERSION.yml')
5
- version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
6
-
7
4
  rdoc.rdoc_dir = 'rdoc'
8
- rdoc.title = "Gherkin #{version}"
5
+ rdoc.title = "Gherkin #{Gherkin::VERSION}"
9
6
  rdoc.rdoc_files.include('README.rdoc')
10
7
  rdoc.rdoc_files.include('lib/**/*.rb')
11
8
  rdoc.rdoc_files.exclude('lib/gherkin/lexer')
@@ -1,9 +1,9 @@
1
1
  namespace :release do
2
- desc 'Uplad all packages and tag git'
3
- task :ALL => [:gems, :push_dll, :push_jar, :push_gems, 'git:release']
2
+ desc 'Upload all packages and tag git'
3
+ task :ALL => ['gems:sanity', :push_dll, :push_jar, :push_native_gems, :release]
4
4
 
5
5
  desc 'Push all gems to rubygems.org (gemcutter)'
6
- task :push_gems do
6
+ task :push_native_gems do
7
7
  Dir.chdir('release') do
8
8
  Dir['*.gem'].each do |gem_file|
9
9
  sh("gem push #{gem_file}")
@@ -14,18 +14,10 @@ namespace :release do
14
14
  desc 'Push dll to Github'
15
15
  task :push_dll => :ikvm do
16
16
  Dir.chdir('release') do
17
- # This requires aslakhellesoy's build of the github gem,
18
- # which has tekkub's upload command.
19
- begin
20
- sh("github upload gherkin-#{GHERKIN_VERSION}.dll")
21
- rescue => e
22
- # For some reason we're getting an error even if the upload is successful. Verify that here...
23
- head = `curl -I -X HEAD http://github.com/downloads/aslakhellesoy/gherkin/gherkin-#{GHERKIN_VERSION}.dll`
24
- if !(head =~ /302 Found/in)
25
- e.message << "\n\nUpload of gherkin-#{GHERKIN_VERSION}.dll failed:\n\n#{head}"
26
- raise e
27
- end
28
- end
17
+ # No known way to do scripted uploads. github/upload or aslakhellesoy's fork of github-gem no longer work
18
+ puts "Manually upload gherkin-#{Gherkin::VERSION}.dll to http://github.com/aslakhellesoy/gherkin/downloads"
19
+ puts "Then press enter"
20
+ STDIN.gets
29
21
  end
30
22
  end
31
23
 
@@ -1,7 +1,6 @@
1
1
  require 'rspec/core/rake_task'
2
2
 
3
3
  RSpec::Core::RakeTask.new(:spec)
4
- task :spec => [:check_dependencies]
5
4
 
6
5
  RSpec::Core::RakeTask.new(:rcov) do |t|
7
6
  t.rcov = true
metadata CHANGED
@@ -1,270 +1,321 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gherkin
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 5
4
5
  prerelease: false
5
6
  segments:
6
- - 2
7
- - 2
8
- - 0
9
- version: 2.2.0
7
+ - 2
8
+ - 2
9
+ - 1
10
+ version: 2.2.1
10
11
  platform: java
11
12
  authors:
12
- - Mike Sassak
13
- - Gregory Hnatiuk
14
- - "Aslak Helles\xC3\xB8y"
13
+ - Mike Sassak
14
+ - Gregory Hnatiuk
15
+ - "Aslak Helles\xC3\xB8y"
15
16
  autorequire:
16
17
  bindir: bin
17
18
  cert_chain: []
18
19
 
19
- date: 2010-07-26 00:00:00 +02:00
20
+ date: 2010-09-13 00:00:00 +02:00
20
21
  default_executable: gherkin
21
22
  dependencies:
22
- - !ruby/object:Gem::Dependency
23
- name: trollop
24
- prerelease: false
25
- requirement: &id001 !ruby/object:Gem::Requirement
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- segments:
30
- - 1
31
- - 16
32
- - 2
33
- version: 1.16.2
34
- type: :runtime
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
37
- name: awesome_print
38
- prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
40
- requirements:
41
- - - ~>
42
- - !ruby/object:Gem::Version
43
- segments:
44
- - 0
45
- - 2
46
- - 1
47
- version: 0.2.1
48
- type: :development
49
- version_requirements: *id002
50
- - !ruby/object:Gem::Dependency
51
- name: rspec
52
- prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
54
- requirements:
55
- - - ~>
56
- - !ruby/object:Gem::Version
57
- segments:
58
- - 2
59
- - 0
60
- - 0
61
- - beta
62
- - 17
63
- version: 2.0.0.beta.17
64
- type: :development
65
- version_requirements: *id003
66
- - !ruby/object:Gem::Dependency
67
- name: cucumber
68
- prerelease: false
69
- requirement: &id004 !ruby/object:Gem::Requirement
70
- requirements:
71
- - - ~>
72
- - !ruby/object:Gem::Version
73
- segments:
74
- - 0
75
- - 9
76
- - 0
77
- version: 0.9.0
78
- type: :development
79
- version_requirements: *id004
23
+ - !ruby/object:Gem::Dependency
24
+ name: trollop
25
+ prerelease: false
26
+ requirement: &id001 !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - ~>
30
+ - !ruby/object:Gem::Version
31
+ hash: 83
32
+ segments:
33
+ - 1
34
+ - 16
35
+ - 2
36
+ version: 1.16.2
37
+ type: :runtime
38
+ version_requirements: *id001
39
+ - !ruby/object:Gem::Dependency
40
+ name: rake
41
+ prerelease: false
42
+ requirement: &id002 !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ hash: 49
48
+ segments:
49
+ - 0
50
+ - 8
51
+ - 7
52
+ version: 0.8.7
53
+ type: :development
54
+ version_requirements: *id002
55
+ - !ruby/object:Gem::Dependency
56
+ name: awesome_print
57
+ prerelease: false
58
+ requirement: &id003 !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ~>
62
+ - !ruby/object:Gem::Version
63
+ hash: 21
64
+ segments:
65
+ - 0
66
+ - 2
67
+ - 1
68
+ version: 0.2.1
69
+ type: :development
70
+ version_requirements: *id003
71
+ - !ruby/object:Gem::Dependency
72
+ name: rspec
73
+ prerelease: false
74
+ requirement: &id004 !ruby/object:Gem::Requirement
75
+ none: false
76
+ requirements:
77
+ - - ~>
78
+ - !ruby/object:Gem::Version
79
+ hash: 62196427
80
+ segments:
81
+ - 2
82
+ - 0
83
+ - 0
84
+ - beta
85
+ - 20
86
+ version: 2.0.0.beta.20
87
+ type: :development
88
+ version_requirements: *id004
80
89
  description: A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.
81
90
  email: cukes@googlegroups.com
82
91
  executables:
83
- - gherkin
92
+ - gherkin
84
93
  extensions: []
85
94
 
86
95
  extra_rdoc_files:
87
- - LICENSE
88
- - README.rdoc
96
+ - LICENSE
97
+ - README.rdoc
98
+ - History.txt
89
99
  files:
90
- - .gitattributes
91
- - .gitignore
92
- - .mailmap
93
- - .rspec
94
- - History.txt
95
- - LICENSE
96
- - README.rdoc
97
- - Rakefile
98
- - VERSION.yml
99
- - bin/gherkin
100
- - cucumber.yml
101
- - features/escaped_pipes.feature
102
- - features/feature_parser.feature
103
- - features/json_formatter.feature
104
- - features/json_parser.feature
105
- - features/native_lexer.feature
106
- - features/parser_with_native_lexer.feature
107
- - features/pretty_formatter.feature
108
- - features/step_definitions/eyeball_steps.rb
109
- - features/step_definitions/gherkin_steps.rb
110
- - features/step_definitions/json_formatter_steps.rb
111
- - features/step_definitions/json_lexer_steps.rb
112
- - features/step_definitions/pretty_formatter_steps.rb
113
- - features/steps_parser.feature
114
- - features/support/env.rb
115
- - ikvm/.gitignore
116
- - java/.gitignore
117
- - java/src/main/java/gherkin/lexer/i18n/.gitignore
118
- - java/src/main/resources/gherkin/.gitignore
119
- - json-simple-1.1.dll
120
- - lib/.gitignore
121
- - lib/gherkin.jar
122
- - lib/gherkin.rb
123
- - lib/gherkin/c_lexer.rb
124
- - lib/gherkin/cli/main.rb
125
- - lib/gherkin/formatter/argument.rb
126
- - lib/gherkin/formatter/colors.rb
127
- - lib/gherkin/formatter/escaping.rb
128
- - lib/gherkin/formatter/filter_formatter.rb
129
- - lib/gherkin/formatter/json_formatter.rb
130
- - lib/gherkin/formatter/line_filter.rb
131
- - lib/gherkin/formatter/model.rb
132
- - lib/gherkin/formatter/monochrome_format.rb
133
- - lib/gherkin/formatter/pretty_formatter.rb
134
- - lib/gherkin/formatter/regexp_filter.rb
135
- - lib/gherkin/formatter/tag_count_formatter.rb
136
- - lib/gherkin/formatter/tag_filter.rb
137
- - lib/gherkin/i18n.rb
138
- - lib/gherkin/i18n.yml
139
- - lib/gherkin/json_parser.rb
140
- - lib/gherkin/lexer/i18n_lexer.rb
141
- - lib/gherkin/listener/event.rb
142
- - lib/gherkin/listener/formatter_listener.rb
143
- - lib/gherkin/native.rb
144
- - lib/gherkin/native/ikvm.rb
145
- - lib/gherkin/native/java.rb
146
- - lib/gherkin/native/null.rb
147
- - lib/gherkin/parser/meta.txt
148
- - lib/gherkin/parser/parser.rb
149
- - lib/gherkin/parser/root.txt
150
- - lib/gherkin/parser/steps.txt
151
- - lib/gherkin/rb_lexer.rb
152
- - lib/gherkin/rb_lexer/.gitignore
153
- - lib/gherkin/rb_lexer/README.rdoc
154
- - lib/gherkin/rubify.rb
155
- - lib/gherkin/tag_expression.rb
156
- - lib/gherkin/tools.rb
157
- - lib/gherkin/tools/files.rb
158
- - lib/gherkin/tools/reformat.rb
159
- - lib/gherkin/tools/stats.rb
160
- - lib/gherkin/tools/stats_listener.rb
161
- - ragel/i18n/.gitignore
162
- - ragel/lexer.c.rl.erb
163
- - ragel/lexer.java.rl.erb
164
- - ragel/lexer.rb.rl.erb
165
- - ragel/lexer_common.rl.erb
166
- - spec/gherkin/c_lexer_spec.rb
167
- - spec/gherkin/fixtures/1.feature
168
- - spec/gherkin/fixtures/comments_in_table.feature
169
- - spec/gherkin/fixtures/complex.feature
170
- - spec/gherkin/fixtures/complex.json
171
- - spec/gherkin/fixtures/complex_for_filtering.feature
172
- - spec/gherkin/fixtures/complex_with_tags.feature
173
- - spec/gherkin/fixtures/dos_line_endings.feature
174
- - spec/gherkin/fixtures/hantu_pisang.feature
175
- - spec/gherkin/fixtures/i18n_fr.feature
176
- - spec/gherkin/fixtures/i18n_no.feature
177
- - spec/gherkin/fixtures/i18n_zh-CN.feature
178
- - spec/gherkin/fixtures/scenario_outline_with_tags.feature
179
- - spec/gherkin/fixtures/scenario_without_steps.feature
180
- - spec/gherkin/fixtures/simple_with_comments.feature
181
- - spec/gherkin/fixtures/simple_with_tags.feature
182
- - spec/gherkin/fixtures/with_bom.feature
183
- - spec/gherkin/formatter/argument_spec.rb
184
- - spec/gherkin/formatter/colors_spec.rb
185
- - spec/gherkin/formatter/filter_formatter_spec.rb
186
- - spec/gherkin/formatter/model_spec.rb
187
- - spec/gherkin/formatter/pretty_formatter_spec.rb
188
- - spec/gherkin/formatter/spaces.feature
189
- - spec/gherkin/formatter/tabs.feature
190
- - spec/gherkin/formatter/tag_count_formatter_spec.rb
191
- - spec/gherkin/i18n_spec.rb
192
- - spec/gherkin/java_lexer_spec.rb
193
- - spec/gherkin/json.rb
194
- - spec/gherkin/json_parser_spec.rb
195
- - spec/gherkin/lexer/i18n_lexer_spec.rb
196
- - spec/gherkin/output_stream_string_io.rb
197
- - spec/gherkin/parser/parser_spec.rb
198
- - spec/gherkin/rb_lexer_spec.rb
199
- - spec/gherkin/sexp_recorder.rb
200
- - spec/gherkin/shared/lexer_group.rb
201
- - spec/gherkin/shared/py_string_group.rb
202
- - spec/gherkin/shared/row_group.rb
203
- - spec/gherkin/shared/tags_group.rb
204
- - spec/gherkin/tag_expression_spec.rb
205
- - spec/spec_helper.rb
206
- - tasks/bench.rake
207
- - tasks/bench/feature_builder.rb
208
- - tasks/bench/generated/.gitignore
209
- - tasks/bench/null_listener.rb
210
- - tasks/compile.rake
211
- - tasks/cucumber.rake
212
- - tasks/gems.rake
213
- - tasks/ikvm.rake
214
- - tasks/ragel_task.rb
215
- - tasks/rdoc.rake
216
- - tasks/release.rake
217
- - tasks/rspec.rake
100
+ - .gitattributes
101
+ - .gitignore
102
+ - .mailmap
103
+ - .rspec
104
+ - .rvmrc
105
+ - Gemfile
106
+ - Gemfile.lock
107
+ - History.txt
108
+ - LICENSE
109
+ - README.rdoc
110
+ - Rakefile
111
+ - VERSION
112
+ - bin/gherkin
113
+ - build_native_gems.sh
114
+ - cucumber.yml
115
+ - features/escaped_pipes.feature
116
+ - features/feature_parser.feature
117
+ - features/json_formatter.feature
118
+ - features/json_parser.feature
119
+ - features/native_lexer.feature
120
+ - features/parser_with_native_lexer.feature
121
+ - features/pretty_formatter.feature
122
+ - features/step_definitions/eyeball_steps.rb
123
+ - features/step_definitions/gherkin_steps.rb
124
+ - features/step_definitions/json_formatter_steps.rb
125
+ - features/step_definitions/json_parser_steps.rb
126
+ - features/step_definitions/pretty_formatter_steps.rb
127
+ - features/steps_parser.feature
128
+ - features/support/env.rb
129
+ - gherkin.gemspec
130
+ - ikvm/.gitignore
131
+ - java/.gitignore
132
+ - java/src/main/java/gherkin/lexer/i18n/.gitignore
133
+ - java/src/main/resources/gherkin/.gitignore
134
+ - lib/.gitignore
135
+ - lib/gherkin.rb
136
+ - lib/gherkin/c_lexer.rb
137
+ - lib/gherkin/cli/main.rb
138
+ - lib/gherkin/formatter/argument.rb
139
+ - lib/gherkin/formatter/colors.rb
140
+ - lib/gherkin/formatter/escaping.rb
141
+ - lib/gherkin/formatter/filter_formatter.rb
142
+ - lib/gherkin/formatter/json_formatter.rb
143
+ - lib/gherkin/formatter/line_filter.rb
144
+ - lib/gherkin/formatter/model.rb
145
+ - lib/gherkin/formatter/monochrome_format.rb
146
+ - lib/gherkin/formatter/pretty_formatter.rb
147
+ - lib/gherkin/formatter/regexp_filter.rb
148
+ - lib/gherkin/formatter/tag_count_formatter.rb
149
+ - lib/gherkin/formatter/tag_filter.rb
150
+ - lib/gherkin/i18n.rb
151
+ - lib/gherkin/i18n.yml
152
+ - lib/gherkin/json_parser.rb
153
+ - lib/gherkin/lexer/i18n_lexer.rb
154
+ - lib/gherkin/listener/event.rb
155
+ - lib/gherkin/listener/formatter_listener.rb
156
+ - lib/gherkin/native.rb
157
+ - lib/gherkin/native/ikvm.rb
158
+ - lib/gherkin/native/java.rb
159
+ - lib/gherkin/native/null.rb
160
+ - lib/gherkin/parser/meta.txt
161
+ - lib/gherkin/parser/parser.rb
162
+ - lib/gherkin/parser/root.txt
163
+ - lib/gherkin/parser/steps.txt
164
+ - lib/gherkin/rb_lexer.rb
165
+ - lib/gherkin/rb_lexer/.gitignore
166
+ - lib/gherkin/rb_lexer/README.rdoc
167
+ - lib/gherkin/rubify.rb
168
+ - lib/gherkin/tag_expression.rb
169
+ - lib/gherkin/tools.rb
170
+ - lib/gherkin/tools/files.rb
171
+ - lib/gherkin/tools/reformat.rb
172
+ - lib/gherkin/tools/stats.rb
173
+ - lib/gherkin/tools/stats_listener.rb
174
+ - lib/gherkin/version.rb
175
+ - ragel/i18n/.gitignore
176
+ - ragel/lexer.c.rl.erb
177
+ - ragel/lexer.java.rl.erb
178
+ - ragel/lexer.rb.rl.erb
179
+ - ragel/lexer_common.rl.erb
180
+ - spec/gherkin/c_lexer_spec.rb
181
+ - spec/gherkin/fixtures/1.feature
182
+ - spec/gherkin/fixtures/comments_in_table.feature
183
+ - spec/gherkin/fixtures/complex.feature
184
+ - spec/gherkin/fixtures/complex.json
185
+ - spec/gherkin/fixtures/complex_for_filtering.feature
186
+ - spec/gherkin/fixtures/complex_with_tags.feature
187
+ - spec/gherkin/fixtures/dos_line_endings.feature
188
+ - spec/gherkin/fixtures/hantu_pisang.feature
189
+ - spec/gherkin/fixtures/i18n_fr.feature
190
+ - spec/gherkin/fixtures/i18n_no.feature
191
+ - spec/gherkin/fixtures/i18n_zh-CN.feature
192
+ - spec/gherkin/fixtures/scenario_outline_with_tags.feature
193
+ - spec/gherkin/fixtures/scenario_without_steps.feature
194
+ - spec/gherkin/fixtures/simple_with_comments.feature
195
+ - spec/gherkin/fixtures/simple_with_tags.feature
196
+ - spec/gherkin/fixtures/with_bom.feature
197
+ - spec/gherkin/formatter/argument_spec.rb
198
+ - spec/gherkin/formatter/colors_spec.rb
199
+ - spec/gherkin/formatter/filter_formatter_spec.rb
200
+ - spec/gherkin/formatter/model_spec.rb
201
+ - spec/gherkin/formatter/pretty_formatter_spec.rb
202
+ - spec/gherkin/formatter/spaces.feature
203
+ - spec/gherkin/formatter/tabs.feature
204
+ - spec/gherkin/formatter/tag_count_formatter_spec.rb
205
+ - spec/gherkin/i18n_spec.rb
206
+ - spec/gherkin/java_lexer_spec.rb
207
+ - spec/gherkin/json.rb
208
+ - spec/gherkin/json_parser_spec.rb
209
+ - spec/gherkin/lexer/i18n_lexer_spec.rb
210
+ - spec/gherkin/output_stream_string_io.rb
211
+ - spec/gherkin/parser/parser_spec.rb
212
+ - spec/gherkin/rb_lexer_spec.rb
213
+ - spec/gherkin/sexp_recorder.rb
214
+ - spec/gherkin/shared/lexer_group.rb
215
+ - spec/gherkin/shared/py_string_group.rb
216
+ - spec/gherkin/shared/row_group.rb
217
+ - spec/gherkin/shared/tags_group.rb
218
+ - spec/gherkin/tag_expression_spec.rb
219
+ - spec/spec_helper.rb
220
+ - tasks/bench.rake
221
+ - tasks/bench/feature_builder.rb
222
+ - tasks/bench/generated/.gitignore
223
+ - tasks/bench/null_listener.rb
224
+ - tasks/compile.rake
225
+ - tasks/cucumber.rake
226
+ - tasks/gems.rake
227
+ - tasks/ikvm.rake
228
+ - tasks/ragel_task.rb
229
+ - tasks/rdoc.rake
230
+ - tasks/release.rake
231
+ - tasks/rspec.rake
232
+ - lib/gherkin.jar
218
233
  has_rdoc: true
219
234
  homepage: http://github.com/aslakhellesoy/gherkin
220
235
  licenses: []
221
236
 
222
237
  post_install_message:
223
238
  rdoc_options:
224
- - --charset=UTF-8
239
+ - --charset=UTF-8
225
240
  require_paths:
226
- - lib
241
+ - lib
227
242
  required_ruby_version: !ruby/object:Gem::Requirement
243
+ none: false
228
244
  requirements:
229
- - - ">="
230
- - !ruby/object:Gem::Version
231
- segments:
232
- - 0
233
- version: "0"
245
+ - - ">="
246
+ - !ruby/object:Gem::Version
247
+ hash: 3
248
+ segments:
249
+ - 0
250
+ version: "0"
234
251
  required_rubygems_version: !ruby/object:Gem::Requirement
252
+ none: false
235
253
  requirements:
236
- - - ">="
237
- - !ruby/object:Gem::Version
238
- segments:
239
- - 0
240
- version: "0"
254
+ - - ">="
255
+ - !ruby/object:Gem::Version
256
+ hash: 3
257
+ segments:
258
+ - 0
259
+ version: "0"
241
260
  requirements: []
242
261
 
243
262
  rubyforge_project:
244
- rubygems_version: 1.3.6
263
+ rubygems_version: 1.3.7
245
264
  signing_key:
246
265
  specification_version: 3
247
- summary: Fast Gherkin lexer/parser
266
+ summary: gherkin-2.2.1
248
267
  test_files:
249
- - spec/spec_helper.rb
250
- - spec/gherkin/c_lexer_spec.rb
251
- - spec/gherkin/i18n_spec.rb
252
- - spec/gherkin/java_lexer_spec.rb
253
- - spec/gherkin/json.rb
254
- - spec/gherkin/json_parser_spec.rb
255
- - spec/gherkin/output_stream_string_io.rb
256
- - spec/gherkin/rb_lexer_spec.rb
257
- - spec/gherkin/sexp_recorder.rb
258
- - spec/gherkin/tag_expression_spec.rb
259
- - spec/gherkin/formatter/argument_spec.rb
260
- - spec/gherkin/formatter/colors_spec.rb
261
- - spec/gherkin/formatter/filter_formatter_spec.rb
262
- - spec/gherkin/formatter/model_spec.rb
263
- - spec/gherkin/formatter/pretty_formatter_spec.rb
264
- - spec/gherkin/formatter/tag_count_formatter_spec.rb
265
- - spec/gherkin/lexer/i18n_lexer_spec.rb
266
- - spec/gherkin/parser/parser_spec.rb
267
- - spec/gherkin/shared/lexer_group.rb
268
- - spec/gherkin/shared/py_string_group.rb
269
- - spec/gherkin/shared/row_group.rb
270
- - spec/gherkin/shared/tags_group.rb
268
+ - features/escaped_pipes.feature
269
+ - features/feature_parser.feature
270
+ - features/json_formatter.feature
271
+ - features/json_parser.feature
272
+ - features/native_lexer.feature
273
+ - features/parser_with_native_lexer.feature
274
+ - features/pretty_formatter.feature
275
+ - features/step_definitions/eyeball_steps.rb
276
+ - features/step_definitions/gherkin_steps.rb
277
+ - features/step_definitions/json_formatter_steps.rb
278
+ - features/step_definitions/json_parser_steps.rb
279
+ - features/step_definitions/pretty_formatter_steps.rb
280
+ - features/steps_parser.feature
281
+ - features/support/env.rb
282
+ - spec/gherkin/c_lexer_spec.rb
283
+ - spec/gherkin/fixtures/1.feature
284
+ - spec/gherkin/fixtures/comments_in_table.feature
285
+ - spec/gherkin/fixtures/complex.feature
286
+ - spec/gherkin/fixtures/complex.json
287
+ - spec/gherkin/fixtures/complex_for_filtering.feature
288
+ - spec/gherkin/fixtures/complex_with_tags.feature
289
+ - spec/gherkin/fixtures/dos_line_endings.feature
290
+ - spec/gherkin/fixtures/hantu_pisang.feature
291
+ - spec/gherkin/fixtures/i18n_fr.feature
292
+ - spec/gherkin/fixtures/i18n_no.feature
293
+ - spec/gherkin/fixtures/i18n_zh-CN.feature
294
+ - spec/gherkin/fixtures/scenario_outline_with_tags.feature
295
+ - spec/gherkin/fixtures/scenario_without_steps.feature
296
+ - spec/gherkin/fixtures/simple_with_comments.feature
297
+ - spec/gherkin/fixtures/simple_with_tags.feature
298
+ - spec/gherkin/fixtures/with_bom.feature
299
+ - spec/gherkin/formatter/argument_spec.rb
300
+ - spec/gherkin/formatter/colors_spec.rb
301
+ - spec/gherkin/formatter/filter_formatter_spec.rb
302
+ - spec/gherkin/formatter/model_spec.rb
303
+ - spec/gherkin/formatter/pretty_formatter_spec.rb
304
+ - spec/gherkin/formatter/spaces.feature
305
+ - spec/gherkin/formatter/tabs.feature
306
+ - spec/gherkin/formatter/tag_count_formatter_spec.rb
307
+ - spec/gherkin/i18n_spec.rb
308
+ - spec/gherkin/java_lexer_spec.rb
309
+ - spec/gherkin/json.rb
310
+ - spec/gherkin/json_parser_spec.rb
311
+ - spec/gherkin/lexer/i18n_lexer_spec.rb
312
+ - spec/gherkin/output_stream_string_io.rb
313
+ - spec/gherkin/parser/parser_spec.rb
314
+ - spec/gherkin/rb_lexer_spec.rb
315
+ - spec/gherkin/sexp_recorder.rb
316
+ - spec/gherkin/shared/lexer_group.rb
317
+ - spec/gherkin/shared/py_string_group.rb
318
+ - spec/gherkin/shared/row_group.rb
319
+ - spec/gherkin/shared/tags_group.rb
320
+ - spec/gherkin/tag_expression_spec.rb
321
+ - spec/spec_helper.rb
@@ -1,5 +0,0 @@
1
- ---
2
- :major: 2
3
- :minor: 2
4
- :patch: 0
5
- :build:
Binary file