Fix #503: Improve caching#504
Conversation
…rsing Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
|
@kluhan can you fix the conflicts here and i will look into a review? |
|
The conflicts were a bit messy, and I might have missed some side effects introduced by the merged PRs. I’m marking this PR as Draft until I’ve confirmed everything works as intended. |
…current validateUri calls
|
Kudos to @bobcozzi — the improved logging is a game changer for debugging the extension. The PR is now up to date and ready for review. |
|
Thanks for the mention, @kluhan But I think the logging improvements you're referring to are actually from @richardm90 — his fixes added log levels, enhanced logging for include/member resolution, and the debounce logging. Definitely a benefit. Unless I didn't understand your specifics? Thanks! |
|
My bad, I must’ve mixed up the names while snoozing through the git diffs — sorry about that 😄 Credits definitely go to @richardm90 👍 |
…rge-opm-rpg-parser
|
@kluhan this is my mistake, but can you update the conflicts again? I merged a PR that added the start of OPM support. I don't think the conflicts are big. Alternatively, because this is my fault, I am happy to cleanup the conflicts for you - just give me access to your branch/forked repo and I can do it. Let me know! |
…solution Fix codefori#501: Fix file path resolution on Windows
|
@worksofliam No worries at all — I’m happy to update the conflicts on Monday when I’m back in office, that’s completely fine. The OPM support changes shouldn’t be a big problem. |
Adding qualified library to the commands
|
I messed up my branch a bit by merging the live |
Summary
Fix duplicate include loading in RPGLE include graphs and harden cache behavior across parser/server flows.
This addresses the issue where the same include (for example
d.rpgle) could be loaded multiple times when referenced through multiple branches (for example viab.rpgleandc.rpglefroma.rpgle).Problem
See the bug report for details: Issue #503.
What Changed
baseUri::includeString.include -> dependents) to invalidate only affected files.undefinedto deleting entries.CacheMetrics).getFilecontent requests.vscode-rpgle.cache.fileTTLSecondsvscode-rpgle.cache.fileMaxEntriesRPGLE: Clear All Cachescommand.RPGLE: View Cache Statisticscommand.Why This Fixes the Reported Issue
For include graphs like:
the resolver now:
This prevents unnecessary repeated loads of shared include sources and reduces parse overhead for large graphs.
Checklist
console.logs I added