Hi everyone!
I had some issues upgrading from 5.1.13 to 5.1.14 on my TiddlyWiki that I managed to resolve - it really came down to a mistake that I made when I converted my wiki from a standalone version to a node-based version. I wanted to share the process with the community in case others have encountered this issue, or encounter it in the future.
Symptom: After running "npm update tiddlywiki" and verifying that "tiddlywiki --version" output the correct version, I got this error:
$tw.utils.replaceString is not a function
Solution:
It turns out that when I imported my old standalone HTML file into a node-based wiki, this is how I did it:
$ tiddlywiki new-wiki --init server
$ tiddlywiki new-wiki --load ~/my-old-wiki.html --savetiddlers '[all[]]' out
$ rsync -ar new-wiki/output/out/ new-wiki/tiddlers/
That "[all[]]" filter was my downfall, because it imported tiddlers like $:/core into my tiddlers directory, and so my wiki was trying to use the 5.1.13 $:/core tiddler after upgrading. Removing $:/core (and a few other tiddlers, such as plugins, themes, and state files) fixed my issue.
Another thing I realized that I missed when converting my wiki was that if you want to install a core plugin or theme on a node-based wiki, do
not drag and drop it into your wiki! Add it to
tiddlywiki.info instead - that way, upgrading your tiddlywiki NPM package will automatically update your plugins and themes.
I hope that this little postmortem helps others in the future!
-Rob