Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Noteself + TiddlyMap #282

Open
Aq32 opened this issue Apr 23, 2018 · 27 comments
Open

Noteself + TiddlyMap #282

Aq32 opened this issue Apr 23, 2018 · 27 comments
Labels
not nice Not a bug but it does negatively impact the user experience upstream This is a problem with an underlying library TiddlyMap is using

Comments

@Aq32
Copy link

Aq32 commented Apr 23, 2018

With a fresh Noteself after installing the TiddlyMap plugins and refreshing there are immediately 4 errors that show up:
syncer-browser: Sync error while processing '$:/plugins/felixhayashi/tiddlymap/misc/meta': TypeError: t is undefined
syncer-browser: Sync error while processing '$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges': TypeError: t is undefined
syncer-browser: Sync error while processing '$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic': TypeError: t is undefined
syncer-browser: Sync error while processing '$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour': TypeError: t is undefined

Firefox 60.0b14 Win10

@danielo515
Copy link

Which tiddlymap plugins have you installed ? As long as I can remember at least 3 are required

@Aq32
Copy link
Author

Aq32 commented Apr 23, 2018

Following the instructions: http://tiddlymap.org/#Installation

TW5-TiddlyMap (v0.13.4+9665)
    This is the core TiddlyMap plugin.
TW5-Vis.js (v4.17.0)
    This plugin will install vis.js which is required for the graph's rendering.
TW5-HotZone (v0.0.3)
    This plugin is necessary when you want to use the live view.
TW5-TopStoryView (v0.2.0)
    Unless you are using the zoomin or stacked story view, install this plugin to achieve a better live view experience.

I installed all the above. Noteself has it's own plugins but I installed TiddlyMap without doing anything to Noteself (eg putting in server details and connecting to a CouchDB server).

@danielo515
Copy link

That should work. I'll try tonight to check what happens. Tiddlymap is somera a special plugin, it is bigger that any other.
In any case I'm planning making a Noteself version with tiddlymap built in. Do you thing that would be useful to you?

@felixhayashi
Copy link
Owner

Hola @danielo515 many thanks for helping out here amigo :)

@Aq32
Copy link
Author

Aq32 commented Apr 24, 2018

I would be interested in something like that. Were you able to replicate this issue?

@danielo515
Copy link

Hello @Aq32 , yes I was able to replicate the issue on a brand new database.

The problem seems to be related to the optimizations TiddlyMap does on startup. Just installing the plugin does not produce any error, however, after the "optimization welcome" message the problems you said appears:

captura de pantalla 2018-04-25 a las 13 29 42

According to the error messages looks like tiddlymap is doing some funny things with tiddlers under the hood, modifying them bypassing the sync mechanism or things like that.
@felixhayashi do you recognize the tiddlers the errors mentions ? What are they for ? Can they be excluded from synchronization ?

However despite the error messages the plugin seems to work well, so you can just close those message and continue using your wiki.

@felixhayashi
Copy link
Owner

@felixhayashi do you recognize the tiddlers the errors mentions ? What are they for ? Can they be excluded from synchronization ?

@danielo515 the first Tiddler ".../misc/meta" is created by a TiddlyMap service called "caretaker" which is a "startup" module-type and is executed when TiddlyMap boots. The other tiddler is actually a shadow tiddler that is shipped with TiddlyMap.

I am not too well acquainted with the sync mechanism of TiddlyWiki. Is the rev property used for synchronisation that is stored in a tiddlers fields? that would be strange as the tiddlers should exist. Maybe there is a race condition or the sync mechanism is called to early?

@hodgigre
Copy link

Hello Daniel and Felix. Getting back to a pet project I've been working on and continue to be amazed at what you've both created on top of Tiddlywiki. I just installed a fresh CouchDB using one click install in GCP. I created a GCP load balancer with TLS on the front end talking to CouchDB via http on the usual 5984. Everything went pretty smoothly, mainly because I had been doing something similar on another project. :-) I also knew to enable CORS on CouchDB, specifically for noteself.github.io from a previous attempt a few months back where I wasted many hours on that issue. :-)

Anyhow, all looks good. Added some users on CoudhDB and was able to use Noteself online. Dragged the four awesome TiddlyMap plug-ins and everything appears to be working well except for the issues described above. On startup I get about 6 of these errors.

'$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges': TypeError: Cannot read property 'rev' of undefined

I haven't used it much yet to know if they reappear during any actions.

Did you ever happen to isolate the issue? Is it truly a non-issue?

All the best guys.

@felixhayashi
Copy link
Owner

Thanks @hodgigre :)

