gocredits

package module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2026 License: MIT Imports: 22 Imported by: 3

README

gocredits

Test Status MIT License PkgGoDev

gocredits creates CREDITS file from LICENSE (and NOTICE) files of dependencies

Synopsis

gocredits . > CREDITS

Description

When distributing built executable in Go, we need to include LICENSE of the dependent libraries into the package, so gocredits bundle them together as a CREDITS file.

If a dependency also ships a NOTICE file (NOTICE, NOTICE.txt or NOTICE.md), as section 4(d) of the Apache License 2.0 asks redistributors to include, gocredits puts it right after that dependency's LICENSE. The output for dependencies without a NOTICE file does not change.

To use gocredits, we should use go modules for dependency management.

Installation

homebrew
% brew install Songmu/tap/gocredits
go get
% go install github.com/Songmu/gocredits/cmd/gocredits@latest
aqua
% aqua g -i Songmu/gocredits

Built binaries are available on GitHub Releases. https://github.com/Songmu/gocredits/releases

GitHub Actions

The action installs and runs gocredits, overwriting CREDITS in the repository root:

permissions:
  contents: read

steps:
- uses: actions/checkout@v7
- id: gocredits
  uses: Songmu/gocredits@v1

The module directory, missing-license behavior, and output format can be configured:

- uses: Songmu/gocredits@v1
  with:
    directory: ./path/to/module
    skip-missing: true
    format: |
      {{range .Licenses}}{{.Name}}
      {{end}}

By default, the action runs gocredits after installing it. To install it without generating CREDITS, set run to false. The installed command is available to subsequent steps:

- uses: Songmu/gocredits@v1
  with:
    run: false
- run: gocredits -version

The action outputs the absolute credits path and a changed value indicating whether the file contents changed when run is true. Both outputs are empty when run is false. The action does not commit or push the generated file. The contents: read permission is required by the checkout step.

Author

Songmu

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Run

func Run(argv []string, outStream, errStream io.Writer) error

Run the gocredits

Types

This section is empty.

Directories

Path Synopsis
cmd
gocredits command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL