Commit Graph

369 Commits

Author SHA1 Message Date
Fabio Erculiani d42003ba94 Merge remote-tracking branch 'origin/solo'
Conflicts:
	client/po/bg.po
	client/po/ca.po
	client/po/cs.po
	client/po/da.po
	client/po/de.po
	client/po/entropy.pot
	client/po/es.po
	client/po/es_CL.po
	client/po/fr.po
	client/po/fr_CA.po
	client/po/it.po
	client/po/nl.po
	client/po/pl.po
	client/po/pt.po
	client/po/pt_BR.po
	client/po/ru.po
	client/po/sk.po
	client/po/sv.po
	client/po/uk.po
	client/po/zh_TW.po
	client/revision
	docs/ChangeLog
	docs/TODO
	lib/entropy/cache.py
	lib/entropy/client/interfaces/db.py
	lib/entropy/const.py
	lib/entropy/revision
	lib/entropy/spm/plugins/interfaces/portage_plugin/__init__.py
	server/revision
2012-11-06 22:35:01 +01:00
Fabio Erculiani f32ddb95e5 [RigoDaemon] drop any reference to etpUi['debug'] 2012-11-06 20:50:47 +01:00
Fabio Erculiani 280a7067b3 [entropy.cli] drop module, move code to client/ and server/
Even though it is a small code duplication, entropy.cli does make
much less sense.
2012-11-04 21:11:56 +01:00
Fabio Erculiani 68ae30e5ba [Rigo] fix infinite loop in _vanished_callback() 2012-09-17 12:40:46 +02:00
Fabio Erculiani 97aeed94be [Rigo] always validate repositories after update
On a fresh install, with no downloaded repositories, users were forced
to restart Rigo in order to have the search function fully functional.
If a local repository is configured but not downloaded (thus, not
available) the same bug happens.

It turned out to be Entropy._enabled_repos, returned by Entropy.repositories()
which didn't get re-initialized after a repository update. This commit adds
a _validate_repositories() call inside _repositories_updated_signal().
2012-09-08 20:11:23 +02:00
Fabio Erculiani 8df6964462 [Rigo] Application: escape _("N/A")
Application.get_markup() and Application.get_extended_markup() must
always return bytestring (decoded) data to make Gtk3 libs and code
happy. It happened that _("N/A") was returned without passing through
prepare_markup() or escape_markup(). This commit fixes it.
2012-09-08 20:11:22 +02:00
Fabio Erculiani c9ed841e75 [Rigo] RigoServiceController: convert app_name=_("Application") to rawstring
If app_name is unicode decoded, the following code will fail (in pl_PL):

  >>> prepare_markup(_("<b>%s</b>, internal error")) % (_("Application"),)

with a nice UnicodeDecodeError due to implicit bytestring decode.
prepare_markup() output is bytestring, _() output is unicode.
Thanks to Enlik for reporting.
2012-09-08 20:11:22 +02:00
Sławomir Nizio 6c96c7608e [magneto,rigo] modernize .desktop files 2012-09-08 20:11:22 +02:00
Fabio Erculiani d9bfa7f11f [RigoDaemon] half the timer frequency and add some randomization in _auto_repositories_update()
When sabayon-weekly is updated, the web service is hit by a huge amount of
requests. This commits add a bit more entropy on the execution of
_auto_repositories_update() (random between 30mins to 2 hours) and reduces
the timer frequency to 8hrs (from 4).
2012-09-08 20:11:22 +02:00
Fabio Erculiani 2092303f55 [Rigo] always validate repositories after update
On a fresh install, with no downloaded repositories, users were forced
to restart Rigo in order to have the search function fully functional.
If a local repository is configured but not downloaded (thus, not
available) the same bug happens.

