Repository navigation
v1.31.3-alpha
Fixed
- Fix all in unit did nothing when the project had a member under a registry LIBRARY root
(e.g.ArrayHelper.pas). The multi-project rename's freshness check counted that.dproj
member as missing from the owner's index, so the owner was permanently stale and--apply
dropped every rename (75 in the report), ending with "no fixable findings". The check now
considers only members the project owns (ProjectOwnedMembers). The CLI summary now says
autofix: nothing written -- N rename(s) dropped: <reason>and appends, N rename(s) not writtenwhen some were written and some were not. - IDE plugin: Fix all shows the wait cursor while it runs and refuses a second fix. The job
queue marks fix jobs Busy; the Structure form hooks the cursor and answers a second Fix all
with a refusal (RefusedWhileFixRuns) instead of queueing a conflicting write. type-name-prefix: an exception class whose direct ancestor is exception-named is no longer
told to useT.EKeyViolation = class(EDatabaseError)is accepted, and Fix all no longer
renames it toTEKeyViolation(AncestorNamedLikeException). Name heuristic only; the
library-index hop is planned for 1.31.4-alpha.- Naming autofix no longer half-applies a rename against a stale index. Since const-casing
renames word by word (glyActive->GLY_ACTIVE), a stale use site that the position guard
skipped left the declaration renamed and the use not, so the unit no longer compiled. A rename
that changes more than letter case is now all or nothing: one skipped site drops the whole
rename, and it is counted as skipped (stale index), as the multi-project path already did.
Extractor unchanged (1.21.1): no reindex needed.
Release battery: 693 pass / 0 fail. Win64 + Win32 zips attached. Extractor unchanged (1.21.1): no reindex needed.