Hi Sergio,

Thank you for the integration PR. This will be very useful. As an immediate
benefit Python SDK will have precommit coverage through Jenkins. There was
already existing coverage with Travis, nevertheless this will give us
additional testing. It is also an important step towards maturing the
python-
sdk branch to be merged into the master branch. My opinion is to get this
bit
in and benefit from it now.

Related to versioning bit. I believe Silviu wanted to get the Maven
integration first. It is now a good time to have this discussion. There
are two components to this discussion:

(1) Reading the version information from the pom.xml. This should happen
regardless of what versioning strategy we choose. We can continue this
discussion on how to implement that in BEAM-547.

(2) What version to use for Python SDK? This is a better forum to answer
this question.

As a context, there was an earlier community discussion on this [1][2]:

> Finally, we propose the standard approach where the entire source code
lives
> in each branch and is released concurrently. We’d like to avoid the case
> where individual modules are released on different cadences and are being
> maintained in different branches of the main repository. This is
beneficial
> because we don’t need to worry as much about versioning some of the
surfaces
> between components. However, for components that have a stable surface or
> across languages, we can relax this, as appropriate. Additionally, this
can
> be relaxed for hotfixes and different SDK languages.

Based on the above quote by default we should use the same version, however
it
is also possible to relax that requirement for a different SDK.

I propose that Python SDK to be versioned differently for two reasons:

(1) Python SDK does not have all the features yet and it is likely that it
will
play catch up for a while. During this time it would be confusing to the
users. A user might assume that a released Python SDK with version X to have
all the features that are available in Java SDK version X.
(2) In the future, it is possible that different user communities might
embrace
different SDKs. Having different versions would give the flexibility to the
SDK
developers to prioritize feature request differently and potentially have
non-synchronized release schedules.

Thanks,
Ahmet

[1]
https://lists.apache.org/thread.html/3b201b523701df077bee1a916a8af8dbaf3b11c28aa83015f71dad93@1455032762@%3Cdev.beam.apache.org%3E
[2]
https://docs.google.com/document/d/1mTeZED33Famq25XedbKeDlGIJRvtzCXjSfwH9NKQYUE/edit?usp=sharing

On Fri, Aug 12, 2016 at 9:49 AM, Sergio Fernández <[email protected]> wrote:

> Hi everybody,
>
> few weeks ago we started the discussion about integrating the Python SDK in
> the main Maven buid [1]. With the support from Ahmet Altay, we got a PR [2]
> that I think should be ready to be merged into the python-sdk branch.
>
> What's the feeling of the project? Do you think is valuable to have an
> integrated build?
>
> That leads us to the next aspect: versioning. Initially I had the idea of
> using the same version that the Maven artifact. After talking with Silviu
> Calinoiu we kept that aside for the moment. But I think at some point we
> should also discuss if the project wants to align the versions [3].
>
> Thanks for the feedback.
>
> Cheers,
>
> [1] https://issues.apache.org/jira/browse/BEAM-378
> [2] https://github.com/apache/incubator-beam/pull/537
> [3] https://issues.apache.org/jira/browse/BEAM-547
>
> --
> Sergio Fernández
> Partner Technology Manager
> Redlink GmbH
> m: +43 6602747925
> e: [email protected]
> w: http://redlink.co
>

Reply via email to