github-actions[bot]
83b7246439
Version packages ( #4833 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-09 10:24:41 -05:00
Matthieu Sieben
f6f100c337
Avoid alteration of record data ( #4835 )
2026-04-08 16:11:08 +02:00
Matthieu Sieben
c62651dd69
Fix support for legacy blobs in lex SDK ( #4828 )
...
* Allow validation of legacy blobs (in 'validate' mode)
* tidy
* tidy
* tidy
* changeset
* tidy
* review comments
* update skills
* tidy
* Add `TypedBlobRef`
* fix style
* review comments
* lint
2026-04-07 20:11:46 +02:00
github-actions[bot]
8445e8a9aa
Version packages ( #4770 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-19 15:53:07 +01:00
Matthieu Sieben
6a88461c5a
Allow processing of invalid lex data ( #4761 )
...
* Allow processing of responses with invalid lex data
* Apply suggestions from code review
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* add tests
* tidy
* Add non-strict validation mode to lex SDK (#4766 )
* non-strict validation mode
* apply strict option to client responses
* update readme
* Apply suggestions from code review
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* Allow `-1` BlobRef size in non-strict mode
* review comments
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* tidy
* tidy
* tidy
* tidy
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-03-19 13:50:11 +01:00
github-actions[bot]
88326d2833
Version packages ( #4703 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-03 15:45:46 +01:00
Matthieu Sieben
52834aba18
Lex SDK error handling improvements ( #4688 )
...
* Lex SDK error handling improvements
* Allow `WWWAuthenticate` to have multiple challenges for the same scheme
* tidy
* add tests
* tests
* review comments
* tidy
* tidy
* tidy
* tidy
2026-03-02 15:37:00 +01:00
github-actions[bot]
caad88223f
Version packages ( #4653 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-02-20 09:05:35 +01:00
Matthieu Sieben
ea5df64db9
Various Lex SDK improvements ( #4660 )
...
* Various Lex SDK improvements
* changeset
* Improve typeing of `string()` schemas
* fix tests
* improve backwards compatibility
2026-02-19 13:52:24 +01:00
github-actions[bot]
27cdeb4e86
Version packages ( #4604 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-02-06 15:12:15 +01:00
Matthieu Sieben
ed61c62f31
Add docs in lex SDK packages ( #4601 )
...
* Fix `exports` field in package.json
* tidy
* AT Protocol
2026-02-06 14:40:54 +01:00
github-actions[bot]
915f9065d3
Version packages ( #4584 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-01-30 14:20:33 -03:00
Matthieu Sieben
369bb02b9f
@atproto/lex-client error typing improvements (#4589 )
2026-01-30 14:01:17 +01:00
Matthieu Sieben
d54d7077eb
DID document validation ( #4580 )
...
* DID document validation
* relax `import/no-deprecated` lint rule
2026-01-27 08:25:13 +01:00
github-actions[bot]
595dd20323
Version packages ( #4561 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-01-23 13:29:23 -06:00
Matthieu Sieben
99963d002a
lex SDK improvements ( #4571 )
...
* Improve code coverage of `@atproto/lex-data` tests
* Improve typing of `@atproto/syntax` type assertion utilities
* Improve performance of `@atproto/lex-schema ` string format checking
* Remove `assertX` string format assertion utilities
* tidy
* tidy
* Rename `isLanguageString` to `validateLanguage`
* add string format utils
* tidy
* Refactor uri validation to use `@atproto/syntax`
* More language validation to @atproto/syntax
2026-01-21 16:15:47 +01:00
Matthieu Sieben
7310b9704d
Fix behavior of "default" and assignment to LexValue ( #4562 )
...
* Fix inability to assign (object containing) open union results to `LexMap` type
* properly support and type default values
* strong cohesion
* changeset
* tidy
* Add validation error as cause when handling invalid records
* tidy
* Update `cborg` dependency, fixing encoding of strings with invalid surrogate pairs, and ignoring `undefined` object properties
* tidy
* Simplify encoding logic of `number`
* Improvements around usage of `noUndefinedVals`
* Memoize array schemas (without options)
* Memoize empty params schemas
* tidy
* tidy
2026-01-20 13:20:56 +01:00
github-actions[bot]
c2615a7eee
Version packages ( #4530 )
2026-01-12 21:13:16 +02:00
Matthieu Sieben
dfd4bee4ab
Improve distinction between external Cid interface and CID implementation ( #4528 )
...
* Improve distinction between external `Cid` interface and `CID` implementation
* tests
* tidy
* tidy
2026-01-09 14:05:31 +01:00
github-actions[bot]
0b03086d35
Version packages ( #4518 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-01-08 18:12:54 +01:00
Matthieu Sieben
d78484f94d
@atproto/lex improvements (bis) (#4512 )
...
* `@atproto/lex` improvements (bis)
* tidy
* tidy
2026-01-08 15:31:49 +01:00
github-actions[bot]
0093727fc4
Version packages ( #4505 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-01-06 15:59:52 +01:00
Matthieu Sieben
2f78893ace
Small @atproto/lex improvements ( #4501 )
...
* Avoid escaping export identifier when it is a known global
* Use a record type instead of a record schema type as the generic parameter for `ListRecord`
* Export everything from `@atproto/lex-data` and `@atproto/lex-json`
* Add lex-json and lex-data to lex readme
* lock
* Apply defaults when running `schema.$build()` on objects and records.
* changeset
* simplify $Typed and $TypedMaybe
* tidy
* tidy
* Add `enumBlobRefs` utility function
* Add an `indexFile` option that allows generating an "index.ts" file that re-exports every tld namespaces.
* readme
* Add `base64ToUtf8` and `utf8ToBase64` utilities
* Add service auth authentication method
2026-01-06 15:47:13 +01:00
github-actions[bot]
8e759970af
Version packages ( #4497 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-01-02 09:48:32 +01:00
Matthieu Sieben
9af7a2d122
Password based agent implementation ( #4443 )
...
* Password based agent implementation
* tidy
* tidy
* wip
* tidy
* wip
* tidy
* wip
* tests
* tidy
* websocket
* tidy
* tidy
* tidy
* tidy
* tidy
* tidy
* tidy
* tidy
* changeset
* codegen
* tidy
* tidy
* tidy
* tidy
* tests
* tidy
* tidy
* tests
* tidy
* tidy
* tidy
* wip
* tidy
* memoize
* tidy
* tests
* tidy
* files reorg
* Ensure that default values match constraints
* wip
* use vitest to test lex
* Add readme
* fix lint
* add vitest workspace config
* vitest config
* vitest-cfg
* tests
* ignore coverage
* tidy
2026-01-01 13:28:29 +01:00
github-actions[bot]
95bd491ecb
Version packages ( #4466 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-30 10:26:18 -06:00
Matthieu Sieben
e6b6107e02
Lex SDK improvements ( #4457 )
...
* Lex SDK improvements
* changeset
* tidy
* tidy
* Fix `include` option in `tsconfig.test.json` files
* tidy
* ignore "require" in cjs files
* tidy
* tidy
* Improve error management
* rename xrpc-error file
* tests
* fix lint
* lint
* tidy
* puppeteer cache busting
* fix oauth tests
* tidy
* wip
* tidy
* tidy
* tidy
* Forbid use of unsafe integers
2025-12-17 16:14:15 +01:00
github-actions[bot]
104e6ed37b
Version packages ( #4412 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-08 16:05:29 -03:00
Matthieu Sieben
693784c3a0
Add support for base64url encoding/decoding ( #4422 )
...
* Add support for base64url encoding/decoding
* add tests
* tidy
* improve tests
* tidy
* tidy
* tidy
2025-12-05 11:40:29 +01:00
github-actions[bot]
dc08244c24
Version packages ( #4386 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-02 11:05:55 -06:00
Matthieu Sieben
a487ab8afe
Add tests ( #4401 )
...
* Add tests
* Fixes
* drop `lexiconType` property
* Simplify `ParamsSchema` interface
* tidy
* More tests
2025-12-01 17:12:47 +01:00
Matthieu Sieben
688f9d6759
Add changelog to npm packages and @atproto/lex readme ( #4397 )
...
* Add changelog to npm packages and `@atproto/lex` readme
* changeset
2025-11-30 20:02:12 +01:00
Matthieu Sieben
1d445af2a7
lex SDK improvements ( #4390 )
...
* Add `l.nullable` schema builder
* Use unique symbol to describe Validator type metadata
* fixup! Add `l.nullable` schema builder
* Rework object validation logic to work without `options` argument
* Do not use symbol for type inference
* Use `Issue` classes to represent validation issues
* Properly apply default value with `const` and `enum` schemas
* style
* Require `l.discriminatedUnion` discriminator field to be a literal or enum schema
* Add `l.refined` schema
* Add more lexicons document validation tests
* wip
* use "assert" fn
* rework refine system
* use assert instead of check fn
* tidy
* Rename schema methods `validate`, `check` and `maybe` to `safeParse`, `matches` and `ifMatches` respectively.
* docs
* changeset
2025-11-30 14:35:15 +01:00
github-actions[bot]
72d4bfcfc5
Version packages ( #4370 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-11-24 23:27:19 +01:00
Matthieu Sieben
261968fd65
New TS SDK ( #4366 )
...
* lex
* packaging
* moke packaging
* revert test changes
* do not build temp
* tidy
* automatically build the list of `@atproto/lex/com` lexicons
* fix build
* Remove "com" export
* ridy
* remove manifest option
* tidy
* rename
* tidy
* tidy
* tidy
* tests
* add procedure params
* stricter tests
* tidy
* Improve ui8 parsing
* tidy
* tidy
* code split
* code split
* fix reserved keywords conflict
* exclude packages/lex/src/tests/lexicons from lint
* reserved keywords
* safe identifier
* fix build
* move lib.js to src/lib.ts
* Move tests dir
* fix ci ?
* increast lint size
* Remove `Record` type alias for recordsz
* fix package json exports
* Add support for unsafe characters in defs and nsids
* tidy
* token tests
* tidy
* name consistency
* remove unused `unknownKeys` params option
* Fix "moving" keys in `DictSchema` (remove `IntersectionSchema`)
* REview comments
* adapt shebang in `env`
* Make sure union object have their $type property set in typings
* fix
* Improve typing of `UnknownTypedObject`
* lex improvements
* code reorg
* split lex-builder
* tidy
* improve packaging
* rename lex-validation to lex-schema
* lex client
* rename prettifier option
* add lex-client as dependency to "lex"
* Export client as part of main export
* re-write example app using @atproto/lex
* add missing lex-client to tsconfig
* tidy
* add "null" schema type
* Smaller bundle code footprint
* tidy
* correctness
* tidy
* code split and improved testing
* tidy
* refactor common utils
* test all implementations
* improve tests
* tidy
* fix build
* fixes
* tidy
* lint
* tests
* tidy
* fix oauth-example app
* tidy
* tidy
* tests
* tidy
* Return an actual `Uint8Array` from `fromBase64Node`
* tidy
* adapt xrpc-server
* Rename `Lex` to `LexValue`
* minor fixes
* fix tests
* fix tests
* tidy
* fix
* tidy
* tidy
* fix `verifyCidForBytes` implementation
* fix imports
* tidy
* split lex-json in own package
* make base64 tests faster
* Add interop tests
* lint error
* tidy
* tidy
* changeset
* implement lex-resolver and lex-install
* remove need for polyfill
* readme
* more details
* tidy
* allow specifying `service` header on a per request basis
* tidy
* tidy
* tidy
* tidy
* add custom/intersection validation schemas
* tidy
* tidy
* remive un-necessary util
* improve typing of `l.object` output
* make "name" required in lexicon method errors
* fix tests
* tidy
* tidy
* add error responses
* update readme
* add "like " to example
* readme improvements
* tidy
* error management improvements
* Improve error results
* tidy
* refactor
* tidy
* lock
* Update binary to `ts-lex`
* tidy
* tidy
* Add "Overview" section
* fix build
* update bin
* readme-improvements
* paul's feedback
* Update packages/lex/lex/README.md
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com >
* Initial plan
* Address README review comments
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
* Clarify client configuration inheritance behavior
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
* Document allowLegacyBlobs default and compatibility implications (#15 )
* Initial plan
* Add notes about default setting and compatibility for allowLegacyBlobs
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
* Rename `Json` to `JsonValue` in lex-json package (#14 )
* Initial plan
* Rename Json to JsonValue in lex-json package and dependent packages
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
* Remove import alias for JsonValue in ipld.ts
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
* Update packages/lex/lex/README.md
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
* Update packages/lex/lex/README.md
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
* review comments and fixes
* Add lex to the dockerfiles
* tidy
* changeset for lex packages
* tidy
* Tidy
* tidy
* tidy
* Move language parsing to lex-data
* tidy
* doctoc
* error handling
* tidy
* tidy
* tidy
* fix
---------
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com >
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: matthieusieben <813661+matthieusieben@users.noreply.github.com >
Co-authored-by: Paul Frazee <pfrazee@gmail.com >
2025-11-24 21:01:16 +01:00