You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For more insights into what changed in the ObjectBox C++ core, [check the ObjectBox C changelog](https://github.com/objectbox/objectbox-c/blob/main/CHANGELOG.md).
6
+
7
+
## 4.0.1 - 2024-10-16
8
+
9
+
- Built with Xcode 15.0.1 and Swift 5.9.
10
+
- Make closing the Store more robust. In addition to transactions, it also waits for ongoing queries. This is just an
11
+
additional safety net. Your apps should still make sure to finish all Store operations, like queries, before closing it.
12
+
- Generator: no longer print a `Mapping not found` warning when an entity class uses `ToMany`.
13
+
- Some minor vector search performance improvements.
14
+
- Update to [ObjectBox C 4.0.2](https://github.com/objectbox/objectbox-c/releases/tag/v4.0.2).
15
+
16
+
### Sync
17
+
18
+
-**Fix a serious regression, please update as soon as possible.**
19
+
20
+
## 4.0.0 - 2024-07-22
21
+
22
+
**ObjectBox now supports [Vector Search](https://docs.objectbox.io/ann-vector-search)** to enable efficient similarity searches.
23
+
24
+
This is particularly useful for AI/ML/RAG applications, e.g. image, audio, or text similarity. Other use cases include semantic search or recommendation engines.
25
+
26
+
Create a Vector (HNSW) index for a floating point vector property. For example, a `City` with a location vector:
27
+
28
+
```swift
29
+
// objectbox: entity
30
+
classCity {
31
+
32
+
// objectbox:hnswIndex: dimensions=2
33
+
var location: [Float]?
34
+
35
+
}
36
+
```
37
+
38
+
Perform a nearest neighbor search using the new `nearestNeighbors(queryVector, maxCount)` query condition and the new "find with scores" query methods (the score is the distance to the query vector). For example, find the 2 closest cities:
For an introduction to Vector Search, more details and other supported languages see the [Vector Search documentation](https://docs.objectbox.io/ann-vector-search).
49
+
50
+
- Built with Xcode 15.0.1 and Swift 5.9.
51
+
- The generator now displays an error when using an index on a property type that can not be indexed.
52
+
- Update to [ObjectBox C 4.0.1](https://github.com/objectbox/objectbox-c/releases/tag/v4.0.1).
53
+
54
+
## 2.0.0 - 2024-05-15
55
+
56
+
- Built with Xcode 15.0.1 and Swift 5.9.
57
+
- Support creating file-less in-memory databases, e.g. for caching and testing. To create one instead of a directory path pass `memory:` together with an identifier string when creating a `Store`:
Swift Database - swiftly persist objects and on-device vector database for iOS & macOS
25
-
===============
24
+
# Swift Database - swiftly persist objects and on-device vector database for iOS & macOS
26
25
27
26
Powerful & superfast database for Swift that's also easy to use. Persist Swift objects quickly and reliably on-device on iOS and macOS.
28
27
@@ -72,6 +71,7 @@ Want details? **[Read the guides](https://swift.objectbox.io/)** or
72
71
Simple but powerful; frugal but fast: The ObjectBox NoSQL database offers an intuitive Swift API that's easy to pick up, fun to work with, and incredibly fast, making it sustainable in many ways. Its frugal recource use (CPU, memory, battery / power) makes ObjectBox an ideal and sustainable choice for iOS apps. So why not give it a try right away? Check out the [installation section below](#adding-objectbox-to-your-project). You can also star this repository for later 🌟
ObjectBox is available as a [CocoaPods](https://cocoapods.org) pod. [See the docs](https://swift.objectbox.io/install) for details and alternative setup options.
94
95
95
96
If you are new to CocoaPods, [check out their website](https://cocoapods.org) for an introduction and installation instructions.
@@ -116,7 +117,9 @@ e.g. check the [getting started guide](https://swift.objectbox.io/getting-starte
116
117
117
118
If `pod install` fails, try updating CocoaPods first:
In the [Example](Example/) directory, you'll find a "Notes" example app demonstrating ObjectBox's Swift API.
134
139
The example comes with two apps: one for iOS and one for macOS. The iOS example is a full GUI application, whereas the macOS example runs a few operations and then exits.
135
140
@@ -139,76 +144,79 @@ Here's a list of ObjectBox releases, and the Swift versions they were compiled w
139
144
140
145
| ObjectBox version(s) | Swift version |
141
146
|:--------------------:|:-------------:|
147
+
| 4.0.1 | 5.9 |
142
148
| 4.0.0 | 5.9 |
143
149
| 2.0.0 | 5.9 |
144
150
| 1.9.2 | 5.9 |
145
151
| 1.9.1 | 5.9 |
146
152
| 1.9.0 | 5.8.1 |
147
-
| 1.8.1 | 5.7.2 |
148
-
| 1.8.0 | 5.7.1 |
149
-
| 1.7.0 | 5.5 |
150
-
| 1.6.0 | 5.4 |
151
-
| 1.5.0 | 5.3(.2) |
152
-
| 1.4.1 | 5.3 |
153
-
| 1.3, 1.4.0 | 5.2 |
153
+
| 1.8.1 | 5.7.2 |
154
+
| 1.8.0 | 5.7.1 |
155
+
| 1.7.0 | 5.5 |
156
+
| 1.6.0 | 5.4 |
157
+
| 1.5.0 | 5.3(.2) |
158
+
| 1.4.1 | 5.3 |
159
+
| 1.3, 1.4.0 | 5.2 |
154
160
| 1.2 | 5.1 |
155
161
156
162
This might be relevant, e.g. when using Carthage. For various reasons, we recommend using the latest version.
157
163
158
-
Development
159
-
-----------
164
+
## Changelog
165
+
166
+
For notable and important changes in new releases, read the [changelog](CHANGELOG.md).
167
+
168
+
## Development
169
+
160
170
The source code for ObjectBox's Swift binding can be found [in the Source folder](Source/README.md) of this repository.
161
171
162
-
Background: code generation
163
-
---------------------------
172
+
## Background: code generation
173
+
164
174
ObjectBox Swift Database generates code at build time for optimal performance at runtime by avoiding reflection etc.
165
175
This is automatically done for you and should be transparent.
166
176
Internally, we use [a fork of Sourcery](https://github.com/objectbox/objectbox-swift-generator) for this.
167
177
168
-
Already using ObjectBox?
169
-
---------------------------
178
+
## Already using ObjectBox?
170
179
171
180
We're on a mission to bring joy, delight and sustainability to app developers. **To do this, we need your help:** Please fill in this 2-minute [Anonymous Feedback Form](https://forms.gle/LvVjN6jfFHuivxZX6). Let us know what you love and what is amiss, so we can improve.
172
181
173
182
**We're looking forward to receiving your comments and requests:**
0 commit comments