-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Database importing #112
Merged
Merged
Database importing #112
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
What the fuck is a vtable
What the fuck is a vtable
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds the functionality necessary for importing chunks into the database
Description
Using the anvil parser added in #100 this PR adds functionality for reading chunks from anvil files and storing them in the database. It also adds methods for storing, loading and deleting chunks. Additionally it also adds the ability to serialize chunk data into an in-memory struct, using the NBT parser added in #53. GZIP and Redb have been selected as the default compression scheme and database backend.
This PR also changes the format of the config system, so not pulling the changes will result in merge conflicts or compilation issues.
The database functionality is in no way complete, but should suffice for now to allow for chunk sending.
Motivation and Context
Chunk importing is vital for any kind of interactivity without chunk generation implemented.
Issue: #95
How has this been tested?
This has been tested multiple times manually but would be very difficult to create unit tests for and would not play nicely with CI so they have not been included. Tests for data validity have not been included since it would be impossible to test without chunk sending (#70) implemented.
Screenshots (if appropriate):
Types of changes
Checklist: