floccusaddon / floccus

:cloud: Sync your bookmarks privately across browsers and devices
https://floccus.org
Mozilla Public License 2.0
5.56k stars 235 forks source link

bookmarks order is wrong #1110

Closed lazymonkey2 closed 1 month ago

lazymonkey2 commented 2 years ago

Which version of floccus are you using?

4.12.0

Sync method

{"label"=>"Google Drive"}

Which browser are you using?

chrome 100.0.4896.75 and edge 100.0.1185.29

Which version of Nextcloud Bookmarks are you using? (if relevant)

No response

Which version of Nextcloud? (if relevant)

No response

What kind of WebDAV server are you using? (if relevant)

No response

Describe the Bug

the order of the bookmarks is wrong. I noticed this in the bookmark toolbar, which contains most of my bookmarks. on chrome I have bookmarks sorted in a certain order, and on edge they are not in the same order (but as far as I know all the bookmarks are correctly synchronized).

Expected Behavior

I want to have the same bookmark order in chrome and edge. If I add a new folder or bookmark, and reorder manually my bookmarks on chrome I expect that the same order will be synchronizrd to edge (and viceversa).

To Reproduce

I believe that the issue is floccus not working correctly on edge. Synching between chrome browsers seems to work correctly.

Here is a screenshot of bookmarks on chrome: chrome

And here is for edge: edge

On edge the "windows" folder is ok, but the "wls" folder is not: it should be next to "windows". I had issues too with the placement of the three bookmarks on the right.

Please note that the "tj cookie" is a special chrome bookmark: chrome://settings/content/all?searchSubpage=tj-&search=cookie that I use to easily delete the local cookies on my pc (maybe this could be a problem while syncing?).

The other two bookmarks are links to pages of an app running on my pc, and they are similar to this one: https://tj-xxxxxxxxxxxx:9447/srv-rest/login.html

I attach the anonymozed logs for chrome and edge.

chrome.zip

edge.zip

Debug log provided

marcelklehr commented 2 years ago

Mh. Does it help to "download & override once"? (Only try if all browsers are in sync already.)

lazymonkey2 commented 2 years ago

I've done the download and override, but it didn't fix the order. however in the logs there is this error:

2022-04-06T09:30:13.716Z Failed to execute REORDER: Failed to reorder folder 24909: Index out of bounds. Moving on. 2022-04-06T09:30:13.716Z [b4bc489c94b9919ac857078fbfd423ea4bb30ba7489abcbf14374f9e49f9b5c9] 2022-04-06T09:30:13.843Z Failed to execute REORDER: Failed to reorder folder 24920: Index out of bounds. Moving on. 2022-04-06T09:30:13.843Z [bc1b1f1380c84383540224c8fd3ecc1f43aebf8ffc56edbd33ec37e1e813e37c] 2022-04-06T09:30:13.974Z Overriding title of built-in node 1 Favorites bar => Bookmarks Bar 2022-04-06T09:30:14.053Z onSyncComplete 2022-04-06T09:30:14.268Z No changes to the server version necessary 2022-04-06T09:30:14.764Z Successfully ended sync process for account Google Drive: bookmarks.xbel

I think that in case of errors like "Index out of bounds" floccus should give a warning to the user, not fail silently.

I have attached the logs (I have done the override two times, so there are two logs) anonymized_logs_after_override.zip

The "wls" folder in the log is this: 6c6657c0016d678488b8e91d28d5876935025302eb3e7d790f239ee2f52002a2

lazymonkey2 commented 2 years ago

I have investigated a little, and have found differences in the bookmarks of edge and chrome. 1) on edge in the folder 24909 and 24920 there are two missing bookmarks, which are present in chrome. Maybe during the sync these two bookmarks are detected, but edge fails to create them, and then I get the index out of bounds error, and the reorder could be failing because of that. 2) for unknown reasons in chrome there is a bookmark "edge://policy/" that is missing in edge! Since it starts with edge:// it was added in edge for sure, then it was synced to chrome (possibly in a previous version of floccus that didn't block these special bookmarks) and then I don't know what happened but it's strange that now it is missing in edge. Probably there could be similar issues for special bookmark for Brave, Vivaldi, and others.

FrankBKK commented 2 years ago

I have the same problem - I use the Firefox bookmark toolbar on my main pc as upload only reference and all other pc and browsers (Firefox, Opera, Chrome, Edge) as download only so they are in sync with my main browser - since the latest Floccus updates the sorting is all messed up on the download clients and I had to resort to another bookmark sync and disabled Floccus auto-sync. Hope this can be fixed soon ...

