Add pip-licenses target (make licenses) to regenerate NOTICE / THIRD_PARTY attribution

Open
#10 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
68/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python

Research direction

Start by locating the Makefile, the development dependency configuration, NOTICE, and DEVELOPER_GUIDE.md or the release checklist. Review how dependencies and release documentation are currently maintained, then run the proposed license-generation command and verify that make licenses regenerates the attribution output with the documented process.

Written by the indexing model from the issue text.

Description

Summary

Add a pip-licenses Makefile target so that
the NOTICE file and a THIRD_PARTY attribution document can be regenerated from the
currently installed package set with a single command.

Motivation

  • ASF policy requires the NOTICE file to credit all bundled third-party components
  • Manually maintaining attribution is error-prone when dependencies change
  • pip-licenses outputs Markdown, CSV, JSON, or plain text — suitable for both human
    review and automated checks
  • Apache Airflow and Superset both use tooling to keep attribution current

Proposed changes

  1. Add pip-licenses to dev dependencies
  2. Add make licenses target that runs:
    pip-licenses --with-authors --with-urls --format=markdown > THIRD_PARTY.md
    
  3. Add THIRD_PARTY.md to the repository (or generate at release time)
  4. Document the process in the release checklist / DEVELOPER_GUIDE.md

References

Dominant language
Python
Stars
3
Forks
5
Avg merge
5d 17h
Merged PRs (30d)
8

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from apache/solr-orbit

All issues in apache/solr-orbit

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.