-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test: Restrict tf dependency protobuf to ABI compatible releases #1869
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1869 +/- ##
=======================================
Coverage 98.17% 98.17%
=======================================
Files 68 68
Lines 4322 4322
Branches 726 726
=======================================
Hits 4243 4243
Misses 46 46
Partials 33 33
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report at Codecov.
|
I think(?) it is okay to add this restriction to the constraints file over bumping the oldest supported Lines 5 to 8 in 0409ab5
to be Though this is where I'm also not sure if I'm trying to be too restrictive to users though, given @tacaswell's good advice RE: PR #1378 that we recorded in PR #1382 (and here again):
Thoughts @kratsg @lukasheinrich @henryiii? |
Practicality beats purity ;) |
* protobuf v3.20.1 is the last release to support ABI compatibility with tensorflow pre tensorflow 2.9.1. The next release of protobuf, v4.21.0, breaks ABI compatibility and so requires an upper bound in of protobuf v3.20.1 for older tensorflow releases to not break. tensorflow released a series of patch releases in response to protobuf v4.21.0: v2.6.5, v2.7.3, v2.8.2, v2.9.1. - c.f. https://github.com/tensorflow/tensorflow/ Issue 56077
a6ada2a
to
72b1605
Compare
Motivated by discussion here and on the IRIS-HEP Slack, this PR is now updating the lower bound on Line 7 in 0409ab5
is still compatible with Maintenance bonus: |
As there has been further discussion, for the time being to just get nightly CI passing I'm going back to the |
* Update lower bound on tensorflow to v2.6.5 as it is the "oldest" SemVer release that is not broken on install by protobuf v4.21.0 ABI incompatibility. - c.f. tensorflow/tensorflow#56077 - Amend PR #1869 * Update tests/constraints.txt to use tensorflow==2.6.5.
Description
protobuf
v3.20.1
is the last release to support ABI compatibility withtensorflow
pretensorflow
v2.9.1
. The next release ofprotobuf
,v4.21.0
(released 2022-05-25), breaks ABI compatibility and so requires an upper bound ofprotobuf
v3.20.1
for oldertensorflow
releases to not break.tensorflow
released a series of patch releases in response toprotobuf
v4.21.0
:v2.6.5
,v2.7.3
,v2.8.2
,v2.9.1
. As the oldesttensorflow
thatpyhf
supports API compatibility with istensorflow
v2.3.1
add an upper bound ofprotobuf<=3.20.1
toci/constraints.txt
update the lower bound to.tensorflow>=2.6.5
c.f. tensorflow/tensorflow#56077
edit: Motivated by discussions below, this PR is now updating the lower bound ontensorflow
tov2.6.5+
. This is motivated primarily by the fact that this is significantly easier to maintain as a standard user is going to prefer a release of TensorFlow that works "out of the box" and doesn't require additional modification of the dependencies. The "oldest" (in the SemVer sense, not CalVer sense) release of TensorFlow that are not broken at install now isv2.6.5
, so this will be the new lower bound. Aspyhf/setup.py
Line 7 in 0409ab5
is still compatible withtensorflow
v2.6.5.
this seems pretty uncontroversial in terms of an API jump.Checklist Before Requesting Reviewer
Before Merging
For the PR Assignees: