mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-10-30 06:42:43 +00:00
The R rename guard compared the raw text of each `string_content` node with the old and new name. An escaped spelling (`"f\u006fo"`, `'f\x6fo'`, octal) keeps its escape inside string_content, and a raw string (`r"(foo)"`) has no string_content node at all, so renaming `foo` proceeded while a get() or do.call() on the escaped or raw spelling still resolved the old name. Reproduction: 10 cases in the new test/unit/r-rename-string-guard.test.ts returned 'ok' instead of unsupported_occurrence on the unfixed provider, and the two new fixtures string-lookup-escaped and string-lookup-raw (rename-provider-r) renamed successfully on the unfixed build. The guard now decodes each `string` node (escapes, octal, raw strings) and compares the value. docs/languages/r-provider.md said "spelled as a string literal"; it now states the whole-value rule and what is still not detected (substring, paste0(), non-indexed files). |
||
|---|---|---|
| .. | ||
| languages | ||
| plans | ||