Releases: itz-me-zappex/flux
Releases · itz-me-zappex/flux
Release list
flux v1.34.3
Release notes:
- Fixed incorrect behavior in window managers and desktop environments that do not provide window on top of desktop. So now daemon is usable with WMs e.g. BSPWM, IceWM, i3WM etc..
- Applied less aggressive
SCHED_FIFOpriority (1instead of99) to processes responsible for CPU limiting (cpulimitinstances) and mouse grabbing&redirection (flux-grab-cursorinstances) to prevent unexpected behavior under heavy CPU load as kernel threads have the same priority. - Made
lesstool as optional dependency, which is used to make--getoption output scrollable if terminal width is too small.
flux v1.34.2
Release notes:
- Fixed issue when
truevalue in boolean config key is not changed onfalsein another config key andtrueis used for all existing boolean config keys in config file. - Reworked notifications, now in case with
--notificationsoption you will see generic messages indicating that daemon is alive and does actions on matching window focus/unfocus/closure event, instead of duplicating all log messages in notifications. Also daemon start and termination messages also displayed as notifications. - Messages related to Wine/Proton windows and attempts to grab cursor now displayed as verbosive.
- Command execution messages now displayed as verbosive.
- Minor fixes and improvements.
flux v1.34.1
Release notes:
- Fixed unexpected behavior in case
$IFSis set as global variable and it is not blank. - Fixed daemon removes everything after last
=symbol getting broken variable name in case its value contains=and unsets lower case environment variable that does not even exist at init step. - Now daemon exits with an error in case missing module(s) found.
- Now daemon just sets
DISPLAY=':0'instead of exporting it in case it is blank. - Now daemon adds its modules path to
$PATHinstead of using variables with paths to every module.
flux v1.34
Release notes:
- Now daemon uses process binary name as process name to bypass 15 symbols limitation and avoid unexpected issues when process changes its name at runtime. Works with both Wine/Proton and native executables.
- Removed soft match for process names with 15+ symbols length, no longer needed.
- Now daemon tries to recreate log file when it becomes removed, instead of throwing warnings you could not even see in case running in background.
- Added proper warnings and errors to
--getoption and runtime in case daemon unable to get process information. - Fixed potential bash'es stderr could be shown on lock file validation step.
- Updated short synonyms for prefix related options.
- Config key
limits-delayhas been renamed tounfocus-limits-delay. Backward compatibility is kept along with one in v1.33 release. - Fixed wrong line number (or zero) was shown in warning on config parsing step in case mistake in
fps-unfocusconfig key is found. - Section match message is now shown as informational instead of verbosive.
- Now messages are shorter and PIDs, XIDs, sections and commands shown in brackets instead of single quotes.
- Now respective section is shown in warnings related to MangoHud config file(s).
- Fixed potential freeing
NULLpointer inwindow-minimizemodule. - Minor fixes and improvements.
flux v1.33
Release notes:
- Some config keys related to limiting on unfocus were renamed (backward compatibility is kept):
cpu-limit->unfocus-cpu-limitidle->unfocus-sched-idlemute->unfocus-mutedelay->limits-delay
Yeah, those are longer, but config file looks more understandable with these, especially for newbies.
- Now daemon sets
SCHED_FIFOscheduling policy tocpulimitandflux-grab-cursor, if possible. Forcpulimit, this improves interrupts stability, preventing the limited process from being paused or kept working for longer than expected, what may break limited process stability or cause system-wide performance drops respectively. Forflux-grab-cursor, this reduces input lag, as it acts as a bridge between mouse and window. To make that work, you need to add your user tofluxgroup. - Optimized function responsible for messages, now there is no any subshell, everything is done via
printf. That makes messages more lightweight, even with enabled timestamps and colors (those are processed before event reading). - Solution to print executed command from config file (replacing variable names with their values) has been rewritten from scratch to get rid of subshell (
$(bash -c "echo \"$passed_event_command\"")) and make command being shown properly in output/log. - To improve daemon performace/reduce overhead, usage of other subshells was reduced everywhere where that makes a sense.
- A bunch of other minor fixes and improvements.
P.S.: Performance improvement in daemon is about up to 40%, especially when it handles a lot of opened windows with --hot option.
flux v1.32
Release notes:
- Rewritten legacy event handling algorithm to reduce overhead and make it maintainable.
- Minor fixes and improvements.
flux v1.31.0.1
Release notes:
- Updated messages related to muting to make them more informative.
- Removed ugly tree from
--getoption output.
flux v1.31
Release notes:
- Added
muteconfig key which allows mute sink input of processes on unfocus event. - Simplified logic which changes FPS limit in MangoHud config.
- Fixed message about CPU limited process termination never shown.
- Fixed daemon prints generic message about window closure even if it is shown respectively to applied limit.
- Fixed minimization request was not unset on window closure.
- Fixed error message of
chrttool was shown in daemon output on scheduling policy change. - Fixed
chrterrors becomes ignored on settingSCHED_IDLEto process. - Fixed
fps-focusconfig key accepts anything after<num>,<num>, added support for spaces between values (e.g.144, 72, 48, 36). - Removed message about inability to handle
SCHED_DEADLINEwhich was shown at daemon start while running without root permissions. - Updated and fixed messages.
- Minor fixes and improvements.
flux v1.30
Notes:
- There is no any new feature, instead, this release is focused at improving stability and current functionality.
- It could be
1.29.3, but there is a few breaking changes, read below.
Release notes:
- Module
flux-event-readerhas been renamed toflux-listener. - Config key
focus-cursor-grabhas been renamed tofocus-grab-cursor. - Module
flux-cursor-grabhas been renamed toflux-grab-cursor. - Now you can see improved status messages of
flux-grab-cursorin daemon output. - Now
flux-grab-cursordoes not exit with an error if it can't grab cursor, instead - it waits for ungrab. - Now daemon uses FIFO files to read output of
flux-listenerandflux-grab-cursor. - Now daemon stores temporary data in
/tmp/flux. - Now daemon checks process name (if it is
flux- then exits with an error) when checks PID in lock file. - Renamed environment variables passed from daemon to commands/scripts in execution related config keys. Check
README.mdfor more information. - Updated messages.
- Now
exec-exitandexec-closureconfig keys inherit commands fromlazy-exec-unfocusif first two were declared with+=, what means appending, instead of replacing values fromlazy-exec-unfocus. - Minor fixes and improvements.
flux v1.29.2
Release notes:
- Fixed quoted values in regexp causing mismatch because quotes are interpreted as text. Not really a bug, that is just how Bash handles regexp obtained from variable (as string).
- As example I will use
^('X-Ray Primary t'|'xrEngine.exe')$regexp. In case process name isX-Ray Primary tand regexp contains'X-Ray Primary t'or"X-Ray Primary t", then bash will expect process name to contain quotes too. So I simply added checks with single/double quoted process name, command and owner toname,commandandownerconfig keys respectively.
- As example I will use