-
Notifications
You must be signed in to change notification settings - Fork 133
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lex refactor branch ("last big breaking lexicon changes") #93
Conversation
96b71b8
to
be991d1
Compare
A couple notes from getting things running:
|
I guess I spoke too soon: the tests pass locally for me (including in a fresh checkout), but not in CI. It is possible that golang 1.19 vs. 1.20 is the issue (I've updated on my laptop; this PR hasn't landed: #91). But more likely some timing issue. |
- allows */* as output type (for blob fetches) - handles "defs" (with not 'main' type) - clearer log/warning messages
This is a change to database schema. Hopefully safe (just removal), but should get review on this.
Bumping a sleep in one of the integration tests from 50ms to 100ms seems to have helped with the CI test failures. I did a large round of updating lexicons from upstream (there have been changes to lex-refactor branch in atproto, and may be a few more before everything gets merged), including removing deprecated stuff this time around. I hacked in Not 100% confident that I updated all the XRPC handlers and stubs to new/correct values, and there might be some deprecated/dead code in there. Did do some greps for all the older/deleted names. I started updating subscription event schemas, aka federation wire protocol. I thought that event kind numbers changed to strings in the lex refactor, but I didn't make that change yet. BGS repo subscriptions are not working against atproto implementation yet, failing with invalid signatures. Integration tests within indigo do pass, and labelmaker subscribes to atproto PDS ok. |
Some more progress, all tests are passing now. BGS interop with typescript lex-refactor branch is not working yet. I hacked in the subscription changes pretty quickly, I suspect that more refactoring might be needed in BGS, repomgr, etc. The previous Tweaked a couple lexgen things relating to required-but-nullable fields. This is only implemented on structs for now, not handler function signatures or query params. Created an issue to track post-refactor follow-ups: #95 I have hit a couple different errors trying to do BGS interop with typescript implementation. One error looks like:
I think that is the indexer code breaking on the new CID links in records, which in the case of blobs are "raw" CID pointers to file bytes (not dag-cbor multicodec). The only other current use of the Another error is:
I'm not sure what the deal is with that. We have an existing test in
|
Ah, as a hint, also seeing the signature failure against typescript when using 'main' branch on both. |
8a292b8
to
452ca53
Compare
Got the embed/union issue figured out. That test still isnt passing yet but its better. |
…d some additional checks to interop
Working towards #83 mostly
bigsky and laputa compile, havent tested them yet. Still a fair emount left to do