Powerline: Interromper a mudança em python-i3ipc quebra listers i3

Criado em 17 nov. 2019  ·  5Comentários  ·  Fonte: powerline/powerline

Uma atualização importante e relativamente recente no i3ipc ( v2.0.1 ) quebra alguns de nossos segmentos e referências aqui.
Eu descobri hoje ao atualizar todos os meus pacotes Python (para Python 3.8).

Em essência, os invólucros da classe Python em torno das respostas JSON do i3ipc com as quais nosso código lida foram alterados, de modo que reply['attr'] não é mais válido e reply.attr ou getattr(reply, 'attr') deve ser usado.
Isso é relevante em powerline / listers / i3wm.py e powerline / segmento / i3wm.py.

segment cwm bug

Comentários muito úteis

@ PH111P sim, eu já

Todos 5 comentários

Um patch para isso seria muito simples de produzir, mas não tenho certeza se e como a compatibilidade com versões anteriores deve ser mantida.

Se estou interpretando este diff corretamente, o uso de atributos já deve ter funcionado com versões anteriores do i3ipc. Visto que costumava suportar as duas formas de acesso aos dados, talvez isso deva ser proposto como uma correção (ainda mais simples) no código-base i3ipc?

Problema relacionado registrado como altdesktop / i3ipc-python # 136

Substituir reply['attr'] por reply.attr deve realmente corrigir isso.

@ PH111P sim, eu já

Parece que o upstream prefere interromper isso só porque; Acho que é hora desse patch.

Esta página foi útil?
0 / 5 - 0 avaliações