Conversation
…efixes Use a boundary check when replacing old namespaces so the updater only targets complete FQCNs. This avoids corrupting existing names that merely start with the old namespace, and the tests lock in the regression case.
… fix/duplicated-suffix-on-namespace-rename
…e-rename fix(namespace): #82 - prevent namespace renames from matching identifier prefixes
…ctors Use namespace-aware regex boundaries when renaming classes and scanning imports so sub-namespace paths are not mistaken for the class itself. This avoids corrupting aliased imports that share a name prefix with the renamed class.
Reuse a shared boundary regex builder so class renames and reference updates avoid matching namespace prefixes or double-applying suffixes. This keeps the matching rules consistent across update and import cleanup code paths.
…sion fix: #84 - prevent prefix matches in php namespace refactors
… move
Add an opt-in rename pass after class/file moves so constructor-typed
properties and their usages stay aligned with the renamed class.
Include a separate flag for cases where the existing property name does
not match the class-name convention.
Add documentation for the new property-rename step, its config
flags, and where it fits in the file-move workflow so users can
understand why the extra behavior is opt-in and when it applies.
… affected files rename the master setting to `renameProperties.enabled` so it can coexist with nested options in VS Code's schema. also limit property renaming to files already affected by the class rename, which avoids unrelated workspace-wide matches and keeps the operation aligned with the namespace update that triggered it. BREAKING CHANGE: the configuration key is now `phpNamespaceRefactor.renameProperties.enabled` instead of `phpNamespaceRefactor.renameProperties`
… polymorphic key Replace the split enabled/mismatch flags with a single renameProperties setting that can be read as boolean or object. This avoids the VS Code schema conflict while preserving the same behavior through a resolver-driven flow. BREAKING CHANGE: renameProperties.enabled and renameProperties.renameMismatchedNames were removed in favor of phpNamespaceRefactor.renameProperties
Document that the configuration resolvers do not cache workspace configuration so updates are observed on the next operation. Also note that class renames may optionally rename matching constructor properties when property renaming is enabled.
feat: #86 - rename properties
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.
No description provided.