Skip to content

Releases: MasterJ93/ATProtoKit

v0.19.2

05 Nov 04:02
76da9f3
Compare
Choose a tag to compare

Version 0.19.2 includes the following changes:

  • Fixed an issue where handles would not resolve properly if the post’s text is in a facet. (Thanks @aaronvegh!)

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.19.1

28 Oct 07:35
Compare
Choose a tag to compare

Version 0.19.1 includes the following changes:

  • Fixed some errors related to data race errors.
    • More objects have been marked as Sendable.
  • Fixed an issue where creating hashtag facets will result in having double hashtag symbols (##[hashtag]] when searching for posts under the hashtag. (Thanks @aaronvegh!)
  • Fixed the DocC with respect to the error structs and CodableValue.

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.19.0

26 Oct 13:38
e7f2b83
Compare
Choose a tag to compare

Version 0.19.0 includes the following changes:

  • Re-organized the DocC to fit the newer (or edited) lexicons into their appropriate places.
  • Updated the latest lexicon changes from Bluesky’s atproto repo.
  • Fixed an issue where uploading a video fails the first time you were to call createPostRecord().
    • If you were to have run createPostRecord() again, it would have succeeded.
  • Fixed some issues with Swift 6 language mode.
    • This addresses the issues specific to watchOS.
  • Tweaked the name of BskyAppProgressGuide to BskyAppProgressGuideDefinition and fixed an issue where the property contained was of type [String].
  • Fixed the URL link to the Bluesky profile. (Thanks @mmattbtw!)

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.18.5

24 Oct 03:25
Compare
Choose a tag to compare

Version 0.18.5 includes the following changes:

  • Fixed an issue where searchUsers would give an error.
    • If the cursor property was empty in the output, the error will appear.
  • Tweaked some methods to better match the Switch API Design Guidelines.
    • The guidelines state that “methods and functions should have named that “[…] make use sites form grammatical English phrases.” There are currently methods that have the word query in the argument name, which they violate the current guidelines. They usually have _ query or [by/with/for] query. Instead, matching query would be a better version.
    • The following methods are affected:
      • searchRepositories()
      • getPopularFeedGenerators()
      • searchActorsSkeleton()
      • searchPosts()
      • searchPostsSkeleton()
      • searchUsers()
      • searchUsersTypeahead()
      • checkSignupQueue()

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.18.4

22 Oct 03:15
Compare
Choose a tag to compare

Version 0.18.4 includes the following changes:

  • Fixed an issue where threads weren’t handled properly.
    • createPostRecord now requires you to get an AppBskyLexicon.Feed.PostRecord.ReplyReference object for replying to posts. With this change you should have an easier time with respect to making threads all at once.
    • ATProtoTools is also now open to developers. You can either use createReplyReference (if you want ATProtoKit to do the work for you) or manually create them yourself. This should hopefully allow for more flexibility.
  • Temporarily disabled ComAtprotoLexicon.Label.LabelDefinition.expiresOn.
    • This has been a bug that’s struggling to die. Due to the low priority of its use, I’ve elected to temporarily disable it. Unfortunately, this means you won’t be able to directly be able to know if a label can expire at this time, but I’ll figure out a way to ensure it can no longer cause problems. When I do, I’ll re-open it.
  • Minor spelling fixes for the README.
  • Minor DocC corrections.

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.18.3

20 Oct 06:55
Compare
Choose a tag to compare

Version 0.18.3 includes the following changes:

  • Made sure the createPostRecord only passes the truncated post text to the facet parser.
  • Fixed an issue where @DateFormattingOptional wouldn’t gracefully fail if there was no date.
    • At this time, there’s a temporary fix for LabelDefinition.expiresOn since it’s acting like a required property in its previous written code. It will most likely be a permanent thing and will be incorporated into the ATLexiconModel macro.
  • Fixed an issue where ThreadgateRecord.allow wasn’t set to optional even though it was supposed to be.
  • Fixed an issue where embeds containing records with media wouldn’t encode properly.
  • Fixed an issue where ATUnion would fail with respect to embeds.
  • Progress towards adding the new lexicons from the October updates.

Note: 0.18.0’s release notes erroneously said uploading videos is not in the that release. To be clear, it is, in fact, available; I forgot to change that line when I changed my mind and decided to push through with adding the ability into the project. My apologies for the mistake.

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.18.2

19 Oct 06:08
Compare
Choose a tag to compare

Version 0.18.2 includes the following changes:

  • Another fix towards build failures in iOS and tvOS.
  • Fixed an issue where fetchRecordForURI() will fail because it has no concept of a session. (Thanks @aaronvegh!)
  • Fixed an issue where non-ASCII characters might not be able to be parsed correctly. (Thanks @aaronvegh!)

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.18.1

18 Oct 05:12
Compare
Choose a tag to compare

Version 0.18.1 includes the following changes:

  • Fixed an issue where the build fails for iOS and tvOS.
    • One of the methods used in uploadVideo() only works for iOS and tvOS versions 16 or later. This fix will create a more manual version of performing the action.

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.18.0

17 Oct 02:43
Compare
Choose a tag to compare

Version 0.18.0 includes the following changes:

  • Improved the normalization of all identifiers.
  • Added macros.
    • ATUnion
      • This is, for the most part, replaces the ATUnion structure. While this technically changes nothing, this does mean less boilerplate code.
      • Known issue: the expanded code may not be formatted correctly. This won’t cause any crashes or bugs, but it may not be 100% readable if you try to view the expanded code.
    • ATLexiconModel
      • This is the final part that completely erases the need to use custom encoding methods.
      • This doesn’t eliminate the need for the CodingKeys enum.
      • Known issue: using this marco prevents the ability to add custom implementations. This will be fixed in a future update.
  • Improved the effectiveness of the @DateFormatting and @DateFormattingOptional property wrappers.
    • This mostly eliminates the need to write custom init and decoding methods. However, there’s a known issue where ATRecordProtocol-conforming structs won’t be able to work unless a custom decoding method is implemented. This is not consistent among all of the affected structs.
  • Updated the latest lexicon changes from Bluesky’s atproto repo, which includes app.bsky.video.* lexicons.
    • This is true as of October 1, 2024. Missing lexicon changes will be added on the following update.
  • Added advanced error handling in uploadVideo().
    • This is a test to see if this form of error handling will work. The next major update will implement this if it indeed works.
  • Made the following changes to ATProtoBluesky.createPostRecord():
    • Removed the tuple practice that caused a warning to appear.
      • Creating a record that contains a record and media at the same time has yet to be implemented.
      • Known issue: another warning has taken its place. This will be resolved in a future update.
    • Tweaked the documentation to reflect the above change.
    • Important to note: either on a hotfix or minor release, ATProtoBluesky will include the ability to upload videos. I haven’t been able to make a completely clear and elegant way to handle this, as, unlike images, videos can take a bit of time to upload. I also want the transcript array and alt text to properly be uploaded as well.
  • Fixed an issue with Swift 6 language mode.
    • Slightly modified the way record structs are added so as to ensure the process is completed before any method that accesses the structs are retrieved in a safe manner.

Important to note: at this time, Swift 6.0 will be the only officially supported platform for Linux platforms. Linux can build and run successfully on Swift 6.0, but you’ll need to add @preconcurrency before importing. If you want to make some pull requests so Linux is supported on Swift 5.9 and 5.10, then please feel free to do so.

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.

v0.17.5

25 Aug 05:47
Compare
Choose a tag to compare

Version 0.17.5 includes the following changes:

  • Fixed an issue where some misplaced code examples were in the “Getting Started With ATProtoKit” article.
  • Added missing record models in ATProtoKit.recordLexicons.

Once again, thank you for your support. Please give feedback, bug reports, and contributions if you have time. You can also speak to me on Bluesky (@cjrriley.com) for any questions.