Commit Graph

  • a62894be05 Merge main into server-improvements: resolve conflicts (protocol signatures, error returns) TapTap 2026-07-16 15:08:56 +02:00
  • 93a5768bf0 Merge pull request 'Fix exit() in library code, add --include/--max-size/--min-size' (#12) from exit-and-select into main TapTap 2026-07-16 15:03:38 +02:00
  • bbdf027be8 Fix exit() in library code, add --include/--max-size/--min-size TapTap 2026-07-16 14:15:38 +02:00
  • efb98d8964 Multi-client server, protocol versioning, streaming decompression fixes TapTap 2026-07-16 13:59:41 +02:00
  • 07207cd71d Merge pull request 'Fair benchmark: random data, exclude dry run from metrics' (#10) from fair-benchmark into main TapTap 2026-07-16 13:46:27 +02:00
  • ea551c4a1d Fair benchmark: random data instead of zeros, exclude dry run from metrics TapTap 2026-07-16 13:43:33 +02:00
  • eff00fa021 Merge pull request 'Rsync-compatible flags: -a, -n, -p, --exclude, --delete' (#8) from rsync-flags into main TapTap 2026-07-16 13:38:19 +02:00
  • ab24724cb0 Merge pull request 'Update README and add feature tests for rsync-compatible flags' (#9) from update-readme-and-tests into rsync-flags TapTap 2026-07-16 13:38:13 +02:00
  • 2ff51246c3 Update README and add feature tests for rsync-compatible flags TapTap 2026-07-16 13:31:43 +02:00
  • 284bf8f8bc rsync flags: -a, -n, -p, --exclude, --delete TapTap 2026-07-16 12:39:05 +02:00
  • f778d1903c Merge pull request 'Streaming zstd: switch to ZSTD_compressStream2 / ZSTD_decompressStream' (#7) from streaming-zstd into main TapTap 2026-07-16 12:31:49 +02:00
  • 04aad76481 Merge pull request 'Quick wins: ControlMaster, -z alias, --progress, fix write warning' (#6) from quick-wins into main TapTap 2026-07-16 12:30:13 +02:00
  • 52571bc960 streaming zstd: switch to ZSTD_compressStream2 / ZSTD_decompressStream TapTap 2026-07-16 12:29:31 +02:00
  • d1a23fc4df quick-wins: ControlMaster, -z alias, --progress, fix write warning TapTap 2026-07-16 12:28:16 +02:00
  • 78cc735cff Merge pull request 'Performance tuning: test data, SSH buffer, and configurable chunk size' (#5) from perf-and-tuning into main TapTap 2026-07-16 12:24:44 +02:00
  • ca29109664 perf: downsized test data, increased SSH socket buffer, and made chunk size configurable TapTap 2026-07-16 12:20:02 +02:00
  • 270623b90e Merge pull request 'Phase 1+2: bug fixes and dead code cleanup' (#4) from bugfix-cleanup into main TapTap 2026-07-16 12:11:31 +02:00
  • 8f4ea62ae7 Phase 1+2: bug fixes and dead code cleanup TapTap 2026-07-16 12:08:09 +02:00
  • 81800fa661 Merge pull request 'refactor: split monolithic modules and extract shared components' (#1) from cleanup into main TapTap 2026-07-16 11:58:37 +02:00
  • 56d26f083c Merge pull request 'fixup: address PR review comments' (#3) from fixup-pr-comments into cleanup TapTap 2026-07-16 11:58:26 +02:00
  • d36768792a fixup: address PR review comments TapTap 2026-07-16 11:54:20 +02:00
  • 02619cca5c refactor: split monolithic modules and extract shared components TapTap 2026-07-15 19:36:26 +02:00
  • b3f69208ce cleanup: remove dead code, fix bugs, refactor SSH dest parsing TapTap 2026-07-07 19:07:24 +02:00
  • 783400d7e9 Merge pull request 'feat: add SSH transport, rsync-style CLI, and --stdio server mode' (#16) from transport-abstraction into main TapTap 2026-07-07 18:59:45 +02:00
  • afca5e4f69 test: expand SSH tests to all valid flag combinations TapTap 2026-07-07 18:55:47 +02:00
  • e099dc4843 fix: skip wrappers dirs in SSH PATH scan; verify symlink with which TapTap 2026-07-06 20:39:59 +02:00
  • c2bdf68429 fix: check SSH symlink by file existence instead of PATH lookup TapTap 2026-07-06 20:33:51 +02:00
  • 1a12484469 fix: add build dir to PATH in nix-shell; robust SSH PATH detection in check_ssh_localhost TapTap 2026-07-06 20:30:38 +02:00
  • a96d48f0ed feat: default log level to WARNING, add -v/--verbose flag TapTap 2026-07-06 20:26:20 +02:00
  • 372c559ef2 fix: SSH transport - log to stderr, use-after-free, systemd scope conflict TapTap 2026-07-06 20:15:36 +02:00
  • 3b92501dc7 feat: add SSH test cases to test.py TapTap 2026-07-06 20:03:57 +02:00
  • 1012c5c151 refactor: address PR review feedback TapTap 2026-07-06 19:54:22 +02:00
  • 5b4395ada1 fix: build binaries before pre-flight checks in test.py TapTap 2026-07-06 18:52:56 +02:00
  • c0dfa52f67 fix: handle TimeoutExpired in server --stdio pre-flight check TapTap 2026-07-06 18:49:02 +02:00
  • fbd7ccf4dd feat: add SSH transport, rsync-style CLI, and --stdio server mode TapTap 2026-07-06 18:42:33 +02:00
  • 29ad48e5d6 Merge pull request 'docs: update README for metadata transfer, merged File/FileReceive, test.py' (#15) from readme-update into main TapTap 2026-07-05 21:11:55 +02:00
  • e4ab2a414c docs: add LAN/WAN benchmark results table to README TapTap 2026-07-05 21:11:33 +02:00
  • c2ada295ca docs: update README for metadata transfer, merged File/FileReceive, test.py changes TapTap 2026-07-05 21:07:24 +02:00
  • 24f9a2afb0 Merge pull request 'feat: optional metadata transfer, merged File/FileReceive, sendfile fix, test.py refactor' (#14) from metadata-transfer into main TapTap 2026-07-05 21:05:40 +02:00
  • 1a6879530e refactor: shrink test.py to 401 lines, extract helpers, flatten profile/rsync into run_profile TapTap 2026-07-05 21:04:27 +02:00
  • 2ec8d4202e refactor: deduplicate test.py logic, fold no-metadata into TEST_CASES, fix sendfile metadata bug TapTap 2026-07-05 20:57:21 +02:00
  • b650911945 Merge pull request 'refactor: merge File/FileReceive, add optional metadata transfer (-M)' (#13) from metadata-transfer into main TapTap 2026-07-05 20:53:31 +02:00
  • c55d89c40f fix: sendfile path now conditionally sends metadata TapTap 2026-07-05 20:52:18 +02:00
  • 1d90d3230e fix: make file_send_single_calls metadata conditional, add missing stdbool.h TapTap 2026-07-05 20:49:57 +02:00
  • 12ae8c7f7a test: add Standard (no metadata) case to test.py TapTap 2026-07-05 20:47:32 +02:00
  • 5fa0dc11e1 fix: address PR review comments TapTap 2026-07-05 20:45:34 +02:00
  • 660834d453 Merge branch 'main' into metadata-transfer, resolve conflicts TapTap 2026-07-05 20:29:04 +02:00
  • 1f75522d21 Merge pull request 'bench: add speedup metrics vs rsync and theoretical uncompressed throughput' (#11) from benchmark-metrics into main TapTap 2026-07-05 20:26:18 +02:00
  • d4fdc16c9e bench: enable -M (metadata) in benchmark for fair rsync comparison TapTap 2026-07-05 20:23:31 +02:00
  • 1444eb0f59 Merge pull request 'Update opencode.json' (#12) from update-opencode.json into main TapTap 2026-07-05 20:23:20 +02:00
  • 11b1765719 Update opencode.json TapTap 2026-07-05 20:23:04 +02:00
  • 4a1e666365 refactor: merge File/FileReceive, add optional metadata transfer with -M flag TapTap 2026-07-05 20:21:46 +02:00
  • b99b733025 bench: add speedup metrics vs rsync and theoretical uncompressed throughput TapTap 2026-07-05 19:57:53 +02:00
  • a1189e51eb Merge pull request 'bench: run rsync over localhost network for fair comparison' (#10) from networked-rsync into main TapTap 2026-07-05 19:50:41 +02:00
  • 7d528b1b4d test: use temp dir for rsync error retry TapTap 2026-07-05 19:06:25 +02:00
  • 251d2a3407 test: simplify rsync daemon startup, capture stderr TapTap 2026-07-05 19:06:12 +02:00
  • 266c1e37c7 test: skip systemd-run boilerplate in rsync errors, add raw retry TapTap 2026-07-05 18:57:37 +02:00
  • b680a8dff4 test: fix indentation in rsync error handling TapTap 2026-07-05 18:46:45 +02:00
  • 895927fbad test: include stdout in rsync error output TapTap 2026-07-05 18:44:36 +02:00
  • 6a609c1b07 test: add text=True to rsync subprocess.run TapTap 2026-07-05 18:42:35 +02:00
  • 1c26a7a712 test: robust netem setup and rsync daemon startup TapTap 2026-07-05 18:33:04 +02:00
  • 0c2364bd62 test: clear dest dir at start of run TapTap 2026-07-05 18:11:23 +02:00
  • 5170155112 bench: run rsync over localhost network for fair comparison TapTap 2026-07-05 16:58:13 +02:00
  • f77e6bd16a Merge pull request 'bench: network profiles (LAN/WAN), jitter, packet loss, rsync comparison' (#9) from improved-benchmark into main TapTap 2026-07-05 16:52:26 +02:00
  • 7a1c491f7f bench: default is LAN-only, --unlimited and --wan for exclusive profiles TapTap 2026-07-05 16:51:11 +02:00
  • a90e510424 bench: --wan runs only WAN, not also Unlimited TapTap 2026-07-05 16:48:45 +02:00
  • 39faff1c4c bench: LAN 20ms ±1ms, 0.1% loss TapTap 2026-07-05 16:47:35 +02:00
  • 89274c0fe2 bench: network profiles (LAN/WAN), jitter, packet loss, rsync comparison TapTap 2026-07-05 16:45:08 +02:00
  • 433a6952e5 Merge pull request 'feat: add -f/--sendfile for zero-copy file transfer' (#8) from sendfile-support into main TapTap 2026-07-05 16:39:19 +02:00
  • a48b3e3a17 refactor: pass use_sendfile to config_create TapTap 2026-07-05 16:38:13 +02:00
  • d0c57ba2bb docs: update README with sendfile details and examples TapTap 2026-07-05 16:33:21 +02:00
  • 2fb7203c82 feat: sendfile works with -m, error on -f + -c/-s TapTap 2026-07-05 16:31:08 +02:00
  • 01045d7d14 feat: add -f/--sendfile for zero-copy file transfer TapTap 2026-07-05 16:25:20 +02:00
  • e7c23c135b docs: update README with --source-dir/--dest-dir/--save-to-disk and test.py TapTap 2026-07-04 22:57:58 +02:00
  • 1c5099b963 Merge pull request 'test: auto-generate test files, verify content, CLI args, test_data dir' (#7) from improve-test-py into main TapTap 2026-07-04 22:56:58 +02:00
  • 7cacce24e3 test: remove explicit compression level 0 from test case TapTap 2026-07-04 22:51:27 +02:00
  • 88a4d91c2e chore: ignore __pycache__ TapTap 2026-07-04 22:39:59 +02:00
  • f65cd02627 refactor: --source-dir, --dest-dir, --save-to-disk as CLI args TapTap 2026-07-04 22:39:51 +02:00
  • b9d1a8c281 chore: ignore test_data/ directory TapTap 2026-07-04 22:20:32 +02:00
  • 4867e04677 fix: scanner mid-directory resume bug, -c -s protocol fix, 50 MB test data TapTap 2026-07-04 22:20:24 +02:00
  • 7f6fa968ee test: auto-generate test files, verify content, CLI args, test_data dir TapTap 2026-07-04 22:02:39 +02:00
  • 42870ec719 Merge pull request 'docs: update README with STATUS_CHUNK protocol and -s flag details' (#6) from update-readme into main TapTap 2026-07-04 21:51:05 +02:00
  • 3146cd7cde docs: update README with STATUS_CHUNK protocol and -s flag details TapTap 2026-07-04 21:50:45 +02:00
  • b8186d4b52 Merge pull request 'feat: implement chunk serialization protocol with -s flag' (#5) from chunk-serialization into main TapTap 2026-07-04 21:49:55 +02:00
  • 1d1f93f800 bench: add chunk serialization combos (-s, -c -s, -m -s, -m -c -s) to test.py TapTap 2026-07-04 21:47:49 +02:00
  • c4aeed9f4d feat: implement chunk serialization protocol with -s flag TapTap 2026-07-04 21:38:46 +02:00
  • e0f64e8d43 Merge pull request 'Add compression round-trip and scanner tests; fix 2 bugs found along the way' (#4) from add-tests into main TapTap 2026-07-04 21:29:29 +02:00
  • 43c0a1395d Add compression and scanner tests; fix chunk_decompress data ownership bug, data_destroy NULL safety, chunk_compress memory leak TapTap 2026-07-04 21:25:34 +02:00
  • 38019e7e32 Merge pull request 'Fix config protocol mismatch and format string bugs' (#3) from fix-proto-and-format into main TapTap 2026-07-04 21:12:10 +02:00
  • f189adcbff fix: config_send proto mismatch (use_compression→compression_level) and format string %d→%zu for size_t TapTap 2026-07-04 21:11:34 +02:00
  • a242a6c031 Merge pull request 'Fix critical issues and all tests' (#2) from fix-critical-issues into main TapTap 2026-07-04 21:09:21 +02:00
  • fe8fca47b4 fix: re-apply socket.c file descriptor check after merge TapTap 2026-07-04 21:08:30 +02:00
  • fefa968945 Merge remote-tracking branch 'origin/main' into fix-critical-issues TapTap 2026-07-04 21:07:45 +02:00
  • 1486ac7088 fix: chunk_decompress compilation, chunk_compress data ptr, chunk_format serialization, file_destroy leak, test_chunk memcmp TapTap 2026-07-04 21:02:59 +02:00
  • 7c02b16325 Revert "Merge pull request 'Fix critical issues: implement chunk_decompress and fix socket file descriptor check' (#1) from fix-critical-issues into main" TapTap 2026-07-04 20:51:35 +02:00
  • d176507047 Merge pull request 'Fix critical issues: implement chunk_decompress and fix socket file descriptor check' (#1) from fix-critical-issues into main TapTap 2026-07-04 20:48:04 +02:00
  • ae4c8ff9f0 fix: remove some benchmarks so that its faster TapTap 2026-07-04 20:45:47 +02:00
  • f4f9adb007 Update opencode.json TapTap 2026-07-04 20:29:57 +02:00
  • 01eb20b95d fix: let opencode do more by itself add-gh-dependency TapTap 2026-07-04 20:29:08 +02:00
  • 95e3bded60 Update shell.nix TapTap 2026-07-04 20:28:00 +02:00