Skip to content

Released ECS 13.3.0

Choose a tag to compare

@TomasVotruba TomasVotruba released this 07 Sep 06:48
· 3 commits to main since this release

News 🎉

Add NoBlankLineBetweenImportsFixer to the spaces set

Removes blank lines between consecutive import use statements, while keeping the blank line after the namespace intact. Ported from a custom fixer used in the Mautic codebase.

 use App\First;
-
 use App\Second;

ecsphp/ecs-src#75


JSON output always reports absolute paths

JsonOutputFormatter now always reports absolute paths - the format machines consume (IDE links, CI ingestion) - so no toggle is needed.

ecsphp/ecs-src#70


Deprecated 💀

🧹 Fixer-first: deprecate the CI report formats

ECS is a fixer by default, not a static analyzer. The report formats that target CI static-analysis pipelines now emit a warning and fall back to console:

Remaining formatters: console and json.

Deprecate withRealPathReporting()

Kept as a deprecation warning pointing to --output-format json, now that JSON output always reports absolute paths.

ecsphp/ecs-src#70

Deprecate withEditorConfig()

.editorconfig discovery silently leaked project-wide settings into ECS, overriding the rules configured through sets. Coding standard should be driven by the ECS config. withEditorConfig() is kept as a deprecation warning; configure the matching PHP-CS-Fixer rules explicitly instead.

ecsphp/ecs-src#68

Deprecate withPhpCsFixerSets()

Prepared sets cover the same ground with a simpler API. withPhpCsFixerSets() is reduced to a deprecation no-op pointing to ->withPreparedSets() / ->withSets().

ecsphp/ecs-src#66


Removed 🗑️

Remove the deprecated symplify set

The symplify set was already a no-op loading zero rules; its rules live in the common sets. The symplify arg of withPreparedSets() and SetList::SYMPLIFY are removed - switch to ->withPreparedSets(common: true) or the matching with*Level() methods.

ecsphp/ecs-src#67

Remove dead code