stable

phan-5.3.0-1.fc35

FEDORA-2021-edf7296261 created by remi 4 years ago for Fedora 35

Nov 13 2021, Phan 5.3.0

New Features(Analysis):

  • Fix false positive PhanPossiblyUndeclaredVariable warning when a try block unconditionally returns/throws/exits (#4419)
  • Fix false positive warnings when analyzing enums, infer that automatically generated methods of enums exist. (#4313)
  • Properly resolve template type when getIterator returns an Iterator that includes a template. (#4556)
  • Fix false positives such as PhanTypeMismatchArgumentNullable analyzing recursive call with parameter set to literal, without real type information. (#4550) (e.g. function ($retry = true) { if ($retry) {/*...*/} some_call_using_retry($retry); })
  • Properly detect PhanUnusedVariable in try-catch where catch always rethrows. (#4567)
  • Make read-only/write-only property detection more accurate for assignment operations (e.g. +=, ??=) and increment/decrement operations. (#4570)
  • Improve estimates of array sizes when analyzing calls that unpack values, based on the inferred real type set. (#4577)
  • Infer that variadic parameters can have string keys (as of php 8.0) (#4579)
  • Emit PhanParamTooFewUnpack and PhanParamTooFewInternalUnpack to indicate when argument unpacking may provide too few arguments to the called function. (#4577)
  • Support the non-standard @no-named-arguments PHPDoc comment on function-likes. (#4580, #4152) Treat variadic parameters as list types when this annotation is used, warn about unpacking string arguments or explicitly passing named arguments to functions using this declaration.
  • Warn about argument unpacking that may pass strings to internal functions (e.g. var_dump(...['a' => 'unsupported'])) (#4579) New issue types: PhanSuspiciousNamedArgumentVariadicInternalUnpack
  • Support @phan-type AliasName=UnionType annotation in inline strings or element comments (#4562). These aliases will apply to remaining statements in the current top-level namespace blocks, similar to use statements, but can also be defined in methods and apply to subsequent methods.
  • When analyzing calls that modify variables as pass by reference, merge old types with existing types to account for possibility of branches or early returns (#4602)

Plugins:

  • Warn about non-empty try statements that are unlikely to throw in EmptyStatementListPlugin (#4555)
  • Warn in AlwaysReturnPlugin about functions/methods with no return type that have at least one return statement with an expression, but may fall through to the end of the function body without an explicit return (#4587)

Bug fixes:

  • Fix off-by-one error when inferring from comparison conditions such as count($arr) > 0 and count($arr) >= 1 that the array is non-empty. (#4551)
  • Fix checking file path suppressed by baseline (with /) on windows (#4149)
  • Fix crash when inferring type of array access for scalar other than int/string (e.g. $arr[true]) (#4573)
  • Properly read --processes N CLI flag before checking if phan should restart without grpc (#4608)

Maintenance:

  • Account for a few PHP 8.0 signature changes for PDOStatement::fetchAll and Phar methods. (#4569)

How to install

Updates may require up to 24 hours to propagate to mirrors. If the following command doesn't work, please retry later:

sudo dnf upgrade --refresh --advisory=FEDORA-2021-edf7296261

This update has been submitted for testing by remi.

4 years ago

This update's test gating status has been changed to 'ignored'.

4 years ago

This update has been pushed to testing.

4 years ago

This update has been submitted for stable by bodhi.

4 years ago

This update has been pushed to stable.

4 years ago

Please log in to add feedback.

Metadata
Type
enhancement
Karma
0
Signed
Content Type
RPM
Test Gating
Autopush Settings
Unstable by Karma
-3
Stable by Karma
3
Stable by Time
7 days
Dates
submitted
4 years ago
in testing
4 years ago
in stable
4 years ago

Automated Test Results