Commit Graph

355 Commits

Author SHA1 Message Date
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
Fabio Erculiani 4d89935ef6 [Rigo] give Icons and Rating worker threads to collect more keys during a batch cycle 2012-07-19 13:27:43 +02:00
Fabio Erculiani 5189bf51bc [Rigo] update translations 2012-07-16 10:40:15 +02:00
Fabio Erculiani b504f4ce5f [Rigo] update rigo.pot 2012-07-16 10:38:31 +02:00
Fabio Erculiani 0c4d3a2b0a [Rigo] when App is updatable, show "Update" instead of "Remove"
This commit fixes bug #3417
2012-07-15 11:37:08 +02:00
Fabio Erculiani 09b8110790 [Rigo] Add "Black on White" and "White on Black" terminal colors support
This commit fixes bug #3433
2012-07-15 11:17:35 +02:00
Fabio Erculiani f573957172 [Rigo] avoid race with finally block and GC wrt file descriptors
It has been observed that subprocess.call() called by open_url()
might fail due to Error 9 (Bad File Descriptor) due to a race
between the garbage collector thread (run in the MainThread) and
our own subprocess.call() thread. For this reason, make sure to
call open_url() outside the try/finally block. This seems to be
enough.
2012-07-14 18:22:48 +02:00
Fabio Erculiani afd2608153 [Rigo] rewrite NoticeBoard TreeView behaviour
Previously, the Notice object was shown directly inside the
cell renderer, which made things a bit clumsy and buggy.
Now, notices are loaded through xdg-open in html format.
2012-07-14 18:19:59 +02:00
Fabio Erculiani 3912ca0471 [RigoDaemon] _noticeboards_available_signal: convert dbus.String() to Python unicode 2012-07-14 18:19:42 +02:00
Fabio Erculiani 7135ba3a01 [RigoDaemon] make sure to keep the Installed Packages Repository closed
This helps in case of uncommitted transactions that could cause
any sqlite3 db consumer to lock until timeout with "Database is locked".
2012-07-14 16:10:18 +02:00
Fabio Erculiani 0596e92e53 [Rigo] handle the case where get_visible_range() returns None 2012-07-02 12:05:39 +02:00
Fabio Erculiani 1897e961ff [Rigo] update translations 2012-07-02 11:46:27 +02:00
Fabio Erculiani fdb655348e [Rigo] disable the "Preferences" button when an activity is in progress 2012-07-02 00:01:50 +02:00
Fabio Erculiani e1a0ca94c5 [Rigo] update rigo.pot 2012-07-01 23:43:59 +02:00
Fabio Erculiani b29764443b [Rigo] implement Repository management 2012-07-01 23:41:07 +02:00