Christopher Jr Riley

Profile banner

Christopher Jr Riley

@cjrriley.com

Resilient Autistic that loves solving problems with Swift. Make the world more accessible. 🇨🇦 Currently working on ATProtoKit #atdev.

(Profile pic drawn by kaylee_acnh on Twitter.)
Avatar
Me, today: “Ah! Today’s a great day! Time for me to work on ATProtoKit after a good break!” The power grid, after killing power up until now for many in Toronto: “lol!”
Avatar
I’m addicted to Timbits. Send help.
Avatar
I'm going to take a break on ATProtoKit for the rest of the week until this coming Monday (except for any lexicon changes or emergency bug fixing). I'd like to take a stab at something in CodeEdit, but ATProtoKit literally takes up all of my open source time, so this will help me out for a bit.
Avatar
I've made a quick hotfix for ATProtoKit (0.16.1), with the latest update to the lexicon, as well as some micro fixes to some formatting. I also forgot to add the cursor parameter in the same lexicon method. Oops. This is why making that lexicon builder is needed... 😅 github.com/MasterJ93/AT...
GitHub - MasterJ93/ATProtoKit: A straightforward solution for using the AT Protocol and Bluesky, written in Swift.github.com A straightforward solution for using the AT Protocol and Bluesky, written in Swift. - MasterJ93/ATProtoKit
Avatar
I suppose I should put the API Design and Contribution guidelines into the wiki section of ATProtoKit. I'll have to clean it up properly, however.
Avatar
Version 0.16.0 of my #Swift #ATProto library, ATProtoKit, is now live: github.com/MasterJ93/AT... It's relatively small, but basically, I completed the transition to the new method signature. That's one issue down. I'm still hunting down the bugs, however. #atdev
GitHub - MasterJ93/ATProtoKit: A straightforward solution for using the AT Protocol and Bluesky, written in Swift.github.com A straightforward solution for using the AT Protocol and Bluesky, written in Swift. - MasterJ93/ATProtoKit
Avatar
v0.15.0 of my #Swift #ATProto library, ATProtoKit, is live: github.com/MasterJ93/AT.... A new method in the UnknownType enum has been added: getRecord(), which is a simple way to get the record within the lexicon is one line (no pattern matching required). A short article was also made. #atdev
GitHub - MasterJ93/ATProtoKit: A straightforward solution for using the AT Protocol and Bluesky, written in Swift.github.com A straightforward solution for using the AT Protocol and Bluesky, written in Swift. - MasterJ93/ATProtoKit
Avatar
I'm still working on ATProtoKit. I'm still working on it, but Zenless Zone Zero and Wuthering Waves have taken up most of my time. The games eaten up even my Warframe time: a first for me in a very long time; the only game that pulled me from Warframe was Jazz Jackrabbit 2).
Avatar
Against my better judgement, I've decided to work on the getRecord() article after all. Someone had tested the method and it works perfectly well from what I understand. As for ATUnion, I may create a similar method. Other than that, though, that article will be done in a future update.
Avatar
I think I have ~12 lexicon methods left to convert (for the ATProtoKit class). There there’s ~20 methods for the ATProtoBlueskyChat and 4 methods for the ATProtocolConfiguration class. So I still have some ways to go before I’m done.
Avatar
Alright: now to re-do all of the "Returns" documentation and changing all of the "Result" return statements into normal return statements. This... will take a while. I'm *still* not satisfied with the syntax, but I'm getting ever more closer.
Avatar
Finally getting around to making the "tools.ozone.team.*" lexicons. Unfortunately, the "tools.ozone.*" and "com.atproto.admin.*" lexicons are the least tested (read: haven't been tested at all). Until I set up Docker or my VPS to run an AppView and PDS, I'm kinda stuck with that...
Avatar
I’ve been sluggish for a few days with ATProtoKit. My apologies. Life unfortunately got in the way for a while. I’ll try to make a better schedule and make better ways to fix that.
Avatar
I really need to begin work on the lexicon builder… The only issue is that I’m still not satisfied with the syntax of ATProtoKit. I still feel like some minor tweaks still need to be made in order to fully automate this process. That said, manually writing them is *killing* me! 🤣
Avatar
Looking at my old code (thank God for Time Machine backups), the way how I wanted union and unknown types to work is to use "if case let" (or "guard case let", if that even exists). I don't like this approach, however: if you know you're using only one record struct, it's multilined.
Avatar
I know the value of my account is pretty bad. I'll try my best to elevate it to a level where people will be more willing to want to follow me (regardless of how high or low profile they are) and to be part of various starter packs. Until then, I'll keep trying to make higher-quality value.
Avatar
Me making a moderation labeller just to help to prove that ATProtoKit works. 🫠
Avatar
I feel like I’m pretty good at graphic design. However, one thing I feel I’m weak at is making realistic-looking objects. This is especially true for macOS app icons, since the tradition is to make them feel realistic and have attention to detail. I need to strengthen that.
Avatar
I'm quite proud of what I've accomplished so far with ATProtoKit. 952 commits and counting. Though, I didn't do it alone, since others have helped to contribute. I'll need to streamline my work more and the lexicon builder will help with that. I'm getting closer.
Avatar
Oh boy, I found another bug: now grandparentAuthor is always expected. Looks like, after I complete 0.15.0, I'll need to do another audit to see if there's anything in the lexicon models and methods that are required and optional. Because I feel this is going to be a cat-and-mouse game soon...
Avatar
Version 0.14.4 for ATProtoKit has been released. There was a broken link in the DocC which has now been fixed. Also, the knownFollowers property in ViewerStateDefinition was incorrectly marked as required instead of optional, so I've fixed that mistake as well. #Swift #ATProto #atdev
Avatar
Okay... I don't really understand what's going on with the main branch. But at least 0.14.3 is now compatible with watchOS (it's just weird that it's not compatible with the main branch...).
Avatar
0.14.3 of ATProtoKit is live: github.com/MasterJ93/AT... Just a number of bugs, including some related to Swift 6, and watchOS. It won't fix all of them related to those two, but it's a start. I intend to fix all Swift 6 bugs before it's out of beta. #Swift #ATProto #atdev
GitHub - MasterJ93/ATProtoKit: A straightforward solution for using the AT Protocol and Bluesky, written in Swift.github.com A straightforward solution for using the AT Protocol and Bluesky, written in Swift. - MasterJ93/ATProtoKit
Avatar
I'll be adding a hotfix for ATProtoKit shortly, which should fix a few bugs here and there, including potentially fixing watchOS issues and some updates to the lexicons. Thanks to Joshua for chipping in. An additional hotfix will be pushed tomorrow for more bug fixes and lexicon updates.
Avatar
Avatar
Ok, good: my fixes have, indeed, fixed the iOS issues, as well as issues with respect to tvOS and visionOS. However, it didn't fix any watchOS bugs, nor did the Linux bugs get fixed (that one's expected). Will have to check what the hell is going on with watchOS. (Linux is a different beast...)
Avatar
I've implemented an important hot fix for ATProtoKit: version 0.14.2. I was able to fix some iOS-related bugs. This includes ATImageProcessable, since it's not ready yet (it's still in its own separate branch, however). It's now building fine, but let me know if this isn't the case. #atdev #atproto
Avatar
Had I fixed the iOS bugs a week ago, Bluesky may have been using it for whatever they were planning on doing… Anyway: they’re done. Just running some tests.
Avatar
Finally getting around to fixing the iOS issues. It appears the reason for it is due to incompatible APIs with respect to operating systems. Since I want to target the minimum requirements that the official Bluesky app is providing, I’ll go with using the older API.
Avatar
So is this real? Are we all officially calling this the "ATmosphere" now?