Commit Graph

384 Commits

Author SHA1 Message Date
lxnay 5337fdec11 Entropy/caches:
- remove cache global variables
- say goodbye to const_resetCache, not needed anymore


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2783 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-14 13:23:52 +00:00
lxnay e569355022 Entropy/entropyConstants:
- get rid of etpRemoteFailures and maskingReasonsStorage global variables
Entropy/EquoInterface:
- apply entropyConstants changes
- new method get_masked_package_reason
Entropy/EntropyDatabaseInterface:
- hack to control idpackageValidatorCache size


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2782 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-14 12:42:09 +00:00
lxnay e46fd159e5 Entropy/EquoInterface:
- allow tagging entropy packages by setting ENTROPY_PROJECT_TAG inside the ebuild


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2767 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-11 10:47:39 +00:00
lxnay f228e68597 Entropy/Equo:
- add support for package sets
Entropy/EquoInterface:
- group initConfig_entropyConstants calls in a stand-alone EquoInterface method
- half-implement in-memory repositories (will be completed upon request)
- atomMatch: support matchRepo for server-repos too
Entropy/TODO:
- update TODO
Entropy/EquoInterface:
- improve packageSetMatch method
- implement packagesExpand and packageSetExpand methods
Entropy/exceptionTools:
- implement new InvalidPackageSet exception


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2738 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-08 12:48:47 +00:00
lxnay fd85e10164 Entropy/EntropyDatabaseInterface:
- implement table structure for supporting package sets
- add methods to handle them: clearPackageSets(), insertPackageSets(), retrievePackageSets()
Entropy/Socket Server Interface:
- if command is not valid, return a CL answer
Entropy/Socket Server Client Interface:
- handle CL answers on receive()
Entropy/ServerInterface:
- add support for package sets, loading data from sets/ database dir subdirectory
- automatically handle them by updating the db at every change
Entropy/Repository Daemon:
- add EAPI3 support for package sets
Entropy/RepoInterface/EquoInterface:
- add support for package sets on sync
- add package sets match and search functions
more tomorrow


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2735 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-07 22:38:42 +00:00
lxnay 6f7cd190e9 Entropy/entropyTools:
- add extract_packages_from_set_file method, just a helper function
Entropy/Package Masking inteface reworked:
- etpConst['packagemasking'] is gone, the Package masking interface changed name, now it's called PackageSettings and is a standalone class that can work like a simple python dictionary object
- adapt all the code to the new interface, which is close to final and pretty solid if compared to the old one etpConst['packagemasking'] dict and its issues (like being un-initialized)
Entropy/Package sets support:
- implement server-side methods (ServerInterface) to collect repository-defined sets
Entropy/urlFetcher:
- move some init code to stand-alone functions (setup_proxy and setup_resume_support method)


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2733 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-07 19:28:05 +00:00
lxnay 48e409da0c Entropy/entropyConstants:
- empty system_packages list, we now have packages.db.system_mask, which is the best place to put system packages
Entropy/PortageInterface:
- add suport to package sets, introducing 3 new methods: get_set_config(), get_sets(), get_sets_expanded()


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2732 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-07 16:22:53 +00:00
lxnay 1a3b088ed1 Entropy/packages.db.mask syntax:
- remove branch parameter from file atoms syntax
- update code accordingly
Entropy/phpBB3AuthInterface:
- _generate_sql(): fix SQL update statement with utf-8 chars


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2730 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-07 13:08:01 +00:00
lxnay b44bf5350d Entropy/DistributionUGCInterface:
- add caching infrastructure to avoid running long queries multiple times returning the same result
- set cache expiration to 1 day by default


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2724 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-06 15:03:51 +00:00
lxnay fa969f42ce Entropy:
- remove the use of list.sort() method in favour of sorted(list)
- implement a per-repository system packages mask, to force clients to install specified packages (like one of the slotted sys-libs/db packages for convenience), consider this an extension to system packages


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2721 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-12-05 21:37:18 +00:00
lxnay 6d166039bd Entropy/entropyConstants:
- always enable Gentoo-compat, remove ability to disable it


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2691 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-18 12:49:26 +00:00
lxnay 9d21894af9 Entropy/DistributionUGCInterface:
- add search_iddoc_item method to search available document identifiers
Entropy/RepoInterface:
- implement system make.conf sanity check
- implement automatic /etc/make.profile updates
Entropy/entropyConstants:
- add rootdir prefix to spm configuration files
Entropy/entropy.py:
- general tidy
Entropy/entropyTools:
- add function to determine if a path is sane or not (is_valid_path)


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2658 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-09 16:06:20 +00:00
lxnay efe58d408d Entropy/DistributionUGCInterface:
- _get_ugc_extra_metadata(): if key is already provided, copy to pkgkey dict key
Entropy/SocketHostInterface:
- add command length limit setting, default to 768000 bytes
- fine tune the forked requests timeout, default to 300


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2649 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-05 12:04:58 +00:00
lxnay 6fc7c949ea Entropy/SocketHostInterface:
- reduce the forked requests timeout to 15 (from 300) seconds
- export the setting to etpConst


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2636 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-03 22:48:43 +00:00
lxnay 9c5301a74f Entropy/TriggerInterface:
- write more info about portage exceptions on relevant triggers
Entropy/PortageInterface:
- add two helper methods write_traceback_to_log() and write_to_log()
- fix an issue causing Portage to raise UnsupportedAPIException, doebuild()'s mysettings must contain a valid EAPI string


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2631 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-03 15:26:17 +00:00
lxnay 51e2d952f9 Entropy/SocketHostInterface:
- reduce session TTL by default
- add soft barrier to the simultaneous connections limit, adding random lag


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2625 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-02 20:55:36 +00:00
lxnay 5fcbe084e5 Entropy/SocketHostInterface:
- introduce max connections per IP limit
- introduce automatic PID killer on handle() when time is over (default timeout = 120 seconds)


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2618 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-11-02 11:00:59 +00:00
lxnay c7c8f2c2e1 Entropy/entropyConstants:
etpdatabasemissingdepswlfile -> etpdatabasemissingdepsblfile


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2575 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-26 15:22:05 +00:00
lxnay ff39cd9514 Entropy/ServerInterface/QAInterface:
- make possible to blacklist missing library dependencies at runtime and through packages.db.missing_deps_whitelist file inside the repository db directory


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2573 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-26 14:45:03 +00:00
lxnay 1dc14f2dca Entropy/EquoInterface:
- implement safe mode feature -> EquoInterface.safe_mode status integer, first function to use it is EquoInterface.openClientDatabase()
- openClientDatabase() make possible to start an EquoInterface instance with a corrupted/non-existant installed packages database (safe mode) which can be detected by client interfaces (Equo/Spritz)
Entropy/EntropyDatabaseInterface:
- improve branch support (and speed) for client database (installed packages db)
Entropy/rssFeed:
- make it a generic RSS handling class
Entropy/ServerInterface:
- make changes to rssFeed instances to reflect the change above
Entropy/Repository Manager:
- add support for notice boards handling
Entropy/ServerInterface:
- add support for notice boards handling
Entropy/EquoInterface:
- add support for notice boards


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2521 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-13 17:14:06 +00:00
lxnay 76d8d9596c Entropy/TODO:
- update TODO
Entropy/Equo:
- add installed packages database backup/restore tools
Entropy/EquoInterface:
- add backup/restore database helper functions
Entropy/EntropyDatabaseInterface:
- fix getIDPackageFromDownload()
Entropy/entropyTools:
- add compress_file() function (uncompress_file() already present)


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2518 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-11 21:11:07 +00:00
lxnay 8ab4ae3851 Entropy/entropyConstants:
- sort etpConst['branches']


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2501 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-08 15:18:52 +00:00
lxnay 30782e37ed Entropy:
- database split: work out the client part


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2497 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-08 12:41:17 +00:00
lxnay f8eb794969 Entropy/Repository Manager:
- add --nodeps option to compile_atoms


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2457 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-03 14:11:54 +00:00
lxnay ccdd7aec7f Entropy/entropyConstants:
- switch branch to 4 by default in hard-coded config


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2451 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-10-03 01:57:22 +00:00
lxnay 50da03d02a Entropy/RepositoryManager:
- add --fetchonly and --buildonly support to compile_atoms()


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2444 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-30 10:09:06 +00:00
lxnay e5be4c8a93 Entropy/entropyConstants:
- add some SPM options for future reference


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2436 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-29 19:50:47 +00:00
lxnay 4363f805ab Entropy/ServerInterface/Database Interface:
- code optimization when using SQLite executemany()
- change counters table structure (auto-migrated) to allow multiple branches support to work server-side, this shouldn't affect other things that much, hopefully


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2426 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-25 17:11:10 +00:00
lxnay 7f2078cfd7 Entropy/entropyConstants:
- add 'constants' support for the future repository notice board


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2417 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-24 13:18:07 +00:00
lxnay a093dc1734 Entropy/entropyConstants:
- add repoid key to etpConst['server_repositories']


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2386 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-16 20:59:57 +00:00
lxnay 051de39d8a Entropy/entropyConstants:
- add document types descriptions (singular form)


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2381 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-15 16:22:35 +00:00
lxnay 9af2dd6de9 Entropy/UGCCacheInterface:
- add UGCClientInterface.get_docs() cache infrastructure
Entropy/Socket/OpenSSL:
- add SysCallError exception handling
Entropy/entropyConstants:
- add ugc types description


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2375 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-07 19:50:20 +00:00
lxnay a9b49c4e91 Entropy/RepoInterface:
- fix a typo in ____construct_paths() and add 'profile.link' item
- run_sync(): remove self.Entropy.update_ugc_cache() call, not needed
Entropy/EquoInterface:
- loadRepositoryDatabase(): verify that repository id really exists
Entropy/DistributionUGCCommands:
- fix commands syntax
Entropy/UGCCacheInterface:
- support multi-threaded mode
- improve performance
- get_package_downloads(): return 0 instead of None in case of errors
- get_downloads_cache(), get_vote_cache(): check against pickle load exceptions


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2368 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-09-05 18:33:22 +00:00
lxnay 703656912a Entropy/UGCCacheInterface:
- new general purpose UGC caching infrastructure to speed up iterations when no up-to-date data is needed
Entropy/UGCClientInterface:
- move every caching related function to the new UGCCacheInterface class
- add some caching stuff
- make is_repository_eapi3_aware() faster
Entropy/DistributionUGCInterface:
- fix an error inside the query of get_ugc_alldownloads()


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2365 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-08-31 15:13:45 +00:00
lxnay 0695e72048 Entropy/SocketHostInterface:
- add support for noop string
- add some testing code


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2358 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-08-31 10:54:50 +00:00
lxnay 3b425c3b41 Entropy/UGC Interface:
- move UGC package vote range to etpConst['ugc_voterange']
- add voting support to Equo


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2340 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-08-26 13:00:10 +00:00
lxnay 76c16149ad Entropy/Server Interface:
- export binary packages expiration days setting to server.conf


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2339 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-08-26 11:29:25 +00:00
lxnay e3cfc4a298 Entropy/EquoInterface:
- do not allow to set an invalid database compression format on addRepository or during constants init


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2337 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-08-26 11:00:54 +00:00
lxnay 83a9b57c84 Entropy/UGCClientAuthStore:
- implementation of the UGC login credentials handling interface completed
Entropy/UGCClientInterface:
- main UGC client-side interface outlined


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2291 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-07-24 07:49:45 +00:00
lxnay 9ba89080b5 Entropy/Constants:
- export UGC doctypes to the constants dictionary


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2279 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-07-21 08:36:25 +00:00
lxnay 71eb2d276a Entropy/entropyConstants:
- move repository string parsing for both client and server to specific functions:
 - const_extractClientRepositoryParameters()
 - const_extractServerRepositoryParameters()


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2252 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-07-06 17:22:26 +00:00
lxnay 651b3b9efb outputTools:
- implemented generic method inputBox(), in this way we can have reimplement it depending on the frontend
- make readtext handle password submissions (no echo)
Entropy/Repository Manager:
- implement a ready to use input dialog widget in managerTools
- started to implement repository authentication (if enabled)
- reimplemented inputBox method
- added a PasswordEdit widget, a subclass of urwid.Edit for password inputs
Entropy/entropyConstants:
- add ssl_service_port, service_port and service_url information to etpConst['server_repositories'] and updated repository| syntax (backward compat btw)


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2239 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-07-03 23:01:14 +00:00
lxnay d37a49d901 Entropy/SocketHostInterface/SSL:
- update create_ca_certs() and rename it to create_ca_server_certs()
- make SSL certificates creation fully automated
Entropy/ServerInterface:
- make upload_database() to push both server and CA certificates


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2223 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-07-02 13:39:26 +00:00
lxnay 1b03c09179 Entropy/SSL Services:
- add ssl_port parameter to etpRepositories, making it configurable
- update entropyTools.saveRepositorySettings() accordingly
Entropy/constants:
- add CA.crt and CA.key constants that will be used by the new SSL code in SocketHostInterface


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2215 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-07-02 12:51:49 +00:00
lxnay ab8537c65a Entropy/SocketHostInterface:
- change default SSL port to 1027
- add killall() function to close some threads correctly
Entropy/entropy-repository-daemon example:
- update it to support SSL and non-SSL connections at the same time


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2189 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-06-29 17:40:38 +00:00
lxnay d21d8f6db0 Entropy/RepositoryManager:
- first bunch of code implemented, using urwid library
- application name = Enzyme
Entropy/entropyTools:
- improved parallelTask(), make it use *args and **kwargs
- fixed code accordingly
- some new functions
Entropy/outputTools:
- make shell output function faster by reducing call time


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2179 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-06-24 13:22:14 +00:00
lxnay c60db16af9 Entropy:
- do not overwrite old pid when checking


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2165 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-06-20 08:57:43 +00:00
lxnay be57888cd5 Entropy:
- fix PID handling, especially when calling const_setupEntropyPid() directly


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2163 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-06-20 08:46:55 +00:00
lxnay ccaef70199 Entropy:
- move proxy initialization to entropyTools.add_proxy_opener()
- fix writeParameterToFile() when disabling items
EquoInterface:
- update proxy setup using entropyTools.add_proxy_opener()
- add support for _basic_ proxy username and password authentication
Entropy/Spritz:
- export proxy username and password settings


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2160 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-06-19 18:35:28 +00:00
lxnay 623bc34bc6 Entropy/EAPI3 Repository Services:
- implement database setup lock file, to make client wait a little bit before giving up and switching to EAPI2


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2152 cd1c1023-2f26-0410-ae45-c471fc1f0318
2008-06-16 11:11:56 +00:00