-
Notifications
You must be signed in to change notification settings - Fork 31
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
chore: replace hashicorp/vault with openbao #2707
Conversation
@kdenhartog PTAL, there was a change in the Shamir's implementation: openbao/openbao@a209a05 https://github.com/openbao/openbao/blob/main/sdk/helper/shamir/shamir.go |
[puLL-Merge] - brave-intl/bat-go@2707 DescriptionThis PR updates the Go version from 1.18 to 1.21/1.22 across the project and makes several dependency updates. It also includes some minor changes to vault-related imports and configuration. ChangesChanges
Possible Issues
Security HotspotsNo significant security issues are immediately apparent in this change. However, any dependency update should be carefully reviewed for potential security implications, especially those related to cryptographic operations or authentication (like the vault-related changes). |
I've looked through this and not concerned with switching over to OpenBAO nor with the modifications made to Shamir. I've also opened an issue to remove the payments service from this repo since we've now migrated it. |
\o hey @pavelbrm @kdenhartog -- quick question for y'all since I see you pulled the OpenBao SDK --- My understanding was that our I think leaving it as-is would be ideal, since this impacts testing of the SDK with the latest API on our end so I'd prefer to leave it if it isn't causing issues for downstream consumers. |
Hey @cipherboy thanks for reaching out!
It depends on how diligently the code base will be maintained. Any features from the replaced modules that are available via a released version should also be available to consumers. This means that when the parent module (that which contains the As far as I can tell, the original repository, To illustrate what I am referring to, consider the following example from the original repo. It replaces many of its internal components, But the most recent publicly available code for I noticed an issue whilst upgrading Ultimately, during the work on that PR, it was decided to migrate to OpenBao. This goes back to the question when to define a module, and when use just a package. A module is needed when independent versioning is needed. That is, a piece of software that evolves somewhat independently from others. The Frankly, our own repository does not do a good job at that, and it's something that needs to be fixed. Hope that helps. |
Summary
This PR removes
github.com/hashicorp/vault
to reduce transitive dependencies, such asgithub.com/Azure/azure-sdk-for-go
.before:
after:
Fixes https://github.com/brave-intl/bat-go/security/dependabot/143.
Fixes https://github.com/brave-intl/bat-go/security/dependabot/144.
Fixes https://github.com/brave-intl/bat-go/security/dependabot/145.
Fixes https://github.com/brave-intl/bat-go/security/dependabot/146.
Fixes https://github.com/brave-intl/bat-go/security/dependabot/147.
Fixes https://github.com/brave-intl/bat-go/security/dependabot/148.
Type of Change
Tested Environments
Before Requesting Review