Skip to content

v3.0.0 - Releases API & Optional Authentication

Latest

Choose a tag to compare

@jordanpartridge jordanpartridge released this 10 Aug 01:40
· 7 commits to master since this release
ffb5c47

πŸš€ What's New

Major Features

  • Releases Endpoint - Full support for GitHub Releases API

    • List all releases with pagination
    • Get specific release by ID
    • Get latest release
    • Complete DTO support for releases and assets
  • Optional Authentication - Work with public repos without tokens!

    • Automatic token discovery (GitHub CLI β†’ env vars β†’ config)
    • Public repositories accessible without authentication
    • Better rate limit messages with helpful guidance
  • Custom GitHub Connector - Full control over authentication

    • Replaced vendor dependency with our own implementation
    • Context-aware exception handling
    • Helpful error messages

πŸ’₯ Breaking Changes

  • Dropped Laravel 10 support - Now requires Laravel 11+
    • Clean architecture decision - no workarounds, no tech debt
    • Supports Laravel 11 and 12 only
    • If you need Laravel 10, use v2.x

πŸ”§ Technical Improvements

  • Removed conduit-ui/github-connector dependency
  • Better error handling throughout
  • Comprehensive test coverage (223 tests)
  • PSR-12 code style compliance

πŸ“¦ Installation

composer require jordanpartridge/github-client:^3.0

🎯 Perfect for THE SHIT Ecosystem

This release is optimized for THE SHIT component system:

  • Check component versions without authentication
  • Automatic GitHub CLI token usage
  • Clean, modern Laravel support

Requirements

  • PHP 8.2+
  • Laravel 11+ (Laravel 10 users should stay on v2.x)

No workarounds. No tech debt. Just clean code.