- Move type-declaration-related rules to type-perfect package by @TomasVotruba in #128
- See https://github.com/rectorphp/type-perfect/ and https://getrector.com/blog/introducing-type-perfect-for-extra-safety
Added Rules 🥳
- Add ForbiddenStaticClassConstFetchRule by @TomasVotruba in #131
- Add no global const rule, entity in its namespace and no single implementer by @TomasVotruba in #132
What's Changed 🔨
-
Allow d in short names by @TomasVotruba in #116
-
Skip attributes on setter rule by @TomasVotruba in #120
-
Allow abstract classes to be implemented in NoSingleInterfaceImplementerRule by @TomasVotruba in #135
-
Improve no single interface by @TomasVotruba in #136
Removed 💀
Few rules seemed like too pedantic in practice, I always ignored them in most projects. Time to let go to make this set more practical:
- Remove NoMissingDirPathRule, as often not clear if target file or required file path by @TomasVotruba in #129
- Remove NoAbstractMethodRule as way too opinionated by @TomasVotruba in #121
- Remove ForbiddenSameNamedNewInstanceRule as rarely a buggy spot by @TomasVotruba in #123
- Remove NoVoidGetterMethodRule as not that practical by @TomasVotruba in #125
- Remove NoEmptyClassRule, as rarely true and already coverd by class-leak by @TomasVotruba in #124
- Remove NoShortNameRule, as devs are educated and not a thing anymore by @TomasVotruba in #127
- Remove NoRelativeFilePathRule as more exceptoins by @TomasVotruba in #118
- Remove RequireEnumDocBlockOnConstantListPassRule as reports many false positive, better shift to native enums by @TomasVotruba in #119
- Remove NoDuplicatedShortClassNameRule as overly detailed by @TomasVotruba in #133
- Remove NoNullableArrayPropertyRule as depends on use-case, cached etc by @TomasVotruba in #134
- Remove BoolishClassMethodPrefixRule as very limited and often ignored by @TomasVotruba in #114
- Remove NoProtectedClassElementRule as overly strict by @TomasVotruba in #115
Full Changelog: 12.5.0...13.0.0