Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Defluent] Remove often-breaking set #1062

Merged
merged 1 commit into from
Oct 26, 2021
Merged

[Defluent] Remove often-breaking set #1062

merged 1 commit into from
Oct 26, 2021

Conversation

TomasVotruba
Copy link
Member

@TomasVotruba TomasVotruba commented Oct 25, 2021

We should focus our energy from "bleeding rules" to improve DX in general. Make 450 rules more accesible to everyone by better experience, rather then invest same amount of energy to 2-3 magical rules that very few developers can use without being affraid to break their code base.

This is similar to removal of MoveVariableDeclarationNearReferenceRector for high complexity and very unrealiable behavior in the practise #587 and NullsafeOperatorRector #900

Fluent rules have many possible resolutoins and goals. While it's a set that is definitelly useful, it can create undesired code (rectorphp/rector#4890). It's maintenance cost shown as expensive.

Much better approach is to use PHPStan rules like NoChainMethodCallRule https://github.com/symplify/phpstan-rules/blob/main/docs/rules_overview.md#nochainmethodcallrule to warn about these places and let you decide how to implement it.

Anyone is welcomed to extract this ruleset to own maintained package 👍

@TomasVotruba TomasVotruba force-pushed the tv-defluent branch 9 times, most recently from 6cdadbc to 9ca474c Compare October 26, 2021 00:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant