-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Description
p5.js version
2.1.1
What is your operating system?
Mac OS
Web browser and version
Chrome Version 142.0.7444.176 (Official Build) (arm64)
Actual Behavior
In the p5 web editor (p5.js 2.1.1) I am seeing cases where an old version of sketch.js keeps being executed or loaded even after the file has been renamed (for example to not.js).
In those cases:
- Changing
<script src="not.js">to<script src="sketch.js">makes the preview run an older version of the code, even thoughsketch.jsno longer exists in the Sketch Files panel. - This still happens when loading the same project in an incognito window, so it does not look like a simple browser cache issue.
Expected Behavior
- If
sketch.jshas been renamed or removed, referencing it inindex.htmlor vialoadStrings("sketch.js")should fail, not load a stale copy. - The preview should only execute and load files that exist in the Sketch Files panel.
Steps to reproduce
I have not yet found a reliable series of steps to reproduce from a fresh sketch, but the problem started in a sketch where await loadStrings("sketch.js") was used and the file was later renamed. I'm not sure whether that is significant.
Here is a sketch exhibiting that behavior: https://editor.p5js.org/SableRaf/sketches/wuZkibCGu
Try changing <script src="sketch.js"></script> to <script src="not.js"></script> and see the color change.
Additionally, when calling loadStrings("sketch.js") from not.js, the console output shows the old contents of sketch.js from before the file was renamed to not.js (see screenshot below). The file sketch.js no longer exists in the Sketch Files panel, yet loadStrings("sketch.js") still returns the previous version instead of failing.