It turned out to be Entropy._enabled_repos, returned by Entropy.repositories()
which didn't get re-initialized after a repository update. This commit adds
a _validate_repositories() call inside _repositories_updated_signal().
2012-09-03 19:21:56 +02:00
Fabio Erculiani 6f137d758d [Rigo] Application: escape _("N/A")
Application.get_markup() and Application.get_extended_markup() must
always return bytestring (decoded) data to make Gtk3 libs and code
happy. It happened that _("N/A") was returned without passing through
prepare_markup() or escape_markup(). This commit fixes it.
2012-09-02 21:03:19 +02:00
Fabio Erculiani 763ece862e [Rigo] RigoServiceController: convert app_name=_("Application") to rawstring
If app_name is unicode decoded, the following code will fail (in pl_PL):

  >>> prepare_markup(_("<b>%s</b>, internal error")) % (_("Application"),)

with a nice UnicodeDecodeError due to implicit bytestring decode.
prepare_markup() output is bytestring, _() output is unicode.
Thanks to Enlik for reporting.
2012-09-02 21:00:26 +02:00
Sławomir Nizio 918a388252 [magneto,rigo] modernize .desktop files 2012-09-02 20:49:31 +02:00
Fabio Erculiani fa0eb83df4 [RigoDaemon] half the timer frequency and add some randomization in _auto_repositories_update()
When sabayon-weekly is updated, the web service is hit by a huge amount of
requests. This commits add a bit more entropy on the execution of
_auto_repositories_update() (random between 30mins to 2 hours) and reduces
the timer frequency to 8hrs (from 4).
2012-09-02 17:00:03 +02:00
Fabio Erculiani 796e71e9ac [repo] migrate shebangs to /usr/bin/python 2012-08-18 16:53:32 +02:00
Fabio Erculiani d56cd777c8 [RigoDaemon] some minor Python 3.x related fixes 2012-08-18 09:53:18 +02:00
Fabio Erculiani e2c0ddb526 [Rigo] Python 3.x compatibility fixes 2012-08-18 09:44:26 +02:00
Fabio Erculiani 96976374fe [RigoDaemon] rewrite Installed Repository I/O event handler
Rewrite the serialization code of the I/O events coming in when
the Installed Packages Repository is modified (at filesystem level)
to better deal with bursts of events.
The new code uses a "baton" Semaphore as mutex that can be passed
through threads. The MainThread event handler function tries to
acquire the Semaphore in NB mode, if it does, it spawns a thread
that executes all the operations (acquire locks in blocking mode,
calculate updates, etc) and releases the Semaphore once done.

