Commit Graph

1260 Commits

Author SHA1 Message Date
Fabio Erculiani af6fa0d32f [entropy.spm] PortagePlugin: add clear() to API, see documentation 2013-12-31 16:52:52 +01:00
Fabio Erculiani 0a9fbaf0df Release Entropy 259 2013-12-31 16:02:38 +01:00
Fabio Erculiani cf9fc1b947 Release Entropy 258 2013-12-31 15:17:41 +01:00
Fabio Erculiani 0346f74c1a [entropy.client.package] catch InterruptError raised by fetch_abort functions 2013-12-31 12:28:29 +01:00
Fabio Erculiani c5adbc0b20 Release Entropy 257 2013-12-27 19:21:09 +01:00
Fabio Erculiani b088df88bd [entropy.cache] EntropyCacher: drop CACHE_IDS (\o/) and clear_cache() 2013-12-27 19:15:20 +01:00
Fabio Erculiani 4fc40101ec [entropy.core.settings.base] drop any explicit clear_cache() call
clear_cache() is no longer required since cache keys are now
correctly generated.
2013-12-27 19:12:05 +01:00
Fabio Erculiani f7bebcba0f [entropy.core.settings.base] drop _clear_repository_cache(), no longer needed 2013-12-27 19:03:53 +01:00
Fabio Erculiani 1d42427eb1 [entropy.core.settings.base] add license_accept and system_mask to packages_configuration_hash() 2013-12-27 19:02:40 +01:00
Fabio Erculiani 29af516046 [entropy.client.methods] drop _clear_repository_cache() usage
This is no longer needed because cache keys are now properly generated
2013-12-27 18:51:39 +01:00
Fabio Erculiani df6d28f58f [entropy.client.db] stop using EntropyCacher.CACHE_IDS['mask_filter']
Use atomMatchCacheKey() instead
2013-12-27 18:50:41 +01:00
Fabio Erculiani 6d1f2ab77f [entropy.db.skel] expose atomMatch cache key generation hook
This method adds atomMatchCacheKey() that can be reimplemented
by subclasses in order to cooperatively generate a cache key for
atomMatch calls.
2013-12-27 18:49:21 +01:00
Fabio Erculiani b2fe272ebf [entropy.client.dep] use ClientSettings.packages_configuration_hash() as part of cache keys 2013-12-27 18:05:29 +01:00
Fabio Erculiani f31cdb59ff [entropy.client.settings] add packages_configuration_hash()
This method serves the purpose of returning a hash of the current
packages configuration (masking, unmasking, keywording, etc).
This will be used by upper layers as part of cache keys generation.
2013-12-27 17:56:02 +01:00
Fabio Erculiani 68e664c947 [entropy.client.dep] use SystemSettings.packages_configuration_hash() for cache validation 2013-12-27 17:34:23 +01:00
Fabio Erculiani d461ffa02f [entropy.core.settings.base] introduce packages_configuration_hash()
This method serves the purpose of returning a hash of the current
packages configuration (masking, unmasking, keywording, etc).
This will be used by upper layers as part of cache keys generation.
2013-12-27 17:22:49 +01:00
Fabio Erculiani 1f75376b8e [entropy.cache] drop EntropyCacher.CACHE_IDS['db_match']
This is no longer needed.
2013-12-27 16:44:19 +01:00
Fabio Erculiani 6c9ffc0e59 Release Entropy 256 2013-12-26 23:05:39 +01:00
Fabio Erculiani 2a034e4a05 [entropy.client.methods] add an "unlocked" version of get_package_action() 2013-12-26 22:52:13 +01:00
Fabio Erculiani 11e6d596b8 [entropy.db.sqlite] do not clear the cache if locks are already acquired 2013-12-26 22:52:13 +01:00
Fabio Erculiani 603c96fc05 [entropy.locks] add is_already_acquired()
This method returns whether the lock has been already acquired.
It is useful in cases where the reentrancy property is leveraged.
2013-12-26 22:52:13 +01:00
Fabio Erculiani 528d4ff116 [entropy.client.dep] drop unused imports 2013-12-26 22:52:13 +01:00
Fabio Erculiani 6b3e5810fc [entropy.client.settings] drop repos_installed{_keys,} settings metadata
Load the related data ondemand whenever it is needed, save SystemSettings
load time and avoid problems with stale information.
2013-12-26 22:52:13 +01:00
Fabio Erculiani 4da9953a71 [entropy.cache] drop EntropyCacher.CACHE_IDS['atom_match'] 2013-12-26 22:52:13 +01:00
Fabio Erculiani be311e7045 [entropy.cache] drop EntropyCacher.CACHE_IDS['atom_search'] 2013-12-26 22:52:13 +01:00
Fabio Erculiani 0f59b909c9 [entropy.cache] drop EntropyCacher.CACHE_IDS['dep_tree'] 2013-12-26 22:52:13 +01:00
Fabio Erculiani 55faf98b59 [entropy.cache] drop EntropyCacher.CACHE_IDS['check_package_update'] 2013-12-26 22:52:13 +01:00
Fabio Erculiani 6121ab63bc [entropy.cache] drop EntropyCacher.CACHE_IDS['depends_tree'] 2013-12-26 22:52:13 +01:00
Fabio Erculiani 3bb2abc102 [entropy.cache] drop EntropyCacher.CACHE_IDS['library_breakage'] 2013-12-26 22:52:13 +01:00
Fabio Erculiani cbe52e67ce [entropy.cache] drop EntropyCacher.CACHE_IDS['filter_satisfied_deps'] 2013-12-26 22:52:12 +01:00
Fabio Erculiani 3fb6905387 [entropy.cache] drop EntropyCacher.CACHE_IDS['world_update'] 2013-12-26 22:52:12 +01:00
Fabio Erculiani 57e2ab5ec8 [entropy.core] when clearing repository cache, don't clear the whole cache
This is no longer needed since cache keys are now properly generated
2013-12-26 22:52:12 +01:00
Fabio Erculiani 4c0bbd0789 [entropy.client.cache] drop methods used by the dep module only 2013-12-26 22:52:12 +01:00
Fabio Erculiani cd199b0496 [entropy.client.dep] fix format string typo 2013-12-26 22:52:12 +01:00
Fabio Erculiani a8bdb9a4ea [entropy.cache] drop EntropyCacher.CACHE_IDS['critical_update'] 2013-12-26 22:52:12 +01:00
Fabio Erculiani 034061620c [entropy.cache] drop EntropyCacher.CACHE_IDS['world_masked'] 2013-12-26 22:52:12 +01:00
Fabio Erculiani 01e54a75b9 [entropy.cache] drop EntropyCacher.CACHE_IDS['world_available'] 2013-12-26 22:52:12 +01:00
Fabio Erculiani 55f5d892aa [entropy.client.settings] add installed packages repository locking support 2013-12-26 22:52:12 +01:00
Fabio Erculiani e976ea337c [entropy.client.methods] add installed packages repository locking support 2013-12-26 22:52:12 +01:00
Fabio Erculiani b4f445a61b [entropy.client.repository] drop entropy_updates_alert argument
This is no longer useful for the implemented use cases
2013-12-26 22:52:12 +01:00
Fabio Erculiani cf3305ed43 [entropy.client.repository] do not check the instance type of installed_repository
This check is no longer needed
2013-12-26 22:52:12 +01:00
Fabio Erculiani d2c47cc3ba [entropy.client.db] add installed packages repository locking support 2013-12-26 22:52:12 +01:00
Fabio Erculiani 12c34ab8d4 [entropy.client.dep] add installed packages repository locking support 2013-12-26 22:52:12 +01:00
Fabio Erculiani f143614555 [entropy.client.client] add installed packages repository locking support 2013-12-26 22:52:12 +01:00
Fabio Erculiani 6f44f5c40a [entropy.locks] UpdatesNotificationResourceLock: do not dictate any particular lock mode 2013-12-26 22:52:12 +01:00
Fabio Erculiani 69d4473249 [entropy.locks] introduce UpdatesNotificationResourceLock
This will make possible to stop available updates notifications
from being issued while an install/upgrade is in progress
2013-12-26 22:52:12 +01:00
Fabio Erculiani 8049f88c56 [entropy.locks] make sure not to leak fds when using non-blocking calls 2013-12-26 22:52:12 +01:00
Fabio Erculiani ca862463d4 [entropy.locks] make sure not to leak fds when using non-blocking calls 2013-12-26 22:52:12 +01:00
Fabio Erculiani cf8984982a [entropy.output] sychronize writes to stdout/stderr to avoid garbled output
In a multithreaded scenario, text may get garbled if there is no
synchronization between threads wrt the shared resources (std{out,err}).
This happens even when stdio buffering is enabled, of course.
2013-12-26 22:52:12 +01:00
Fabio Erculiani 8ed4bff872 Revert "[entropy.client.package] synchronize text output calls to avoid garbled output"
This reverts commit e722455432317516235e56fb386a60f05d237804.
2013-12-26 22:52:11 +01:00