Open Dartui opened 3 months ago
For anyone interested - running strauss --updateCallSites=false
disables replacements in project files. It does not solve the issue, but for me it resolves my problem.
Feel free to close that issue if there are no plans to take on that.
updateCallSites
should be false by default. So maybe that’s a bug itself.
To the original issue — I haven’t come up with a way to address it. It is a namespace, and namespaces are correctly required to be replaced in strings, but I don’t know how to disambiguate a namespace from a proper noun when they are the exact same string.
Ideally all projects would use Company\Project
style namespaces. As suggested (not required) in PSR-4.
If you have a suggestion on how to tell them apart, let me know.
Here is a repository that recreates the issue: https://github.com/Dartui/strauss-prefix-error Here is a change that is generated by Strauss: https://github.com/Dartui/strauss-prefix-error/pull/1/files
If you want to test that locally simply clone repository and run
composer install
.TL;DR - Strauss replaces string values to the FQCN if it matches the name of the imported class that is used in the same file. Is it possible to exclude this behavior somehow? I've tried using
exclude_from_prefix
but without success