Skip to content

Renamed sketch.js still executes when referenced in index.html (caching issue?) #3736

@SableRaf

Description

@SableRaf

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 though sketch.js no 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.
Image Image

Expected Behavior

  • If sketch.js has been renamed or removed, referencing it in index.html or via loadStrings("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.

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    Awaiting Maintainer ApprovalNeeds review from a maintainer before moving forwardBugError or unexpected behaviors

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions