Fabio Erculiani
6ada5a9c5c
[Rigo] AppDetails: add fullname property returning package atom
2012-03-31 12:56:03 +02:00
Fabio Erculiani
aed0867d6e
[Rigo] fix typo in method name
2012-03-31 12:49:11 +02:00
Fabio Erculiani
be95f30356
[equo] make use of Client.calculate_orphaned_packages()
2012-03-31 12:01:29 +02:00
Fabio Erculiani
374845e913
[entropy.client] introduce Client.calculate_orphaned_packages()
...
This method has been introduced in order to remove this calculation
logic from Sulfur, Equo and RigoDaemon that resulted in unwanted
code duplication.
2012-03-31 11:59:21 +02:00
Fabio Erculiani
c3bba9a10d
[Rigo] ReadersWritersSemaphore is not reentrant for readers
...
Nested acquire_reader() calls can cause deadlock in this scenario:
Thread 1 calls acquire_reader() twice (or more)
Thread 2 calls acquire_writer() once
2012-03-31 11:12:08 +02:00
Fabio Erculiani
7829eee1dc
[todo] update TODO
2012-03-30 21:00:33 +02:00
Fabio Erculiani
56264f3a40
[Rigo] remove activity_rwsem usage from updates calculation code (experimental)
2012-03-30 20:58:43 +02:00
Fabio Erculiani
790f212121
[Rigo] several misc bugfixes related to recent code dump
2012-03-30 20:55:53 +02:00
Fabio Erculiani
f193f44f0d
[RigoDaemon] acquire exclusive lock after polkit auth request (to avoid UI lag)
2012-03-30 20:54:28 +02:00
Fabio Erculiani
0cfbd6a3bc
[todo] update TODO
2012-03-30 18:06:45 +02:00
Fabio Erculiani
fe5e723d8a
[Rigo] implement License management code for System Upgrade activity
2012-03-30 18:05:54 +02:00
Fabio Erculiani
e35b225d26
[Rigo/RigoDaemon] implement basic support to System Upgrade
2012-03-30 17:15:56 +02:00
Fabio Erculiani
34ee151d9a
[Rigo/RigoDaemon] implement Application removal support
2012-03-30 07:13:25 +02:00
Fabio Erculiani
154d038b7f
[todo] update TODO
2012-03-29 19:44:35 +02:00
Fabio Erculiani
e6b24784ba
[Rigo] notify user about apps being removed due to conflict
2012-03-29 19:43:14 +02:00
Fabio Erculiani
b62e46abfc
[Rigo] fixup several undefined references (thanks pylint)
...
Did I mention I hate Python?
2012-03-29 19:42:29 +02:00
Fabio Erculiani
b928757e57
[todo] update TODO
2012-03-29 19:08:36 +02:00
Fabio Erculiani
96842e5043
[RigoDaemon] always write debug messages to stdout
2012-03-29 19:08:16 +02:00
Fabio Erculiani
1084359821
[entropy.const] const_debug_write: make posible to write to arbitrary files
2012-03-29 19:07:23 +02:00
Fabio Erculiani
3c5f2bf8b6
[Rigo/RigoDaemon] move authentication in RigoDaemon's security domain
2012-03-29 18:57:27 +02:00
Fabio Erculiani
892a2d5eae
[Rigo] during App management, show the remaining enqueue actions
2012-03-29 13:51:11 +02:00
Fabio Erculiani
59b0aae5b1
[Rigo/RigoDaemon] complete initial application install implementation
2012-03-29 13:33:31 +02:00
Fabio Erculiani
ada9d15f68
[Rigo] if --dumper is passed, test main thread health status before dumping threads state
2012-03-28 23:35:32 +02:00
Fabio Erculiani
1dcff4ce0a
[entropy.client.interfaces.package] better handle download when network is unavailable
...
When network is unavailable, the package file fetch function returns an error
whilst the file itself has been completely and successfully downloaded already.
With this commit it is ensured that the event is correctly handled.
2012-03-28 23:21:31 +02:00
Fabio Erculiani
e25ebbb59e
[entropy.const] dump_signal: print stack variables if extended=True
2012-03-28 23:14:43 +02:00
Fabio Erculiani
0e3b18be2f
[entropy.client] only setup differential download when edelta support is available
2012-03-28 18:24:49 +02:00
Fabio Erculiani
940b99b656
[entropy.client] trivial code style update
2012-03-28 18:23:54 +02:00
Fabio Erculiani
1b7ad171df
[todo] update TODO
2012-03-27 19:25:35 +02:00
Fabio Erculiani
f07e53c597
[RigoDaemon] implement stdout and stderr redirection to Rigo
2012-03-27 19:24:21 +02:00
Fabio Erculiani
3ee2e5cd56
[todo] update TODO
2012-03-27 18:27:45 +02:00
Fabio Erculiani
da1a55a57f
[Rigo] add app removal simulation cheatcode
2012-03-27 18:27:23 +02:00
Fabio Erculiani
b58d1164c1
[todo] update TODO
2012-03-27 18:16:42 +02:00
Fabio Erculiani
0c506f5164
[RigoDaemon/Rigo] first chunk of App management code (install action only, incomplete)
2012-03-27 18:15:11 +02:00
Fabio Erculiani
4c954a9194
[entropy.client] _lock_resource: always increase lock reference count
...
Entropy Resouce Locks are reentrant, thus reference counted on lock()
and unlock() operations. For this reason, the counter must be increased
on every lock() request. This did not happen if the lock was already
held by the process with the unwanted effect of improperly releasing it.
This caused the "Calculating dependencies" glitch on each package
transaction.
2012-03-26 14:03:43 +02:00
Fabio Erculiani
a20d8da868
[Rigo] ask for exit confirmation when there is local activity
2012-03-26 13:46:12 +02:00
Fabio Erculiani
c659d4cbb4
[Rigo] dump threads every 30 seconds if --dumper is passed
2012-03-26 10:11:58 +02:00
Fabio Erculiani
ee25f790af
[Rigo/RigoDaemon] implement transaction state update notifications
2012-03-26 10:00:29 +02:00
Fabio Erculiani
72def71a07
[Rigo/RigoDaemon] implement Application License management
2012-03-25 18:02:54 +02:00
Fabio Erculiani
ac8358772e
[RigoDaemon] transaction_finished(): return AppTransactionOutcome struct
2012-03-25 11:02:04 +02:00
Fabio Erculiani
794e3a9134
[todo] update TODO
2012-03-24 20:15:07 +01:00
Fabio Erculiani
abdb7dc53f
[RigoDaemon] add reload() Dbus method
...
reload() is going to be used during RigoDaemon package
upgrade to kindly ask the Dbus service to reload itself as soon as
no more clients are connected.
2012-03-24 20:12:29 +01:00
Fabio Erculiani
a3d82ff44f
[RigoDaemon] expose daemon API version to Rigo
2012-03-24 19:53:08 +01:00
Fabio Erculiani
f2f58e8616
[Rigo] list Application dependencies in App View
2012-03-24 17:30:46 +01:00
Fabio Erculiani
228e0a7da1
[entropy.db] add EntropyRepository.retrieveRuntimeDependencies()
2012-03-24 17:29:41 +01:00
Fabio Erculiani
d1965b71ac
[Rigo] show installed Application version if available
2012-03-24 16:35:12 +01:00
Fabio Erculiani
47b9570224
[Rigo] implement centralized Application transaction state
2012-03-24 16:07:39 +01:00
Fabio Erculiani
dd46c23b20
[entropy.spm] PortagePlugin.add_installed_package: make sure to always run os.utime
2012-03-23 10:35:47 +01:00
Fabio Erculiani
99b20257a4
[entropy.client] handle _repodb_cache atomically
...
This prevents close_repositories() and _open_repository()
to concurrently mess with _repodb_cache, which is a dict, thus
not thread-safe.
2012-03-23 10:14:06 +01:00
Fabio Erculiani
115988a08c
[entropy.client,entropy.server] drop __del__(), can be racey
2012-03-23 10:13:01 +01:00
Fabio Erculiani
d465bb56e2
[entropy.db] EntropyRepository: use RLock() to handle connection pooling
...
This is much safer than being fault tolerant and shouldn't have any
tangible impact on performance
2012-03-23 10:07:48 +01:00