Fabio Erculiani
ad74ade00c
[entropy.db] add MySQL connector (barely tested !!!)
2012-08-08 18:47:25 +02:00
Fabio Erculiani
a1e7d92bfb
[entropy.db.sqlite] trivial fixes (remove imports, catch IOError, etc)
2012-08-08 17:10:20 +02:00
Fabio Erculiani
a7f958afd1
[entropy.db] split entropy.db package module into cache and sqlite
2012-08-08 11:11:42 +02:00
Fabio Erculiani
0c15d697a3
[entropy.spm] PortagePlugin._extract_pkg_metadata_content: filter out empty path strings
2012-08-08 00:37:40 +02:00
Fabio Erculiani
3ffbbcb49d
[entropy.client.package] _generate_content_file: do not catch Exception
...
Move the os.remove() call to the finally block and detect failures via
a status boolean. This way, warnings won't be raised as exceptions.
2012-08-07 22:02:37 +02:00
Fabio Erculiani
58cb8adf96
[entropy.client.package] _generate_content_safety_file: do not catch Exception
...
Move the os.remove() call to the finally block and detect failures via
a status boolean. This way, warnings won't be raised as exceptions.
2012-08-07 22:02:21 +02:00
Fabio Erculiani
55472f77e2
Release Entropy 1.0_rc131
2012-08-05 22:33:41 +02:00
Fabio Erculiani
cc93458fd1
[entropy.client.methods] optimize reorder_mirrors() configuration commit code
...
Move reorder_mirrors() logic to benchmark_mirrors() for easier code
reuse. Avoid touching Repository objects and clearing SystemSettings
metadata but rather atomically update them in place.
2012-08-03 15:41:39 +02:00
Fabio Erculiani
87f882357f
[entropy.client.methods] reorder_mirrors: make it atomic
2012-08-03 14:19:02 +02:00
Fabio Erculiani
af5a573d23
[entropy.client.methods] reorder_mirrors: enforce a reasonable upper bound timeout value
2012-08-03 14:18:23 +02:00
Fabio Erculiani
4a77fd59dd
[entropy.client.methods] fix typos in docstring
2012-08-03 14:17:58 +02:00
Fabio Erculiani
5a24d2c174
[entropy.fetchers] make possible to override the default timeout
2012-08-03 14:15:42 +02:00
Fabio Erculiani
a7358e63eb
[entropy.client.methods] split internal add/remove repository functions
2012-08-03 13:50:11 +02:00
Fabio Erculiani
76e045d7b6
[entropy.client.methods] add "commit" keyword arg to reorder_mirrors()
2012-08-03 13:28:27 +02:00
Fabio Erculiani
eb71741246
[entropy.client.package] remove tmp_file_content in the finally statement
...
Doing so in the Exception "handler" code messes up the traceback
information useful for debugging other possible issues.
2012-08-02 00:36:19 +02:00
Fabio Erculiani
8dc597c19d
Release Entropy 1.0_rc130
2012-08-01 22:41:09 +02:00
Fabio Erculiani
11d013094e
[entropy.client] use bytestring when dealing with the os module functions
...
In Python 2.x, the os module only works with bytestring. Using unicode
with it causes errors with multibyte characters (test pkgs: aspell-es,
aspell-pt) resulting in leftover files when removing package content.
2012-08-01 22:37:55 +02:00
Fabio Erculiani
c803b94533
[entropy.client] generate items_installed with unicode objects, not bytestring
2012-08-01 22:37:25 +02:00
Fabio Erculiani
0eec9cd4e9
[entropy.client] file_items_installed Set is no longer used, remove
2012-08-01 22:34:21 +02:00
Fabio Erculiani
cf86ca664d
[entropy.client.trigger] call environment_update() whenever ENV_DIRS have been touched
2012-08-01 18:48:12 +02:00
Fabio Erculiani
9c563f4bd6
[entropy.spm] expose the ENV_DIRS class variable, bump API
2012-08-01 18:47:45 +02:00
Fabio Erculiani
d08a02cf71
Release Entropy 1.0_rc129
2012-07-31 19:37:35 +02:00
Fabio Erculiani
3c57ec70c3
[entropy.client.interfaces.trigger] make "SPM" string translatable
2012-07-31 11:00:19 +02:00
Fabio Erculiani
8b8938116b
Revert "[entropy.db] drop isPackageScopeAvailable(), unused"
...
This reverts commit 492ace12e8 .
2012-07-30 22:19:05 +02:00
Fabio Erculiani
a43c399901
Release Entropy 1.0_rc128
2012-07-28 20:24:35 +02:00
Fabio Erculiani
2bdddef33e
[entropy.client] speedup dependencies_test() with a bit of memoization
2012-07-28 20:01:56 +02:00
Fabio Erculiani
10bf68d6ee
[entropy.server] _deps_tester: use memoization with dependency strings
2012-07-28 19:54:38 +02:00
Fabio Erculiani
1977decccd
[entropy.client.package] reduce memory consumption by writing "content_safety" to disk
2012-07-28 19:45:36 +02:00
Fabio Erculiani
89e7fcf949
[entropy.db] add "get_content_safety" keyword argument to getPackageData()
2012-07-28 19:38:59 +02:00
Fabio Erculiani
044365876b
[entropy.db] add EntropyRepository.retrieveContentSafetyIter()
2012-07-28 18:07:46 +02:00
Fabio Erculiani
79b3e129f5
[entropy.client] reduce the memory footprint greatly when installing big packages
...
This commit introduces a file-based iterator that can be used for
storing package file content objects. For packages like kernel
sources, the actual memory consumption caused by holding the whole
metadata in memory was quite big and not really nice wrt memory
constrained systems (ARM?).
This commit handles most (retrieveContentSafety() is also a friend
of malloc()) of the memory hogs activities.
2012-07-28 17:05:32 +02:00
Fabio Erculiani
ed5b2640ea
[entropy.db] always commit() uncommitted transactions after _setSetting()
2012-07-28 16:37:42 +02:00
Fabio Erculiani
192bb79230
[entropy.db] always force unicode() on _setSettings() arguments
...
It looks like the "INSERT OR REPLACE" doesn't work when row elements
are non-unicode. It seems to be the "OR REPLACE" clause that is
flawed.
The outcome was that values didn't really get updated and a transaction
was left uncommitted. This commit fixes the unicode part of the
problem though.
2012-07-28 16:35:52 +02:00
Fabio Erculiani
5ece150aea
[entropy.db] add "extended" keyword argument to contentDiff()
2012-07-28 15:32:45 +02:00
Fabio Erculiani
8f4b58b449
[entropy.db] EntropyRepository.retrieveContentIter: add reverse keyword argument
2012-07-28 10:48:52 +02:00
Fabio Erculiani
7058db3f0a
[entropy.client] simplify content_file Trigger code by passing pre-made metadata
2012-07-28 10:40:29 +02:00
Fabio Erculiani
251d1afca3
[entropy.tools] use less memory when calling uncompress_tarball with huge tarballs
2012-07-28 10:14:20 +02:00
Fabio Erculiani
9c06a380f5
[entropy.client] use retrieveContentIter during Package install
2012-07-27 23:26:19 +02:00
Fabio Erculiani
abb9e515ad
[tests] fix EntropyCacher test
2012-07-27 22:30:07 +02:00
Fabio Erculiani
9e819f8083
[entropy.db] EntropyRepository: when migrating to the new schema, drop _doesColumnInTableExist cache
2012-07-27 22:21:56 +02:00
Fabio Erculiani
a116bb7a92
[entropy.db] EntropyRepository.insertContent: improve memory consumption with iterators
2012-07-27 20:38:38 +02:00
Fabio Erculiani
8e5a062755
[entropy.db] reduce contentDiff() memory footprint by using retrieveContentIter()
2012-07-27 19:37:34 +02:00
Fabio Erculiani
a8d01a482f
[entropy.client.package] reduce installed_repository() calls
2012-07-27 17:36:34 +02:00
Fabio Erculiani
ead457ef8d
[entropy.qa] use retrieveContentIter() where possible
2012-07-27 17:05:35 +02:00
Fabio Erculiani
59aaafd3c3
[entropy.db] extend retrieveContentIter() docstring with important info
2012-07-27 16:34:43 +02:00
Fabio Erculiani
d75ce83086
[entropy.db] restructure indexes
...
This commits improves the sqlite3 db indexes used optimizing them
both in terms of quantity (dropping duplicate indexes) and in terms
of quality (add missing indexes)
2012-07-27 13:26:18 +02:00
Fabio Erculiani
12efc718c0
[entropy.db] add whitespaces, remove trailing whitespaces
2012-07-26 23:07:01 +02:00
Fabio Erculiani
c8178b3cd6
[entropy.db] kill more >80 columns rows
2012-07-26 23:05:41 +02:00
Fabio Erculiani
492ace12e8
[entropy.db] drop isPackageScopeAvailable(), unused
2012-07-26 22:57:09 +02:00
Fabio Erculiani
6b95cecfdb
[entropy.db] uniform _createCompileFlagsIndex to others (catch OperationalError)
2012-07-26 22:05:05 +02:00