Commit graph serverpod-offline-sync/test
Author SHA1 Message Date
Marcelo Mendonça Soares
20b23a1a9c
chore: Add the generated code and migrations that were gitignored (#102) 2026-07-09 11:25:28 -03:00
Marcelo Mendonça Soares
ace841de73
chore: Transfer the package license to Serverpod (#99) 2026-07-09 01:16:49 -03:00
Marcelo Mendonça Soares
d3b9a66efd
fix: Fix sync once hanging forever when opened again too quickly after closing (#98) 2026-07-09 01:15:19 -03:00
Marcelo Mendonça Soares
d89118a43a
feat: Implement the scope management interface (#96) 2026-07-07 11:48:19 -03:00
Marcelo Mendonça Soares
467df68a69
feat: Add support for the upsert and upsertRow ORM methods (#94) 2026-07-04 21:17:08 -03:00
Marcelo Mendonça Soares
c6a873d04c
fix: Require unique FK columns to be nullable (#95) 2026-07-04 21:16:37 -03:00
Marcelo Mendonça Soares
65832eda0a
fix: Add proper suppor to the noReturn parameter on the ORM (#92) 2026-07-03 14:03:44 -03:00
Marcelo Mendonça Soares
af139ea800
fix: Allow only one releasable column per unique index (#91) 2026-07-03 10:49:23 -03:00
Marcelo Mendonça Soares
8acfa7f269
feat: Implement shared scopes with role enforcement (#90) 2026-07-03 01:25:15 -03:00
Marcelo Mendonça Soares
517abde4a1
fix: Make the CrdtDatabase class ephemeral (#82) 2026-06-24 01:18:23 -03:00
Marcelo Mendonça Soares
de7e22d91a
feat: Add an example app and misc fixes (#81) 2026-06-23 22:53:47 -03:00
Marcelo Mendonça Soares
5a8f9c91a0
test: Use includeHiddenRows on tests (#80) 2026-06-21 10:12:39 -03:00
Copilot
5642d9b94d
feat: Require scopeId cascade FK relation to crdt_scopes for synced tables (#79)
Co-authored-by: Marcelo Soares <marcelo.me.soares@gmail.com>
2026-06-21 10:02:08 -03:00
Copilot
38fa00ddfc
feat: Expose includeHiddenRows expression to bypass CRDT tombstone filter (#78)
Co-authored-by: Marcelo Soares <marcelo.me.soares@gmail.com>
2026-06-20 23:07:05 -03:00
Marcelo Mendonça Soares
84cfbadc45
feat: Require scopeId on domain tables to ensure user isolation (#73) 2026-06-18 01:05:24 -03:00
Marcelo Mendonça Soares
4580326956
feat: Implements foreign key handling (#68) 2026-06-10 17:31:05 -03:00
Marcelo Mendonça Soares
e74caa1400
feat: Implement unique conflict handling to preserve invariants (#64) 2026-06-06 00:55:10 -03:00
Marcelo Mendonça Soares
60cca9cc85
fix: Fix missing entries when syncing multiple nodes (#58) 2026-06-02 01:42:34 -03:00
Marcelo Mendonça Soares
b8ae05c76d
feat: Replace the isDeleted flag by an int CLFlag (#55)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-05-31 14:17:59 -03:00
Marcelo Mendonça Soares
f85239c3a4
feat: Implement the sync protocol (#54)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-05-29 01:54:23 -03:00
Copilot
539f27b5d2
fix: Reject updates referencing soft-deleted rows (#36)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Marcelo Soares <marcelo.me.soares@gmail.com>
2026-05-07 16:31:19 -03:00
Copilot
d04a56520c
feat: Implement merge changes method (#38)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Marcelo Soares <marcelo.me.soares@gmail.com>
2026-05-07 00:42:23 -03:00
Marcelo Mendonça Soares
3545bbba1d
refactor: Replace drift by serverpod as core engine (#33) 2026-05-03 09:09:23 -03:00
Marcelo Mendonça Soares
cbc472523b
chore: Move the drift_offline_first to legacy in favor of Serverpod implementation (#32) 2026-04-24 21:17:11 -03:00
Copilot
027aec5ed0
feat: Split HLC storage into separate timestamp, counter, and node ID columns (#28)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: marcelomendoncasoares <6807059+marcelomendoncasoares@users.noreply.github.com>
2026-04-05 22:40:32 -03:00
Marcelo Mendonça Soares
0c1d63eec7
refactor: Hide the CRDT data normalized table behind a view to keep the application simple (#27) 2026-02-07 23:40:32 -03:00
Marcelo Mendonça Soares
6e0e2c25fa
fix: Remove unnecessary indexes to reduce storage (#22) 2026-02-07 21:00:26 -03:00
Marcelo Mendonça Soares
68bc3bf73f
refactor: Move the Hlc generation from Dart to the database (#20) 2026-02-05 22:38:12 -03:00
Marcelo Mendonça Soares
b747c2e785
feat: Replace the external Hlc class by a proprietary (#19) 2026-02-04 20:11:58 -03:00
Marcelo Mendonça Soares
1e13f1ba76
fix: Disable the triggers by default on the deferred constraints transactions (#13) 2026-02-01 22:57:14 -03:00
Marcelo Soares
abc16d1895
feat: Support specifying the conflicting bias 2026-01-27 15:59:51 -03:00
Marcelo Soares
323a481151
test: Increase the test coverage for triggers SQL generation 2026-01-26 21:34:24 -03:00
Marcelo Soares
6715ef8409
fix: Change the trigger SQL to use ON CONFLICT DO UPDATE instead of OR REPLACE 2026-01-26 21:34:08 -03:00
Marcelo Soares
5f27fb6ebc
chore: Rename the package from the old name 2026-01-26 00:34:08 -03:00
Marcelo Soares
a93f021a7b
chore: Reorganize the package 2026-01-26 00:30:28 -03:00
Marcelo Soares
63a73117e0
chore: Update minimum dart version and run formatter 2026-01-25 23:34:20 -03:00
Marcelo Soares
966fec27db
feat: Implement the sync mechanism 2026-01-25 23:00:01 -03:00
Marcelo Soares
6c4a92f3a2
chore: Mark the temporary migration test as skipped to avoid failures 2026-01-25 22:52:40 -03:00
Marcelo Soares
825fd4d97c
fix: Fix the conversion between CrdtDataEntry and Insertable 2026-01-25 22:52:16 -03:00
Marcelo Soares
eadf1f7d7c
refactor: Improve code organization and reutilization 2026-01-25 00:57:14 -03:00
Marcelo Soares
74d2c728f0
refactor: Transform the table type generic in the extraction method into string parameter 2026-01-24 20:19:28 -03:00
Marcelo Soares
f078e66a51
feat: Basic implementation of the OfflineSyncCrdt methods on SQLite3 2026-01-23 16:47:51 -03:00
Marcelo Soares
f74f94edea
test: Add tests for the HLC initialization process 2026-01-22 00:52:50 -03:00
Marcelo Soares
e3e02a1a32
test: Add tests for the database setup 2026-01-22 00:52:38 -03:00
Marcelo Soares
0a3fb46163
fix: Return the userId to the CRDT data table 2026-01-22 00:51:41 -03:00
Marcelo Soares
cef8ef7df5
fix: Remove unused valueChanged field 2026-01-22 00:45:38 -03:00
Marcelo Soares
427486308d
test: Allow setting a file-based test executor for tests 2026-01-22 00:14:05 -03:00
Marcelo Soares
62689b45d4
test: Ensure isolation of user and node IDs between tests 2026-01-22 00:13:24 -03:00
Marcelo Soares
a8726ef968
fix: Change the build config to store datetime values as ISO8600 strings 2026-01-21 00:54:50 -03:00
Marcelo Soares
ef38c39da7
test: Separate the test artifacts into different files 2026-01-21 00:53:59 -03:00