Tudo bem que as bibliotecas não evoluem na mesma velocidade que o python, mas depois que fiz essa atualização ontem meu programa que usa as bibliotecas pylab e networkx não funcionaram, mesmo mudando o cabeçalho para
#!/usr/bin/python2
, se eu usasse #!/usr/bin/python
ele iria ter problemas de sintaxe e importação, visto que essas bibliotecas ainda não ganharam sua versão para python 3.
Mas o problema que eu tive foi justamente na matplotlib, que é chamada pela pylab, algumas funções de dentro dela fazem chamada para a versão 2.6 do python, quando a versão disponível no meu sistema que vive em “paz” com a versão 3 é justamente a 2.7. Logo o procedimento (gambiarra) foi fazer um link simbólico da matplotlib na pasta da versão 2.6, claro que devemos ser super-usuários para isso:
ln -s /usr/lib/python2.7/site-packages/matplotlib /usr/lib/python2.6/site-packages/matplotlib
E assim a matplotlib que não existia na pasta python2.6 passa a existir. No Debian não tive esse problema pois a versão testing não “evoluiu” ainda pro python 3, na verdade eles fizeram alguma cagada durante esse upgrade.
Ainda tenho problemas como, é necessário o uso da função show() da pylab para poder observar meus gráficos, antes no ipython -pylab eu usava apenas o comando plot(…) e pronto, o gráfico estava pronto, mas agora preciso de plot(…) e depois show() :(
Depois de uma olhada no neste bug reportado pela comunidade do Arch, me falaram que era apenas para remover o cache pessoal,
rm -r ~/.matplotlib
Discussão