修复登陆日志入库错误,升级部分composer依赖项;
临时修复登陆通知邮件不能多发的问题;
This commit is contained in:
@@ -1,47 +0,0 @@
|
||||
name: Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
pull_request:
|
||||
release:
|
||||
types: [created]
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
runs-on: ubuntu-latest
|
||||
name: Build and test
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
php: [7.2, 7.3, 7.4, 8.0, 8.1]
|
||||
composer-flags: [ "" ]
|
||||
symfony-version: [ "" ]
|
||||
include:
|
||||
- php: 7.2
|
||||
symfony-version: '3.*'
|
||||
- php: 7.3
|
||||
symfony-version: '4.*'
|
||||
- php: 7.4
|
||||
symfony-version: '5.*'
|
||||
- php: 8.0
|
||||
symfony-version: '5.*'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Setup PHP
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: "${{ matrix.php }}"
|
||||
coverage: none
|
||||
|
||||
- name: Update Symfony version
|
||||
if: matrix.symfony-version != ''
|
||||
run: composer require --no-update "symfony/symfony:${{ matrix.symfony-version }}"
|
||||
|
||||
- name: Install dependencies
|
||||
run: composer update ${{ matrix.composer-flags }}
|
||||
|
||||
- name: Run tests (phpunit)
|
||||
run: ./vendor/bin/phpunit
|
||||
@@ -1,49 +0,0 @@
|
||||
name: Update Cucumber
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 7 * * *'
|
||||
|
||||
jobs:
|
||||
cucumber-update:
|
||||
runs-on: ubuntu-latest
|
||||
name: Upstream cucumber update
|
||||
steps:
|
||||
- name: Setup PHP
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: 7.4
|
||||
coverage: none
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: composer update
|
||||
|
||||
- name: Update cucumber tag
|
||||
id: cucumber
|
||||
run: bin/update_cucumber
|
||||
|
||||
- name: Re-install dependencies
|
||||
run: composer update
|
||||
if: steps.cucumber.outputs.cucumber_version
|
||||
|
||||
- name: Update translations
|
||||
run: bin/update_i18n
|
||||
if: steps.cucumber.outputs.cucumber_version
|
||||
|
||||
- name: Find changelog
|
||||
id: changelog
|
||||
run: bin/cucumber_changelog ${{ steps.cucumber.outputs.cucumber_version }}
|
||||
if: steps.cucumber.outputs.cucumber_version
|
||||
|
||||
- name: Open a PR
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
if: steps.cucumber.outputs.cucumber_version
|
||||
with:
|
||||
commit-message: Automatic Cucumber tag update to ${{ steps.cucumber.outputs.cucumber_version }}
|
||||
branch: cucumber-update-${{ steps.cucumber.outputs.cucumber_version }}
|
||||
delete-branch: true
|
||||
title: Cucumber update ${{ steps.cucumber.outputs.cucumber_version }}
|
||||
body: ${{ steps.changelog.outputs.changelog }}
|
||||
base: 'master'
|
||||
Vendored
+237
-299
@@ -1,442 +1,380 @@
|
||||
4.9.0 / 2021-10-12
|
||||
==================
|
||||
# 4.10.0 / 2024-10-19
|
||||
|
||||
* Simplify the boolean condition for the tag matching by @stof in https://github.com/Behat/Gherkin/pull/219
|
||||
* Remove symfony phpunit bridge by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/220
|
||||
* Ignore the bin folder in archives by @stof in https://github.com/Behat/Gherkin/pull/226
|
||||
* Cast table node exceptions into ParserExceptions when throwing by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/216
|
||||
* Cucumber changelog in PRs and using correct hash by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/225
|
||||
* Support alternative docstrings format (```) by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/214
|
||||
* Fix DocBlocks (Boolean -> bool) by @simonhammes in https://github.com/Behat/Gherkin/pull/237
|
||||
* Tag parsing by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/215
|
||||
* Remove test - cucumber added an example with Rule which is not supported by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/239
|
||||
* Add PHP 8.1 support by @javer in https://github.com/Behat/Gherkin/pull/242
|
||||
* Fix main branch alias version by @mvorisek in https://github.com/Behat/Gherkin/pull/244
|
||||
- Add support for Symfony 6 and 7 thanks to @tacman
|
||||
- Sync with Cucumber 24.1.0
|
||||
- Fix exception when filter string is empty thanks to @magikid
|
||||
- Fix nullable parameters warning in PHP 8.4 thanks to @heiglandreas and @jrfnl
|
||||
- Fix parsing of scenario outline rows with trailing backslashes
|
||||
- Fix PHPUnit 10 deprecation messages
|
||||
- A lot of great CI work by @heiglandreas and @jrfnl
|
||||
|
||||
4.8.0 / 2021-02-04
|
||||
==================
|
||||
# 4.9.0 / 2021-10-12
|
||||
|
||||
* Drop support for PHP before version 7.2
|
||||
- Simplify the boolean condition for the tag matching by @stof in https://github.com/Behat/Gherkin/pull/219
|
||||
- Remove symfony phpunit bridge by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/220
|
||||
- Ignore the bin folder in archives by @stof in https://github.com/Behat/Gherkin/pull/226
|
||||
- Cast table node exceptions into ParserExceptions when throwing by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/216
|
||||
- Cucumber changelog in PRs and using correct hash by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/225
|
||||
- Support alternative docstrings format (```) by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/214
|
||||
- Fix DocBlocks (Boolean -> bool) by @simonhammes in https://github.com/Behat/Gherkin/pull/237
|
||||
- Tag parsing by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/215
|
||||
- Remove test - cucumber added an example with Rule which is not supported by @ciaranmcnulty in https://github.com/Behat/Gherkin/pull/239
|
||||
- Add PHP 8.1 support by @javer in https://github.com/Behat/Gherkin/pull/242
|
||||
- Fix main branch alias version by @mvorisek in https://github.com/Behat/Gherkin/pull/244
|
||||
|
||||
4.7.3 / 2021-02-04
|
||||
==================
|
||||
# 4.8.0 / 2021-02-04
|
||||
|
||||
* Refactored comments parsing to avoid Maximum function nesting level errors
|
||||
- Drop support for PHP before version 7.2
|
||||
|
||||
4.7.2 / 2021-02-03
|
||||
==================
|
||||
# 4.7.3 / 2021-02-04
|
||||
|
||||
* Issue where Scenario Outline title was not populated into Examples
|
||||
* Updated translations from cucumber 16.0.0
|
||||
- Refactored comments parsing to avoid Maximum function nesting level errors
|
||||
|
||||
4.7.1 / 2021-01-26
|
||||
==================
|
||||
# 4.7.2 / 2021-02-03
|
||||
|
||||
* Issue parsing comments before scenarios when following an Examples table
|
||||
- Issue where Scenario Outline title was not populated into Examples
|
||||
- Updated translations from cucumber 16.0.0
|
||||
|
||||
4.7.0 / 2021-01-24
|
||||
==================
|
||||
# 4.7.1 / 2021-01-26
|
||||
|
||||
* Provides better messages for TableNode construct errors
|
||||
* Now allows single character steps
|
||||
* Supports multiple Example Tables with tags
|
||||
- Issue parsing comments before scenarios when following an Examples table
|
||||
|
||||
4.6.2 / 2020-03-17
|
||||
==================
|
||||
# 4.7.0 / 2021-01-24
|
||||
|
||||
* Fixed issues due to incorrect cache key
|
||||
- Provides better messages for TableNode construct errors
|
||||
- Now allows single character steps
|
||||
- Supports multiple Example Tables with tags
|
||||
|
||||
4.6.1 / 2020-02-27
|
||||
==================
|
||||
# 4.6.2 / 2020-03-17
|
||||
|
||||
* Fix AZ translations
|
||||
* Correctly filter features, now that the base path is correctly set
|
||||
- Fixed issues due to incorrect cache key
|
||||
|
||||
4.6.0 / 2019-01-16
|
||||
==================
|
||||
# 4.6.1 / 2020-02-27
|
||||
|
||||
* Updated translations (including 'Example' as synonym for 'Scenario' in `en`)
|
||||
- Fix AZ translations
|
||||
- Correctly filter features, now that the base path is correctly set
|
||||
|
||||
4.5.1 / 2017-08-30
|
||||
==================
|
||||
# 4.6.0 / 2019-01-16
|
||||
|
||||
* Fix regression in `PathsFilter`
|
||||
- Updated translations (including 'Example' as synonym for 'Scenario' in `en`)
|
||||
|
||||
4.5.0 / 2017-08-30
|
||||
==================
|
||||
# 4.5.1 / 2017-08-30
|
||||
|
||||
* Sync i18n with Cucumber Gherkin
|
||||
* Drop support for HHVM tests on Travis
|
||||
* Add `TableNode::fromList()` method (thanks @TravisCarden)
|
||||
* Add `ExampleNode::getOutlineTitle()` method (thanks @duxet)
|
||||
* Use realpath, so the feature receives the cwd prefixed (thanks @glennunipro)
|
||||
* Explicitly handle non-two-dimensional arrays in TableNode (thanks @TravisCarden)
|
||||
* Fix to line/linefilter scenario runs which take relative paths to files (thanks @generalconsensus)
|
||||
- Fix regression in `PathsFilter`
|
||||
|
||||
4.4.5 / 2016-10-30
|
||||
==================
|
||||
# 4.5.0 / 2017-08-30
|
||||
|
||||
* Fix partial paths matching in `PathsFilter`
|
||||
- Sync i18n with Cucumber Gherkin
|
||||
- Drop support for HHVM tests on Travis
|
||||
- Add `TableNode::fromList()` method (thanks @TravisCarden)
|
||||
- Add `ExampleNode::getOutlineTitle()` method (thanks @duxet)
|
||||
- Use realpath, so the feature receives the cwd prefixed (thanks @glennunipro)
|
||||
- Explicitly handle non-two-dimensional arrays in TableNode (thanks @TravisCarden)
|
||||
- Fix to line/linefilter scenario runs which take relative paths to files (thanks @generalconsensus)
|
||||
|
||||
4.4.4 / 2016-09-18
|
||||
==================
|
||||
# 4.4.5 / 2016-10-30
|
||||
|
||||
* Provide clearer exception for non-writeable cache directories
|
||||
- Fix partial paths matching in `PathsFilter`
|
||||
|
||||
4.4.3 / 2016-09-18
|
||||
==================
|
||||
# 4.4.4 / 2016-09-18
|
||||
|
||||
* Ensure we reset tags between features
|
||||
- Provide clearer exception for non-writeable cache directories
|
||||
|
||||
4.4.2 / 2016-09-03
|
||||
==================
|
||||
# 4.4.3 / 2016-09-18
|
||||
|
||||
* Sync 18n with gherkin 3
|
||||
- Ensure we reset tags between features
|
||||
|
||||
4.4.1 / 2015-12-30
|
||||
==================
|
||||
# 4.4.2 / 2016-09-03
|
||||
|
||||
* Ensure keywords are trimmed when syncing translations
|
||||
* Sync 18n with cucumber
|
||||
- Sync 18n with gherkin 3
|
||||
|
||||
4.4.0 / 2015-09-19
|
||||
==================
|
||||
# 4.4.1 / 2015-12-30
|
||||
|
||||
* Added validation enforcing that all rows of a `TableNode` have the same number of columns
|
||||
* Added `TableNode::getColumn` to get a column from the table
|
||||
* Sync 18n with cucumber
|
||||
- Ensure keywords are trimmed when syncing translations
|
||||
- Sync 18n with cucumber
|
||||
|
||||
4.3.0 / 2014-06-06
|
||||
==================
|
||||
# 4.4.0 / 2015-09-19
|
||||
|
||||
* Added `setFilters(array)` method to `Gherkin` class
|
||||
* Added `NarrativeFilter` for non-english `RoleFilter` lovers
|
||||
- Added validation enforcing that all rows of a `TableNode` have the same number of columns
|
||||
- Added `TableNode::getColumn` to get a column from the table
|
||||
- Sync 18n with cucumber
|
||||
|
||||
4.2.1 / 2014-06-06
|
||||
==================
|
||||
# 4.3.0 / 2014-06-06
|
||||
|
||||
* Fix parsing of features without line feed at the end
|
||||
- Added `setFilters(array)` method to `Gherkin` class
|
||||
- Added `NarrativeFilter` for non-english `RoleFilter` lovers
|
||||
|
||||
4.2.0 / 2014-05-27
|
||||
==================
|
||||
# 4.2.1 / 2014-06-06
|
||||
|
||||
* Added `getKeyword()` and `getKeywordType()` methods to `StepNode`, deprecated `getType()`.
|
||||
Thanks to @kibao
|
||||
- Fix parsing of features without line feed at the end
|
||||
|
||||
4.1.3 / 2014-05-25
|
||||
==================
|
||||
# 4.2.0 / 2014-05-27
|
||||
|
||||
* Properly handle tables with rows terminating in whitespace
|
||||
- Added `getKeyword()` and `getKeywordType()` methods to `StepNode`, deprecated `getType()`.
|
||||
Thanks to @kibao
|
||||
|
||||
4.1.2 / 2014-05-14
|
||||
==================
|
||||
# 4.1.3 / 2014-05-25
|
||||
|
||||
* Handle case where Gherkin cache is broken
|
||||
- Properly handle tables with rows terminating in whitespace
|
||||
|
||||
4.1.1 / 2014-05-05
|
||||
==================
|
||||
# 4.1.2 / 2014-05-14
|
||||
|
||||
* Fixed the compatibility with PHP 5.6-beta by avoiding to use the broken PHP array function
|
||||
* The YamlFileLoader no longer extend from ArrayLoader but from AbstractFileLoader
|
||||
- Handle case where Gherkin cache is broken
|
||||
|
||||
4.1.0 / 2014-04-20
|
||||
==================
|
||||
# 4.1.1 / 2014-05-05
|
||||
|
||||
* Fixed scenario tag filtering
|
||||
* Do not allow multiple multiline step arguments
|
||||
* Sync 18n with cucumber
|
||||
- Fixed the compatibility with PHP 5.6-beta by avoiding to use the broken PHP array function
|
||||
- The YamlFileLoader no longer extend from ArrayLoader but from AbstractFileLoader
|
||||
|
||||
4.0.0 / 2014-01-05
|
||||
==================
|
||||
# 4.1.0 / 2014-04-20
|
||||
|
||||
* Changed the behavior when no loader can be found for the resource. Instead of throwing an exception, the
|
||||
Gherkin class now returns an empty array.
|
||||
- Fixed scenario tag filtering
|
||||
- Do not allow multiple multiline step arguments
|
||||
- Sync 18n with cucumber
|
||||
|
||||
3.1.3 / 2014-01-04
|
||||
==================
|
||||
# 4.0.0 / 2014-01-05
|
||||
|
||||
* Dropped the dependency on the Symfony Finder by using SPL iterators directly
|
||||
* Added testing on HHVM on Travis. HHVM is officially supported (previous release was actually already compatible)
|
||||
- Changed the behavior when no loader can be found for the resource. Instead of throwing an exception, the
|
||||
Gherkin class now returns an empty array.
|
||||
|
||||
3.1.2 / 2014-01-01
|
||||
==================
|
||||
# 3.1.3 / 2014-01-04
|
||||
|
||||
* All paths passed to PathsFilter are converted using realpath
|
||||
- Dropped the dependency on the Symfony Finder by using SPL iterators directly
|
||||
- Added testing on HHVM on Travis. HHVM is officially supported (previous release was actually already compatible)
|
||||
|
||||
3.1.1 / 2013-12-31
|
||||
==================
|
||||
# 3.1.2 / 2014-01-01
|
||||
|
||||
* Add `ComplexFilterInterace` that has complex behavior for scenarios and requires to pass
|
||||
feature too
|
||||
* `TagFilter` is an instance of a `ComplexFilterInterace` now
|
||||
- All paths passed to PathsFilter are converted using realpath
|
||||
|
||||
3.1.0 / 2013-12-31
|
||||
==================
|
||||
# 3.1.1 / 2013-12-31
|
||||
|
||||
* Example node is a scenario
|
||||
* Nodes do not have uprefs (memory usage fix)
|
||||
* Scenario filters do not depend on feature nodes
|
||||
- Add `ComplexFilterInterace` that has complex behavior for scenarios and requires to pass
|
||||
feature too
|
||||
- `TagFilter` is an instance of a `ComplexFilterInterace` now
|
||||
|
||||
3.0.5 / 2014-01-01
|
||||
==================
|
||||
# 3.1.0 / 2013-12-31
|
||||
|
||||
* All paths passed to PathsFilter are converted using realpath
|
||||
- Example node is a scenario
|
||||
- Nodes do not have uprefs (memory usage fix)
|
||||
- Scenario filters do not depend on feature nodes
|
||||
|
||||
3.0.4 / 2013-12-31
|
||||
==================
|
||||
# 3.0.5 / 2014-01-01
|
||||
|
||||
* TableNode is now traversable using foreach
|
||||
* All possibly thrown exceptions implement Gherkin\Exception interface
|
||||
* Sync i18n with cucumber
|
||||
- All paths passed to PathsFilter are converted using realpath
|
||||
|
||||
3.0.3 / 2013-09-15
|
||||
==================
|
||||
# 3.0.4 / 2013-12-31
|
||||
|
||||
* Extend ExampleNode with additional methods
|
||||
- TableNode is now traversable using foreach
|
||||
- All possibly thrown exceptions implement Gherkin\Exception interface
|
||||
- Sync i18n with cucumber
|
||||
|
||||
3.0.2 / 2013-09-14
|
||||
==================
|
||||
# 3.0.3 / 2013-09-15
|
||||
|
||||
* Extract `KeywordNodeInterface` and `ScenarioLikeInterface`
|
||||
* Add `getIndex()` methods to scenarios, outlines, steps and examples
|
||||
* Throw proper exception for fractured node tree
|
||||
- Extend ExampleNode with additional methods
|
||||
|
||||
3.0.1 / 2013-09-14
|
||||
==================
|
||||
# 3.0.2 / 2013-09-14
|
||||
|
||||
* Use versioned subfolder in FileCache
|
||||
- Extract `KeywordNodeInterface` and `ScenarioLikeInterface`
|
||||
- Add `getIndex()` methods to scenarios, outlines, steps and examples
|
||||
- Throw proper exception for fractured node tree
|
||||
|
||||
3.0.0 / 2013-09-14
|
||||
==================
|
||||
# 3.0.1 / 2013-09-14
|
||||
|
||||
* A lot of optimizations in Parser and Lexer
|
||||
* Node tree is now immutable by nature (no setters)
|
||||
* Example nodes are now part of the node tree. They are lazily generated by Outline node
|
||||
* Sync with latest cucumber i18n
|
||||
- Use versioned subfolder in FileCache
|
||||
|
||||
2.3.4 / 2013-08-11
|
||||
==================
|
||||
# 3.0.0 / 2013-09-14
|
||||
|
||||
* Fix leaks in memory cache
|
||||
- A lot of optimizations in Parser and Lexer
|
||||
- Node tree is now immutable by nature (no setters)
|
||||
- Example nodes are now part of the node tree. They are lazily generated by Outline node
|
||||
- Sync with latest cucumber i18n
|
||||
|
||||
2.3.3 / 2013-08-11
|
||||
==================
|
||||
# 2.3.4 / 2013-08-11
|
||||
|
||||
* Fix encoding bug introduced with previous release
|
||||
* Sync i18n with cucumber
|
||||
- Fix leaks in memory cache
|
||||
|
||||
2.3.2 / 2013-08-11
|
||||
==================
|
||||
# 2.3.3 / 2013-08-11
|
||||
|
||||
* Explicitly use utf8 encoding
|
||||
- Fix encoding bug introduced with previous release
|
||||
- Sync i18n with cucumber
|
||||
|
||||
2.3.1 / 2013-08-10
|
||||
==================
|
||||
# 2.3.2 / 2013-08-11
|
||||
|
||||
* Support `an` prefix with RoleFilter
|
||||
- Explicitly use utf8 encoding
|
||||
|
||||
2.3.0 / 2013-08-04
|
||||
==================
|
||||
# 2.3.1 / 2013-08-10
|
||||
|
||||
* Add RoleFilter
|
||||
* Add PathsFilter
|
||||
* Add MemoryCache
|
||||
- Support `an` prefix with RoleFilter
|
||||
|
||||
2.2.9 / 2013-03-02
|
||||
==================
|
||||
# 2.3.0 / 2013-08-04
|
||||
|
||||
* Fix dependency version requirement
|
||||
- Add RoleFilter
|
||||
- Add PathsFilter
|
||||
- Add MemoryCache
|
||||
|
||||
2.2.8 / 2013-03-02
|
||||
==================
|
||||
# 2.2.9 / 2013-03-02
|
||||
|
||||
* Features filtering behavior change. Now emptified (by filtering) features
|
||||
that do not match filter themselves are removed from resultset.
|
||||
* Small potential bug fix in TableNode
|
||||
- Fix dependency version requirement
|
||||
|
||||
2.2.7 / 2013-01-27
|
||||
==================
|
||||
# 2.2.8 / 2013-03-02
|
||||
|
||||
* Fixed bug in i18n syncing script
|
||||
* Resynced Gherkin i18n
|
||||
- Features filtering behavior change. Now emptified (by filtering) features
|
||||
that do not match filter themselves are removed from resultset.
|
||||
- Small potential bug fix in TableNode
|
||||
|
||||
2.2.6 / 2013-01-26
|
||||
==================
|
||||
# 2.2.7 / 2013-01-27
|
||||
|
||||
* Support long row hashes in tables ([see](https://github.com/Behat/Gherkin/issues/40))
|
||||
* Synced Gherkin i18n
|
||||
- Fixed bug in i18n syncing script
|
||||
- Resynced Gherkin i18n
|
||||
|
||||
2.2.5 / 2012-09-26
|
||||
==================
|
||||
# 2.2.6 / 2013-01-26
|
||||
|
||||
* Fixed issue with loading empty features
|
||||
* Synced Gherkin i18n
|
||||
- Support long row hashes in tables ([see](https://github.com/Behat/Gherkin/issues/40))
|
||||
- Synced Gherkin i18n
|
||||
|
||||
2.2.4 / 2012-08-03
|
||||
==================
|
||||
# 2.2.5 / 2012-09-26
|
||||
|
||||
* Fixed exception message for "no loader found"
|
||||
- Fixed issue with loading empty features
|
||||
- Synced Gherkin i18n
|
||||
|
||||
2.2.3 / 2012-08-03
|
||||
==================
|
||||
# 2.2.4 / 2012-08-03
|
||||
|
||||
* Fixed minor loader bug with empty base path
|
||||
* Synced Gherkin i18n
|
||||
- Fixed exception message for "no loader found"
|
||||
|
||||
2.2.2 / 2012-07-01
|
||||
==================
|
||||
# 2.2.3 / 2012-08-03
|
||||
|
||||
* Added ability to filter outline scenarios by line and range filters
|
||||
* Synced Gherkin i18n
|
||||
* Refactored table parser to read row line numbers too
|
||||
- Fixed minor loader bug with empty base path
|
||||
- Synced Gherkin i18n
|
||||
|
||||
2.2.1 / 2012-05-04
|
||||
==================
|
||||
# 2.2.2 / 2012-07-01
|
||||
|
||||
* Fixed StepNode `getLanguage()` and `getFile()`
|
||||
- Added ability to filter outline scenarios by line and range filters
|
||||
- Synced Gherkin i18n
|
||||
- Refactored table parser to read row line numbers too
|
||||
|
||||
2.2.0 / 2012-05-03
|
||||
==================
|
||||
# 2.2.1 / 2012-05-04
|
||||
|
||||
* Features freeze after parsing
|
||||
* Implemented GherkinDumper (@Halleck45)
|
||||
* Synced i18n with Cucumber
|
||||
* Updated inline documentation
|
||||
- Fixed StepNode `getLanguage()` and `getFile()`
|
||||
|
||||
2.1.1 / 2012-03-09
|
||||
==================
|
||||
# 2.2.0 / 2012-05-03
|
||||
|
||||
* Fixed caching bug, where `isFresh()` always returned false
|
||||
- Features freeze after parsing
|
||||
- Implemented GherkinDumper (@Halleck45)
|
||||
- Synced i18n with Cucumber
|
||||
- Updated inline documentation
|
||||
|
||||
2.1.0 / 2012-03-09
|
||||
==================
|
||||
# 2.1.1 / 2012-03-09
|
||||
|
||||
* Added parser caching layer
|
||||
* Added support for table delimiter escaping (use `\|` for that)
|
||||
* Added LineRangeFilter (thanks @headrevision)
|
||||
* Synced i18n dictionary with cucumber/gherkin
|
||||
- Fixed caching bug, where `isFresh()` always returned false
|
||||
|
||||
2.0.2 / 2012-02-04
|
||||
==================
|
||||
# 2.1.0 / 2012-03-09
|
||||
|
||||
* Synced i18n dictionary with cucumber/gherkin
|
||||
- Added parser caching layer
|
||||
- Added support for table delimiter escaping (use `\|` for that)
|
||||
- Added LineRangeFilter (thanks @headrevision)
|
||||
- Synced i18n dictionary with cucumber/gherkin
|
||||
|
||||
2.0.1 / 2012-01-26
|
||||
==================
|
||||
# 2.0.2 / 2012-02-04
|
||||
|
||||
* Fixed issue about parsing features without indentation
|
||||
- Synced i18n dictionary with cucumber/gherkin
|
||||
|
||||
2.0.0 / 2012-01-19
|
||||
==================
|
||||
# 2.0.1 / 2012-01-26
|
||||
|
||||
* Background titles support
|
||||
* Correct parsing of titles/descriptions (hirarchy lexing)
|
||||
* Migration to the cucumber/gherkin i18n dictionary
|
||||
* Speed optimizations
|
||||
* Refactored KeywordsDumper
|
||||
* New loaders
|
||||
* Bugfixes
|
||||
- Fixed issue about parsing features without indentation
|
||||
|
||||
1.1.4 / 2012-01-08
|
||||
==================
|
||||
# 2.0.0 / 2012-01-19
|
||||
|
||||
* Read feature description even if it looks like a step
|
||||
- Background titles support
|
||||
- Correct parsing of titles/descriptions (hirarchy lexing)
|
||||
- Migration to the cucumber/gherkin i18n dictionary
|
||||
- Speed optimizations
|
||||
- Refactored KeywordsDumper
|
||||
- New loaders
|
||||
- Bugfixes
|
||||
|
||||
1.1.3 / 2011-12-14
|
||||
==================
|
||||
# 1.1.4 / 2012-01-08
|
||||
|
||||
* Removed file loading routines from Parser (fixes `is_file()` issue on some systems - thanks
|
||||
@flodocteurklein)
|
||||
- Read feature description even if it looks like a step
|
||||
|
||||
1.1.2 / 2011-12-01
|
||||
==================
|
||||
# 1.1.3 / 2011-12-14
|
||||
|
||||
* Updated spanish trasnaltion (@anbotero)
|
||||
* Integration with Composer and Travis CI
|
||||
- Removed file loading routines from Parser (fixes `is_file()` issue on some systems - thanks
|
||||
@flodocteurklein)
|
||||
|
||||
1.1.1 / 2011-07-29
|
||||
==================
|
||||
# 1.1.2 / 2011-12-01
|
||||
|
||||
* Updated pt language step types (@danielcsgomes)
|
||||
* Updated vendors
|
||||
- Updated spanish trasnaltion (@anbotero)
|
||||
- Integration with Composer and Travis CI
|
||||
|
||||
1.1.0 / 2011-07-16
|
||||
==================
|
||||
# 1.1.1 / 2011-07-29
|
||||
|
||||
* Return all tags, including inherited in `Scenario::getTags()`
|
||||
* New `Feature::getOwnTags()` and `Scenario::getOwnTags()` method added,
|
||||
which returns only own tags
|
||||
- Updated pt language step types (@danielcsgomes)
|
||||
- Updated vendors
|
||||
|
||||
1.0.8 / 2011-06-29
|
||||
==================
|
||||
# 1.1.0 / 2011-07-16
|
||||
|
||||
* Fixed comments parsing.
|
||||
You can’t have comments at the end of a line # like this
|
||||
# But you can still have comments at the beginning of a line
|
||||
- Return all tags, including inherited in `Scenario::getTags()`
|
||||
- New `Feature::getOwnTags()` and `Scenario::getOwnTags()` method added,
|
||||
which returns only own tags
|
||||
|
||||
1.0.7 / 2011-06-28
|
||||
==================
|
||||
# 1.0.8 / 2011-06-29
|
||||
|
||||
* Added `getRaw()` method to PyStringNode
|
||||
* Updated vendors
|
||||
- Fixed comments parsing.
|
||||
You can’t have comments at the end of a line # like this
|
||||
# But you can still have comments at the beginning of a line
|
||||
|
||||
1.0.6 / 2011-06-17
|
||||
==================
|
||||
# 1.0.7 / 2011-06-28
|
||||
|
||||
* Updated vendors
|
||||
- Added `getRaw()` method to PyStringNode
|
||||
- Updated vendors
|
||||
|
||||
1.0.5 / 2011-06-10
|
||||
==================
|
||||
# 1.0.6 / 2011-06-17
|
||||
|
||||
* Fixed bug, introduced with 1.0.4 - hash in PyStrings
|
||||
- Updated vendors
|
||||
|
||||
1.0.4 / 2011-06-10
|
||||
==================
|
||||
# 1.0.5 / 2011-06-10
|
||||
|
||||
* Fixed inability to comment pystrings
|
||||
- Fixed bug, introduced with 1.0.4 - hash in PyStrings
|
||||
|
||||
1.0.3 / 2011-04-21
|
||||
==================
|
||||
# 1.0.4 / 2011-06-10
|
||||
|
||||
* Fixed introduced with 1.0.2 pystring parsing bug
|
||||
- Fixed inability to comment pystrings
|
||||
|
||||
1.0.2 / 2011-04-18
|
||||
==================
|
||||
# 1.0.3 / 2011-04-21
|
||||
|
||||
* Fixed bugs in text with comments parsing
|
||||
- Fixed introduced with 1.0.2 pystring parsing bug
|
||||
|
||||
1.0.1 / 2011-04-01
|
||||
==================
|
||||
# 1.0.2 / 2011-04-18
|
||||
|
||||
* Updated vendors
|
||||
- Fixed bugs in text with comments parsing
|
||||
|
||||
1.0.0 / 2011-03-08
|
||||
==================
|
||||
# 1.0.1 / 2011-04-01
|
||||
|
||||
* Updated vendors
|
||||
- Updated vendors
|
||||
|
||||
1.0.0RC2 / 2011-02-25
|
||||
=====================
|
||||
# 1.0.0 / 2011-03-08
|
||||
|
||||
* Windows support
|
||||
* Missing phpunit config
|
||||
- Updated vendors
|
||||
|
||||
1.0.0RC1 / 2011-02-15
|
||||
=====================
|
||||
# 1.0.0RC2 / 2011-02-25
|
||||
|
||||
* Huge optimizations to Lexer & Parser
|
||||
* Additional loaders (Yaml, Array, Directory)
|
||||
* Filters (Tag, Name, Line)
|
||||
* Code refactoring
|
||||
* Nodes optimizations
|
||||
* Additional tests for exceptions and translations
|
||||
* Keywords dumper
|
||||
- Windows support
|
||||
- Missing phpunit config
|
||||
|
||||
0.2.0 / 2011-01-05
|
||||
==================
|
||||
# 1.0.0RC1 / 2011-02-15
|
||||
|
||||
* New Parser & Lexer (based on AST)
|
||||
* New verbose parsing exception handling
|
||||
* New translation mechanics
|
||||
* 47 brand new translations (see i18n)
|
||||
* Full test suite for everything from AST nodes to translations
|
||||
- Huge optimizations to Lexer & Parser
|
||||
- Additional loaders (Yaml, Array, Directory)
|
||||
- Filters (Tag, Name, Line)
|
||||
- Code refactoring
|
||||
- Nodes optimizations
|
||||
- Additional tests for exceptions and translations
|
||||
- Keywords dumper
|
||||
|
||||
# 0.2.0 / 2011-01-05
|
||||
|
||||
- New Parser & Lexer (based on AST)
|
||||
- New verbose parsing exception handling
|
||||
- New translation mechanics
|
||||
- 47 brand new translations (see i18n)
|
||||
- Full test suite for everything from AST nodes to translations
|
||||
|
||||
Vendored
+6
-6
@@ -18,9 +18,9 @@
|
||||
},
|
||||
|
||||
"require-dev": {
|
||||
"symfony/yaml": "~3|~4|~5",
|
||||
"symfony/yaml": "~3|~4|~5|~6|~7",
|
||||
"phpunit/phpunit": "~8|~9",
|
||||
"cucumber/cucumber": "dev-gherkin-24.0.0"
|
||||
"cucumber/cucumber": "dev-gherkin-24.1.0"
|
||||
},
|
||||
|
||||
"suggest": {
|
||||
@@ -50,16 +50,16 @@
|
||||
"type": "package",
|
||||
"package": {
|
||||
"name": "cucumber/cucumber",
|
||||
"version": "dev-gherkin-24.0.0",
|
||||
"version": "dev-gherkin-24.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/cucumber/cucumber.git",
|
||||
"reference": "effd4cf5273798c74793a63f9c88a14a1047346d"
|
||||
"reference": "1bd907bfcd246275e6d11f62c0885e654cec58cf"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/cucumber/cucumber/zipball/effd4cf5273798c74793a63f9c88a14a1047346d",
|
||||
"reference": "effd4cf5273798c74793a63f9c88a14a1047346d"
|
||||
"url": "https://api.github.com/repos/cucumber/cucumber/zipball/1bd907bfcd246275e6d11f62c0885e654cec58cf",
|
||||
"reference": "1bd907bfcd246275e6d11f62c0885e654cec58cf"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -1220,7 +1220,7 @@ return array (
|
||||
'given' => '假如<|假定<|假设<|*',
|
||||
'name' => 'Chinese simplified',
|
||||
'native' => '简体中文',
|
||||
'rule' => 'Rule',
|
||||
'rule' => 'Rule|规则',
|
||||
'scenario' => '剧本|场景',
|
||||
'scenario_outline' => '剧本大纲|场景大纲',
|
||||
'then' => '那么<|*',
|
||||
|
||||
+1
-1
@@ -507,7 +507,7 @@ class Lexer
|
||||
$token = $this->takeToken('TableRow');
|
||||
$line = mb_substr($line, 1, mb_strlen($line, 'utf8') - 2, 'utf8');
|
||||
$columns = array_map(function ($column) {
|
||||
return trim(str_replace('\\|', '|', $column));
|
||||
return trim(str_replace(['\\|', '\\\\'], ['|', '\\'], $column));
|
||||
}, preg_split('/(?<!\\\)\|/u', $line));
|
||||
$token['columns'] = $columns;
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ class GherkinFileLoader extends AbstractFileLoader
|
||||
* @param Parser $parser Parser
|
||||
* @param CacheInterface $cache Cache layer
|
||||
*/
|
||||
public function __construct(Parser $parser, CacheInterface $cache = null)
|
||||
public function __construct(Parser $parser, ?CacheInterface $cache = null)
|
||||
{
|
||||
$this->parser = $parser;
|
||||
$this->cache = $cache;
|
||||
|
||||
@@ -71,7 +71,7 @@ class FeatureNode implements KeywordNodeInterface, TaggedNodeInterface
|
||||
$title,
|
||||
$description,
|
||||
array $tags,
|
||||
BackgroundNode $background = null,
|
||||
?BackgroundNode $background,
|
||||
array $scenarios,
|
||||
$keyword,
|
||||
$language,
|
||||
|
||||
Reference in New Issue
Block a user