pinpontitit commented 2 years ago

Same for me. Sometimes after sync, the bookmarks on the downloading platform are all messed up. As I dont have so many, I sort them manually but if I had a lot I would be unhappy.

lazymonkey2 commented 2 years ago

In my case after sync there are some missing bookmarks. I suspect that the wrong order is a consequence of these missing bookmarks. Can you open the logs and look for some error like "index out of bounds exception" ? Maybe you could also upload here your anonymized logs, to help the author resolving the issue.

pinpontitit commented 2 years ago

Ok here's the log : floccus-4.13.1-2022-05-01.log

but now I am certain: I don't have any bookmark that is deleted, but the bookmarks are sorted differently sometimes.

Once again a bookmark which in my browser I did put in fifth position, had become first position in Android. The bookmark was in last position in my browser(because I had just saved it), and I decided to manually put it in fifth position. When I synced in Android the bookmark appeared in first position.

And now on my browser, because of the sync mistake on android, the bookmark is also in first position.

but all the other bookmarks are good(I think... i was focused on this one)

Generally the positions are respected and there's only one at a time, when I sort in my browser, that randomly changes position in Android.

thats strange.

More details here: https://github.com/floccusaddon/floccus/discussions/1091#discussioncomment-2667502

Eyion commented 2 years ago

So has the problem been solved

pinpontitit commented 2 years ago

It happened again tonight. I opened Floccus 10 min ago and discovered that the bookmarks order had changed since I had opened it maybe 20 minutes ago. So thats why I did notice the change.

I'm pretty sure what happened is: the 2 last bookmarks on my bookmark list were moved in first position. I did add those bookmarks yesterday in my computer browser so they were in last position of my toolbar.

Now they are in first position of (Android) bookmarks, so I guess that tomorrow when I will sync my computer browser floccus, they will be moved to the first position of my toolbar.

I am sure they were at the end in browser. But I am not sure they were already synced in Android, and after a second or third sync, Android moved them to first position. Or if they were'nt synced and the first sync made them appear to first position.

I wish I had look with more attention... but thats life.

I cannot provide debug logs for the reason stated in my other issue #1181

thanks

lazymonkey2 commented 2 years ago

I tested again using v4.14.0 but still doesn't work. After sync I also have missing bookmarks, but I don't know if the wrong order is related to these missing bookmarks.

pinpontitit commented 2 years ago

Happened yesterday:

I spent all my time in Chrome and added some bookmarks.

At the end, I went on Firefox and, as intended floccus automatically synced.

Here's what was my Bookmark bar in Chrome: signets originaux chrome~2.png

And here's what was synced in Firefox: signets apres sync sur firefox.png

Same number of bookmarks.

One bookmark ("MDN") was replaced by "gitflow commands". So now I have twice the same bookmark " gitflow commands", and a disappeared MDN bookmark.

And of course the order isnt respected.

I forgot to download log yesterday, if I go download today will it still contains infos about yesterday ?

marcelklehr commented 2 years ago

One bookmark ("MDN") was replaced by "gitflow commands".

That's concerning. Did the URL also change on this bookmark or is it still pointing to MDN?

I forgot to download log yesterday, if I go download today will it still contains infos about yesterday ?

You can try. It might not contain yesterday's entries anymore.

Can you check whether your XBEL file also contains the mistakes?

FrankBKK commented 2 years ago

same problem here - the sorting is just garbled up - I sync between many PC (with one being the master) and I get now different results on different PC - really annoying - as a result (hopefully) temporarily I now have to use another sync SW

FrankBKK commented 2 years ago

btw - there is an easy way to test that - in the bookmark toolbar of any browser add a new entry and rename it with the current date - its easy to spot when you sync/download on another PC that it changes position - happens on 100% of my computers

marcelklehr commented 2 years ago

Thanks! I will try to replicate.

marcelklehr commented 2 years ago

I was able to reproduce and find the bug.

marcelklehr commented 2 years ago

The problem was only present in the root of the synced folder due to a copy-paste error :see_no_evil:

marcelklehr commented 2 years ago

I will do a release shortly.

FrankBKK commented 2 years ago

so glad that you could fix it - look forward to the update so I can use it again - except that bug it is a great tool and better than any other sync utility I tried so far

pinpontitit commented 2 years ago

The problem was only present in the root of the synced folder due to a copy-paste error :see_no_evil:

Hi The disorder of bookmarks continue happening for me in the root folder (i.e. "Bookmarks bar" for me).

