pex 2.62.1__py2.py3-none-any.whl → 2.63.0__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pex might be problematic. Click here for more details.

Files changed (40) hide show
  1. pex/cli/commands/venv.py +80 -15
  2. pex/docs/html/_pagefind/fragment/en_66c5113.pf_fragment +0 -0
  3. pex/docs/html/_pagefind/fragment/en_6c6ecbd.pf_fragment +0 -0
  4. pex/docs/html/_pagefind/fragment/en_6c77f9b.pf_fragment +0 -0
  5. pex/docs/html/_pagefind/fragment/en_71b5a8a.pf_fragment +0 -0
  6. pex/docs/html/_pagefind/fragment/en_8762fc9.pf_fragment +0 -0
  7. pex/docs/html/_pagefind/fragment/en_a55bc27.pf_fragment +0 -0
  8. pex/docs/html/_pagefind/fragment/en_c87eb0d.pf_fragment +0 -0
  9. pex/docs/html/_pagefind/fragment/en_f2578bc.pf_fragment +0 -0
  10. pex/docs/html/_pagefind/index/en_b6cc89e.pf_index +0 -0
  11. pex/docs/html/_pagefind/pagefind-entry.json +1 -1
  12. pex/docs/html/_pagefind/pagefind.en_5515c79d6d.pf_meta +0 -0
  13. pex/docs/html/_static/documentation_options.js +1 -1
  14. pex/docs/html/api/vars.html +5 -5
  15. pex/docs/html/buildingpex.html +5 -5
  16. pex/docs/html/genindex.html +5 -5
  17. pex/docs/html/index.html +5 -5
  18. pex/docs/html/recipes.html +5 -5
  19. pex/docs/html/scie.html +5 -5
  20. pex/docs/html/search.html +5 -5
  21. pex/docs/html/whatispex.html +5 -5
  22. pex/venv/installer.py +37 -14
  23. pex/version.py +1 -1
  24. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/METADATA +4 -4
  25. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/RECORD +30 -30
  26. pex/docs/html/_pagefind/fragment/en_1bbeb07.pf_fragment +0 -0
  27. pex/docs/html/_pagefind/fragment/en_1befd43.pf_fragment +0 -0
  28. pex/docs/html/_pagefind/fragment/en_45eea4b.pf_fragment +0 -0
  29. pex/docs/html/_pagefind/fragment/en_7822de6.pf_fragment +0 -0
  30. pex/docs/html/_pagefind/fragment/en_87f76ba.pf_fragment +0 -0
  31. pex/docs/html/_pagefind/fragment/en_a89f2ec.pf_fragment +0 -0
  32. pex/docs/html/_pagefind/fragment/en_c2a647e.pf_fragment +0 -0
  33. pex/docs/html/_pagefind/fragment/en_d2f2c1b.pf_fragment +0 -0
  34. pex/docs/html/_pagefind/index/en_31a0754.pf_index +0 -0
  35. pex/docs/html/_pagefind/pagefind.en_32e8257caf.pf_meta +0 -0
  36. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/WHEEL +0 -0
  37. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/entry_points.txt +0 -0
  38. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/licenses/LICENSE +0 -0
  39. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/pylock/pylock.toml +0 -0
  40. {pex-2.62.1.dist-info → pex-2.63.0.dist-info}/top_level.txt +0 -0
pex/cli/commands/venv.py CHANGED
@@ -12,10 +12,13 @@ from pex import dependency_configuration, pex_warnings
12
12
  from pex.cli.command import BuildTimeCommand
13
13
  from pex.commands.command import JsonMixin, OutputMixin
14
14
  from pex.common import CopyMode, open_zip, pluralize
15
- from pex.dist_metadata import Distribution
15
+ from pex.dependency_configuration import DependencyConfiguration
16
+ from pex.dist_metadata import Distribution, Requirement
16
17
  from pex.enum import Enum
17
18
  from pex.executables import is_python_script, is_script
18
19
  from pex.executor import Executor
20
+ from pex.fingerprinted_distribution import FingerprintedDistribution
21
+ from pex.orderedset import OrderedSet
19
22
  from pex.pex import PEX
20
23
  from pex.pex_info import PexInfo
21
24
  from pex.resolve import configured_resolve, requirement_options, resolver_options, target_options
@@ -23,6 +26,7 @@ from pex.resolve.resolver_configuration import (
23
26
  LockRepositoryConfiguration,
24
27
  PexRepositoryConfiguration,
25
28
  PipConfiguration,
29
+ PylockRepositoryConfiguration,
26
30
  )
27
31
  from pex.result import Error, Ok, Result, try_
28
32
  from pex.targets import LocalInterpreter, Target, Targets
@@ -35,7 +39,7 @@ from pex.venv.installer_configuration import InstallerConfiguration
35
39
  from pex.venv.virtualenv import Virtualenv
36
40
 
37
41
  if TYPE_CHECKING:
38
- from typing import Any, Dict, Iterable, Optional
42
+ from typing import Any, Dict, Iterable, Optional, Sequence
39
43
 
40
44
 
41
45
  logger = logging.getLogger(__name__)
@@ -302,6 +306,8 @@ class Venv(OutputMixin, JsonMixin, BuildTimeCommand):
302
306
  pex = PEX(resolver_configuration.pex_repository, interpreter=target.get_interpreter())
303
307
  elif isinstance(resolver_configuration, LockRepositoryConfiguration):
304
308
  lock = resolver_configuration.lock_file_path
309
+ elif isinstance(resolver_configuration, PylockRepositoryConfiguration):
310
+ lock = resolver_configuration.lock_file_path
305
311
 
306
312
  with TRACER.timed(
307
313
  "Installing {count} {wheels} in {subject} at {dest_dir}".format(
@@ -312,10 +318,6 @@ class Venv(OutputMixin, JsonMixin, BuildTimeCommand):
312
318
  )
313
319
  ):
314
320
  hermetic_scripts = not update and installer_configuration.hermetic_scripts
