From dev-return-23520-archive-asf-public=cust-asf.ponee.io@beam.apache.org Mon Jun 1 15:27:02 2020 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with SMTP id 05FF11804BB for ; Mon, 1 Jun 2020 17:27:01 +0200 (CEST) Received: (qmail 95291 invoked by uid 500); 1 Jun 2020 15:27:01 -0000 Mailing-List: contact dev-help@beam.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@beam.apache.org Delivered-To: mailing list dev@beam.apache.org Received: (qmail 95280 invoked by uid 99); 1 Jun 2020 15:27:00 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 01 Jun 2020 15:27:00 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 33BDF1A3460 for ; Mon, 1 Jun 2020 15:27:00 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.001 X-Spam-Level: X-Spam-Status: No, score=-0.001 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd2-us-west.apache.org (amavisd-new); dkim=pass (1024-bit key) header.d=polidea.com Received: from mx1-ec2-va.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id qhXxqd0gjWNA for ; Mon, 1 Jun 2020 15:26:58 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=209.85.167.51; helo=mail-lf1-f51.google.com; envelope-from=tobiasz.kedzierski@polidea.com; receiver= Received: from mail-lf1-f51.google.com (mail-lf1-f51.google.com [209.85.167.51]) by mx1-ec2-va.apache.org (ASF Mail Server at mx1-ec2-va.apache.org) with ESMTPS id DCFA7BB8CA for ; Mon, 1 Jun 2020 15:26:57 +0000 (UTC) Received: by mail-lf1-f51.google.com with SMTP id j12so1439121lfh.0 for ; Mon, 01 Jun 2020 08:26:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=polidea.com; s=google; h=from:mime-version:subject:message-id:date:to; bh=UxHRGyXBdddLWJkLg3CEX4D3jWG0XOtkacwzzsziZlU=; b=TXVSF8Bs1sdMgjWJ5wsu09ifE6abOAykSjaQxR4SkVg4JHeJ2RHdSjpq9emm20ThCZ hAtz9VSeGldKGAb5kKMUQJrKr8S5wB/WZNRhJmyhZCAcvY7mO3auZkXvT94zIinFsyhL JnYcUlqXA7YhREkpZzkg7CuMzfBdVa6NBCr9Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:message-id:date:to; bh=UxHRGyXBdddLWJkLg3CEX4D3jWG0XOtkacwzzsziZlU=; b=GUM23ocrk7cqrk8mbOqeuPDqW6PK++AHyKB/EIbJEMdmy1V0rKOyzSiJEaswNa0z2B cklfTd3Yg7ZPvanhQuYiO4uWDNDvkTz/zon73K+t5C6gEblMDOn3aPJdtbxXjAVmDWP8 ZAzxOUYWRGwZ9Uad3H5/3xBCUzKgHKyepGB9Z1GwQXezb0fXjHV2a4FHEElzEG7OlXn7 U31hG60q+FdqC7jhM0Er7Ol8JmhMuLoq/qH03ba5pkEhMPNlOaekiyr5WP+wvH0aAQCG k+9IsMXcc/86XABn8MH2moFt11vxTJ/CUbUF9AnmeZE92dmysQD/gepdx1o7KrOmer3x 9hDg== X-Gm-Message-State: AOAM531N+qAGeSM6sCKSMpucTByRluNDwtDU4U7JkqhEOgxpUK3lHf09 SElkTAoTXQl6X7IY+U3Lrry7pYBgSS0Zfu20 X-Google-Smtp-Source: ABdhPJyr3V9vbr0LcgP2pjsWa8SDKZPqLR+FJp6Ut11oAw+GSlUCNEZR6yB1lRHX/kH5oe7hDLCe6w== X-Received: by 2002:a19:6a0e:: with SMTP id u14mr11313857lfu.192.1591025215966; Mon, 01 Jun 2020 08:26:55 -0700 (PDT) Received: from [192.168.0.31] (89-65-46-75.dynamic.chello.pl. [89.65.46.75]) by smtp.gmail.com with ESMTPSA id y23sm4842821lfg.31.2020.06.01.08.26.55 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 01 Jun 2020 08:26:55 -0700 (PDT) From: =?utf-8?Q?Tobiasz_K=C4=99dzierski?= Content-Type: multipart/alternative; boundary="Apple-Mail=_2DE58989-A47A-4D0E-A64A-4A02E4CAD359" Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\)) Subject: Re: Fwd: [DISCUSSION] Use github actions for python wheels ? Message-Id: <532BEFE2-905D-40C5-B67D-20FBE91CB421@polidea.com> Date: Mon, 1 Jun 2020 17:26:54 +0200 To: dev@beam.apache.org X-Mailer: Apple Mail (2.3608.80.23.2.2) --Apple-Mail=_2DE58989-A47A-4D0E-A64A-4A02E4CAD359 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Hi everyone, Austin Benett I would like cooperate with you with introducing GitHub = actions for python wheels. Since last week I am trying to figure out how to do this and I was able = to build wheels for Linux and MacOS with help of = https://github.com/joerick/cibuildwheel/ = . I=E2=80=99ve created draft PR to apache/beam: = https://github.com/apache/beam/pull/11877 = and you can check GitHub = actions logs on fork PR here: https://github.com/TobKed/beam/pull/3 = I am struggling with building wheels for Windows due to the error: > Cannot open include file: 'unistd.h': No such file or directory caused by file = sdks/python/apache_beam/runners/worker/statesampler_fast.pyx Adding this file to be excluded by cythonize method in setup.py allowed = build to be completed however I don=E2=80=99t think it is a solution. Mentioned error on GitHub actions: = https://github.com/TobKed/beam/runs/727709583?check_suite_focus=3Dtrue#ste= p:7:977 = and my local PR: https://github.com/TobKed/beam/pull/2 = What do you think about it? Tobiasz On 2020/05/30 20:53:51, Austin Bennett wrote:=20 > There seems to be support here for this idea. After digging through>=20= > things, I *think* I understand the moving pieces and can address = (reason I>=20 > was digging through the code, including beam-wheels repo [1]). = Though, not>=20 > 100% that I have not overlooked bits.>=20 >=20 > Would be happy to pickup>=20 > https://issues.apache.org/jira/browse/BEAM-9388 (imagine>=20 > would get to it over the course of a month or few -- so also wouldn't = want>=20 > to take it on if others would be looking to do it sooner) -- seems>=20 > worthwhile to reduce manual steps for the release process, as well as = the>=20 > additional implications (daily builds) if can easily manage. I have = some>=20 > experience with GitHub Actions, but not with our (BEAM) = deployment/release>=20 > process, nor much with building wheels. I assume there are sufficient = docs>=20 > available to go through for the mechanics of the latter. If picking = up>=20 > this issue, I suspect may need to bother some of those that have done>=20= > recent releases -- that would best occur on the jira ticket, once at = that>=20 > point?>=20 >=20 > @Ismail -- given your experience with GitHub = actions,>=20 > any reason to think GitHub Actions not appropriate/ready for this = specific>=20 > task?>=20 >=20 > @Ahmet Altay happy to understand the extent of what = you>=20 > had in mind, maybe the extensions are not as important to plan out, = as>=20 > they're straightforwardly bolted on (ex: daily builds). More = tactically>=20 > would be valuable to ensure I understand what all needs to occur. = Any>=20 > other source of info to consume other than>=20 > https://github.com/apache/beam-wheels and>=20 > https://beam.apache.org/contribute/release-guide/.>=20 >=20 > Also, open to the thought that this might be taking on too much, = without>=20 > more experience with the release process and such. Do advise...?>=20 >=20 >=20 > [1]>=20 > = https://lists.apache.org/thread.html/r93884eb080297647207f7d2b8a393e224029= fc2c3509017886e84051%40%3Cdev.beam.apache.org%3E>=20 >=20 >=20 >=20 > ---------- Forwarded message --------->=20 > From: Isma=C3=ABl Mej=C3=ADa >=20 > Date: Wed, Feb 26, 2020 at 12:09 PM>=20 > Subject: Re: [DISCUSSION] Use github actions for python wheels ?>=20 > To: dev >=20 >=20 >=20 > +1 I have been migrating multiple projects into github actions = recently and>=20 > even if for some tasks it is not as mature and polished as travis it = has>=20 > proven to be way more reliable.>=20 >=20 >=20 > On Wed, Feb 26, 2020 at 7:07 PM Ahmet Altay wrote:>=20= >=20 > > I created https://issues.apache.org/jira/browse/BEAM-9388 to = explore>=20 > > this. To be explicit and not to do cookie licking, I would not be = able to>=20 > > work on this at the moment. If anyone is interested please take it.>=20= > > Otherwise I will try to come back and explore this when I can.>=20 > >>=20 > > On Tue, Feb 25, 2020 at 2:57 PM Robert Bradshaw >=20= > > wrote:>=20 > >>=20 > >> I'd be in favor of this, assuming it actually simplifies things.>=20= > >>=20 > >>=20 > > This is also my concern. I do think that it will simplify things, = but I am>=20 > > not certain as I am not very familiar with the github actions.>=20 > >>=20 > >>=20 > >> (Note>=20 > >> that the wheels are for several variants of linux, presumably we = could>=20 > >> do cross-compiles. Also, manylinux is a "minimal" linux = specifically>=20 > >> built as to produce shared object libraries compatible with a wide>=20= > >> variety of distributions--we can't just assume that a shared = object>=20 > >> library built on one modern linux will just work on another. (But>=20= > >> maybe it's sufficient to do this within a docker environment?)>=20 > >>>=20 > >>=20 > > There will be no change in this area. Both in Both Travis and = github>=20 > > actions offer a comparable set of options.>=20 > >>=20 > >>=20 > >>>=20 > >> On Tue, Feb 25, 2020 at 2:23 PM Kenneth Knowles = wrote:>=20 > >> >>=20 > >> > +1 to exploring this.>=20 > >> >>=20 > >> > On builds@apache.org there is lots of discussion and general = approval>=20 > >> for trying it. It is enabled and used by some projects. Calcite = uses it to>=20 > >> build their website, for example.>=20 > >>>=20 > >>=20 > > Great.>=20 > >>=20 > >>=20 > >> >>=20 > >> > Kenn>=20 > >> >>=20 > >> >>=20 > >> > On Tue, Feb 25, 2020 at 2:08 PM Ahmet Altay = wrote:>=20 > >> >>>=20 > >> >> Hi all,>=20 > >> >>>=20 > >> >> I recently had a chance to look at the documentation for github>=20= > >> actions. I think we could use github actions instead of travis to = for>=20 > >> building python wheels during releases. This will have the = following>=20 > >> advantages:>=20 > >> >>>=20 > >> >> - We will eliminate one repo. (If you don't know, we have>=20 > >> https://github.com/apache/beam-wheels for the sole purpose of = building>=20 > >> wheels file.)>=20 > >> >> - Workflow will be stored in the same repo. This will prevent = bit rot>=20 > >> that is only discovered at release times. (happened a few times, = although>=20 > >> usually easy to fix.)>=20 > >> >> - github actions supports ubuntu, mac, windows environments. We = could>=20 > >> try to build wheels for windows as well. (Travis also supports the = same>=20 > >> environments but we only use linux and mac environments. Maybe = there are>=20 > >> other blockers for building wheels for Windows.)>=20 > >> >> - We could do more, like daily python builds.>=20 > >> >>>=20 > >> >> Downsides would be:>=20 > >> >> - I do not know if github actions will require some special set = of>=20 > >> permissions that require an approval from infra.>=20 > >> >> - Travis works fine most of the time. This might be unnecessary = work.>=20 > >> >>>=20 > >> >> What do you think? Is this feasible, would this be useful?>=20 > >> >>>=20 > >> >> Ahmet>=20 > >>>=20 > >>=20 >=20= --Apple-Mail=_2DE58989-A47A-4D0E-A64A-4A02E4CAD359 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Hi everyone,

Austin = Benett I would like cooperate with you with introducing GitHub actions = for python wheels.

Since last week I am trying to figure = out how to do this and I was able to build wheels for Linux and MacOS = with help of https://github.com/joerick/cibuildwheel/.

I=E2=80=99ve created = draft PR to apache/beam: https://github.com/apache/beam/pull/11877 and you = can check GitHub actions logs on fork PR here:

I am struggling with = building wheels for Windows due to the error:
Cannot open include file: 'unistd.h': No such file or = directory
caused by file = sdks/python/apache_beam/runners/worker/statesampler_fast.pyx
Adding this file to be excluded by cythonize method in = setup.py allowed build to be completed however I don=E2=80=99t think it = is a solution.

What do you think about = it?

Tobiasz



On = 2020/05/30 20:53:51, Austin Bennett <w...@gmail.com> wrote:
> There seems to = be support here for this idea.  After digging through> =
> things, I *think* I understand the moving pieces and = can address (reason I>
> was digging through the = code, including beam-wheels repo [1]).  Though, not>
> 100% that I have not overlooked bits.>
>
> Would be happy to pickup>
> https://issues.apache.org/jira/browse/BEAM-9388 = (imagine>
> would get to it over the course of a = month or few -- so also wouldn't want>
> to take it = on if others would be looking to do it sooner) -- seems>
> worthwhile to reduce manual steps for the release = process, as well as the>
> additional implications = (daily builds) if can easily manage.  I have some>
> experience with GitHub Actions, but not with our (BEAM) = deployment/release>
> process, nor much with = building wheels.  I = assume there are sufficient docs>
> available to go = through for the mechanics of the latter.  If picking up>
> this issue, I suspect may need to bother some of those = that have done>
> recent releases -- that would = best occur on the jira ticket, once at that>
> = point?>
>
> @Ismail <ie...@gmail.com>-- given your = experience with GitHub actions,>
> any reason to = think GitHub Actions not appropriate/ready for this specific>
> task?>
>
> @Ahmet = Altay <al...@google.com> happy to understand the extent of what = you>
> had in mind, maybe the extensions are not as = important to plan out, as>
> they're = straightforwardly bolted on (ex: daily builds).  More tactically>
> would be valuable to ensure I understand what all needs = to occur.  Any>
> other source of info to consume other than>
> https://github.com/apache/beam-wheels and>
> https://beam.apache.org/contribute/release-guide/.> =
>
> Also, open to the thought that = this might be taking on too much, without>
> more = experience with the release process and such.  Do advise...?>
>
>
> [1]>
> https://lists.apache.org/thread.html/r93884eb080297647207f7d2b8= a393e224029fc2c3509017886e84051%40%3Cdev.beam.apache.org%3E>
>
>
>
> ---------- Forwarded message --------->
> From: Isma=C3=ABl Mej=C3=ADa <ie...@gmail.com>>
> Date: Wed, Feb 26, 2020 at 12:09 PM>
> Subject: Re: [DISCUSSION] Use github actions for python = wheels ?>
> To: dev <de...@beam.apache.org>> =
>
>
> +1 I have = been migrating multiple projects into github actions recently and> =
> even if for some tasks it is not as mature and = polished as travis it has>
> proven to be way more = reliable.>
>
>
> = On Wed, Feb 26, 2020 at 7:07 PM Ahmet Altay <al...@google.com> wrote:>
>
> > I created https://issues.apache.org/jira/browse/BEAM-9388 to = explore>
> > this. To be explicit and not to do = cookie licking, I would not be able to>
> > work = on this at the moment. If anyone is interested please take it.>
> > Otherwise I will try to come back and explore this = when I can.>
> >>
> > On = Tue, Feb 25, 2020 at 2:57 PM Robert Bradshaw <ro...@google.com>>
> > wrote:>
> >>
> >> I'd be in favor of this, assuming it actually = simplifies things.>
> >>
> = >>
> > This is also my concern. I do think = that it will simplify things, but I am>
> > not = certain as I am not very familiar with the github actions.>
> >>
> >>
> = >> (Note>
> >> that the wheels are for = several variants of linux, presumably we could>
> = >> do cross-compiles. Also, manylinux is a "minimal" linux = specifically>
> >> built as to produce shared = object libraries compatible with a wide>
> >> = variety of distributions--we can't just assume that a shared object> =
> >> library built on one modern linux will just = work on another. (But>
> >> maybe it's = sufficient to do this within a docker environment?)>
> >>>
> >>
> > There will be no change in this area. Both in Both = Travis and github>
> > actions offer a = comparable set of options.>
> >>
> >>
> >>>
> >> On Tue, Feb 25, 2020 at 2:23 PM Kenneth Knowles = <ke...@apache.org> = wrote:>
> >> >>
> = >> > +1 to exploring this.>
> >> = >>
> >> > On builds@apache.org there = is lots of discussion and general approval>
> = >> for trying it. It is enabled and used by some projects. Calcite = uses it to>
> >> build their website, for = example.>
> >>>
> = >>
> > Great.>
> = >>
> >>
> >> = >>
> >> > Kenn>
> = >> >>
> >> >>
> >> > On Tue, Feb 25, 2020 at 2:08 PM Ahmet = Altay <al...@google.com> wrote:>
> >> = >>>
> >> >> Hi all,>
> >> >>>
> >> = >> I recently had a chance to look at the documentation for = github>
> >> actions. I think we could use = github actions instead of travis to for>
> >> = building python wheels during releases. This will have the following> =
> >> advantages:>
> = >> >>>
> >> >> - We will = eliminate one repo. (If you don't know, we have>
> = >> https://github.com/apache/beam-wheels for the sole = purpose of building>
> >> wheels file.)> =
> >> >> - Workflow will be stored in the = same repo. This will prevent bit rot>
> >> = that is only discovered at release times. (happened a few times, = although>
> >> usually easy to fix.)>
> >> >> - github actions supports ubuntu, mac, = windows environments. We could>
> >> try to = build wheels for windows as well. (Travis also supports the same>
> >> environments but we only use linux and mac = environments. Maybe there are>
> >> other = blockers for building wheels for Windows.)>
> = >> >> - We could do more, like daily python builds.>
> >> >>>
> >> = >> Downsides would be:>
> >> >> - = I do not know if github actions will require some special set of>
> >> permissions that require an approval from = infra.>
> >> >> - Travis works fine = most of the time. This might be unnecessary work.>
> = >> >>>
> >> >> What do you = think? Is this feasible, would this be useful?>
> = >> >>>
> >> >> Ahmet> =
> >>>
> >>
> 
= --Apple-Mail=_2DE58989-A47A-4D0E-A64A-4A02E4CAD359--