buildout.locallib use egg-packages installed on site-packages folder.
zc.buildout check package installation by zc.buildout.easy_install.Installer that exclude /path/to/site-packages folder path for checking.
When ‘site-packages’ folder include some easy-installed packages, We want to re-use these packages in some cases.
Features
Extends zc.buildout functionality to search installed packages.
create dummy ‘.egg-info’ / ‘.egg-link’ for specified packages.
Using sample: using buildout.locallib extension
site-packages include some eggs:
$ ls /path/to/site-packages easy-install.pth pip-0.6.3-py2.6.egg/ pastedeploy-1.3.3-py2.6.egg/ pastescript-1.7.3-py2.6.egg/ paste-1.7.4-py2.6.egg/ setuptools-0.6c11-py2.6.egg setuptools.pth
write buildout.cfg:
[buildout]
parts = foo
[foo]
recipe = zc.recipe.egg
eggs =
PasteScript
run bootstrap and buildout:
$ python bootstrap.py $ bin/buildout -U ...
list eggs dir:
$ ls eggs zc.recipe.egg-1.2.3b2-py2.6.egg pastescript-1.7.3-py2.6.egg pastedeploy-1.3.3-py2.6.egg paste-1.7.4-py2.6.egg
(clean-up):
$ rm -R eggs
Now update buildout.cfg to use buildout.locallib extension:
[buildout] parts = foo extensions = buildout.locallib ...
And run buildout again:
$ bin/buildout -U ...
Check your eggs folder again:
$ ls eggs buildout.locallib-0.0.1-py2.6.egg zc.recipe.egg-1.2.3b2-py2.6.egg
If package exists at site-packages folder, now using installed version packages.
Using sample: specified dummy package information
site-packages include some libraries, but they are not installed by easy_insttall:
$ ls /path/to/site-packages ... feedparser.py ...
write buildout.cfg with locallibs key and section:
[buildout]
parts = foo
newest = false #if you won't want to check newest version (network-access)
extensions = buildout.locallib
locallibs = locallibs
[foo]
recipe = zc.recipe.egg
eggs =
feedparser
[locallibs]
feedparser = feedparser==4.1
locallibs section require (dummy name) = (pkg name)==(version) style key-value pairs. Then, buildout.locallib create dummy feedparser-4.1.egg-info into the develop-eggs directory. In this way, setuptools recognizes that a ‘feedparser’ is installed and doesn’t perform downloading.
If target package have .egg-info file/directory, you don’t need to write a version like below:
[locallibs] PIL = PIL
But, if you omit a version for no-egg-info package, buildout.locallib can’t recognize package version, then it’ll cause DistributionNotFound exception. If you want to avoid this exception, you should set locallibs_check = false in buildout section.
Options
- locallibs
A dictionary mapping package names to skip installing distribution that was installed on python’s site-packages directory already. This can be used to specify a set of distribution versions independent of other requirements.
- locallibs_check
default is ‘true’. buildout.locallib check distribution existing on site-packages and raise exception if distribute was not found. If set ‘false’, skip check.
Requirements
Python 2.4 or later
Dependencies
Setup
Write buildout.cfg with extensions = buildout.locallib:
[buildout] parts = foo extensions = buildout.locallib ...
ToDo
Write tests.
cleanup develop-eggs folder.
History
0.3.1 (2013-8-18)
Fix: create develop-eggs directory if missing.
0.3.0 (2011-3-31)
Add: locallibs_check option is now available.
0.2.0 (2010-7-12)
Add: create dummy ‘.egg-info’ / ‘.egg-link’ for specified packages.
0.1.0 (2010-6-27)
first release
Metadata
Release files for buildout.locallib 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| buildout.locallib-0.3.1.tar.gz | 4.9 kB | Without provenance | Details for buildout.locallib-0.3.1.tar.gz |
Release files / buildout.locallib-0.3.1.tar.gz
| Download URL | buildout.locallib-0.3.1.tar.gz |
|---|---|
| Size | 4.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7c4689781d364a16440ccc0d727d45ed8241d9e7916556b0105d21b3f79a985a
|
|
BLAKE2b-256 checksum How to use checksums |
7212680b18607c09d5309841003e58f83557bdd6c938d2c0cd2562f304d3c2ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for buildout.locallib 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.