Matthieu Sieben
b3ce11ae2e
OAuth provider UI unification ( #4820 )
...
* refactor
* tidy
* tidy
2026-04-14 16:46:18 +02:00
Matthieu Sieben
d0c136cba2
Move PDS code over to @atproto/lex ( #4408 )
2026-03-23 18:10:16 +01:00
Matthieu Sieben
1c473ab555
Update @atprto/lexicon-resolver to use Lex SDK ( #4697 )
...
Use Lex SDK as codegen for `@atprto/lexicon-resolver`
2026-03-03 13:57:33 +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
Matthieu Sieben
fefe70126d
oauth-client-expo (#4220 )
...
* `oauth-client-expo`
* working on android
* remove example app
* tidy
* tidy
* Do not install full expo
* tidy
* chngeset
* chngeset
* load expo
* tidy
2025-10-02 11:59:16 +02:00
Matthieu Sieben
93516238c9
Disable linting/formatting of protobuf files ( #4185 )
2025-10-02 10:00:07 +02:00
devin ivy
331a356ce2
Lexicon resolver package ( #4069 )
...
* lexicon: doc validation compatibility with published lexicons
* lexicon-resolver: setup new package
* lexicon-resolver: implement record resolution
* lexicon-resolver: implement lexicon resolution
* lexicon-resolver: test record resolution
* repo: add option to verify CIDs found in CARs. tidy.
* lexicon-resolution: verify CIDs in proof CAR
* lexicon-resolution: tests and fixes
* tidy
* lexicon-resolution: add entrypoint
* lexicon-resolver: tidy errors
* lexicon-resolver: readme
* lexicon-resolver: changeset
* prettier
* eslint
* tidy
* tidy
* tidy
* enable CID-to-content verification within CARs by default
* lexicon-resolver: tidy types, application of defaults, gitattributes
* lexicon-resolver: add interface and builder fn for lexicon and record resolvers
* lexicon-resolver: update readme
* tidy
* lexicon-resolver: cover error cases in record resolution
---------
Co-authored-by: Matthieu Sieben <matthieu.sieben@gmail.com >
2025-08-17 22:45:51 -04:00
Matthieu Sieben
371e04aad2
Account management page ( #3659 )
...
---------
Co-authored-by: Eric Bailey <git@esb.lol >
2025-04-15 17:15:27 +02:00
Matthieu Sieben
cc4122652e
Split OAuth Provider's ui into its own package ( #3640 )
...
* Split OAuth Provider's ui into its own package
* Create distinct entry files for authorization and error pages
2025-03-19 09:19:27 +01:00
Matthieu Sieben
850e39843c
OAuth: Reset password & Sign-up ( #2945 )
...
* Adds "password reset" during OAuth flows
* Adds "Sign up" during OAuth flows
* Adds support for multiple languages in the OAuth flow
* Adds "fr" translation for the OAuth flow
Co-authored-by: devin ivy <devinivy@gmail.com >
Co-authored-by: Eric Bailey <git@esb.lol >
2025-03-07 09:41:06 +01:00
Matthieu Sieben
c53d943c8b
Improve codegen typings ( #2999 )
...
* Make codegen types stricter
* Add .js file extension to import statements in generated code
* Fixes a bug that would clear interests prefs when updating hidden posts prefs.
2025-02-13 15:21:00 +01:00
Matthieu Sieben
61dc0d60e1
Add linting rule to sort imports ( #3220 )
...
* Add linting rule to sort imports
* remove spacing between import groups
* changeset
* changeset
* prettier config fine tuning
* forbid use of deprecated imports
* tidy
2025-02-05 15:06:58 +01:00
Devin Ivy
94df42debf
prettier ignore changelogs, as changesets not resolving prettier config properly
2024-08-13 00:28:36 -04:00
Daniel Holmgren
f65de89eed
Feature: Appview v2 ( #1924 )
...
* add buf & connectrpc, codegen client
* lint
* prettier ignore
* fix prettier ignore
* tidy & add tests
* filler commit
* rm filler
* server boilerplate
* follows impl
* posts impl
* posts & likes impl
* repost impl
* profiles & handle null values
* list impl
* mutes impl
* blocks impl
* misc
* feed gen impl
* label impl
* notifs impl
* feeds impl
* threads impl
* early sketchwork
* wip
* stub out thick client
* in-progress work on hydrator
* tweak
* hydrate profile labels, detail lists
* feedgen hydration
* protobuf tweaks
* more protobuf tweaks
* wip
* snake case
* moar snake case
* tidy actor hydration
* tidy parsing
* type fixes, renaming, comments in hydrator
* hydrate list items and likes
* hydrate notifications
* feed hydration
* graph & label hydration
* more record protobufs
* pluralize
* tweak pbs
* use new methods
* Setup dataplane grpc client/mock server (#1921 )
* add buf & connectrpc, codegen client
* lint
* prettier ignore
* fix prettier ignore
* tidy & add tests
* add record getter mocks
* post view hydration
* fix up mock dataplane to match new protos
* missed one
* wire up dataplane in ctx & dev-env
* adding some basic views
* feed hydration, add blocks to post hydration
* pass over notification hydration
* tidy
* merge
* implement getProfile
* hydrate post aggregation and viewer state
* fix
* fix codegen
* get some tests passing!
* add takedowns & some like bugfixing
* all profile tests passing!
* likes test
* follow endpoints using data plane
* reorg follow block rules
* reposts
* post views!
* implement getList w/ dataplane caveat
* adjust dataplane getListMembers to return listitem uris
* implement getListMutes and -Blocks w/ dataplane
* suggestions
* timeline
* misc view fixes
* view fixes for mutes, self-mute/block
* author feed
* feed gen routes
* tidy
* misc block/mute fixes
* list feed & actor likes
* implement getLists, fix some empty cursors
* implement getMutes, empty profile description fix
* implement getBlocks, block application fix
* implement getSuggestedFollowsByActor, needs some fixes
* feed generation
* search routes
* threads
* tidy
* fix some snaps
* fix getSuggestedFollowsByActor
* implement listNotifications
* implement getUnreadCount w/ dataplane
* implement notifications.updateSeen w/ dataplane
* 3rd party blocking tests
* blocked profile viewer
* add search mocks
* refactor getFeed
* createPipeline -> createPipelineNew
* basic replygating functionality on dataplane w/o filtering violating replies
* hack threadgates into dataplane, apply gates
* deterministic thread orders in dataplane
* misc cleanup around dataplane
* upgrade typescript to v5.3
* update typescript linter deps
* sync bsky proto, codegen
* update dataplane, sync with bsky proto updates
* remove indexer, ingester, daemon, moderation services from appview
* convert more bsky internals to dataplane, remove custom feedgens, implement mute/unmuting in mock dataplane
* remove bsky services. db and indexing logic into mock dataplane.
* remove tests not needed by appview v2, misc reorg
* add basic in-mem repo subscription to dataplane mock
* fix dev-env, bsky tests, bsky build
* cull bsky service entrypoint
* add bsky service readme
* build
* tidy
* tidy, fix pds proxy tests
* fix
* fix bsky entrypoint deps
* support http2 grpc client
* build
* fix dataplane bad tls config/default
* support multiple dataplane urls, retry when unavailable
* build
* tidy/fix
* move dataplane mock tests into their own dir
* cover label hydration through timeline test
* bring back labels in appview tests
* remove unused db primary/replica/coordinator from bsky dataplane
* bsky proto add cids to contracts, buf codegen
* sync-up bsky data-plane w/ codegen updates
* start using dataplane interaction endpoints
* add file
* avoid overfetching from dataplane, plumb feed items and cids
* pass refs through for post viewer state
* switch list feeds to use feed item in dataplane
* handle not found err on get-thread dataplane call
* support use of search service rather than dataplane methods
* mark some appview v2 todos
* tidy
* still use dataplane on search endpoints when search service is not configured
* fix pds test
* fix up bsky tests & snaps
* tidy migrations
* fix appview-v2 docker build
* Support label issuer tied to appview v2 (#2033 )
support label issuer tied to appview
* Appview v2: handle empty cursor on list notifications (#2017 )
handle empty cursor on appview listnotifs
* Update appview v2 to use author feed enum (#2047 )
* update bsky protos with author feed enum, misc feed item changes
* support new author feed enums in dataplane
* fix build
* Appview v2: utilize sorted-at field in bsky protos (#2050 )
utilize new sorted-at field in bsky protos
* remove all dataplane usage of GetLikeCounts, switch to GetInteractionCounts
* Appview v2, sync w/ changes to protos (#2071 )
* sync bsky protos
* sync-up bsky implementation w/ proto changes
* Appview v2 initial implementation for getPopularFeedGenerators (#2072 )
add an initial implementation for getPopularFeedGenerators on appview v2
* merge
* fixes
* fix feed tests
* fix bsync mock
* format
* remove unused config
* fix lockfile
* another lockfile fix
* fix duplicate type
* fix dupplicate test
* Appview v2 handling clearly bad cursors (#2092 )
* make mock dataplane cursors different from v1 cursors
* fail open on clearly bad appview cursors
* fix pds appview proxy snaps
* Appview v2 no notifs seen behavior (#2096 )
* alter behavior for presenting notifications w/ no last-seen time
* fix pds proxy tests
* Appview v2 dataplane retries based on client host (#2098 )
choose dataplane client for retries based on host when possible/relevant
* don't apply negated labels
* display suspensions on actor profile in appview v2
* Appview v2 use dataplane for identity lookups (#2095 )
* update bsky proto w/ identity methods
* setup identity endpoints on mock dataplane
* move from idresolver to dataplane for identity lookups on appview
* tidy
* Appview v2: apply safe takedown refs to records, actors (#2107 )
apply safe takedown refs to records, actors
* Fix timing on appview v2 repo rev header (#2113 )
fix timing on appview repo rev
* fix post thread responses
* Appview v2 don't apply 3p self blocks (#2112 )
do not apply 3p self-blocks
* Appview v2 search for feed generators (#2118 )
* add protos for feedgen search
* support feed search on getPopularFeedGenerators
* Appview v2 config tidy (#2117 )
* remove mod and triage roles from appview
* rename cdn and search config
* remove custom feed harness from appview v2
* Appview v2: don't apply missing modlists (#2122 )
* dont apply missing mod lists
* update mock dataplane
* Update packages/bsky/src/hydration/hydrator.ts
Co-authored-by: devin ivy <devinivy@gmail.com >
* refactor & document a bit better
* fix up other routes
---------
Co-authored-by: devin ivy <devinivy@gmail.com >
* Appview v2 enforce post thread root boundary (#2120 )
* enforce post thread root boundary
* test thread root boundary
* Appview v2 fix admin environment variable (#2137 )
fix admin env in appview v2
* Remove re-pagination from getSuggestions (#2145 )
* remove re-pagination from getSuggestions
* fix test
* Adjust wording for account suspension (#2153 )
adjust wording for account suspension
* Appview v2: fix not-found and blocked uris in threads (#2201 )
* fix uris of not-found and blocked posts in threads
* update snaps
* ✨ Show author feed of takendown author to admins only (#2197 )
* fold in cid, auth, tracing, node version changes
* remove dead config from bsky service entrypoint
* build
* remove ozone test codepaths for appview v2
* tidy, docs fix
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com >
Co-authored-by: Foysal Ahamed <foysal@blueskyweb.xyz >
2024-02-27 15:22:55 -05:00
bnewbold
abc6cf9ab4
interop test files ( #1529 )
...
* initial interop-test-files
* crypto: switch signature-fixtures.json to a symlink
* syntax: test against interop files
* prettier
* Update interop-test-files/README.md
Co-authored-by: Eric Bailey <git@esb.lol >
* disable prettier on test vectors
---------
Co-authored-by: Eric Bailey <git@esb.lol >
Co-authored-by: dholms <dtholmgren@gmail.com >
2023-09-13 11:23:33 -05:00
Eric Bailey
a7c42cfe39
Clean up prettier/eslint scripts ( #1514 )
...
* add prettierignore, hoist script
* upgrade prettier
* bump prettier eslint deps
* format all files
* hoist prettier check
* remove unused scripts, hoist lint:fix
* remove npm-run-all, unused
* hoist lint
* remove lint scripts
* improve lint scripts
* remove prettierignores
* downgrade prettier deps to fix codgen
* reformat all files
* update makefile, format
* fix locklife
* final format
---------
Co-authored-by: dholms <dtholmgren@gmail.com >
2023-09-06 19:27:50 -05:00