You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
timestamp 102: rascal-core request modification timestamp of A.rsc and gets stamp 101.
timestamp 103: rascal-core reads the modification timestamp of $A.tpl and gets stamp 90.
timestamp 104: rascal-core reads contents of A.rsc and starts the typecheck.
timestamp 110: A.rsc is modified outside of VS Code (it's a bit harder to trigger this in VS Code itself)
timestamp 120: rascal-core is done with typechecking A.rsc and writes $A.tpl.
timestamp 200: rascal-core wants to typecheck B.rsc that imports A.rsc. It determines that A.rsc is modified at 110, and $A.tpl at 120, so it can use the tpl file.
@PaulKlint already mentioned that the original modificiation timestamp is stored in the tpl. And that the most likely fix is to compare the stored timestamp (which would be 101) to the one on disk (110), and then decide after reading the tpl to consider it outdated afterall.
The text was updated successfully, but these errors were encountered:
DavyLandman
changed the title
If a rsc file changes while the checker is running it's missed.
If a rsc file changes while the checker is running it's changes are not detected properly
Jan 8, 2025
Timeline for the "race":
A.rsc
A.rsc
and gets stamp 101.$A.tpl
and gets stamp 90.A.rsc
and starts the typecheck.A.rsc
is modified outside of VS Code (it's a bit harder to trigger this in VS Code itself)A.rsc
and writes$A.tpl
.B.rsc
that importsA.rsc
. It determines thatA.rsc
is modified at 110, and$A.tpl
at 120, so it can use thetpl
file.@PaulKlint already mentioned that the original modificiation timestamp is stored in the tpl. And that the most likely fix is to compare the stored timestamp (which would be 101) to the one on disk (110), and then decide after reading the tpl to consider it outdated afterall.
The text was updated successfully, but these errors were encountered: