Due to application-specific file descriptor limits,
the garbage collector cannot close the descriptors in time,
resulting in unexpected file open errors.
Previously, the players would have their selected skin reset after renaming
the skin textures to the dot separator. This commit implements skin name
migration to ease the transition for server owners.
See 'skins.__fuzzy_match_skin_name' for a detailed explanation.
Supersedes the 'fsep' setting by automatically detecting
the texture name in both, the skin list and the updater
scripts.
New, automatically fetched skins will now always use the
'.' delimiter to avoid player name issues.
In case of ambiguous texture names, a warning is logged.
The old API is no longer reachable, thus got replaced.
This also removes the obsolete skin preview download because the mod is capable of generating them automatically.
Co-authored-by: CallMeDax <142984237+CallMeDax@users.noreply.github.com>
Adds a filename split seperator setting that lets you choose between old style `_` and `.` because dot is the only char that isn´t allowed in playername but in texturenames.
Default value is `_` to keep it compatible with older versions, while `.` offers a solution to fix #54.
i.e. the formspec v4 rewrite
Requires UI "version-2" tag or commit a7556c50 or later and
and Minetest v5.4.0 or later
This also makes it work properly in UI's "lite" mode.
The base64 data from the decoder to the file writer is in binary, using only the "w" flag would work in most unix systems but its incorrect and for all systems with crazy line_feed/Carrier_return or any character conversion the right way to save a binary data is using the "wb" flag.