Releases: MasterJ93/ATProtoKit
v0.26.1
Version 0.26.1 includes the following changes:
- Moved
createReport()to theATProtoKitclass.- It was originally in the
ATProtoAdminclass, but was done by mistake.
- It was originally in the
ATProtoKit,ATProtoBluesky,ATProtoBlueskyChat,ATProtoAdminare now marked asSendableandfinal.- This is to make things a little easier for those who are using declarative DSLs like SwiftUI.
- Fixed a crash bug when attempting to encode from
CodableValueto a JSON object. - Fixed an issue where
ChatBskyLexicon.Conversation.MessageInputDefinitionis unable to be initiated properly. - Began the process of updating the lexicon models and methods from the latest lexicon changes in bluesky-social’s atproto library.
- This goes up to
app.bsky.unspecced.defs. Future updates will continue to update to the latest version over time.
- This goes up to
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.26.0
Version 0.26.0 includes the following changes:
- Reworked
SessionConfigurationandATProtocolConfiguration.- This change is supposed to handle ease of use with respect to how to handle session management, retrieving and sending tokens, and storing tokens securely.
ATProtocolConfigurationis supposed to be for app passwords and as such, the way things are managed for sessions will only relate to App Password-related authentication.- Included with the rework:
UserSessionRegistryis anactorthat manages multiple instances ofUserSession. This is useful for situations where an app can let the user log into multiple accounts at once.SecureKeychainProtocolis aprotocolused for managing the access token, refresh token, and password. The refresh token and password are stored in the keychain, while the access token is stored in-memory.- An
actornamedAppleSecureKeychainis provided for applications running on all Apple platforms. Linux and Windows developers will need to implement this on their own for now. A future update may includeactors specifically for Linux and Windows.
- An
- All required and optionally authenticated methods will check to see if the token has expired (and will auto-refresh the token if it is).
- Added support for the following in
ATProtoBluesky:- Adding, editing, and deleting Profile records.
- Adding, editing, and deleting List records.
- Adding and deleting ListItem records.
- Adding and deleting ListBlock records.
- Also made improvements to determine whether a block record can be created (for example, if the DID of the user account doesn’t exist).
- Made sure the last remaining lexicon methods no longer uses
Result<Success, Failure> as itsreturn` type. - Custom
URLSessionConfigurationobjects can now be used, whether onSessionConfigurationprotocol, or the mainATProtoKitclass.- Please note: the
URLSessionConfigurationobject inATProtoKitwill override theURLSessionConfigurationobject inSessionConfiguration.
- Please note: the
- Removed the
shouldAuthenticateargument fromgetSearchActors().- According to Bluesky’s new documentation, this method can only be used with authentication.
- Improved on the truncation of links in Bluesky posts. (Thanks, @aaronvegh!)
- Please note: the lexicons models and methods have not been updated since the beginning of April. They will be updated overtime.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.25.3
Version 0.25.3 includes the following changes:
- Switched the order of how post text is handled in
ATProtoBluesky.createPostRecord. (Thanks, @aaronvegh!) - Updated the lexicon models and methods from the latest lexicon changes in bluesky-social’s atproto library.
- Fixed an issue where
createAppPasswordas a GET request instead of a POST request.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.25.2
Version 0.25.2 includes the following changes:
- When uploading videos,
ATProtoBluesky.createPostRecord()will now check if the video size exceeds the current maximum amount. - Updated the documentation to reflect that fact that you can now upload videos that’s as large as 100 MB.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.25.1
Version 0.25.1 includes the following changes:
- Changed all
ATProtoBlueskyChatmethods to use the session’s service endpoint as part of the request URL.- This fixes a bug where
ATProtoKitBlueskyChat.listConversationswould give out a 404 error. - Also fixed several decoding issues related to the method’s output.
- This fixes a bug where
- Fixed an edge case where
pdsURLmay benilat an inappropriate time. (Thanks, @aaronvegh!) - Fixed a decoding issue with
AppBskyLexicon.Feed.GetPostThreadOutput.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.25.0
Version 0.25.0 includes the following changes:
- Added support for the following in
ATProtoBluesky:- Adding, editing, and deleting Postgate records.
- Adding, editing, and deleting Threadgate records.
- Moved the
pdsURLargument from non-authentication and authentication optional methods into an argument within theATProtoKitandATProtoAdmininitializers.- This is to simply make things cleaner, as well as to give the lexicon generator less of a burden to deal with.
- Improved how
ATRecordTypeRegistrynotifies methods of whenrecordRegistryis ready to be read. - Updated the lexicon models and methods from the latest lexicon changes in bluesky-social’s atproto library.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.24.3
Version 0.24.3 includes the following changes:
- Updated the lexicon models and methods from the latest lexicon changes in bluesky-social’s atproto library.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.24.2
Version 0.24.2 includes the following changes:
- Fixed a deadlocking bug in
ATRecordTypeRegistry.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.24.1
Version 0.24.1 includes the following changes:
- Fixed the sample code in the documentation and README.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.
v0.24.0
Version 0.24.0 includes the following changes:
- Changes to
ATRecordTypeRegistry:- Moved responsibility of checking the readiness of
ATRecordTypeRegistry.recordRegistryfromUnknownTypetoAPIClientService. - Gave
ATRecordTypeRegistrya singleton. - Removed
staticfromrecordRegistry. - Replaced initializers with the equivalent functions.
- There is now only one private initializer.
- Added a
DispatchGroupproperty to ensure that reading and writing onrecordRegistrydoesn’t run at the same time. - Added an
AsyncStreamproperty to manage when the registry is ready. - Removed
DispatchGroup.
- Moved responsibility of checking the readiness of
- Updated the lexicon models and methods with the latest changes from bluesky-social’s atproto repo.
Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. Consider starring this project if you find it helpful, and feel free to donate an amount that reflects the value it has brought to you. Your support helps ensure the continued development and improvement of this project. You can also speak to me on Bluesky (@cjrriley.com) for any questions.