Matt Hill
86b0768bbb
audit fixes, repo restructure, and documentation
...
Soundness and performance audit (17 fixes):
- See AUDIT.md for full details and @claude comments in code
Repo restructure:
- Inline json-ptr and json-patch submodules as regular directories
- Remove cbor submodule, replace serde_cbor with ciborium
- Rename patch-db/ -> core/, patch-db-macro/ -> macro/,
patch-db-macro-internals/ -> macro-internals/, patch-db-util/ -> util/
- Purge upstream CI/CD, bench, and release cruft from json-patch
- Remove .gitmodules
Test fixes:
- Fix proptest doesnt_crash (unique file paths, proper close/cleanup)
- Add PatchDb::close() for clean teardown
Documentation:
- Add README.md, ARCHITECTURE.md, CONTRIBUTING.md, CLAUDE.md, AUDIT.md
- Add TSDocs to TypeScript client exports
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 19:06:42 -07:00
Alex Inkin
d8cabe2a65
chore: update Angular ( #65 )
2025-05-23 15:58:46 -06:00
Aiden McClelland
0df18c651f
fix patching arrays... again
2025-01-24 16:48:38 -07:00
Aiden McClelland
d3182d23da
fix patching of arrays
2025-01-16 16:41:48 -07:00
Alex Inkin
c537a07ea9
feat: move cache to optional constructor argument, so it can be exter… ( #64 )
...
* feat: move cache to optional constructor argument, so it can be externalized
Signed-off-by: waterplea <alexander@inkin.ru >
* chore: make cache private
Signed-off-by: waterplea <alexander@inkin.ru >
---------
Signed-off-by: waterplea <alexander@inkin.ru >
2024-06-21 21:26:18 -06:00
Matt Hill
7aa53249f9
remove bootstraop and drop alias for dump ( #63 )
2024-06-06 07:30:01 -06:00
Matt Hill
2c8b29ec8f
permit futuristic revisions
2024-02-25 13:19:35 -07:00
Lucy
8aeded3321
update ts-node and typescript ( #59 )
2023-06-07 14:55:31 -06:00
Matt Hill
fcfa917710
update package json ( #58 )
2023-03-15 15:00:07 -06:00
Lucy C
85959db110
update packages ( #57 )
2023-03-07 20:05:26 -07:00
Matt Hill
57af14469b
only update nodes once per patch ( #55 )
2022-11-28 11:55:10 -07:00
Alex Inkin
5104086317
feat: remove ionic storage ( #51 )
2022-11-28 11:55:10 -07:00
Matt Hill
6c3079786f
handle escaping and honor root pointer ( #52 )
...
* handle escaping and honor root pointer
* Update client/lib/json-patch-lib.ts
* Update client/lib/json-patch-lib.ts
Co-authored-by: Lucy C <12953208+elvece@users.noreply.github.com >
2022-10-03 10:56:50 -06:00
Matt Hill
4d987b1921
don't emit until bootstrapped with data ( #47 )
2022-09-21 10:51:32 -06:00
Matt Hill
20beb61baa
much more efficient ( #46 )
...
* much more efficient
* update children too
* better compare
2022-09-14 11:21:00 -06:00
Matt Hill
74c01eb5db
fix updating revision number on dumps
2022-09-06 13:54:33 -06:00
Matt Hill
bdf0b32be6
remove stash and store completely
2022-09-02 15:13:08 -06:00
Alex Inkin
f4732b18a2
Refactor sources ( #40 )
...
* major refactor to exclude multiple sources
Co-authored-by: Matt Hill <matthewonthemoon@gmail.com >
2022-08-21 14:36:07 -06:00
waterplea
2fef1e572c
chore: add prettier and reformat lib
2022-07-24 09:01:01 -06:00
waterplea
c7006e0eb2
fix: patchdb should not bundle rxjs but instead rely on the version in the app
2022-07-24 09:01:01 -06:00
Matt Hill
ec35e5f14c
refactor apply operation to account for arrays ( #38 )
...
* refactor apply operation to account for arrays
* fix buig
2022-06-29 17:43:12 -06:00
waterplea
d24bd1c513
fix: properly handle source errors without stopping the stream
2022-06-29 08:18:48 -06:00
Alex Inkin
9a28793f27
refactor: remove nested subscription ( #36 )
2022-06-22 15:23:35 -06:00
Alex Inkin
e138b88e75
feat: make watch$ strictNullCheck compatible ( #34 )
...
* feat: make `watch$` strictNullCheck compatible
* chore: send initial value to subscribers
* let values emit when undefined
* fix: properly check if data can be processed
Co-authored-by: Lucy Cifferello <12953208+elvece@users.noreply.github.com >
2022-06-19 13:19:00 -06:00
Alex Inkin
6f6c26acd4
feat(client): remove data mutation ( #32 )
...
* feat(client): remove data mutation
* chore: address comments and fix some other issues
* chore: send the most recent cache upon subscription
2022-05-26 16:23:56 -06:00
Drew Ansbacher
2ca4b256b3
Update patch-db.ts
2021-12-28 15:29:10 -07:00
Drew Ansbacher
4fb0d3570b
Update patch-db.ts
2021-12-28 15:29:10 -07:00
J M
8422315b33
Fix: Merge conflict
...
Co-authored-by: Drew Ansbacher <drew.ansbacher@gmail.com >
2021-12-28 15:29:10 -07:00
Drew Ansbacher
e2a51475a7
polling working without refresh
2021-12-28 15:29:10 -07:00
Matt Hill
678d7b3322
add mock source
2021-12-28 15:29:10 -07:00
Lucy Cifferello
99500ec68b
readme for client build
2021-12-28 15:29:10 -07:00
Matt Hill
8b0a39ae0b
don't delete observables whose value is undefined
2021-12-28 15:29:10 -07:00
Lucy Cifferello
be608c5f15
re-install node modules with npm prefix for os build consistency
2021-12-28 15:29:10 -07:00
Drew Ansbacher
ab9305fc92
patch client reset
2021-12-28 15:29:10 -07:00
Matt Hill
7a81c7da57
update WS for unauthorized response
2021-12-28 15:29:10 -07:00
Drew Ansbacher
e9792f7afe
local sequence bug
2021-12-28 15:29:10 -07:00
Matt Hill
c3e28cb683
revert source connection monitor
2021-12-28 15:29:10 -07:00
Matt Hill
c03c876098
add connection monitor to sources
2021-12-28 15:29:10 -07:00
Drew Ansbacher
60320e3083
document bug fix
2021-12-28 15:29:10 -07:00
Matt Hill
a72c1c5499
send message when websocket open and clear store cache on reset
2021-12-28 15:29:10 -07:00
Matt Hill
b34557e8d3
update deps and hard code
2021-12-28 15:29:10 -07:00
Matt Hill
ca8da5da6b
fix case where cache is empty object
2021-12-28 15:29:10 -07:00
Matt Hill
3e2e1c92dd
revert
2021-12-28 15:29:10 -07:00
Drew Ansbacher
56d7cae16d
in source as well
2021-12-28 15:29:10 -07:00
Drew Ansbacher
cf43a9a83e
extends hashmap
2021-12-28 15:29:10 -07:00
Drew Ansbacher
88084f60a2
hashmap
2021-12-28 15:29:10 -07:00
Matt Hill
5699702656
return whole doc, better unsubscribe
2021-12-28 15:29:10 -07:00
Matt Hill
2db0449d12
our own json patch lib and everything working
2021-07-09 15:12:58 -06:00
Matt Hill
bddbc850ab
stashing to handle out-of-sequence revisions
2021-07-09 15:12:58 -06:00
Matt Hill
0cbdc781b0
re-introduce watch
2021-07-09 15:12:58 -06:00