Externals leaking across projects
We chatted on slack about this in January. I figured that I would officially file a bug so that it does not get lost.
Externals from different projects seem to get saved into other project files. In the steps below, I will use fictitious "Project A" and "Project B"
Project A has no externals saved into the project file. Project B does have externals saved into the project.
If you open Project B while Project A is already open, all of the externals from Project B will get saved into Project A.
Excerpts from our chat on Slack:
Oh interesting... So I have a project that I use for testing all day long called Sandbox.rw8. Its almost always open on my Mac. Its Externals library is my screenshot from above. I created a new project file. This new project had a blank Externals library. When I closed and reopened Sandbox.rw8, the new project file all of a sudden got every External from the Sandbox project. Since I have Sandbox.rw8 project open all of the time... When I open customer project files, their externals get stored into the Sandbox project.
Hmmm… I think it's probably not quite that simple… but perhaps that's possible. I should look into it more closely. It's a bit of complex thing, unfortunately, which is why I don't bother trying to explain it to people. The challenge is that we only sometimes get to know what partial/externals are inside of a project. When every page is loaded, we can say for sure that we know the extent of what's in a project. But mostly people open a project, look at a few pages, publish those pages. In that case only a few pages get loaded. If you delete a partial during that sort of use-case, we can't actually delete it from the project. We have to keep it around, just in case it's in use by some of the pages that aren't loaded into memory. However, these things are not really supposed to jump from project to project. If that's happening it's some type of weird bug.