| Home | Trees | Indices | Help |
|
|---|
|
|
EntropyRepository implements SQLite3 based storage. In a Model-View based pattern, it can be considered the "model". Actually it's the only one available but more model backends will be supported in future (which will inherit this class directly).
Every Entropy repository storage interface MUST inherit from this base class.
To Do: refactoring and generalization needed
| Nested Classes | |
| Schema | |
| Instance Methods | |||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
| bool |
|
||
|
|||
| list |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
| set |
|
||
| tuple |
|
||
|
|||
|
|||
|
|||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
| int |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
| tuple |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
| dict |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
| Method Details |
EntropyRepository constructor.
|
Change low-level, storage engine based cache size.
|
Change default low-level, storage engine based cache size.
|
Close repository storage communication. Note: once issues this, you won't be able to use such instance anymore. |
Server-side function used to determine whether repository database has been modified.
|
WARNING: it will erase your database. This method (re)initialize the repository, dropping all its content. |
This method should be considered internal and not suited for general audience. Given a raw package name/slot updates list, it returns the action that should be really taken because not applied.
|
docstring_title
|
docstring_title
|
docstring_title
|
Erase dead Source Package Manager db entries.
To Do: make more Portage independent (create proper entropy.spm methods for dealing with this) |
Update or add a package to repository automatically handling
its scope and thus removal of previous versions if requested by
the given metadata.
etpData is a dict() containing all the information bound to
a package:
{
'signatures':
{
'sha256': u'zzz',
'sha1': u'zzz',
'sha512': u'zzz'
},
'slot': u'0',
'datecreation': u'1247681752.93',
'description': u'Standard (de)compression library',
'useflags': set([u'kernel_linux']),
'eclasses': set([u'multilib']),
'config_protect_mask': u'string string', 'etpapi': 3,
'mirrorlinks': [],
'cxxflags': u'-Os -march=x86-64 -pipe',
'injected': False,
'licensedata': {u'ZLIB': u"lictext"},
'dependencies': {},
'chost': u'x86_64-pc-linux-gnu',
'config_protect': u'string string',
'download': u'packages/amd64/4/sys-libs:zlib-1.2.3-r1.tbz2',
'conflicts': set([]),
'digest': u'fd54248ae060c287b1ec939de3e55332',
'size': u'136302',
'category': u'sys-libs',
'license': u'ZLIB',
'needed_paths': {},
'sources': set(),
'name': u'zlib',
'versiontag': u'',
'changelog': u"text",
'provide': set([]),
'trigger': u'text',
'counter': 22331,
'messages': [],
'branch': u'4',
'content': {},
'needed': [(u'libc.so.6', 2)],
'version': u'1.2.3-r1',
'keywords': set(),
'cflags': u'-Os -march=x86-64 -pipe',
'disksize': 932206, 'spm_phases': None,
'homepage': u'http://www.zlib.net/',
'systempackage': True,
'revision': 0
}
@param etpData: Entropy package metadata dict
@type etpData: dict
@keyword forcedRevision: force a specific package revision
@type forcedRevision: int
@keyword formattedContent: tells whether content metadata is already
formatted for insertion
@type formattedContent: bool
@return: tuple composed by
- idpackage: unique Entropy Repository package identifier
- revision: final package revision selected
- etpData: new Entropy package metadata dict
@rtype: tuple
|
Return a list of packages that would be removed given name, category, slot and injection status.
|
Add package to this Entropy repository. The main difference between handlePackage and this is that from here, no packages are going to be removed, in any case. For more information about etpData layout, please see handlePackage().
|
Remove package from this Entropy repository using it's identifier (idpackage).
|
Remove source packages mirror entries from database for the given mirror name. This is a representation of Portage's "thirdpartymirrors".
|
Add source package mirror entry to database. This is a representation of Portage's "thirdpartymirrors".
|
Add package category string to repository. Return its identifier (idcategory).
|
Add a single, generic CONFIG_PROTECT (not defined as _MASK/whatever here) path. Return its identifier (idprotect).
|
Add source code package download path to repository. Return its identifier (idsource).
|
Add dependency string to repository. Return its identifier (iddependency).
|
Add package SPM keyword string to repository. Return its identifier (idkeyword).
|
Add package USE flag string to repository. Return its identifier (iduseflag).
|
Add package SPM Eclass string to repository. Return its identifier (ideclass).
|
Add package libraries' ELF object NEEDED string to repository. Return its identifier (idneeded).
|
Add package license name string to repository. Return its identifier (idlicense).
|
Add package Compiler flags used to repository. Return its identifier (idflags).
|
Mark a package as system package, which means that entropy.client will deny its removal.
|
Mark package as injected, injection is usually set for packages manually added to repository. Injected packages are not removed automatically even when featuring conflicting scope with other that are being added. If a package is injected, it means that maintainers have to handle it manually.
|
Update the creation date for package. Creation date is stored in string based unix time format.
|
Set package file md5sum for package. This information is used by entropy.client when downloading packages.
|
Set package file extra hashes (sha1, sha256, sha512) for package.
|
Set download URL prefix for package.
|
Set category name for package.
|
Set description for given category name.
|
Set name for package.
|
Set dependency string for iddependency (dependency identifier).
|
Set atom string for package. "Atom" is the full, unique name of a package.
|
Set slot string for package. Please refer to Portage SLOT documentation for more info.
|
Remove license text for given license name identifier.
|
Remove all the dependencies of package.
|
Insert dependencies for package. "depdata" is a dict() with dependency strings as keys and dependency type as values.
|
Insert manually added dependencies to dep. list of package.
|
Remove content metadata for package.
|
Insert content metadata for package. "content" can either be a dict() or a list of triples (tuples of length 3, (idpackage, path, type,)).
|
Insert paths where given ELF obj (library) name can be located. "library" is an ELF object name.
|
Insert configuration files automerge information for package. "automerge_data" contains configuration files paths and their belonging md5 hash. This features allows entropy.client to "auto-merge" or "auto-remove" configuration files never touched by user.
|
Remove configuration files automerge information for package. "automerge_data" contains configuration files paths and their belonging md5 hash. This features allows entropy.client to "auto-merge" or "auto-remove" configuration files never touched by user.
|
Remove extra package file hashes (SHA1, SHA256, SHA512) for package.
Entropy package files metadata contains up to 4 hashes:
md5, sha1, sha256, sha512
While md5 is here for historical reasons (being the first supported)
sha1, sha256, sha512 have been added recently and located into a
separate database table called "packagesignatures". Such hashes
can be not available for older packages, so don't be scared, aliens
are not to blame.
@param idpackage: package indentifier
@type idpackage: int
|
Remove Source Package Manager phases for package. Entropy can call several Source Package Manager (the PM which Entropy relies on) package installation/removal phases. Such phase names are listed here.
|
Insert package changelog for package (in this case using category + name as key).
|
Remove ChangeLog for package (in this case using category + name as key)
|
insert license data (license names and text) into repository.
|
Insert CONFIG_PROTECT (configuration files protection) entry identifier for package. This entry is usually a space separated string of directory and files which are used to handle user-protected configuration files or directories, those that are going to be stashed in separate paths waiting for user merge decisions.
|
Insert list of "mirror name" and "mirror list" into repository. The term "mirror" in this case references to Source Package Manager package download mirrors. Argument format is like this for historical reasons and may change in future.
To Do: change argument format |
Insert keywords for package. Keywords are strings contained in package metadata stating what architectures or subarchitectures are supported by package. It is historically used also for masking packages (making them not available).
|
Insert Source Package Manager USE (components build) flags for package.
|
Insert package file extra hashes (sha1, sha256, sha512) for package.
|
Insert Source Package Manager phases for package. Entropy can call several Source Package Manager (the PM which Entropy relies on) package installation/removal phases. Such phase names are listed here.
|
Insert source code package download URLs for idpackage.
|
Insert dependency conflicts for package.
|
Insert user messages for package.
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title
|
docstring_title |
docstring_title
|
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
Returns whether branch migration metadata given by the provided key (repository, from_branch, to_branch,) is available.
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title
|
docstring_title
|
This method returns branch migration metadata stored in Entropy Client database (installed packages database). It is used to determine whether to run per-repository branch migration scripts.
|
docstring_title |
docstring_title |
docstring_title
|
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title
|
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title
|
docstring_title
|
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title |
docstring_title
|
docstring_title |
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
docstring_title
|
| Home | Trees | Indices | Help |
|
|---|
| Generated by Epydoc 3.0.1 on Wed Aug 5 16:58:54 2009 | http://epydoc.sourceforge.net |