Skip to content

Remove LGPLv3 Dependency#181

Merged
jbowes merged 1 commit intomanifoldco:masterfrom
nguyer:master
Oct 30, 2021
Merged

Remove LGPLv3 Dependency#181
jbowes merged 1 commit intomanifoldco:masterfrom
nguyer:master

Conversation

@nguyer
Copy link
Copy Markdown
Contributor

@nguyer nguyer commented May 17, 2021

This PR addresses #173

promptui is only using the ansiterm library for its TabWriter. However, this library is licensed under LGPLv3 https://github.com/juju/ansiterm/blob/master/LICENSE, causing licensing issues for other projects that want to include promptui.

This PR changes promptui to use Go's built in TabWriter rather than the one provided by ansiterm. This could result in some loss in features. All tests are passing still after this change, but it would be good for someone more familiar with the library to verify that this does not cause any significant problems.

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented May 17, 2021

CLA assistant check
All committers have signed the CLA.

@abhay-krishna
Copy link
Copy Markdown

Thank you for addressing the issue @nguyer! Would be great to have this merged, so we can consume promptui without any license issues.

@AkihiroSuda
Copy link
Copy Markdown

@jbowes Could you take a look?

@nguyer
Copy link
Copy Markdown
Contributor Author

nguyer commented Jun 25, 2021

In the meantime, anyone is welcome to use my fork which has the GPL code removed: https://github.com/nguyer/promptui

mholt added a commit to caddyserver/caddy that referenced this pull request Oct 21, 2021
Ideally this needs to be fixed upstream in github.com/manifoldco/promptui, but it appears unmaintained. Our dependency is extremely indirect:

    $ go mod why github.com/juju/ansiterm
    # github.com/juju/ansiterm
    github.com/caddyserver/caddy/v2/modules/caddypki
    github.com/smallstep/certificates/authority
    go.step.sm/cli-utils/ui
    github.com/manifoldco/promptui
    github.com/juju/ansiterm

And it appears that all dependencies in this chain are in conflict with the LGPL license.

Ref:
- manifoldco/promptui#173
- manifoldco/promptui#181

/cc @maraino
Copy link
Copy Markdown
Member

@jbowes jbowes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @nguyer. I apologize for how long it's taken to respond.

text/tabwriter Won't properly align colorized (or otherwise formatted) text, but it's better to have that bug than to have license violations.

@jbowes jbowes merged commit cbf8682 into manifoldco:master Oct 30, 2021
@nguyer
Copy link
Copy Markdown
Contributor Author

nguyer commented Oct 30, 2021

Awesome! Thanks for merging this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants