|
60 | 60 | sys.argv.pop(project_name_idx) |
61 | 61 |
|
62 | 62 |
|
63 | | -# All versions of TF need these packages. We use the `~=` syntax to pin packages |
64 | | -# to the latest major.minor release accepting all other patches on top of that. |
65 | | -# If we already know of a patched version, we pin to that. |
| 63 | +# All versions of TF need these packages. We indicate the widest possible range |
| 64 | +# of package releases possible to be as up-to-date as possible as well as to |
| 65 | +# accomodate as many pre-installed packages as possible. |
66 | 66 | # For packages that don't have yet a stable release, we pin using `~= 0.x` which |
67 | 67 | # means we accept any `0.y` version (y >= x) but not the first major release. We |
68 | 68 | # will need additional testing for that. |
|
74 | 74 | # NOTE: As numpy has releases that break semver guarantees and several other |
75 | 75 | # deps depend on numpy without an upper bound, we must install numpy before |
76 | 76 | # everything else. |
77 | | - 'numpy ~= 1.19.2', |
| 77 | + 'numpy >= 1.14.5', # keras 2.6 needs 1.19.2, h5py needs 1.14.5 for py37 |
78 | 78 | # Install other dependencies |
79 | | - 'absl-py ~= 0.10', |
80 | | - 'astunparse ~= 1.6.3', |
81 | | - 'libclang ~= 11.1.0', |
82 | | - 'flatbuffers ~= 2.0', |
83 | | - 'google_pasta ~= 0.2', |
84 | | - 'h5py ~= 3.1.0', |
85 | | - 'keras_preprocessing ~= 1.1.2', |
86 | | - 'opt_einsum ~= 3.3.0', |
| 79 | + 'absl-py >= 0.4.0', |
| 80 | + 'astunparse >= 1.6.0', |
| 81 | + 'libclang >= 9.0.1', |
| 82 | + 'flatbuffers >= 1.12, < 3.0', # capped as jax 0.1.71 needs < 3.0 |
| 83 | + 'google_pasta >= 0.1.1', |
| 84 | + 'h5py >= 2.9.0', # capped since 3.3.0 lacks py3.6 |
| 85 | + 'keras_preprocessing >= 1.1.1', # 1.1.0 needs tensorflow==1.7 |
| 86 | + 'opt_einsum >= 2.3.2', # sphinx pin not removed up til 3.3.0 release |
87 | 87 | 'protobuf >= 3.9.2', |
88 | | - 'six ~= 1.15.0', |
89 | | - 'termcolor ~= 1.1.0', |
90 | | - 'typing_extensions ~= 3.7.4', |
91 | | - 'wheel ~= 0.35', |
92 | | - 'wrapt ~= 1.12.1', |
| 88 | + 'six >= 1.12.0', |
| 89 | + 'termcolor >= 1.1.0', |
| 90 | + 'typing_extensions >= 3.6.6', |
| 91 | + 'wheel >= 0.32.0, < 1.0', # capped as astunparse 1.6.0-1.6.3 requires < 1.0 |
| 92 | + 'wrapt >= 1.11.0', |
93 | 93 | # These packages need to be pinned exactly as newer versions are |
94 | 94 | # incompatible with the rest of the ecosystem |
95 | | - 'gast == 0.4.0', |
| 95 | + 'gast >= 0.2.1, < 0.5.0', # TODO(lpak): if this breaks, revert to 0.4.0 |
96 | 96 | # TensorFlow ecosystem packages that TF exposes API for |
97 | 97 | # These need to be in sync with the existing TF version |
98 | 98 | # They are updated during the release process |
|
123 | 123 | # BoringSSL support. |
124 | 124 | # See https://github.com/tensorflow/tensorflow/issues/17882. |
125 | 125 | if sys.byteorder == 'little': |
126 | | - REQUIRED_PACKAGES.append('grpcio >= 1.37.0, < 2.0') |
| 126 | + REQUIRED_PACKAGES.append('grpcio >= 1.24.3, < 2.0') |
127 | 127 |
|
128 | 128 |
|
129 | 129 | # Packages which are only needed for testing code. |
130 | 130 | # Please don't add test-only packages to `REQUIRED_PACKAGES`! |
131 | 131 | # Follows the same conventions as `REQUIRED_PACKAGES` |
132 | 132 | TEST_PACKAGES = [ |
133 | | - 'portpicker ~= 1.3.1', |
134 | | - 'scipy ~= 1.5.2', |
135 | | - 'tblib ~= 1.7.0', |
136 | | - 'dill ~= 0.3.2', |
| 133 | + 'portpicker >= 1.3.1', |
| 134 | + 'scipy ~= 1.5.2, < 1.7', # NOTE: capped due to py3.6 and opt-einsum requires |
| 135 | + # sphinx==1.2.3 but scipy 1.7.1 requires sphinx >= 2.4.0, <3.1.0 |
| 136 | + 'tblib >= 1.4.0', |
| 137 | + 'dill >= 0.2.9', |
137 | 138 | ] |
138 | 139 |
|
139 | 140 |
|
|
0 commit comments