It would be great, if we could (optionally?) have multiple image caches.
Maybe simply save the cache-path in the database related json-files, instead of helium.json?
Two users, each with its own database:
Whenever the database is changed, Neon has to re-create the cache, which is very slow. If each database has its own cache, this would speed up the starting time.
My personal use-case: Sharing one database on multiple computers
I could easily synchronize my main database from my work-computer to my HTPC without troubles when switching databases.
Right now sharing one database on two computers is a pain in the *#$, because thumbnails won't show up on the second computer - the image path's are stored in the database, but the thumbnails don't exist...
The background images are shown, while thumbnails are missing right now:
-Existing databases will not have any value set, hence they will default to the default cache path
-You can change the path from library management (this will require a restart). The new value will be stored in the DB
-When creating new SQL Server and MySQL databases you can force a path directly from the dialog
>>I just tried this and Neon crashed.
What case did you test?
I tested myself by setting the cache to an UNC path and that worked.
Or do you just mean that all default paths should be moved out from user to %appdata% instead?
That could of course be a simple solution (have you tried to set the cache to that folder?)
Edit: I still think the folder needs be be shared/accessible from another machine so will %appdata% really help?
A network share/UNC path should work better, I think?
I don't want to move the cache outside of %appdata% and I don't want to use a UNC path.
I want to create a subfolder in the old cache folder - but my computers have different users.
So when I set the folder to "c:\users\user_xyz\appdata\roaming\imploded software\helium\cache\subfolder", this will work on my first computer
But I cannot use this database on my second computer, since this folder does not exist there - and cannot be created.
The folder would have to be "c:\users\user_abc\appdata\roaming\imploded software\helium\cache\subfolder" on that machine.
To get it working on both machines, I have to use a variable and set the path "%appdata%\imploded software\helium\cache\subfolder" - so I tried this path (set manually in the database with phpMyAdmin), but Neon crashed.
The main problem is different usernames...
Ok, so the requirement is that you can use dynamic variables that are evaluated in runtime?
If so I will check if it is possible..
I think it should be up to the end user to define, so by implememting support for %appdata%, %programdata% which will be evaluated during runtime, the most cases should be covered.
Addendum: This will of course require another UI for the change of the existing path and non-readonly fields when creating new DBs..
You can try with:
This version will default to %programfiles%\imploded software\helium\cache
You can also enter either %APPDATA%\path or %PROGRAMDATA%\path when creating/changing the paths to use a fully dynamic solution.
I have made some furthe research and I think that the most optimal is most likely to store a custom path in the DB.
This will ensure that data will not be out of sync between recent.json and db.json as well as the in-use in helium.json.
I will test more...
Database was my first thought, but that makes it even more important to configure this through the GUI.
Yep, configuration should be:
1) Via library management
2) (possibly) when creating the DB