phpDocumentor / Reflection

Reflection library to do Static Analysis for PHP Projects
MIT License
117 stars 51 forks source link

Bump nikic/php-parser from 4.5.0 to 4.10.0 #178

Closed dependabot[bot] closed 4 years ago

dependabot[bot] commented 4 years ago

Bumps nikic/php-parser from 4.5.0 to 4.10.0.

Release notes

Sourced from nikic/php-parser's releases.

PHP-Parser 4.10.0

Added

  • [PHP 8.0] Added support for attributes. These are represented using a new AttributeGroup node containing Attribute nodes. A new attrGroups subnode is available on all node types that support attributes, i.e. Stmt\Class_, Stmt\Trait_, Stmt\Interface_, Stmt\Function_, Stmt\ClassMethod, Stmt\ClassConst, Stmt\Property, Expr\Closure, Expr\ArrowFunction and Param.
  • [PHP 8.0] Added support for nullsafe properties inside interpolated strings, in line with an upstream change.

Fixed

  • Improved compatibility with other libraries that use forward compatibility defines for PHP tokens.

PHP-Parser 4.9.1

Added

  • Added support for removing the first element of a list to the formatting-preserving pretty printer.

Fixed

  • Allow member modifiers as part of namespaced names. These were missed when support for other keywords was added.

PHP-Parser 4.9.0

Added

  • [PHP 8.0] Added support for named arguments, represented using a new name subnode on Arg.
  • [PHP 8.0] Added support for static return type, represented like a normal class return type.
  • [PHP 8.0] Added support for throw expression, represented using a new Expr\Throw_ node. For backwards compatibility reasons, throw expressions in statement context continue to be represented using Stmt\Throw_.
  • [PHP 8.0] Added support for keywords as parts of namespaced names.

Fixed

  • Emit parentheses for class constant fetch with complex left-hand-side.
  • Emit parentheses for new/instanceof on complex class expression.

PHP-Parser 4.8.0

Added

  • [PHP 8.0] Added support for nullsafe operator, represented using the new Expr\NullsafePropertyFetch and Expr\NullsafeMethodCall nodes.
  • Added phpVersion option to the emulative lexer, which allows controlling the target version to emulate (defaults to the latest available, currently PHP 8.0). This is useful to parse code that uses reserved keywords from newer PHP versions as identifiers.

PHP-Parser 4.7.0

Added

  • Add ParentConnectingVisitor and NodeConnectingVisitor classes.
  • [PHP 8.0] Added support for match expressions. These are represented using a new Expr\Match_ containing MatchArms.
  • [PHP 8.0] Added support for trailing comma in closure use lists.

Fixed

  • Fixed missing error for unterminated comment with trailing newline (#688).
  • Compatibility with PHP 8.0 has been restored: Namespaced names are now always represented by T_NAME_* tokens, using emulationg on older PHP versions. Full support for reserved keywords in namespaced names is not yet present.
Changelog

Sourced from nikic/php-parser's changelog.

Version 4.10.0 (2020-09-19)

Added

  • [PHP 8.0] Added support for attributes. These are represented using a new AttributeGroup node containing Attribute nodes. A new attrGroups subnode is available on all node types that support attributes, i.e. Stmt\Class_, Stmt\Trait_, Stmt\Interface_, Stmt\Function_, Stmt\ClassMethod, Stmt\ClassConst, Stmt\Property, Expr\Closure, Expr\ArrowFunction and Param.
  • [PHP 8.0] Added support for nullsafe properties inside interpolated strings, in line with an upstream change.

Fixed

  • Improved compatibility with other libraries that use forward compatibility defines for PHP tokens.

Version 4.9.1 (2020-08-30)

Added

  • Added support for removing the first element of a list to the formatting-preserving pretty printer.

Fixed

  • Allow member modifiers as part of namespaced names. These were missed when support for other keywords was added.

Version 4.9.0 (2020-08-18)

Added

  • [PHP 8.0] Added support for named arguments, represented using a new name subnode on Arg.
  • [PHP 8.0] Added support for static return type, represented like a normal class return type.
  • [PHP 8.0] Added support for throw expression, represented using a new Expr\Throw_ node. For backwards compatibility reasons, throw expressions in statement context continue to be represented using Stmt\Throw_.
  • [PHP 8.0] Added support for keywords as parts of namespaced names.

Fixed

  • Emit parentheses for class constant fetch with complex left-hand-side.
  • Emit parentheses for new/instanceof on complex class expression.

Version 4.8.0 (2020-08-09)

Commits
  • 1c13d05 Release PHP-Parser 4.10.0
  • c7dc3ce Add basic FPPP support for attributes
  • 9f6ad68 Adjust skip list for moved test
  • 1899471 Update test for PHP 8 error behavior
  • 8505acd Correctly handle ?-> in encapsed strings
  • c3e20d9 Use 8.0.0beta4 to tests against
  • 4c22c62 [PHP 8.0] Add attributes support (#661)
  • f66a32e Emulate PHP 8 attribute syntax
  • 75abbbd Handle flexible heredoc via TokenEmulator
  • 39b0460 Refactor token emulator registration
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 4 years ago

Superseded by #179.