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

Review hashicorp license change impact #3941

Open
chaunceyjiang opened this issue Aug 14, 2023 · 4 comments
Open

Review hashicorp license change impact #3941

chaunceyjiang opened this issue Aug 14, 2023 · 4 comments
Labels
kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt.

Comments

@chaunceyjiang
Copy link
Member

chaunceyjiang commented Aug 14, 2023

What happened:

Recently hashicorp announced changes to some of its licenses. This issue is a place to assess the impact on Karmada.

CNCF issue: cncf/foundation#617

What you expected to happen:

None of the dependencies Karmada imports have been updated to the Business source license.

How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:

 go mod graph | grep "\s.*hashicorp" 
github.com/karmada-io/karmada github.com/hashicorp/hcl@v1.0.0
github.com/spf13/viper@v1.16.0 github.com/hashicorp/hcl@v1.0.0
github.com/spf13/viper@v1.16.0 github.com/hashicorp/consul/api@v1.20.0
github.com/spf13/viper@v1.16.0 github.com/hashicorp/go-cleanhttp@v0.5.2
github.com/spf13/viper@v1.16.0 github.com/hashicorp/go-hclog@v1.2.0
github.com/spf13/viper@v1.16.0 github.com/hashicorp/go-immutable-radix@v1.3.1
github.com/spf13/viper@v1.16.0 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/spf13/viper@v1.16.0 github.com/hashicorp/golang-lru@v0.5.4
github.com/spf13/viper@v1.16.0 github.com/hashicorp/serf@v0.10.1
sigs.k8s.io/cluster-api@v1.5.0 github.com/hashicorp/hcl@v1.0.0
github.com/hashicorp/go-immutable-radix@v1.3.1 github.com/hashicorp/go-uuid@v1.0.0
github.com/hashicorp/go-immutable-radix@v1.3.1 github.com/hashicorp/golang-lru@v0.5.0
github.com/spf13/viper@v1.10.1 github.com/hashicorp/hcl@v1.0.0
github.com/spf13/viper@v1.10.1 github.com/hashicorp/consul/api@v1.12.0
github.com/spf13/viper@v1.10.1 github.com/hashicorp/go-cleanhttp@v0.5.2
github.com/spf13/viper@v1.10.1 github.com/hashicorp/go-hclog@v1.0.0
github.com/spf13/viper@v1.10.1 github.com/hashicorp/go-immutable-radix@v1.3.1
github.com/spf13/viper@v1.10.1 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/spf13/viper@v1.10.1 github.com/hashicorp/golang-lru@v0.5.4
github.com/spf13/viper@v1.10.1 github.com/hashicorp/serf@v0.9.6
k8s.io/apimachinery@v0.18.4 github.com/hashicorp/golang-lru@v0.5.1
sigs.k8s.io/controller-runtime@v0.6.1 github.com/hashicorp/golang-lru@v0.5.4
google.golang.org/api@v0.9.0 github.com/hashicorp/golang-lru@v0.5.1
github.com/spf13/viper@v1.10.0 github.com/hashicorp/hcl@v1.0.0
github.com/spf13/viper@v1.10.0 github.com/hashicorp/consul/api@v1.11.0
github.com/spf13/viper@v1.10.0 github.com/hashicorp/go-cleanhttp@v0.5.2
github.com/spf13/viper@v1.10.0 github.com/hashicorp/go-hclog@v1.0.0
github.com/spf13/viper@v1.10.0 github.com/hashicorp/go-immutable-radix@v1.3.1
github.com/spf13/viper@v1.10.0 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/spf13/viper@v1.10.0 github.com/hashicorp/golang-lru@v0.5.4
github.com/spf13/viper@v1.10.0 github.com/hashicorp/serf@v0.9.6
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/consul/api@v1.12.0
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/go-cleanhttp@v0.5.2
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/go-hclog@v1.0.0
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/go-immutable-radix@v1.3.1
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/golang-lru@v0.5.4
github.com/sagikazarmark/crypt@v0.4.0 github.com/hashicorp/serf@v0.9.6
github.com/armon/go-metrics@v0.3.10 github.com/hashicorp/go-immutable-radix@v1.0.0
github.com/armon/go-metrics@v0.3.10 github.com/hashicorp/go-retryablehttp@v0.5.3
github.com/hashicorp/consul/api@v1.12.0 github.com/hashicorp/consul/sdk@v0.8.0
github.com/hashicorp/consul/api@v1.12.0 github.com/hashicorp/go-cleanhttp@v0.5.1
github.com/hashicorp/consul/api@v1.12.0 github.com/hashicorp/go-hclog@v0.12.0
github.com/hashicorp/consul/api@v1.12.0 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/hashicorp/consul/api@v1.12.0 github.com/hashicorp/go-uuid@v1.0.1
github.com/hashicorp/consul/api@v1.12.0 github.com/hashicorp/serf@v0.9.6
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/go-msgpack@v0.5.3
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/go-multierror@v1.1.0
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/go-syslog@v1.0.0
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/go-uuid@v1.0.1
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/logutils@v1.0.0
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/mdns@v1.0.4
github.com/hashicorp/serf@v0.9.6 github.com/hashicorp/memberlist@v0.3.0
k8s.io/apimachinery@v0.18.2 github.com/hashicorp/golang-lru@v0.5.1
go.opencensus.io@v0.22.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.8.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.7.0 github.com/hashicorp/golang-lru@v0.5.1
go.opencensus.io@v0.21.0 github.com/hashicorp/golang-lru@v0.5.0
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/consul/api@v1.11.0
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/go-cleanhttp@v0.5.2
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/go-hclog@v1.0.0
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/go-immutable-radix@v1.3.1
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/golang-lru@v0.5.4
github.com/sagikazarmark/crypt@v0.3.0 github.com/hashicorp/serf@v0.9.6
github.com/hashicorp/consul/api@v1.11.0 github.com/hashicorp/consul/sdk@v0.8.0
github.com/hashicorp/consul/api@v1.11.0 github.com/hashicorp/go-cleanhttp@v0.5.1
github.com/hashicorp/consul/api@v1.11.0 github.com/hashicorp/go-hclog@v0.12.0
github.com/hashicorp/consul/api@v1.11.0 github.com/hashicorp/go-rootcerts@v1.0.2
github.com/hashicorp/consul/api@v1.11.0 github.com/hashicorp/go-uuid@v1.0.1
github.com/hashicorp/consul/api@v1.11.0 github.com/hashicorp/serf@v0.9.5
github.com/hashicorp/go-immutable-radix@v1.0.0 github.com/hashicorp/go-uuid@v1.0.0
github.com/hashicorp/go-immutable-radix@v1.0.0 github.com/hashicorp/golang-lru@v0.5.0
github.com/hashicorp/go-retryablehttp@v0.5.3 github.com/hashicorp/go-cleanhttp@v0.5.0
github.com/hashicorp/consul/sdk@v0.8.0 github.com/hashicorp/go-cleanhttp@v0.5.1
github.com/hashicorp/consul/sdk@v0.8.0 github.com/hashicorp/go-hclog@v0.12.0
github.com/hashicorp/consul/sdk@v0.8.0 github.com/hashicorp/go-uuid@v1.0.1
github.com/hashicorp/go-multierror@v1.1.0 github.com/hashicorp/errwrap@v1.0.0
github.com/hashicorp/memberlist@v0.3.0 github.com/hashicorp/go-immutable-radix@v1.0.0
github.com/hashicorp/memberlist@v0.3.0 github.com/hashicorp/go-msgpack@v0.5.3
github.com/hashicorp/memberlist@v0.3.0 github.com/hashicorp/go-multierror@v1.0.0
github.com/hashicorp/memberlist@v0.3.0 github.com/hashicorp/go-sockaddr@v1.0.0
github.com/mitchellh/cli@v1.1.0 github.com/hashicorp/go-multierror@v1.0.0
github.com/posener/complete@v1.2.3 github.com/hashicorp/go-multierror@v1.0.0
k8s.io/apiserver@v0.18.4 github.com/hashicorp/golang-lru@v0.5.1
github.com/spf13/viper@v1.3.2 github.com/hashicorp/hcl@v1.0.0
k8s.io/apiserver@v0.18.2 github.com/hashicorp/golang-lru@v0.5.1
github.com/spf13/viper@v1.4.0 github.com/hashicorp/hcl@v1.0.0
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/go-msgpack@v0.5.3
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/go-multierror@v1.1.0
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/go-syslog@v1.0.0
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/go-uuid@v1.0.1
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/logutils@v1.0.0
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/mdns@v1.0.1
github.com/hashicorp/serf@v0.9.5 github.com/hashicorp/memberlist@v0.2.2
github.com/hashicorp/go-multierror@v1.0.0 github.com/hashicorp/errwrap@v1.0.0
google.golang.org/api@v0.22.0 github.com/hashicorp/golang-lru@v0.5.1
github.com/hashicorp/memberlist@v0.2.2 github.com/hashicorp/go-immutable-radix@v1.0.0
github.com/hashicorp/memberlist@v0.2.2 github.com/hashicorp/go-msgpack@v0.5.3
github.com/hashicorp/memberlist@v0.2.2 github.com/hashicorp/go-multierror@v1.0.0
github.com/hashicorp/memberlist@v0.2.2 github.com/hashicorp/go-sockaddr@v1.0.0
google.golang.org/api@v0.15.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.17.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.18.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.20.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.14.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.13.0 github.com/hashicorp/golang-lru@v0.5.1
google.golang.org/api@v0.19.0 github.com/hashicorp/golang-lru@v0.5.1


