Skip to content

Implement sync client #70

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 38 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
82bca23
Add serde types for sync lines
simolus3 Apr 14, 2025
14783a0
Avoid some allocations when deserializing
simolus3 Apr 15, 2025
5ec03a4
Add initial bson reader implementation
simolus3 Apr 16, 2025
eb1d619
Split bson implementation across multiple files
simolus3 Apr 16, 2025
491275f
Start tracking checkpoints
simolus3 Apr 17, 2025
387e247
Start setting up Dart tests
simolus3 Apr 17, 2025
a19dd0b
More bson deserialization work
simolus3 Apr 17, 2025
898de16
Properly read data from op entry
simolus3 Apr 21, 2025
c7e4858
Persist sync lines
simolus3 Apr 22, 2025
f06dd35
Apply checkpoint results
simolus3 Apr 23, 2025
a753713
Add powersync_extract with blob support
simolus3 Apr 23, 2025
1fb935e
Track partial checkpoints
simolus3 Apr 23, 2025
58220aa
Adopt golden tests
simolus3 Apr 23, 2025
4d8b965
Port existing sync tests
simolus3 Apr 23, 2025
fa517e4
Set binary data on requests
simolus3 Apr 24, 2025
c3d8b6a
Fix format for Kotlin
simolus3 Apr 24, 2025
2b229c9
Request stream closure on teardown
simolus3 Apr 29, 2025
caa7c05
Handle keepalive messages
simolus3 Apr 29, 2025
2ba3209
Retry on finished uploads
simolus3 Apr 29, 2025
b319650
Remove blob support
simolus3 Apr 29, 2025
87606de
Use git sqlite rs embedded again
simolus3 Apr 29, 2025
f39acd1
Update rust toolchain for CI
simolus3 Apr 29, 2025
3123bad
Don't use mutex routines if unavailable
simolus3 Apr 30, 2025
3a28499
Fix tracking sync progress
simolus3 May 5, 2025
cb5458c
Use checkpoint diff for test
simolus3 May 5, 2025
7f6f892
Allow implicit double -> int conversion
simolus3 May 5, 2025
eb2e8c6
Fix deserializing checkpoints
simolus3 May 6, 2025
052f4c6
Add simple benchmark
simolus3 May 7, 2025
e4ffdad
Revert schema change
simolus3 May 7, 2025
12680b9
Test previous sync interfaces
simolus3 May 8, 2025
6801a49
Fix building WASI
simolus3 May 8, 2025
d16b5d7
Improve mismatch errors
simolus3 May 8, 2025
dff8eac
Use UTC for consistent tests
simolus3 May 8, 2025
7d2d4da
Update emscripten
simolus3 May 8, 2025
5707925
Add missing default annotations
simolus3 May 12, 2025
8f91f28
Update sqlite-rs-embedded
simolus3 May 13, 2025
b969d92
Handle sync lines with escapes
simolus3 May 13, 2025
f505376
Test parsing keepalive messages
simolus3 May 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ jobs:

- name: Setup
run: |
rustup toolchain install nightly-2024-05-18-x86_64-unknown-linux-gnu
rustup component add rust-src --toolchain nightly-2024-05-18-x86_64-unknown-linux-gnu
rustup toolchain install nightly-2025-04-15-x86_64-unknown-linux-gnu
rustup component add rust-src --toolchain nightly-2025-04-15-x86_64-unknown-linux-gnu
rustup target add \
aarch64-linux-android \
armv7-linux-androideabi \
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:

- name: Setup
run: |
rustup toolchain install nightly-2024-05-18-aarch64-apple-darwin
rustup component add rust-src --toolchain nightly-2024-05-18-aarch64-apple-darwin
rustup toolchain install nightly-2025-04-15-aarch64-apple-darwin
rustup component add rust-src --toolchain nightly-2025-04-15-aarch64-apple-darwin
rustup target add \
x86_64-apple-darwin \
aarch64-apple-darwin \
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binaries
Expand All @@ -33,7 +33,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binaries
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binary
Expand All @@ -33,7 +33,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binary
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@ jobs:

- name: Setup
run: |
rustup toolchain install nightly-2024-05-18-x86_64-unknown-linux-gnu
rustup component add rust-src --toolchain nightly-2024-05-18-x86_64-unknown-linux-gnu
rustup toolchain install nightly-2025-04-15-x86_64-unknown-linux-gnu
rustup component add rust-src --toolchain nightly-2025-04-15-x86_64-unknown-linux-gnu
rustup target add \
aarch64-linux-android \
armv7-linux-androideabi \
Expand Down Expand Up @@ -84,8 +84,8 @@ jobs:

- name: Setup
run: |
rustup toolchain install nightly-2024-05-18-aarch64-apple-darwin
rustup component add rust-src --toolchain nightly-2024-05-18-aarch64-apple-darwin
rustup toolchain install nightly-2025-04-15-aarch64-apple-darwin
rustup component add rust-src --toolchain nightly-2025-04-15-aarch64-apple-darwin
rustup target add \
x86_64-apple-darwin \
aarch64-apple-darwin \
Expand Down Expand Up @@ -153,7 +153,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binaries
Expand All @@ -178,7 +178,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binaries
Expand All @@ -203,7 +203,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binary
Expand All @@ -228,7 +228,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binary
Expand All @@ -253,7 +253,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binary
Expand All @@ -278,7 +278,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Setup emsdk
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/wasm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,20 @@ jobs:
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: true

- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Setup emsdk
uses: mymindstorm/setup-emsdk@v14
with:
version: 3.1.68
version: 4.0.7

- name: Build WASM
run: ./tool/build_wasm.sh
2 changes: 1 addition & 1 deletion .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Install Rust Nightly
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-05-18
toolchain: nightly-2025-04-15
components: rust-src

- name: Build binary
Expand Down
Loading