diff --git a/CHANGELOG.md b/CHANGELOG.md
index 473cff98ff..e5e2aefac8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -26,6 +26,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- `bonsaidb::client::Async`/`Blocking` are now exposed. These types are used
when building a client.
- `bonsaidb::server::Backend::client_authenticated` is now invoked.
+- `bonsaidb::core::schema` now exports these types already in-use by
+ `NamedCollection::entry`:
+ - `AsyncEntry`
+ - `Entry`
+ - `EntryInsert`
+ - `EntryUpdate`
## v0.5.0
diff --git a/crates/bonsaidb-core/src/schema.rs b/crates/bonsaidb-core/src/schema.rs
index 779308632a..e70a237eee 100644
--- a/crates/bonsaidb-core/src/schema.rs
+++ b/crates/bonsaidb-core/src/schema.rs
@@ -8,8 +8,8 @@ pub mod view;
pub use bonsaidb_macros::{Collection, Schema, View, ViewSchema};
pub use self::collection::{
- AsyncEntry, AsyncList, Collection, DefaultSerialization, InsertError, List, Nameable,
- NamedCollection, NamedReference, SerializedCollection,
+ AsyncEntry, AsyncList, Collection, DefaultSerialization, Entry, EntryInsert, EntryUpdate,
+ InsertError, List, Nameable, NamedCollection, NamedReference, SerializedCollection,
};
pub use self::names::{
Authority, CollectionName, InvalidNameError, Name, Qualified, QualifiedName, SchemaName,
diff --git a/crates/bonsaidb-core/src/schema/collection.rs b/crates/bonsaidb-core/src/schema/collection.rs
index 720632a33e..3314d1e0b9 100644
--- a/crates/bonsaidb-core/src/schema/collection.rs
+++ b/crates/bonsaidb-core/src/schema/collection.rs
@@ -1721,6 +1721,7 @@ where
EU: EntryUpdate
+ 'a + Unpin,
'name: 'a,
{
+ /// Retrieves the document, if found/inserted.
pub fn execute(self) -> Result