Arlen22 / TiddlyServer

v2 - A static file server that can also save files and mount TiddlyWiki folders
https://arlen22.github.io/tiddlyserver/
MIT License
257 stars 36 forks source link

Sync error while processing save of '$:/StoryList #121

Open alanfinger opened 3 years ago

alanfinger commented 3 years ago

Hi, I just moved to from Mint 19.1 to Mint 20.1 and installed the latest Node.JS and TiddlyServer applications (2.2.0-beta-4). The Tiddlers directory is unchanged and my configuration file is attached. tiddlyserver .json.removethis.txt

Starting TiddlyServer using: tiddlyserver --config tiddlyserver.json The following error occurs every few seconds

syncer-server-filesystem: Dispatching 'save' task: $:/StoryList Sync error while processing save of '$:/StoryList': Error: ENOENT: no such file or directory, open '/usr/local/lib/node_modules/tiddlyserver/datafolder/tiddlers/$__StoryList.tid'

Bug or user error?

Arlen22 commented 3 years ago

Can you check whether this file exists? /usr/local/lib/node_modules/tiddlyserver/datafolder/tiddlers/$__StoryList.tid.

All relative paths in the config file are relative to the config file, not the working directory, so make sure that you have that properly configured and in the correct place.

alanfinger commented 3 years ago

Hi Arlen, Thanks for the quick response.

My directory tree looks like this:

home/Dropbox/Golden Age Radios wiki tiddlers (directory that has been serving my tiddlywiki content) tiddlyserver.json

Currently my tiddlyserver.json contains:

{

"tree": "./tiddlers", "debugLevel": 2, "bindInfo": { "bindWildcard": true },

"$schema": "./settings-2-2.schema.json" }

I can execute

@.***:~/Dropbox/Golden Age Radios/wiki$ tiddlyserver --config tiddlyserver.json

and I no longer get an error but, when I put "localhost:8080" in my browser, I get a file listing of my tiddlers instead of the tiddlywiki itself. How do I get the server to distinguish between static content and a tiddlywki? The config documentation is not very clear on this.

Thanks, Alan

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Saturday, July 31st, 2021 at 6:50 PM, Arlen22 @.***> wrote:

Can you check whether this file exists? /usr/local/lib/node_modules/tiddlyserver/datafolder/tiddlers/$__StoryList.tid.

All relative paths in the config file are relative to the config file, not the working directory, so make sure that you have that properly configured and in the correct place.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

Arlen22 commented 2 years ago

I apologize for dropping this. Obviously the first solution is to put the wiki down one level with "tree": { "wiki": "path" } rather than just "tree": "path", but that was supposed to work properly. However, if that's what you want you should probably just use the Node server directly, as there's not much difference between the two. The only difference would be the cookie based login on mine, If that's what you're going for let me know, otherwise I'll drop this for now until I get time to work on it.

Arlen22 commented 2 years ago

Oh, I just realized part of the problem. Your config file needs to refer to the root data folder where the tiddlywiki.json file is, not the tiddlers folder inside it.

alvorithm commented 2 years ago

Hi @Arlen22

I am puzzled - I have the same error.

I just started using TiddlyServer and have no problems with single-file tiddlywikis. I wanted to create a new server wiki (files in a folder) so I generated tiddlywiki.info via tiddlywiki Office --init server. Here's the relevant part of my tree directive:

   "tree": {
    "my": "../../Sync/My", 
    "projects": {
    "grok": "~/Sync/TiddlyProjects/Grok",
    "office": "~/Sync/TiddlyProjects/Office" // <-- here
}

(everything else is like in defaults except backup ~/tmp/backups, my config file lives at .config/tiddlyserver/tiddlyserver.json).

I find the file $__StoryList.tid in Office/tiddlers but not in /usr/local/(...)/datafolder/tiddlers, with content

created: 20220102160216330
list: [[Saving test]] GettingStarted
modified: 20220102160216339
title: $:/StoryList
type: text/vnd.tiddlywiki

(the wiki saves fine, cf. Saving test).

Finally, if I create an empty $__StoryList file in /usr/local/(...)/datafolder/tiddlers and give it user permissions, the error message changes to:

Sync for tiddler [[$:/StoryList]] will be retried with encoded filepath: %2Fusr%2Flocal%2Flib%2Fnode_modules%2Ftiddlyserver%2Fdatafolder%2Ftiddlers%2F%24__StoryList_1.tid

(new filename with _1 appended to the basename).

Thanks for reading so far, Álvaro.

marksweston commented 2 years ago

So I was seeing the same errors after trying to set up TiddlyServer on an Ubuntu 20.04 server. Originally I had installed nodjs through apt-get, but that installs a pretty old version of both node (10.19) and npm (6.something).

I removed the packaged versions of node / npm and reinstalled the latest versions through asdf. That cleared the errors.

SlackerJack commented 2 years ago

Had this issue too. Bit weird. Why's it trying to sync there? I ended up uninstalling from global. npm uninstall -g tiddlyserver

Then I did a local install creating a node_modules directory sibling w/ my wiki directories and the config.json. No more sync errors npm install tiddlyserver

Less convenient now since tiddlyserver won't be in your path. It'll be in: node_modules/.bin But no more errors every few seconds. And you can add it to your path. Or script it etc...

Arlen22 commented 2 years ago

I'll check this. It sounds like the blank data folder that gets copied in when you click the new datafolder button is somehow being loaded, which isn't supposed to happen.

SlackerJack commented 2 years ago

When you say new datafolder button do you mean just clicking the link to open an empty wiki? Or is there an actual button? If there is a button I haven't seen it. And if it's supposed to auto copy a blank wiki that didn't seem to work for me.(portable or global) I used tiddlywiki init server to create the blank. I also ended up redoing everything and following your portable install instructions and that works perfectly. No problems at all been using it for a bit now hosting mixed single file / server mode. BTW on the portable install what does --save-exact do?

Global install I get the sync error, but portable works great. Thank you! Awesome server for going crazy with too many tiddlywikis :)