mirror of
https://github.com/meilisearch/meilisearch.git
synced 2025-07-25 15:51:03 +00:00
4223: Update to heed 0.20 r=dureuill a=Kerollmops This PR brings the v0.20-alpha.9 version of heed into Meilisearch 🎉 The main goal is to test it in a real environment to make the necessary changes if needed. We also want to merge it as soon as possible during the pre-release phase to ensure we catch bugs before the release. Most of the calls to heed are the same as before, except: - The `PolyDatabase` has been replaced with a `Database<Unspecified, Unspecified>`. We replaced the `get<T, U>()` by a `remap<T, U>().get()` calls. - The `Database` `append(...)` method has been replaced with a `put_with_flags(PutFlags::APPEND, ...)`. - The `RwTxn<'e, 'p>` has been simplified into a `RwTxn<'e>`. - The `BytesEncode/Decode` traits return a `Result<_, BoxedError>` instead of an `Option<_>`. - We no longer need to wrap and unwrap the `BEU32` integer when storing/getting them from heed. ### TODO - [x] Create actual, simple error types instead of using strings in the codecs. ### Follow-up work - Move the codecs into another member crate (we depend on the uuid one in the meilitool crate). - Display the internal decoding error in the `SerializationError` internal error variant. Co-authored-by: Clément Renault <clement@meilisearch.com>