修复登陆日志入库错误,升级部分composer依赖项;

临时修复登陆通知邮件不能多发的问题;
This commit is contained in:
2025-07-13 19:37:43 +08:00
parent 037f274ec5
commit 45bc700e8f
93 changed files with 6405 additions and 6804 deletions
+237 -299
View File
@@ -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