* clean up old todos
* recovery key in server cfg & allow user provided key
* tests & rename
* testing did creation
* recoveryKey in dev-env
* require recovery key
* Setup PDS with kysely migrations
* Nix KyselyWithDialect from PLC, found it didn't work as intended in PDS
* Fix down migration in PDS
* Fix update profile on postgres
* Support postgres and migrations in PDS bin
* Lint
* immutable repo
* wrap mutable repo around immutable
* fixing up repo & structure
* added back in safeCommit
* fix up server
* return rebase cid on commit callback
* getReocrd on structure + a bit of cleanup
* pr cleanup
* Rename ADX to ATP
* Remove old docs (now in atproto website repo)
* Update readme
* Update README.md
Co-authored-by: devin ivy <devinivy@gmail.com>
* A couple of @ -> AT
Co-authored-by: devin ivy <devinivy@gmail.com>
* update schemas for keyed
* codegen dict
* codgen record ids
* determine key type from schema
* allow non-tid keys
* rm tids from batch write schema
* use schema ids record in db layouts
* standardize on rkey
* doc update
* crud test
* repo tests for custom rkeys
* record type for accepted badge
* getBadgeMembers view
* updateProfile procedure
* better return type on updateProfile & gen client
* add badges to getProfile view
* testing & bug fixes
* tests for updating profile & linking badges
* errors
* badgeOffer record type
* getProfile view ensures badges are both offered & accepted
* getBadgeMembers test
* PR feedback
* cid check
* Add initial schemas for getUsersSearch and getUsersTypeahead
* Stub-out pds user search/typeahead, add pg indexes to support it
* Implement and test user typeahead method for postgres
* Implement user typeahead for sqlite
* Tidy
* Get user search view working, except pagination
* Get pagination working on pds user search w/ postgres
* Bail on jest snapshots for the conditional pg/sqlite search results
* Refactor user search queries out of user search method
* Apply user search helpers to typeahead
* Tidy user search implementation
* Test bad search input for sqlite
* Fix loading of pg_trgm extension to be friendly with the test suite
* Fix typo
* Query consistency
* All server tests can reference app
* Handle bad user search cursors
* Update lexicon doc format to support .defs field and .descriptions within method bodies
* Add correct resolution to lexicon, including to lex: URIs
* Update lexicons and generated code to use new resolution
* Setup dockerization of postgres db
* Fix typo
* Setup postgres dialect config in pds, fix migrations for pg
* Convert home and author feed to work on pg
* Convert pds follow views to work on pg
* Convert pds liked-by and notifications views to work on pg
* Unify bigint handling between sqlite and pg
* Convert pds account, crud, and profile, reposts, thread views to work on pg
* Ensure a more complete reset of containers/volumes in with-test-db.sh, set libpq env vars
* Add readme for dockerized postgres
* Fix build issues
* Improve lex-cli to remove files that no longer exist
* Update lex-cli to use new ns
* Rename lexicons: todo.adx to com.atproto, todo.social to app.bsky
* Improve lex-cli md generator
* kysely interfaces
* migrated record plugins
* db types + notifications
* index record emthods on db
* Convert author feed to kysely
* rest of db index
* Convert home feed to kysely
* Remove references to sqlite3 package
* Convert liked by view to kysely
* create tables
* Convert notif count view to kysely
* move scrypt to own file
* Fix typo
* Convert notifs view to kysely
* Convert post thread to kysely
* Convert profile view to kysely
* accounts tests passing!
* Convert reposted by view to kysely
* Convert followers view to kysely
* Convert follows view to kysely
* Convert notifs last seen to kysely
* Tidy
* Re-enable social methods
* Minor tidy of author and home feed queries
* Tidying and minor fixes for pds view queries
* fix up crud, disabled PUTs for now
* Fix profile view, use nulls in table interfaces
* Fix pds follow/follower views, remove special db date logic
* Fix pds notification count view
* Fix pds feed views, reposted by join
* Remove typeorm from server
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* Create basic seed for server based on view tests
* Utilize basic seed in view tests
* Split-up pds view tests
* Trying out snapshot testing for author feed
* Tidy
* Generalize normalization for snapshot testing
* Snapshot test home feed, fix inclusion of own reposts
* Fix typo
* Add follow snapshot tests, fix ordering and db date handling
* Add like snapshot tests, fix ordering and db date handling
* Add notification snapshot tests
* Add profile snapshot tests
* Add reposts snapshot tests, fix ordering and db date handling
* Add thread snapshot tests
* Fix typo
* Remove unneeded space
* ensure we understand the key type a user is rotating to
* race condition test
* handle username/pds with or without https://
* fix a quick types issue
* adding logging
* fix better-sqlite3 build issues
* bring did-resolver up to date w plc
* fix pds tests for plc
* Schemas and scaffolding for reset password methods
* Initial handler for todo.adx.requestAccountPasswordReset
* Initial handler for todo.adx.resetAccountPassword
* Implement server mailer
* Configure server for mailer and testing w/ mailer
* Test happy path of pass reset, fix reset bug
* Update lex to fix types bug for requestAccountPasswordReset
* Fix handlebars reference to config getters
* Test some negative password reset flows
* Minor cleanup to pass reset
* Tidy handlebars file with prettier, supporting double-quotes for html
* Fix esbuild of server for mailer templates, fix test issue
* Misc tidying for password reset
* Misc tidying for password reset
* Enforce single user per email, test unique email and username
* Remove resolved TODO re: duplicate emails
* Schemas and scaffolding for reset password methods
* Initial handler for todo.adx.requestAccountPasswordReset
* Initial handler for todo.adx.resetAccountPassword
* Implement server mailer
* Configure server for mailer and testing w/ mailer
* Test happy path of pass reset, fix reset bug
* Update lex to fix types bug for requestAccountPasswordReset
* Fix handlebars reference to config getters
* Test some negative password reset flows
* Minor cleanup to pass reset
* Tidy handlebars file with prettier, supporting double-quotes for html
* Fix esbuild of server for mailer templates, fix test issue
* Misc tidying for password reset
* Misc tidying for password reset
* Fix ordering of reposts in feed
* Preserve separate posts and reposts in feeds
* Include users' own posts in their feed
* Remove unused dep from test file
* Split getFeed() into getAuthorFeed() and getHomeFeed()
* Remove unused getFeed codegen file
* Unify queries for getHomeFeed and getAuthorFeed
* Factor out common query parts for building feeds
* Test firehose and default feed algorithm
* Fix api tsconfig reference
* notification methods on tables
* process notifs
* last seen
* notifs xrpc methods
* seen notifs route
* register route
* notifications tests
* rm unused db method
* parsing dids to something we understand
* revamping did-sdk with did-resolver
* testing
* fixing some thigns & finishing tests
* fix type error & remove old test
* wip
* create did on server & add email
* check username available & store email
* better test utils
* remove did:test
* allow authstore to sign for controlled dids
* plc ucan integration wip
* wip
* finished auth lib refactor
* integrating to repo & server
* couple fix ups
* couple more fixups
* disable dev-env test
* comments