I'm quite sure the Android version of Floccus is in cause. I can add, remove, sync from one browser to another browser, without the order being change. But sometimes after syncing with Android, if I come back to browser, the last 5 bookmars on my bookmark bar comme yo the front.

It seems to happen after syncing in android, directly the next sync on browser.

Maybe it happens only when new bookmarks were added, if they were old bookmarkd the order is not compromise.

I'm not 100℅ sure but I'm sharing anyway if it can help debug.

Can I ask you something: which file contains the code responsible for syncing and sorting bookmarks when syncing in Android ?

thanks

marcelklehr commented 2 years ago

I'm not 100℅ sure but I'm sharing anyway if it can help debug.

Thank you! I'm happy about any hints and help!

I'm quite sure the Android version of Floccus is in cause.

Does it help to "sync down" once on Android to get the intended order onto your android device and then set sync strategy back to merge?

which file contains the code responsible for syncing and sorting bookmarks when syncing in Android ?

Technically, the code is exactly the same on android as in the browser:

The bookmarks tree is loaded into memory first. Then the sync algorithm compares the server tree and the local tree and computes the changes to make to them.

marcelklehr commented 1 year ago

ping @pinpontitit

pinpontitit commented 1 year ago

Hi 😀

Does it help to "sync down" once on Android to get the intended order onto your android device and then set sync strategy back to merge?

I never tried because I was affraid to lose the new bookmarks added to Android if I did that...

If I add bookmarks in Android, and then after, in order to sync Android with browsers, I start by doing a "sync down" (or pull), am I right that this will erase all the new bookmarks ?

By the way, the bookmarks order problem happened again few days ago: I spent most of the time on my computer, syncing between firefox and chrome, and then when, after almost a month without syncing with my phone, I synced in Android, all the bookmarks were saved in disorder. All of that to say I'm quite positive its an Android sorting problem.

marcelklehr commented 1 year ago

If I add bookmarks in Android, and then after, in order to sync Android with browsers, I start by doing a "sync down" (or pull), am I right that this will erase all the new bookmarks ?

Ah, that might be a problem, yes :/

pinpontitit commented 1 year ago

Sorry, Is there something I could do to help debug this ? Any procedure you're thinking of ?

Would it help if I did the same thing (adding bookmarks in Android and browsers without syncing Android, during 1 week, and then sync in Android) and if the problem occurs again, post here the logs (even if I doubt there's infos in the logs about the ordering process) ?

marcelklehr commented 1 year ago

It could help, yes, make sure to upload the logs to my nextcloud, though, if you want privacy ;)

neoKushan commented 1 year ago

Hi, I am not sure if this is related or not to the above issue. I am a new user to Floccus, syncing via nextcloud. My intention is to sync bookmarks between Firefox and Chrome.

Everything works but folders are out of sync. Bookmarks themselves are in the correct order, but any folders are going to the bottom instead of their correct order.

The bookmarks within folders are in the correct order, it's just the folders themselves.

I am not syncing with Android or anything yet.

marcelklehr commented 1 year ago

Hi @neoKushan, please open a new issue and fill out the details about your setup so I can help better and judge if this is indeed a duplicate :)

neoKushan commented 1 year ago

@marcelklehr Thanks for the response! Weirdly enough, this issue has just abruptly fixed itself. I promise I didn't do anything different, I had given up trying to fix it while waiting for a response and during the next automated sync it just reordered everything. Apologies for the bit of a time waste, but if it reproduces I'll open a new ticket.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

lazymonkey2 commented 1 year ago

Still not fixed, I have experienced this issue just last week. Please reopen.

pinpontitit commented 1 year ago

@marcelklehr

It could help, yes, make sure to upload the logs to my nextcloud, though, if you want privacy ;)

Yes still not fixed. It happened to me twice this week.

So I have new informations:

On the contrary of what I was saying before, it seems to have nothing to do with the Android App: I didnt use the app so much this time, and definetly didnt used it since 2 or 3 days.

