chore(deps): update composer dev dependencies#48
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
8497d8c to
e33f569
Compare
340fcb7 to
a395b5a
Compare
a395b5a to
a7ec7d9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.29.0→1.42.02.4.5→2.5.27.4.10→7.4.14Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
carthage-software/mago (carthage-software/mago)
v1.42.0: Mago 1.42.0Compare Source
Mago 1.42.0
A small release adding a
prefer-early-returnlinter rule, fixing Windowsself-update, and clearing analyzer and PHPDoc false positives aroundis_a(), nullable destructuring, and@paramon promoted properties.✨ Features
Linter
prefer-early-return: new rule suggesting early returns to reduce nesting in functions. (#2031,e523ab1)🐛 Bug Fixes
Analyzer
is_a()withallow_string: a string subject no longer triggers a falseimpossible-type-comparison. (db64917)T|nullkeeps element types (plus null) instead of widening tomixed. (643a037)PHPDoc Syntax
@paramon promoted properties:@param Twith no variable is allowed and types the property like@var. (8b9af32)CLI
self-update: extracts the.exe-suffixed binary from the archive, fixing "file not found". (805a1c3)🙏 Thank You
Contributors
A huge thank you to everyone who contributed code to this release:
Full Changelog: carthage-software/mago@1.41.0...1.42.0
v1.41.0: Mago 1.41.0Compare Source
Mago 1.41.0
A feature release adding call-site generic variance and a new
no-duplicate-match-armlinter rule, alongside analyzer, codex, and PHPDoc fixes for implicitStringable,do-whilenarrowing,@returnnullability, and enummatchexhaustiveness.✨ Features
Linter
no-duplicate-match-arm: new rule flags amatcharm whose result duplicates an earlier arm. (#2027,a9b3775)Type System
covariant/contravariant/*type-argument modifiers parse and drive assignability. (#2025,c7ff981)🐛 Bug Fixes
Analyzer
@returnnarrowing: a docblock@return intover native?intnarrows the return instead of re-addingnull. (#2020,dd8a54f)do-whileconditions: the loop body is narrowed by its condition on re-entry, likewhile. (#2029,496cd0a)matchexhaustiveness: a self-typed enum is treated as enumerable, fixing a false non-exhaustive report. (#2019,6c72db0)Codex
Stringable: a class declaring or inheriting__toString()now implicitly implementsStringable. (#2026,7a81571)PHPDoc Syntax
`code`span may cross continuation lines without an "unclosed code" error. (#2024,af95abc)🏗️ Internal
14ac380)9680310)🙏 Thank You
Issue Reporters
Thank you to everyone who reported issues that shaped this release:
Full Changelog: carthage-software/mago@1.40.2...1.41.0
v1.40.2: Mago 1.40.2Compare Source
Mago 1.40.2
A patch release fixing analyzer false positives around property narrowing across calls and
matchsubjects, two PHPDoc inline-code and conditional-type parsing fixes, plus new diagnostics for unsetting readonly/hooked properties and invalid traitasmodifiers.✨ Features
Analyzer
unset: unsetting a readonly or hooked property is now reported. (#2018,a24eb10)Semantics
asmodifiers: a non-visibility modifier in a traitasadaptation (e.g.as final) is now rejected. (e3d9437)🐛 Bug Fixes
Analyzer
matchafter impure call: a property used as amatchsubject no longer widens tomixed. (#2014,c9e5cc9)$obj->propno longer drops narrowings on sibling properties. (#2015,2e9a529)5eb7068)PHPDoc Syntax
//and quotes inside backticks are literal, not an "unclosed code" error. (95b393d)($x is Y ? A : B)return types parse correctly again. (3a8d627)🙏 Thank You
Issue Reporters
Thank you to everyone who reported issues that shaped this release:
Full Changelog: carthage-software/mago@1.40.1...1.40.2
v1.40.1: Mago 1.40.1Compare Source
Mago 1.40.1
A small patch release fixing
array_key_exists()narrowing understrict-array-index-existenceand a PHPDoc parsing regression where a@returndescription beginning withiswas mistaken for a conditional type.🐛 Bug Fixes
Analyzer
array_key_exists(): narrows a non-literal key likeisset()understrict-array-index-existence. (#2012,246b1eb)PHPDoc Syntax
isonly starts a conditional type when a target?follows, so prose like@return bool is true when …stays a description. (8d615a8)🙏 Thank You
Contributors
A huge thank you to everyone who contributed code to this release:
Issue Reporters
Thank you to everyone who reported issues that shaped this release:
Full Changelog: carthage-software/mago@1.40.0...1.40.1
v1.40.0: Mago 1.40.0Compare Source
Mago 1.40.0
A big release driven by community reports: three new formatter settings, a new
suspicious-explode-argumentslinter rule and afinal-controllerauto-fix, aninspect-baselineCLI command, a Composer-shipped editor schema, and a long list of analyzer, codex, prelude, and PHP-parity syntax fixes. Under the hood, the 2.0 groundwork landed onmain: a new high-level IR, a unifiedmago-phpdoc-syntax, and newmago-allocator/mago-flagscrates.✨ Features
Analyzer
array_filtertruthiness: a callback-lessarray_filter()narrows values to their truthy form. (#1990,bc9bede)Formatter
preserve_breaking_binary_expressionkeeps author line breaks in such chains. (#1853,5aacc7d)usestatements by length. (#1942,0688859)declare: optionally combine the opening tag anddeclare(strict_types=1)onto one line. (#1959,2ff4cf5)Linter
suspicious-explode-arguments: warns whenexplode's short literal looks swapped into the string position. (#1998,577d40a)final-controllerfix: offers an auto-fix that insertsfinalbefore any modifier. (#2006,82017a0)sensitive-parameter: skips boolean-like parameters. (#1949,2333626)Type System
emptytypes:emptyandempty-scalarare supported in type-syntax and codex. (#1968,e94cfdd)CLI
inspect-baseline: new command to visualise the distribution of baselined issues. (#1900,efd07bd)Composer
schema.jsonundervendor/carthage-software/mago/. (#1899,38b78d0)Nix
packages.<system>.defaultnow providesbin/mago. (#1970,13d7071)🐛 Bug Fixes
Analyzer
too-few-argumentsfires when a named arg fills only an optional param. (#2004,c5ec4ef)095badf)incompatible-return-typeagainst an ancestor hidden by an intermediate override. (#1996,431ff97)$thiscalls: a property keeps its declared type instead of widening tomixed. (#1994,5eef024)5cbbe91)foreachover unions: corrected always-entered inference, fixing a falseimpossible-condition. (#1986,22951bd)1ea5ba2)@propertytraits: trait property conflicts are no longer reported against@propertytags. (#1964,a5f3823)Codex
self/static/parentresolve to the original-cased class name in diagnostics. (#1995,b544222)instanceof: closures are treated as instances ofClosure. (#1956,6fe1bbd)nullis no longer ignored in contravariant callable parameter checks. (#1966,3f94734)Linter
no-redundant-string-concatissue and fix. (#2003,f8a31f8)no-dead-store: flags stores overwritten across a conditional branch. (#1999,a315465)no-boolean-flag: only flags boolean parameters actually used as flags. (#1988,50cdd11)prefer-early-continue: the auto-fix preserves comments and indentation. (#1946,495f639)Syntax
clone/cast/unary precedence and boundprint/yieldaboveand/xor/or. (1ac37b0,4d01d2d)${label}/${ expr }and$a[offset]forms in the lexer. (b56a704,f3198c8)ea6cbce)\u{...}decodes to UTF-8 bytes to match Zend. (b19386c)HIR
float. (9014c33,79a7600)797358f)Docblock
staticreturn: parses astaticreturn type after thestaticmethod modifier. (#1963,d5fb015)Prelude
phpversion():$extensionis optional. (#1950,5aed5bf)array_splice: preserves the element type in its return. (#1982,af4e647)preg_match_all/preg_replace_callback_arrayandmb_ordstubs. (#1980,958a4b7; #1981,dd0b80c)ZipArchive::addEmptyDir,xml_parser_create,ini_get_all, and more. (#1967,6c640d9; #1969,054651d)base64_encodereturnsnon-empty-string; tighter stdlib types. (#1974,c2c37f5; #1975,c7e595f)mb_chr/mb_ordandReflectionClass::getReflectionConstant. (578e427,327778a)📖 Documentation
b852388)🏗️ Internal
Architecture
mago-hircrate lowering the CST to a high-level IR (2.0 groundwork). (ca15f9d,e32d0d8,afefad6)mago-phpdoc-syntax, retiring two crates. (#1932, #1972,70179ec)mago-allocator(+CopyInto) andmago-flags. (#1957,0adfdc0,9a4cd06)0e4c0e6)ast→cst: renamed AST to CST across the workspace. (#1933,b7d64b6)Dependencies
serdeis now optional/off-by-default; droppedcruet,ustr,shell-words. (1751bae,184c493,ec8e092)CI / Tooling
Arenaimport. (676e1a4, #1984,92d29cd)🙏 Thank You
Contributors
A huge thank you to everyone who contributed code to this release:
Issue Reporters
Thank you to everyone who reported issues that shaped this release:
Full Changelog: carthage-software/mago@1.30.0...1.40.0
v1.30.0: Mago 1.30.0Compare Source
Mago 1.30.0
A release focused on generics and robustness: intersection types of generic parameters are now computed, generic reflection (
ReflectionClass<T>) threadsTinto method-return inference, and a new fuzzing + Miri CI hardened the lexer and parsers against crashes, leaks, and quadratic blowups on malformed input. Also: vendor type patches, anobject&callabletype, and the usual analyzer, codex, formatter, linter, and CLI fixes.✨ Features
Analyzer
ReflectionClass<T>/ReflectionMethod<T>threadTintogetName()/invoke()return types. (c44dc8f)object&callabletype: invokable classes are accepted viahas-method<__invoke>. (#1902,7efac3c)Codex
dcfd38b)Database
639f481)🐛 Bug Fixes
Analyzer
A&Bof unions/iterables computed, e.g.(int|bool)&(int|float)→int. (#1945,353ed77,7dd3d61)do/whilenull-narrowing: the loop condition now narrows the body on re-entry. (#1947,db10237)__callreturn: inferred from__call's declared return instead ofmixed. (131537a)Codex
public-properties-of: resolves inherited props,@typealiases, and generic-parameter selectors. (#1928, #1929,ce5eea6)@mixin: methods resolve across mixin chains. (#1915,e6d9304)class-stringand$thisin@extends/@implementsnow resolve. (#1924,f2fff71,5eda2e0)c370be3)Formatter
nulllast in unions: ordered last by default per PER CS 3. (#1835,3e5d38c)1db1fa5)5ff2133)Linter
53626d0)global/staticrebinds: no falseno-parameter-shadowing/no-dead-store. (#1910, #1911,4ccc4f5)Syntax
resource/integerno longer collide with type keywords. (#1898,899cbf3)Identifier::last_segment: returns the last segment, not the first. (#1919,cadea52)478aa81,a80e557)Type Syntax
.1Eare no longer emitted. (5179f3f,6baf0b1)Twig Syntax
f338622,3972674)CLI
mago.tomllinks to a versioned, non-404 docs page. (#1939,b120e6b)fdffae9)Prelude
format()return type. (#1917,70e6094)Database
f1eaf73)🏗️ Internal
Language Server
feat/language-serverbranch. (131b34c)CI / Tooling
48a3cf1,b0dbd5f,3b7f34b)e9bd270)35e53c2, #1925)MAGO_THREADStests: no longer fail when the env var is set. (#1895,e2a9d31)tarto 0.4.46. (#1920,b220deb)🙏 Thank You
Contributors
A huge thank you to everyone who contributed code to this release:
Issue Reporters
Thank you to everyone who reported issues that shaped this release:
Full Changelog: carthage-software/mago@1.29.0...1.30.0
rectorphp/rector (rector/rector)
v2.5.2: Released Rector 2.5.2Compare Source
Bugfixes 🐛
class => [paths]skips being wrongly flagged as unused (#8073)class => [paths]map — richer per-path skip tracking backing the report (#8074)v2.5.1: Released Rector 2.5.1Compare Source
Bugfixes 🐛
RemoveAlwaysTrueIfConditionRector— avoid scanning whole new statements on dynamic variable checks; moved logic toExprAnalyzerand bail early on defined variables (#8057)v2.5.0: Released Rector 2.5Compare Source
New Features 🥳 🎉 🎉 🎉
This release has 3 interesting new features. Let's look at them:
[dx] Report skips that never matched (#8058)
What? - like PHPStan's
reportUnusedIgnores, but for Rector->withSkip(). Flags skip entries that never matched anything during the run, so you can delete stale skips.Why? - skips rot. You skip a path/rule to dodge a problem, later the file moves or the rule stops firing there — the skip lingers forever,
silently masking nothing. This surfaces dead skips so config stays honest.
Run output:
[dx] Removing unused imports by default (#8047)
You can update your
rector.phpconfig:In case it's not for you, turn it off:
[dx] Introducing Drupal composer-based sets (#8041), Thanks @bbrala!
If you're using Drupal Rector, you can now enable it's per-version sets via:
return RectorConfig::configure() + ->withComposerBased(drupal: true);To learn more about composer-based-sets, checkout the documentation.
New Rules 🎉
AddArrayAnyAllClosureParamTypeRectorandNarrowArrayAnyAllNullableParamTypeRector(#8049)MoveInnerFunctionToTopLevelRector(#8042)NewArrayItemConcatAssignToAssignRector(#8045)FixClassCaseSensitivityVarDocblockRector(#8046)AddParamTypeToRefactorMethodRectorif missing (#8061)Bugfixes 🐛
MoveInnerFunctionToTopLevelRector(#8044)--onlyruns caching files as unchanged, hiding pending changes from full runs (#8029), Thanks @SanderMuller!RemoveUnusedPrivateMethodRectorfor NeverType (#8050)rectorphp/rector-doctrine 🟠
v2.4.6: Released Rector 2.4.6Compare Source
New Features 🥳
Bugfixes 🐛
--autoload-file(#8034), Thanks @SanderMuller!rectorphp/rector-symfony 🎶
rectorphp/rector-phpunit 🟢
rectorphp/rector-downgrade-php ⬇️
symfony/config (symfony/config)
[
v7.4.14](https://Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.