315
- distributions = tuple(
316
- resolved_distribution.distribution
317
- for resolved_distribution in resolved.distributions
318
- )
319
321
  provenance = (
320
322
  Provenance.create(venv=venv)
321
323
  if venv
@@ -326,27 +328,41 @@ class Venv(OutputMixin, JsonMixin, BuildTimeCommand):
326
328
  pex=pex,
327
329
  installer_configuration=installer_configuration,
328
330
  provenance=provenance,
329
- distributions=distributions,
331
+ distributions=tuple(
332
+ resolved_distribution.distribution
333
+ for resolved_distribution in resolved.distributions
334
+ ),
330
335
  dest_dir=dest_dir,
331
336
  hermetic_scripts=hermetic_scripts,
332
337
  venv=venv,
333
338
  )
334
339
  elif venv:
335
- installer.populate_venv_distributions(
340
+ _install_from_resolve(
336
341
  venv=venv,
337
- distributions=distributions,
338
342
  provenance=provenance,
339
- copy_mode=(
340
- CopyMode.COPY
341
- if installer_configuration.site_packages_copies
342
- else CopyMode.LINK
343
+ installer_configuration=installer_configuration,
344
+ dependency_config=dependency_config,
345
+ requirements=tuple(
346
+ OrderedSet(
347
+ itertools.chain.from_iterable(
348
+ resolved_distribution.direct_requirements
349
+ for resolved_distribution in resolved.distributions
350
+ )
351
+ )
352
+ ),
353
+ distributions=tuple(
354
+ resolved_distribution.fingerprinted_distribution
355
+ for resolved_distribution in resolved.distributions
343
356
  ),
344
357
  hermetic_scripts=hermetic_scripts,
345
358
  )
346
359
  else:
347
360
  installer.populate_flat_distributions(
348
361
  dest_dir=dest_dir,
349
- distributions=distributions,
362
+ distributions=tuple(
363
+ resolved_distribution.distribution
364
+ for resolved_distribution in resolved.distributions
365
+ ),
350
366
  provenance=provenance,
351
367
  copy_mode=(
352
368
  CopyMode.COPY
@@ -370,7 +386,10 @@ class Venv(OutputMixin, JsonMixin, BuildTimeCommand):
370
386
  try_(
371
387
  installer.ensure_pip_installed(
372
388
  venv,
373
- distributions=distributions,
389
+ distributions=tuple(
390
+ resolved_distribution.distribution
391
+ for resolved_distribution in resolved.distributions
392
+ ),
374
393
  scope=installer_configuration.scope,
375
394
  collisions_ok=installer_configuration.collisions_ok,
376
395
  source=source,
@@ -443,3 +462,49 @@ def _install_from_pex(
443
462
  )
444
463
  else:
445
464
  installer.populate_flat_sources(dst=dest_dir, pex=pex, provenance=provenance)
465
+
466
+
467
+ def _install_from_resolve(
468
+ venv, # type: Virtualenv
469
+ provenance, # type: Provenance
470
+ installer_configuration, # type: InstallerConfiguration
471
+ dependency_config, # type: DependencyConfiguration
472
+ requirements, # type: Sequence[Requirement]
473
+ distributions, # type: Sequence[FingerprintedDistribution]
474
+ hermetic_scripts, # type: bool
475
+ ):
476
+ # type: (...) -> None
477
+
478
+ activated_dists = tuple(dist.distribution for dist in distributions)
479
+ installer.populate_venv_distributions(
480
+ venv=venv,
481
+ distributions=activated_dists,
482
+ provenance=provenance,
483
+ copy_mode=(
484
+ CopyMode.COPY if installer_configuration.site_packages_copies else CopyMode.LINK
485
+ ),
486
+ hermetic_scripts=hermetic_scripts,
487
+ )
488
+
489
+ pex_info = PexInfo.default()
490
+ pex_info.includes_tools = False
491
+ pex_info.venv = True
492
+ pex_info.venv_copies = installer_configuration.copies
493
+ pex_info.venv_site_packages_copies = installer_configuration.site_packages_copies
494
+ pex_info.venv_system_site_packages = installer_configuration.system_site_packages
495
+ pex_info.venv_hermetic_scripts = installer_configuration.hermetic_scripts
496
+ dependency_config.configure(pex_info)
497
+ for requirement in requirements:
498
+ pex_info.add_requirement(requirement)
499
+ for distribution in distributions:
500
+ pex_info.add_distribution(os.path.basename(distribution.location), distribution.fingerprint)
501
+
502
+ installer.install_pex_main(
503
+ target_dir=provenance.target_dir,
504
+ venv=venv,
505
+ pex_info=pex_info,
506
+ activated_dists=activated_dists,
507
+ shebang=provenance.calculate_shebang(hermetic_scripts=hermetic_scripts),
508
+ venv_python=provenance.target_python,
509
+ bin_path=installer_configuration.bin_path,
510
+ )
@@ -1 +1 @@
1
- {"version":"1.3.0","languages":{"en":{"hash":"en_32e8257caf","wasm":"en","page_count":8}}}
1
+ {"version":"1.3.0","languages":{"en":{"hash":"en_5515c79d6d","wasm":"en","page_count":8}}}
@@ -1,5 +1,5 @@
1
1
  const DOCUMENTATION_OPTIONS = {
2
- VERSION: '2.62.1',
2
+ VERSION: '2.63.0',
3
3
  LANGUAGE: 'en',
4
4
  COLLAPSE_INDEX: false,
5
5
  BUILDER: 'html',
@@ -8,7 +8,7 @@
8
8
  <link rel="prefetch" href="../_static/pex-logo-dark.png" as="image">
9
9
 
10
10
  <link rel="shortcut icon" href="../_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 -->
11
- <title>PEX runtime environment variables - Pex Docs (v2.62.1)</title>
11
+ <title>PEX runtime environment variables - Pex Docs (v2.63.0)</title>
12
12
  <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=d111a655" />
13
13
  <link rel="stylesheet" type="text/css" href="../_static/styles/furo.css?v=580074bf" />
14
14
  <link rel="stylesheet" type="text/css" href="../_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -163,7 +163,7 @@
163
163
  </label>
164
164
  </div>
165
165
  <div class="header-center">
166
- <a href="../index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
166
+ <a href="../index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
167
167
  </div>
168
168
  <div class="header-right">
169
169
  <div class="theme-toggle-container theme-toggle-header">
@@ -643,12 +643,12 @@
643
643
  </div>
644
644
  <div class="right-details">
645
645
  <div class="icons">
646
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
646
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
647
647
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
648
648
  </path>
649
649
  </svg>
650
650
  </a>
651
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
651
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
652
652
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
653
653
  </path>
654
654
  </svg>
@@ -671,7 +671,7 @@
671
671
 
672
672
  </aside>
673
673
  </div>
674
- </div><script src="../_static/documentation_options.js?v=5c12aedb"></script>
674
+ </div><script src="../_static/documentation_options.js?v=89bf609b"></script>
675
675
  <script src="../_static/doctools.js?v=9bcbadda"></script>
676
676
  <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
677
677
  <script src="../_static/scripts/furo.js?v=46bd48cc"></script>
@@ -8,7 +8,7 @@
8
8
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
9
9
 
10
10
  <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 -->
11
- <title>Building .pex files - Pex Docs (v2.62.1)</title>
11
+ <title>Building .pex files - Pex Docs (v2.63.0)</title>
12
12
  <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
13
13
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
14
14
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -163,7 +163,7 @@
163
163
  </label>
164
164
  </div>
165
165
  <div class="header-center">
166
- <a href="index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
166
+ <a href="index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
167
167
  </div>
168
168
  <div class="header-right">
169
169
  <div class="theme-toggle-container theme-toggle-header">
@@ -681,12 +681,12 @@ scary like <code class="docutils literal notranslate"><span class="pre">sudo</sp
681
681
  </div>
682
682
  <div class="right-details">
683
683
  <div class="icons">
684
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
684
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
685
685
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
686
686
  </path>
687
687
  </svg>
688
688
  </a>
689
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
689
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
690
690
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
691
691
  </path>
692
692
  </svg>
@@ -709,7 +709,7 @@ scary like <code class="docutils literal notranslate"><span class="pre">sudo</sp
709
709
 
710
710
  </aside>
711
711
  </div>
712
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
712
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
713
713
  <script src="_static/doctools.js?v=9bcbadda"></script>
714
714
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
715
715
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
@@ -6,7 +6,7 @@
6
6
  <link rel="prefetch" href="_static/pex-logo-light.png" as="image">
7
7
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
8
8
 
9
- <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 --><title>Index - Pex Docs (v2.62.1)</title>
9
+ <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 --><title>Index - Pex Docs (v2.63.0)</title>
10
10
  <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
11
11
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
12
12
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -161,7 +161,7 @@
161
161
  </label>
162
162
  </div>
163
163
  <div class="header-center">
164
- <a href="index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
164
+ <a href="index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
165
165
  </div>
166
166
  <div class="header-right">
167
167
  <div class="theme-toggle-container theme-toggle-header">
@@ -260,12 +260,12 @@
260
260
  </div>
261
261
  <div class="right-details">
262
262
  <div class="icons">
263
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
263
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
264
264
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
265
265
  </path>
266
266
  </svg>
267
267
  </a>
268
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
268
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
269
269
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
270
270
  </path>
271
271
  </svg>
@@ -288,7 +288,7 @@
288
288
 
289
289
  </aside>
290
290
  </div>
291
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
291
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
292
292
  <script src="_static/doctools.js?v=9bcbadda"></script>
293
293
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
294
294
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
pex/docs/html/index.html CHANGED
@@ -8,7 +8,7 @@
8
8
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
9
9
 
10
10
  <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 -->
11
- <title>Pex Docs (v2.62.1)</title>
11
+ <title>Pex Docs (v2.63.0)</title>
12
12
  <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
13
13
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
14
14
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -163,7 +163,7 @@
163
163
  </label>
164
164
  </div>
165
165
  <div class="header-center">
166
- <a href="#"><div class="brand">Pex Docs (v2.62.1)</div></a>
166
+ <a href="#"><div class="brand">Pex Docs (v2.63.0)</div></a>
167
167
  </div>
168
168
  <div class="header-right">
169
169
  <div class="theme-toggle-container theme-toggle-header">
@@ -341,12 +341,12 @@ To go straight to building pex files, see <a class="reference internal" href="bu
341
341
  </div>
342
342
  <div class="right-details">
343
343
  <div class="icons">
344
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
344
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
345
345
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
346
346
  </path>
347
347
  </svg>
348
348
  </a>
349
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
349
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
350
350
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
351
351
  </path>
352
352
  </svg>
@@ -389,7 +389,7 @@ To go straight to building pex files, see <a class="reference internal" href="bu
389
389
 
390
390
  </aside>
391
391
  </div>
392
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
392
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
393
393
  <script src="_static/doctools.js?v=9bcbadda"></script>
394
394
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
395
395
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
@@ -8,7 +8,7 @@
8
8
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
9
9
 
10
10
  <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 -->
11
- <title>PEX Recipes and Notes - Pex Docs (v2.62.1)</title>
11
+ <title>PEX Recipes and Notes - Pex Docs (v2.63.0)</title>
12
12
  <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
13
13
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
14
14
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -163,7 +163,7 @@
163
163
  </label>
164
164
  </div>
165
165
  <div class="header-center">
166
- <a href="index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
166
+ <a href="index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
167
167
  </div>
168
168
  <div class="header-right">
169
169
  <div class="theme-toggle-container theme-toggle-header">
@@ -430,12 +430,12 @@ $<span class="w"> </span><span class="nb">export</span><span class="w"> </span><
430
430
  </div>
431
431
  <div class="right-details">
432
432
  <div class="icons">
433
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
433
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
434
434
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
435
435
  </path>
436
436
  </svg>
437
437
  </a>
438
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
438
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
439
439
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
440
440
  </path>
441
441
  </svg>
@@ -482,7 +482,7 @@ $<span class="w"> </span><span class="nb">export</span><span class="w"> </span><
482
482
 
483
483
  </aside>
484
484
  </div>
485
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
485
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
486
486
  <script src="_static/doctools.js?v=9bcbadda"></script>
487
487
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
488
488
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
pex/docs/html/scie.html CHANGED
@@ -8,7 +8,7 @@
8
8
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
9
9
 
10
10
  <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 -->
11
- <title>PEX with included Python interpreter - Pex Docs (v2.62.1)</title>
11
+ <title>PEX with included Python interpreter - Pex Docs (v2.63.0)</title>
12
12
  <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
13
13
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
14
14
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -163,7 +163,7 @@
163
163
  </label>
164
164
  </div>
165
165
  <div class="header-center">
166
- <a href="index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
166
+ <a href="index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
167
167
  </div>
168
168
  <div class="header-right">
169
169
  <div class="theme-toggle-container theme-toggle-header">
@@ -623,12 +623,12 @@ uuid
623
623
  </div>
624
624
  <div class="right-details">
625
625
  <div class="icons">
626
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
626
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
627
627
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
628
628
  </path>
629
629
  </svg>
630
630
  </a>
631
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
631
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
632
632
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
633
633
  </path>
634
634
  </svg>
@@ -672,7 +672,7 @@ uuid
672
672
 
673
673
  </aside>
674
674
  </div>
675
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
675
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
676
676
  <script src="_static/doctools.js?v=9bcbadda"></script>
677
677
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
678
678
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
pex/docs/html/search.html CHANGED
@@ -6,7 +6,7 @@
6
6
  <link rel="prefetch" href="_static/pex-logo-light.png" as="image">
7
7
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
8
8
 
9
- <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 --><title>Search - Pex Docs (v2.62.1)</title><link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
9
+ <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 --><title>Search - Pex Docs (v2.63.0)</title><link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
10
10
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
11
11
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
12
12
 
@@ -176,7 +176,7 @@
176
176
  </label>
177
177
  </div>
178
178
  <div class="header-center">
179
- <a href="index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
179
+ <a href="index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
180
180
  </div>
181
181
  <div class="header-right">
182
182
  <div class="theme-toggle-container theme-toggle-header">
@@ -273,12 +273,12 @@
273
273
  </div>
274
274
  <div class="right-details">
275
275
  <div class="icons">
276
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
276
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
277
277
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
278
278
  </path>
279
279
  </svg>
280
280
  </a>
281
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
281
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
282
282
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
283
283
  </path>
284
284
  </svg>
@@ -301,7 +301,7 @@
301
301
 
302
302
  </aside>
303
303
  </div>
304
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
304
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
305
305
  <script src="_static/doctools.js?v=9bcbadda"></script>
306
306
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
307
307
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
@@ -8,7 +8,7 @@
8
8
  <link rel="prefetch" href="_static/pex-logo-dark.png" as="image">
9
9
 
10
10
  <link rel="shortcut icon" href="_static/pex-icon.png"><!-- Generated with Sphinx 8.2.3 and Furo 2025.09.25 -->
11
- <title>What are .pex files? - Pex Docs (v2.62.1)</title>
11
+ <title>What are .pex files? - Pex Docs (v2.63.0)</title>
12
12
  <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=d111a655" />
13
13
  <link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=580074bf" />
14
14
  <link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=8dab3a3b" />
@@ -163,7 +163,7 @@
163
163
  </label>
164
164
  </div>
165
165
  <div class="header-center">
166
- <a href="index.html"><div class="brand">Pex Docs (v2.62.1)</div></a>
166
+ <a href="index.html"><div class="brand">Pex Docs (v2.63.0)</div></a>
167
167
  </div>
168
168
  <div class="header-right">
169
169
  <div class="theme-toggle-container theme-toggle-header">
@@ -322,12 +322,12 @@ build executable .pex files. This is described more thoroughly in
322
322
  </div>
323
323
  <div class="right-details">
324
324
  <div class="icons">
325
- <a class="muted-link " href="https://pypi.org/project/pex/2.62.1/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
325
+ <a class="muted-link " href="https://pypi.org/project/pex/2.63.0/" aria-label="PyPI"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
326
326
  <path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z">
327
327
  </path>
328
328
  </svg>
329
329
  </a>
330
- <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.62.1/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
330
+ <a class="muted-link " href="https://github.com/pex-tool/pex/releases/download/v2.63.0/pex" aria-label="Download"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
331
331
  <path d="M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z">
332
332
  </path>
333
333
  </svg>
@@ -371,7 +371,7 @@ build executable .pex files. This is described more thoroughly in
371
371
 
372
372
  </aside>
373
373
  </div>
374
- </div><script src="_static/documentation_options.js?v=5c12aedb"></script>
374
+ </div><script src="_static/documentation_options.js?v=89bf609b"></script>
375
375
  <script src="_static/doctools.js?v=9bcbadda"></script>
376
376
  <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
377
377
  <script src="_static/scripts/furo.js?v=46bd48cc"></script>
pex/venv/installer.py CHANGED
@@ -24,6 +24,7 @@ from pex.pep_427 import reinstall_flat, reinstall_venv
24
24
  from pex.pep_440 import Version
25
25
  from pex.pep_503 import ProjectName
26
26
  from pex.pex import PEX
27
+ from pex.pex_info import PexInfo
27
28
  from pex.result import Error
28
29
  from pex.sysconfig import SCRIPT_DIR
29
30
  from pex.tracer import TRACER
@@ -44,6 +45,7 @@ if TYPE_CHECKING:
44
45
  Iterator,
45
46
  List,
46
47
  Optional,
48
+ Sequence,
47
49
  Text,
48
50
  Tuple,
49
51
  Union,
@@ -574,24 +576,16 @@ def _populate_sources(
574
576
  yield src, dest
575
577
 
576
578
 
577
- def _populate_first_party(
579
+ def install_pex_main(
578
580
  target_dir, # type: str
579
581
  venv, # type: Virtualenv
580
- pex, # type: PEX
582
+ pex_info, # type: PexInfo
583
+ activated_dists, # type: Sequence[Distribution]
581
584
  shebang, # type: str
582
585
  venv_python, # type: str
583
586
  bin_path, # type: BinPath.Value
584
587
  ):
585
- # type: (...) -> Iterator[Tuple[Text, Text]]
586
-
587
- # We want the venv at rest to reflect the PEX it was created from at rest; as such we use the
588
- # PEX's at-rest PEX-INFO to perform the layout. The venv can then be executed with various PEX
589
- # environment variables in-play that it respects (e.g.: PEX_EXTRA_SYS_PATH, PEX_INTERPRETER,
590
- # PEX_MODULE, etc.).
591
- pex_info = pex.pex_info(include_env_overrides=False)
592
-
593
- for src, dst in _populate_sources(pex=pex, dst=venv.site_packages_dir):
594
- yield src, dst
588
+ # type: (...) -> None
595
589
 
596
590
  with open(os.path.join(venv.site_packages_dir, "PEX_EXTRA_SYS_PATH.pth"), "w") as fp:
597
591
  # N.B.: .pth import lines must be single lines: https://docs.python.org/3/library/site.html
@@ -607,7 +601,7 @@ def _populate_first_party(
607
601
  with open(os.path.join(venv.venv_dir, pex_info.PATH), "w") as fp:
608
602
  fp.write(pex_info.dump())
609
603
 
610
- # 2. Add a __main__ to the root of the venv for running the venv dir like a loose PEX dir
604
+ # Add a __main__ to the root of the venv for running the venv dir like a loose PEX dir
611
605
  # and a main.py for running as a script.
612
606
  with open(venv.join_path("__main__.py"), "w") as fp:
613
607
  fp.write(
@@ -660,9 +654,38 @@ def _populate_first_party(
660
654
  repl.create_pex_repl_exe(
661
655
  shebang=shebang,
662
656
  pex_info=pex_info,
663
- activated_dists=tuple(pex.resolve()),
657
+ activated_dists=activated_dists,
664
658
  pex=os.path.join(target_dir, "pex"),
665
659
  venv=True,
666
660
  )
667
661
  )
668
662
  chmod_plus_x(fp.name)
663
+
664
+
665
+ def _populate_first_party(
666
+ target_dir, # type: str
667
+ venv, # type: Virtualenv
668
+ pex, # type: PEX
669
+ shebang, # type: str
670
+ venv_python, # type: str
671
+ bin_path, # type: BinPath.Value
672
+ ):
673
+ # type: (...) -> Iterator[Tuple[Text, Text]]
674
+
675
+ for src, dst in _populate_sources(pex=pex, dst=venv.site_packages_dir):
676
+ yield src, dst
677
+
678
+ # We want the venv at rest to reflect the PEX it was created from at rest; as such we use the
679
+ # PEX's at-rest PEX-INFO to perform the layout. The venv can then be executed with various PEX
680
+ # environment variables in-play that it respects (e.g.: PEX_EXTRA_SYS_PATH, PEX_INTERPRETER,
681
+ # PEX_MODULE, etc.).
682
+ pex_info = pex.pex_info(include_env_overrides=False)
683
+ install_pex_main(
684
+ target_dir=target_dir,
685
+ venv=venv,
686
+ pex_info=pex_info,
687
+ activated_dists=tuple(pex.resolve()),
688
+ shebang=shebang,
689
+ venv_python=venv_python,
690
+ bin_path=bin_path,
691
+ )
pex/version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # Copyright 2015 Pex project contributors.
2
2
  # Licensed under the Apache License, Version 2.0 (see LICENSE).
3
3
 
4
- __version__ = "2.62.1"
4
+ __version__ = "2.63.0"
@@ -1,15 +1,15 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pex
3
- Version: 2.62.1
3
+ Version: 2.63.0
4
4
  Summary: The PEX packaging toolchain.
5
5
  Home-page: https://github.com/pex-tool/pex
6
- Download-URL: https://github.com/pex-tool/pex/releases/download/v2.62.1/pex
6
+ Download-URL: https://github.com/pex-tool/pex/releases/download/v2.63.0/pex
7
7
  Author: The PEX developers
8
8
  Author-email: developers@pex-tool.org
9
9
  License-Expression: Apache-2.0
10
- Project-URL: Changelog, https://github.com/pex-tool/pex/blob/v2.62.1/CHANGES.md
10
+ Project-URL: Changelog, https://github.com/pex-tool/pex/blob/v2.63.0/CHANGES.md
11
11
  Project-URL: Documentation, https://docs.pex-tool.org/
12
- Project-URL: Source, https://github.com/pex-tool/pex/tree/v2.62.1
12
+ Project-URL: Source, https://github.com/pex-tool/pex/tree/v2.63.0
13
13
  Keywords: package,executable,virtualenv,lock,freeze
14
14
  Classifier: Development Status :: 5 - Production/Stable
15
15
  Classifier: Intended Audience :: Developers
@@ -69,7 +69,7 @@ pex/tracer.py,sha256=nob_hNooCYWZev7_ABhAVyO4HBZ8Q_OajQUvNnr82Rc,4481
69
69
  pex/typing.py,sha256=J1JTB1V48zIWmhWRHEMDHWMaFPMzsEonWJ9s57Ev43Q,3050
70
70
  pex/util.py,sha256=TxTxpdDmrDTLVXt9e2XuRq9c3N6jRYNCce87QBFkCVo,5491
71
71
  pex/variables.py,sha256=h3-JeMzXfRzEsWqTYsoU-6vt5W4Kr0VvbfSDAYtuZOU,34728
72
- pex/version.py,sha256=ya0u8lQFcL-H9DlwHMrAMd_Y63MSs7QreOsPtNMExLA,131
72
+ pex/version.py,sha256=3_8D9AJp7yTbt3Nd-irC-BFXPCKolQhwHO8y7cWxM0M,131
73
73
  pex/wheel.py,sha256=R9jPWwzla_c3xUbeYjaQMrKC0ly8UexKMLfuRDhP054,11146
74
74
  pex/whl.py,sha256=0Nh1d6kmAaRANCygoVZZi0zii6j_elRQc7N6yDHTuMY,2513
75
75
  pex/ziputils.py,sha256=thUrto9vEdG9mFCIJ59Js3d1y6bSfFdl7pb1lSb7KAQ,9620
@@ -97,7 +97,7 @@ pex/cli/commands/docs.py,sha256=z4KWsTlVZqOda-RrxfMn34JwLtmSHTBFh-w7AuG45KE,2615
97
97
  pex/cli/commands/interpreter.py,sha256=grgIqFkWlv5c1Bf38CgdXRJ0IqsvKrn_OxQFIbejsQY,7684
98
98
  pex/cli/commands/lock.py,sha256=D-1yscaMmnaOEbUqXbnKty1zF9IfvclJoqNB7ABartQ,101759
99
99
  pex/cli/commands/run.py,sha256=gWkuaxPFnGqFi-kr7ROkBG-YvSddWbj0UtKRk9QzcEU,34997
100
- pex/cli/commands/venv.py,sha256=SCmqIjwQhgKZ-4MQFNmRGBHIT0oS23a3Ml4TMjmoxLE,17823
100
+ pex/cli/commands/venv.py,sha256=8yDDMT61dgUuBH84whLingNobjSeTAzhe61W6VZCqDA,20705
101
101
  pex/cli/commands/cache/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
102
102
  pex/cli/commands/cache/bytes.py,sha256=2bnNpwLYTUvVf2q_g9jqi-0ORbOFs_csYmCTEG3IQhM,3952
103
103
  pex/cli/commands/cache/command.py,sha256=92mmobaEfEjPAFhL_s6Opb9YniEopJN-llJ0yDKcc2k,26957
@@ -113,33 +113,33 @@ pex/distutils/commands/__init__.py,sha256=uASB5OU996Jax-h3kMmeZjG5Jdy9BYDR6A1swk
113
113
  pex/distutils/commands/bdist_pex.py,sha256=SLwBj0ALpArhKQT94X0niKWfyLaySjOZuZrGXG332K0,5117
114
114
  pex/docs/__init__.py,sha256=u9hPOij1fpo1yPBLTQTdSCnSIUuRCSXHomCkEAaCciA,439
115
115
  pex/docs/command.py,sha256=uQyD8bO_DBNIlkPd6F7SFZbZUVh1Xn6gT8OmVxP4qxk,3046
116
- pex/docs/html/buildingpex.html,sha256=UN9fADKJV3FmTWUqWma-uVCmfKbq-85ikkmkirt59EE,57407
117
- pex/docs/html/genindex.html,sha256=1TGs4dzWrsUcjVdJkcBG8jDKU71NySoEPjza0v4vyXQ,17198
118
- pex/docs/html/index.html,sha256=tZICBEFelWytUUPtC6_krqyOXqRHmMU5Y-twNl-t41M,25028
119
- pex/docs/html/recipes.html,sha256=qqf-DUdQtwlR1FsFcNpQdxTc640XOtOYwZd4x7Bp0cE,35192
120
- pex/docs/html/scie.html,sha256=tC7AhPiEqqI7oMFHvm_E0WvyRP7pQxoX1OXFexHmTAU,62182
121
- pex/docs/html/search.html,sha256=f95B7h23N_7skJhG65wvpYRfwgLM-rJTWg7WLxrr7QU,18169
116
+ pex/docs/html/buildingpex.html,sha256=d8DT5e75ILfdTGTVIf2frf5YS9waEAHtXO3ktuC9EsM,57407
117
+ pex/docs/html/genindex.html,sha256=LTr3TYrDsKTe0V5vQgiJKWgzF_p-W7rC5fOtyfoaNE4,17198
118
+ pex/docs/html/index.html,sha256=CqvR_ohhjrAFTbEVBlb-2j_nL_n19USLd4iScLKn4Bw,25028
119
+ pex/docs/html/recipes.html,sha256=_e9gvkixY8d5I_Srd8czBuSBVdXIYgmH_kWrq5jA4g0,35192
120
+ pex/docs/html/scie.html,sha256=SJDKnfMn8jYQF4KzdrcG0s3OkmAd_75AGEkt49l_Vns,62182
121
+ pex/docs/html/search.html,sha256=y7Z4aTVrk54zj5hCFYYwyuYxriXCnv5Z70tbNMjr1SA,18169
122
122
  pex/docs/html/searchindex.js,sha256=R_L6Oveik_wlK5CmaE7YwRvmu81r6fd7jtnZUjfk1sA,18009
123
- pex/docs/html/whatispex.html,sha256=RM3B_Wk9pDWZ-aJx981ZqqckRVA9jQc5APZ5B2eJK-w,22754
124
- pex/docs/html/_pagefind/pagefind-entry.json,sha256=8DX3GGrXeaSUjEmeEGhHWOv5XUgTeIHBpCto3sAwTcc,90
123
+ pex/docs/html/whatispex.html,sha256=GjSXwXL9KkBZ1CETJAex6k6LF184NiuQKsJR7mWS89g,22754
124
+ pex/docs/html/_pagefind/pagefind-entry.json,sha256=DzCdrRWlah8WprYqGEaKChFXBtaamY2Az7q_tq0n7j8,90
125
125
  pex/docs/html/_pagefind/pagefind-highlight.js,sha256=5hRyi7gOMY9tlTe-tbmDrVJpoxbnYxhbJeoGwtmCfXA,43944
126
126
  pex/docs/html/_pagefind/pagefind-modular-ui.css,sha256=ZTqynk3lYp9t319vzfXSs-tTmowH__ila4ziFWpXB4g,7336
127
127
  pex/docs/html/_pagefind/pagefind-modular-ui.js,sha256=-DCEOJ2cInrvjEGZFxCuYy81EMWbKHhMu4wivlJmUzE,14486
128
128
  pex/docs/html/_pagefind/pagefind-ui.css,sha256=GL61nVezuyVA4ynNRJejhEwUBxhBtx4rDYVlAgI_W1U,14486
129
129
  pex/docs/html/_pagefind/pagefind-ui.js,sha256=WQ3yec_CMkBKswl16Ig5N_zJzeCgL4z9y344TcJeKAQ,78367
130
- pex/docs/html/_pagefind/pagefind.en_32e8257caf.pf_meta,sha256=Z-WI_2D76Sdn1eeTK_aXDHPMzvWM_hQS8hvDxGLABTc,152
130
+ pex/docs/html/_pagefind/pagefind.en_5515c79d6d.pf_meta,sha256=fuL7cG-nVQf7Sn5l0Cpw9ti5Zp6A4TT4-lvNWcEw7zM,153
131
131
  pex/docs/html/_pagefind/pagefind.js,sha256=Q-4jKyPif6awDU9x8IoWXTWoJJR1JZicegUYQ-QI4MA,32912
132
132
  pex/docs/html/_pagefind/wasm.en.pagefind,sha256=mG0TKIE7WXynsyg-tpiMZiVG2Hwebbt2UqFqlqdTTsE,70873
133
133
  pex/docs/html/_pagefind/wasm.unknown.pagefind,sha256=eAREknqQnc_y96pbl8eYz9zqfUXsqe64B7HwrQE2SkY,67202
134
- pex/docs/html/_pagefind/fragment/en_1bbeb07.pf_fragment,sha256=GNY8G_R0vC5c98OQ7oKXa0kCQU6MnH83UBTNc_enLiA,370
135
- pex/docs/html/_pagefind/fragment/en_1befd43.pf_fragment,sha256=Vl9GU-UqxZSbhzA1979-LyFvqy3ky32r7F6YoCIQnwk,1142
136
- pex/docs/html/_pagefind/fragment/en_45eea4b.pf_fragment,sha256=43LZFemRwy14ZnWjnsjZbNNF6rBpDaaYL624UCOQz3Y,1158
137
- pex/docs/html/_pagefind/fragment/en_7822de6.pf_fragment,sha256=vy3E40FcaAdBFIHb9O5bQp8_qR_OBEPOGNBh-FBIcJk,3019
138
- pex/docs/html/_pagefind/fragment/en_87f76ba.pf_fragment,sha256=rLxrWIUkP8VwqcqhM1niOhh6BrT1w0AcruAgQcO4eAc,4847
139
- pex/docs/html/_pagefind/fragment/en_a89f2ec.pf_fragment,sha256=Nd5eSi8bn0R4voM0ndzCVcp5nnxNyAH5Y3aoEA3jtcs,361
140
- pex/docs/html/_pagefind/fragment/en_c2a647e.pf_fragment,sha256=-NCHDsEEUfhqV4QF5qO512jGoBi0coM9ZWlTXmZl7ZA,3648
141
- pex/docs/html/_pagefind/fragment/en_d2f2c1b.pf_fragment,sha256=xLFnaPLst6cfINKhWUeqWvA_hvlxsURVfQLb-2u3aws,6820
142
- pex/docs/html/_pagefind/index/en_31a0754.pf_index,sha256=uNNJudFUu4FBSD22ew6iPMtmzUCpHRQVd8MI4lk6Tmg,28865
134
+ pex/docs/html/_pagefind/fragment/en_66c5113.pf_fragment,sha256=Dp7vV6hRLj4mBcgKz2KN19J2bjAcz5qcJ-Rv-hSFpkA,6821
135
+ pex/docs/html/_pagefind/fragment/en_6c6ecbd.pf_fragment,sha256=q6AOE6gCgkSWY4EbeG9JYIPfIZqo1CIAU-YE2101KmI,360
136
+ pex/docs/html/_pagefind/fragment/en_6c77f9b.pf_fragment,sha256=wLfprK0T-RAvtAYJV1MZL9oG2BdEIXooNalgmG6V6Yo,1143
137
+ pex/docs/html/_pagefind/fragment/en_71b5a8a.pf_fragment,sha256=w05rSoUyaB235poU61Wz_WiFb0btvhx3ro-nbyKQUIM,3648
138
+ pex/docs/html/_pagefind/fragment/en_8762fc9.pf_fragment,sha256=UifeuNRCTEsAufffg2vXEjpEgcmt-V3MgWxhYgTEVPU,3018
139
+ pex/docs/html/_pagefind/fragment/en_a55bc27.pf_fragment,sha256=bzAJD3We-kLn0rd6hoTmO_7S6sx4LuYeQtzsUWVhQ94,1158
140
+ pex/docs/html/_pagefind/fragment/en_c87eb0d.pf_fragment,sha256=7m0IoMdfGHqWijttAG7Sauz7mUp7mvOHSYYvUKLdQgk,370
141
+ pex/docs/html/_pagefind/fragment/en_f2578bc.pf_fragment,sha256=ZLjdmI6v2ub8bdBZaCMRmOhVF8CyXGlJs880I1aUx4Y,4848
142
+ pex/docs/html/_pagefind/index/en_b6cc89e.pf_index,sha256=8ufwjWjimng_gFJ7T4tbpeazv7bVy_8hswEim449Eto,28862
143
143
  pex/docs/html/_sources/buildingpex.rst.txt,sha256=87P3ZO871MILL9pmpDM8_M7_YV1z5HjTYa9m8yuxTa4,19138
144
144
  pex/docs/html/_sources/index.rst.txt,sha256=vWt1s6dirYeR-9mFJY1SClwWvbWqIqJSFCAF1CdZojc,1468
145
145
  pex/docs/html/_sources/recipes.rst.txt,sha256=kerzvp8_t5io6eGl3YJODtNBQy7GmY2AA6RHaij9C-g,6958
@@ -149,7 +149,7 @@ pex/docs/html/_sources/api/vars.md.txt,sha256=C9gu5czyB-g788xRfYKF8P176ew_q97X6z
149
149
  pex/docs/html/_static/basic.css,sha256=ZW_xus1vJg_H1xuX-cLx_L9pLchL9GnNlSA078ue7-0,14685
150
150
  pex/docs/html/_static/debug.css,sha256=DQXNnnnVMjQwRmfAjwKXHeYZbA_8pZPDkDs2Z7QFWtY,1266
151
151
  pex/docs/html/_static/doctools.js,sha256=KZLAnfkYJqjTPjtItkXud-RXrc98cS13aoFOHixEi0M,4322
152
- pex/docs/html/_static/documentation_options.js,sha256=P0OnLp8gPtvHEKNbPOClTT3q7F6FmPkJ5OTFgEqAeAE,329
152
+ pex/docs/html/_static/documentation_options.js,sha256=QPSJe14u-t65jcIccqkgk15_0EL6mQDVHQbstgIDTWE,329
153
153
  pex/docs/html/_static/file.png,sha256=XEvJoWrr84xLlQ9ZuOUByjZJUyjLnrYiIYvOkGSjXj4,286
154
154
  pex/docs/html/_static/language_data.js,sha256=O8MRVjt_xegPyrL4Ypd0vzy2swICAA3zbf-OaVqQI7c,4598
155
155
  pex/docs/html/_static/minus.png,sha256=R-f8UNs2mfHKQc6aL_ogLADF0dUYDFX2K6hZsb1swAg,90
@@ -169,7 +169,7 @@ pex/docs/html/_static/styles/furo-extensions.css,sha256=PSsCB3EaBzE9-2yLJyKV9fkx
169
169
  pex/docs/html/_static/styles/furo-extensions.css.map,sha256=CzW267gfKqH8ruMlwJbWg-MsGAipIgZwoaP4gwDGkVw,7762
170
170
  pex/docs/html/_static/styles/furo.css,sha256=666beINeSQtLZbSeNCMj62G7a13xiX1YwJVvij3jr-8,50749
171
171
  pex/docs/html/_static/styles/furo.css.map,sha256=0k0kb9TwrJYQRT-2cbjTcOz7PQykGWHdy2BSuVMtrnY,76038
172
- pex/docs/html/api/vars.html,sha256=cE1sKI3zeedSzQ4bEo8VrWoSCCk4K6jprg6aN_Etm68,34903
172
+ pex/docs/html/api/vars.html,sha256=GBvL79h9B7IDCl80OsHunk7qt5Ub40piyWnOmvP2_cQ,34903
173
173
  pex/fs/__init__.py,sha256=ues2bnsufy1lYRyoWsiP-G4kuPrV-tXaZ0x-HFJFpwY,3605
174
174
  pex/fs/_posix.py,sha256=p-VkjEfRNXduBmkxcuEXWM1g6y6xrkufSYzEy93tqjA,1275
175
175
  pex/fs/_windows.py,sha256=apacgHpxNutF5HkU6cYOLHq7yqaijRMsFBdsdKSviDo,3304
@@ -974,7 +974,7 @@ pex/venv/README.md,sha256=VV46mdzh5G_UbMVadxabXitHo7wF7kH-GG0o_GCKCu0,430
974
974
  pex/venv/__init__.py,sha256=hbVu8HKJGOAmXQlIyMjcEt0EsBK311HumeAwENvHHxY,107
975
975
  pex/venv/bin_path.py,sha256=b4g30iLvijfA1_Or0y5seJiOx8BkALlHd7yghJyeJuA,361
976
976
  pex/venv/install_scope.py,sha256=cws8l_ujLxViO_6ayspaq-jJjOfjE4rWWcaZPf72Xzw,374
977
- pex/venv/installer.py,sha256=jJtHjjwCVbCyAX1J8ZTtdBqv5MTFfngjXiPKWkAw3M4,23969
977
+ pex/venv/installer.py,sha256=ckY6-vuypGfrHIWC6fVF4TBCD63CMgStnYp4v11n2x4,24537
978
978
  pex/venv/installer_configuration.py,sha256=VbK7NdrMhPI6BKclDbcr5NYn_0ia7xtl2AhvMVC7AU4,1101
979
979
  pex/venv/installer_options.py,sha256=TS7AaRT_3Io0R2Aaoq1pSjQ0srZ4TFf2NattQpqHFiw,4457
980
980
  pex/venv/venv_pex.py,sha256=YaEdGka0fRwU9BNrCkDLL04knpF3fYbMRbKI-zsFFXg,14012
@@ -985,10 +985,10 @@ pex/windows/stubs/uv-trampoline-aarch64-console.exe,sha256=1S2aM-6CV7rKz-3ncM5X7
985
985
  pex/windows/stubs/uv-trampoline-aarch64-gui.exe,sha256=mb8x1FpyH-wy11X5YgWfqh_VUwBb62M4Zf9aFr5V4EE,40448
986
986
  pex/windows/stubs/uv-trampoline-x86_64-console.exe,sha256=nLopBrlCMMFjkKVRlY7Ke2zFGpQOyF5mSlLs0d7-HRQ,40960
987
987
  pex/windows/stubs/uv-trampoline-x86_64-gui.exe,sha256=icnp1oXrOZpc-dHTGvDbTHjr-D8M0eamvRrC9bPI_KI,41984
988
- pex-2.62.1.dist-info/METADATA,sha256=VSG2IPB2GUdDVabZx4iPRFY1aSgl7c1Zd8d3gZn4TGI,7476
989
- pex-2.62.1.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
990
- pex-2.62.1.dist-info/entry_points.txt,sha256=LD9tcxNxdsVLeIF6zR7dyH1vgo2eD9a-05TC1UraGMQ,174
991
- pex-2.62.1.dist-info/top_level.txt,sha256=HlafJUPu7mfjxv3SDH-RbkxsHOWSVbPXTEBC1hzonpM,4
992
- pex-2.62.1.dist-info/licenses/LICENSE,sha256=bcDgaNzzpbyOBUIFuFt3IOHUkmW7xkv1FdLPeRl99po,11323
993
- pex-2.62.1.dist-info/pylock/pylock.toml,sha256=9TIk5X6BqnJ6lKu8eb0EnzwbBcOjs3QJWzcLMYx8M5k,7151
994
- pex-2.62.1.dist-info/RECORD,,
988
+ pex-2.63.0.dist-info/METADATA,sha256=aLyr6sya2HCxzeHdT5gqjN22ki6_sqiZpQOIwY0aRBI,7476
989
+ pex-2.63.0.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
990
+ pex-2.63.0.dist-info/entry_points.txt,sha256=LD9tcxNxdsVLeIF6zR7dyH1vgo2eD9a-05TC1UraGMQ,174
991
+ pex-2.63.0.dist-info/top_level.txt,sha256=HlafJUPu7mfjxv3SDH-RbkxsHOWSVbPXTEBC1hzonpM,4
992
+ pex-2.63.0.dist-info/licenses/LICENSE,sha256=bcDgaNzzpbyOBUIFuFt3IOHUkmW7xkv1FdLPeRl99po,11323
993
+ pex-2.63.0.dist-info/pylock/pylock.toml,sha256=9TIk5X6BqnJ6lKu8eb0EnzwbBcOjs3QJWzcLMYx8M5k,7151
994
+ pex-2.63.0.dist-info/RECORD,,
File without changes