You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by "Xuanwo (via GitHub)" <gi...@apache.org> on 2024/07/13 07:25:12 UTC
[D] Proposal of opendal go binding release [opendal]
GitHub user Xuanwo created a discussion: Proposal of opendal go binding release
Thank you @yuchanns for contributing to https://github.com/apache/opendal/pull/4886. I am considering the best way to release the Go binding within our current layout.
Here is my proposal:
The Go binding source code will be hosted at `github.com/apache/opendal/bindings/go`. Users can import it as follows:
```go
import (
"fmt"
"os"
opendal "github.com/apache/opendal/bindings/go"
)
```
We will create tags such as `bindings/go/v0.1.0` to ensure semantic compatibility and integration with the go ecosystem.
The go binding will also need a place to host pre-build binary like `libopendal_c.so`. I propose to create a new repo called `github.com/apache/opendal-go-services`. The code layout is similiar to https://github.com/yuchanns/opendal-go-services.
So users will finally use opendal in this way:
```go
import (
"fmt"
"os"
opendal "github.com/apache/opendal/bindings/go"
"github.com/apache/opendal-go-services/s3"
)
```
The `apache/opendal-go-services` is optional. Users can build their own binaries as long as they meet the API requirements specified by `github.com/apache/opendal/bindings/go`.
For example, the following code should also work:
```go
import (
"fmt"
"os"
opendal "github.com/apache/opendal/bindings/go"
"github.com/yuchanns/opendal-go-services/s3"
)
```
The `apache/opendal-go-services` repository will use the same tag as `bindings/go/v0.1.0` and will automatically trigger a build and release every time `bindings/go` is released for all supported services.
Ideally, `apache/opendal-go-services` requires minimal maintenance beyond occasional updates to `go generate` and other tools. We expect all development work to occur within `github.com/apache/opendal/bindings/go`.
The `apache/opendal-go-services` will be managed as a binary release repository, similar to our approach with svn, npm, and pypi. It is not included in opendal's source release and is solely for user convenience.
---
This might be the first time the ASF has released a binary in this manner. I will contact ASF members and INFRA to confirm if it aligns with our policy. Before we get an answer, we can begin preparations like setting up the repository, ensuring CI functionality, and building other Go tools. If the response is OK, we can proceed with our first Go release. Otherwise, we'll need to transfer this repository to a different location.
cc @yuchanns, does this porposal looks good to you?
GitHub link: https://github.com/apache/opendal/discussions/4889
----
This is an automatically sent email for commits@opendal.apache.org.
To unsubscribe, please send an email to: commits-unsubscribe@opendal.apache.org
Re: [D] Proposal of opendal go binding release [opendal]
Posted by "yuchanns (via GitHub)" <gi...@apache.org>.
GitHub user yuchanns added a comment to the discussion: Proposal of opendal go binding release
Great! LGTM
GitHub link: https://github.com/apache/opendal/discussions/4889#discussioncomment-10037722
----
This is an automatically sent email for commits@opendal.apache.org.
To unsubscribe, please send an email to: commits-unsubscribe@opendal.apache.org
Re: [D] Proposal of opendal go binding release [opendal]
Posted by "yuchanns (via GitHub)" <gi...@apache.org>.
GitHub user yuchanns edited a comment on the discussion: Proposal of opendal go binding release
Great! LGTM. And now the [GoDoc](https://pkg.dev/github.com/apache/opendal/bindings/go) looks fine to me,
GitHub link: https://github.com/apache/opendal/discussions/4889#discussioncomment-10037722
----
This is an automatically sent email for commits@opendal.apache.org.
To unsubscribe, please send an email to: commits-unsubscribe@opendal.apache.org
Re: [D] Proposal of opendal go binding release [opendal]
Posted by "yuchanns (via GitHub)" <gi...@apache.org>.
GitHub user yuchanns edited a comment on the discussion: Proposal of opendal go binding release
Great! LGTM. And now the [GoDoc](https://pkg.dev/github.com/apache/opendal/bindings/go) looks fine to me.

GitHub link: https://github.com/apache/opendal/discussions/4889#discussioncomment-10037722
----
This is an automatically sent email for commits@opendal.apache.org.
To unsubscribe, please send an email to: commits-unsubscribe@opendal.apache.org
Re: [D] Proposal of opendal go binding release [opendal]
Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
GitHub user Xuanwo added a comment to the discussion: Proposal of opendal go binding release
Free free to go: https://github.com/apache/opendal-go-services
GitHub link: https://github.com/apache/opendal/discussions/4889#discussioncomment-10037775
----
This is an automatically sent email for commits@opendal.apache.org.
To unsubscribe, please send an email to: commits-unsubscribe@opendal.apache.org