diff --git a/build.bat b/build.bat index e40afe0..b7e2e95 100644 --- a/build.bat +++ b/build.bat @@ -1,13 +1,11 @@ @echo off -dart run build_runner build --delete-conflicting-outputs -pushd packages\async_tools -call build.bat -popd pushd packages\veilid_support call build.bat popd +dart run build_runner build --delete-conflicting-outputs + pushd lib protoc --dart_out=proto -I veilid_support\proto -I veilid_support\dht_support\proto -I proto veilidchat.proto protoc --dart_out=proto -I veilid_support\proto -I veilid_support\dht_support\proto dht.proto diff --git a/build.sh b/build.sh index f723071..1b618ef 100755 --- a/build.sh +++ b/build.sh @@ -1,10 +1,6 @@ #!/bin/bash set -e -pushd packages/async_tools > /dev/null -./build.sh -popd > /dev/null - pushd packages/veilid_support > /dev/null ./build.sh popd > /dev/null diff --git a/lib/settings/models/preferences.g.dart b/lib/settings/models/preferences.g.dart index af010d6..23cd5bb 100644 --- a/lib/settings/models/preferences.g.dart +++ b/lib/settings/models/preferences.g.dart @@ -8,7 +8,7 @@ part of 'preferences.dart'; _$LockPreferenceImpl _$$LockPreferenceImplFromJson(Map json) => _$LockPreferenceImpl( - inactivityLockSecs: json['inactivity_lock_secs'] as int, + inactivityLockSecs: (json['inactivity_lock_secs'] as num).toInt(), lockWhenSwitching: json['lock_when_switching'] as bool, lockWithSystemLock: json['lock_with_system_lock'] as bool, ); diff --git a/packages/veilid_support/example/integration_test/app_test.dart b/packages/veilid_support/example/integration_test/app_test.dart index 0b411e0..4a5b1e1 100644 --- a/packages/veilid_support/example/integration_test/app_test.dart +++ b/packages/veilid_support/example/integration_test/app_test.dart @@ -1,4 +1,4 @@ -@Timeout(Duration(seconds: 120)) +@Timeout(Duration(seconds: 240)) library veilid_support_integration_test; @@ -26,13 +26,6 @@ void main() { setUpAll(veilidFixture.setUp); tearDownAll(veilidFixture.tearDown); - // group('Crypto Tests', () { - // test('best cryptosystem', testBestCryptoSystem); - // test('get cryptosystem', testGetCryptoSystem); - // test('get cryptosystem invalid', testGetCryptoSystemInvalid); - // test('hash and verify password', testHashAndVerifyPassword); - // }); - group('Attached Tests', () { setUpAll(veilidFixture.attach); tearDownAll(veilidFixture.detach); @@ -45,21 +38,25 @@ void main() { test('create pool', testDHTRecordPoolCreate); - // group('DHTRecordPool Tests', () { - // setUpAll(dhtRecordPoolFixture.setUp); - // tearDownAll(dhtRecordPoolFixture.tearDown); + group('DHTRecordPool Tests', () { + setUpAll(dhtRecordPoolFixture.setUp); + tearDownAll(dhtRecordPoolFixture.tearDown); - // test('create/delete record', testDHTRecordCreateDelete); - // test('record scopes', testDHTRecordScopes); - // test('create/delete deep record', testDHTRecordDeepCreateDelete); - // }); + test('create/delete record', testDHTRecordCreateDelete); + test('record scopes', testDHTRecordScopes); + test('create/delete deep record', testDHTRecordDeepCreateDelete); + }); group('DHTShortArray Tests', () { setUpAll(dhtRecordPoolFixture.setUp); tearDownAll(dhtRecordPoolFixture.tearDown); - // test('create shortarray', testDHTShortArrayCreateDelete); - test('add shortarray', testDHTShortArrayAdd); + for (final stride in [256, 64, 32, 16, 8, 4, 2, 1]) { + test('create shortarray stride=$stride', + makeTestDHTShortArrayCreateDelete(stride: stride)); + test('add shortarray stride=$stride', + makeTestDHTShortArrayAdd(stride: 256)); + } }); }); }); diff --git a/packages/veilid_support/example/integration_test/test_dht_short_array.dart b/packages/veilid_support/example/integration_test/test_dht_short_array.dart index 80497e3..ad3e22a 100644 --- a/packages/veilid_support/example/integration_test/test_dht_short_array.dart +++ b/packages/veilid_support/example/integration_test/test_dht_short_array.dart @@ -3,86 +3,99 @@ import 'dart:convert'; import 'package:flutter_test/flutter_test.dart'; import 'package:veilid_support/veilid_support.dart'; -Future testDHTShortArrayCreateDelete() async { - // Close before delete - { - final arr = await DHTShortArray.create(debugName: 'sa_create_delete 1'); - expect(await arr.operate((r) async => r.length), isZero); - expect(arr.isOpen, isTrue); - await arr.close(); - expect(arr.isOpen, isFalse); - await arr.delete(); - // Operate should fail - await expectLater(() async => arr.operate((r) async => r.length), - throwsA(isA())); - } - - // Close after delete - { - final arr = await DHTShortArray.create(debugName: 'sa_create_delete 2'); - await arr.delete(); - // Operate should still succeed because things aren't closed - expect(await arr.operate((r) async => r.length), isZero); - await arr.close(); - // Operate should fail - await expectLater(() async => arr.operate((r) async => r.length), - throwsA(isA())); - } - - // Close after delete multiple - // Okay to request delete multiple times before close - { - final arr = await DHTShortArray.create(debugName: 'sa_create_delete 3'); - await arr.delete(); - await arr.delete(); - // Operate should still succeed because things aren't closed - expect(await arr.operate((r) async => r.length), isZero); - await arr.close(); - await arr.close(); - // Operate should fail - await expectLater(() async => arr.operate((r) async => r.length), - throwsA(isA())); - } -} - -Future testDHTShortArrayAdd() async { - final arr = await DHTShortArray.create(debugName: 'sa_add 1'); - - final dataset = - Iterable.generate(256).map((n) => utf8.encode('elem $n')).toList(); - - print('adding'); - { - final (res, ok) = await arr.operateWrite((w) async { - for (var n = 0; n < dataset.length; n++) { - print('add $n'); - final success = await w.tryAddItem(dataset[n]); - expect(success, isTrue); +Future Function() makeTestDHTShortArrayCreateDelete( + {required int stride}) => + () async { + // Close before delete + { + final arr = await DHTShortArray.create( + debugName: 'sa_create_delete 1 stride $stride', stride: stride); + expect(await arr.operate((r) async => r.length), isZero); + expect(arr.isOpen, isTrue); + await arr.close(); + expect(arr.isOpen, isFalse); + await arr.delete(); + // Operate should fail + await expectLater(() async => arr.operate((r) async => r.length), + throwsA(isA())); } - }); - expect(res, isNull); - expect(ok, isTrue); - } - print('get all'); - { - final dataset2 = await arr.operate((r) async => r.getAllItems()); - expect(dataset2, equals(dataset)); - } + // Close after delete + { + final arr = await DHTShortArray.create( + debugName: 'sa_create_delete 2 stride $stride', stride: stride); + await arr.delete(); + // Operate should still succeed because things aren't closed + expect(await arr.operate((r) async => r.length), isZero); + await arr.close(); + // Operate should fail + await expectLater(() async => arr.operate((r) async => r.length), + throwsA(isA())); + } - print('clear'); - { - final (res, ok) = await arr.operateWrite((w) async => w.tryClear()); - expect(res, isTrue); - expect(ok, isTrue); - } + // Close after delete multiple + // Okay to request delete multiple times before close + { + final arr = await DHTShortArray.create( + debugName: 'sa_create_delete 3 stride $stride', stride: stride); + await arr.delete(); + await arr.delete(); + // Operate should still succeed because things aren't closed + expect(await arr.operate((r) async => r.length), isZero); + await arr.close(); + await arr.close(); + // Operate should fail + await expectLater(() async => arr.operate((r) async => r.length), + throwsA(isA())); + } + }; - print('get all'); - { - final dataset3 = await arr.operate((r) async => r.getAllItems()); - expect(dataset3, isEmpty); - } +Future Function() makeTestDHTShortArrayAdd({required int stride}) => + () async { + final startTime = DateTime.now(); - await arr.delete(); - await arr.close(); -} + final arr = await DHTShortArray.create( + debugName: 'sa_add 1 stride $stride', stride: stride); + + final dataset = Iterable.generate(256) + .map((n) => utf8.encode('elem $n')) + .toList(); + + print('adding\n'); + { + final (res, ok) = await arr.operateWrite((w) async { + for (var n = 0; n < dataset.length; n++) { + print('$n '); + final success = await w.tryAddItem(dataset[n]); + expect(success, isTrue); + } + }); + expect(res, isNull); + expect(ok, isTrue); + } + + //print('get all\n'); + { + final dataset2 = await arr.operate((r) async => r.getAllItems()); + expect(dataset2, equals(dataset)); + } + + //print('clear\n'); + { + final (res, ok) = await arr.operateWrite((w) async => w.tryClear()); + expect(res, isTrue); + expect(ok, isTrue); + } + + //print('get all\n'); + { + final dataset3 = await arr.operate((r) async => r.getAllItems()); + expect(dataset3, isEmpty); + } + + await arr.delete(); + await arr.close(); + + final endTime = DateTime.now(); + print('Duration: ${endTime.difference(startTime)}'); + }; diff --git a/packages/veilid_support/example/macos/Podfile.lock b/packages/veilid_support/example/macos/Podfile.lock index ac31a59..6a58494 100644 --- a/packages/veilid_support/example/macos/Podfile.lock +++ b/packages/veilid_support/example/macos/Podfile.lock @@ -21,7 +21,7 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 - path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c + path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46 veilid: a54f57b7bcf0e4e072fe99272d76ca126b2026d0 PODFILE CHECKSUM: 16208599a12443d53889ba2270a4985981cfb204 diff --git a/packages/veilid_support/example/pubspec.lock b/packages/veilid_support/example/pubspec.lock index a31cdd2..a3fee79 100644 --- a/packages/veilid_support/example/pubspec.lock +++ b/packages/veilid_support/example/pubspec.lock @@ -13,10 +13,10 @@ packages: dependency: "direct dev" description: name: async_tools - sha256: "972f68ab663724d86260a31e363c1355ff493308441b872bf4e7b8adc67c832c" + sha256: e783ac6ed5645c86da34240389bb3a000fc5e3ae6589c6a482eb24ece7217681 url: "https://pub.dev" source: hosted - version: "0.1.0" + version: "0.1.1" bloc: dependency: transitive description: @@ -29,10 +29,10 @@ packages: dependency: transitive description: name: bloc_advanced_tools - sha256: bc0e1d5c26ae7df011464ab6abc2134dcfb668952acc87359abc7457cab091dd + sha256: "09f8a121d950575f1f2980c8b10df46b2ac6c72c8cbe48cc145871e5882ed430" url: "https://pub.dev" source: hosted - version: "0.1.0" + version: "0.1.1" boolean_selector: dependency: transitive description: @@ -283,10 +283,10 @@ packages: dependency: transitive description: name: path_provider_foundation - sha256: "5a7999be66e000916500be4f15a3633ebceb8302719b47b9cc49ce924125350f" + sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.0" path_provider_linux: dependency: transitive description: diff --git a/packages/veilid_support/example/pubspec.yaml b/packages/veilid_support/example/pubspec.yaml index 8860e2d..1c73078 100644 --- a/packages/veilid_support/example/pubspec.yaml +++ b/packages/veilid_support/example/pubspec.yaml @@ -7,14 +7,14 @@ environment: sdk: '>=3.3.4 <4.0.0' dependencies: - cupertino_icons: ^1.0.6 + cupertino_icons: ^1.0.8 flutter: sdk: flutter veilid_support: path: ../ dev_dependencies: - async_tools: ^0.1.0 + async_tools: ^0.1.1 flutter_test: sdk: flutter integration_test: diff --git a/packages/veilid_support/lib/dht_support/proto/dht.proto b/packages/veilid_support/lib/dht_support/proto/dht.proto index 087cc9c..023c3cf 100644 --- a/packages/veilid_support/lib/dht_support/proto/dht.proto +++ b/packages/veilid_support/lib/dht_support/proto/dht.proto @@ -36,7 +36,7 @@ message DHTShortArray { // Uses the same writer as this DHTList with SMPL schema repeated veilid.TypedKey keys = 1; - // Item position index (uint8[256]) + // Item position index (uint8[256./]) // Actual item location is: // idx = index[n] + 1 (offset for header at idx 0) // key = idx / stride @@ -50,16 +50,11 @@ message DHTShortArray { // calculated through iteration } -// DHTLog - represents an appendable/truncatable log collection of individual elements -// Header in subkey 0 of first key follows this structure -// -// stride = descriptor subkey count on first key - 1 -// Subkeys 1..=stride on the first key are individual elements -// Subkeys 0..stride on the 'keys' keys are also individual elements -// -// Keys must use writable schema in order to make this list mutable +// DHTLog - represents a long ring buffer of elements utilizing a multi-level +// indirection table of DHTShortArrays. + message DHTLog { - // Other keys to concatenate + // Keys to concatenate repeated veilid.TypedKey keys = 1; // Back link to another DHTLog further back veilid.TypedKey back = 2; diff --git a/packages/veilid_support/lib/dht_support/src/dht_record/dht_record_pool.g.dart b/packages/veilid_support/lib/dht_support/src/dht_record/dht_record_pool.g.dart index fadd8b8..12b3a1e 100644 --- a/packages/veilid_support/lib/dht_support/src/dht_record/dht_record_pool.g.dart +++ b/packages/veilid_support/lib/dht_support/src/dht_record/dht_record_pool.g.dart @@ -9,27 +9,27 @@ part of 'dht_record_pool.dart'; _$DHTRecordPoolAllocationsImpl _$$DHTRecordPoolAllocationsImplFromJson( Map json) => _$DHTRecordPoolAllocationsImpl( - childrenByParent: json['childrenByParent'] == null + childrenByParent: json['children_by_parent'] == null ? const IMapConst>({}) : IMap>>.fromJson( - json['childrenByParent'] as Map, + json['children_by_parent'] as Map, (value) => value as String, (value) => ISet>.fromJson(value, (value) => Typed.fromJson(value))), - parentByChild: json['parentByChild'] == null + parentByChild: json['parent_by_child'] == null ? const IMapConst({}) : IMap>.fromJson( - json['parentByChild'] as Map, + json['parent_by_child'] as Map, (value) => value as String, (value) => Typed.fromJson(value)), - rootRecords: json['rootRecords'] == null + rootRecords: json['root_records'] == null ? const ISetConst({}) - : ISet>.fromJson(json['rootRecords'], + : ISet>.fromJson(json['root_records'], (value) => Typed.fromJson(value)), - debugNames: json['debugNames'] == null + debugNames: json['debug_names'] == null ? const IMapConst({}) : IMap.fromJson( - json['debugNames'] as Map, + json['debug_names'] as Map, (value) => value as String, (value) => value as String), ); @@ -37,20 +37,20 @@ _$DHTRecordPoolAllocationsImpl _$$DHTRecordPoolAllocationsImplFromJson( Map _$$DHTRecordPoolAllocationsImplToJson( _$DHTRecordPoolAllocationsImpl instance) => { - 'childrenByParent': instance.childrenByParent.toJson( + 'children_by_parent': instance.childrenByParent.toJson( (value) => value, (value) => value.toJson( - (value) => value, + (value) => value.toJson(), ), ), - 'parentByChild': instance.parentByChild.toJson( - (value) => value, + 'parent_by_child': instance.parentByChild.toJson( (value) => value, + (value) => value.toJson(), ), - 'rootRecords': instance.rootRecords.toJson( - (value) => value, + 'root_records': instance.rootRecords.toJson( + (value) => value.toJson(), ), - 'debugNames': instance.debugNames.toJson( + 'debug_names': instance.debugNames.toJson( (value) => value, (value) => value, ), @@ -59,13 +59,13 @@ Map _$$DHTRecordPoolAllocationsImplToJson( _$OwnedDHTRecordPointerImpl _$$OwnedDHTRecordPointerImplFromJson( Map json) => _$OwnedDHTRecordPointerImpl( - recordKey: Typed.fromJson(json['recordKey']), + recordKey: Typed.fromJson(json['record_key']), owner: KeyPair.fromJson(json['owner']), ); Map _$$OwnedDHTRecordPointerImplToJson( _$OwnedDHTRecordPointerImpl instance) => { - 'recordKey': instance.recordKey, - 'owner': instance.owner, + 'record_key': instance.recordKey.toJson(), + 'owner': instance.owner.toJson(), }; diff --git a/packages/veilid_support/lib/src/identity.g.dart b/packages/veilid_support/lib/src/identity.g.dart index 7d3687e..616477a 100644 --- a/packages/veilid_support/lib/src/identity.g.dart +++ b/packages/veilid_support/lib/src/identity.g.dart @@ -9,19 +9,19 @@ part of 'identity.dart'; _$AccountRecordInfoImpl _$$AccountRecordInfoImplFromJson( Map json) => _$AccountRecordInfoImpl( - accountRecord: OwnedDHTRecordPointer.fromJson(json['accountRecord']), + accountRecord: OwnedDHTRecordPointer.fromJson(json['account_record']), ); Map _$$AccountRecordInfoImplToJson( _$AccountRecordInfoImpl instance) => { - 'accountRecord': instance.accountRecord, + 'account_record': instance.accountRecord.toJson(), }; _$IdentityImpl _$$IdentityImplFromJson(Map json) => _$IdentityImpl( accountRecords: IMap>.fromJson( - json['accountRecords'] as Map, + json['account_records'] as Map, (value) => value as String, (value) => ISet.fromJson( value, (value) => AccountRecordInfo.fromJson(value))), @@ -29,10 +29,10 @@ _$IdentityImpl _$$IdentityImplFromJson(Map json) => Map _$$IdentityImplToJson(_$IdentityImpl instance) => { - 'accountRecords': instance.accountRecords.toJson( + 'account_records': instance.accountRecords.toJson( (value) => value, (value) => value.toJson( - (value) => value, + (value) => value.toJson(), ), ), }; @@ -40,24 +40,24 @@ Map _$$IdentityImplToJson(_$IdentityImpl instance) => _$IdentityMasterImpl _$$IdentityMasterImplFromJson(Map json) => _$IdentityMasterImpl( identityRecordKey: - Typed.fromJson(json['identityRecordKey']), + Typed.fromJson(json['identity_record_key']), identityPublicKey: - FixedEncodedString43.fromJson(json['identityPublicKey']), + FixedEncodedString43.fromJson(json['identity_public_key']), masterRecordKey: - Typed.fromJson(json['masterRecordKey']), - masterPublicKey: FixedEncodedString43.fromJson(json['masterPublicKey']), + Typed.fromJson(json['master_record_key']), + masterPublicKey: FixedEncodedString43.fromJson(json['master_public_key']), identitySignature: - FixedEncodedString86.fromJson(json['identitySignature']), - masterSignature: FixedEncodedString86.fromJson(json['masterSignature']), + FixedEncodedString86.fromJson(json['identity_signature']), + masterSignature: FixedEncodedString86.fromJson(json['master_signature']), ); Map _$$IdentityMasterImplToJson( _$IdentityMasterImpl instance) => { - 'identityRecordKey': instance.identityRecordKey, - 'identityPublicKey': instance.identityPublicKey, - 'masterRecordKey': instance.masterRecordKey, - 'masterPublicKey': instance.masterPublicKey, - 'identitySignature': instance.identitySignature, - 'masterSignature': instance.masterSignature, + 'identity_record_key': instance.identityRecordKey.toJson(), + 'identity_public_key': instance.identityPublicKey.toJson(), + 'master_record_key': instance.masterRecordKey.toJson(), + 'master_public_key': instance.masterPublicKey.toJson(), + 'identity_signature': instance.identitySignature.toJson(), + 'master_signature': instance.masterSignature.toJson(), }; diff --git a/packages/veilid_support/pubspec.lock b/packages/veilid_support/pubspec.lock index 08ab7e2..cf16648 100644 --- a/packages/veilid_support/pubspec.lock +++ b/packages/veilid_support/pubspec.lock @@ -21,10 +21,10 @@ packages: dependency: transitive description: name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.5.0" async: dependency: transitive description: @@ -36,25 +36,27 @@ packages: async_tools: dependency: "direct main" description: - path: "../../../dart_async_tools" - relative: true - source: path - version: "0.1.0" + name: async_tools + sha256: e783ac6ed5645c86da34240389bb3a000fc5e3ae6589c6a482eb24ece7217681 + url: "https://pub.dev" + source: hosted + version: "0.1.1" bloc: dependency: "direct main" description: name: bloc - sha256: f53a110e3b48dcd78136c10daa5d51512443cea5e1348c9d80a320095fa2db9e + sha256: "106842ad6569f0b60297619e9e0b1885c2fb9bf84812935490e6c5275777804e" url: "https://pub.dev" source: hosted - version: "8.1.3" + version: "8.1.4" bloc_advanced_tools: dependency: "direct main" description: - path: "../../../bloc_advanced_tools" - relative: true - source: path - version: "0.1.0" + name: bloc_advanced_tools + sha256: "09f8a121d950575f1f2980c8b10df46b2ac6c72c8cbe48cc145871e5882ed430" + url: "https://pub.dev" + source: hosted + version: "0.1.1" boolean_selector: dependency: transitive description: @@ -99,10 +101,10 @@ packages: dependency: "direct dev" description: name: build_runner - sha256: "581bacf68f89ec8792f5e5a0b2c4decd1c948e97ce659dc783688c8a88fbec21" + sha256: "3ac61a79bfb6f6cc11f693591063a7f19a7af628dc52f141743edac5c16e8c22" url: "https://pub.dev" source: hosted - version: "2.4.8" + version: "2.4.9" build_runner_core: dependency: transitive description: @@ -123,10 +125,10 @@ packages: dependency: transitive description: name: built_value - sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e + sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb url: "https://pub.dev" source: hosted - version: "8.9.1" + version: "8.9.2" change_case: dependency: transitive description: @@ -187,10 +189,10 @@ packages: dependency: transitive description: name: coverage - sha256: "8acabb8306b57a409bf4c83522065672ee13179297a6bb0cb9ead73948df7c76" + sha256: "3945034e86ea203af7a056d98e98e42a5518fff200d6e8e6647e1886b07e936e" url: "https://pub.dev" source: hosted - version: "1.7.2" + version: "1.8.0" crypto: dependency: transitive description: @@ -219,10 +221,10 @@ packages: dependency: "direct main" description: name: fast_immutable_collections - sha256: "49154d1da38a34519b907b0e94a06705a59b7127728131dc4a54fe62fd95a83e" + sha256: "38fbc50df5b219dcfb83ebbc3275ec09872530ca1153858fc56fceadb310d037" url: "https://pub.dev" source: hosted - version: "10.2.1" + version: "10.2.2" ffi: dependency: transitive description: @@ -261,10 +263,10 @@ packages: dependency: "direct dev" description: name: freezed - sha256: "57247f692f35f068cae297549a46a9a097100685c6780fe67177503eea5ed4e5" + sha256: a434911f643466d78462625df76fd9eb13e57348ff43fe1f77bbe909522c67a1 url: "https://pub.dev" source: hosted - version: "2.4.7" + version: "2.5.2" freezed_annotation: dependency: "direct main" description: @@ -277,10 +279,10 @@ packages: dependency: transitive description: name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "4.0.0" glob: dependency: transitive description: @@ -341,18 +343,18 @@ packages: dependency: "direct main" description: name: json_annotation - sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" url: "https://pub.dev" source: hosted - version: "4.8.1" + version: "4.9.0" json_serializable: dependency: "direct dev" description: name: json_serializable - sha256: aa1f5a8912615733e0fdc7a02af03308933c93235bdc8d50d0b0c8a8ccb0b969 + sha256: ea1432d167339ea9b5bb153f0571d0039607a873d6e04e0117af043f14a1fd4b url: "https://pub.dev" source: hosted - version: "6.7.1" + version: "6.8.0" lint_hard: dependency: "direct dev" description: @@ -437,26 +439,26 @@ packages: dependency: transitive description: name: path_provider - sha256: b27217933eeeba8ff24845c34003b003b2b22151de3c908d0e679e8fe1aa078b + sha256: c9e7d3a4cd1410877472158bee69963a4579f78b68c65a2b7d40d1a7a88bb161 url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" path_provider_android: dependency: transitive description: name: path_provider_android - sha256: "477184d672607c0a3bf68fbbf601805f92ef79c82b64b4d6eb318cbca4c48668" + sha256: a248d8146ee5983446bf03ed5ea8f6533129a12b11f12057ad1b4a67a2b3b41d url: "https://pub.dev" source: hosted - version: "2.2.2" + version: "2.2.4" path_provider_foundation: dependency: transitive description: name: path_provider_foundation - sha256: "5a7999be66e000916500be4f15a3633ebceb8302719b47b9cc49ce924125350f" + sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.0" path_provider_linux: dependency: transitive description: @@ -721,10 +723,10 @@ packages: dependency: transitive description: name: vm_service - sha256: a75f83f14ad81d5fe4b3319710b90dec37da0e22612326b696c9e1b8f34bbf48 + sha256: "7475cb4dd713d57b6f7464c0e13f06da0d535d8b2067e188962a59bac2cf280b" url: "https://pub.dev" source: hosted - version: "14.2.0" + version: "14.2.2" watcher: dependency: transitive description: @@ -745,10 +747,10 @@ packages: dependency: transitive description: name: web_socket_channel - sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" + sha256: "58c6666b342a38816b2e7e50ed0f1e261959630becd4c879c4f26bfa14aa5a42" url: "https://pub.dev" source: hosted - version: "2.4.4" + version: "2.4.5" webkit_inspection_protocol: dependency: transitive description: @@ -761,10 +763,10 @@ packages: dependency: transitive description: name: win32 - sha256: "8cb58b45c47dcb42ab3651533626161d6b67a2921917d8d429791f76972b3480" + sha256: "0eaf06e3446824099858367950a813472af675116bf63f008a4c2a75ae13e9cb" url: "https://pub.dev" source: hosted - version: "5.3.0" + version: "5.5.0" xdg_directories: dependency: transitive description: diff --git a/packages/veilid_support/pubspec.yaml b/packages/veilid_support/pubspec.yaml index b4232e7..a7baeed 100644 --- a/packages/veilid_support/pubspec.yaml +++ b/packages/veilid_support/pubspec.yaml @@ -7,14 +7,14 @@ environment: sdk: '>=3.2.0 <4.0.0' dependencies: - async_tools: ^0.1.0 - bloc: ^8.1.3 - bloc_advanced_tools: ^0.1.0 + async_tools: ^0.1.1 + bloc: ^8.1.4 + bloc_advanced_tools: ^0.1.1 collection: ^1.18.0 equatable: ^2.0.5 - fast_immutable_collections: ^10.1.1 + fast_immutable_collections: ^10.2.2 freezed_annotation: ^2.4.1 - json_annotation: ^4.8.1 + json_annotation: ^4.9.0 loggy: ^2.0.3 meta: ^1.11.0 @@ -23,15 +23,9 @@ dependencies: # veilid: ^0.0.1 path: ../../../veilid/veilid-flutter -dependency_overrides: - async_tools: - path: ../../../dart_async_tools - bloc_advanced_tools: - path: ../../../bloc_advanced_tools - dev_dependencies: - build_runner: ^2.4.8 - freezed: ^2.4.7 - json_serializable: ^6.7.1 + build_runner: ^2.4.9 + freezed: ^2.5.2 + json_serializable: ^6.8.0 lint_hard: ^4.0.0 test: ^1.25.2 diff --git a/pubspec.lock b/pubspec.lock index 09d4fb0..21e4f2e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -63,7 +63,7 @@ packages: path: "../dart_async_tools" relative: true source: path - version: "0.1.0" + version: "0.1.1" awesome_extensions: dependency: "direct main" description: @@ -102,7 +102,7 @@ packages: path: "../bloc_advanced_tools" relative: true source: path - version: "0.1.0" + version: "0.1.1" blurry_modal_progress_hud: dependency: "direct main" description: @@ -738,18 +738,18 @@ packages: dependency: "direct main" description: name: json_annotation - sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" url: "https://pub.dev" source: hosted - version: "4.8.1" + version: "4.9.0" json_serializable: dependency: "direct dev" description: name: json_serializable - sha256: aa1f5a8912615733e0fdc7a02af03308933c93235bdc8d50d0b0c8a8ccb0b969 + sha256: ea1432d167339ea9b5bb153f0571d0039607a873d6e04e0117af043f14a1fd4b url: "https://pub.dev" source: hosted - version: "6.7.1" + version: "6.8.0" linkify: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index cd42f00..821c214 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -11,12 +11,12 @@ dependencies: animated_theme_switcher: ^2.0.10 ansicolor: ^2.0.2 archive: ^3.4.10 - async_tools: ^0.1.0 + async_tools: ^0.1.1 awesome_extensions: ^2.0.14 badges: ^3.1.2 basic_utils: ^5.7.0 bloc: ^8.1.4 - bloc_advanced_tools: ^0.1.0 + bloc_advanced_tools: ^0.1.1 blurry_modal_progress_hud: ^1.1.1 change_case: ^2.0.1 charcode: ^1.3.1