Skip to content

Commit 9e94ddb

Browse files
committed
build: use .in from .in
We build the .pip files on Mac. Some transitive dependencies are different on other OS's, and so would fail there, like this: ``` ERROR: In --require-hashes mode, all requirements must have their versions pinned with ==. These do not: SecretStorage>=3.2 from https://files.pythonhosted.org/packages/54/24/b4293291fa1dd830f353d2cb163295742fa87f179fcc8a20a306a81978b7/SecretStorage-3.3.3-py3-none-any.whl#sha256=f356e6628222568e3af06f2eba8df495efa13b3b63081dafd4f7d9a7b7bc9f99 (from keyring==23.13.1->-r requirements/dev.pip (line 279)) ``` By keeping the .in files self-contained, we provide a way to install without hashes.
1 parent 9620278 commit 9e94ddb

File tree

6 files changed

+58
-136
lines changed

6 files changed

+58
-136
lines changed

doc/contributing.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,11 @@ these steps:
5050

5151
$ python3 -m pip install -r requirements/dev.pip
5252

53+
If this fails due to incorrect or missing hashes, use
54+
``dev.in`` instead::
55+
56+
$ python3 -m pip install -r requirements/dev.in
57+
5358
#. Install a number of versions of Python. Coverage.py supports a range
5459
of Python versions. The more you can test with, the more easily your code
5560
can be used as-is. If you only have one version, that's OK too, but may

requirements/dev.in

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
# "make upgrade" turns this into requirements/dev.pip.
66

77
-c pins.pip
8-
-r pip.pip
8+
-r pip.in
99

1010
# PyPI requirements for running tests.
11-
-r tox.pip
12-
-r pytest.pip
11+
-r tox.in
12+
-r pytest.in
1313

1414
# for linting.
1515
check-manifest

requirements/dev.pip

