-
Notifications
You must be signed in to change notification settings - Fork 18
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
Provide a skeleton of the new public library #277
Conversation
As part of the efforts to split SUSEConnect in a way that some of the internal libraries can be used outside of SUSEConnect proper, we are starting to develop a small library inside of the new `pkg` directory. This new public Go library does not make as many assumptions as SUSEConnect does, and we strive to make it useful in environments which might be completely different than SUSEConnect. Signed-off-by: Miquel Sabaté Solà <[email protected]> Co-authored-by: Felix Schnizlein <[email protected]>
Our old LICENSE file was simply a header, and a bad one at that (e.g. it contained outdated information like the old SUSE HQ). Instead of that, reproduce in the LICENSE file the whole contents of the license as it's expected, and drop the LICENSE.LGPL license as it's then a duplicate. This has mainly been done because there are tools that were confused by our old setup, and we could not even show the Go documentation of our public library in https://pkg.go.dev/ because of this. Note also that we took LGPL v3+ this time around, whereas the old one was LGPL v2+. We believe this doesn't break anything on legal terms as the previous license was with the "or later" clause. Signed-off-by: Miquel Sabaté Solà <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ensure that enum values in the new library are aligned with the existing SUSEConnect NG implementation. it is important from a broader perspective I feel. as it will help in integration and avoid enum mapping logic.
Some structures were returned as values, which could be harmful when returning big blobs, but it was also not valid on situations in which we wanted to mutate the object itself. Hence, pass those as pointers instead. Reviewed-by: Parag Jain <[email protected]> Signed-off-by: Miquel Sabaté Solà <[email protected]>
There were a couple of directories which were temporarily used to iterate fast on the code being developed. We can scrap that now. Reviewed-by: Felix Schnizlein <[email protected]> Signed-off-by: Miquel Sabaté Solà <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm still not in favor of the public-api-test
in the main cmd
directory. But this is nitpicking :)
lgtm 👍
As part of the efforts to split SUSEConnect in a way that some of the internal libraries can be used outside of SUSEConnect proper, we are starting to develop a small library inside of the new
pkg
directory. This new public Go library does not make as many assumptions as SUSEConnect does, and we strive to make it useful in environments which might be completely different than SUSEConnect.Note also that we have also updated the
LICENSE
file. This has mainly been done because there are tools that were confused by our old setup, and we could not even show the Go documentation of our public library in https://pkg.go.dev/ because of this.