Tiddlywiki5: [BUG] github saver not creating new commits

Created on 6 May 2020  路  12Comments  路  Source: Jermolene/TiddlyWiki5

Describe the bug
Cannot save to github with personal access token - no new commits

To Reproduce
Steps to reproduce the behavior:

  1. $:/ControlPanel
  2. click on Saving tab
  3. github saver
  4. add all the required fields - including the access token (with all the permissions enabled)
    Screenshot 2020-05-06 at 13 34 22
  5. No new commits appear in the PRIVATE repository

Expected behavior
New commits should appear when creating and saving a new tiddler

Desktop (please complete the following information):

  • OS: macOS Mojave 10.14.5 (18F132)
  • Browser Chrome 81.0.4044.129 (Official Build) (64-bit)
  • Installation with node.js
    tiddlywiki --version
    5.1.22

All 12 comments

  • Installation with node.js

If you want to use the github saver, you can't run your wiki from a 3rd party server.

It needs to be served by github as a single file wiki.

  • Installation with node.js

If you want to use the github saver, you can't run your wiki from a 3rd party server.

It needs to be served by github as a single file wiki.

Thank you for your reply.
I used this tutorial to locally run a server: https://tiddlywiki.com/static/Installing%2520TiddlyWiki%2520on%2520Node.js.html

Why doesn't this setup work (local tiddlywiki server with node + github saving)?
I don't understand. Is this mentioned anywhere?

The main reason, this can't work is: Same origin policy used in browsers. ...

Which basically means: You can only save to pages, where you did load content from.

The second reason is: Only 1 saver can be active at the moment. There is some discussion going on here at github, to change this. ... BUT

It will never be possible to load from localhost and save to github directly from the browser, because of security reasons. ... see "same origin policy"


It would be possible to save a file back to the node-server and the node server could push the changes to github. ... BUT nobody did implement it that way atm.

The main reason, this can't work is: Same origin policy used in browsers. ...

Which basically means: You can only save to pages, where you did load content from.

The second reason is: Only 1 saver can be active at the moment. There is some discussion going on here at github, to change this. ... BUT

It will never be possible to load from localhost and save to github directly from the browser, because of security reasons. ... see "same origin policy"

It would be possible to save a file back to the node-server and the node server could push the changes to github. ... BUT nobody did implement it that way atm.

Ahh, makes sense, thought it was passed to the server and the server did all the "magic" to git commit push.

@pmar is there a way to actually automate this? I'm fine with writing shell scripts, but not sure how to export the server version automagically to html so i can then apply a script to commit and push to github.

you may have a look at: https://github.com/OokTech/TW5-Bob Imo it allows you to start shell scripts, from within the wiki

Just out of curiosity, how is the github saver different from e.g. the tiddlyspot saver? For that one, saving from the server and local files worked fine (<=5.1.21, when the save button was still there on the server).

.. For that one, saving from the server and local files worked fine (<=5.1.21, when the save button was still there on the server).

It probably didn't. ... If you remove the username from the tiddlyspot configuration, it will use the "fallback" saver, which is the standard browser download saver. ... That's a possibility why it "looked like" it would work for both systems.

The same is true, if you remove the github token from the config. (Be aware, that you will need to create a new token at github, if you delete it.) The default saver will take over here too.

@pmario I'm almost positive it worked. I entered username and password, clicked the save button, no download prompt popped up and the changes showed up on tiddlyspot.

It certainly did and still does work for local single-file wikis in Chrome (that's how I push changes to tiddlyspot now), whereas github saving doesn't work there either. Could that be a separate issue though? Or could the same-origin-policy issue apply there as well?

I'm almost positive it worked. I entered username and password, clicked the save button, no download prompt popped up and the changes showed up on tiddlyspot.

That's the way, how it should work.


I don't know, if Chrome still allows you to save from a file:// URI to tiddlyspot. ... I don't use Chrome. So I trust you ;)

I'm pretty sure github will only let you save to github, if a file is served by github. ... Security concerns, and "same origin policy" is one of the best excuses here, because it is an issue, among other reasons to behave that way.

@Jermolene this can be closed.

Thanks @saqimtiaz

Was this page helpful?
0 / 5 - 0 ratings

Related issues

felixhayashi picture felixhayashi  路  28Comments

Jermolene picture Jermolene  路  48Comments

saqimtiaz picture saqimtiaz  路  31Comments

dufferzafar picture dufferzafar  路  27Comments

Jermolene picture Jermolene  路  38Comments