* add cid to ListView and ListViewBasic
* add test for mute list embed
* add support for list embeds views
* test
* port to appview
* update missing snap
---------
Co-authored-by: dholms <dtholmgren@gmail.com>
* Add languages field to post record
* helper for parsing bcp47
* add language format to lexicon
* codegen for post record langs field
* re-export language parsing in api package
* tests and tidy for lexicon language format
* index post langs, in-progress
* update snapshots, fixes record-with-media embed issue
* index post langs on bsky appview
* don't bother indexing post langs in pds appview, tidy
* Loosen indexing txn boundaries to record-level in bsky appview, no long transactions
* Add explicit HeadNotFound error to sync.getHead
* Update tombstone behavior on bsky appview, use more specific error on sync.getHead
* Misc notification and optimization in bsky, tidy
* Handle notifs on message queue in bsky appview
* Sync-up profile labeling behavior in bsky
* No async work during actor unindexing in bsky, include additional indexes
* Prevent deeply nested notifs w/ hellthread exception in bsky appview
* Add indexes to bsky appview for more efficient actor deletion/unindexing
* Update pds proxy snaps for updated bsky profile labeling
* Return custom suggestions in bsky appview
* Test out-of-order indexing of aggregations on bsky appview
* Proxy pds getPopular to hot-classic feed on appview. Proxy getPopularFeedGenerators to appview.
* Make did field required on feedgen view
* ✨ Hydrate subject author's repo in moderation reports
* 🚧 Expose only handle of the subject repo on moderation reports
* 🚧 Regenerate lexicons off main
* 🧹 Cleanup unnecessary joins
* ✅ Updating snapshots
* ✨ Make handle optional to allow serving reports even if handle doesn't exist
* ✨ Port over subjectHandle implementation to bsky package
* wip
* first pass done
* chnage around how channels function
* bugfixing
* fix up migration & tests
* fix dev-env
* add prep migration for stream fixing
* application code changes to use new repo_event table
* dont send evts
* add outgoing_repo_seq table + sqlite migrations
* patch up down migration
* patching up a couple things
* update test
* patchup
* re-enable subscription route
* add outgoingSeq column
* updating
* accidental add
* temporarily disable stream
* resolve merge conflict
* add migration
* migration for seq
* fix test
* id -> seq
* get schema lock ids
* tidy
* fix server test
* fix up
* use bsky uniqueLockId approach
* tidy
* gh actions build
* build branch
* build branch
* tweak test
* rm constraint rename
* small bugfix
* check for seq not null
* fix up issues
* one more small change
* tidy
* no build branches
* ✨ Allow ignoring moderation reports by subject
* 🔧 Remove unwanted package.json change
* ✨ Remove subject format specifier
* ✨ Port over ignore subject implementation to bsky package
* Revert "✨ Port over ignore subject implementation to bsky package"
This reverts commit 3c782c1805548d1ebdbbd08b68b6e92ac97fdee5.
* 🚧 Port over ignore subject implementation to bsky package
* ✨ Generate lexicons for bsky
* move handle resolution to .well-known
* required handle on resolveHandle
* rm test
* tidy
* tidy
* fix up appview
* missing await
* atproto-handle -> atproto-did
* shift did & handle resolution to new identity package
* fix up network mocks
* fix up another test
* one more
* drop lex comment
* rm handle param
* Update packages/identity/src/handle/index.ts
Co-authored-by: devin ivy <devinivy@gmail.com>
* still temporarily support xrpc handle resolution
* typo
* ensure return value is a string
---------
Co-authored-by: devin ivy <devinivy@gmail.com>
* Add lexicon LexXrpcParameters, Object required properties check
Now schemas like the one below won't validate
```
...
{
"type": "object",
"required": ["foo"],
"properties": {}
}
...
````
* Fix lexicons with missing required fields
* Improve lexicon user type error messages and document why it needs to be `z.custom`
* actor type in profiles
* skeleton lex
* more schemas
* first pass at feed composition
* cleanup services
* more tidying
* fix up tests
* bookmarking schemas
* make feeds records instead of actors
* some cleanup
* fleshing out feeds as records
* wip
* working into cfg & dev-env
* fix appview test util
* bookmarking + views
* tidy
* add displayName
* db migration
* wip test
* blob processing
* first test working!
* Sync-up snapshots
* wip
* Fix pds ctx type
* Sync lexicons on pds and api
* wip
* fully refactor
* Prep for open union in reply data in bsky appview, sync-up snapshots
* msgs & ports
* Make pds did cache sqlite-friendly
* Start scaffolding more feedgen tests
* revamp appview tests
* revamp pds tests
* merge in dev env utils
* ensure plc close
* add feed gen to dev-env
* second feed gen
* named feeds in mock
* fix issue with dev-env pds appview
* update bsky snaps
* Flesh-out some feed gen tests
* Fix feed gen reply test
* Test feed bookmarking
* update skeleton defs
* merge
* Sync-up pds with updated feed skeleton contract
* Fix feed bookmark viewer state
* add feed embeds
* Test inaccurate feed gen repost
* Tighten some error behaviors around feed gens
* generator view in record embed
* test
* bookmarked/subscribed -> saved
* updated snaps
* name & descript on alices feed
* add like counts
* proposed lex
* tweak
* fetch feed generator details
* add describeFeedGen to dev-env
* adds tests for getFeedGenerator
* Update lexicons/app/bsky/feed/getFeedGenerator.json
Co-authored-by: devin ivy <devinivy@gmail.com>
* update describe
* add cid to feed gen view
* add alice feed gen avatar
* generator displayName required
* update snaps
* Fix dev env public url (#1058)
* Fix the public url used by dev-env
* move publicUrl location
---------
Co-authored-by: dholms <dtholmgren@gmail.com>
* add defs for feed gen prefs & decrease displayName length
* build branch
* updated how saved feeds works
* cleanup lex
* mount route
* Starter bsky algos (#1046)
* implement some starter bsky algos
* add team dids
* tidy
* add quotepost check to whats hot classic
* tests
* carve out feedgen section of pds
* apply limits
* add describeFeedGenerator route
* Whats hot new (#1060)
* map out new whats hot
* only available in postgres
* Fix dev env public url (#1058)
* Fix the public url used by dev-env
* move publicUrl location
---------
Co-authored-by: dholms <dtholmgren@gmail.com>
* add defs for feed gen prefs & decrease displayName length
* build branch
* updated how saved feeds works
* build algos branch
* remove relative imports to @atproto/api
* update hot classic name
* rm build
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* v0.3.6
* v0.3.7
* v0.1.10
* update name of skyline
* build branch
* aws build
* getFeedGenerators test
* For now only use new replyRef union for custom feeds, for compat
* Don't use replyRef union on new feeds yet
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Update lexicon for missing repo/record data in admin views
* Serve missing repo/record variant in admin views
* Test actioning and presenting unknown records/repos, fix on pds
* Add bench/profiling docs
* Fix repo benches
We probably want to create a shared config for benchmarks,
this fix isn't universal across packages
* Add benchs to API
This should help with #915 and any other future API performance investivations
* Make repo `bench:profile` wait for debugger
* Update packages/README.md
---------
Co-authored-by: Daniel Holmgren <dtholmgren@gmail.com>
* Add lexicons for account preferences
* Move prefs to app.bsky, codegen
* Setup model and services for user prefs
* Setup xrpc methods for prefs
* Test preferences, fixes
* Tidy
* Tidy
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* enable disabling account invites
* xtra test
* couple fixes
* allow re-enabling user accoutn invites
* add in getter route for if invites are disabled or not
* fix admin search test
* gneerated type on user account
* lex: 'escalate' mod action type
* api: codegen for escalate mod action type
* pds: codegen+impl esclate mod action type
* bsky: codegen+impl esclate mod action type
* pds: prettier:fix
* Tidy
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* block lexicons
* table schema
* block processing
* Actor-block migration
* Add blocked post lexicon to getPostThread
* getBlocks routes
* Add missing lexicons to bsky
* Add block state to actor views
* throw on blocked accounts in getAuthorFeed
* blcok state in profile views
* Update getPostThread to support block views, update existing test
* strip out blocks out oof timeline & popular
* more routes
* Test blocked posts in threads
* Support blocks on record embeds
* notifs
* Update pds test snapshots w/ block state
* fix search
* Update pds actor search snapshots w/ blocks
* test
* tests
* update lex
* fix up from returning blocking as record
* ci for branch
* fix build issue in bsky
* more blocks tests
* fix actor search test
* hook getBlocks up to router
* bugfix & actually test lol
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>