@danielo515 seems to be also the case for non-TiddlyMap related tiddlers (https://forum.noteself.org/t/typeerror-cannot-read-property-rev-of-undefined/63)

@felixhayashi
Copy link
Owner

@hodgigre could you please paste the tid file ($:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges) that causes the problem here as screenshot or as export?

Something like this:

2019-01-29 18 10 21

@felixhayashi felixhayashi added upstream This is a problem with an underlying library TiddlyMap is using not nice Not a bug but it does negatively impact the user experience labels Jan 29, 2019
@hodgigre
Copy link

hodgigre commented Jan 29, 2019 via email

@hodgigre
Copy link

Wish I hadn't done that from email :-) Hopefully the image links work.

@hodgigre
Copy link

Thinking I didn't provide the screenshot of what you wanted. Here is what you asked for @felixhayashi .

Not sure how to inline the images. :-(

image
image

image

@felixhayashi
Copy link
Owner

Thanks @hodgigre will take a look this week.

@hodgigre
Copy link

hodgigre commented Jan 31, 2019

Also on what I am pretty sure is a related issue, every time I start my wiki or reload and open the Map tab, I get the popup that it looks like it is the first time I've used TiddlyMap along with a couple of the rev sync popups.

And this has my map positions reset losing all my work in positioning how I wanted them. This recurs on every reload.

Just keeping you informed. :-)

@PhDyellow
Copy link

I was keen to have a working Noteself wiki with Tiddlymap too. Each project takes TW to a new level, I'm really impressed by them.

I think I managed to get it working using NodeJS, I've given instructions on the noteself forum https://forum.noteself.org/t/tw-5-1-19-noteself-and-tiddlymap-together/187

I think it works because NodeJS serves TW with Tiddlymap already configured, and then NodeJS allows tiddlypouch to inject the necessary code to work as a plugin. Tiddlypouch runs, and doesn't clash with the Tiddlymap initialization, which was only run once and doesn't need to be saved to the pouchdb database.

@meredrica
Copy link

@PhDyellow any chance you still have that file? Dropbox 404s and the issue still persists :(

@PhDyellow
Copy link

Sorry @meredrica, I don't have a blank copy around anymore. Are you able to build it yourself using the instructions?

@danielo515
Copy link

I just made some fixes on noteself and created a tiddlymap edition:
https://noteself.github.io/tiddlymap/
You can try it out but:

  • Make sure to try it on a incognito window, tyddlymap injects some configs that may not be compatible with your actual wiki
  • A plugin installed message appear on the top, but this is not true and you can freely ignore it
  • Albeit it works, seems that tiddlymap relies on some tiddlers that are not being persisted or loaded soon enough.
  • Because of previous thing, tiddlymap is always showing the welcome screen and re-creating the example nodes
  • Not production ready yet, but close

This may be related to #300
@felixhayashi would you mind to take a look and tell me wich tiddlers are critical?

@meredrica
Copy link

@PhDyellow I did, but with a different method.

What I did was:

  • Start an empty tiddly wiki in a browser.
  • Install all the plugins you want except for noteself.
  • Save and reload.
  • Do the initial setup for tiddlymap so that the popup at the start is done.
  • Save and reload some more.
  • Delete the tiddlers created by tiddlymap. If you skip this now, they are there forever.
  • Install noteself, don't run the setup yet
  • Flex your save and reload skills another time.
  • Set up noteself.

The process is a bit fragile but it works. The sad news tho: The whole system breaks if you are unlucky. I ran into a javascript error with tiddlymap and the error is persisted forever - no more live view for me. So I decided to go back to the node run version.
It's a pitty as the node server itself uses more resources than couchdb x_X.

@danielo515
Copy link

@meredrica thanks for the write up. I'll tro to create a static version containing those tiddlers baked in with also NS installed. I'll update here

@meredrica
Copy link

I checked in my file here: https://github.com/meredrica/noteself-tiddlymap

@rkique
Copy link

rkique commented Jun 24, 2020

@danielo515 This might not be serious, as I'm a new TiddlyWiki user and it's possible I made a common mistake.

  1. I had an old Noteself Wiki with only a few style plugins and TiddlyMap. TiddlyMap worked at first but then started sending error messages.
  2. I downloaded the experimental compatible Noteself that you linked above and imported my old TiddlyWiki as HTML.
  3. All tiddlers appeared to import successfuly.
  4. When I tried to edit a tiddler, it displayed the message "Undefined widget 'edit-comptext'" under the tag name section and where the edit section of the tiddler should be.

TiddlyMap itself works well, I just can't edit my tiddlers.

@danielo515
Copy link

Yeah, sorry about that @rkique
The problem is that TiddlyMap relies heavily on a lot of synchronous features, and wit noteself almost all those features are asynchronous, so it is very hard to make them work together.
I'm still working on the integration that, as you discovered, it's a bit unstable.

@meredrica
Copy link

@danielo515 any news on this?

@danielo515
Copy link

@meredrica I tried all that I could think and nothing made tiddlymap work. In general, I think it can not work with anything that is an asynchronous store, at least not with the current paradigm TiddlyWiki has

@adelorenzo
Copy link

Also on what I am pretty sure is a related issue, every time I start my wiki or reload and open the Map tab, I get the popup that it looks like it is the first time I've used TiddlyMap along with a couple of the rev sync popups.

And this has my map positions reset losing all my work in positioning how I wanted them. This recurs on every reload.

Just keeping you informed. :-)

I am having the same issue, unfortunately.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
not nice Not a bug but it does negatively impact the user experience upstream This is a problem with an underlying library TiddlyMap is using
Projects
None yet
Development

No branches or pull requests

8 participants