Skip to content

Conversation

Leilei332
Copy link
Contributor

Closes #9221

Copy link

netlify bot commented Aug 18, 2025

Deploy Preview for tiddlywiki-previews ready!

Name Link
🔨 Latest commit 2ba328c
🔍 Latest deploy log https://app.netlify.com/projects/tiddlywiki-previews/deploys/68a2ca071890ae0008e182f4
😎 Deploy Preview https://deploy-preview-9265--tiddlywiki-previews.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

Confirmed: Leilei332 has already signed the Contributor License Agreement (see contributing.md)

@Leilei332
Copy link
Contributor Author

The problem of using a custom layout is that it will cause conflict if user's tiddlywiki contains the $:/layout tiddler. Though we can move $:/layout to the plugin, the layout still changes after the user imports the tiddlers, and the "Download upgraded wiki" screen won't show up, which breaks consistency.

@Jermolene
Copy link
Member

The problem of using a custom layout is that it will cause conflict if user's tiddlywiki contains the $:/layout tiddler. Though we can move $:/layout to the plugin, the layout still changes after the user imports the tiddlers, and the "Download upgraded wiki" screen won't show up, which breaks consistency.

It is an interesting problem. Perhaps it would require some custom JS in the upgrade plugin to accomplish this.

The issue is of course broader, in that we have problems if the wiki being upgraded overwrites any shadow tiddlers required for the operation of the upgrader itself. It would be interesting to explore whether we could build an upgrader that somehow isolated the tiddlers being upgraded. It would be straightforward to store the incoming tiddlers in a temporary plugin that has a custom plugin-type. We would need a means to modify the tiddlers within a plugin. For saving, we would need a way to reuse the existing templates while using a custom store area that extracts the payload tiddlers as subtiddlers from the temporary plugin.

If it were feasible, I think this would be a very worthwhile improvement for v5.4.0. The current behaviour of seeing your customisations (mis-)applied to the upgrader itself is jarring and unexpected for users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] Use self-contained custom layout for upgrader

2 participants