[
https://issues.apache.org/jira/browse/BEAM-5379?focusedWorklogId=279322&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-279322
]
ASF GitHub Bot logged work on BEAM-5379:
----------------------------------------
Author: ASF GitHub Bot
Created on: 18/Jul/19 20:49
Start Date: 18/Jul/19 20:49
Worklog Time Spent: 10m
Work Description: lostluck commented on issue #9085: [BEAM-5379] Add go
modules
URL: https://github.com/apache/beam/pull/9085#issuecomment-512981715
Thank you! It's very exciting someones jumping on this! It's perpetually
been on my todo list, but I've always lacked the time to get the Gradle
expertise.
If it's possible to disable the dependency resolution tasks, then I have no
problem with this approach. I hadn't even considered that as an option.
As for the RAT check, we can add exclusions for go.mod & go.sum files in the
root build.gradle file. Given they're generated, this shouldn't be problematic.
https://github.com/apache/beam/blob/master/build.gradle#L77
One thing I'd like to ensure is that the SDK is *not* marked at the same
version as mainline beam at this time. We need to tag it
sdks/go/pkg/beam+v0.<current beam minor> or similar at this time. And ideally
we have two modules, one for the actual user package in sdks/go/pkg/beam and
one for sdks/go
If only to make the sdks/go depending on the user package very explicit. It
also makes it clear that sdks/go/test etc depend on a version of the user
package (which we can then force set to a specific commit or similar for the
jenkins runs)
Largely:
* The SDK is still experimental and being v0 is a good signal for that.
* v2 has additional implications around quality that the SDK isn't prepared
for (just yet). It's not a v2+ project at this time.
* (minor) We wouldn't need to update all the imports to refer to v2 to be in
proper module compatibility.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 279322)
Time Spent: 3h 40m (was: 3.5h)
> Go Modules versioning support
> -----------------------------
>
> Key: BEAM-5379
> URL: https://issues.apache.org/jira/browse/BEAM-5379
> Project: Beam
> Issue Type: Improvement
> Components: sdk-go
> Reporter: Robert Burke
> Assignee: Robert Burke
> Priority: Major
> Time Spent: 3h 40m
> Remaining Estimate: 0h
>
> This would make it easier for non-Go developers to update and test changes to
> the Go SDK without jumping through hoops to set up Go Paths at first.
> Right now, we us the gogradle plugin for gradle to handle re-producible
> builds. Without doing something with the GO_PATH relative to a user's local
> git repo though, changes made in the user's repo are not represented when
> gradle is invoked to test everything.
> One of at least the following needs to be accomplished:
> * gogradle moves to support the Go Modules experiment in Go 1.11, and the SDK
> migrates to that
> * or we re-implement our gradle go rules ourselves to use them,
> * or some third option, that moves away from the GO_PATH nit.
> This issue should be resolved after deciding and implementing a clear
> versioning story for the SDK, ideally along Go best practices.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)