Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove LGPLv3 Dependency #181

Merged
merged 1 commit into from
Oct 30, 2021
Merged

Remove LGPLv3 Dependency #181

merged 1 commit into from
Oct 30, 2021

Conversation

nguyer
Copy link
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

CLAassistant commented May 17, 2021

CLA assistant check
All committers have signed the CLA.

@abhay-krishna
Copy link

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

@jbowes Could you take a look?

@nguyer
Copy link
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
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
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