gherkin 2.4.6 → 2.4.11

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.
@@ -0,0 +1 @@
1
+ cucumber
data/.rvmrc CHANGED
@@ -1 +1 @@
1
- rvm @cucumber --create
1
+ rvm gemset use cucumber
@@ -1,13 +1,12 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gherkin (2.4.6)
4
+ gherkin (2.4.11)
5
5
  json (>= 1.4.6)
6
6
 
7
7
  GEM
8
8
  remote: http://rubygems.org/
9
9
  specs:
10
- awesome_print (0.4.0)
11
10
  builder (3.0.0)
12
11
  cucumber (1.0.2)
13
12
  builder (>= 2.1.2)
@@ -18,7 +17,6 @@ GEM
18
17
  diff-lcs (1.1.2)
19
18
  json (1.5.3)
20
19
  json (1.5.3-java)
21
- libv8 (3.3.10.2)
22
20
  rake (0.9.2)
23
21
  rake-compiler (0.7.9)
24
22
  rake
@@ -32,8 +30,6 @@ GEM
32
30
  diff-lcs (~> 1.1.2)
33
31
  rspec-mocks (2.6.0)
34
32
  term-ansicolor (1.0.6)
35
- therubyracer (0.9.2)
36
- libv8 (~> 3.3.10)
37
33
  yard (0.7.2)
38
34
 
39
35
  PLATFORMS
@@ -41,15 +37,13 @@ PLATFORMS
41
37
  ruby
42
38
 
43
39
  DEPENDENCIES
44
- awesome_print (>= 0.4.0)
45
40
  builder (>= 2.1.2)
46
- bundler (>= 1.0.15)
41
+ bundler (>= 1.0.18)
47
42
  cucumber (>= 1.0.2)
48
43
  gherkin!
49
44
  rake (>= 0.9.2)
50
- rake-compiler (>= 0.7.8)
45
+ rake-compiler (>= 0.7.9)
51
46
  rdiscount (>= 1.6.8)
52
47
  rspec (>= 2.6.0)
53
48
  term-ansicolor (>= 1.0.6)
54
- therubyracer (>= 0.9.2)
55
49
  yard (>= 0.7.2)
