Skip to content

V1.0.0

Latest
Compare
Choose a tag to compare
@DAMMAK DAMMAK released this 15 Oct 14:09
· 7 commits to master since this release

GitHubKit v1.0.0 Release Notes

We're excited to announce the initial release of GitHubKit, a comprehensive Dart package for interacting with the GitHub API. This release provides a robust set of features for developers looking to integrate GitHub functionality into their Dart and Flutter applications.

Features

Authentication

  • Personal Access Token authentication

API Coverage

  • Repositories API:
    • Get repository information
    • Create new repositories
    • List user repositories
    • Delete repositories
  • Issues API:
    • Create issues
    • Get issue details
    • List repository issues
    • Update existing issues
  • Pull Requests API:
    • Create pull requests
    • Get pull request details
    • List pull requests
    • Update pull requests
    • Merge pull requests
  • GitHub Actions API:
    • List workflow runs
    • Get workflow run details
    • Cancel workflow runs
    • Rerun workflow runs
  • Code Scanning API:
    • List code scanning alerts
    • Get alert details
    • Update alert status
  • Secret Scanning API:
    • List secret scanning alerts
    • Get alert details
    • Update alert status

GraphQL Support

  • Execute custom GraphQL queries
  • Built-in error handling for GraphQL responses

Advanced Features

  • Automatic Pagination: Hassle-free handling of paginated responses
  • Rate Limiting:
    • Built-in rate limit detection
    • Automatic retrying with configurable attempts and delay
  • Logging: Comprehensive logging system with configurable log levels

Utility Features

  • HTTP request abstraction with retry logic
  • Easy-to-use API structure with separate classes for each GitHub API section

CLI Tool

  • Command-line interface for quick GitHub operations
  • Supports both token-based and OAuth authentication
  • Commands for repository management, issue listing, and more

Documentation

  • Comprehensive README with usage examples
  • Detailed API documentation
  • Example implementations for common use cases

Development Features

  • Extensive test suite with unit and integration tests
  • Mocking support for easier testing of GitHub API interactions

Breaking Changes

  • None (Initial Release)

Known Issues

  • None at the time of release

Upcoming Features

  • Support for more GitHub API endpoints
  • Enhanced error handling and response parsing
  • Improved documentation and more code examples
  • Potential GraphQL code generation for type-safe queries
  • Oauth authentication mode

Compatibility

  • Dart SDK: >=2.12.0 <3.0.0
  • Flutter: Compatible with all Flutter versions supporting Dart 2.12.0 and above

Dependencies

  • http: ^0.13.3
  • oauth2: ^2.0.0
  • gql: ^0.13.0
  • gql_http_link: ^0.4.0
  • gql_link: ^0.4.0
  • gql_exec: ^0.3.0
  • logging: ^1.0.1

Installation

Add this to your package's pubspec.yaml file:

dependencies:
  github_kit: ^1.0.0