Olympic win!
2012-08-17 12:27:55 +02:00
Fabio Erculiani c5cf96ace0 [RigoDaemon] delay updates calculation by 20 seconds after locks are released 2012-08-17 11:03:58 +02:00
Fabio Erculiani 3679fa966a [Rigo] increase search bar maximum entry length to 512 chars. 2012-08-12 12:05:50 +02:00
Fabio Erculiani 34d464e7c6 [Rigo] PreferencesTreeView: add explicit "_" import 2012-08-08 21:42:10 +02:00
Fabio Erculiani c9a5f2481d [Rigo] implement Application Groups support (in:groups keyword) 2012-08-08 21:41:41 +02:00
Fabio Erculiani aa6edfccdc [Rigo] update translations 2012-08-05 22:32:50 +02:00
Fabio Erculiani 122396705d [Rigo] update translations 2012-08-03 16:31:46 +02:00
Fabio Erculiani 2b40390983 [Rigo] update rigo.pot 2012-08-03 16:31:01 +02:00
Fabio Erculiani 89b114f005 [Rigo*] implement mirrors optimization feature, see bug #3438 2012-08-03 16:26:52 +02:00
Fabio Erculiani 107e55a029 [RigoDaemon] fix polkit "Manage Configuration" message field (gnome-polkit guys are idiot!) 2012-08-03 16:17:21 +02:00
Fabio Erculiani da334ec92e [Rigo] always convert dbus.Int and dbus.String into native Python object types 2012-08-03 06:30:05 +02:00
Fabio Erculiani f6ccf316e3 [Rigo] speedup recent searches ListStore (using a set()) and avoid duplicates 2012-08-02 12:30:53 +02:00
Fabio Erculiani 429c1f6be5 [Rigo] set a custom window title for each Rigo View SM State 2012-08-02 12:18:53 +02:00
Fabio Erculiani 57021922ed [Rigo] s:transactions:transitions 2012-08-02 12:09:43 +02:00
Fabio Erculiani c6829f479a [Rigo] enable (eventually) the search entry text completion 2012-08-02 12:01:46 +02:00
Fabio Erculiani 0683d9d38c [Rigo] rework special search keywords, make them more intuitive 2012-08-02 11:58:43 +02:00
Fabio Erculiani d0c367ba88 [Rigo] rewrite special search functions lookup using a hash table 2012-08-02 11:47:14 +02:00
Fabio Erculiani 2136dab0bb [Rigo] update rigo.pot 2012-07-31 19:37:01 +02:00
Fabio Erculiani 2ddd3b4d0f [Rigo] implement a Bottom NotificationBox "Activity" button
This Button allows users to see the current Application management
queue by leveraging the new RigoDaemon API.
2012-07-31 19:35:35 +02:00
Fabio Erculiani b5b8d25297 [RigoDaemon] add support for Action Queue "introspection" (in a MVCC way)
The new action_queue_items() is able to return the internal
Action Queue status without blocking while returning a consistent
state. This method will be used by Rigo to list the Action Queue
activity on the bottom notification box.
2012-07-31 16:35:38 +02:00
Fabio Erculiani 88844b3cb5 [Rigo] enable fallback search only when in:installed and Set search are not triggered 2012-07-31 10:27:41 +02:00
Fabio Erculiani 7d5eb11c0c [Rigo] make "in:installed" queries case insensitive 2012-07-31 10:25:03 +02:00
Fabio Erculiani 62eef2d5d8 [Rigo] add "in:installed [<search arg 1> ...]" search key support 2012-07-31 10:20:59 +02:00
Fabio Erculiani d6d1e047ae [Rigo] add custom drive-harddisk icon 2012-07-31 09:27:01 +02:00
Fabio Erculiani 4fd54651c5 [Rigo] rename all the magic search keywords from "rigo:" to "in:" 2012-07-31 09:26:38 +02:00
Fabio Erculiani ad8574024b [Rigo] update rigo.pot 2012-07-31 09:23:42 +02:00
Fabio Erculiani f460cd2922 [Rigo] implement "Show Installed Applications" Preference object 2012-07-31 09:22:57 +02:00
Fabio Erculiani b1e3a27696 [Rigo] add "rigo:installed" magic search keyword that shows all the installed Apps 2012-07-31 09:11:39 +02:00
Fabio Erculiani 7aee5d56a1 [Rigo] correct indentation 2012-07-31 09:08:04 +02:00
Fabio Erculiani e432a1c9f0 [RigoDaemon] make sure to always call Package.kill() 2012-07-27 21:37:48 +02:00
Fabio Erculiani 90458f80b6 [entropy.client.services,Rigo] add support for the new get_documents() WS API
The new WebService get_documents() is more efficient in terms of
server resources consumption since it doesn't force the WS engine
to calculate the full result set length, which had little use anyway
in Rigo.
This commit switches entropy.client.services' DocumentList to and
reverse dependencies to use the new WS API. The older WS API will be
kept alive for a while (6 months, roughly).
2012-07-25 22:30:38 +02:00
Fabio Erculiani 254c866702 [Rigo] update translations 2012-07-23 19:22:53 +02:00
Fabio Erculiani 13b5bcd018 [Rigo] serialize MTed download to the same URLs (avoid flooding the WS) 2012-07-23 19:19:49 +02:00