Environment:

  • Karmada version:
  • kubectl-karmada or karmadactl version (the result of kubectl-karmada version or karmadactl version):
  • Others:
@chaunceyjiang chaunceyjiang added the kind/bug Categorizes issue or PR as related to a bug. label Aug 14, 2023
@RainbowMango
Copy link
Member

Thanks @chaunceyjiang, I'm looking at this now. Just trying to state the current situation.

We are using github.com/hashicorp/hcl as an indirect dependency which is introduced by github.com/vektra/mockery.

# go mod why github.com/hashicorp/hcl
# github.com/hashicorp/hcl
github.com/karmada-io/karmada/hack/tools
github.com/vektra/mockery/v2             // requires github.com/spf13/viper   (https://github.com/vektra/mockery/blob/8abb7022eefaf0d424283d8957117e31e6eaa1cf/go.mod#L14C32-L14C32)
github.com/vektra/mockery/v2/cmd
github.com/spf13/viper                         // requires github.com/hashicorp/hcl (https://github.com/spf13/viper/blob/b77f4c19280bab64272eb8dba6c3a15bb2cae0ce/go.mod#L7C13-L7C22)
github.com/spf13/viper/internal/encoding/hcl
github.com/hashicorp/hcl

So the chain is that:

  1. Karmada requires github.com/vektra/mockery
  2. mockery requires github.com/spf13/viper
  3. viper requires github.com/hashicorp/hcl

Let's see if viper could get rid of github.com/hashicorp/hcl, the working issue is spf13/viper#1608.

@RainbowMango
Copy link
Member

Just a quick update:
viper removed the HCL dependency at v1.20.0-alpha.3! See spf13/viper#1608 (comment).
Now we are waiting for the final release to come out.

After that, we still need to wait for mockery to integrate the new version of viper.

@liangyuanpeng
Copy link
Contributor

/kind cleanup

@karmada-bot karmada-bot added the kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. label Jun 25, 2024
@RainbowMango
Copy link
Member

/remove-kind bug

@karmada-bot karmada-bot removed the kind/bug Categorizes issue or PR as related to a bug. label Jun 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt.
Projects
Status: Accepted
Development

No branches or pull requests

4 participants