mirror of
https://github.com/Pumpkin-MC/Pumpkin.git
synced 2026-08-31 08:22:33 +00:00
* feat: add linear chunk format with zstd lib dependency * fixing a typo * refactor: rename file handling methods for clarity and more lint fixes * refactor: improve clarity on validation methods * fix: invert version check in LinearFile header validation * fix: remove leading dot from file path formatting in LinearChunkFormat * refactor: improve error handling and method naming in LinearFile operations * fix: ensure file is flushed after writing in LinearFile operations * fix: lints and warnings * fix: more lints * refactor: streamline LinearFile structure and improve header management * refactor: change chunks_headers to use Box for improved memory management and use exception to know if file exist * refactor: update path parameter types to PathBuf for consistency and improved usability * refactor: update path parameter types to Path avoiding uknown changes and adjust file truncation logic * fix: avoid using the same path for different tests * fix: fix some bytes sizes for the header based on the spec * refactor: enable file truncation when opening for writing and simplify save method * fix: removing IoSlices for windows issues. * fix: clippy lints * refactor: improve incompatible files cheking, some documentation and variable nameing * feat: add file_format to ChunkConfig and implement format handling in Level * feat: add error logging for invalid file headers and data size checks in LinearFile and tmp filenames on write * feat: implement file locking mechanism for concurrent chunk read/write operations * fix: bug at desserializing the chunks headers. * Refactor chunk file locking mechanism to use DashMap for improved concurrency and simplify read/write guard management * docs: Update documentation for LinearVersion enum with format references * re-check workflows * re-check lints 2 * rename config values * Some doc improvements --------- Co-authored-by: Mili <santiagoogle@hotmail.com> Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>