Skip to content
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

Remove DB migrations that rely on rmp_serde #306

Open
LucasPickering opened this issue Jul 30, 2024 · 0 comments
Open

Remove DB migrations that rely on rmp_serde #306

LucasPickering opened this issue Jul 30, 2024 · 0 comments
Labels
breaking Requires a breaking change

Comments

@LucasPickering
Copy link
Owner

LucasPickering commented Jul 30, 2024

In the past, Slumber encoded a lot of data in the sqlite DB as msgpack. This was a quick and dirty solution I used to easily shove stuff in there while I was iterating, and I didn't think too much about the impacts. #308 added a few migrations to move away from that. Unfortunately we still have rmp_serde in the dep tree because it's needed for the data migrations. As users upgrade to the version that included the migrations (should be 1.8.0), the need for that code will reduce over time. Eventually I would like to cut them out completely, which will eliminate a lot of code. It'll especially take out a good amount of serde codegen, which should help compile times a bit.

Removing the migrations will be a breaking change, so that will most likely be 2.0.0. Once the migrations are removed, anyone on <1.8.0 will have to upgrade to something >=1.8.0 <2.0.0 before going to 2.0.0. We'll need a small workflow to provide error messages if someone tries to make the big jump. I think a good waiting period before 2.0.0 would be about 6 months, so ~February 2025.

@LucasPickering LucasPickering added the breaking Requires a breaking change label Jul 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking Requires a breaking change
Projects
None yet
Development

No branches or pull requests

1 participant