PyFabricate é um aplicativo Mac OS X que simplifica a criação de projetos Python. Como eu o escrevi, obviamente é uma versão opinativa de como eu acho que um projeto Python deveria ser. Além disso, tenho um determinado conjunto de ferramentas que uso para poder escrever aplicativos Python para Mac OS X. No entanto, tentei criar um pouco de personalização expondo os modelos a partir dos quais crio os arquivos do projeto. Mais sobre isso mais tarde.
PyFabricate usa uma interface semelhante a um assistente para consultar os detalhes do projeto.
O desenvolvedor usa o HomeBrew para instalar as dependências opinativas.
O nome do projeto é igual ao nome do pacote do módulo
Obtenha a versão atual aqui.
Copie este arquivo para a pasta de aplicativos do Mac OS. O aplicativo é assinado com código Apple, então você receberá uma mensagem simples que deverá confirmar na primeira vez que executá-lo.
A seguir está um exemplo do esqueleto inicial que o PyFabricator cria. Agora mostra o ambiente virtual que cria. Mais sobre isso mais tarde.
Essencialmente, PyFabricate cria os diretórios src e testa. No diretório raiz do projeto ele cria os seguintes arquivos:
Além disso, PyFabricate cria todos os arquivos do pacote python (__init__.py) em todos os locais apropriados. E, finalmente, ele coloca dois conjuntos de arquivos de configuração de log, um para sua aplicação e outro para seus testes de unidade.
No final da fabricação, PyFabricate cria um ambiente virtual Python. Devido a limitações técnicas, o PyFabricate não pode usar uma versão pyenv do Python para criar o ambiente virtual. Portanto, depende de uma versão homebrew instalada.
A IU do assistente é um processo de 4 etapas em que o PyFabricate reúne detalhes suficientes do projeto para preencher os modelos de esqueleto. Os modelos usam os seguintes tokens de substituição autoexplicativos.
Nome do token | Descrição |
---|---|
PROJETO_NAME | Usado para construir o diretório base do projeto e é o nome do módulo Python |
DESCRIÇÃO | Colocado como a descrição no pyproject.toml gerado |
OWNER_NAME | Colocado como nome do autor e nome do mantenedor no pyproject.toml gerado |
OWNER_EMAIL | Colocado como endereço de e-mail do autor e do mantenedor no pyproject.toml gerado |
PALAVRAS-CHAVE | Usado como palavras-chave do projeto no pyproject.toml gerado |
PYTHON_VERSION | Usado no arquivo .gitignore gerado para excluir o diretório que contém o ambiente virtual. Adicionalmente anexado como o nome do diretório para o ambiente virtual gerado. Por exemplo, 'pyenv-3.12.0' |
A seguir está um gráfico anotado do modelo pyroject.toml.
Esta etapa é uma introdução ao PyFabricate. Após esta etapa, o PyFabricate faz o possível para garantir que suas dependências de execução sejam atendidas. Caso contrário, o desenvolvedor não poderá prosseguir nesta etapa.
Nesta etapa, o PyFabricate coleta informações específicas do projeto. A maior parte disso serve para preencher o modelo pyproject.toml.
PyFabricate assume que o desenvolvedor mantém todos os seus projetos Python em um único subdiretório. Esta é uma visão opinativa e é simplesmente uma preferência organizacional.
PyFabricate consulta pyenv para as versões Python instaladas pelo desenvolvedor. Estes são os únicos a partir dos quais o PyFabricate pode criar ambientes virtuais Python.
No final do assistente, PyFabricate apresenta um log à medida que cria o projeto. A seguir está um exemplo de log.
Como mencionado anteriormente, o desenvolvedor pode personalizar alguns aspectos da geração do projeto. PyFabricate armazena os modelos que usa em $HOME/.config/pyfabricate/templates conforme observado abaixo.
Por exemplo, um desenvolvedor pode querer usar uma licença diferente. Simplesmente, substitua o arquivo LICENSE.template
PyFabricate está atualmente apenas na versão 0.5.0. No momento, estou investigando a adição de recursos adicionais e a remoção de limitações.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3