Store the session part elsewhere... so that the remaining project part is largely static and invariant across systems, so that can be checked in.

But does anyone actually want to check in that? To be specific, when this change happens, will we, developers of Geany, want to have the project file checked in the Geany repository? I personally would say no. And I assume that one of the reasons why you store your project files outside the project directory is that it isn't version-controlled so you actually aren't a user of such a feature anyway.

There could be an option to not split the session from the project. In that case, relative paths would continue to work.

Either do it or don't do it for everyone - having to deal with settings that are hard to explain to users and having to maintain 2 different modes of session storage isn't exactly what Geany needs.

The scheme may be extensible to allow it to work with relative paths, at the risk of being unable to distinguish between projects that share the same basename.

No idea what this means.

If Project Preferences is extended to be able to move project files, the session files could also be updated.

Won't work if you move the whole project directory to a different location. (Not even talking about moving it to a different machine.)

Project files could contain a copy of the hash to enable locating and moving old session files.

This is probably the only sane option but then you are facing problems like sharing session files by 2 different projects when you have one original_project and make its copy to project_backup - both will then share the same session files.

Nobody prevents us to write code like that but I would leave such features to editors like Eclipse. Geany is a simple editor, we should come up with simple solutions that are easy to reason about and easy to explain to users.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.