data/History.md CHANGED
@@ -1,3 +1,38 @@
1
+ ## [2.4.11](https://github.com/cucumber/gherkin/compare/v2.4.10...v2.4.11)
2
+
3
+ ### Bugfixes
4
+
5
+ * Changed rake-compiler version from '~> 1.7.9' to '>= 1.7.9' since the fix in 2.4.10 seemed to have no effect. I hate the Ruby ecosystem today. (Aslak Hellesøy)
6
+
7
+ ## [2.4.10](https://github.com/cucumber/gherkin/compare/v2.4.9...v2.4.10)
8
+
9
+ ### Bugfixes
10
+
11
+ * Changed rake-compiler version from '1.7.9' to '~> 1.7.9' since the fix in 2.4.9 seemed to have no effect. (Aslak Hellesøy)
12
+
13
+ ## [2.4.9](https://github.com/cucumber/gherkin/compare/v2.4.8...v2.4.9)
14
+
15
+ ### Bugfixes
16
+
17
+ * Changed rake-compiler version from '= 1.7.9' to '1.7.9' to work around install problems caused by https://github.com/rubygems/rubygems/pull/121 (Aslak Hellesøy)
18
+
19
+ ## [2.4.8](https://github.com/cucumber/gherkin/compare/v2.4.7...v2.4.8)
20
+
21
+ ### Bugfixes
22
+
23
+ * Remove another awesome_print which was left over from 2.4.7. (Aslak Hellesøy)
24
+ * Make specs/features pass when LANG=C (or LC_CTYPE=C). (#118 Antonio Terceiro, Aslak Hellesøy)
25
+
26
+ ## [2.4.7](https://github.com/cucumber/gherkin/compare/v2.4.6...v2.4.7)
27
+
28
+ ### Bugfixes
29
+
30
+ * Remove awesome_print (which was used for debuging). (Antonio Terceiro)
31
+
32
+ ### New Features
33
+
34
+ * Added I18n.getLocale() to Java impl. (Aslak Hellesøy)
35
+
1
36
  ## [2.4.6](https://github.com/cucumber/gherkin/compare/v2.4.5...v2.4.6)
2
37
 
3
38
  ### Bugfixes
data/README.md CHANGED
@@ -6,12 +6,54 @@ A fast lexer and parser for the Gherkin language based on Ragel. Gherkin is two
6
6
  Supported platforms:
7
7
 
8
8
  * Ruby 1.8.6-1.9.2 (MRI, JRuby, REE, Rubinius)
9
- * Pure Java
10
- * Javascript (Tested with V8/node.js/Chrome, but might work on other Javascript engines)
11
- * .NET
12
- * IronRuby (experimental)
9
+ * Pure Java (jar file)
10
+ * JavaScript (NPM package. Tested with V8/node.js/Chrome, but might work on other JavaScript engines)
11
+ * .NET (dll file)
13
12
 
14
- ## Installing the toolchain
13
+ ## Installation
14
+
15
+ ### Ruby/JRuby
16
+
17
+ gem install gherkin
18
+
19
+ #### Troubleshooting
20
+
21
+ On JRuby you may get an error saying:
22
+
23
+ ERROR: While executing gem ... (ArgumentError)
24
+ undefined class/module YAML::Syck::DefaultKey
25
+
26
+ You can get around this problem by upgrading rubygems:
27
+
28
+ jruby -S gem install rubygems-update
29
+ gem update --system
30
+
31
+ Another problem you might encounter is:
32
+
33
+ ERROR: While executing gem ... (ArgumentError)
34
+ invalid byte sequence in US-ASCII
35
+
36
+ If this happens, try defining your shell's encoding:
37
+
38
+ # Linux
39
+ export LANG=en_US.UTF-8
40
+
41
+ # OS X
42
+ export LC_CTYPE=en_US.UTF-8
43
+
44
+ ### Node.js
45
+
46
+ npm install gherkin
47
+
48
+ ### Java
49
+
50
+ Get the jar from the http://cukes.info/maven/ Maven repo
51
+
52
+ ### .NET
53
+
54
+ Get the dll from https://github.com/cucumber/gherkin/downloads
55
+
56
+ ## Hacking: Installing the toolchain
15
57
 
16
58
  Due to the cross-platform nature of this library, you have to install a lot of tools to build gherkin yourself.
17
59
  In order to make it easier for occasional contributors to get the development environment up and running, you don't
@@ -28,7 +70,7 @@ These are the minimal tools you need to install:
28
70
  * A clone of the cucumber git repo to a "cucumber" sibling folder of your gherkin folder. (Only needed to run cucumber tests)
29
71
  * RVM (you may not need this if you are only building for a single platform)
30
72
 
31
- With this minimal toolchain installed, install Ruby gems needed by the build:
73
+ With this minimal tool chain installed, install Ruby gems needed by the build:
32
74
 
33
75
  gem install bundler
34
76
  bundle install
@@ -65,7 +107,7 @@ Now you can build the jar with:
65
107
 
66
108
  rake clean jar
67
109
 
68
- ### Javascript
110
+ ### JavaScript
69
111
 
70
112
  In order to build and test Gherkin for Javascript you must install:
71
113
 
@@ -110,48 +152,38 @@ Now you can build the .NET dll with:
110
152
 
111
153
  ### MinGW Rubies (for Windows gems)
112
154
 
113
- In order to build Windows binaries (so we can release Windows gems from OS X/Linux) we need to set up rake-compiler.
114
-
115
- http://github.com/luislavena/rake-compiler/
116
-
117
- Now, let's install MinGW...
118
-
119
- 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):
120
- http://crossgcc.rts-software.org/doku.php - just add the bin folder to your PATH
121
-
122
- You must install MinGW rubies to build gems fow Windows.
123
- First you need to download and install MinGW:
124
-
125
- OS X users can get it from http://crossgcc.rts-software.org/doku.php
126
- Once you have installed it, add this to your .bashrc:
155
+ In order to build Windows binaries (so we can release Windows gems from OS X/Linux) we first need to install MinGW.
156
+ On OS X, download prebuilt binaries (version 4.3.0) from http://crossgcc.rts-software.org/doku.php.
157
+ Unpack it under /usr/local and add it to your PATH, typically in your `~/.bashrc`:
127
158
 
