Unlimited number of days for note history feature

I’d like to be able to keep history forever but currently I am forced to specify a number. I tried to enter a very big number (e.g. 36500 to keep history for 100 years) but this is only possible in the desktop application. On Android, the maximum configurable number is 730 days (2 years is way too less for me).

4 Likes

I'd like this, too.

What's the current behaviour though, does it sync history? Will history get deleted if I sync to my phone? :thinking:

2 Likes

I'm interested in this as well.

Looking through the code, it appears this should be fairly simple to implement.

Here, it should be possible to allow "0" as a valid option (since it won't conflict with the "revisionService.enabled" setting).

Then somewhere around here, you should be able to add an if statement like:

if (Setting.value('revisionService.ttlDays') !== 0)

Then if you have note history enabled, but the retention set to 0 days, notes should be kept forever.

The outstanding issues would then be to update the documentation, and ensure backwards compatibility in some way (since if you currently set note history to 0, old revisions get deleted immediately).

4 Likes

I agree, it would be very sensible to offer an unlimited history retention option.

The maximum appears to be 730 days on the iOS mobile app too. I'm guessing this number was derived from being 2x365 (i.e. two years) rather than being a hard technical limit?

My plan for a workaround is to export a backup copy of my notebook every 2 years, and then in the event of needing to review history, I would restore a backup to a clean Joplin instance and inspect it manually.

2 Likes

I don't believe that it has changed since last year, so keep in mind, note history is not included in the Jex backup/export.

3 Likes

I guess the thing to do is take a .tar.gz of .config/joplin-desktop

2 Likes

I am considering switching from Standard Notes to Joplin, I just installed Joplin and registered here to comment that indeed I also would like to be able to keep my full note history. Do the Joplin maintainers accept PRs?

Changing the upper limit is easy, but the more difficult task would be to update the UI to change this on mobile. It's already almost unusable so if we increase the limit to 999999 for instance, it's going to be hard to get the slider working. But suggestions are welcome.

I would say either a new menu item (keep indefintely) that, when ticked, greys out the slider item. Or allow the value to be edited and use something like "-" in place of the number. Or just make a position below "1" with the infinity symbol.

Wouldn't it be better, at least in terms of accessibility, to replace the scrollbar with a simple text field to input the desired number? The current scrollbar is often unusable, e.g. by an older person who's got problems with precise finger presses, or when used on a very small display.

1 Like

Changing the upper limit is easy, but the more difficult task would be to update the UI to change this on mobile. It's already almost unusable so if we increase the limit to 999999 for instance, it's going to be hard to get the slider working. But suggestions are welcome.

I'm guessing that maybe it can be solved with techniques like paging, or before that, can't solve this problem with virtual scrolling or the like?

I agree. A slider would make more sense for a setting that needs to be changed often and where the exact value of a setting isn't important (e.g. a color value).

In this case, you likely enter the number once and leave it. The slider doesn't show its usability power here, I'd say.

I think the issue is that last time I checked there wasn't any good component to input large numbers, with validation, etc. Which means we'd have to build our own. The good thing with a slider is that min/max values and steps are built-in.

I think a simple workaround could be just adding + and - buttons next to the slider.

I'm writing here again, because at this very moment I'm trying to set the number of days to 7 and it's simply impossible. I'd add that this is on an 8" Android tablet, and I'm using a mouse instead of a finger, which is much more precise, yet I'm still unable to get the number set to 7 :hot_face:. Good luck doing that with a finger on a smaller smartphone screen.

The fact that the slider doesn't respond to keyboard arrow keys doesn't help either.