gherkin 2.6.2 → 2.6.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +4 -3
- data/History.md +9 -0
- data/README.md +22 -13
- data/gherkin.gemspec +4 -4
- data/lib/gherkin/js_lexer.rb +1 -1
- data/ragel/lexer.js.rl.erb +10 -2
- data/tasks/gems.rake +2 -2
- data/tasks/ragel_task.rb +4 -0
- data/tasks/release.rake +1 -1
- metadata +28 -30
- data/.gitmodules +0 -3
- data/Gemfile.lock +0 -53
data/.travis.yml
CHANGED
data/History.md
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
## [2.6.3](https://github.com/cucumber/gherkin/compare/v2.6.2...v2.6.3) (In Git)
|
2
|
+
|
3
|
+
### Changed Features
|
4
|
+
|
5
|
+
* Windows gems are compiled against 1.9.3 instead of 1.9.2. Should still work on 1.9.3. (Aslak Hellesøy)
|
6
|
+
* NPM package contains UglifyJS-minified scripts (Aslak Hellesøy)
|
7
|
+
* NPM package no longer contains Ace ([#109](https://github.com/cucumber/gherkin/issues/109) Aslak Hellesøy)
|
8
|
+
* JavaScript exports for require.js works in non-AMD mode (needed for Ace) (Aslak Hellesøy)
|
9
|
+
|
1
10
|
## [2.6.2](https://github.com/cucumber/gherkin/compare/v2.6.1...v2.6.2)
|
2
11
|
|
3
12
|
### Changed Features
|
data/README.md
CHANGED
@@ -3,11 +3,11 @@
|
|
3
3
|
A fast lexer and parser for the Gherkin language based on Ragel. Gherkin is two things:
|
4
4
|
|
5
5
|
* The language that has evolved out of the Cucumber project.
|
6
|
-
* This library
|
6
|
+
* This library.
|
7
7
|
|
8
8
|
Supported platforms:
|
9
9
|
|
10
|
-
* Ruby 1.8.6-1.9.
|
10
|
+
* Ruby 1.8.6-1.9.3 (MRI, JRuby, REE, Rubinius)
|
11
11
|
* Pure Java (jar file)
|
12
12
|
* JavaScript (NPM package. Tested with V8/node.js/Chrome, but might work on other JavaScript engines)
|
13
13
|
* .NET (dll file)
|
@@ -54,7 +54,7 @@ The jar file is in the central Maven repo.
|
|
54
54
|
<dependency>
|
55
55
|
<groupId>info.cukes</groupId>
|
56
56
|
<artifactId>gherkin</artifactId>
|
57
|
-
<version>2.6.
|
57
|
+
<version>2.6.3</version>
|
58
58
|
</dependency>
|
59
59
|
|
60
60
|
You can get it manually from [Maven Central](http://search.maven.org/#browse%7C-2073395818)
|
@@ -124,18 +124,22 @@ Now you can build the jar with:
|
|
124
124
|
|
125
125
|
### JavaScript
|
126
126
|
|
127
|
-
In order to build and test Gherkin for
|
127
|
+
In order to build and test Gherkin for JavaScript you must install:
|
128
128
|
|
129
129
|
* Node.js (0.4.6 or higher)
|
130
130
|
* NPM (0.3.18 or higher)
|
131
|
-
* Ragel with
|
131
|
+
* Ragel with JavaScript support: http://github.com/dominicmarks/ragel-js
|
132
132
|
* Define the GHERKIN_JS environment variable in your shell (any value will do)
|
133
133
|
|
134
|
-
|
134
|
+
Prepare the environment:
|
135
|
+
|
136
|
+
pushd js
|
137
|
+
npm link
|
138
|
+
popd
|
139
|
+
|
140
|
+
Now you can build the JavaScript with:
|
135
141
|
|
136
142
|
rake js
|
137
|
-
cd js
|
138
|
-
npm install
|
139
143
|
|
140
144
|
And you can try it out with node.js:
|
141
145
|
|
@@ -190,19 +194,24 @@ Make sure you have openssl installed first.
|
|
190
194
|
bundle install
|
191
195
|
rake-compiler cross-ruby VERSION=1.8.7-p352
|
192
196
|
|
193
|
-
# 1.9.
|
194
|
-
rvm install 1.9.
|
195
|
-
rvm use 1.9.
|
197
|
+
# 1.9.3
|
198
|
+
rvm install 1.9.3-p0
|
199
|
+
rvm use 1.9.3-p0
|
196
200
|
rvm gemset create cucumber
|
197
201
|
rvm gemset use cucumber
|
198
202
|
gem install bundler
|
199
203
|
unset GHERKIN_JS
|
200
204
|
bundle install
|
201
|
-
rake-compiler cross-ruby VERSION=1.9.
|
205
|
+
rake-compiler cross-ruby VERSION=1.9.3-p0
|
206
|
+
|
207
|
+
Now you can build Windows gems:
|
208
|
+
|
209
|
+
rake compile
|
210
|
+
rake gems:win
|
202
211
|
|
203
212
|
## Release process
|
204
213
|
|
205
|
-
* Make sure GHERKIN_JS is defined (see
|
214
|
+
* Make sure GHERKIN_JS is defined (see JavaScript section above)
|
206
215
|
* Bump version in:
|
207
216
|
* This file (Installation/Java section)
|
208
217
|
* gherkin.gemspec
|
data/gherkin.gemspec
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = "gherkin"
|
5
5
|
# If bumping the major version here, comment out the cucumber dependency below and uncomment in the Gemfile to build against a local cucumber.
|
6
|
-
s.version = "2.6.
|
6
|
+
s.version = "2.6.3"
|
7
7
|
s.authors = ["Mike Sassak", "Gregory Hnatiuk", "Aslak Hellesøy"]
|
8
8
|
s.description = "A fast Gherkin lexer/parser based on the Ragel State Machine Compiler."
|
9
9
|
s.summary = "#{s.name}-#{s.version}"
|
@@ -46,15 +46,15 @@ Gem::Specification.new do |s|
|
|
46
46
|
|
47
47
|
s.add_runtime_dependency('json', '>= 1.4.6')
|
48
48
|
|
49
|
-
s.add_development_dependency('cucumber', '>= 1.1.
|
49
|
+
s.add_development_dependency('cucumber', '>= 1.1.2')
|
50
50
|
s.add_development_dependency('rake', '>= 0.9.2')
|
51
51
|
s.add_development_dependency('bundler', '>= 1.0.21')
|
52
52
|
s.add_development_dependency('rspec', '>= 2.7.0')
|
53
53
|
|
54
54
|
unless ENV['RUBY_CC_VERSION'] || defined?(JRUBY_VERSION)
|
55
|
-
s.add_development_dependency('therubyracer', '>= 0.9.
|
55
|
+
s.add_development_dependency('therubyracer', '>= 0.9.9') if ENV['GHERKIN_JS']
|
56
56
|
# For Documentation:
|
57
|
-
s.add_development_dependency('yard', '>= 0.7.
|
57
|
+
s.add_development_dependency('yard', '>= 0.7.3')
|
58
58
|
s.add_development_dependency('rdiscount', '>= 1.6.8')
|
59
59
|
end
|
60
60
|
|
data/lib/gherkin/js_lexer.rb
CHANGED
@@ -13,7 +13,7 @@ module Gherkin
|
|
13
13
|
p a
|
14
14
|
end
|
15
15
|
|
16
|
-
cxt.load(File.dirname(__FILE__) + "/../../js/lib/gherkin/lexer/#{i18n_underscored_iso_code}.js")
|
16
|
+
cxt.load(File.dirname(__FILE__) + "/../../js/lib/gherkin/lexer/#{i18n_underscored_iso_code}.min.js")
|
17
17
|
cxt['exports']['Lexer']
|
18
18
|
end
|
19
19
|
end
|
data/ragel/lexer.js.rl.erb
CHANGED
@@ -212,8 +212,16 @@ if(typeof exports !== 'undefined') {
|
|
212
212
|
exports.Lexer = Lexer;
|
213
213
|
}
|
214
214
|
// Require.js export
|
215
|
-
if (typeof define !== 'undefined'
|
216
|
-
define
|
215
|
+
if (typeof define !== 'undefined') {
|
216
|
+
if(define.amd) {
|
217
|
+
define('gherkin/lexer/<%= @i18n.underscored_iso_code %>', [], function() {
|
218
|
+
return Lexer
|
219
|
+
});
|
220
|
+
} else {
|
221
|
+
define('gherkin/lexer/<%= @i18n.underscored_iso_code %>', function(require, exports, module) {
|
222
|
+
exports.Lexer = Lexer;
|
223
|
+
});
|
224
|
+
}
|
217
225
|
}
|
218
226
|
|
219
227
|
})();
|
data/tasks/gems.rake
CHANGED
@@ -6,9 +6,9 @@ namespace :gems do
|
|
6
6
|
end
|
7
7
|
# rvm and mingw ruby versions have to match to avoid errors
|
8
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.
|
9
|
+
sh "rake cross compile RUBY_CC_VERSION=1.9.3"
|
10
10
|
# This will copy the .so files to the proper place
|
11
|
-
sh "rake -t cross compile RUBY_CC_VERSION=1.8.7:1.9.
|
11
|
+
sh "rake -t cross compile RUBY_CC_VERSION=1.8.7:1.9.3"
|
12
12
|
end
|
13
13
|
|
14
14
|
desc 'Prepare JRuby binares'
|
data/tasks/ragel_task.rb
CHANGED
@@ -10,6 +10,7 @@ class RagelTask
|
|
10
10
|
end
|
11
11
|
|
12
12
|
RL_OUTPUT_DIR = File.dirname(__FILE__) + "/../ragel/i18n"
|
13
|
+
UGLIFYJS = File.dirname(__FILE__) + "/../js/node_modules/uglify-js/bin/uglifyjs"
|
13
14
|
|
14
15
|
def initialize(lang, i18n)
|
15
16
|
@lang = lang
|
@@ -24,6 +25,9 @@ class RagelTask
|
|
24
25
|
if(@lang == 'js')
|
25
26
|
# Ragel chokes if we put the escaped triple quotes in .rl, so we'll do the replace with sed after the fact. Lots of backslashes!!
|
26
27
|
sh %{sed -i '' 's/ESCAPED_TRIPLE_QUOTE/\\\\\\\\\\\\"\\\\\\\\\\\\"\\\\\\\\\\\\"/' #{target}}
|
28
|
+
|
29
|
+
# Minify
|
30
|
+
sh %{node #{UGLIFYJS} #{target} > #{target.gsub(/\.js$/, '.min.js')}}
|
27
31
|
end
|
28
32
|
end
|
29
33
|
|
data/tasks/release.rake
CHANGED
@@ -2,7 +2,7 @@ namespace :release do
|
|
2
2
|
desc 'Upload all packages and tag git'
|
3
3
|
task :ALL => ['gems:sanity', :ikvm, :mvn_deploy_jar, :mvn_deploy_site, :push_native_gems, :push_npm_package, :release, :push_yard, :symlink_docs, :post_release]
|
4
4
|
|
5
|
-
desc 'Push all gems to rubygems.org
|
5
|
+
desc 'Push all gems to rubygems.org'
|
6
6
|
task :push_native_gems do
|
7
7
|
Dir.chdir('release') do
|
8
8
|
Dir['*.gem'].each do |gem_file|
|
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.6.
|
4
|
+
version: 2.6.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,11 +11,11 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2011-
|
14
|
+
date: 2011-11-11 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: rake-compiler
|
18
|
-
requirement: &
|
18
|
+
requirement: &2152310860 !ruby/object:Gem::Requirement
|
19
19
|
none: false
|
20
20
|
requirements:
|
21
21
|
- - ! '>='
|
@@ -23,10 +23,10 @@ dependencies:
|
|
23
23
|
version: 0.7.9
|
24
24
|
type: :development
|
25
25
|
prerelease: false
|
26
|
-
version_requirements: *
|
26
|
+
version_requirements: *2152310860
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: json
|
29
|
-
requirement: &
|
29
|
+
requirement: &2152325880 !ruby/object:Gem::Requirement
|
30
30
|
none: false
|
31
31
|
requirements:
|
32
32
|
- - ! '>='
|
@@ -34,21 +34,21 @@ dependencies:
|
|
34
34
|
version: 1.4.6
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
|
-
version_requirements: *
|
37
|
+
version_requirements: *2152325880
|
38
38
|
- !ruby/object:Gem::Dependency
|
39
39
|
name: cucumber
|
40
|
-
requirement: &
|
40
|
+
requirement: &2152324400 !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
43
|
- - ! '>='
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version: 1.1.
|
45
|
+
version: 1.1.2
|
46
46
|
type: :development
|
47
47
|
prerelease: false
|
48
|
-
version_requirements: *
|
48
|
+
version_requirements: *2152324400
|
49
49
|
- !ruby/object:Gem::Dependency
|
50
50
|
name: rake
|
51
|
-
requirement: &
|
51
|
+
requirement: &2152322160 !ruby/object:Gem::Requirement
|
52
52
|
none: false
|
53
53
|
requirements:
|
54
54
|
- - ! '>='
|
@@ -56,10 +56,10 @@ dependencies:
|
|
56
56
|
version: 0.9.2
|
57
57
|
type: :development
|
58
58
|
prerelease: false
|
59
|
-
version_requirements: *
|
59
|
+
version_requirements: *2152322160
|
60
60
|
- !ruby/object:Gem::Dependency
|
61
61
|
name: bundler
|
62
|
-
requirement: &
|
62
|
+
requirement: &2152336320 !ruby/object:Gem::Requirement
|
63
63
|
none: false
|
64
64
|
requirements:
|
65
65
|
- - ! '>='
|
@@ -67,10 +67,10 @@ dependencies:
|
|
67
67
|
version: 1.0.21
|
68
68
|
type: :development
|
69
69
|
prerelease: false
|
70
|
-
version_requirements: *
|
70
|
+
version_requirements: *2152336320
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
72
|
name: rspec
|
73
|
-
requirement: &
|
73
|
+
requirement: &2152335080 !ruby/object:Gem::Requirement
|
74
74
|
none: false
|
75
75
|
requirements:
|
76
76
|
- - ! '>='
|
@@ -78,32 +78,32 @@ dependencies:
|
|
78
78
|
version: 2.7.0
|
79
79
|
type: :development
|
80
80
|
prerelease: false
|
81
|
-
version_requirements: *
|
81
|
+
version_requirements: *2152335080
|
82
82
|
- !ruby/object:Gem::Dependency
|
83
83
|
name: therubyracer
|
84
|
-
requirement: &
|
84
|
+
requirement: &2152333120 !ruby/object:Gem::Requirement
|
85
85
|
none: false
|
86
86
|
requirements:
|
87
87
|
- - ! '>='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.9.
|
89
|
+
version: 0.9.9
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
|
-
version_requirements: *
|
92
|
+
version_requirements: *2152333120
|
93
93
|
- !ruby/object:Gem::Dependency
|
94
94
|
name: yard
|
95
|
-
requirement: &
|
95
|
+
requirement: &2152332300 !ruby/object:Gem::Requirement
|
96
96
|
none: false
|
97
97
|
requirements:
|
98
98
|
- - ! '>='
|
99
99
|
- !ruby/object:Gem::Version
|
100
|
-
version: 0.7.
|
100
|
+
version: 0.7.3
|
101
101
|
type: :development
|
102
102
|
prerelease: false
|
103
|
-
version_requirements: *
|
103
|
+
version_requirements: *2152332300
|
104
104
|
- !ruby/object:Gem::Dependency
|
105
105
|
name: rdiscount
|
106
|
-
requirement: &
|
106
|
+
requirement: &2152330840 !ruby/object:Gem::Requirement
|
107
107
|
none: false
|
108
108
|
requirements:
|
109
109
|
- - ! '>='
|
@@ -111,10 +111,10 @@ dependencies:
|
|
111
111
|
version: 1.6.8
|
112
112
|
type: :development
|
113
113
|
prerelease: false
|
114
|
-
version_requirements: *
|
114
|
+
version_requirements: *2152330840
|
115
115
|
- !ruby/object:Gem::Dependency
|
116
116
|
name: term-ansicolor
|
117
|
-
requirement: &
|
117
|
+
requirement: &2152329900 !ruby/object:Gem::Requirement
|
118
118
|
none: false
|
119
119
|
requirements:
|
120
120
|
- - ! '>='
|
@@ -122,10 +122,10 @@ dependencies:
|
|
122
122
|
version: 1.0.6
|
123
123
|
type: :development
|
124
124
|
prerelease: false
|
125
|
-
version_requirements: *
|
125
|
+
version_requirements: *2152329900
|
126
126
|
- !ruby/object:Gem::Dependency
|
127
127
|
name: builder
|
128
|
-
requirement: &
|
128
|
+
requirement: &2152329080 !ruby/object:Gem::Requirement
|
129
129
|
none: false
|
130
130
|
requirements:
|
131
131
|
- - ! '>='
|
@@ -133,7 +133,7 @@ dependencies:
|
|
133
133
|
version: 2.1.2
|
134
134
|
type: :development
|
135
135
|
prerelease: false
|
136
|
-
version_requirements: *
|
136
|
+
version_requirements: *2152329080
|
137
137
|
description: A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.
|
138
138
|
email: cukes@googlegroups.com
|
139
139
|
executables: []
|
@@ -186,7 +186,6 @@ extensions:
|
|
186
186
|
extra_rdoc_files: []
|
187
187
|
files:
|
188
188
|
- .gitattributes
|
189
|
-
- .gitmodules
|
190
189
|
- .mailmap
|
191
190
|
- .rbenv-gemsets
|
192
191
|
- .rspec
|
@@ -194,7 +193,6 @@ files:
|
|
194
193
|
- .travis.yml
|
195
194
|
- .yardopts
|
196
195
|
- Gemfile
|
197
|
-
- Gemfile.lock
|
198
196
|
- History.md
|
199
197
|
- LICENSE
|
200
198
|
- README.md
|
@@ -479,7 +477,7 @@ rubyforge_project:
|
|
479
477
|
rubygems_version: 1.8.10
|
480
478
|
signing_key:
|
481
479
|
specification_version: 3
|
482
|
-
summary: gherkin-2.6.
|
480
|
+
summary: gherkin-2.6.3
|
483
481
|
test_files:
|
484
482
|
- features/escaped_pipes.feature
|
485
483
|
- features/feature_parser.feature
|
data/.gitmodules
DELETED
data/Gemfile.lock
DELETED
@@ -1,53 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
gherkin (2.6.2)
|
5
|
-
json (>= 1.4.6)
|
6
|
-
|
7
|
-
GEM
|
8
|
-
remote: http://rubygems.org/
|
9
|
-
specs:
|
10
|
-
builder (3.0.0)
|
11
|
-
cucumber (1.1.1)
|
12
|
-
builder (>= 2.1.2)
|
13
|
-
diff-lcs (>= 1.1.2)
|
14
|
-
gherkin (~> 2.6.0)
|
15
|
-
json (>= 1.4.6)
|
16
|
-
term-ansicolor (>= 1.0.6)
|
17
|
-
diff-lcs (1.1.3)
|
18
|
-
json (1.6.1)
|
19
|
-
json (1.6.1-java)
|
20
|
-
libv8 (3.3.10.2)
|
21
|
-
rake (0.9.2.2)
|
22
|
-
rake-compiler (0.7.9)
|
23
|
-
rake
|
24
|
-
rdiscount (1.6.8)
|
25
|
-
rspec (2.7.0)
|
26
|
-
rspec-core (~> 2.7.0)
|
27
|
-
rspec-expectations (~> 2.7.0)
|
28
|
-
rspec-mocks (~> 2.7.0)
|
29
|
-
rspec-core (2.7.1)
|
30
|
-
rspec-expectations (2.7.0)
|
31
|
-
diff-lcs (~> 1.1.2)
|
32
|
-
rspec-mocks (2.7.0)
|
33
|
-
term-ansicolor (1.0.7)
|
34
|
-
therubyracer (0.9.8)
|
35
|
-
libv8 (~> 3.3.10)
|
36
|
-
yard (0.7.3)
|
37
|
-
|
38
|
-
PLATFORMS
|
39
|
-
java
|
40
|
-
ruby
|
41
|
-
|
42
|
-
DEPENDENCIES
|
43
|
-
builder (>= 2.1.2)
|
44
|
-
bundler (>= 1.0.21)
|
45
|
-
cucumber (>= 1.1.1)
|
46
|
-
gherkin!
|
47
|
-
rake (>= 0.9.2)
|
48
|
-
rake-compiler (>= 0.7.9)
|
49
|
-
rdiscount (>= 1.6.8)
|
50
|
-
rspec (>= 2.7.0)
|
51
|
-
term-ansicolor (>= 1.0.6)
|
52
|
-
therubyracer (>= 0.9.8)
|
53
|
-
yard (>= 0.7.2)
|