128
159
  export PATH=$PATH:/usr/local/i386-mingw32-4.3.0/bin
129
160
 
130
- Now, let's install some rubies.
161
+ Now we need to set up [rake-compiler](http://github.com/luislavena/rake-compiler/)
162
+ We'll start by installing some rubies.
163
+
131
164
  Make sure you have openssl installed first.
132
165
 
133
166
  brew install openssl
134
167
 
135
- # 1.8.6
136
- # Don't worry about inconsistent patchlevels here. It works.
137
- rvm install 1.8.6-p399
138
- rvm use 1.8.6-p399
168
+ # 1.8.7
169
+ rvm install 1.8.7-p352
170
+ rvm use 1.8.7-p352
139
171
  rvm gemset create cucumber
140
- rvm use @cucumber
172
+ rvm gemset use cucumber
141
173
  gem install bundler
174
+ unset GHERKIN_JS
142
175
  bundle install
143
- rake-compiler cross-ruby VERSION=1.8.6-p287
176
+ rake-compiler cross-ruby VERSION=1.8.7-p352
144
177
 
145
- # 1.9.1
146
- # Later 1.9.1 patch levels or 1.9.2 don't compile on mingw.
147
- # The compiled binaries should still work on 1.9.2
148
- rvm install 1.9.1-p243
149
- rvm use 1.9.1-p243
178
+ # 1.9.2
179
+ rvm install 1.9.2-p290
180
+ rvm use 1.9.2-p290
150
181
  rvm gemset create cucumber
151
- rvm use @cucumber
182
+ rvm gemset use cucumber
152
183
  gem install bundler
184
+ unset GHERKIN_JS
153
185
  bundle install
154
- rake-compiler cross-ruby VERSION=1.9.1-p243
186
+ rake-compiler cross-ruby VERSION=1.9.2-p290
155
187
 
156
188
  ## Release process
157
189
 
@@ -181,4 +213,4 @@ Make sure you have openssl installed first.
181
213
 
182
214
  ## Copyright
183
215
 
184
- Copyright (c) 2009-2010 Mike Sassak, Gregory Hnatiuk, Aslak Hellesøy. See LICENSE for details.
216
+ Copyright (c) 2009-2011 Mike Sassak, Gregory Hnatiuk, Aslak Hellesøy. See LICENSE for details.
@@ -1,4 +1,3 @@
1
- require 'ap' # awesome_print gem
2
1
  require 'stringio'
3
2
  require 'gherkin/formatter/json_formatter'
4
3
  require 'gherkin/listener/formatter_listener'
@@ -19,8 +18,8 @@ end
19
18
  Then /^the outputted JSON should be:$/ do |expected_json|
20
19
  require 'json'
21
20
  puts JSON.pretty_generate(JSON.parse(@io.string))
22
- expected = JSON.parse(expected_json).ai
23
- actual = JSON.parse(@io.string).ai
21
+ expected = JSON.parse(expected_json)
22
+ actual = JSON.parse(@io.string)
24
23
  actual.should == expected
25
24
  end
26
25
 
@@ -1,3 +1,8 @@
1
+ if RUBY_VERSION =~ /1.9/
2
+ Encoding.default_external = Encoding::UTF_8
3
+ Encoding.default_internal = Encoding::UTF_8
4
+ end
5
+
1
6
  require 'rubygems'
2
7
  require 'bundler'
3
8
  Bundler.setup
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "gherkin"
5
- s.version = "2.4.6"
5
+ s.version = "2.4.11"
6
6
  s.authors = ["Mike Sassak", "Gregory Hnatiuk", "Aslak Hellesøy"]
7
7
  s.description = "A fast Gherkin lexer/parser for based on the Ragel State Machine Compiler."
8
8
  s.summary = "#{s.name}-#{s.version}"
@@ -39,19 +39,18 @@ Gem::Specification.new do |s|
39
39
  s.files += Dir['lib/gherkin/rb_lexer/*.rb']
40
40
  s.files += Dir['ext/**/*.c']
41
41
  s.extensions = Dir['ext/**/extconf.rb']
42
- s.add_development_dependency('rake-compiler', '>= 0.7.8')
42
+ s.add_development_dependency('rake-compiler', '>= 0.7.9')
43
43
  end
44
44
 
45
45
  s.add_dependency('json', '>= 1.4.6')
46
46
 
47
47
  s.add_development_dependency('cucumber', '>= 1.0.2')
48
48
  s.add_development_dependency('rake', '>= 0.9.2')
49
- s.add_development_dependency('bundler', '>= 1.0.15')
49
+ s.add_development_dependency('bundler', '>= 1.0.18')
50
50
  s.add_development_dependency('rspec', '>= 2.6.0')
51
- s.add_development_dependency('awesome_print', '>= 0.4.0')
52
51
 
53
52
  unless ENV['RUBY_CC_VERSION'] || defined?(JRUBY_VERSION)
54
- s.add_development_dependency('therubyracer', '>= 0.9.2') if ENV['GHERKIN_JS']
53
+ s.add_development_dependency('therubyracer', '>= 0.9.3') if ENV['GHERKIN_JS']
55
54
  # For Documentation:
56
55
  s.add_development_dependency('yard', '>= 0.7.2')
57
56
  s.add_development_dependency('rdiscount', '>= 1.6.8')
@@ -1,5 +1,6 @@
1
1
  require 'gherkin/lexer/i18n_lexer'
2
2
  require 'gherkin/parser/parser'
3
+
3
4
  if defined?(JRUBY_VERSION)
4
5
  require 'json-simple-1.1.jar'
5
6
  require 'base64-2.3.8.jar'
@@ -1,5 +1,4 @@
1
1
  #encoding: utf-8
2
- require 'ap'
3
2
  require 'spec_helper'
4
3
  require 'gherkin/json_parser'
5
4
  require 'gherkin/formatter/json_formatter'
@@ -1,3 +1,8 @@
1
+ if RUBY_VERSION =~ /1.9/
2
+ Encoding.default_external = Encoding::UTF_8
3
+ Encoding.default_internal = Encoding::UTF_8
4
+ end
5
+
1
6
  require 'rubygems'
2
7
  require 'bundler'
3
8
  Bundler.setup
@@ -5,15 +5,15 @@ namespace :gems do
5
5
  exit(1)
6
6
  end
7
7
  # rvm and mingw ruby versions have to match to avoid errors
8
- sh "rvm 1.8.6-p399@cucumber rake cross compile RUBY_CC_VERSION=1.8.6"
9
- sh "rvm 1.9.1-p243@cucumber rake cross compile RUBY_CC_VERSION=1.9.1"
8
+ sh "rvm 1.8.7-p352@cucumber rake cross compile RUBY_CC_VERSION=1.8.7"
9
+ sh "rake cross compile RUBY_CC_VERSION=1.9.2"
10
10
  # This will copy the .so files to the proper place
11
- sh "rake -t cross compile RUBY_CC_VERSION=1.8.6:1.9.1"
11
+ sh "rake -t cross compile RUBY_CC_VERSION=1.8.7:1.9.2"
12
12
  end
13
13
 
14
14
  desc 'Prepare JRuby binares'
15
15
  task :jruby => [:jar] do
16
- sh "rvm jruby exec rspec spec"
16
+ sh "rvm jruby@cucumber exec rspec spec"
17
17
  end
18
18
 
19
19
  desc 'Prepare IronRuby binaries'
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.4.6
4
+ version: 2.4.11
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,23 +11,22 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2011-08-07 00:00:00.000000000 +01:00
15
- default_executable:
14
+ date: 2011-08-17 00:00:00.000000000Z
16
15
  dependencies:
17
16
  - !ruby/object:Gem::Dependency
18
17
  name: rake-compiler
19
- requirement: &2164519400 !ruby/object:Gem::Requirement
18
+ requirement: &2155916100 !ruby/object:Gem::Requirement
20
19
  none: false
21
20
  requirements:
22
21
  - - ! '>='
23
22
  - !ruby/object:Gem::Version
24
- version: 0.7.8
23
+ version: 0.7.9
25
24
  type: :development
26
25
  prerelease: false
27
- version_requirements: *2164519400
26
+ version_requirements: *2155916100
28
27
  - !ruby/object:Gem::Dependency
29
28
  name: json
30
- requirement: &2164518920 !ruby/object:Gem::Requirement
29
+ requirement: &2156100180 !ruby/object:Gem::Requirement
31
30
  none: false
32
31
  requirements:
33
32
  - - ! '>='
@@ -35,10 +34,10 @@ dependencies:
35
34
  version: 1.4.6
36
35
  type: :runtime
37
36
  prerelease: false
38
- version_requirements: *2164518920
37
+ version_requirements: *2156100180
39
38
  - !ruby/object:Gem::Dependency
40
39
  name: cucumber
41
- requirement: &2164518460 !ruby/object:Gem::Requirement
40
+ requirement: &2156099720 !ruby/object:Gem::Requirement
42
41
  none: false
43
42
  requirements:
44
43
  - - ! '>='
@@ -46,10 +45,10 @@ dependencies:
46
45
  version: 1.0.2
47
46
  type: :development
48
47
  prerelease: false
49
- version_requirements: *2164518460
48
+ version_requirements: *2156099720
50
49
  - !ruby/object:Gem::Dependency
51
50
  name: rake
52
- requirement: &2164518000 !ruby/object:Gem::Requirement
51
+ requirement: &2156099260 !ruby/object:Gem::Requirement
53
52
  none: false
54
53
  requirements:
55
54
  - - ! '>='
@@ -57,21 +56,21 @@ dependencies:
57
56
  version: 0.9.2
58
57
  type: :development
59
58
  prerelease: false
60
- version_requirements: *2164518000
59
+ version_requirements: *2156099260
61
60
  - !ruby/object:Gem::Dependency
62
61
  name: bundler
63
- requirement: &2164517540 !ruby/object:Gem::Requirement
62
+ requirement: &2156098800 !ruby/object:Gem::Requirement
64
63
  none: false
65
64
  requirements:
66
65
  - - ! '>='
67
66
  - !ruby/object:Gem::Version
68
- version: 1.0.15
67
+ version: 1.0.18
69
68
  type: :development
70
69
  prerelease: false
71
- version_requirements: *2164517540
70
+ version_requirements: *2156098800
72
71
  - !ruby/object:Gem::Dependency
73
72
  name: rspec
74
- requirement: &2164517080 !ruby/object:Gem::Requirement
73
+ requirement: &2156098340 !ruby/object:Gem::Requirement
75
74
  none: false
76
75
  requirements:
77
76
  - - ! '>='
@@ -79,32 +78,10 @@ dependencies:
79
78
  version: 2.6.0
80
79
  type: :development
81
80
  prerelease: false
82
- version_requirements: *2164517080
83
- - !ruby/object:Gem::Dependency
84
- name: awesome_print
85
- requirement: &2164516620 !ruby/object:Gem::Requirement
86
- none: false
87
- requirements:
88
- - - ! '>='
89
- - !ruby/object:Gem::Version
90
- version: 0.4.0
91
- type: :development
92
- prerelease: false
93
- version_requirements: *2164516620
94
- - !ruby/object:Gem::Dependency
95
- name: therubyracer
96
- requirement: &2164516080 !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - ! '>='
100
- - !ruby/object:Gem::Version
101
- version: 0.9.2
102
- type: :development
103
- prerelease: false
104
- version_requirements: *2164516080
81
+ version_requirements: *2156098340
105
82
  - !ruby/object:Gem::Dependency
106
83
  name: yard
107
- requirement: &2164515620 !ruby/object:Gem::Requirement
84
+ requirement: &2156097840 !ruby/object:Gem::Requirement
108
85
  none: false
109
86
  requirements:
110
87
  - - ! '>='
@@ -112,10 +89,10 @@ dependencies:
112
89
  version: 0.7.2
113
90
  type: :development
114
91
  prerelease: false
115
- version_requirements: *2164515620
92
+ version_requirements: *2156097840
116
93
  - !ruby/object:Gem::Dependency
117
94
  name: rdiscount
118
- requirement: &2164515160 !ruby/object:Gem::Requirement
95
+ requirement: &2156097380 !ruby/object:Gem::Requirement
119
96
  none: false
120
97
  requirements:
121
98
  - - ! '>='
@@ -123,10 +100,10 @@ dependencies:
123
100
  version: 1.6.8
124
101
  type: :development
125
102
  prerelease: false
126
- version_requirements: *2164515160
103
+ version_requirements: *2156097380
127
104
  - !ruby/object:Gem::Dependency
128
105
  name: term-ansicolor
129
- requirement: &2152871800 !ruby/object:Gem::Requirement
106
+ requirement: &2156096920 !ruby/object:Gem::Requirement
130
107
  none: false
131
108
  requirements:
132
109
  - - ! '>='
@@ -134,10 +111,10 @@ dependencies:
134
111
  version: 1.0.6
135
112
  type: :development
136
113
  prerelease: false
137
- version_requirements: *2152871800
114
+ version_requirements: *2156096920
138
115
  - !ruby/object:Gem::Dependency
139
116
  name: builder
140
- requirement: &2152871340 !ruby/object:Gem::Requirement
117
+ requirement: &2156096460 !ruby/object:Gem::Requirement
141
118
  none: false
142
119
  requirements:
143
120
  - - ! '>='
@@ -145,7 +122,7 @@ dependencies:
145
122
  version: 2.1.2
146
123
  type: :development
147
124
  prerelease: false
148
- version_requirements: *2152871340
125
+ version_requirements: *2156096460
149
126
  description: A fast Gherkin lexer/parser for based on the Ragel State Machine Compiler.
150
127
  email: cukes@googlegroups.com
151
128
  executables: []
@@ -201,6 +178,7 @@ files:
201
178
  - .gitignore
202
179
  - .gitmodules
203
180
  - .mailmap
181
+ - .rbenv-gemsets
204
182
  - .rspec
205
183
  - .rvmrc
206
184
  - .yardopts
@@ -474,7 +452,6 @@ files:
474
452
  - ext/gherkin_lexer_vi/extconf.rb
475
453
  - ext/gherkin_lexer_zh_cn/extconf.rb
476
454
  - ext/gherkin_lexer_zh_tw/extconf.rb
477
- has_rdoc: true
478
455
  homepage: http://github.com/cucumber/gherkin
479
456
  licenses: []
480
457
  post_install_message:
@@ -496,10 +473,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
496
473
  version: '0'
497
474
  requirements: []
498
475
  rubyforge_project:
499
- rubygems_version: 1.6.2
476
+ rubygems_version: 1.8.6
500
477
  signing_key:
501
478
  specification_version: 3
502
- summary: gherkin-2.4.6
479
+ summary: gherkin-2.4.11
503
480
  test_files:
504
481
  - features/escaped_pipes.feature
505
482
  - features/feature_parser.feature