Avoid rebuilding duplicate universal wheels for every CI shard #7258
We currently build 19 Pants wheels for every Travis build wheels shard, as enumerated in
Currently, while we only need to build those 18 pure Python wheels, we always build all 36 wheels (OSX wheels and Linux Wheels). With #7235, we will build 72 wheels, which is 54 more than we need. Once we add Python 3 wheels, we will be building 108 wheels, which is 90 more than we need.
Building these wheels multiple times presents a time and a monetary cost. We waste time in Travis rebuilding something we don't need. We waste money through S3 transfer costs (storage costs are not an issue because of duplicate file names meaning we don't store more than one copy of the file).
Note this also extends to 3rd party wheels, which we build in order to release a Pex. Some of them are platform and/or ABI specific, such as
Potential solution - flag to
Yes, good point @stuhood that the scope becomes smaller once we drop Py2.
We will still have some duplication, though. 18 of our wheels are not platform specific. Even though we thus only need one copy of those wheels, so long as we have the Linux and OSX shards, we will continue to build duplicate wheels for them.