1.2.0-beta.6
Pre-release
Pre-release
Craftbox | Beta Preview (v1.2.0-beta.6)
Warning
Beta builds are NOT suitable for production use, so do not use this to manage Minecraft servers you care about! Test this build in a fresh container/environment.
- NEW! Text files are recognised by reading them, not by matching their extension against a list. A
.jsonlor.json5previously could not be opened at all — the only way to change one was to download it, edit it elsewhere and upload it back — and any extension a mod invented for its own config hit the same wall, as did a file with no extension at all. All of them now open in the editor, and nothing has to be added to a list for the next one to work. A file is text if its first 8 KB decode as UTF-8, contain no NUL byte and are not mostly control characters. Always-binary extensions are still refused without a read, so listing amods/folder of several hundred jars stays as quick as it was. - NEW! Large files can be read a piece at a time over the API, with
?tail=for the last N bytes or?offset=&limit=for an explicit window. This works while the server is running, which is the point of it:/downloadneeds the server stopped, so a log or a feed a plugin is still appending to had no way of being read at all. A window landing mid-character is trimmed back to a whole one, so the text never comes back with replacement characters in it. - Reading a text file no longer loads it into memory without a limit. Both the editor and the API capped out at whatever the file happened to be, which an append-only log on a long-running server eventually turns into an out-of-memory. Whole-file reads now stop at 5 MB and point at the byte windows above.
Fixes
- Fixed
.nbtand.datbeing offered for editing. Both are gzipped binary, and saving one through the text editor re-encoded its bytes as UTF-8 and corrupted the world or player it belonged to. They are download-only now, along with.mcaregion files. - Fixed a UTF-16 or latin-1 file being opened as though it were UTF-8 because its name ended in
.txt. The panel reads and writes UTF-8 throughout, so such a file displayed as mojibake and was mangled the moment it was saved. Reading the actual bytes catches this, which matching the extension never could.
Note
.nbt, .dat and .mca losing their Edit button is deliberate rather than a regression. Nothing that was safe to edit has stopped being editable, and downloading them is unaffected.
Installation
The easiest way to host Craftbox yourself is by using Docker. Please read this part of the Craftbox docs for the installation guide.
Alternatively, you can also download the source code, install the required node modules and run the server manually. (Learn more)