But I am currently using my two desktop browsers Chrome and Firefox, everyday, at the same time, jumping from one to another every 5 minutes or so (I know that's strange but I do that for various reasons).

And while jumping from one to another, I might save a bookmark in Chrome, then save another one in Firefox, etc. (So maybe this problem is related with the famous 30minutes timestamp/lockfile stuff, but I don't really know.)

So the first time happened earlier this week. The last 3 bookmarks on my toolbar where moved to the beginning of the toolbar. I think they were the last ones, I am not 100% sure, but I'm positive that those bookmarks were saved very recently, like the same day. It was 3 Amazon.com bookmarks, in case you can see them in the logs, but nowaday I deleted them because I didnt need them anymore.

However it just happened again for the second time, just now, no more than 1 hour ago, maybe 2h ago. So when I noticed, I directly donwloaded the logs from both Chrome and Firefox, and sent them to the link you provided.

Let me know if you received them!

Again, it's the three last bookmarks that were moved and became the three first bookmarks on my toolbar. the bookmarks are: -github: shadowwalker/next-pwa -github: next-js/example... -a Medium.com article about building a pwa with Next.js

They still are in first position in case you can see them in the logs.

EDIT: bookmarks n° 940, 941, 942

It seems to happen only with the bookmarks on the toolbar, and not the one on the folders, but I am not 100% sure. (So I am thinking to move everything in one folder on the toolbar, or just learn how to use quickly the bookmark menu, maybe with Sidebar or something)

Another important thing: I always thought that the problem was only the 3 last bookmark that go to first position. But it's not only that because I also noticed, during this week, that one of the last bookmarks on my toolbar, like the third or fourth bookmark before the last one, was something I saved some months ago, the bookmark is this one:

" L’explication des opérateurs de recherches Google | Brandwatch " exactly wrote like that with the spaces before and after. (EDIT: the spaces are automatically deleted by github) And the link: https://www.brandwatch.com/fr/blog/lexplication-des-operateurs-de-recherches-google/

EDIT: it's the bookmark n° 826 on the logs

And before this bookmark, there are a lot of bookmarks I saved recently. So i knew, and anyway I remember, that this bookmark is a very old one.

So this means that, not only the three last bookmarks, but also other bookmarks are impacted by this problem of order changing. (Or I'm imagining this, and I moved this single bookmark by mistake to the end of the toolbar, but I don't remember doing it...) So the "pattern" of this bug is not clear to me.

However it's nice to observe that this pattern of 2 or 3 last to first place is repeating itself, at least in my case, and like I said it happened twice this week.

Hope this helped!

pinpontitit commented 1 year ago

@424344

Still not fixed, I have experienced this issue just last week. Please reopen.

Do you remember how it happened ? Same as you described before ? Was it similar with me (the last 3 bookmarks to first position) or something else ? In the Toolbar or in another root folder ? Folder order was it impacted also, or only bookmarks?

Thanks

lazymonkey2 commented 1 year ago

This issue has recently happened while syncing from firefox to gdrive. I have noticed it in the bookmark toolbar. I have configured firefox to only upload (push up), and chrome to only download bookmarks (pull down). so there is no merge of bookmarks. I think that the issue is when reading bookmarks and generating the xbel file, because it seems to me that the bookmarks file on gdrive has wrong bookmarks order: in firefox there is a folder which is the first in the bookmarks bar (far left), while in the xbel file it is found in the middle of the file, not at the start. I believe this is wrong.

pinpontitit commented 1 year ago

I've checked the log files I sent you @marcelklehr and I noticed that it only stores the last sync that happened. On the log file, I can see that the 3 first bookmarks already are the ones that were moved from end to beginning of the bar, 1h hour before or so. So I don't know how it can help you to debug...

If it happened one hour ago, and by the time I notice, others sync happened, it means that the log file was overwritten with the new sync.

It would be better if the log file stored by default many syncs, no ?

EDIT: I also noticed that the bookmarks at the beginning of the bookmark bar have "parentID = 1", but the bookmarks at the end of the bookmark bar have "parentID = 0", while they both are on the same root folder with the ID "#1", apparently... Same thing for the folders: a folder I created recently and that you can see at the very beginning (#882 "Quick") has parent ID 1, whereas a folder I created some months ago (#8 "laCapsule") have parentID 0.

Could it be that floccus consider the root folder as #1 or #0 depending if I save a bookmark on Chrome or Firefox ?

pinpontitit commented 1 year ago

Ok it happened just now and I downloaded directly the log (floccus-4.17.1-2022-11-12). I sent it to you just now.

I was making tests to see if renaming a folder in Firefox would also rename it in Chrome. So, in Firefox, I renamed the folder that was called "Quick" (#882) by "Quicc". (This folder is at the very beginning of the old logs I sent you)

Then I went on Chrome and changed Floccus behavior with "Pull Down".

The folder was immediatly moved to the penultimate position of the Bookmark bar, and was correctly renamed Quicc.

You can see it in the new log as "Quicc" #891.

It seems that renaming a folder also changes his ID, and also all the ID's of the bookmark it contains.

Why ? Is it necessary ?

Also the parent ID of this folder that was "1" changed and became "0".

marcelklehr commented 1 year ago

It seems that renaming a folder also changes his ID, and also all the ID's of the bookmark it contains.

That's not the case from the logs you sent me. The reason is that items have different IDs on each device and floccus maps between them. So, it's important to know if it's a local item or a server item to judge whether the ID changed.

marcelklehr commented 1 year ago

In your case for some reason no mappings / cache were available to indicate that Quick and Quicc referr to the same folder, so Quick was removed and Quicc was created. And since they aren't associated, floccus doesn't know to put the new folder at the place of the old folder.

marcelklehr commented 1 year ago

It would be better if the log file stored by default many syncs, no ?

That's tough as the logs are quite lengthy and I'm already happy the browser allows storing logs from one run :/

lazymonkey2 commented 1 year ago

Hello, any news? I'm still experiencing this issue when syncing between different browsers (using gdrive) ans floccus 4.18.1

As an example I sync from edge (push up) to firefox (pull down) and for some bookmarks in firefox I get different order from the one in edge. Then I sync (pull down) in chrome using the same xbel on gdrive I used before (the one from edge) and in chrome I get bookmarks with different order than the one in edge, but this time the (wrong) order in chrome in different from the (wrong) order in firefox.

so now I have three set of bookmarks in edge, firefox and chrome, all with different order.

maybe there is some difference when parsing the xbel file on the various browsers?

lazymonkey2 commented 1 year ago

I just checked the firefox console (ctrl+shift+j) and I see many logs like this one:

10:34:19.448 2023-01-25T09:34:19.448Z Failed to execute REORDER: E012: Folder ordering is missing some of the folder's children Moving on. background-script.js:2:22822

could this be related to this issue?

pinpontitit commented 1 year ago

Yes the problem was not solved for me, so I changed my way of working: Instead of putting a lot of bookmarks directly in the root folder (which was Bookmarks Bar in my case), I created only one Folder in the root (still Bookmark bar), and I put all the rest inside this folder.

And I think everything keeps the right order inside this folder. I think... I am not 100% sure.

I think it was related -or with working on the root (Bookmark bar or whatever folder you choose as root) -or with working specifically on the Bookmark Bar (and the way each browser is handling the Bookmark Bar ?)

pinpontitit commented 1 year ago

Can I ask you what is the root folder you chose in the Floccus settings ? And is the disorder only happening in the root folder, or also on each subfolder ?

lazymonkey2 commented 1 year ago

I'm syncing the toolbar only. I have many folders in the toolbar, and each folder has many subfolders and bookmarks. I don't want to move all my folders and bookmarks into a single folder in the toolbar. I find it incovenient for me.

Are you using floccus to sync between different browsers? I'm currently syncing from edge to firefox and to chrome, but sometimes I change the "source" browser. In all cases I got wrong order, in both the root folder and in subfolders. Sometimes it affects only a few bookmarks, and sometimes a "block" of bookmarks (like a number of bookmarks appears to be moved in a different location in the bookmark tree).

pinpontitit commented 1 year ago

I don't want to move all my folders and bookmarks into a single folder in the toolbar. I find it incovenient for me.

Indeed...

Are you using floccus to sync between different browsers?

Yes between Firefox and Chrome. Both are in "Merge" config.

In all cases I got wrong order, in both the root folder and in subfolders.

Ok so the content of your subfolders is also in disorder. That's odd, I don't think it happened to me (I never noticed it).

lazymonkey2 commented 1 year ago

just happened again (v4.18.1): I have created a new folder in the toolbar as first folder (folder0), which contains other 4 folders (folder1, folder2, folder3, folder4). I did a push up on edge, and a pull down on firefox. now firefox has the folder0 in the toolbar, in the right place, but the sub folders are in reversed (folder4, folder3, folder2, folder1). the contents of the folders are only bookmarks, and are in the correct order. I also did a pull down on chrome, and this time the folders were correctly synchronized (not always the case).

marcelklehr commented 1 year ago

I'm sorry for the delay. I've tried to reproduce this. I'm unable to. (I didn't try with the same browsers, but that shouldn't be an issue, I think. The code is the same.)

Peek 2023-03-20 15-08

marcelklehr commented 1 year ago

I didn't try with the same browsers, but that shouldn't be an issue, I think. The code is the same.

hah. M*th*rf\ck.

Screencast from 20.03.2023 15:17:46.webm

lazymonkey2 commented 1 year ago

so is it fixed?

marcelklehr commented 1 year ago

The issue you reported here https://github.com/floccusaddon/floccus/issues/1110#issuecomment-1413400949 is fixed now. The next release will have the fix. :)