simulador do aptdaemon não atualizando dependências

1

Comecei a jogar com aptdaemon no Ubuntu 13.10 recentemente, e estou confuso. Chamar simulate () em uma transação não atualiza a lista de dependências. Depurar de aptd mostra que vários eventos estão sendo emitidos, incluindo um evento PropertyChanged para Dependências, mas meu manipulador não é chamado. Aqui está um código que demonstra o problema:

import aptdaemon.client

def printcall(*args, **kwargs):
    print("call(*%r, **%r)" % (args, kwargs))

client = aptdaemon.client.AptClient()
# I have make installed, but not abiword.
txn = client.install_packages(["make", "abiword"])
txn.connect("dependencies-changed", printcall)
txn.simulate()

print(txn.dependencies)
print(txn.packages)

Para mim, imprime uma lista de dependências vazia (na verdade, uma única lista contendo 6 listas vazias), enquanto a execução de apt-get install abiword da linha de comando apresenta várias dependências. Além disso, o evento dependencies-changed nunca é acionado:

dbus.Struct((dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s'))), signature=None, variant_level=1)
dbus.Struct((dbus.Array([dbus.String(u'make'), dbus.String(u'abiword')], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s')), dbus.Array([], signature=dbus.Signature('s'))), signature=None, variant_level=1)

Isso é um bug ou estou faltando alguma coisa (como um loop de eventos)?

    
por Gavin Panella 03.01.2014 / 11:11

0 respostas