Skip to content

3.0.0

Compare
Choose a tag to compare
@fealebenpae fealebenpae released this 07 Jun 15:38
· 30 commits to main since this release
925963c

3.0.0 (2024-06-07)

Breaking Changes

  • To avoid dependency on dart:io

    • AppConfiguration.httpClient is now of type Client and
    • AppConfiguration.baseFilePath is now of type String.

    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.

Internal

  • Using Core 14.9.0.
  • Disabled codesigning of Apple binaries. (Issue #1679)
  • Drop building xcframework for catalyst. (Issue #1695)
  • Using xcode 15.4 for native build. (Issue #1547)
  • Using puro on CI. (#1710)