Artigo
· Mar. 13 3min de leitura

Simplifique pacotes do Python com zpip, um wrapper do pip irispython

   _________ ___ ____  
  |__  /  _ \_ _|  _ \ 
    / /| |_) | || |_) |
   / /_|  __/| ||  __/ 
  /____|_|  |___|_|    

Desde a versão 2021.1, o InterSystems IRIS começou a enviar com um ambiente de execução do python no kernel do motor. No entanto, não havia como instalar pacotes de dentro da instância. A principal vantagem do python é seu enorme ecossistema de pacotes. Com isso em mente, apresento meu projeto pessoal zpip, um wrapper de pip que pode ser chamado a partir do terminal iris.

O que é o zpip?

zpip é um wrapper para o pip do python que permite aos desenvolvedores adicionar pacotes rapidamente a uma instância pelo terminal do InterSystems IRIS.

Recursos

  • wrapper de pip do python para o InterSystems IRIS
  • Instalar/desinstalar pacotes do python
  • A instalação adiciona a palavra-chave zpip ao idioma

Instalando zpip

%SYS> zpm "install zpip"

Lista de tarefas

  • [ ] API chamável com status retornados

Usando zpip

Todos os comandos pip* são compatíveis. Porém, qualquer comando interativo exigirá que você use a versão não interativa do comando. Por exemplo, para desinstalar um pacote, você precisará usar o -y no comando para confirmar o processo.

Instalar pacotes do python com zpip

// Instale vários pacotes
// bibliotecas beautiful soup e requests
%SYS> zpip "install requests bs4"

... em ação:

%SYS>zpip "install emoji"

Processing /home/irisowner/.cache/pip/wheels/ae/80/43/3b56e58669d65ea9ebf38b9574074ca248143b61f45e114a6b/emoji-2.1.0-py3-none-any.whl
Installing collected packages: emoji
Successfully installed emoji-2.1.0

%SYS>

Especifique um diretório de instalação diferente:

// Instale em algum outro destino de pacote do python
$SYS> zpip "install --target '/durable/iconfig/lib/python' emoji"

Desinstalar um pacote do python

// Requer o -y!
%SYS>zpip "uninstall -y emoji"
Found existing installation: emoji 2.1.0
Uninstalling emoji-2.1.0:
  Successfully uninstalled emoji-2.1.0

Outros comandos úteis do pip

listar pacotes

// Listar pacotes
%SYS> zpip "list"
Package                      Version    
---------------------------- -----------
absl-py                      1.1.0      
argon2-cffi                  21.3.0     
argon2-cffi-bindings         21.2.0     
asttokens                    2.0.5      
astunparse                   1.6.3      
attrs                        21.4.0     
backcall                     0.2.0      
beautifulsoup4               4.11.1     
bleach                       5.0.0      
bs4                          0.0.1   
...

Limitações

  • Os comandos interativos não são compatíveis
    • use -y para desinstalações
  • A busca pode não funcionar dependendo da configuração do sistema
  • Usa a infraestrutura do pip do os subjacente, então sua instalação depende da versão do pip do os.
Discussão (0)0
Entre ou crie uma conta para continuar