Only a couple trivial features from meson ~0.50 were being used, and
none of them are really needed:
- configure_file() with the install kwarg has always defaulted to
inferring its value from whether an install_dir was defined. This is
fine, we don't need to set `install: true` in that case. The kwarg was
only even added to meson 0.50 for consistency and to allow
conditionally overriding the file to not install, even when
install_dir is set. This project does not need that feature.
- path building could historically be done with the join_paths()
function. Recent versions of meson (0.49) added cosmetic sugar in the
form of string operator overloading to allow using the division
operator on two strings. By removing this and using the backwards
compatible form, we can support older versions of meson.
- sdl2 dependency lookup with hardcoded config-tool method is very
opinionated about the correct way to look up sdl2, but meson can try
multiple methods if you permit it, and there is no reason to think
that config-tool is the only one that returns correct results.
By removing these features, the minimum can be dropped all the way down
to a version that is available on the oldest supported versions of
Ubuntu (18.04), Debian (oldoldstable / Stretch) and anywhere else of
consequence.
No features of 0.54 are being used, so 0.50 should be perfectly fine.
This drops the minimum requirement down to a version available in the
latest Ubuntu LTS (20.04), which only has 0.53
Address issue:
https://github.com/lite-xl/lite-xl/issues/689
Attempt to provide a more accurate fix to commit:
59f64088e1
For this latter what happens is that any change inside a directory
cause the corresponding entry to be folded in the TreeView.
The new change is more accurate because we remove only the stale
entry corresponding to the delete event and we do not reset the
cache of the parent directory using the modify event.