feat(io): allow log relocation
Description
Add a relocate_log()
that does exactly what its name suggests. Optionally, it also relocates the previous log files.
Additionally:
- the log singleton is now really a singleton
-
sightlog
can now be launched outside "Sight", which is needed for external unit test - we have now access to all "binaries" paths from repositories (IE Sight/bin, XXXX/bin, ...the directories that contain executables like
sightrun
andsightlog
) - changing the password while using encrypted logs, will indeed also relocate the previous logs, with the new password. This is useful when you plan to submit the logs for analysis and don't want to remember all passwords you used during the work session.
- ..and some gcc-12 warnings have also been fixed.
- add also a special environment variable (try with
export SIGHT_LEGACY_COMPRESSION=1
) that force legacy zip deflate algorithm for all compression operation, instead of zstd. This allows to open archives (logs, sessions, ...) with plain old third party archiver. - Force non-empty password. Empty password means "no password", which makes things ambiguous and complicated.
How to test it?
A unit test has also been added which should demonstrate the functionality