Lines changed: 19 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ attrs==22.2.0 \
1212
--hash=sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836 \
1313
--hash=sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99
1414
# via
15-
# -r requirements/pytest.pip
1615
# hypothesis
1716
# pytest
1817
bleach==6.0.0 \
@@ -26,19 +25,15 @@ build==0.10.0 \
2625
cachetools==5.3.0 \
2726
--hash=sha256:13dfddc7b8df938c21a940dfa6557ce6e94a2f1cdfa58eb90c805721d58f2c14 \
2827
--hash=sha256:429e1a1e845c008ea6c85aa35d4b98b65d6a9763eeef3e37e92728a12d1de9d4
29-
# via
30-
# -r requirements/tox.pip
31-
# tox
28+
# via tox
3229
certifi==2022.12.7 \
3330
--hash=sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3 \
3431
--hash=sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18
3532
# via requests
3633
chardet==5.1.0 \
3734
--hash=sha256:0d62712b956bc154f85fb0a266e2a3c5913c2967e00348701b32411d6def31e5 \
3835
--hash=sha256:362777fb014af596ad31334fde1e8c327dfdb076e1960d1694662d46a6917ab9
39-
# via
40-
# -r requirements/tox.pip
41-
# tox
36+
# via tox
4237
charset-normalizer==3.1.0 \
4338
--hash=sha256:04afa6387e2b282cf78ff3dbce20f0cc071c12dc8f685bd40960cc68644cfea6 \
4439
--hash=sha256:04eefcee095f58eaabe6dc3cc2262f3bcd776d2c67005880894f447b3f2cb9c1 \
@@ -128,8 +123,8 @@ colorama==0.4.6 \
128123
--hash=sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44 \
129124
--hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6
130125
# via
131-
# -r requirements/pytest.pip
132-
# -r requirements/tox.pip
126+
# -r requirements/pytest.in
127+
# -r requirements/tox.in
133128
# tox
134129
dill==0.3.6 \
135130
--hash=sha256:a07ffd2351b8c678dfc4a856a3005f8067aea51d6ba6c700796a4d9e280f39f0 \
@@ -138,10 +133,7 @@ dill==0.3.6 \
138133
distlib==0.3.6 \
139134
--hash=sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46 \
140135
--hash=sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e
141-
# via
142-
# -r requirements/pip.pip
143-
# -r requirements/tox.pip
144-
# virtualenv
136+
# via virtualenv
145137
docutils==0.19 \
146138
--hash=sha256:33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6 \
147139
--hash=sha256:5e1de4d849fee02c63b040a4a3fd567f4ab104defd8a5511fbbc24a8a017efbc
@@ -150,27 +142,22 @@ exceptiongroup==1.1.1 \
150142
--hash=sha256:232c37c63e4f682982c8b6459f33a8981039e5fb8756b2074364e5055c498c9e \
151143
--hash=sha256:d484c3090ba2889ae2928419117447a14daf3c1231d5e30d0aae34f354f01785
152144
# via
153-
# -r requirements/pytest.pip
154145
# hypothesis
155146
# pytest
156147
execnet==1.9.0 \
157148
--hash=sha256:8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5 \
158149
--hash=sha256:a295f7cc774947aac58dde7fdc85f4aa00c42adf5d8f5468fc630c1acf30a142
159-
# via
160-
# -r requirements/pytest.pip
161-
# pytest-xdist
150+
# via pytest-xdist
162151
filelock==3.9.0 \
163152
--hash=sha256:7b319f24340b51f55a2bf7a12ac0755a9b03e718311dac567a0f4f7fabd2f5de \
164153
--hash=sha256:f58d535af89bb9ad5cd4df046f741f8553a418c01a7856bf0d173bbc9f6bd16d
165154
# via
166-
# -r requirements/pip.pip
167-
# -r requirements/tox.pip
168155
# tox
169156
# virtualenv
170157
flaky==3.7.0 \
171158
--hash=sha256:3ad100780721a1911f57a165809b7ea265a7863305acb66708220820caf8aa0d \
172159
--hash=sha256:d6eda73cab5ae7364504b7c44670f70abed9e75f77dd116352f662817592ec9c
173-
# via -r requirements/pytest.pip
160+
# via -r requirements/pytest.in
174161
greenlet==2.0.2 \
175162
--hash=sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a \
176163
--hash=sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a \
@@ -236,7 +223,7 @@ greenlet==2.0.2 \
236223
hypothesis==6.68.2 \
237224
--hash=sha256:2a41cc766cde52705895e54547374af89c617e8ec7bc4186cb7f03884a667d4e \
238225
--hash=sha256:a7eb2b0c9a18560d8197fe35047ceb58e7e8ab7623a3e5a82613f6a2cd71cffa
239-
# via -r requirements/pytest.pip
226+
# via -r requirements/pytest.in
240227
idna==3.4 \
241228
--hash=sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4 \
242229
--hash=sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2
@@ -245,8 +232,6 @@ importlib-metadata==6.0.0 \
245232
--hash=sha256:7efb448ec9a5e313a57655d35aa54cd3e01b7e1fbcf72dce1bf06119420f5bad \
246233
--hash=sha256:e354bedeb60efa6affdcc8ae121b73544a7aa74156d047311948f6d711cd378d
247234
# via
248-
# -r requirements/pip.pip
249-
# -r requirements/pytest.pip
250235
# build
251236
# keyring
252237
# pluggy
@@ -261,9 +246,7 @@ importlib-resources==5.12.0 \
261246
iniconfig==2.0.0 \
262247
--hash=sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3 \
263248
--hash=sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374
264-
# via
265-
# -r requirements/pytest.pip
266-
# pytest
249+
# via pytest
267250
isort==5.11.5 \
268251
--hash=sha256:6be1f76a507cb2ecf16c7cf14a37e41609ca082330be4e3436a18ef74add55db \
269252
--hash=sha256:ba1d72fb2595a01c7895a5128f9585a5cc4b6d395f1c8d514989b9a7eb2a8746
@@ -345,8 +328,6 @@ packaging==23.0 \
345328
--hash=sha256:714ac14496c3e68c99c29b00845f7a2b85f3bb6f1078fd9f72fd20f0570002b2 \
346329
--hash=sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97
347330
# via
348-
# -r requirements/pytest.pip
349-
# -r requirements/tox.pip
350331
# build
351332
# pudb
352333
# pyproject-api
@@ -364,17 +345,13 @@ platformdirs==3.1.1 \
364345
--hash=sha256:024996549ee88ec1a9aa99ff7f8fc819bb59e2c3477b410d90a16d32d6e707aa \
365346
--hash=sha256:e5986afb596e4bb5bde29a79ac9061aa955b94fca2399b7aaac4090860920dd8
366347
# via
367-
# -r requirements/pip.pip
368-
# -r requirements/tox.pip
369348
# pylint
370349
# tox
371350
# virtualenv
372351
pluggy==1.0.0 \
373352
--hash=sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159 \
374353
--hash=sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3
375354
# via
376-
# -r requirements/pytest.pip
377-
# -r requirements/tox.pip
378355
# pytest
379356
# tox
380357
pudb==2022.1.3 \
@@ -394,9 +371,7 @@ pylint==2.17.0 \
394371
pyproject-api==1.5.1 \
395372
--hash=sha256:435f46547a9ff22cf4208ee274fca3e2869aeb062a4834adfc99a4dd64af3cf9 \
396373
--hash=sha256:4698a3777c2e0f6b624f8a4599131e2a25376d90fe8d146d7ac74c67c6f97c43
397-
# via
398-
# -r requirements/tox.pip
399-
# tox
374+
# via tox
400375
pyproject-hooks==1.0.0 \
401376
--hash=sha256:283c11acd6b928d2f6a7c73fa0d01cb2bdc5f07c57a2eeb6e83d5e56b97976f8 \
402377
--hash=sha256:f271b298b97f5955d53fb12b72c1fb1948c22c1a6b70b315c54cedaca0264ef5
@@ -405,12 +380,12 @@ pytest==7.2.2 \
405380
--hash=sha256:130328f552dcfac0b1cec75c12e3f005619dc5f874f0a06e8ff7263f0ee6225e \
406381
--hash=sha256:c99ab0c73aceb050f68929bc93af19ab6db0558791c6a0715723abe9d0ade9d4
407382
# via
408-
# -r requirements/pytest.pip
383+
# -r requirements/pytest.in
409384
# pytest-xdist
410385
pytest-xdist==3.2.1 \
411386
--hash=sha256:1849bd98d8b242b948e472db7478e090bf3361912a8fed87992ed94085f54727 \
412387
--hash=sha256:37290d161638a20b672401deef1cba812d110ac27e35d213f091d15b8beb40c9
413-
# via -r requirements/pytest.pip
388+
# via -r requirements/pytest.in
414389
readme-renderer==37.3 \
415390
--hash=sha256:cd653186dfc73055656f090f227f5cb22a046d7f71a841dfa305f55c9a513273 \
416391
--hash=sha256:f67a16caedfa71eef48a31b39708637a6f4664c4394801a7b0d6432d13907343
@@ -443,15 +418,11 @@ six==1.16.0 \
443418
sortedcontainers==2.4.0 \
444419
--hash=sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88 \
445420
--hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0
446-
# via
447-
# -r requirements/pytest.pip
448-
# hypothesis
421+
# via hypothesis
449422
tomli==2.0.1 \
450423
--hash=sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc \
451424
--hash=sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f
452425
# via
453-
# -r requirements/pytest.pip
454-
# -r requirements/tox.pip
455426
# build
456427
# check-manifest
457428
# pylint
@@ -467,12 +438,12 @@ tox==4.4.7 \
467438
--hash=sha256:52c92a96e2c3fd47c5301e9c26f5a871466133d5376958c1ed95ef4ff4629cbe \
468439
--hash=sha256:da10ca1d809b99fae80b706b9dc9656b1daf505a395ac427d130a8a85502d08f
469440
# via
470-
# -r requirements/tox.pip
441+
# -r requirements/tox.in
471442
# tox-gh
472443
tox-gh==1.0.0 \
473444
--hash=sha256:9cfbaa927946887d53bc19ae86621f4e5dc8516f3771ba4e74daeb1a1775efcd \
474445
--hash=sha256:bda94ac15dbb62ef1e517672c05f8039faad5afaf9d1b4c9fa32d07f18027571
475-
# via -r requirements/tox.pip
446+
# via -r requirements/tox.in
476447
twine==4.0.2 \
477448
--hash=sha256:929bc3c280033347a00f847236564d1c52a3e61b1ac2516c97c48f3ceab756d8 \
478449
--hash=sha256:9e102ef5fdd5a20661eb88fad46338806c3bd32cf1db729603fe3697b1bc83c8
@@ -507,8 +478,6 @@ typing-extensions==4.5.0 \
507478
--hash=sha256:5cb5f4a79139d699607b3ef622a1dedafa84e115ab0024e0d9c044a9479ca7cb \
508479
--hash=sha256:fb33085c39dd998ac16d1431ebc293a8b3eedd00fd4a32de0ff79002c19511b4
509480
# via
510-
# -r requirements/pip.pip
511-
# -r requirements/pytest.pip
512481
# astroid
513482
# importlib-metadata
514483
# markdown-it-py
@@ -534,8 +503,7 @@ virtualenv==20.21.0 \
534503
--hash=sha256:31712f8f2a17bd06234fa97fdf19609e789dd4e3e4bf108c3da71d710651adbc \
535504
--hash=sha256:f50e3e60f990a0757c9b68333c9fdaa72d7188caa417f96af9e52407831a3b68
536505
# via
537-
# -r requirements/pip.pip
538-
# -r requirements/tox.pip
506+
# -r requirements/pip.in
539507
# tox
540508
webencodings==0.5.1 \
541509
--hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 \
@@ -622,19 +590,18 @@ zipp==3.15.0 \
622590
--hash=sha256:112929ad649da941c23de50f356a2b5570c954b65150642bccdd66bf194d224b \
623591
--hash=sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556
624592
# via
625-
# -r requirements/pip.pip
626-
# -r requirements/pytest.pip
627593
# importlib-metadata
628594
# importlib-resources
629595

630596
# The following packages are considered to be unsafe in a requirements file:
631597
pip==23.0.1 \
632598
--hash=sha256:236bcb61156d76c4b8a05821b988c7b8c35bf0da28a4b614e8d6ab5212c25c6f \
633599
--hash=sha256:cd015ea1bfb0fcef59d8a286c1f8bebcb983f6317719d415dc5351efb7cd7024
634-
# via -r requirements/pip.pip
600+
# via -r requirements/pip.in
635601
setuptools==65.7.0 \
636602
--hash=sha256:4d3c92fac8f1118bb77a22181355e29c239cabfe2b9effdaa665c66b711136d7 \
637603
--hash=sha256:8ab4f1dbf2b4a65f7eec5ad0c620e84c34111a68d3349833494b9088212214dd
638604
# via
639-
# -r requirements/pip.pip
605+
# -c requirements/pins.pip
606+
# -r requirements/pip.in
640607
# check-manifest

0 commit comments

Comments
 (0)