由于其他依赖性,Conda环境的越大
的内容。
name: ong_env
channels:
- conda-forge
- defaults
dependencies:
- appdirs
- atomicwrites
- attrs
- autopep8
- black
- ca-certificates
- certifi
- click
- colorama
- coverage
- execnet
- flake8
- flake8-polyfill
- hypothesis
- importlib-metadata
- importlib_metadata
- iniconfig
- mccabe
- more-itertools
- mypy
- mypy_extensions
- openssl
- packaging
- pathspec
- pep8-naming
- pip
- pluggy
- psutil
- py
- pycodestyle
- pyflakes
- pyparsing
- pytest
- pytest-cov
- pytest-forked
- pytest-html
- pytest-metadata
- pytest-xdist
- python
- pywin32
- regex
- ruamel.yaml
- ruamel.yaml.clib
- setuptools
- snakeviz
- sortedcontainers
- sqlite
- toml
- tomli
- tornado
- typed-ast
- typing_extensions
- vc
- vs2015_runtime
- wheel
- wincertstore
- zipp
- zlib
- antlr4-python3-runtime
- chardet
- charset-normalizer
- decorator
- deepdiff
- idna
- importlib-resources
- jsonpath-ng
- jsonschema
- markdown
- multipledispatch
- ordered-set
- ply
- pycparser
- pyrsistent
- pythonnet
- requests
- six
- types-markdown
- untangle
- urllib3
- xlsxwriter
- semi-ate-stdf
- pip:
- api4jenkins
- jsonmerge
- json-checker
- logging-logger
- nesteddict
遵循环境 如果我只是移动行-semi-ate-stdf
一行向下移动(使用sem-ate而不是conda-forge One的PIP版本),则最终的环境的大小为213 MB!我很清楚原因 - 康达·福克(Conda -Forge)介绍了一些巨大的新依赖性(例如Clang和Qt5)。
这个问题是为什么 conda-forge需要这么多其他包裹,而不需要PIP。标记两个工具(Conda和Pip)安装半ate的0.1.26版本。
还是有一种方法告诉Conda创建一个“尽可能小”的环境,尽管我认为这已经是默认值,不是吗?
当我们将虚拟环境存储在SVN中时,许多用户需要从存储库中检查它的增加尺寸(以上超过3倍)对我们有很大的影响。
following content of environment.yml:
name: ong_env
channels:
- conda-forge
- defaults
dependencies:
- appdirs
- atomicwrites
- attrs
- autopep8
- black
- ca-certificates
- certifi
- click
- colorama
- coverage
- execnet
- flake8
- flake8-polyfill
- hypothesis
- importlib-metadata
- importlib_metadata
- iniconfig
- mccabe
- more-itertools
- mypy
- mypy_extensions
- openssl
- packaging
- pathspec
- pep8-naming
- pip
- pluggy
- psutil
- py
- pycodestyle
- pyflakes
- pyparsing
- pytest
- pytest-cov
- pytest-forked
- pytest-html
- pytest-metadata
- pytest-xdist
- python
- pywin32
- regex
- ruamel.yaml
- ruamel.yaml.clib
- setuptools
- snakeviz
- sortedcontainers
- sqlite
- toml
- tomli
- tornado
- typed-ast
- typing_extensions
- vc
- vs2015_runtime
- wheel
- wincertstore
- zipp
- zlib
- antlr4-python3-runtime
- chardet
- charset-normalizer
- decorator
- deepdiff
- idna
- importlib-resources
- jsonpath-ng
- jsonschema
- markdown
- multipledispatch
- ordered-set
- ply
- pycparser
- pyrsistent
- pythonnet
- requests
- six
- types-markdown
- untangle
- urllib3
- xlsxwriter
- semi-ate-stdf
- pip:
- api4jenkins
- jsonmerge
- json-checker
- logging-logger
- nesteddict
results in a new conda environment (using conda env create -f environment.yml --prefix .\ong_env
) of about 700 MB.
If I just move the line - semi-ate-stdf
one line down (to use the pip version of semi-ate instead of the conda-forge one), the resulting environment is 213 MB in size! I am clear about the reason - conda-forge introduces some new dependencies that are huge (like clang and qt5).
The question is why is conda-forge requiring so many additional packages that pip does not need. Mark that both tools (conda as well as pip) install version 0.1.26 of semi-ate.
Or is there a way to tell conda to create an environment that is "as small as possible", although I would think that already is the default, isn't it?
As we store our virtual environment in SVN and many users need to check it out of the repository the increased size - by a factor of more than 3 - makes a huge difference to us.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最新的PYPI版本(v0.1.26)需求,但是Conda食谱没有正确更新此元数据。由于PYQT需要QT,这是一个巨大的框架,这可能是大多数人的起源,并且在描述的两个环境之间是差异的。
已提交了拉动请求以纠正这一点,因此,最终,一旦合并和构建分布,您应该能够从Conda版本中获得更可比的环境大小。
The latest PyPI version (v0.1.26) dropped a PyQt requirement, but the Conda recipe didn't correctly update this metadata. Since PyQt entails Qt, which is a huge framework, that is likely where most of the heft is originating and would be differential between the two environments described.
A pull request has been filed to correct this, so eventually you should be able to get a more comparable environment size out of the Conda version once that merges and the build distributes.