pip install уже загруженное колесо (scons) кажется медленным - PullRequest
1 голос
/ 10 июля 2020

В виртуальной среде fre sh python3 .7 я пытаюсь установить загруженное колесо, но этап установки на Windows занимает ~ 20 секунд (на linux это немного быстрее, но все же ~ 20 секунд)

Выполненные шаги

Здесь я создаю venv, обновляю pip, setuptools & wheel, загружаю scons, здесь ничего особо интересного.

PS C:\s\tmp> C:\Python37\python.exe -m venv venv37

PS C:\s\tmp> .\venv37\Scripts\activate

(venv37) PS C:\s\tmp> pip install -U pip setuptools wheel
Requirement already up-to-date: pip in c:\s\tmp\venv37\lib\site-packages (20.1.1)
Collecting setuptools
  Using cached setuptools-49.1.0-py3-none-any.whl (789 kB)
Collecting wheel
  Using cached wheel-0.34.2-py2.py3-none-any.whl (26 kB)
Installing collected packages: setuptools, wheel
  Attempting uninstall: setuptools
    Found existing installation: setuptools 47.1.0
    Uninstalling setuptools-47.1.0:
      Successfully uninstalled setuptools-47.1.0
Successfully installed setuptools-49.1.0 wheel-0.34.2

(venv37) PS C:\s\tmp> Measure-Command { pip download scons | Out-Default }
Collecting scons
  Using cached SCons-4.0.0-py3-none-any.whl (4.0 MB)
  Saved c:\s\tmp\scons-4.0.0-py3-none-any.whl
Collecting pywin32>=1.0; platform_system == "Windows"
  Using cached pywin32-228-cp37-cp37m-win_amd64.whl (9.1 MB)
  Saved c:\s\tmp\pywin32-228-cp37-cp37m-win_amd64.whl
Collecting setuptools
  Using cached setuptools-49.1.0-py3-none-any.whl (789 kB)
  Saved c:\s\tmp\setuptools-49.1.0-py3-none-any.whl
Successfully downloaded scons pywin32 setuptools

Seconds           : 2

(venv37) PS C:\s\tmp> ls
    Directory: C:\s\tmp
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        7/10/2020   2:38 PM                venv37
-a----        7/10/2020   2:40 PM        9100091 pywin32-228-cp37-cp37m-win_amd64.whl
-a----        7/10/2020   2:40 PM        3970271 SCons-4.0.0-py3-none-any.whl
-a----        7/10/2020   2:40 PM         789761 setuptools-49.1.0-py3-none-any.whl

Здесь я пытаюсь установить загруженное колесо , что занимает до 17 секунд.

(venv37) PS C:\s\tmp> Measure-Command { python -m pip install -vvv -U --no-index --find-links . scons | Out-Default }
Non-user install because user site-packages disabled
Ignoring indexes: https://pypi.org/simple
Created temporary directory: C:\Users\FRANCE~1\AppData\Local\Temp\pip-ephem-wheel-cache-56rg4dkw
Created temporary directory: C:\Users\FRANCE~1\AppData\Local\Temp\pip-req-tracker-awspyjg9
Initialized build tracking at C:\Users\FRANCE~1\AppData\Local\Temp\pip-req-tracker-awspyjg9
Created build tracker: C:\Users\FRANCE~1\AppData\Local\Temp\pip-req-tracker-awspyjg9
Entered build tracker: C:\Users\FRANCE~1\AppData\Local\Temp\pip-req-tracker-awspyjg9
Created temporary directory: C:\Users\FRANCE~1\AppData\Local\Temp\pip-install-1_k389zs
Looking in links: .
0 location(s) to search for versions of scons:
Skipping link: not a file: . (from -f)
Skipping link: wrong project name (not scons): file:///C:/s/tmp/pywin32-228-cp37-cp37m-win_amd64.whl
Found link file:///C:/s/tmp/SCons-4.0.0-py3-none-any.whl, version: 4.0.0
Skipping link: wrong project name (not scons): file:///C:/s/tmp/setuptools-49.1.0-py3-none-any.whl
Skipping link: not a file: file:///C:/s/tmp/venv37
Local files found: C:\s\tmp\SCons-4.0.0-py3-none-any.whl
Given no hashes to check 1 links for project 'scons': discarding no candidates
Using version 4.0.0 (newest of versions: 4.0.0)
Processing c:\s\tmp\scons-4.0.0-py3-none-any.whl
  Added scons from file:///C:/s/tmp/SCons-4.0.0-py3-none-any.whl to build tracker 'C:\\Users\\FRANCE~1\\AppData\\Local\\Temp\\pip-req-tracker-awspyjg9'
  Removed scons from file:///C:/s/tmp/SCons-4.0.0-py3-none-any.whl from build tracker 'C:\\Users\\FRANCE~1\\AppData\\Local\\Temp\\pip-req-tracker-awspyjg9'
Requirement already satisfied, skipping upgrade: setuptools in c:\s\tmp\venv37\lib\site-packages (from scons) (49.1.0)
0 location(s) to search for versions of pywin32:
Found link file:///C:/s/tmp/pywin32-228-cp37-cp37m-win_amd64.whl, version: 228
Skipping link: wrong project name (not pywin32): file:///C:/s/tmp/SCons-4.0.0-py3-none-any.whl
Local files found: C:\s\tmp\pywin32-228-cp37-cp37m-win_amd64.whl
Given no hashes to check 1 links for project 'pywin32': discarding no candidates
Using version 228 (newest of versions: 228)
Processing c:\s\tmp\pywin32-228-cp37-cp37m-win_amd64.whl
  Added pywin32>=1.0; platform_system == "Windows" from file:///C:/s/tmp/pywin32-228-cp37-cp37m-win_amd64.whl (from scons) to build tracker 'C:\\Users\\FRANCE~1\\AppData\\Local\\Temp\\pip-req-tracker-awspyjg9'
  Removed pywin32>=1.0; platform_system == "Windows" from file:///C:/s/tmp/pywin32-228-cp37-cp37m-win_amd64.whl (from scons) from build tracker 'C:\\Users\\FRANCE~1\\AppData\\Local\\Temp\\pip-req-tracker-awspyjg9'
Installing collected packages: pywin32, scons
  Created temporary directory: C:\Users\FRANCE~1\AppData\Local\Temp\pip-unpacked-wheel-vwh0ebm3

  Created temporary directory: C:\Users\FRANCE~1\AppData\Local\Temp\pip-unpacked-wheel-dxib5q_u

Successfully installed pywin32-228 scons-4.0.0
Removed build tracker: 'C:\\Users\\FRANCE~1\\AppData\\Local\\Temp\\pip-req-tracker-awspyjg9'


Seconds           : 17

Могу ли я что-нибудь сделать, чтобы ускорить этап установки?

Обновление (13.07.2020):

После Комментарий bdbaddog Вскоре я взглянул на репо, поскольку он предположил, что в этой медленной установке виноваты артефакты dobook.

(venv37) PS C:\src\scons\SCons> dust
 397K   ┌── Node                          │                           █ │   2%
 522K   │     ┌── RELEASE-NOTES.xml       │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ │   3%
 612K   │     ├── manpages                │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ │   3%
 666K   │     ├── RELEASE-NOTES.html      │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ │   3%
 696K   │     ├── webhelp                 │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ │   3%
 417K   │     │ ┌── template-pages.xml    │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   2%
 860K   │     ├─┴ roundtrip               │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   4%
 876K   │     ├── slides                  │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   4%
 919K   │     ├── params                  │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   4%
 1.1M   │     │ ┌── reference.xml.included│  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   6%
 1.2M   │     ├─┴ docsrc                  │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   6%
 1.3M   │     ├── xhtml-1_1               │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   7%
 1.3M   │     ├── xhtml                   │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ │   7%
 1.6M   │     ├── html                    │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███ │   8%
 447K   │     │ ┌── param.xml             │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███ │   2%
 1.8M   │     ├─┴ fo                      │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███ │   9%
 3.1M   │     ├── common                  │  ░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█████ │  15%
  16M   │   ┌─┴ docbook-xsl-1.76.1        │  ░░████████████████████████ │  83%
  16M   │ ┌─┴ docbook                     │  ░░████████████████████████ │  83%
  17M   ├─┴ Tool                          │  ██████████████████████████ │  89%
  20M ┌─┴ .                               │████████████████████████████ │ 100%
...