Swiftpack.co - Package - mdiep/Tentacle

Tentacle MIT license

A Swift framework for the GitHub API

let client  = Client(.dotCom, token: "…")
let repo    = Repository(owner: "ReactiveCocoa", name: "ReactiveCocoa")
let request = repo.release(forTag: "tag-name")
client
    .execute(request)
    .startWithResult { result in
        switch result {
        case let .success(response, release):
            print("Downloaded release: \(release)")
        case let .failure(error):
            print("An error occurred: \(error)")
        }
    }

Tentacle is built with ReactiveSwift.

License

Tentacle is available under the MIT License

Github

link
Stars: 241

Releases

0.14.0: Octopus Briareus - 2020-04-23 15:00:33

  • Migrate codebase to Swift 5.2
  • Move CI to use Xcode 11.3, Xcode 11.4

0.13.1 - 2019-03-29 18:26:18

Fixed

  • SwiftPM support

0.13.0 - 2019-03-29 17:17:54

Breaking

  • Updated to ReactiveSwift 5.0
  • Updated to Swift 4.2

0.12.1: Octopus Bocki - 2019-03-04 13:45:29

Fixed

  • Support for Result 4.1.0 (#104)

Added

  • Ability to get the latest release in a repository (#105)

0.12.0: Octopus Bimaculoides - 2018-09-05 04:52:14

Breaking

  • Update ReactiveSwift to 4.0.0 (#98). Thanks @ikesyo!

Added

  • Fetch a repository's information (#95). Thanks @Palleas!
  • Add function to retrieve an issue in the repository (#96). Thanks @Palleas!

Improved

  • Use Xcode 9.3 image on Travis (#97). Thanks @dcaunt!
  • Xcode 9.4 support (#99). Thanks @ikesyo!
  • Make Identifiable Hashable and provide a default implementation (#100). Thanks @ikesyo!
  • [SE-0185] Utilize synthesized Equatable and Hashable conformances (#101). Thanks @ikesyo!

0.11.0: Octopus Bimaculatus - 2017-11-25 06:39:55

Breaking

  • Update ReactiveSwift to 3.0 (#93). Thanks @ikesyo!

0.10.0: Octopus Berrima - 2017-10-24 16:34:10

Breaking

  • Tentacle now requires Xcode 9 and Swift 4 (#85, #86, #88). Thanks @ikesyo!
  • Migrated to Swift's Decodable API (#84). Thanks @Palleas, @ikesyo and @dcaunt!

Fixed

  • Identifiable conformance in RepositoryInfo (#89). Thanks @ikesyo!

0.9.0: Octopus Balboai - 2017-09-26 16:51:48

Breaking

  • Implement Identifiable type in model with ids (#87). Thanks @Palleas!

Fixed

  • Some decoding problems (#87). Thanks @mdiep!

0.8.0: Octopus Australis - 2017-07-25 12:33:25

This release updates to ReactiveSwift 2.0 (#86). Thanks @ikesyo!

0.7.1: Octopus Aspilosomatis - 2017-07-15 01:48:50

Added

  • Support for Swift 3.2 (#83, #85). Thank you @dcaunt and @ikesyo!

Special thank you to @dcaunt for improvements to the test suite (#82). ✨

0.7.0: Octopus Areolatus - 2017-05-23 16:20:15

This release has a significant reworking of the API. Instead of calling methods directly on Client, methods and properties are exposed on the different types to return a Request<Value>. These are then used with one of the Client.execute methods to actual perform the request.

Added

  • Ability to get a tree from a repo (#70). Thanks @dcaunt!
  • Ability to create a tree in a repo (#71). Thanks @dcaunt!

Fixed

  • UserProfile.websiteURL is now a String because it can contain any string

0.6.0: Octopus Arborescens - 2017-04-16 13:14:13

Added

  • Client.branches(in: Repository) to retrieve branches in a repository (#61). Thanks @Palleas!

Fixed

  • Crash when a response returns invalid JSON (#67). Thanks @ikesyo!
  • Work around a Swift 3.1 compiler crash in the Release configuration (#69). Thanks @ikesyo!

Thank you to @ikesyo and @dduan for improvements to the codebase! ✨

0.5.1: Octopus Araneoides - 2017-02-06 13:54:11

Added

  • Support for Swift Package Manager (#59). Thanks @ikesyo!
  • atRef parameter to Client.content to get content at a specific ref (#58). Thanks @Palleas!

Thank you to @ikesyo for improvements to the codebase and for reviewing pull requests!

0.5: Octopus Alpheus - 2017-01-27 14:30:20

Added

  • Support for Swift 3 (#43). Thanks @ikesyo!
  • Client.content(atPath: String, in: Repository) to retrieve files from the API (#51). Thanks @Palleas!
  • Client.create(file: File, atPath: String, in: Repository) to create files with the API (#55). Thanks @Palleas!

Improved

  • Boolean properties now use is prefix (#49). Thanks @ikesyo!
  • The URLSession is now configurable (#45). Thanks @ikesyo!

Thank you also to @ikesyo and @pixyzehn for improvements to the codebase!

0.4.1: Octopus Alecto - 2016-09-27 12:47:05

Added

  • Client.commentsOnIssue for fetching comments on issues and PRs (#38, #40). Thanks @Palleas!
  • Methods for fetching repositories on users and organizations (#41). Thanks @Palleas!

Fixed

  • GitHub Enterprise clients on Swift 2.3 (#42). Thanks @jasonboyle!

0.4: Octopus Alatus - 2016-07-24 01:08:37

Added

  • Support for Xcode 8 / Swift 2.3 (#37). Thanks @ikesyo!
  • Client.assignedIssues() for getting the issues assigned to the authenticated user (#28). Thanks @Palleas!
  • Client.issuesInRepository() for getting the issues in a repository (#28). Thanks @Palleas!
  • Client.authenticatedUser() for getting information about the authenticated user (#35). Thanks @Palleas!

Improved

  • Client.userWithLogin() now returns a UserInfo and User is used for things like an issue’s author (#31).

0.3: Octopus Aegina - 2016-04-13 02:29:20

Added

  • A method to fetch a user by login (#27).

Fixed

  • Compatibility with GitHub Enterprise instances (#26).

0.2: Octopus Adamsi - 2016-04-07 22:53:52

This release drops support for Swift 2.1.

Added

  • Support for Swift 2.2 (#23). Thanks @ikesyo!

0.1.1: Octopus Aculeatus - 2016-03-21 01:38:15

Fixed

  • Servers and Repositorys now use case-insensitive comparisons (#22).

0.1: Octopus Abaculus - 2016-03-20 18:24:51

This is the first release of Tentacle, built to support the needs of Carthage. :tada: