Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1070)

Issue 479583002: Fix virtualenv activation on Windows. (Closed)

Created:
6 years, 4 months ago by anatoly techtonik
Modified:
6 years, 4 months ago
Reviewers:
iannucci
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/infra/infra.git@master
Project:
infra
Visibility:
Public.

Description

Patch Set 1 #

Total comments: 2

Patch Set 2 : Address review comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+2 lines, -1 line) Patch
M bootstrap/bootstrap.py View 1 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 13 (0 generated)
anatoly techtonik
6 years, 4 months ago (2014-08-15 16:18:55 UTC) #1
iannucci
I suspect there will also be some issues running build_deps.py. I was meaning to use ...
6 years, 4 months ago (2014-08-15 17:38:40 UTC) #2
anatoly techtonik
There is an issue with wheels. I filled an issue at https://code.google.com/p/chromium/issues/detail?id=404159 I am still ...
6 years, 4 months ago (2014-08-15 19:36:05 UTC) #3
anatoly techtonik
https://codereview.chromium.org/479583002/diff/1/bootstrap/bootstrap.py File bootstrap/bootstrap.py (right): https://codereview.chromium.org/479583002/diff/1/bootstrap/bootstrap.py#newcode151 bootstrap/bootstrap.py:151: activate_this = os.path.join(env, 'Scripts', 'activate_this.py') On 2014/08/15 17:38:40, iannucci ...
6 years, 4 months ago (2014-08-15 19:36:11 UTC) #4
iannucci
On 2014/08/15 19:36:05, anatoly techtonik wrote: > There is an issue with wheels. I filled ...
6 years, 4 months ago (2014-08-15 19:43:22 UTC) #5
iannucci
The CQ bit was checked by iannucci@chromium.org
6 years, 4 months ago (2014-08-15 19:43:35 UTC) #6
iannucci
lgtm
6 years, 4 months ago (2014-08-15 19:43:36 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/techtonik@gmail.com/479583002/20001
6 years, 4 months ago (2014-08-15 19:44:47 UTC) #8
commit-bot: I haz the power
Committed patchset #2 (20001) as 6fce83cc5f6f05af22eb972141b08c64005b8023
6 years, 4 months ago (2014-08-15 19:45:15 UTC) #9
anatoly techtonik
On Fri, Aug 15, 2014 at 10:43 PM, <iannucci@chromium.org> wrote: > > So, we want ...
6 years, 4 months ago (2014-08-16 05:23:31 UTC) #10
iannucci
On 2014/08/16 05:23:31, anatoly techtonik wrote: > On Fri, Aug 15, 2014 at 10:43 PM, ...
6 years, 4 months ago (2014-08-16 06:33:00 UTC) #11
anatoly techtonik
On Sat, Aug 16, 2014 at 9:33 AM, <iannucci@chromium.org> wrote: > > Hm... I'm not ...
6 years, 4 months ago (2014-08-16 06:42:20 UTC) #12
iannucci
6 years, 4 months ago (2014-08-16 07:47:35 UTC) #13
Message was sent while issue was closed.
On 2014/08/16 06:42:20, anatoly techtonik wrote:
> On Sat, Aug 16, 2014 at 9:33 AM,  <mailto:iannucci@chromium.org> wrote:
> >
> > Hm... I'm not sure I understand what you mean. The binaries (built wheel
> > files)
> > in question are derived from fixed sources (by commit hash), but are
> > differentiated by platform.
> 
> Do you mean you host sources for `coverage`? Or that you get `coverage`
> from its repository to build?

Yes, we have mirrors of coverage (as well as all other python dependencies for
infra), which we know will be reliable/available/correct.

> 
> > We did this in order to have control over the
> > source
> > that's being used to produce the wheel files, as well as control over the
> > actual
> > wheel files themselves. It's especially important that we build the wheels
> > ourselves because the pip build process is not deterministic (e.g. an input
> > hash
> > of XXX and the same configuration choices will yield multiple wheel files).
> 
> Is it because C compiler inserts timestamps into binaries? In that case, is it
> possible to normalize these?

Yes, and also the timestamps in the zipfile format, __FILE__ macros in C source
code, etc. etc.

> 
> > Especially in the case of linux and mac, there are no precompiled binaries
> > on PyPI.
> 
> But if there are binaries, why not to use them?

Because we can't reproduce them (see above), we can't verify them, which means
we don't really know what's in them.

If it were possible to deterministically know `sha1_for_wheel(source_sha,
platform) == XYZ`, then we could verify that once, offline, and then trust e.g.
the binaries hosted on PyPI (or anywhere else). But since we have no way to
reproduce the build hosted there, we prefer to build them ourselves.

Additionally, we are hosting the wheels on google storage, which we know to be a
reliable host for static files worldwide, and we can rely on it for our
infrastructure. Relying on PyPI being up and available isn't an option for our
infrastructure.

That said, there's no reason you shouldn't be able to provide your own wheels,
if you like. I haven't implemented the functionality, but it would make sense to
me for build_deps to have a local mode where it would build the pinned versions
using e.g. your compiler.

> 
> To unsubscribe from this group and stop receiving emails from it, send an
email
> to mailto:chromium-reviews+unsubscribe@chromium.org.

Powered by Google App Engine
This is Rietveld 408576698