Commit Graph

1000 Commits

Author SHA1 Message Date
Fabio Erculiani
548d579d2f [entropy.client.package] add initial preserved libraries support class 2013-11-26 20:53:00 +01:00
Fabio Erculiani
86cdf058a3 [entropy.tools] move struct import to global scope 2013-11-26 11:18:34 +01:00
Fabio Erculiani
ff461f4676 [entropy.client.package] add _PackageFetchAction.package_path() for PackageKit 2013-11-23 20:24:22 +01:00
Fabio Erculiani
70a0a1c983 [entropy.client.interfaces.package] drop unused metadata 2013-11-23 14:15:05 +01:00
Fabio Erculiani
005ac42610 [tests] port code to the new PackageActionFactory API 2013-11-23 13:58:39 +01:00
Fabio Erculiani
453481204d [entropy.client.interfaces.package] split Package class, create new API
The Package has been split into multiple PackageAction based classes.
The new interface uses a factory (PackageActionFactory) to build
the PackageAction objects on behalf of the caller.

The new factory-based interface is clean, modular and faster than
the old Package spaghetti class.

Backward compatibility has been preserved, as long as caller doesn't
peek into internal structures and metadata. The old interface has
been deprecated and a new Entropy Client method called PackageActionFactory()
has been added.

Please migrate your code to the new API, the old API will be dropped in 1
solar year.
2013-11-23 13:00:53 +01:00
Fabio Erculiani
44444b43d8 [entropy.client.misc] drop unused variables 2013-11-22 19:00:29 +01:00
Fabio Erculiani
8f083449a6 [entropy.client.misc] drop deprecated class, sulfur is dead 2013-11-22 18:12:23 +01:00
Fabio Erculiani
1b6e7ff2ff [entropy.client.package] move FileContent* classes to separate module 2013-11-22 15:17:38 +01:00
Fabio Erculiani
7fe3c021bd [entropy.client] move package.py to Python package 2013-11-22 15:00:14 +01:00
Fabio Erculiani
69fb71f957 [entropy.client.package] code style updates 2013-11-22 14:02:49 +01:00
Fabio Erculiani
c04f2c5a50 [entropy.client.package] pylint sweep 2013-11-22 13:57:14 +01:00
Fabio Erculiani
ddfdc51791 [entropy.client.package] make _handle_config_protect() faster, use sets 2013-11-22 13:42:06 +01:00
Fabio Erculiani
782ec72fd6 [entropy.const] drop all the config_protect+mask objects from etpConst 2013-11-22 13:40:13 +01:00
Fabio Erculiani
d41aa402ba [entropy.client.package] rewrite config_protect+mask handling code
Improve code quality, remove several redundant parts, use set()
objects instead of list() for both protect and mask data.
Improve speed, save the world.
2013-11-22 12:54:38 +01:00
Fabio Erculiani
36b38487a4 [entropy.client.package] some cleanups 2013-11-22 12:24:49 +01:00
Fabio Erculiani
41988b7002 [entropy.client.package] fix config protect and mask handling
We must collect the configuration protection and masking bits before
the installed package metadata goes away. This is true for both
install and removal paths.
2013-11-22 12:17:48 +01:00
Fabio Erculiani
9c73be1d03 [entropy.client.interfaces.package] drop type checking 2013-11-22 11:04:43 +01:00
Fabio Erculiani
3d7b00725b [entropy.tools] drop stale comments 2013-11-22 11:04:25 +01:00
Fabio Erculiani
7091c56fe0 [entropy.tools] rewrite read_elf_linker_paths(), improve speed, add tests 2013-11-21 16:43:18 +01:00
Fabio Erculiani
60af35b748 [entropy.tools] rewrite read_elf_broken_symbols(), add tests 2013-11-21 16:30:51 +01:00
Fabio Erculiani
70fc459840 [entropy.tools] rewrite read_elf_real_dynamic_libraries(), add tests 2013-11-21 16:05:29 +01:00
Fabio Erculiani
1f6805d389 [entropy.tools] fix FileNotFound exception handling 2013-11-21 15:48:36 +01:00
Fabio Erculiani
5509272fdd [entropy.tools] rewrite read_elf_dynamic_libraries(), make it use scanelf 2013-11-21 15:48:17 +01:00
Fabio Erculiani
efeefa1d7c Release Entropy 234 2013-11-21 13:05:33 +01:00
Fabio Erculiani
14f4b7b8c5 [entropy.spm] PortagePlugin: drop the old license setup code, fix portage >=2.2.0_alpha189 support
The old license setup code is no longer needed since 2009. EAPI < 3
use ACCEPT_PROPERTIES="* -interactive", which is now set in the environment
(note that we may want to reduce the scope of the variable to portage.config
in the future). EAPI >= 3 use ACCEPT_LICENSE. check_license() in
eutils.eclass is gone as well.
2013-11-21 12:39:05 +01:00
Fabio Erculiani
96ef5868f4 [entropy.db] initial repository database support for preserved libraries 2013-11-20 17:09:48 +01:00
Fabio Erculiani
66f1463488 Release Entropy 233 2013-11-20 12:34:41 +01:00
Fabio Erculiani
d089978b74 Revert "[entropy.db.cache] add timed expiration support for cached elements"
This reverts commit 8b7c48c2d9.
2013-11-20 11:42:51 +01:00
Fabio Erculiani
d786c403c8 [entropy.db.sqlite] fix the retrieveDependencies cache invalidation paths 2013-11-20 11:38:53 +01:00
Fabio Erculiani
8b7c48c2d9 [entropy.db.cache] add timed expiration support for cached elements 2013-11-20 11:25:02 +01:00
Fabio Erculiani
47657d6285 [entropy.misc] ParallelTask: code style update 2013-11-20 11:15:53 +01:00
Fabio Erculiani
8124d071d6 Release Entropy 232 2013-11-19 22:10:36 +01:00
Fabio Erculiani
275f4d4c74 [entropy.server] validate missing dependency string using searchPackageIdFromDependencyId() 2013-11-19 22:08:34 +01:00
Fabio Erculiani
650a462632 [€ntropy.client] s/idpackage/package_id/ 2013-11-19 21:46:27 +01:00
Fabio Erculiani
8ce1f920e0 [entropy.server] s/idpackage/package_id 2013-11-19 21:38:24 +01:00
Fabio Erculiani
435b75effa Release Entropy 231 2013-11-19 21:21:12 +01:00
Fabio Erculiani
b1d0c40153 [entropy.server.interfaces.db] do not pull packages.db.light.bz2
There is no need to download this particular file because it will
be re-created from scratch by push.
2013-11-19 16:57:16 +01:00
Fabio Erculiani
0a1c08b1e8 [entropy.server] simplify _deps_tester(), improve speed 2013-11-19 14:51:10 +01:00
Fabio Erculiani
7eb0687ba9 [entropy.db] make listAllDependencies() public 2013-11-19 14:48:20 +01:00
Fabio Erculiani
1834dbe55d [entropy.db.sqlite] retrieveDependencies: final performance tweaks 2013-11-19 13:31:01 +01:00
Fabio Erculiani
66c01f339b [entropy.db.sqlite] simplify retrieveDependencies() code 2013-11-19 13:20:12 +01:00
Fabio Erculiani
a8d2ae3313 [entropy.db.sqlite] add in-RAM cache support for retrieveDependencies()
This seems to give 15% speed boost in certain scenarios
2013-11-19 13:06:52 +01:00
Fabio Erculiani
8e600c39ea [entropy.client] code style updates to dependencies_test() 2013-11-19 12:03:26 +01:00
Fabio Erculiani
016573701c [entropy.db.sql] fix retrieveDependencies() usage of resolve_conditional_deps 2013-11-19 11:18:05 +01:00
Fabio Erculiani
1c6fd47776 Release Entropy 230 2013-11-18 15:34:01 +01:00
Fabio Erculiani
9e2a324e83 [entropy.server.db] use revision from package data if none is forced
this avoids the generation of packages with lesser revisions during
package moves from a repo to another.
If we inherit the revision number, we should try to keep it as long
as there are no packages with greater revision number in the target
repository.
2013-11-18 15:20:02 +01:00
Fabio Erculiani
08e4b487bf [entropy.db] API change, handlePackage(forcedRevision -> revision) 2013-11-18 15:09:28 +01:00
Fabio Erculiani
7f6def42e7 Release Entropy 229 2013-11-17 18:39:52 +01:00
Fabio Erculiani
1f0750a183 [entropy.server] add another QA test, guard against revision downgrades 2013-11-15 12:39:49 +01:00