Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
cc476e1
Update CLAUDE.md documentation to include all test files
dsrw Aug 14, 2025
c8d093f
Add GitHub Actions workflow for running tests with Nim 2.2.0
dsrw Aug 14, 2025
6d08a54
Add commit guidelines to CLAUDE.md
dsrw Aug 14, 2025
123dc9b
Add git workflow guidelines for work trees
dsrw Aug 14, 2025
46bd173
Update .gitignore
dsrw Aug 18, 2025
dd37d47
Add ZenHashSet and ZenOrdinalSet implementations
dsrw Aug 14, 2025
613de16
Fix remote sync when no reactor is available
dsrw Aug 14, 2025
233fdbd
Fix camelCase usage and document coding conventions
dsrw Aug 19, 2025
5bade1a
Delete remote subscriptions on ZenContext.close
dsrw Aug 20, 2025
ca9b8b6
Fixed warnings
dsrw Aug 20, 2025
340597c
Combine ZenOrdinalSet and ZenHashSet into unified ZenSet
dsrw Aug 21, 2025
179fbf8
Fix CI build and configure nimble test properly
dsrw Aug 21, 2025
0a41fb8
Merge pull request #2 from dsrw/hashset
dsrw Aug 21, 2025
715f578
Add CRDT support with Y-CRDT integration
dsrw Aug 21, 2025
a81bad0
Add Y-CRDT bindings and futhark integration
dsrw Aug 21, 2025
65b2498
Complete Y-CRDT futhark integration with fixed vector clock logic
dsrw Aug 21, 2025
971fffc
Clean up Y-CRDT binding artifacts and consolidate helper functions
dsrw Aug 21, 2025
2aa11aa
Fix unittest consistency and remove debug statements
dsrw Aug 21, 2025
e9ba98e
Fix build warnings and update documentation with CRDT support
dsrw Aug 21, 2025
d23a17e
Start integrating CRDT support into ZenValue
dsrw Aug 21, 2025
1e15d91
Update CRDT integration status to reflect actual implementation state
dsrw Aug 22, 2025
e3c948a
Implement CRDT support for ZenSeq with dual-mode operation
dsrw Aug 22, 2025
b4ab8b1
Implement CRDT support for ZenSet with dual-mode operation
dsrw Aug 22, 2025
a338bf4
Fix iterator conflicts and Y-CRDT linking for ZenSet CRDT implementation
dsrw Aug 22, 2025
11c9674
Implement Y-CRDT Document Coordination for multi-context sync
dsrw Aug 22, 2025
c092ceb
Implement foundational CRDT sync integration infrastructure
dsrw Aug 22, 2025
52c5d21
Successfully resolve method conflicts between Zen and CRDT value setters
dsrw Aug 22, 2025
7c83701
Consolidate CRDT types into unified_crdt and clean up legacy implemen…
dsrw Aug 22, 2025
c63a78b
Add Y-CRDT build support to CI and nimble tasks
dsrw Aug 22, 2025
8ed1b84
Fix nimble task syntax for Y-CRDT build
dsrw Aug 22, 2025
94745f4
Fix CI to build Y-CRDT before installing nimble dependencies
dsrw Aug 22, 2025
64cf52f
Remove deprecated c feature flag from Y-CRDT build
dsrw Aug 22, 2025
17029ed
Add debugging and fallback for Y-CRDT library detection
dsrw Aug 22, 2025
bbcd143
Enhanced debugging for Y-CRDT library detection
dsrw Aug 22, 2025
c999b54
Add comprehensive debugging for cargo build process
dsrw Aug 22, 2025
ff42275
Fix library path for workspace build structure
dsrw Aug 22, 2025
7ca164a
Add debugging for header file location
dsrw Aug 22, 2025
33b7ace
Fix flatty serialization by excluding callback tables from serialization
dsrw Aug 22, 2025
3447d13
Fix test compilation issues with flatty serialization and type constr…
dsrw Aug 22, 2025
94d0403
Fix CRDT ZenValue value assignment with proper setter and flatty seri…
dsrw Aug 22, 2025
943f8c8
Implement Y-CRDT backend for ZenValue with working document coordination
dsrw Aug 23, 2025
2ddd62e
Temporarily disable CRDT integration to fix test failures
dsrw Aug 23, 2025
75beb44
Temporarily remove Futhark dependency to fix macOS CI build
dsrw Aug 23, 2025
f084ad3
Reintroduce Y-CRDT library integration with working test suite
dsrw Aug 23, 2025
bb27aef
Add git workflow and testing requirements to CLAUDE.md
dsrw Aug 23, 2025
bace6eb
Implement true multi-context Y-CRDT synchronization
dsrw Aug 23, 2025
53af340
Fix CRDT test expectations to match correct synchronization behavior
dsrw Aug 23, 2025
7545567
Implement comprehensive advanced CRDT scenarios and network sync
dsrw Aug 23, 2025
0d3468d
Fix CRDT test failures and compilation errors
dsrw Aug 23, 2025
803227b
Implement CRDT network synchronization integration
dsrw Aug 23, 2025
2899a75
Enable full Y-CRDT backend with real conflict resolution
dsrw Aug 23, 2025
6b0e1fc
Create working CRDT conflict resolution demonstration
dsrw Aug 23, 2025
67c100c
Implement ContextDefault sync mode system for elegant CRDT configuration
dsrw Aug 23, 2025
18f2f15
Fix remaining test failures with ContextDefault system integration
dsrw Aug 23, 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
62 changes: 62 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: πŸ§ͺ Tests

on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]

jobs:
test:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Nim 2.2.0
uses: jiro4989/setup-nim-action@v1
with:
nim-version: '2.2.0'
repo-token: ${{ secrets.GITHUB_TOKEN }}

- name: Install system dependencies (Ubuntu)
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libpcre3-dev build-essential libclang-dev

- name: Install system dependencies (macOS)
if: matrix.os == 'macos-latest'
run: |
# macOS has build tools by default, just make sure we have them
xcode-select --install 2>/dev/null || true

- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
default: true
override: true

- name: Cache Y-CRDT build
uses: actions/cache@v3
with:
path: |
y-crdt
lib
key: ${{ runner.os }}-ycrdt-${{ hashFiles('**/Cargo.lock', 'setup_ycrdt.sh') }}
restore-keys: |
${{ runner.os }}-ycrdt-

- name: Build Y-CRDT library
run: ./setup_ycrdt.sh

- name: Install dependencies
run: nimble install -y --depsOnly

- name: Run tests
run: nimble test
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,11 @@
!/**/
!*.*

.claude/settings.local.json
omnara*/
nimcache/
nimblecache/
nimbledeps/
htmldocs/
nimble.develop
nimble.paths
Expand Down
Loading
Loading