3.0.0
3.0.0 (2024-06-07)
Breaking Changes
-
To avoid dependency on
dart:io
AppConfiguration.httpClient
is now of typeClient
andAppConfiguration.baseFilePath
is now of typeString
.
Assuming you are configuring these today, migration is easy:
import 'dart:io'; import 'package:realm_dart/realm.dart'; final client = HttpClient(); final dir = Directory.current; final config = AppConfiguration( 'your-app-id', httpClient: client, baseFilePath: dir, );
becomes:
import 'dart:io'; import 'package:realm_dart/realm.dart'; import 'package:http/io_client.dart'; final client = HttpClient(); final dir = Directory.current; final config = AppConfiguration( 'your-app-id', httpClient: IOClient(client), baseFilePath: dir.path, );
(Issue #1374)
Enhancements
- Report the originating error that caused a client reset to occur. (Core 14.9.0)
- Allow the realm package, and code generated by realm_generator to be included when building
for web without breaking compilation. (Issue #1374,
PR #1713). This does not imply that realm works on web!
Fixed
Realm.writeAsync
did not handle async callbacks (Future<T> Function()
) correctly. (Issue #1667)- Fixed an issue that would cause macOS apps to be rejected with
Invalid Code Signing Entitlements
error. (Issue #1679) - Fixed a regression that makes it inconvenient to run unit tests using realm. (Issue #1619)
- After compacting, a file upgrade would be triggered. This could cause loss of data if schema mode is SoftResetFile (Core 14.9.0)
- A non-streaming progress notifier would not immediately call its callback after registration. Instead you would have to wait for a download message to be received to get your first update - if you were already caught up when you registered the notifier you could end up waiting a long time for the server to deliver a download that would call/expire your notifier (Core 14.8.0).
- Comparing a numeric property with an argument list containing a string would throw. (Core 14.8.0)
Compatibility
- Realm Studio: 15.0.0 or later.
- Fileformat: Generates files with format v24. Reads and automatically upgrade from fileformat v10.