UNPKG

33 kBMarkdownView Raw
1# Cucumber.js changelog
2
3## [v0.8.x](https://github.com/cucumber/cucumber-js/compare/v0.8.0...master)
4
5### [master (unreleased)](https://github.com/cucumber/cucumber-js/compare/v0.8.1...master)
6
7### [v0.8.1](https://github.com/cucumber/cucumber-js/compare/v0.8.0...v0.8.1)
8
9#### Documentation, internals and tests
10
11* Update World constructor documentation (Charlie Rudolph)
12* Remove badges from README.md (Charlie Rudolph)
13
14### [v0.8.0](https://github.com/cucumber/cucumber-js/compare/v0.7.0...v0.8.0)
15
16#### Breaking changes
17
18* Add strict function length checking to hooks and step definitions (Charlie Rudolph)
19* Make World constructors strictly synchronous (Julien Biezemans)
20
21#### New features
22
23* Add cli option to fail fast (Charlie Rudolph)
24* Add cli for specifying multiple formatters (Charlie Rudolph)
25* Add support for passing multiple line numbers (Charlie Rudolph)
26* Add ability to disable colors (Charlie Rudolph)
27* Add support for custom snippet syntaxes (Charlie Rudolph)
28
29#### Changed features
30
31* Hide errors in pretty formatter summary (Charlie Rudolph)
32* Remove unnecessary whitespaces in pretty formatter output (Charlie Rudolph)
33
34#### Fixes
35
36* Properly ask configurations for strict mode (Julien Biezemans)
37
38#### Documentation, internals and tests
39
40* Document data table interface (Charlie Rudolph)
41* Refactor: statuses (Charlie Rudolph)
42* Refactor: cleanup step definitions (Charlie Rudolph)
43* Cleanup: remove log to console from listeners (Charlie Rudolph)
44* Use svg badges (Charlie Rudolph)
45* Rename CONTRIBUTE.md to CONTRIBUTING.md (Julien Biezemans)
46* Require maintainers to document API changes in release tag descriptions (Julien Biezemans)
47* Add build-release NPM script (Julien Biezemans)
48
49### [v0.7.0](https://github.com/cucumber/cucumber-js/compare/v0.6.0...v0.7.0)
50
51#### New features
52
53* Time out steps that take too long (Charles Rudolph)
54* Print execution time (Charles Rudolph)
55
56#### Changed features
57
58* Remove callback.fail() (Charles Rudolph)
59* Update hooks interface (Charles Rudolph)
60
61#### Fixes
62
63* Don't try to handle empty features (Julien Biezemans)
64* Fix unpredictable nopt behavior (Charles Rudolph)
65* Fix pretty formatter step indentation after doc string (Charles Rudolph)
66
67#### Documentation, internals and tests
68
69* Rename Collection functions: forEach/syncForEach -> asyncForEach/forEach (Charles Rudolph)
70* Simplify installation instructions (Charles Rudolph)
71* Fix spec on Windows (Marcel Hoyer)
72* Simplify World examples in README (Charles Rudolph)
73* Update license in package.json (Charles Rudolph)
74* Convert test framework from jasmine-node to jasmine (Charles Rudolph)
75* Separate test output (Charles Rudolph)
76* Remove ruby, legacy features, cucumber-tck (Charles Rudolph)
77
78### [v0.6.0](https://github.com/cucumber/cucumber-js/compare/v0.5.3...v0.6.0)
79
80#### New features
81
82* Add --no-source to hide uris (Eddie Loeffen)
83* Add dry run capability (Karthik Viswanath)
84* Introduce --compiler CLI option (Charles Rudolph)
85
86#### Documentation, internals and tests
87
88* Stop IRC and email notifications from Travis (Julien Biezemans)
89* Remove Node.js 0.11 explicit support (Julien Biezemans)
90* Use basic for loop for array iterations (Charles Rudolph)
91* Bump browserify (Charles Rudolph)
92* Add CLI help for --profile (Charles Rudolph)
93* Use colors library (Charles Rudolph)
94* Improve --compiler help (Julien Biezemans)
95* Fix loading of external compiler modules (Julien Biezemans)
96* Document a few common compiler usages (Julien Biezemans)
97
98### [v0.5.3](https://github.com/cucumber/cucumber-js/compare/v0.5.2...v0.5.3)
99
100#### New features
101
102* Add support for profiles (Charles Rudolph)
103
104#### Changed features
105
106* Allow for multiple instances of placeholder (Charles Rudolph)
107* Print relative paths in summary output (Charles Rudolph)
108
109#### Fixes
110
111* Remove duplicate line number from output (Charles Rudolph)
112* Return clone of array from DataTable.Row.raw() (Julien Biezemans)
113
114#### Documentation, internals and tests
115
116* Update various urls (Dale Gardner)
117* Bump CoffeeScript (Julien Biezemans)
118* Bump PogoScript (Julien Biezemans)
119* Bump underscore (Julien Biezemans)
120* Bump underscore.string (Julien Biezemans)
121* Bump stack-chain (Julien Biezemans)
122* Bump nopt (Julien Biezemans)
123* Bump connect (Julien Biezemans)
124* Bump exorcist (Julien Biezemans)
125* Bump uglifyify (Julien Biezemans)
126* Bump through (Julien Biezemans)
127* Bump serve-static (Julien Biezemans)
128* Bump rimraf (Julien Biezemans)
129* Bump mkdirp (Julien Biezemans)
130* Bump jshint (Julien Biezemans)
131* Remove extra bracket in README example (Julien Biezemans)
132* Officially support Node.js 4.x (Julien Biezemans)
133* Use a profile for own build (Julien Biezemans)
134
135### [v0.5.2](https://github.com/cucumber/cucumber-js/compare/v0.5.1...v0.5.2)
136
137#### New features
138
139* Add rowsHash method to data tables (Mark Amery)
140
141#### Documentation, internals and tests
142
143* Remove CLI resource leak timeout (Julien Biezemans)
144* Point to cucumber.io instead of cukes.info (Julien Biezemans)
145* Fix mixed tabs and spaces (Mark Amery)
146* Use hexadecimal values for console colours (Julien Biezemans)
147* Update walkdir module to 0.0.10 (Artem Repko)
148* Fix ruby tests on Windows (zs-zs)
149* Fix npm test to run on Windows (zs-zs)
150* Normalize OS-specific path separators in output assertions (zs-zs)
151* Relax check for promises in step definitions (zs-zs)
152* Add Ast.Feature.getFeatureElements() (Mark Derbecker)
153* Add Util.Collection.sort() (Mark Derbecker)
154* Add waffle.io badge (Julien Biezemans)
155
156### [v0.5.1](https://github.com/cucumber/cucumber-js/compare/v0.5.0...v0.5.1)
157
158#### New features
159
160* Support placeholders in scenario outlines (chrismilleruk)
161* Add failure exception to scenario object (Mateusz Derks)
162
163#### Documentation, internals and tests
164
165* Fix World example in README (Julien Biezemans)
166* Remove moot `version` property from bower.json (Kevin Kirsche)
167* Remove obsolete release instruction for bower (Julien Biezemans)
168* Add Gitter badge (Julien Biezemans)
169* Rephrase spec example (Julien Biezemans)
170* Add documentation for attachments (Simon Dean)
171* Fix name of Cucumber.Api.Scenario in README (Simon Dean)
172
173### [v0.5.0](https://github.com/cucumber/cucumber-js/compare/v0.4.9...v0.5.0)
174
175#### New features
176
177* Support promises from step definitions (Will Farrell)
178* Support synchronous step definitions (Julien Biezemans)
179
180#### Documentation, internals and tests
181
182* Remove irrelevant feature file (Julien Biezemans)
183* Reorganise callback feature (Julien Biezemans)
184* Remove unused dependency (Julien Biezemans)
185* Document new step definition styles (Julien Biezemans)
186* Make step definitions synchronous in example app (Julien Biezemans)
187
188### [v0.4.9](https://github.com/cucumber/cucumber-js/compare/v0.4.8...v0.4.9)
189
190#### New features
191
192* Make pretty formatter the default (Julien Biezemans)
193* Filter stack traces (close #157) (Julien Biezemans)
194
195#### Documentation, internals and tests
196
197* Separate source map from bundle (Julien Biezemans)
198* Hint (Julien Biezemans)
199* Fix misspelling io.js (Sonny Piers)
200* Add 0.12 to supported engines in NPM manifest (Julien Biezemans)
201* Fix test script to be more portable (Sam Saccone)
202* Force Cucumber <2 for now (Julien Biezemans)
203* Bump Cucumber gem to 2.0.0 (Julien Biezemans)
204* Explicitly require json module in Ruby stepdefs (Julien Biezemans)
205* Add CLI help section for --backtrace (Julien Biezemans)
206
207### [v0.4.8](https://github.com/cucumber/cucumber-js/compare/v0.4.7...v0.4.8)
208
209#### New features
210
211* Support IO.js (Sam Saccone)
212* Support Node.js 0.12 (Julien Biezemans)
213
214#### Fixes
215
216* Handle BOM and fix regexp for hyphenated languages (close #144) (Aslak Hellesøy)
217* Fix attachment clean up in hooks (close #282) (nebehr)
218
219#### Documentation, internals and tests
220
221* More thorough specs for GherkinLexer. Fix build? (Aslak Hellesøy)
222* Add jshintrc (Jesse Harlin)
223* Hint lib/ (Julien Biezemans)
224* Hint bundler and bin (Julien Biezemans)
225* Hint spec/ (Julien Biezemans)
226* Be consistent in anonymous function syntax (Julien Biezemans)
227* Use named functions for all constructors (Julien Biezemans)
228* Indent (Julien Biezemans)
229* Add more diagnostics to build (Julien Biezemans)
230* Remove unnecessary spaces in shell commands (Julien Biezemans)
231
232### [v0.4.7](https://github.com/cucumber/cucumber-js/compare/v0.4.6...v0.4.7)
233
234#### Documentation, internals and tests
235
236* Do not dispose of step domains (Julien Biezemans)
237* Refactor and add debug code (Julien Biezemans)
238* Create a single domain per run (Julien Biezemans)
239* Add missing AstTreeWalker specs (Julien Biezemans)
240* Indent (Julien Biezemans)
241* Spec domain enter/exit in AstTreeWalker (Julien Biezemans)
242
243### [v0.4.6](https://github.com/cucumber/cucumber-js/compare/v0.4.5...v0.4.6)
244
245#### New features
246
247* Add --no-snippets flag to CLI (close #207) (Krispin Schulz)
248* Add strict mode (close #211) (Elwyn)
249* Add strict mode to volatile configuration (close #258) (Jan-Eric Duden)
250
251#### Fixes
252
253* Fix code loader on windows (close #226) (Gary Taylor)
254
255#### Documentation, internals and tests
256
257* Connect to Rubygems through SSL (Julien Biezemans)
258* Use Node domain's enter/exit in stepdefs (Julien Biezemans)
259* Do not display snippets in build (Julien Biezemans)
260* Asynchronously dispose of step domains (Julien Biezemans)
261* Change order of tests in build (Julien Biezemans)
262* Fix tests to run on Windows (close #216) (kostya.misura)
263* Fix registerHandler() example in README (Julien Biezemans)
264* Fix typo in variable name (Julien Biezemans)
265* Fix World property assignment in README example (Julian)
266* Unix EOLs (Julien Biezemans)
267* Ignore .ruby-* (Julien Biezemans)
268
269### [v0.4.5](https://github.com/cucumber/cucumber-js/compare/v0.4.4...v0.4.5)
270
271#### Documentation, internals and tests
272
273* Fix issue with npm upgrade on node.js v0.8 (Simon Dean)
274* Use Node domain to handle asynchronous exceptions (Julien Biezemans)
275
276### [v0.4.4](https://github.com/cucumber/cucumber-js/compare/v0.4.3...v0.4.4)
277
278#### Fixes
279
280* Allow >1 parameter in string step definitions (Craig Morris)
281* Don't skip scenario outlines (close #245) (Julien Biezemans)
282
283#### Documentation, internals and tests
284
285* Bump nopt (Julien Biezemans)
286* Bump coffee-script (Julien Biezemans)
287* Bump pogo (Julien Biezemans)
288* Bump underscore (Julien Biezemans)
289* Bump rimraf (Julien Biezemans)
290* Bump jasmine-node (Julien Biezemans)
291* Bump connect (Julien Biezemans)
292* Rewrite bundling system (close #186) (Julien Biezemans)
293* Rename release script (Julien Biezemans)
294* Upgrade NPM on Travis (Julien Biezemans)
295* Drop Node 0.6 support (Julien Biezemans)
296* Drop Node 0.6 support (manifest) (Julien Biezemans)
297
298### [v0.4.3](https://github.com/cucumber/cucumber-js/compare/v0.4.2...v0.4.3)
299
300#### Fixes
301
302* Scenario outline fixes (Simon Dean)
303* Correct the embeddings JSON to match other ports of Cucumber (Simon Dean)
304
305### [v0.4.2](https://github.com/cucumber/cucumber-js/compare/v0.4.1...v0.4.2)
306
307#### New features
308
309* Support attachments (close #189) (Julien Biezemans)
310
311#### Documentation, internals and tests
312
313* Fix world example in main readme (Sam Saccone)
314* Update instructings for running tests (Sam Saccone)
315
316### [v0.4.1](https://github.com/cucumber/cucumber-js/compare/v0.4.0...v0.4.1)
317
318#### New features
319
320* Target scenario by line number on CLI (close #168) (Simon Lampen)
321
322#### Fixes
323
324* Ensure no stdout output is lost (Simon Dean)
325* Properly tag scenario outlines (close #195 #197) (Artur Kania)
326
327#### Documentation, internals and tests
328
329* Align snippet comment with Cucumber-Ruby/JVM (close #150) (Julien Biezemans)
330* Update build badge URL on README (Julien Biezemans)
331* Add line number pattern to --help on CLI (Julien Biezemans)
332* Document AfterFeatures event (close #171) (Eddie Loeffen)
333* Include 'features' in *Features events payload (Stanley Shyiko)
334* Try to fix build on Travis (Julien Biezemans)
335* Remove bower as a dev dependency (close #191) (Simon Dean)
336* Remove obsolete Travis trick for Node 0.8 (Julien Biezemans)
337* Remove development status table from README (Julien Biezemans)
338* Help the guy produce changelogs (Julien Biezemans)
339
340### [v0.4.0](https://github.com/cucumber/cucumber-js/compare/v0.3.3...v0.4.0)
341
342#### New features
343
344* Add support for scenario outlines and examples (close #155) (Ben Van Treese)
345* Add i18n support (close #156) (Lukas Degener)
346
347#### Changed features
348
349* Pass scenario to hooks (Marat Dyatko)
350* Minor change to stepdef snippets (JS) (Julien Biezemans)
351* Make feature id in JSON output replace all spaces (close 127) (Tim Perry)
352* Bump CoffeeScript (close #154) (Gabe Hayes)
353
354#### Documentation, internals and tests
355
356* Add Hook spec example for single-arg function (close #143) (Julien Biezemans)
357* Update README with Hook scenario object doc (Julien Biezemans)
358* Style (Julien Biezemans)
359
360### [v0.3.3](https://github.com/cucumber/cucumber-js/compare/v0.3.2...v0.3.3)
361
362#### New features
363
364* Output step definition snippets in CoffeeScript (John George Wright)
365* Add colors to CLI (Johny Jose)
366
367#### Changed features
368
369* Add durations to JSON formatter (Simon Dean)
370
371#### Documentation, internals and tests
372
373* Bump most dependencies (Julien Biezemans)
374* DRY (Julien Biezemans)
375* Refactor (Julien Biezemans)
376
377### [v0.3.2](https://github.com/cucumber/cucumber-js/compare/v0.3.1...v0.3.2)
378
379#### New features
380
381* Add PogoScript support (Josh Chisholm)
382* Add listener and event handler registration (close #130) (Paul Shannon)
383
384#### Documentation, internals and tests
385
386* Added some nice stats (Aslak Hellesøy)
387* Fix spelling of "GitHub" (Peter Suschlik)
388* Add Code Climate badge to README (Julien Biezemans)
389* Update README.md (Sebastian Schürmann)
390
391### [v0.3.1](https://github.com/cucumber/cucumber-js/compare/v0.3.0...v0.3.1)
392
393#### New features
394
395* Add DataTable.rows() (Niklas Närhinen)
396* Officially support Node 0.10 and 0.11 (Julien Biezemans)
397
398#### Changed features
399
400* Update cucumber-html (Aslak Hellesøy)
401* Bump Gherkin (Julien Biezemans)
402* Add options parameter to JSON formatter (Israël Hallé)
403* Updated CoffeeScript (Matteo Collina)
404* Specify strict coffee-script version number (Julien Biezemans)
405* Bump jasmine-node (Julien Biezemans)
406
407#### Fixes
408
409* Fix travis build Node versions (Julien Biezemans)
410* Fix Travis CI configuration (Julien Biezemans)
411
412#### Documentation, internals and tests
413
414* Remove words in History (Julien Biezemans)
415* Update dev status table in README (Julien Biezemans)
416* Update LICENSE (Julien Biezemans)
417* Add contributors (Julien Biezemans)
418* Move data table scenario to TCK (Julien Biezemans)
419* Be consistent in spec matchers (Julien Biezemans)
420* Remove cucumber.no.de links (Kim, Jang-hwan)
421* Fix broken link in README dev status table (#118) (Michael Zedeler)
422* Refactor hook-related Given steps in JS stepdefs (Julien Biezemans)
423* Refactor failing mapping JS step definitions (Julien Biezemans & Matt Wynne)
424* Update README.md to correct error in example for zombie initialization (Tom V)
425* Update minor typos in README.md (David Godfrey)
426
427
428
429### [v0.3.0](https://github.com/cucumber/cucumber-js/compare/v0.2.22...v0.3.0)
430
431#### New features
432
433* Allow for node-like callback errors (Julien Biezemans)
434* Accept multiple features in volatile configuration (#52) (Julien Biezemans)
435
436#### Fixes
437
438* Add ^ prefix and $ suffix to string-based step definition regexps (#77) (Julien Biezemans)
439* Allow for unsafe regexp characters in stepdef string patterns (#77) (Julien Biezemans)
440
441#### Documentation, internals and tests
442
443* Build on Node.js 0.8 on Travis (Julien Biezemans)
444* Rewrite README's status table in HTML (Julien Biezemans)
445* Bump Gherkin (#78) (Julien Biezemans)
446* Switch to HTML tables in README (Julien Biezemans)
447* Bump Aruba (Julien Biezemans)
448
449
450
451## [v0.2.x](https://github.com/cucumber/cucumber-js/compare/v0.2.0...v0.3.0^)
452
453### [v0.2.22](https://github.com/cucumber/cucumber-js/compare/v0.2.21...v0.2.22)
454
455#### New features
456
457* Print data tables and doc strings in pretty formatter output (#89, #81) (Julien Biezemans)
458
459#### Fixes
460
461* Exclude unmatched features from AST (#80) (Julien Biezemans)
462
463
464
465### [v0.2.21](https://github.com/cucumber/cucumber-js/compare/v0.2.20...v0.2.21)
466
467#### New features
468
469* Add bundler (Julien Biezemans)
470
471
472
473**TBD**
474
475### [v0.2.20](https://github.com/cucumber/cucumber-js/compare/v0.2.19...v0.2.20)
476
477#### New features
478
479* Add JSON formatter (#79) (Chris Young)
480
481#### Fixes
482
483* Fix data table and tags handling in JSON formatter (Julien Biezemans)
484
485#### Documentation, internals and tests
486
487* Force example feature execution order in JSON feature (Julien Biezemans)
488
489
490
491### [v0.2.19](https://github.com/cucumber/cucumber-js/compare/v0.2.18...v0.2.19)
492
493#### Fixes
494
495* Fix CLI arguments passing (#83) (Omar Gonzalez)
496
497#### Documentation, internals and tests
498
499* Refactor "summarizer" listener to summary formatter (#71) 28b74ef (Julien Biezemans)
500* Add "summary" formatter to available CLI formatters (Julien Biezemans)
501* Fix spec example description (Julien Biezemans)
502
503
504
505### [v0.2.18](https://github.com/cucumber/cucumber-js/compare/v0.2.17...v0.2.18)
506
507#### Fixes
508
509* Replace findit with walkdir to fix file loading on Windows (#73) (Aaron Garvey)
510
511#### Documentation, internals and tests
512
513* Rename spec file (Julien Biezemans)
514* Extract developer documentation from README to CONTRIBUTE (Julien Biezemans)
515* Bump browserify (Julien Biezemans)
516* Update supported Node.js versions (Julien Biezemans)
517
518
519
520### [v0.2.17](https://github.com/cucumber/cucumber-js/compare/v0.2.16...v0.2.17)
521
522#### New features
523
524* Add pretty formatter (simplified, monochrome) (#59) (@renier, Julien Biezemans)
525
526#### Documentation, internals and tests
527
528* Display only master branch build status in README (Julien Biezemans)
529* Rename "summary logger" to "summarizer" (#59) (Julien Biezemans)
530* Extract common formatter methods (#59, #63) (Julien Biezemans)
531
532
533
534### [v0.2.16](https://github.com/cucumber/cucumber-js/compare/v0.2.15...v0.2.16)
535
536#### New features
537
538* Display failing scenario URIs in summary (Julien Biezemans)
539
540#### Documentation, internals and tests
541
542* Ran a gem update (Aslak Hellesøy)
543* Update NPM dependencies (#69) (Aslak Hellesøy)
544* Refactor listener infrastructure (#35, #59, #63) (Julien Biezemans)
545* Extract summary logger from progress formatter (#59, #63) (Julien Biezemans)
546* Store URI on AST elements (Julien Biezemans)
547
548
549
550### [v0.2.15](https://github.com/cucumber/cucumber-js/compare/v0.2.14...v0.2.15)
551
552#### New features
553
554* Handle asynchronous exceptions (#51) (Julien Biezemans)
555
556#### Documentation, internals and tests
557
558* Remove commented code (Julien Biezemans)
559
560
561
562### [v0.2.14](https://github.com/cucumber/cucumber-js/compare/v0.2.13...v0.2.14)
563
564#### New features
565
566* Mention CS support in README (Julien Biezemans)
567* Update command-line documentation in README (Julien Biezemans)
568
569#### Fixes
570
571* Add alternate binary script for Windows (#60) (Julien Biezemans)
572
573
574
575### [v0.2.13](https://github.com/cucumber/cucumber-js/compare/v0.2.12...v0.2.13)
576
577#### New features
578
579* Add support for string-based step definition patterns (#48) (Ted de Koning, Julien Biezemans)
580
581#### Documentation, internals and tests
582
583* Pass step instance to step definition invocation (#57) (Julien Biezemans)
584* Refactor step result specs (Julien Biezemans)
585* Store step on step results (#57) (Julien Biezemans)
586* Increase Aruba timeout delay for slow Travis (Julien Biezemans)
587* Decouple pattern from regexp in step definition (#48) (Julien Biezemans)
588
589
590
591### [v0.2.12](https://github.com/cucumber/cucumber-js/compare/v0.2.11...v0.2.12)
592
593#### Changed features
594
595* Allow World constructor to set explicit World object (#50) (Julien Biezemans)
596
597#### Documentation, internals and tests
598
599* Add semicolons (Julien Biezemans)
600* Add documentation about World to README (Julien Biezemans)
601
602
603
604### [v0.2.11](https://github.com/cucumber/cucumber-js/compare/v0.2.10...v0.2.11)
605
606#### Changed features
607
608* Simplify World callbacks (#49) (Julien Biezemans)
609
610#### Fixes
611
612* Fix callback.fail() when called without any reasons (Julien Biezemans)
613
614#### Documentation, internals and tests
615
616* Add toHaveBeenCalledWithInstanceOfConstructorAsNthParameter() spec helper (Julien Biezemans)
617* Simplify default World constructor callback (Julien Biezemans)
618* Adapt World constructors (Julien Biezemans)
619
620
621
622### [v0.2.10](https://github.com/cucumber/cucumber-js/compare/v0.2.9...v0.2.10)
623
624#### Fixes
625
626* Fix path handling on Windows platforms (#47) (Julien Biezemans)
627
628#### Documentation, internals and tests
629
630* Add tagged hooks example to README (Julien Biezemans)
631* Fix browserify setup for example page load (Julien Biezemans)
632* Rename bundle to 'cucumber.js' in web example (Julien Biezemans)
633* Remove obsolete browserify directive (Julien Biezemans)
634* Improve platform detection (Julien Biezemans)
635
636
637
638### [v0.2.9](https://github.com/cucumber/cucumber-js/compare/v0.2.8...v0.2.9)
639
640#### New features
641
642* Add support for tagged hooks (#32) (Julien Biezemans)
643
644#### Changed features
645
646* Allow for whitespaces in tag groups (Julien Biezemans)
647
648#### Documentation, internals and tests
649
650* Add Cucumber.Type.String and String#trim() (Julien Biezemans)
651* Remove unnecessary this. from stepdefs (Julien Biezemans)
652* Simplify tag-related stepdefs (Julien Biezemans)
653* Simplify tag selection syntax in volatile configuration (Julien Biezemans)
654* Mark hooks "done" in README dev status (Julien Biezemans)
655
656
657
658### [v0.2.8](https://github.com/cucumber/cucumber-js/compare/v0.2.7...v0.2.8)
659
660#### New features
661
662* Add around hooks (#32) (Julien Biezemans)
663
664#### Changed features
665
666* Treat undefined and skipped step as any other step (Julien Biezemans)
667
668#### Documentation, internals and tests
669
670* Remove unused parameter in parser spec (Julien Biezemans)
671* Add JS stepdef for async failing steps scenario (Julien Biezemans)
672* Assign zombie in README example (#44) (Julien Biezemans)
673* Remove trailing spaces (Julien Biezemans)
674* Get rid of obsolete PendingStepException (Julien Biezemans)
675* Refactor SupportCode.Library spec (Julien Biezemans)
676* Add around hooks documentation (#32) (Julien Biezemans)
677
678
679
680### [v0.2.7](https://github.com/cucumber/cucumber-js/compare/v0.2.6...v0.2.7)
681
682#### New features
683
684* Allow for asynchronous pending steps (Julien Biezemans)
685* Allow for asynchronous step failures (Julien Biezemans)
686
687#### Fixes
688
689* Fix matching groups in step definition snippets (#42) (Julien Biezemans)
690* Remove obsolete dependency from snippet builder spec (Julien Biezemans)
691
692#### Documentation, internals and tests
693
694* Add steps to release process in README (Julien Biezemans)
695* Update development status table in README (Julien Biezemans)
696* Import implementation-specific scenarios from cucumber-tck/undefined_steps (Julien Biezemans)
697* Switch from throwing exceptions to callback.fail() in web example (Julien Biezemans)
698* Add callback.fail() example to README (Julien Biezemans)
699
700### [v0.2.6](https://github.com/cucumber/cucumber-js/compare/v0.2.5...v0.2.6)
701
702#### New features
703
704* Add tags support (#7) (Julien Biezemans)
705* Add support for tags on features (#7) (Julien Biezemans)
706
707#### Changed features
708
709* Handle missing instance in World constructor callback (#40) (Julien Biezemans)
710
711#### Documentation, internals and tests
712
713* Update development status in README (Julien Biezemans)
714* Typo in README (Julien Biezemans)
715* Refactor parser and add AST assembler (required by #7) (Julien Biezemans)
716* Indent properly (Julien Biezemans)
717* Refactor AST assembler to be stateful (needed by #7) (Julien Biezemans)
718* Update master diff in History (Julien Biezemans)
719* Add --tags documentation to --help (CLI) (Julien Biezemans)
720
721
722
723### [v0.2.5](https://github.com/cucumber/cucumber-js/compare/v0.2.4...v0.2.5)
724
725#### New features
726
727* Add Before/After hooks (#32, #31) (Tristan Dunn)
728
729#### Changed features
730
731* Interpret "*" step keyword as a repeat keyword (Julien Biezemans)
732
733#### Documentation, internals and tests
734
735* Add NPM publishing to README release checklist (Julien Biezemans)
736* Add "Help & Support" to README (Julien Biezemans)
737* Words in README (Julien Biezemans)
738* Document before and after hooks (Julien Biezemans)
739
740
741
742### [v0.2.4](https://github.com/cucumber/cucumber-js/compare/v0.2.3...v0.2.4)
743
744#### New features
745
746* Add --version to CLI (Julien Biezemans)
747* Add --help to CLI (Julien Biezemans)
748
749#### Changed features
750
751* Add styles for reported errors on web example (Julien Biezemans)
752* Make and expect World constructors to be asynchronous (#39) (Julien Biezemans)
753
754#### Documentation, internals and tests
755
756* Update README (Julien Biezemans)
757* Add development status to README (Julien Biezemans)
758* Add link to demo at cucumber.no.de (Julien Biezemans)
759* Add link to example app to README (Julien Biezemans)
760* Add usage documentation to README (#23) (Olivier Melcher)
761* Add examples to run features with the CLI (Olivier Melcher)
762* Fix header levels and whitespaces in README (Julien Biezemans)
763* Add Opera to supported browsers in README (Julien Biezemans)
764* Fix World constructor in README (Julien Biezemans)
765* Simplify World#visit in README (Julien Biezemans)
766* Rewrite step definition and wrapper documentation (Julien Biezemans)
767* Remove useless words (Julien Biezemans)
768* Use more consistent Markdown in README (Julien Biezemans)
769* Fix Gherkin comment in README (Julien Biezemans)
770* Add credits (Julien Biezemans)
771* Add Aruba setup details to README (Julien Biezemans)
772* Fix World constructor on web example according to the recent API changes (Julien Biezemans)
773* Tell Travis CI to post build results to #cucumber (Julien Biezemans)
774* Add release checklist to README (Julien Biezemans)
775
776
777
778### [v0.2.3](https://github.com/cucumber/cucumber-js/compare/v0.2.2...v0.2.3)
779
780#### New features
781
782* Add support for Node 0.6 (Julien Biezemans)
783
784#### Fixes
785
786* Prevent the same step definition snippet from being suggested twice (Julien Biezemans)
787
788#### Documentation, internals and tests
789
790* Don't make NPM ignore `example/` anymore (Julien Biezemans)
791* Bump cucumber-features (Julien Biezemans)
792* Use non-deprecated "url" key instead of "web" in NPM manifest (Julien Biezemans)
793* Add JS step definitions related to data table scenarios (Julien Biezemans)
794* Move from cucumber-features to cucumber-tck (Julien Biezemans)
795* Bump Gherkin (Julien Biezemans)
796* Bump jasmine-node (Julien Biezemans)
797* Bump connect (Julien Biezemans)
798* Fix Travis build (Julien Biezemans)
799* Bump browserify (Julien Biezemans)
800* Bump nopt (Julien Biezemans)
801* Bump underscore (Julien Biezemans)
802* Bump underscore.string (Julien Biezemans)
803* Bump rimraf (Julien Biezemans)
804* Bump mkdirp (Julien Biezemans)
805* Bump Aruba (Julien Biezemans)
806
807
808
809### [v0.2.2](https://github.com/cucumber/cucumber-js/compare/v0.2.1...v0.2.2)
810
811#### New features
812
813* Suggest step definition snippets for undefined steps (#33 Julien Biezemans)
814
815#### Documentation, internals and tests
816
817* Add contributors to NPM package manifest (Julien Biezemans)
818* Clean up JS step definitions (Julien Biezemans)
819* Bump cucumber-features and reflect step changes (Julien Biezemans)
820* Set up [continuous integration on Travis CI](http://travis-ci.org/#!/cucumber/cucumber-js) (Julien Biezemans)
821* Add Travis's build status icon to README (Julien Biezemans)
822
823
824
825### [v0.2.1](https://github.com/cucumber/cucumber-js/compare/v0.2.0...v0.2.1)
826
827#### New features
828
829* Allow custom World constructors (Julien Biezemans)
830* Add support for data tables (with conversion to hashes) (#12) (Julien Biezemans)
831
832#### Changed features
833
834* Demonstrate World object usages in web example (Julien Biezemans)
835
836
837
838### [v0.2.0](https://github.com/cucumber/cucumber-js/compare/v0.1.5...v0.2.0)
839
840#### New features
841
842* Setup application to run on [Travis CI](http://travis-ci.org/#!/jbpros/cucumber-js) (Julien Biezemans)
843* Add CoffeeScript support for step definition files (Paul Jensen)
844* Add "World" (#26 Julien Biezemans)
845
846#### Changed features
847
848* Add link to the Github repository on web example (Julien Biezemans)
849* Allow specifying the port the web example server should listen on (Julien Biezemans)
850* Update web example to use cucumber-html formatter (Julien Biezemans)
851
852#### Fixes
853
854* Fix load paths in spec helper (Julien Biezemans)
855* Prevent 'crypto' module from being included by browserify in web example (Julien Biezemans)
856* Fix HTML indentation (Julien Biezemans)
857* Prevent CLI support code loader from calling module main exports which are not functions (Julien Biezemans)
858* Remove use of username for submodule (Kushal Pisavadia)
859
860#### Documentation, internals and tests
861
862* Bump jasmine-node
863* Update README (Julien Biezemans)
864* Bump Gherkin twice (Julien Biezemans)
865* Bump cucumber-features twice (Julien Biezemans)
866* Add missing getters on several AST feature elements (mostly getLine()) (Julien Biezemans)
867* Ignore example/ on NPM (Julien Biezemans)
868* Add Procfile (used by Heroku when deploying to cucumber.heroku.com) (Julien Biezemans)
869* Bump Aruba (Julien Biezemans)
870* Add guard-jasmine-node (Julien Biezemans)
871* Improve Guardfile regular expressions (Julien Biezemans)
872* Bump cucumber-html and remove DOM templates from web example HTML file (Julien Biezemans)
873* Fix PathExpander internal name (Julien Biezemans)
874* Remove unneeded requires from FeaturePathExpander (Julien Biezemans)
875* Bump browserify (Julien Biezemans)
876* Remove "glob" from dependencies (Julien Biezemans)
877* Refactor SupportCodePathExpander spec (Julien Biezemans)
878* Add feature for CoffeeScript support (#29) (Julien Biezemans)
879
880
881
882## [v0.1.x](https://github.com/cucumber/cucumber-js/compare/v0.1.0...v0.2.0^)
883
884### [v0.1.5](https://github.com/cucumber/cucumber-js/compare/v0.1.4...v0.1.5)
885
886#### New features
887
888* Add support for background (#9 Julien Biezemans)
889
890#### Documentation, internals and tests
891
892* Bump cucumber-features (twice) (Julien Biezemans)
893* Bump gherkin and reflect changes in its API (add DocString content type) (Julien Biezemans)
894
895
896
897### [v0.1.4](https://github.com/cucumber/cucumber-js/compare/v0.1.3...v0.1.4)
898
899#### Changed features
900
901* Stop polluting the global namespace with Given(), When() and Then() (#2 Julien Biezemans)
902* Step definitions can be created with the support code helper passed as 'this':
903 this.Given(), this.When(), this.Then() and this.defineStep() (#2 Julien Biezemans)
904
905#### Documentation, internals and tests
906
907* Fix typo "occured" -> "occurred" (Fernando Acorreia)
908* Improve variable names in CLI support code loader (Julien Biezemans)
909
910
911
912### [v0.1.3](https://github.com/cucumber/cucumber-js/compare/v0.1.2...v0.1.3)
913
914#### New features
915
916* Allow several features to run at once (#14) (Julien Biezemans)
917* Add support for --require (Julien Biezemans)
918
919#### Documentation, internals and tests
920
921* Improve features and support code API (Julien Biezemans)
922* Add "Cli" and "Volatile" configurations (Julien Biezemans)
923* Internal refactoring and cleanup (Julien Biezemans)
924* Cucumber.js can now fully test itself (Julien Biezemans)
925* Remove run_all_features script in favor of bin/cucumber.js (Julien Biezemans)
926
927
928
929### [v0.1.2](https://github.com/cucumber/cucumber-js/compare/v0.1.1...v0.1.2)
930
931#### New features
932
933* Add failure reporting to the progress formatter (#20) (Julien Biezemans)
934
935
936
937### [v0.1.1](https://github.com/cucumber/cucumber-js/compare/v0.1.0...v0.1.1)
938
939#### New features
940
941* Publish Cucumber.js to NPM as [`cucumber`](http://search.npmjs.org/#/cucumber) (Julien Biezemans)
942
943#### Changed features
944
945* Throw a clearer exception on missing feature argument (CLI) (Julien Biezemans)
946
947#### Documentation, internals and tests
948
949* Unify and clean up js-specific features and step definitions (#21) (Julien Biezemans)
950
951
952
953### [v0.1.0](https://github.com/cucumber/cucumber-js/compare/v0.0.1...v0.1.0)
954
955#### New features
956
957* Add cucumber.js executable (Julien Biezemans)
958* Handle step failures (#6) (Julien Biezemans)
959* Add the progress formatter (#16) (Julien Biezemans)
960* Add support for pending steps (#18) (Julien Biezemans)
961* Add support for undefined steps (#19) (Julien Biezemans)
962
963#### Changed features
964
965* Update web example to use the new progress formatter (Julien Biezemans)
966
967#### Fixes
968
969* Fix asynchronous step definition callbacks (#1) (Julien Biezemans)
970* Fix stepResult.isSuccessful call in ProgressFormatter (Julien Biezemans)
971* Load Gherkin properly in browsers (Julien Biezemans)
972* Remove calls to console.log in web example (Julien Biezemans)
973
974#### Documentation, internals and tests
975
976* Pass against core.feature in its new form, both with the Cucumber-ruby/Aruba pair and cucumber-js itself (Julien Biezemans)
977* Refactor cucumber-features JS mappings (Julien Biezemans)
978* Refactor js-specific features (Julien Biezemans)
979* Rename PyString to DocString (#15) (Julien Biezemans)
980* Update Gherkin to 2.4.0 (Julien Biezemans)
981* Modularize the project and use browserify.js to serve a single JS file to browsers. (#3 Julien Biezemans)
982* Rename Cucumber.Types to Cucumber.Type (Julien Biezemans)
983* Use progress formatter in cucumber-features (#17) (Julien Biezemans)
984
985
986
987## [v0.0.x](https://github.com/cucumber/cucumber-js/compare/v0.0.1...v0.1.0^)
988
989### [v0.0.1](https://github.com/cucumber/cucumber-js/tree/v0.0.1)
990
991* Emerge Cucumber.js with bare support for features, scenarios and steps. It does not handle several Gherkin elements nor failures yet. (Julien Biezemans)