fj/CHANGELOG.md
2026-01-09 13:49:41 +01:00

3.8 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.2.0 - 2026-01-09

Added

Release Management

  • fgj release list - List releases for a repository
  • fgj release view - View details of a specific release (supports "latest" keyword)
  • fgj release create - Create new releases with optional asset uploads
  • fgj release upload - Upload assets to existing releases with optional clobber support
  • fgj release delete - Delete releases (preserves Git tags)

Issue Management

  • fgj issue edit - Edit existing issues with support for updating title, body, and labels

Pull Request Management

  • fgj pr create --assignee - Assign users when creating pull requests

Repository Detection

  • Automatic hostname detection from git remote URLs
  • Improved multi-instance support with auto-detection from git context

Improved

  • Enhanced documentation with AUR and Homebrew installation instructions
  • Added functional tests for release management and issue editing
  • Added Makefile install target for easier local installation
  • Added .editorconfig for consistent code formatting

Development

  • CI: Added nightly builds for continuous testing
  • Expanded functional test coverage for new features

0.1.0 - 2025-12-16

Added

Core Features

  • Initial release of fgj - Forgejo CLI tool
  • Multi-instance support for any Forgejo/Gitea instance
  • Automatic repository detection from git context (optional -R flag)
  • Secure authentication with personal access tokens
  • Configuration management via ~/.config/fgj/config.yaml

Pull Request Management

  • fgj pr list - List pull requests with filtering by state
  • fgj pr view - View detailed pull request information
  • fgj pr create - Create new pull requests
  • fgj pr merge - Merge pull requests with configurable merge methods

Issue Management

  • fgj issue list - List issues with state filtering
  • fgj issue view - View detailed issue information
  • fgj issue create - Create new issues
  • fgj issue comment - Add comments to issues
  • fgj issue close - Close issues

Repository Operations

  • fgj repo view - View repository details
  • fgj repo list - List user repositories
  • fgj repo clone - Clone repositories with protocol selection (HTTPS/SSH)
  • fgj repo fork - Fork repositories

Forgejo Actions Support

  • fgj actions run list - List workflow runs with status and metadata
  • fgj actions run view - View detailed run information, jobs, and logs
    • Support for --verbose, --log, --log-failed, and --job flags
  • fgj actions secret list - List repository secrets
  • fgj actions secret create - Create repository secrets
  • fgj actions secret delete - Delete repository secrets
  • fgj actions variable list - List repository variables
  • fgj actions variable get - Get variable values
  • fgj actions variable create - Create repository variables
  • fgj actions variable update - Update repository variables
  • fgj actions variable delete - Delete repository variables

Authentication

  • fgj auth login - Interactive authentication with Forgejo instances
  • fgj auth status - Check authentication status
  • Environment variable support (FGJ_HOST, FGJ_TOKEN)

Development

  • Comprehensive unit test suite
  • Functional end-to-end tests
  • CI/CD pipeline with automated testing
  • Code quality checks and linting

Technical Details

  • Built with Go 1.23+
  • Uses Gitea SDK for API interactions
  • Cobra framework for CLI structure
  • Viper for configuration management