diff --git a/locales/pt/LC_MESSAGES/package-structure-code.po b/locales/pt/LC_MESSAGES/package-structure-code.po index ab394876..794f0611 100644 --- a/locales/pt/LC_MESSAGES/package-structure-code.po +++ b/locales/pt/LC_MESSAGES/package-structure-code.po @@ -22,32 +22,38 @@ msgstr "" #: ../../package-structure-code/code-style-linting-format.md:1 msgid "Python Package Code Style, Format and Linters" -msgstr "" +msgstr "Estilo de Código, Formatação e Linters para Pacotes Python" #: ../../package-structure-code/code-style-linting-format.md:3 #: ../../package-structure-code/publish-python-package-pypi-conda.md:12 msgid "Take Aways" -msgstr "" +msgstr "Conclusões" #: ../../package-structure-code/code-style-linting-format.md:5 msgid "pyOpenSci requires authors to follow PEP 8 code format guidelines" -msgstr "" +msgstr "A pyOpenSci exige que os autores sigam as diretrizes de formatação de " +"código da PEP 8." #: ../../package-structure-code/code-style-linting-format.md:6 msgid "" "Setting up a code formatters like Black and isort will help you enforce " "PEP 8 style guidelines and also consistent, readable code format" msgstr "" +"Configurar formatadores de código, como Black e isort, ajudará você a " +"aplicar as diretrizes de estilo da PEP 8 e também manter um formato de " +"código consistente e legível." #: ../../package-structure-code/code-style-linting-format.md:7 msgid "Some commonly used tools are: Black, Isort, flake8, Ruff" -msgstr "" +msgstr "Algumas ferramentas geralmente utilizadas são: Black, isort, flake8 e Ruff." #: ../../package-structure-code/code-style-linting-format.md:8 msgid "" "You can also setup pre-commit hooks which will run code formatters " "locally each time you make a commit." msgstr "" +"Você também pode configurar hooks de pre-commit, que executarão " +"formatadores de código localmente sempre que fizer um commit." #: ../../package-structure-code/code-style-linting-format.md:10 msgid "" @@ -56,12 +62,20 @@ msgid "" "using the tools specified in your pre-commit-config.yaml file. It can " "save significant time and make contributions easier for new contributors." msgstr "" +"O [precommit.ci](https://pre-commit.ci/) é um bot que você pode adicionar " +"ao seu repositório no GitHub. Ele aplica automaticamente a formatação de " +"código em todos os PRs usando as ferramentas especificadas no arquivo " +"pre-commit-config.yaml. Isso pode economizar bastante tempo e facilitar " +"as contribuições de novos contribuidores." #: ../../package-structure-code/code-style-linting-format.md:11 msgid "" "Automation is good! By making code quality tools care of your code, you " "can focus on structural and high values tasks." msgstr "" +"Automação é uma coisa boa! Ao deixar as ferramentas de qualidade de código " +"cuidarem do seu código, você pode focar em tarefas estruturais e de maior " +"valor." #: ../../package-structure-code/code-style-linting-format.md:14 msgid "" @@ -69,12 +83,17 @@ msgid "" "across the scientific Python ecosystem because using similar formats " "makes code easier to read." msgstr "" +"Um formato e estilo de código consistentes são úteis tanto para o seu " +"pacote quanto para todo o ecossistema científico Python, porque usar " +"formatos semelhantes torna o código mais fácil de ler." #: ../../package-structure-code/code-style-linting-format.md:18 msgid "" "For instance, if you saw a sentence like this one without any spaces, or " "punctuation, it would take your brain longer to process it." msgstr "" +"Por exemplo, se você visse uma frase como esta sem espaços ou pontuação, " +"seu cérebro levaria mais tempo para processá-la." #: ../../package-structure-code/code-style-linting-format.md:25 msgid "" @@ -82,6 +101,10 @@ msgid "" "[Python PEP 8 format rules](https://peps.python.org/pep-0008/) as closely" " as you can." msgstr "" +"O processo de revisão por pares da pyOpenSci exige que você siga, " +"as regras padrão de formatação da PEP 8 " +"[Python PEP 8 format rules](https://peps.python.org/pep-0008/) o máximo " +" possível." #: ../../package-structure-code/code-style-linting-format.md:29 msgid "" @@ -89,24 +112,33 @@ msgid "" "However, we do look for consistency and readability in code style. Below " "you will find a discussion of:" msgstr "" +"A pyOpenSci não exige que você use uma ferramenta específica de " +"formatação de código. No entanto, buscamos consistência e legibilidade no " +"estilo do código. A seguir, você encontrará uma discussão sobre:" + #: ../../package-structure-code/code-style-linting-format.md:33 msgid "The benefits of using linters and code format tools in your workflow" -msgstr "" +msgstr "Os benefícios de usar linters e ferramentas de formatação de código no " +"seu fluxo de trabalho" #: ../../package-structure-code/code-style-linting-format.md:34 msgid "Some commonly used tools in the scientific Python space" -msgstr "" +msgstr "Algumas ferramentas bastante utilizadas no ecossistema científico Python" #: ../../package-structure-code/code-style-linting-format.md:35 msgid "" "Setting up pre-commit hooks and the pre-commit.ci bot to make using code " "format tools in daily workflows and in pull requests on GitHub easier." msgstr "" +"Configurar hooks de pre-commit e o bot pre-commit.ci para facilitar o uso " +"de ferramentas de formatação de código nos fluxo de trabalho cotidiano e " +"em pull requests no GitHub." #: ../../package-structure-code/code-style-linting-format.md:39 msgid "Use a code format tool (or tools) to make your life easier" -msgstr "" +msgstr "Use uma ferramenta (ou ferramentas) de formatação de código para facilitar " +"sua vida" #: ../../package-structure-code/code-style-linting-format.md:41 msgid "" @@ -117,36 +149,52 @@ msgid "" "you, adhering to PEP 8 standards and applying consistent style decisions " "throughout." msgstr "" +"Sugerimos que você use uma ferramenta de formatação de código, ou um " +"conjunto delas, porque aplicar manualmente todas as especificações de " +"formatação da PEP 8 consome muito tempo dos mantenedores e também pode se " +"tornar uma barreira para novos contribuidores em potencial. Ferramentas de " +"formatação de código reformatam automaticamente seu código, seguindo os " +"padrões da PEP 8 e aplicando decisões de estilo consistentes em todo o " +"projeto." #: ../../package-structure-code/code-style-linting-format.md:47 msgid "Setting up a code format suite of tools will:" -msgstr "" +msgstr "Configurar um conjunto de ferramentas de formatação de código irá:" #: ../../package-structure-code/code-style-linting-format.md:49 msgid "Save you and your maintainer team time in fixing PEP 8 inconsistencies." -msgstr "" +msgstr "Economizar tempo seu e da equipe de mantenedores na correção de " +"inconsistências com a PEP 8." #: ../../package-structure-code/code-style-linting-format.md:50 msgid "Ensure that format and style is consistent across your entire code-base." -msgstr "" +msgstr "Garantir que a formatação e o estilo sejam consistentes em toda a sua " +"base de código." #: ../../package-structure-code/code-style-linting-format.md:51 msgid "" "Avoid lengthy discussions with contributors and other maintainers about " "personalized code format preferences during reviews." msgstr "" +"Evitar discussões longas com contribuidores e outros mantenedores sobre " +"preferências pessoais de formatação de código durante revisões." #: ../../package-structure-code/code-style-linting-format.md:53 msgid "" "Avoid pure visual edits in the code base so that code reviews focus on " "added value" msgstr "" +"Evitar alterações puramente visuais na base de código, permitindo que as " +"revisões de código foquem no que realmente agrega valor" #: ../../package-structure-code/code-style-linting-format.md:55 msgid "" "Many packages use a suite of tools to apply code format rules, taking the" " work out of manually implementing code format requirements." msgstr "" +"Muitos pacotes usam um conjunto de ferramentas para aplicar regras de " +"formatação de código, eliminando o trabalho manual de implementar esses " +"requisitos de formatação." #: ../../package-structure-code/code-style-linting-format.md:58 msgid "" @@ -154,18 +202,21 @@ msgid "" "ecosystem, will also broadly make code easier to scan, understand and " "contribute to." msgstr "" +"Uma formatação de código consistente entre pacotes dentro do ecossistema " +"(científico) Python também torna o código, de forma geral, mais fácil de " +"ler, entender e contribuir." #: ../../package-structure-code/code-style-linting-format.md:61 msgid "Linting vs. format and style" -msgstr "" +msgstr "Linting vs. formatação e estilo" #: ../../package-structure-code/code-style-linting-format.md:63 msgid "Before we dive in let's get a few definitions out of the way." -msgstr "" +msgstr "Antes de começarmos, vamos esclarecer algumas definições." #: ../../package-structure-code/code-style-linting-format.md:65 msgid "Code linting" -msgstr "" +msgstr "Linting de código" #: ../../package-structure-code/code-style-linting-format.md:67 msgid "" @@ -174,10 +225,14 @@ msgid "" "what the error is and on what line it was discovered. Flake8, discussed " "below, is an example of a commonly-used code linter." msgstr "" +"Um linter de código é uma ferramenta que analisa seu código e identifica " +"erros ou problemas. Normalmente, um linter não modifica seu código. Ele " +"informa qual é o erro e em qual linha ele foi encontrado. O Flake8, " +"discutido abaixo, é um exemplo de linter de código bastante utilizado." #: ../../package-structure-code/code-style-linting-format.md:72 msgid "Code formatters (and stylers)" -msgstr "" +msgstr "Formatadores de código (e estilizadores)" #: ../../package-structure-code/code-style-linting-format.md:74 msgid "" @@ -185,6 +240,10 @@ msgid "" "formatters often follow PEP 8 standards. However, they also make " "stylistic decisions about code consistency." msgstr "" +"Formatadores de código reformatam seu código automaticamente. " +"Formatadores de código voltados para Python geralmente seguem os padrões " +"da PEP 8. No entanto, eles também tomam decisões de estilo para garantir " +"a consistência do código." #: ../../package-structure-code/code-style-linting-format.md:78 msgid "" @@ -192,18 +251,22 @@ msgid "" " PEP 8 standards while also making decisions about things like consistent" " use of double quotes for strings, and spacing of items in lists." msgstr "" +"O Black é um exemplo de formatador de código bastante utilizado. O Black " +"aplica os padrões da PEP 8 e também toma decisões sobre aspectos como o " +"uso consistente de aspas duplas em strings e o espaçamento de itens em " +"listas." #: ../../package-structure-code/code-style-linting-format.md:82 msgid "You will learn more about Black below." -msgstr "" +msgstr "Você aprenderá mais sobre o Black abaixo." #: ../../package-structure-code/code-style-linting-format.md:84 msgid "Code linting, formatting and styling tools" -msgstr "" +msgstr "Ferramentas de linting, formatação e estilo de código" #: ../../package-structure-code/code-style-linting-format.md:87 msgid "Black" -msgstr "" +msgstr "Black" #: ../../package-structure-code/code-style-linting-format.md:89 msgid "" @@ -213,6 +276,12 @@ msgid "" "generally adheres to PEP 8 style guidelines with some exceptions. A few " "examples of those exceptions are below:" msgstr "" +"O [Black](https://black.readthedocs.io/en/stable/) é um formatador de " +"código. O Black corrigirá automaticamente (and _unapologetically_) " +"problemas de espaçamento e garantirá que a formatação do código seja " +"consistente em todo o seu pacote. O Black também geralmente segue as " +"diretrizes de estilo da PEP 8, com algumas exceções. Alguns exemplos " +"dessas exceções estão abaixo:" #: ../../package-structure-code/code-style-linting-format.md:95 msgid "" @@ -220,32 +289,44 @@ msgid "" "character `PEP 8` specification. However, line length is a setting can be" " manually overwritten in your Black configuration." msgstr "" +"O Black usa, por padrão, um comprimento de linha de 88 caracteres " +"(79 + 10%), em vez dos 79 caracteres especificados pela `PEP 8`. No " +"entanto, o comprimento da linha é uma configuração que pode ser " +"alterada manualmente na configuração do Black." #: ../../package-structure-code/code-style-linting-format.md:96 msgid "Black will not adjust line length in your comments or docstrings." -msgstr "" +msgstr "O Black não ajustará o comprimento das linhas em comentários ou " +"docstrings." #: ../../package-structure-code/code-style-linting-format.md:97 msgid "" "This tool will not review and fix import order (you need `isort` or " "`ruff` to do that - see below)." msgstr "" +"Essa ferramenta não revisará nem corrigirá a ordem dos imports " +"(você precisará do `isort` ou `ruff` para fazer isso — veja abaixo)." #: ../../package-structure-code/code-style-linting-format.md:100 msgid "" "If you are interested in seeing how Black will format your code, you can " "use the [Black playground](https://black.vercel.app/)" msgstr "" +"Se você tiver interesse em ver como o Black formatará seu código, pode " +"usar o [Black playground](https://black.vercel.app/)" #: ../../package-structure-code/code-style-linting-format.md:104 msgid "" "Using a code formatter like Black will leave you more time to work on " "code function rather than worry about format." msgstr "" +"Usar um formatador de código como o Black deixará você com mais tempo " +"para trabalhar na funcionalidade do código, em vez de se preocupar com " +"formatação." #: ../../package-structure-code/code-style-linting-format.md:108 msgid "Flake8" -msgstr "" +msgstr "Flake8" #: ../../package-structure-code/code-style-linting-format.md:110 msgid "" @@ -253,38 +334,50 @@ msgid "" "[flake8](https://flake8.pycqa.org/en/latest/) to your code format " "toolbox." msgstr "" +"Para seguir os padrões de formatação `pep8` do Python, talvez você queira " +"adicionar o [flake8](https://flake8.pycqa.org/en/latest/) ao seu conjunto " +"de ferramentas de formatação de código." #: ../../package-structure-code/code-style-linting-format.md:114 msgid "flake8 will:" -msgstr "" +msgstr "O flake8 irá:" #: ../../package-structure-code/code-style-linting-format.md:116 msgid "" "Flag every line in your code that extends beyond 79 characters (including" " those in docstrings and comments)" msgstr "" +"Sinalizar todas as linhas do seu código que ultrapassem 79 caracteres " +"(incluindo linhas em docstrings e comentários)" #: ../../package-structure-code/code-style-linting-format.md:117 msgid "" "Flag spacing issues that conflict with PEP 8 guidelines such as missing " "spaces after commas" msgstr "" +"Sinalizar problemas de espaçamento que entrem em conflito com as " +"diretrizes da PEP 8, como ausência de espaços após vírgulas" #: ../../package-structure-code/code-style-linting-format.md:119 msgid "" "Flake8 also flags unused imports and unused declared variables in your " "modules." msgstr "" +"O Flake8 também sinaliza imports não utilizados e variáveis declaradas " +"mas não utilizadas nos seus módulos." #: ../../package-structure-code/code-style-linting-format.md:122 msgid "" "Below you can see the output of running `flake8 filename.py` at the " "command line for a Python file within a package called `stravalib`." msgstr "" +"Abaixo, você pode ver a saída da execução de `flake8 filename.py` na " +"linha de comando para um arquivo Python dentro de um pacote chamado " +"`stravalib`." #: ../../package-structure-code/code-style-linting-format.md:126 msgid "The line length standard for PEP 8 is 79 characters." -msgstr "" +msgstr "O padrão de comprimento de linha da PEP 8 é de 79 caracteres." #: ../../package-structure-code/code-style-linting-format.md:128 msgid "" @@ -292,10 +385,14 @@ msgid "" " module on the command line. The Python file itself is not modified. " "Using this output, you can fix each issue line by line manually." msgstr "" +"Observe que o flake8 retorna uma lista de problemas encontrados no módulo " +"`model.py` na linha de comando. O arquivo Python em si não é modificado. " +"Usando essa saída, você pode corrigir cada problema manualmente, linha " +"por linha." #: ../../package-structure-code/code-style-linting-format.md:143 msgid "Isort" -msgstr "" +msgstr "Isort" #: ../../package-structure-code/code-style-linting-format.md:145 msgid "" @@ -303,6 +400,9 @@ msgid "" " requires. Imports should always be located at the top of each Python " "module in your package." msgstr "" +"Imports em Python se referem aos pacotes Python que um módulo do seu " +"pacote requer. Os imports devem sempre estar localizados no topo de cada " +"módulo Python do seu pacote." #: ../../package-structure-code/code-style-linting-format.md:149 msgid "" @@ -310,28 +410,34 @@ msgid "" "imports](https://peps.python.org/pep-0008/#imports). These standards are " "listed below:" msgstr "" +"A [PEP 8 possui padrões específicos para a ordem desses " +"imports](https://peps.python.org/pep-0008/#imports). Esses padrões estão " +"listados abaixo:" #: ../../package-structure-code/code-style-linting-format.md:151 msgid "Imports should be grouped in the following order:" -msgstr "" +msgstr "Os imports devem ser agrupados na seguinte ordem:" #: ../../package-structure-code/code-style-linting-format.md:153 msgid "Standard library imports." -msgstr "" +msgstr "Imports da biblioteca padrão." #: ../../package-structure-code/code-style-linting-format.md:154 msgid "Related third party imports." -msgstr "" +msgstr "Imports de bibliotecas de terceiros." #: ../../package-structure-code/code-style-linting-format.md:155 msgid "Local application/library specific imports." -msgstr "" +msgstr "Imports específicos da aplicação/biblioteca local." #: ../../package-structure-code/code-style-linting-format.md:157 msgid "" "While `flake8` will identify unused imports in your code, it won't fix or" " identify issues with the order of package imports." msgstr "" +"Embora o `flake8` identifique imports não utilizados no seu código, ele " +"não corrigirá nem identificará problemas relacionados à ordem dos " +"imports." #: ../../package-structure-code/code-style-linting-format.md:160 msgid "" @@ -339,14 +445,18 @@ msgid "" "will then modify your code, automatically reordering all imports. This " "leaves you with one less thing to think about when cleaning up your code." msgstr "" +"O `isort` identificará onde os imports no seu código estão fora de ordem. " +"Em seguida, ele modificará seu código, reorganizando automaticamente " +"todos os imports. Isso deixa você com uma preocupação a menos ao limpar " +"seu código." #: ../../package-structure-code/code-style-linting-format.md:165 msgid "Example application of isort" -msgstr "" +msgstr "Exemplo de uso do isort" #: ../../package-structure-code/code-style-linting-format.md:167 msgid "Code imports before `isort` is run:" -msgstr "" +msgstr "Imports do código antes da execução do `isort`:" #: ../../package-structure-code/code-style-linting-format.md:169 msgid "" @@ -356,18 +466,23 @@ msgid "" " doing the import. Also notice that there are no spaces in the imports " "listed below." msgstr "" +"Abaixo, `pandas` é um pacote de terceiros, `typing` é um pacote central " +"do `Python` distribuído com o `Python`, e `examplePy.temperature` é um " +"módulo do próprio projeto, o que significa que ele pertence ao mesmo pacote do " +"arquivo que está fazendo o import. Observe também que não há espaços nos " +"imports listados abaixo." #: ../../package-structure-code/code-style-linting-format.md:179 msgid "From the project root, run:" -msgstr "" +msgstr "A partir da raiz do projeto, execute:" #: ../../package-structure-code/code-style-linting-format.md:185 msgid "Python file `temporal.py` imports after `isort` has been run" -msgstr "" +msgstr "Imports do arquivo Python `temporal.py` após a execução do `isort`" #: ../../package-structure-code/code-style-linting-format.md:193 msgid "Ruff" -msgstr "" +msgstr "Ruff" #: ../../package-structure-code/code-style-linting-format.md:195 msgid "" @@ -378,52 +493,70 @@ msgid "" "replacement of all other tools mentioned here, or in complement to some " "of them." msgstr "" +"O [Ruff](https://docs.astral.sh/ruff/) é uma nova adição ao ecossistema " +"de qualidade de código, ganhando bastante adoção desde seu lançamento. O " +"`ruff` é ao mesmo tempo um linter e um formatador de código para Python, " +"com o objetivo de substituir várias ferramentas por meio de uma única " +"interface. Assim, o `ruff` pode ser usado como substituto de todas as " +"outras ferramentas mencionadas aqui, ou em complemento a algumas delas." #: ../../package-structure-code/code-style-linting-format.md:201 msgid "" "`ruff` has some interesting features that distinguish it from other " "linters:" msgstr "" +"O `ruff` possui alguns recursos interessantes que o diferenciam de outros " +"linters:" #: ../../package-structure-code/code-style-linting-format.md:203 msgid "Linter configuration in `pyproject.toml`" -msgstr "" +msgstr "Configuração do linter no `pyproject.toml`" #: ../../package-structure-code/code-style-linting-format.md:204 msgid "Several hundred rules included, many of which are automatically fixable" -msgstr "" +msgstr "Várias centenas de regras incluídas, muitas das quais podem ser " +"corrigidas automaticamente" #: ../../package-structure-code/code-style-linting-format.md:205 msgid "" "Rules explanation, see [F403](https://docs.astral.sh/ruff/rules" "/undefined-local-with-import-star/) for an example" msgstr "" +"Explicação das regras, veja " +"[F403](https://docs.astral.sh/ruff/rules/undefined-local-with-import-star/)" +" como exemplo" #: ../../package-structure-code/code-style-linting-format.md:206 msgid "" "Fast execution time, makes a quick feedback loop possible even on large " "projects." msgstr "" +"Tempo de execução rápido, permitindo um ciclo de feedback ágil mesmo em " +"projetos grandes." #: ../../package-structure-code/code-style-linting-format.md:208 msgid "" "Here is a simple configuration to get started with `ruff`. It would go " "into your `pyproject.toml`:" msgstr "" +"Aqui está uma configuração simples para começar a usar o `ruff`. Ela deve " +"ser adicionada ao seu `pyproject.toml`:" #: ../../package-structure-code/code-style-linting-format.md:216 msgid "" "Depending on your project, you might want to add the following to sort " "imports correctly:" msgstr "" +"Dependendo do seu projeto, talvez você queira adicionar o seguinte para " +"ordenar corretamente os imports:" #: ../../package-structure-code/code-style-linting-format.md:224 msgid "How to use code formatter in your local workflow" -msgstr "" +msgstr "Como usar formatadores de código no seu fluxo de desenvolvimento local" #: ../../package-structure-code/code-style-linting-format.md:226 msgid "Linters, code formatters and your favorite coding tools" -msgstr "" +msgstr "Linters, formatadores de código e seus editores e IDEs favoritos" #: ../../package-structure-code/code-style-linting-format.md:228 msgid "" @@ -433,38 +566,51 @@ msgid "" " save a file. In some editors you can also setup shortcuts that run your " "favorite code format tools on demand." msgstr "" +"Linters podem ser executados como ferramentas de linha de comando, como " +"mostrado acima. Eles também podem ser executados dentro da sua ferramenta " +"de desenvolvimento favorita (por exemplo, VSCode, PyCharm, etc). Por " +"exemplo, você pode preferir que ferramentas como Black e isort sejam " +"executadas ao salvar um arquivo. Em alguns editores, também é possível " +"configurar atalhos que executam suas ferramentas favoritas de formatação " +"de código sob demanda." #: ../../package-structure-code/code-style-linting-format.md:234 msgid "Use pre-commit hooks to run code formatters and linters on commits" -msgstr "" +msgstr "Use hooks de pre-commit para executar formatadores de código e linters " +"nos commits" #: ../../package-structure-code/code-style-linting-format.md:236 msgid "You can also setup a `pre-commit hook` in your Python package repository." -msgstr "" +msgstr "Você também pode configurar um `pre-commit hook` no repositório do seu " +"pacote Python." #: ../../package-structure-code/code-style-linting-format.md:238 msgid "" "A pre-commit hook is a tool that allows an action (or actions) to be " "triggered when you apply a commit to your git repository." msgstr "" +"Um pre-commit hook é uma ferramenta que permite que uma ação (ou ações) " +"seja acionada quando você aplica um commit ao seu repositório Git." #: ../../package-structure-code/code-style-linting-format.md:241 msgid "Pre-commit hook example workflow" -msgstr "" +msgstr "Exemplo de fluxo de trabalho com pre-commit hook" #: ../../package-structure-code/code-style-linting-format.md:243 msgid "The precommit workflow looks like this: You type and run:" -msgstr "" +msgstr "O fluxo de trabalho do pre-commit funciona assim: você digita e executa:" #: ../../package-structure-code/code-style-linting-format.md:246 msgid "`git commit -m \"message here\"` at the command line" -msgstr "" +msgstr "`git commit -m \"message here\"` na linha de comando" #: ../../package-structure-code/code-style-linting-format.md:248 msgid "" "Once you hit return, pre-commit will run any tools that you have " "configured in a **.pre-commit-config.yaml** file." msgstr "" +"Assim que você pressionar Enter, o pre-commit executará todas as " +"ferramentas configuradas no arquivo **.pre-commit-config.yaml**." #: ../../package-structure-code/code-style-linting-format.md:250 msgid "" @@ -472,6 +618,9 @@ msgid "" "making changes or finding errors in your code, the commit will be applied" " to the repository." msgstr "" +"Se as ferramentas configuradas no pre-commit hook forem executadas com " +"sucesso sem fazer alterações ou encontrar erros no seu código, o commit " +"será aplicado ao repositório." #: ../../package-structure-code/code-style-linting-format.md:254 msgid "" @@ -482,16 +631,25 @@ msgid "" "where there are syntax issues in your code. You will then need to fix " "those issues, manually." msgstr "" +"Se as ferramentas configuradas no hook encontrarem erros nos seus " +"arquivos, o commit NÃO será aplicado ao repositório. Lembre-se da " +"discussão acima: um formatador de código como o Black executará e " +"reformatará seu código. Um linter como o _flake8_ fornecerá uma saída " +"detalhando onde existem problemas de sintaxe no seu código. Você então " +"precisará corrigir esses problemas manualmente." #: ../../package-structure-code/code-style-linting-format.md:261 msgid "" "Once all of the fixes are applied you can re-add (stage) the files to be " "commit. And re-run your commit." msgstr "" +"Depois que todas as correções forem aplicadas, você poderá adicionar " +"(stage) novamente os arquivos para commit e executar o commit outra vez." #: ../../package-structure-code/code-style-linting-format.md:265 msgid "Diagram showing the steps of a pre-commit workflow from left to right." -msgstr "" +msgstr "Diagrama mostrando as etapas de um fluxo de trabalho com pre-commit, da " +"esquerda para a direita." #: ../../package-structure-code/code-style-linting-format.md:267 msgid "" @@ -505,6 +663,16 @@ msgid "" "Source_](https://ljvmiranda921.github.io/notebook/2018/06/21/precommits-" "using-black-and-flake8/)" msgstr "" +"O fluxo de trabalho do pre-commit começa quando você adiciona arquivos " +"com alterações para serem colocados em stage no Git. Em seguida, você " +"executa `git commit`. Quando isso acontece, os hooks de pre-commit são " +"executados. Neste exemplo, o Black, que é o formatador de código, e o " +"flake8, que é um linter, são executados. Se todos os arquivos passarem " +"pelas verificações do Black e do flake8, o commit será registrado. Caso " +"contrário, o commit será cancelado. Você precisará corrigir quaisquer " +"problemas apontados pelo flake8 e então adicionar novamente os arquivos " +"ao stage para commit. [_Fonte da " +"imagem_](https://ljvmiranda921.github.io/notebook/2018/06/21/precommits-using-black-and-flake8/)" #: ../../package-structure-code/code-style-linting-format.md:280 msgid "" @@ -515,10 +683,16 @@ msgid "" "lead to merge conflicts on open and new PR's before the new changes are " "merged." msgstr "" +"Se você tiver uma base de código Python com múltiplos mantenedores " +"trabalhando ativamente no código e pretende usar uma ferramenta como o " +"Black, certifique-se de coordenar isso com sua equipe. Um commit inicial " +"que aplique o Black em todo o pacote provavelmente alterará uma parte " +"significativa do código. Isso pode gerar conflitos de merge em PRs " +"abertos e novos antes que as alterações sejam mescladas." #: ../../package-structure-code/code-style-linting-format.md:287 msgid "General pre commit checks" -msgstr "" +msgstr "Verificações gerais de pre-commit" #: ../../package-structure-code/code-style-linting-format.md:289 msgid "" @@ -528,16 +702,23 @@ msgid "" "also useful to add to your pre-commit workflow to ensure clean, " "streamlined code files." msgstr "" +"Além de executar ferramentas, o Pre-commit também possui um conjunto de " +"[hooks de formatação embutidos](https://github.com/pre-commit/pre-commit-hooks#hooks-available)" +" que você pode usar. Alguns deles, como `trailing-whitespace`, também " +"podem ser úteis no seu fluxo de trabalho com pre-commit para garantir " +"arquivos de código limpos e organizados." #: ../../package-structure-code/code-style-linting-format.md:294 msgid "" "An example pre-commit-config.yaml file is below with examples of how this" " is all setup." msgstr "" +"Abaixo está um exemplo de arquivo pre-commit-config.yaml mostrando como " +"tudo isso pode ser configurado." #: ../../package-structure-code/code-style-linting-format.md:297 msgid "Pre-commit.ci" -msgstr "" +msgstr "Pre-commit.ci" #: ../../package-structure-code/code-style-linting-format.md:299 msgid "" @@ -545,10 +726,14 @@ msgid "" "best friend. This bot, when setup on a repo can be configured to do the " "following:" msgstr "" +"O [Pre-commit.ci](https://pre-commit.ci) é um bot que pode se tornar seu " +"novo melhor amigo. Quando configurado em um repositório, esse bot pode " +"ser ajustado para fazer o seguinte:" #: ../../package-structure-code/code-style-linting-format.md:302 msgid "It will check every pull request using all of the pre-commit hook setting" -msgstr "" +msgstr "Ele verificará todos os pull requests usando todas as configurações dos " +"hooks de pre-commit" #: ../../package-structure-code/code-style-linting-format.md:303 msgid "" @@ -556,26 +741,35 @@ msgid "" "commit fixes, saving you, and new contributors the time of reformatting a" " pr that has format issues." msgstr "" +"Se desejar, ele também enviará um pull request para seu repositório com " +"as correções do pre-commit, economizando seu tempo e o de novos " +"contribuidores ao evitar a necessidade de reformatar um PR com problemas " +"de formatação." #: ../../package-structure-code/code-style-linting-format.md:306 msgid "You can also call the bot on any pull request to run / and fix the code." -msgstr "" +msgstr "Você também pode chamar o bot em qualquer pull request para executar e " +"corrigir o código." #: ../../package-structure-code/code-style-linting-format.md:308 msgid "" "The pre-commit.ci bot uses the same pre-commit-config.yaml file that you " "use to setup pre-commit locally." -msgstr "" +msgstr "O bot pre-commit.ci usa o mesmo arquivo pre-commit-config.yaml que você " +"usa para configurar o pre-commit localmente." #: ../../package-structure-code/code-style-linting-format.md:311 msgid "Setting up a bot like this can be valuable because:" -msgstr "" +msgstr "Configurar um bot como esse pode ser valioso porque:" #: ../../package-structure-code/code-style-linting-format.md:313 msgid "" "It can make is easier for maintainers as they no longer have to worry at " "allows about fixing code format. The bot will do the work for them." msgstr "" +"Isso pode facilitar a vida dos mantenedores, já que eles não precisarão " +"mais se preocupar em corrigir a formatação do código. O bot fará esse " +"trabalho por eles." #: ../../package-structure-code/code-style-linting-format.md:315 msgid "" @@ -583,26 +777,34 @@ msgid "" "commit locally or worry about linting their code. They can even make " "small fixes to the code directly on GitHub without worry." msgstr "" +"Também pode facilitar para novos contribuidores, já que eles não precisarão " +"configurar o pre-commit localmente nem se preocupar com linting do " +"código. Eles podem até fazer pequenas correções diretamente no GitHub sem " +"preocupações." #: ../../package-structure-code/code-style-linting-format.md:317 msgid "Setting up a git pre-commit hook" -msgstr "" +msgstr "Configurando um hook de pre-commit no Git" #: ../../package-structure-code/code-style-linting-format.md:319 msgid "To setup pre-commit locally, you need to do 3 things:" -msgstr "" +msgstr "Para configurar o pre-commit localmente, você precisa fazer 3 coisas:" #: ../../package-structure-code/code-style-linting-format.md:321 msgid "" "Install pre-commit (and include it as a development requirement in your " "repository)" msgstr "" +"Instalar o pre-commit (e incluí-lo como dependência de desenvolvimento no " +"seu repositório)" #: ../../package-structure-code/code-style-linting-format.md:331 msgid "" "Create a .pre-commit-config.yaml file in the root of your package " "directory." msgstr "" +"Criar um arquivo .pre-commit-config.yaml na raiz do diretório do seu " +"pacote." #: ../../package-structure-code/code-style-linting-format.md:333 msgid "" @@ -610,6 +812,9 @@ msgid "" "setup the pre-commit hook and the pre-commit.ci bot if you chose to " "implement that too." msgstr "" +"Abaixo está um exemplo de arquivo **.pre-commit-config.yaml** que pode " +"ser usado para configurar o hook de pre-commit e o bot pre-commit.ci, " +"caso você escolha implementar isso também." #: ../../package-structure-code/code-style-linting-format.md:341 msgid "" @@ -617,6 +822,9 @@ msgid "" "each `git commit`, in this case, it specifies a `flake8` using version " "`6.0.0`." msgstr "" +"Esse arquivo especifica um hook que será acionado automaticamente antes " +"de cada `git commit`; neste caso, ele especifica o `flake8` usando a " +"versão `6.0.0`." #: ../../package-structure-code/code-style-linting-format.md:344 msgid "" @@ -624,16 +832,22 @@ msgid "" "install all of the hooks specified in the pre-commit yaml file into your " "environment." msgstr "" +"Instale seus hooks de pre-commit usando `pre-commit install`. Isso " +"instalará todos os hooks especificados no arquivo yaml do pre-commit no " +"seu ambiente." #: ../../package-structure-code/code-style-linting-format.md:346 msgid "" "Once you have done the above, you are ready to start working on your " "code. Pre-commit will run every time you run `git commit`." msgstr "" +"Depois de concluir as etapas acima, você estará pronto para começar a " +"trabalhar no seu código. O pre-commit será executado sempre que você " +"rodar `git commit`." #: ../../package-structure-code/code-style-linting-format.md:349 msgid "Summary" -msgstr "" +msgstr "Resumo" #: ../../package-structure-code/code-style-linting-format.md:351 msgid "" @@ -645,16 +859,26 @@ msgid "" "you, reduce effort that you need to make surrounding decisions around " "code format and style." msgstr "" +"A pyOpenSci sugere configurar um linter e uma ferramenta de estilo de código para o " +"seu pacote, independentemente de você usar hooks de pre-commit, CI ou " +"outra infraestrutura para gerenciar a formatação do código. Configurar " +"essas ferramentas fornecerá feedback automático sobre a estrutura do seu " +"código enquanto você (ou um colaborador) o escreve. E usar uma ferramenta " +"como o Black, que formata o código automaticamente, reduz o esforço " +"necessário para tomar decisões relacionadas à formatação e ao estilo do " +"código." #: ../../package-structure-code/complex-python-package-builds.md:1 msgid "Complex Python package builds" -msgstr "" +msgstr "Builds complexas de pacotes Python" #: ../../package-structure-code/complex-python-package-builds.md:3 msgid "" "This guide is focused on packages that are either pure-python or that " "have a few simple extensions in another language such as C or C++." msgstr "" +"Este guia é focado em pacotes que são puramente Python ou que possuem " +"algumas extensões simples em outra linguagem, como C ou C++." #: ../../package-structure-code/complex-python-package-builds.md:6 msgid "" @@ -665,6 +889,11 @@ msgid "" "reference for complex builds and covers scikit-build-core, meson-python, " "maturin, and other modern build backends." msgstr "" +"Para orientações abrangentes sobre packaging de projetos compilados " +"com extensões em C/C++/Fortran/Rust, consulte o [Scientific Python " +"Development Guide sobre packaging de projetos compilados](https://learn.scientific-python.org/development/guides/packaging-compiled/). " +"Essa é a melhor referência para builds complexas e cobre scikit-build-core, " +"meson-python, maturin e outros backends modernos de build." #: ../../package-structure-code/complex-python-package-builds.md:8 msgid "" @@ -676,10 +905,17 @@ msgid "" "an overview and thorough discussion of these nuances, please see [this " "site.](https://pypackaging-native.github.io/)" msgstr "" +"Se você tiver dúvidas sobre esses tipos de pacote, abra uma [issue " +"especificamente sobre este guia no repositório GitHub deste " +"guia](https://github.com/pyOpenSci/python-package-guide/issues). Existem " +"muitas nuances relacionadas à build e distribuição de pacotes Python que " +"possuem extensões compiladas e dependências não Python necessárias em " +"tempo de build. Para uma visão geral e uma discussão detalhada dessas " +"nuances, consulte [este site.](https://pypackaging-native.github.io/)" #: ../../package-structure-code/complex-python-package-builds.md:10 msgid "Pure Python packages vs. packages with extensions in other languages" -msgstr "" +msgstr "Pacotes Python puros vs. pacotes com extensões em outras linguagens" #: ../../package-structure-code/complex-python-package-builds.md:12 msgid "" @@ -687,6 +923,9 @@ msgid "" " These categories can in turn help you select the correct package " "frontend and backend tools." msgstr "" +"Você pode classificar a complexidade de pacotes Python em três categorias " +"gerais. Essas categorias, por sua vez, podem ajudar você a selecionar as " +"ferramentas corretas de frontend e backend para packaging." #: ../../package-structure-code/complex-python-package-builds.md:16 msgid "" @@ -695,6 +934,10 @@ msgid "" "chose a tool below that has the features that you want and be done with " "your decision!" msgstr "" +"**Pacotes Python puros:** são pacotes que dependem apenas de Python para " +"funcionar. Fazer a build de um pacote Python puro é mais simples. Assim, " +"você pode escolher abaixo uma ferramenta que tenha os recursos desejados " +"e finalizar sua decisão!" #: ../../package-structure-code/complex-python-package-builds.md:18 msgid "" @@ -707,6 +950,16 @@ msgid "" "that supports additional build setups. We suggest that you chose build " "tool that supports custom build steps like Hatch." msgstr "" +"**Pacotes Python com extensões não Python:** esses pacotes possuem " +"componentes adicionais chamados extensões, escritos em outras linguagens " +"(como C ou C++). Se você tiver um pacote com extensões não Python, então " +"precisará selecionar uma ferramenta de backend de build que permita " +"etapas adicionais de build necessárias para compilar o código da sua " +"extensão. Além disso, se quiser usar uma ferramenta de frontend para dar " +"suporte ao seu fluxo de trabalho, precisará escolher uma ferramenta que " +"suporte configurações adicionais de build. Sugerimos que você escolha uma " +"ferramenta de build que suporte etapas de build customizadas, como o " +"Hatch." #: ../../package-structure-code/complex-python-package-builds.md:20 msgid "" @@ -719,10 +972,18 @@ msgid "" "python](https://mesonbuild.com/Python-module.html) to build. NOTE: you " "can use meson-python with PDM." msgstr "" +"**Pacotes Python que possuem extensões escritas em diferentes linguagens " +"(por exemplo, Fortran e C++) ou que possuem dependências não Python " +"difíceis de instalar (por exemplo, GDAL):** esses pacotes frequentemente " +"possuem etapas de build complexas (mais complexas do que um pacote com " +"apenas algumas extensões em C, por exemplo). Assim, esses pacotes exigem " +"ferramentas como [scikit-build](https://scikit-build.readthedocs.io/en/latest/) " +"ou [meson-python](https://mesonbuild.com/Python-module.html) para build. " +"OBSERVAÇÃO: você pode usar meson-python com PDM." #: ../../package-structure-code/complex-python-package-builds.md:23 msgid "Mixing frontend and backend projects" -msgstr "" +msgstr "Misturando projetos frontend e backend" #: ../../package-structure-code/complex-python-package-builds.md:25 msgid "" @@ -735,6 +996,14 @@ msgid "" "package-build-tools) for more information about frontend and backend " "compatibility." msgstr "" +"Às vezes é necessário ou desejável usar um frontend de build com um " +"backend de build alternativo. Isso acontece porque alguns frontends não " +"possuem um backend padrão (`build`), deixando essa escolha para o " +"mantenedor. Outros backends (`hatch`) possuem um backend preferido " +"(`hatchling`), mas permitem que o mantenedor migre para outro, enquanto " +"alguns backends (`poetry`) funcionam apenas com um único backend " +"(`poetry-core`). Consulte (#python-package-build-tools) para mais " +"informações sobre compatibilidade entre frontend e backend." #: ../../package-structure-code/complex-python-package-builds.md:31 msgid "" @@ -749,6 +1018,16 @@ msgid "" "[plugins](https://hatch.pypa.io/1.9/plugins/about/) or be replaced by a " "backend that is already capable of building extension modules." msgstr "" +"Neste guia de packaging recomendamos usar `hatch` junto com seu " +"backend preferido `hatchling`. Embora isso seja adequado para a maioria " +"dos pacotes, um backend alternativo pode ser usado com o Hatch, se " +"necessário, ao criar um módulo de extensão. Um módulo de extensão Python " +"é aquele composto, parcial ou totalmente, por código compilado. Nesse " +"caso, o backend escolhido (como `meson-python`) precisa saber como " +"compilar a linguagem da extensão e vinculá-la ao Python. O hatchling " +"não sabe fazer isso sozinho e precisa usar " +"[plugins](https://hatch.pypa.io/1.9/plugins/about/) ou ser substituído " +"por um backend que já seja capaz de construir módulos de extensão." #: ../../package-structure-code/complex-python-package-builds.md:39 msgid "" @@ -757,10 +1036,14 @@ msgid "" " command, or from following the packaging tutorial, you may have to make " "a change like this" msgstr "" +"Para usar um backend diferente, você precisará editar o arquivo " +"`pyproject.toml` do seu projeto. Se você tiver um `pyproject.toml` gerado " +"pelo comando hatch, ou seguindo o tutorial de packaging, talvez " +"precise fazer uma alteração como esta" #: ../../package-structure-code/declare-dependencies.md:6 msgid "Dependencies for your Python Package" -msgstr "" +msgstr "Dependências do seu pacote Python" #: ../../package-structure-code/declare-dependencies.md:8 msgid "" @@ -769,10 +1052,14 @@ msgid "" " metadata for your package. On this page, you will learn how to specify " "different types of dependencies in your `pyproject.toml`." msgstr "" +"Na [página de visão geral do pyproject.toml](pyproject-toml-python-package-" +"metadata), você aprendeu como configurar um arquivo **pyproject.toml** " +"com os metadados básicos do seu pacote. Nesta página, você aprenderá como " +"especificar diferentes tipos de dependências no seu `pyproject.toml`." #: ../../package-structure-code/declare-dependencies.md:14 msgid "What is a package dependency?" -msgstr "" +msgstr "O que é uma dependência de pacote?" #: ../../package-structure-code/declare-dependencies.md:16 msgid "" @@ -782,28 +1069,39 @@ msgid "" "metadata in one place, making it simpler for users and contributors to " "understand your package." msgstr "" +"Uma dependência de pacote Python se refere a um pacote externo ou uma " +"ferramenta necessária para usar ou trabalhar no seu projeto Python. " +"Declare suas dependências no arquivo `pyproject.toml`. Isso mantém todos " +"os metadados do pacote em um só lugar, facilitando para usuários e " +"contribuidores entenderem seu pacote." #: ../../package-structure-code/declare-dependencies.md:19 msgid "Older ways to declare dependencies" -msgstr "" +msgstr "Formas antigas de declarar dependências" #: ../../package-structure-code/declare-dependencies.md:22 msgid "" "While `pyproject.toml` is now the standard, you may sometimes encounter " "older approaches to storing dependencies \"in the wild\":" msgstr "" +"Embora `pyproject.toml` agora seja o padrão, às vezes você ainda pode " +"encontrar abordagens mais antigas para armazenar dependências \"por aí\":" #: ../../package-structure-code/declare-dependencies.md:24 msgid "" "**requirements.txt**: Previously common for dependencies, still used by " "some projects for local development" msgstr "" +"**requirements.txt**: Antes era comum para dependências, e ainda é usado " +"por alguns projetos para desenvolvimento local" #: ../../package-structure-code/declare-dependencies.md:25 msgid "" "**setup.py or setup.cfg**: May be needed for packages with extensions in " "other languages" msgstr "" +"**setup.py ou setup.cfg**: Pode ser necessário para pacotes com extensões " +"em outras linguagens" #: ../../package-structure-code/declare-dependencies.md:27 msgid "" @@ -811,10 +1109,12 @@ msgid "" "documentation](https://setuptools.pypa.io/en/latest/userguide/dependency_management.html" "#declaring-required-dependency)" msgstr "" +"[Saiba mais na documentação do setuptools](https://setuptools.pypa.io/en/latest/userguide/dependency_management.html" +"#declaring-required-dependency)" #: ../../package-structure-code/declare-dependencies.md:30 msgid "Why specify dependencies" -msgstr "" +msgstr "Por que especificar dependências" #: ../../package-structure-code/declare-dependencies.md:32 msgid "" @@ -825,6 +1125,13 @@ msgid "" "`project.dependency` array, Pandas will be installed into the users' " "environment when they install your package using uv, pip, or conda." msgstr "" +"Especificar dependências no array [project.dependency] do seu arquivo " +"`pyproject.toml` garante que as bibliotecas necessárias para executar seu " +"pacote sejam instaladas corretamente no ambiente do usuário. Por exemplo, " +"se o seu pacote precisa do Pandas para funcionar corretamente, e você " +"adicionar o Pandas ao array `project.dependency`, o Pandas será instalado " +"no ambiente dos usuários quando eles instalarem seu pacote usando uv, " +"pip ou conda." #: ../../package-structure-code/declare-dependencies.md:45 msgid "" @@ -834,16 +1141,24 @@ msgid "" " development dependencies. These dependencies can be stored in arrays " "(lists of dependencies) within a `[development-group]` table." msgstr "" +"Dependências de desenvolvimento facilitam o trabalho dos contribuidores " +"no seu pacote. Você pode configurar instruções para executar workflows " +"específicos, como testes, linting e até tipagem, que instalam " +"automaticamente grupos de dependências de desenvolvimento. Essas " +"dependências podem ser armazenadas em arrays (listas de dependências) " +"dentro de uma tabela `[development-group]`." #: ../../package-structure-code/declare-dependencies.md:55 msgid "Types of dependencies" -msgstr "" +msgstr "Tipos de dependências" #: ../../package-structure-code/declare-dependencies.md:57 msgid "" "There are three different types of dependencies that you will learn about" " on this page:" msgstr "" +"Existem três tipos diferentes de dependências que você aprenderá nesta " +"página:" #: ../../package-structure-code/declare-dependencies.md:59 msgid "" @@ -852,6 +1167,10 @@ msgid "" " add these dependencies to the `[project.dependencies]` table in your " "pyproject.toml file." msgstr "" +"**Dependências obrigatórias:** São dependências que precisam ser " +"instaladas para que seu pacote funcione corretamente no ambiente do " +"usuário. Você adiciona essas dependências na tabela " +"`[project.dependencies]` do seu arquivo pyproject.toml." #: ../../package-structure-code/declare-dependencies.md:60 msgid "" @@ -860,6 +1179,10 @@ msgid "" "package. Store these in the `[project.optional.dependencies]` table or " "your pyproject.toml file." msgstr "" +"**Dependências de funcionalidades:** São dependências necessárias caso o " +"usuário queira acessar funcionalidades adicionais (que não fazem parte do " +"núcleo) do seu pacote. Armazene essas dependências na tabela " +"`[project.optional.dependencies]` do seu arquivo pyproject.toml." #: ../../package-structure-code/declare-dependencies.md:61 msgid "" @@ -869,6 +1192,11 @@ msgid "" "dependencies. Store these in the `[project.dependency.groups]` table or " "your pyproject.toml file." msgstr "" +"**Dependências de desenvolvimento:** Essas dependências são necessárias " +"caso alguém queira desenvolver ou trabalhar no seu pacote. Isso inclui, " +"por exemplo, linters e ferramentas de teste como pytest e mypy. " +"Armazene essas dependências na tabela " +"`[project.dependency.groups]` do seu arquivo pyproject.toml." #: ../../package-structure-code/declare-dependencies.md:64 msgid "" @@ -876,16 +1204,21 @@ msgid "" "software called within the code of your project or used during the " "development of your package." msgstr "" +"Uma dependência não faz parte da base de código do seu projeto. Ela é um " +"pacote ou software chamado dentro do código do seu projeto ou usado " +"durante o desenvolvimento do seu pacote." #: ../../package-structure-code/declare-dependencies.md:69 msgid "1. Required dependencies" -msgstr "" +msgstr "1. Dependências obrigatórias" #: ../../package-structure-code/declare-dependencies.md:71 msgid "" "Required dependencies are imported and called directly within your " "package's code. They are needed for your package to run." msgstr "" +"Dependências obrigatórias são importadas e chamadas diretamente dentro do " +"código do seu pacote. Elas são necessárias para que seu pacote funcione." #: ../../package-structure-code/declare-dependencies.md:74 msgid "" @@ -894,6 +1227,11 @@ msgid "" "your package with uv, pip, or conda, these dependencies will be " "automatically installed alongside your package in their environment." msgstr "" +"Você pode adicionar suas dependências obrigatórias ao array " +"`dependencies` na tabela `[project]` do seu arquivo " +"**pyproject.toml**. Quando usuários instalarem seu pacote com uv, pip ou " +"conda, essas dependências serão instaladas automaticamente junto com seu " +"pacote no ambiente deles." #: ../../package-structure-code/declare-dependencies.md:92 msgid "" @@ -901,34 +1239,41 @@ msgid "" "fewer dependencies reduce the possibility of version conflicts in user " "environments." msgstr "" +"Tente ao máximo minimizar dependências sempre que possível. Lembre-se de " +"que menos dependências reduzem a possibilidade de conflitos de versão nos " +"ambientes dos usuários." #: ../../package-structure-code/declare-dependencies.md msgid "How to Add Required Dependencies with UV" -msgstr "" +msgstr "Como adicionar dependências obrigatórias com UV" #: ../../package-structure-code/declare-dependencies.md:102 #: ../../package-structure-code/declare-dependencies.md:162 #: ../../package-structure-code/declare-dependencies.md:223 msgid "You can use uv to add dependencies to your pyproject.toml file:" -msgstr "" +msgstr "Você pode usar uv para adicionar dependências ao seu arquivo " +"pyproject.toml:" #: ../../package-structure-code/declare-dependencies.md:104 msgid "**Add a required dependency:**" -msgstr "" +msgstr "**Adicionar uma dependência obrigatória:**" #: ../../package-structure-code/declare-dependencies.md:110 msgid "Will add numpy as a dependency to your `project.dependency` array:" -msgstr "" +msgstr "Irá adicionar numpy como dependência ao seu array " +"`project.dependency`:" #: ../../package-structure-code/declare-dependencies.md:121 msgid "Requiring packages from GitHub / Gitlab" -msgstr "" +msgstr "Dependências instaladas a partir do GitHub/GitLab" #: ../../package-structure-code/declare-dependencies.md:124 msgid "" "If you have dependencies that need to be installed directly from GitHub, " "you can specify them in your pyproject.toml file like this:" msgstr "" +"Se você tiver dependências que precisam ser instaladas diretamente do " +"GitHub, pode especificá-las no seu arquivo pyproject.toml desta forma:" #: ../../package-structure-code/declare-dependencies.md:133 msgid "" @@ -937,10 +1282,15 @@ msgid "" " your project to PyPI. You never know how the project might change over " "time. Commit hashes are more reliable as they can't be changed" msgstr "" +"IMPORTANTE: Se sua biblioteca depende de um projeto hospedado no GitHub, " +"você deve apontar para um commit/tag/hash específico desse repositório " +"antes de enviar seu projeto para o PyPI. Você nunca sabe como o projeto " +"pode mudar ao longo do tempo. Hashes de commit são mais confiáveis porque " +"não podem ser alterados" #: ../../package-structure-code/declare-dependencies.md:140 msgid "2. Optional dependencies" -msgstr "" +msgstr "2. Dependências opcionais" #: ../../package-structure-code/declare-dependencies.md:142 msgid "" @@ -951,10 +1301,19 @@ msgid "" "Bokeh as an `[optional.dependency]`. Users who want interactive plotting " "will install it. Users who don't need plotting don't have to install it." msgstr "" +"Dependências opcionais (também chamadas de dependências de feature) podem " +"ser instaladas pelos usuários conforme necessário. Dependências opcionais " +"adicionam funcionalidades específicas ao seu pacote que nem todos os " +"usuários precisam. Por exemplo, se seu pacote tiver uma funcionalidade " +"opcional de gráficos interativos usando Bokeh, você listaria o Bokeh como " +"um `[optional.dependency]`. Usuários que quiserem gráficos interativos " +"irão instalá-lo. Usuários que não precisarem de gráficos não precisam " +"instalá-lo." #: ../../package-structure-code/declare-dependencies.md:144 msgid "Place these dependencies in the `[project.optional-dependencies]` table." -msgstr "" +msgstr "Coloque essas dependências na tabela " +"`[project.optional-dependencies]`." #: ../../package-structure-code/declare-dependencies.md:155 msgid "" @@ -962,14 +1321,17 @@ msgid "" "installs all required dependencies. Optional dependencies are only " "installed if the user explicitly requests them." msgstr "" +"Quando um usuário instala seu pacote, uv, pip ou conda instalam " +"automaticamente todas as dependências obrigatórias. Dependências " +"opcionais só são instaladas se o usuário solicitá-las explicitamente." #: ../../package-structure-code/declare-dependencies.md msgid "How to Add optional.dependencies using UV" -msgstr "" +msgstr "Como adicionar optional.dependencies usando UV" #: ../../package-structure-code/declare-dependencies.md:164 msgid "**Add an optional dependency:**" -msgstr "" +msgstr "**Adicionar uma dependência opcional:**" #: ../../package-structure-code/declare-dependencies.md:170 msgid "Will add this to your pyproject.toml file:" @@ -977,29 +1339,31 @@ msgstr "" #: ../../package-structure-code/declare-dependencies.md:181 msgid "3. Dependency groups" -msgstr "" +msgstr "3. Grupos de dependências" #: ../../package-structure-code/declare-dependencies.md:183 msgid "" "Development dependencies include packages needed to work on your package " "locally. They are used to perform tasks such as:" msgstr "" +"Dependências de desenvolvimento incluem pacotes necessários para trabalhar " +"localmente no seu pacote. Elas são usadas para executar tarefas como:" #: ../../package-structure-code/declare-dependencies.md:186 msgid "running your test suite (pytest, pytest-cov)" -msgstr "" +msgstr "executar sua suíte de testes (pytest, pytest-cov)" #: ../../package-structure-code/declare-dependencies.md:187 msgid "building your documentation (sphinx, sphinx-theme packages)" -msgstr "" +msgstr "gerar sua documentação (sphinx, pacotes de sphinx-theme)" #: ../../package-structure-code/declare-dependencies.md:188 msgid "linting and formatting code (ruff, black)" -msgstr "" +msgstr "linting e formatação de código (ruff, black)" #: ../../package-structure-code/declare-dependencies.md:189 msgid "building package distribution files (build, twine)" -msgstr "" +msgstr "gerar arquivos de distribuição do pacote (build, twine)" #: ../../package-structure-code/declare-dependencies.md:191 msgid "" @@ -1007,10 +1371,14 @@ msgid "" " install and use your package. However, they will make it easier for " "contributors to your project to setup development environments locally." msgstr "" +"Grupos de dependências são opcionais porque não são necessários para que " +"usuários instalem e usem seu pacote. Porém, eles facilitam para " +"contribuidores do projeto configurarem ambientes de desenvolvimento " +"localmente." #: ../../package-structure-code/declare-dependencies.md:196 msgid "New: PEP 735 development dependency groups" -msgstr "" +msgstr "Novo: grupos de dependências de desenvolvimento PEP 735" #: ../../package-structure-code/declare-dependencies.md:199 msgid "" @@ -1019,34 +1387,43 @@ msgid "" "intentionally separate from `[project.optional-dependencies]`, which can" " be installed into a user's environment." msgstr "" +"`[development-groups]` é uma especificação mais nova introduzida pela " +"PEP 735. Ela foi criada para organizar dependências de desenvolvimento e " +"é intencionalmente separada de `[project.optional-dependencies]`, que " +"podem ser instaladas no ambiente do usuário." #: ../../package-structure-code/declare-dependencies.md:204 msgid "How to declare dependency groups" -msgstr "" +msgstr "Como declarar grupos de dependências" #: ../../package-structure-code/declare-dependencies.md:206 msgid "" "You declare development dependencies in your **pyproject.toml** file " "within a `[development-groups]` table." msgstr "" +"Você declara dependências de desenvolvimento no seu arquivo " +"**pyproject.toml** dentro de uma tabela `[development-groups]`." #: ../../package-structure-code/declare-dependencies.md:209 msgid "" "Similar to optional-dependencies, you can create separate subgroups or " "arrays with names using the syntax: `group-name = [\"dep1\", \"dep2\"]`" msgstr "" +"Assim como em optional-dependencies, você pode criar subgrupos separados " +"ou arrays nomeados usando a sintaxe: " +"`group-name = [\"dep1\", \"dep2\"]`" #: ../../package-structure-code/declare-dependencies.md msgid "How to Add [development.group] using UV" -msgstr "" +msgstr "Como adicionar [development.group] usando UV" #: ../../package-structure-code/declare-dependencies.md:225 msgid "**Add a development group dependency:**" -msgstr "" +msgstr "**Adicionar uma dependência de grupo de desenvolvimento:**" #: ../../package-structure-code/declare-dependencies.md:232 msgid "Will add the following to your pyproject.toml file:" -msgstr "" +msgstr "Irá adicionar o seguinte ao seu arquivo pyproject.toml:" #: ../../package-structure-code/declare-dependencies.md:245 #: ../../package-structure-code/declare-dependencies.md:251 @@ -1055,7 +1432,7 @@ msgstr "" #: ../../package-structure-code/declare-dependencies.md:496 #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:14 msgid "Todo" -msgstr "" +msgstr "A Fazer" #: ../../package-structure-code/declare-dependencies.md:246 msgid "" @@ -1063,10 +1440,13 @@ msgid "" "install and what \"ships\" with your package vs what just gets installed " "via commands (ie development)" msgstr "" +"vou continuar daqui amanhã - esta seção é toda sobre como as coisas são " +"instaladas e o que \"vem junto\" com seu pacote vs o que apenas é " +"instalado via comandos (ou seja, desenvolvimento)" #: ../../package-structure-code/declare-dependencies.md:249 msgid "Understanding required vs. optional dependencies" -msgstr "" +msgstr "Entendendo dependências obrigatórias vs. opcionais" #: ../../package-structure-code/declare-dependencies.md:252 msgid "" @@ -1078,6 +1458,14 @@ msgid "" "we originally wrote this section, development groups didn't exist, and we" " were using optional dependencies for dev groups." msgstr "" +"O objetivo desta seção é ajudar usuários a entender como dependências se " +"relacionam com o que é instalado no ambiente deles. Temos dois gráficos " +"nesta página - um que separa os dois grupos de ferramentas " +"(obrigatórias e opcionais) que são instaladas no ambiente do usuário vs " +"grupos de desenvolvimento, que são voltados para contribuidores/" +"desenvolvimento, e não para usuários finais. Quando escrevemos esta " +"seção originalmente, grupos de desenvolvimento não existiam, e estávamos " +"usando dependências opcionais para grupos de desenvolvimento." #: ../../package-structure-code/declare-dependencies.md:254 msgid "" @@ -1085,6 +1473,10 @@ msgid "" "required deps - created before development groups existed... there is " "another graphi that shows what gets installed into a uses envt." msgstr "" +"O gráfico abaixo mostra dois círculos representando dependências " +"opcionais vs regulares/obrigatórias - criado antes de existirem grupos " +"de desenvolvimento... existe outro gráfico que mostra o que é instalado " +"no ambiente do usuário." #: ../../package-structure-code/declare-dependencies.md:258 msgid "" @@ -1094,6 +1486,11 @@ msgid "" "working on the package locally and feature dependencies for additional " "functionality." msgstr "" +"Diagrama mostrando os dois principais grupos de dependências de pacotes " +"Python: obrigatórias e opcionais. Dependências obrigatórias incluem os " +"pacotes principais necessários para usar seu pacote. Dependências " +"opcionais incluem dependências de desenvolvimento para trabalhar " +"localmente no pacote e dependências de funcionalidades adicionais." #: ../../package-structure-code/declare-dependencies.md:260 msgid "" @@ -1101,10 +1498,14 @@ msgid "" "dependencies that users need to run your package, and **optional** " "dependencies for development work or additional features." msgstr "" +"Dependências de pacotes Python se dividem em duas categorias: " +"dependências **obrigatórias**, que usuários precisam para executar seu " +"pacote, e dependências **opcionais** para desenvolvimento ou " +"funcionalidades adicionais." #: ../../package-structure-code/declare-dependencies.md:265 msgid "Additional dependency resources" -msgstr "" +msgstr "Recursos adicionais sobre dependências" #: ../../package-structure-code/declare-dependencies.md:267 msgid "" @@ -1112,6 +1513,9 @@ msgid "" "dependencies](https://packaging.python.org/en/latest/specifications" "/declaring-project-metadata/#dependencies-optional-dependencies)" msgstr "" +"[Saiba mais: Veja a visão geral da PyPA sobre declaração de dependências " +"opcionais](https://packaging.python.org/en/latest/specifications" +"/declaring-project-metadata/#dependencies-optional-dependencies)" #: ../../package-structure-code/declare-dependencies.md:268 msgid "" @@ -1119,10 +1523,13 @@ msgid "" "specifiers](https://packaging.python.org/en/latest/specifications" "/dependency-specifiers/)" msgstr "" +"[Especificadores de " +"dependência](https://packaging.python.org/en/latest/specifications" +"/dependency-specifiers/)" #: ../../package-structure-code/declare-dependencies.md:272 msgid "Install dependency groups" -msgstr "" +msgstr "Instalar grupos de dependências" #: ../../package-structure-code/declare-dependencies.md:274 msgid "" @@ -1130,6 +1537,9 @@ msgid "" "by default. To install optional dependencies, you need to specify which " "groups to include when installing the package." msgstr "" +"Quando alguém instala seu pacote, apenas as dependências principais são " +"instaladas por padrão. Para instalar dependências opcionais, você precisa " +"especificar quais grupos incluir durante a instalação do pacote." #: ../../package-structure-code/declare-dependencies.md:280 msgid "" @@ -1141,6 +1551,14 @@ msgid "" "your-package[tests] installs the package, core dependencies, and test " "dependencies including pytest and pytest-cov." msgstr "" +"Diagrama mostrando um diagrama de Venn com três seções representando " +"grupos de dependências - docs, feature e tests. No centro ele mostra " +"your-package com as dependências principais seaborn e numpy. Duas setas " +"à direita demonstram: primeiro, `python -m pip install your-package` " +"instala apenas o pacote e as dependências principais. Segundo, " +"`python -m pip install your-package[tests]` instala o pacote, as " +"dependências principais e as dependências de teste, incluindo pytest e " +"pytest-cov." #: ../../package-structure-code/declare-dependencies.md:282 msgid "" @@ -1150,10 +1568,16 @@ msgid "" "core dependencies, and the test dependencies from the `[project.optional-" "dependencies]` table." msgstr "" +"Quando um usuário instala seu pacote usando " +"`pip install your-package`, apenas seu pacote e suas dependências " +"principais são instalados. Quando ele instala com " +"`pip install your-package[tests]`, o pip instalará seu pacote, as " +"dependências principais e as dependências de teste da tabela " +"`[project.optional-dependencies]`." #: ../../package-structure-code/declare-dependencies.md:289 msgid "Using uv or pip for installation" -msgstr "" +msgstr "Usando uv ou pip para instalação" #: ../../package-structure-code/declare-dependencies.md:291 msgid "" @@ -1162,33 +1586,40 @@ msgid "" "dependencies automatically. You can also use pip and install dependencies" " into the environment of your choice." msgstr "" +"O UV simplifica esse processo, permitindo sincronizar uma venv no " +"diretório do seu projeto com uma instalação editável do seu pacote e " +"suas dependências automaticamente. Você também pode usar pip e instalar " +"dependências no ambiente de sua escolha." #: ../../package-structure-code/declare-dependencies.md:296 msgid "" "We shouldn't show UV pip install, so how do you add optional feature deps" " with UV??" msgstr "" +"Não deveríamos mostrar UV pip install, então como adicionar dependências " +"opcionais de feature com UV??" #: ../../package-structure-code/declare-dependencies.md:299 msgid "**Install development groups:**" -msgstr "" +msgstr "**Instalar grupos de desenvolvimento:**" #: ../../package-structure-code/declare-dependencies.md msgid "Use UV" -msgstr "" +msgstr "Usar UV" #: ../../package-structure-code/declare-dependencies.md:305 msgid "You can use uv sync to sync dependency groups in your uv-managed venv" -msgstr "" +msgstr "Você pode usar `uv sync` para sincronizar grupos de dependências na sua " +"venv gerenciada pelo uv" #: ../../package-structure-code/declare-dependencies.md:313 #: ../../package-structure-code/declare-dependencies.md:334 msgid "**Install optional dependencies:**" -msgstr "" +msgstr "**Instalar dependências opcionais:**" #: ../../package-structure-code/declare-dependencies.md:321 msgid "**Install everything (package + all dependencies):**" -msgstr "" +msgstr "**Instalar tudo (pacote + todas as dependências):**" #: ../../package-structure-code/declare-dependencies.md:327 msgid "" @@ -1196,14 +1627,18 @@ msgid "" "manages your virtual environment and keeps your lockfile up to date. Use " "`uv pip install` when you need pip-compatible behavior." msgstr "" +"`uv sync` é o comando recomendado para workflows de desenvolvimento. Ele " +"gerencia seu ambiente virtual e mantém seu lockfile atualizado. Use " +"`uv pip install` quando precisar de compatibilidade com comportamento do " +"pip." #: ../../package-structure-code/declare-dependencies.md msgid "Use pip (version >=25.1)" -msgstr "" +msgstr "Usar pip (versão >=25.1)" #: ../../package-structure-code/declare-dependencies.md:341 msgid "**Install dependency groups:**" -msgstr "" +msgstr "**Instalar grupos de dependências:**" #: ../../package-structure-code/declare-dependencies.md:348 msgid "" @@ -1211,38 +1646,45 @@ msgid "" " your current active Python environment. This helps avoid installation " "conflicts." msgstr "" +"Sempre execute pip usando `python -m pip` para garantir que você está " +"usando o pip do seu ambiente Python atualmente ativo. Isso ajuda a evitar " +"conflitos de instalação." #: ../../package-structure-code/declare-dependencies.md:352 msgid "" "**Note:** Some shells (like zsh on Mac) require quotes around brackets to" " run successfully:" msgstr "" +"**Nota:** Alguns shells (como zsh no Mac) exigem aspas ao redor dos " +"colchetes para executar corretamente:" #: ../../package-structure-code/declare-dependencies.md:354 msgid "`python -m pip install \".[tests]\"`" -msgstr "" +msgstr "`python -m pip install \".[tests]\"`" #: ../../package-structure-code/declare-dependencies.md:360 msgid "Combining dependency groups" -msgstr "" +msgstr "Combinando grupos de dependências" #: ../../package-structure-code/declare-dependencies.md:362 msgid "You can also create combined groups that reference other groups:" -msgstr "" +msgstr "Você também pode criar grupos combinados que referenciam outros grupos:" #: ../../package-structure-code/declare-dependencies.md:371 msgid "Then install everything with pip install or uv sync as needed:" -msgstr "" +msgstr "Depois instale tudo com pip install ou uv sync conforme necessário:" #: ../../package-structure-code/declare-dependencies.md:380 msgid "" "When you install optional dependencies, pip and uv install your package " "and its core dependencies automatically." msgstr "" +"Quando você instala dependências opcionais, pip e uv instalam seu pacote " +"e suas dependências principais automaticamente." #: ../../package-structure-code/declare-dependencies.md:384 msgid "Version specifiers for dependencies" -msgstr "" +msgstr "Especificadores de versão para dependências" #: ../../package-structure-code/declare-dependencies.md:386 msgid "" @@ -1250,38 +1692,49 @@ msgid "" "package. Use them to specify minimum versions, exclude buggy releases, or" " set version ranges." msgstr "" +"Especificadores de versão controlam quais versões de uma dependência " +"funcionam com seu pacote. Use-os para especificar versões mínimas, " +"excluir releases com bugs ou definir intervalos de versão." #: ../../package-structure-code/declare-dependencies.md:390 msgid "Common operators" -msgstr "" +msgstr "Operadores comuns" #: ../../package-structure-code/declare-dependencies.md:392 msgid "" "**`>=`** Minimum version set: `numpy>=1.20` (This is the most common " "approach and is recommended)" msgstr "" +"**`>=`** Versão mínima: `numpy>=1.20` (Esta é a abordagem mais comum e " +"recomendada)" #: ../../package-structure-code/declare-dependencies.md:393 msgid "" "**`==`** Exact version: `requests==2.28.0` (Avoid pinning dependencies " "like this unless necessary)" msgstr "" +"**`==`** Versão exata: `requests==2.28.0` (Evite fixar dependências " +"assim, a menos que seja necessário)" #: ../../package-structure-code/declare-dependencies.md:394 msgid "" "**`~=`** Compatible release: `django~=4.2.0` (Allows patches: " ">=4.2.0,<4.3.0)" msgstr "" +"**`~=`** Release compatível: `django~=4.2.0` (Permite patches: " +">=4.2.0,<4.3.0)" #: ../../package-structure-code/declare-dependencies.md:395 msgid "**`<` or `>`** - Upper/lower bounds: `pandas>=1.0,<3.0`" -msgstr "" +msgstr "**`<` ou `>`** - Limites superior/inferior: `pandas>=1.0,<3.0`" #: ../../package-structure-code/declare-dependencies.md:396 msgid "" "**`!=`** Exclude version: `scipy>=1.7,!=1.8.0` (Rare but allows you to " "skip a buggy release version)" msgstr "" +"**`!=`** Excluir versão: `scipy>=1.7,!=1.8.0` (Raro, mas permite ignorar " +"uma versão release com bugs)" #: ../../package-structure-code/declare-dependencies.md:399 msgid "" @@ -1291,10 +1744,15 @@ msgid "" "to your pyproject.toml file. This keeps your package flexible and reduces" " dependency conflicts." msgstr "" +"**Boa prática:** Use `>=` para especificar sua versão mínima testada e " +"evite limites superiores a menos que você saiba em qual versão aquela " +"dependência deixa de ser compatível. O UV faz isso por padrão quando " +"adiciona uma dependência ao seu arquivo pyproject.toml. Isso mantém seu " +"pacote flexível e reduz conflitos de dependências." #: ../../package-structure-code/declare-dependencies.md:415 msgid "Using conda and Pixi" -msgstr "" +msgstr "Usando conda e Pixi" #: ../../package-structure-code/declare-dependencies.md:419 msgid "" @@ -1304,10 +1762,15 @@ msgid "" "created to support the distribution of tools with non-Python " "dependencies." msgstr "" +"O arquivo `pyproject.toml` funciona muito bem para pacotes Python puros. " +"Porém, alguns pacotes (principalmente no ecossistema científico Python) " +"precisam de dependências escritas em outras linguagens como C ou " +"Fortran. O Conda foi criado para suportar a distribuição de ferramentas " +"com dependências não-Python." #: ../../package-structure-code/declare-dependencies.md:424 msgid "**For conda users:**" -msgstr "" +msgstr "**Para usuários de conda:**" #: ../../package-structure-code/declare-dependencies.md:426 msgid "" @@ -1315,10 +1778,13 @@ msgid "" " set up conda environments. This is especially useful for packages with " "system-level dependencies like GDAL." msgstr "" +"Você pode manter um arquivo `environment.yml` para ajudar usuários e " +"contribuidores a configurarem ambientes conda. Isso é especialmente útil " +"para pacotes com dependências de sistema como GDAL." #: ../../package-structure-code/declare-dependencies.md:430 msgid "**Consider Pixi for conda package focused workflows:**" -msgstr "" +msgstr "**Considere o Pixi para workflows focados em pacotes conda:**" #: ../../package-structure-code/declare-dependencies.md:432 msgid "" @@ -1337,10 +1803,25 @@ msgid "" "environment](https://pixi.sh/latest/tutorials/import/) into a new Pixi " "workspace with" msgstr "" +"[Pixi](https://pixi.sh) é um gerenciador de pacotes moderno construído em " +"cima dos ecossistemas conda e de pacotes Python. O Pixi consegue tratar " +"requisitos de pacotes conda e Python de forma equivalente ao resolver " +"ambientes, mas usa uma abordagem \"conda-first\", utilizando pacotes " +"conda já resolvidos sempre que possível ao resolver dependências Python. " +"O Pixi [também pode usar " +"`pyproject.toml` para " +"configuração](https://pixi.sh/latest/python/pyproject_toml/). Se seu " +"projeto depende fortemente de pacotes conda, o Pixi oferece um workflow " +"simplificado com resolução de dependências mais rápida e suporte " +"automático a lock files para reprodutibilidade completa do ambiente. Se " +"você já possui um arquivo de definição de ambiente conda, como um " +"`environment.yml`, pode [importar o " +"ambiente](https://pixi.sh/latest/tutorials/import/) para um novo " +"workspace Pixi com" #: ../../package-structure-code/declare-dependencies.md:450 msgid "A note for conda users" -msgstr "" +msgstr "Uma observação para usuários de conda" #: ../../package-structure-code/declare-dependencies.md:453 msgid "" @@ -1350,24 +1831,32 @@ msgid "" "installed. This can cause conflicts, especially for packages with system " "dependencies." msgstr "" +"Se você usa um ambiente conda para desenvolvimento e instala seu pacote " +"com `python -m pip install -e .`, as dependências serão instaladas a " +"partir do PyPI, potencialmente sobrescrevendo pacotes conda que já " +"haviam sido instalados. Isso pode causar conflitos, especialmente em " +"pacotes com dependências de sistema." #: ../../package-structure-code/declare-dependencies.md:458 msgid "To avoid this, install your package without dependencies:" -msgstr "" +msgstr "Para evitar isso, instale seu pacote sem dependências:" #: ../../package-structure-code/declare-dependencies.md:464 msgid "Then install dependencies through your conda `environment.yml` file." -msgstr "" +msgstr "Depois instale as dependências através do seu arquivo conda " +"`environment.yml`." #: ../../package-structure-code/declare-dependencies.md:467 msgid "Dependencies in Read the Docs" -msgstr "" +msgstr "Dependências no Read the Docs" #: ../../package-structure-code/declare-dependencies.md:469 msgid "" "Once you've specified dependencies in your `pyproject.toml`, you can use " "them in other workflows like building documentation on Read the Docs." msgstr "" +"Depois de especificar dependências no seu `pyproject.toml`, você pode " +"usá-las em outros workflows, como gerar documentação no Read the Docs." #: ../../package-structure-code/declare-dependencies.md:472 msgid "" @@ -1376,32 +1865,42 @@ msgid "" "dependencies during the build process, configure them in a " "**readthedocs.yaml** file." msgstr "" +"[Read the Docs](https://readthedocs.org) é uma plataforma de documentação " +"que gera e publica automaticamente sua documentação. Para instalar suas " +"dependências durante o processo de build, configure-as em um arquivo " +"**readthedocs.yaml**." #: ../../package-structure-code/declare-dependencies.md:477 msgid "Here's an example that installs your `docs` optional dependencies:" -msgstr "" +msgstr "Aqui está um exemplo que instala suas dependências opcionais `docs`:" #: ../../package-structure-code/declare-dependencies.md:488 msgid "Learn more about Read the Docs" -msgstr "" +msgstr "Saiba mais sobre o Read the Docs" #: ../../package-structure-code/declare-dependencies.md:491 msgid "" "[Creating a readthedocs.yaml file](https://docs.readthedocs.io/en/stable" "/config-file/index.html)" msgstr "" +"[Criando um arquivo readthedocs.yaml](https://docs.readthedocs.io/en/stable" +"/config-file/index.html)" #: ../../package-structure-code/declare-dependencies.md:492 msgid "" "[Using uv with Read the Docs](https://docs.readthedocs.io/en/stable" "/build-customization.html)" msgstr "" +"[Usando uv com Read the Docs](https://docs.readthedocs.io/en/stable" +"/build-customization.html)" #: ../../package-structure-code/declare-dependencies.md:493 msgid "" "[Using Poetry with Read the Docs](https://docs.readthedocs.io/en/stable" "/build-customization.html#install-dependencies-with-poetry)" msgstr "" +"[Usando Poetry com Read the Docs](https://docs.readthedocs.io/en/stable" +"/build-customization.html#install-dependencies-with-poetry)" #: ../../package-structure-code/declare-dependencies.md:498 msgid "" @@ -1411,74 +1910,83 @@ msgid "" "not. It's really comprehensive. But do we want it in the guide?? It's " "really useful for more advanced users." msgstr "" +"Mantenha este comentário - neste arquivo por enquanto - " +"Jeremiah fez um ótimo levantamento dos shells mais comuns e se eles " +"precisam de aspas ou não. Está realmente bem completo. Mas queremos isso " +"no guia?? É muito útil para usuários mais avançados." #: ../../package-structure-code/declare-dependencies.md:500 msgid "" "Following this comment: " msgstr "" +"Seguindo este comentário: " #: ../../package-structure-code/declare-dependencies.md:503 msgid "Jonny will add a section that talks about:" -msgstr "" +msgstr "Jonny irá adicionar uma seção falando sobre:" #: ../../package-structure-code/declare-dependencies.md:505 msgid "" "Why you specify dependencies How to specify dependencies When you use " "different specifiers" msgstr "" +"Por que você especifica dependências Como especificar dependências Quando " +"usar diferentes especificadores" #: ../../package-structure-code/intro.md:163 msgid "Intro" -msgstr "" +msgstr "Introdução" #: ../../package-structure-code/intro.md:163 msgid "Python package structure" -msgstr "" +msgstr "Estrutura de pacote Python" #: ../../package-structure-code/intro.md:163 msgid "pyproject.toml Package Metadata" -msgstr "" +msgstr "Metadados de pacote do pyproject.toml" #: ../../package-structure-code/intro.md:163 msgid "Declare dependencies" -msgstr "" +msgstr "Declarar dependências" #: ../../package-structure-code/intro.md:163 msgid "Package Build Tools" -msgstr "" +msgstr "Ferramentas de Build de Pacotes" #: ../../package-structure-code/intro.md:163 msgid "Build Your Package" -msgstr "" +msgstr "Faça o Build do seu Pacote" #: ../../package-structure-code/intro.md:163 msgid "Complex Builds" -msgstr "" +msgstr "Builds Complexos" #: ../../package-structure-code/intro.md:163 msgid "Create & Build Your Package" -msgstr "" +msgstr "Crie e Faça o Build do seu Pacote" #: ../../package-structure-code/intro.md:177 msgid "Publish with Conda / PyPI" -msgstr "" +msgstr "Publicar com Conda / PyPI" #: ../../package-structure-code/intro.md:177 msgid "Package versions" -msgstr "" +msgstr "Versões de pacote" #: ../../package-structure-code/intro.md:177 msgid "Code style" -msgstr "" +msgstr "Estilo de código" #: ../../package-structure-code/intro.md:177 msgid "Publish your package" -msgstr "" +msgstr "Publique seu pacote" #: ../../package-structure-code/intro.md:1 msgid "Python Package Structure & Code" -msgstr "" +msgstr "Estrutura e Código de Pacotes Python" #: ../../package-structure-code/intro.md:3 msgid "" @@ -1486,108 +1994,125 @@ msgid "" " configure metadata, choose build tools, and publish your package to PyPI" " and conda-forge." msgstr "" +"Esta seção cobre tudo o que você precisa para estruturar seu pacote " +"Python, configurar metadados, escolher ferramentas de build e publicar " +"seu pacote no PyPI e conda-forge." #: ../../package-structure-code/intro.md:9 msgid "New to Python packaging?" -msgstr "" +msgstr "Novo em Packaging Python?" #: ../../package-structure-code/intro.md:13 msgid "**Start with our step-by-step tutorials:**" -msgstr "" +msgstr "**Comece com nossos tutoriais passo a passo:**" #: ../../package-structure-code/intro.md:15 msgid "Follow along as we create a package from scratch" -msgstr "" +msgstr "Acompanhe enquanto criamos um pacote do zero" #: ../../package-structure-code/intro.md:16 msgid "Learn by doing with guided examples" -msgstr "" +msgstr "Aprenda na prática com exemplos guiados" #: ../../package-structure-code/intro.md:17 msgid "Perfect for your first package" -msgstr "" +msgstr "Ideal para o seu primeiro pacote" #: ../../package-structure-code/intro.md:19 msgid "Start the tutorial series" -msgstr "" +msgstr "Começar a série de tutoriais" #: ../../package-structure-code/intro.md:27 msgid "Already have code to package?" -msgstr "" +msgstr "Já tem código para a package?" #: ../../package-structure-code/intro.md:30 msgid "**Jump into the reference guides:**" -msgstr "" +msgstr "**Acesse os guias de referência:**" #: ../../package-structure-code/intro.md:32 msgid "Learn about package structure and metadata" -msgstr "" +msgstr "Aprenda sobre estrutura de pacote e metadados" #: ../../package-structure-code/intro.md:33 msgid "Compare build tools and choose what's right for you" -msgstr "" +msgstr "Compare ferramentas de build e escolha a mais adequada para você" #: ../../package-structure-code/intro.md:34 msgid "Understand the publishing process" -msgstr "" +msgstr "Entenda o processo de publicação" #: ../../package-structure-code/intro.md:36 msgid "Start with the cards below ↓" -msgstr "" +msgstr "Comece pelos cards abaixo ↓" #: ../../package-structure-code/intro.md:40 msgid "How this content is developed" -msgstr "" +msgstr "Como este conteúdo é desenvolvido" #: ../../package-structure-code/intro.md:43 msgid "" "All of the content in this guide has been vetted by community members, " "including maintainers and developers of the core packaging tools." msgstr "" +"Todo o conteúdo deste guia foi revisado por membros da comunidade, " +"incluindo mantenedores e desenvolvedores das principais ferramentas de packaging." #: ../../package-structure-code/intro.md:46 msgid "What you'll learn" -msgstr "" +msgstr "O que você vai aprender" #: ../../package-structure-code/intro.md:48 msgid "In this section, you'll learn how to:" -msgstr "" +msgstr "Nesta seção, você vai aprender como:" #: ../../package-structure-code/intro.md:50 msgid "" "**Structure your package** - Choose between src and flat layouts, " "organize tests and documentation" msgstr "" +"**Estruturar seu pacote** - Escolher entre layouts src e flat, " +"organizar testes e documentação" #: ../../package-structure-code/intro.md:51 msgid "" "**Configure metadata** - Set up `pyproject.toml` with project " "information, dependencies, and versioning" msgstr "" +"**Configurar metadados** - Definir o `pyproject.toml` com informações " +"do projeto, dependências e versionamento" #: ../../package-structure-code/intro.md:52 msgid "" "**Choose build tools** - Compare Hatch, PDM, Poetry, and setuptools to " "find the right fit" msgstr "" +"**Escolher ferramentas de build** - Comparar Hatch, PDM, Poetry e setuptools para " +"encontrar a opção mais adequada" #: ../../package-structure-code/intro.md:53 msgid "" "**Build distributions** - Create sdist and wheel files ready for " "publication" msgstr "" +"**Gerar distribuições** - Criar arquivos sdist e wheel prontos para " +"publicação" #: ../../package-structure-code/intro.md:54 msgid "" "**Publish your package** - Make your package available on PyPI and " "optionally conda-forge" msgstr "" +"**Publicar seu pacote** - Disponibilizar seu pacote no PyPI e, " +"opcionalmente, no conda-forge" #: ../../package-structure-code/intro.md:55 msgid "" "**Maintain code quality** - Set up linters and formatters to keep your " "code consistent" msgstr "" +"**Manter a qualidade do código** - Configurar linters e formatadores para manter " +"seu código consistente" #: ../../package-structure-code/intro.md:57 msgid "" @@ -1596,10 +2121,14 @@ msgid "" "Python community specs](https://scientific-python.org/specs/), while " "prioritizing tools that are beginner-friendly and well-maintained." msgstr "" +"Nossas recomendações estão alinhadas com os [padrões atuais de packaging " +"Python](https://packaging.python.org/en/latest/) e com as [especificações da " +"comunidade Scientific Python](https://scientific-python.org/specs/), priorizando " +"ferramentas acessíveis para iniciantes e bem mantidas." #: ../../package-structure-code/intro.md:59 msgid "Package setup" -msgstr "" +msgstr "Configuração do pacote" #: ../../package-structure-code/intro.md:66 msgid "✨ Package file structure ✨" @@ -1613,10 +2142,14 @@ msgid "" "place [tests](src-layout-test) and [documentation](package-source-" "layout)." msgstr "" +"Aprenda a organizar os arquivos do seu pacote usando [layouts src ou flat" +"](package-source-layout). Esta página ajuda você a decidir uma estrutura de pacote " +"que segue as boas práticas modernas do Python, incluindo onde colocar " +"[testes](src-layout-test) e [documentação](package-source-layout)." #: ../../package-structure-code/intro.md:71 msgid "✨ Add metadata ✨" -msgstr "" +msgstr "✨ Adicionar metadados ✨" #: ../../package-structure-code/intro.md:73 msgid "" @@ -1625,10 +2158,14 @@ msgid "" "also the metadata that a package installer needs to build and install " "your package." msgstr "" +"Aprenda a adicionar [metadados de projeto](pyproject-toml-python-package-" +"metadata) ao seu pacote Python para dar suporte tanto à filtragem no PyPI quanto " +"aos metadados que um instalador de pacotes precisa para compilar e instalar " +"seu pacote." #: ../../package-structure-code/intro.md:78 msgid "✨ Declare dependencies ✨" -msgstr "" +msgstr "✨ Declarar dependências ✨" #: ../../package-structure-code/intro.md:80 msgid "" @@ -1637,10 +2174,14 @@ msgid "" "dependencies](dependency-groups) in your [pyproject.toml file](pyproject-" "toml-overview)." msgstr "" +"Aprenda a especificar [dependências obrigatórias](required-dependencies), " +"[dependências opcionais de funcionalidades](optional-dependencies) e [dependências " +"de desenvolvimento](dependency-groups) no seu [arquivo pyproject.toml](pyproject-" +"toml-overview)." #: ../../package-structure-code/intro.md:83 msgid "✨ Setup package versioning ✨" -msgstr "" +msgstr "✨ Configurar o versionamento do pacote ✨" #: ../../package-structure-code/intro.md:85 msgid "" @@ -1650,14 +2191,19 @@ msgid "" " set up [automated version management](tools-version-management) using " "tools like hatch_vcs or setuptools-scm." msgstr "" +"Aprenda a gerenciar versões do pacote usando [versionamento semântico (SemVer" +")](package-versioning) ou [versionamento por calendário (CalVer)](package-" +"versioning). Esta página ajuda você a escolher a estratégia de versionamento ideal e " +"a configurar o [gerenciamento automatizado de versões](tools-version-management) " +"usando ferramentas como hatch_vcs ou setuptools-scm." #: ../../package-structure-code/intro.md:89 msgid "Development practices" -msgstr "" +msgstr "Boas práticas de desenvolvimento" #: ../../package-structure-code/intro.md:96 msgid "✨ Code style & linters ✨" -msgstr "" +msgstr "✨ Estilo de código & linters ✨" #: ../../package-structure-code/intro.md:98 msgid "" @@ -1666,14 +2212,18 @@ msgid "" "ensure your package follows [PEP 8 standards](code-style-tools) and " "maintains consistent code style throughout your project." msgstr "" +"Aprenda a configurar [formatadores de código e linters](code-style-tools) " +"([Black](about-black), [Ruff](about-ruff), [flake8](about-flake8)) para " +"garantir que seu pacote siga os [padrões PEP 8](code-style-tools) e " +"mantenha um estilo de código consistente em todo o projeto." #: ../../package-structure-code/intro.md:102 msgid "Build & publish" -msgstr "" +msgstr "Build & publicação" #: ../../package-structure-code/intro.md:109 msgid "✨ Choose your build tool ✨" -msgstr "" +msgstr "✨ Escolha sua ferramenta de build ✨" #: ../../package-structure-code/intro.md:111 msgid "" @@ -1682,10 +2232,14 @@ msgid "" "[setuptools](about-setuptools) to find the best fit for your workflow. " "See the [summary comparison](summary-build-tools) to help decide." msgstr "" +"Aprenda a escolher a ferramenta de packaging ideal para o seu projeto. Compare " +"[Hatch](about-hatch), [PDM](about-pdm), [Poetry](about-poetry) e " +"[setuptools](about-setuptools) para encontrar a melhor opção para o seu fluxo de trabalho. " +"Veja o [comparativo resumido](summary-build-tools) para ajudar na decisão." #: ../../package-structure-code/intro.md:114 msgid "✨ Build your package ✨" -msgstr "" +msgstr "✨ Compile seu pacote ✨" #: ../../package-structure-code/intro.md:116 msgid "" @@ -1693,10 +2247,13 @@ msgid "" "package) ([sdist](python-source-distribution) and [wheel](python-wheel)) " "that can be published on [PyPI](publish-pypi-conda)." msgstr "" +"Aprenda a compilar seu pacote Python em [arquivos de distribuição](build-" +"package) ([sdist](python-source-distribution) e [wheel](python-wheel)) " +"que podem ser publicados no [PyPI](publish-pypi-conda)." #: ../../package-structure-code/intro.md:119 msgid "✨ Publish to PyPI and Conda ✨" -msgstr "" +msgstr "✨ Publicar no PyPI e no Conda ✨" #: ../../package-structure-code/intro.md:121 msgid "" @@ -1706,22 +2263,31 @@ msgid "" "including the [conda-forge submission process](how-to-submit-to-conda-" "forge) after publishing to PyPI." msgstr "" +"Aprenda a publicar seu pacote no [PyPI](publish-pypi-conda) e, " +"opcionalmente, no [conda-forge](how-to-submit-to-conda-forge). Esta página " +"cobre o processo completo para disponibilizar seu pacote aos usuários, " +"incluindo o [processo de envio ao conda-forge](how-to-submit-to-conda-" +"forge) após a publicação no PyPI." #: ../../package-structure-code/intro.md:125 msgid "Choosing the right tools" -msgstr "" +msgstr "Escolhendo as ferramentas certas" #: ../../package-structure-code/intro.md:127 msgid "" "Not sure which build tool to use? This decision tree can help you choose " "based on your package's needs:" msgstr "" +"Não sabe qual ferramenta de build usar? Esta árvore de decisão pode ajudar você a escolher " +"com base nas necessidades do seu pacote:" #: ../../package-structure-code/intro.md:131 msgid "" "Figure showing a decision tree with the various packaging tool front-end " "and back-end options." msgstr "" +"Figura mostrando uma árvore de decisão com as diversas opções de front-end " +"e back-end das ferramentas de packaging." #: ../../package-structure-code/intro.md:133 msgid "" @@ -1729,24 +2295,29 @@ msgid "" "[packaging tools page](python-package-build-tools) for detailed " "comparisons and recommendations." msgstr "" +"Use esta árvore de decisão para ajudar a selecionar uma ferramenta de packaging. Acesse a " +"[página de ferramentas de packaging](python-package-build-tools) para comparações " +"detalhadas e recomendações." #: ../../package-structure-code/intro.md:136 msgid "Our recommendations" -msgstr "" +msgstr "Nossas recomendações" #: ../../package-structure-code/intro.md:138 msgid "We suggest tools and approaches based on three principles:" -msgstr "" +msgstr "Sugerimos ferramentas e abordagens com base em três princípios:" #: ../../package-structure-code/intro.md:140 msgid "" "**Beginner-friendly** - Tools that are easy to learn and use for those " "new to packaging" msgstr "" +"**Acessível para iniciantes** - Ferramentas fáceis de aprender e usar para quem " +"está começando com packaging" #: ../../package-structure-code/intro.md:141 msgid "**Well-maintained** - Tools with active development and good documentation" -msgstr "" +msgstr "**Bem mantidas** - Ferramentas com desenvolvimento ativo e boa documentação" #: ../../package-structure-code/intro.md:142 msgid "" @@ -1754,16 +2325,21 @@ msgid "" "standards](https://packaging.python.org/en/latest/) and [Scientific " "Python community specs](https://scientific-python.org/specs/)" msgstr "" +"**Alinhadas com os padrões** - Ferramentas que seguem os [padrões atuais de " +"packaging Python](https://packaging.python.org/en/latest/) e as [especificações " +"da comunidade Scientific Python](https://scientific-python.org/specs/)" #: ../../package-structure-code/intro.md:144 msgid "Pure Python vs. complex builds" -msgstr "" +msgstr "Python puro vs. builds complexos" #: ../../package-structure-code/intro.md:146 msgid "" "**Pure Python packages** can use any modern tool (Hatch, PDM, Poetry, " "Flit) - choose based on the features you want" msgstr "" +"**Pacotes Python puro** podem usar qualquer ferramenta moderna (Hatch, PDM, Poetry, " +"Flit) - escolha com base nas funcionalidades que você deseja" #: ../../package-structure-code/intro.md:147 msgid "" @@ -1773,16 +2349,23 @@ msgid "" "[Scientific Python Development Guide on compiled packaging](https://learn" ".scientific-python.org/development/guides/packaging-compiled/)." msgstr "" +"**Pacotes com extensões C/C++** podem precisar de etapas de build adicionais. Consulte " +"nossa [página de builds complexos](complex-python-package-builds) para orientações. " +"Para informações completas sobre packaging de projetos compilados, acesse o " +"[Guia de Desenvolvimento Scientific Python sobre packaging compilado](https://learn" +".scientific-python.org/development/guides/packaging-compiled/)." #: ../../package-structure-code/intro.md:149 msgid "" "Most scientific Python packages start simple and can evolve to handle " "more complex requirements as needed." msgstr "" +"A maioria dos pacotes Python científicos começa de forma simples e pode evoluir para lidar " +"com requisitos mais complexos conforme necessário." #: ../../package-structure-code/intro.md:151 msgid "Submitting your package for peer review?" -msgstr "" +msgstr "Submetendo seu pacote para revisão por pares?" #: ../../package-structure-code/intro.md:153 msgid "" @@ -1793,10 +2376,16 @@ msgid "" "minimum requirements. These checks are useful for anyone creating a " "Python package, not just those submitting for review." msgstr "" +"Se você planeja submeter seu pacote ao pyOpenSci para [revisão por " +"pares](https://www.pyopensci.org/about-peer-review/index.html), confira " +"nossa [lista de verificação do editor](https://www.pyopensci.org/software-peer-review" +"/how-to/editor-in-chief-guide.html#editor-checklist-template) para os " +"requisitos mínimos. Essas verificações são úteis para qualquer pessoa que esteja criando um " +"pacote Python, não apenas para quem está submetendo para revisão." #: ../../package-structure-code/intro.md:155 msgid "These are recommendations, not requirements" -msgstr "" +msgstr "Estas são recomendações, não requisitos" #: ../../package-structure-code/intro.md:158 msgid "" @@ -1804,6 +2393,8 @@ msgid "" "structured package. They are **not** specific requirements for pyOpenSci " "peer review." msgstr "" +"As sugestões neste guia foram elaboradas para ajudar você a criar um pacote bem-" +"estruturado. Elas **não** são requisitos específicos para a revisão por pares do pyOpenSci." #: ../../package-structure-code/intro.md:160 msgid "" @@ -1812,10 +2403,14 @@ msgid "" "scope.html) and [author guide](https://www.pyopensci.org/software-peer-" "review/how-to/author-guide.html#) for actual review requirements." msgstr "" +"Se você está submetendo ao pyOpenSci, consulte nosso [escopo de pacotes" +"](https://www.pyopensci.org/software-peer-review/about/package-" +"scope.html) e o [guia do autor](https://www.pyopensci.org/software-peer-" +"review/how-to/author-guide.html#) para os requisitos reais de revisão." #: ../../package-structure-code/publish-python-package-pypi-conda.md:1 msgid "Publishing Your Package In A Community Repository: PyPI or Anaconda.org" -msgstr "" +msgstr "Publicando seu pacote em um repositório comunitário: PyPI ou Anaconda.org" #: ../../package-structure-code/publish-python-package-pypi-conda.md:5 msgid "" @@ -1823,18 +2418,25 @@ msgid "" "installed from a public community repository such as PyPI or a conda " "channel such as `bioconda` or `conda-forge` on Anaconda.org." msgstr "" +"O pyOpenSci exige que seu pacote tenha uma distribuição que possa ser " +"instalada a partir de um repositório comunitário público, como o PyPI, ou de um canal conda " +"como `bioconda` ou `conda-forge` no Anaconda.org." #: ../../package-structure-code/publish-python-package-pypi-conda.md:9 msgid "" "Below you will learn more about the various publishing options for your " "Python package." msgstr "" +"A seguir você encontrará mais informações sobre as diversas opções de publicação para o seu " +"pacote Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:14 msgid "" "Installing packages in the same environment using both pip and conda can " "lead to package conflicts." msgstr "" +"Instalar pacotes no mesmo ambiente usando tanto pip quanto conda pode " +"gerar conflitos entre pacotes." #: ../../package-structure-code/publish-python-package-pypi-conda.md:16 msgid "" @@ -1842,12 +2444,17 @@ msgid "" " local environments, consider publishing your package to both PyPI and " "the conda-forge channel on Anaconda.org." msgstr "" +"Para minimizar conflitos para usuários que utilizam conda (ou pip) para gerenciar " +"ambientes locais, considere publicar seu pacote tanto no PyPI quanto no " +"canal conda-forge no Anaconda.org." #: ../../package-structure-code/publish-python-package-pypi-conda.md:18 msgid "" "Below you will learn more specifics about the differences between PyPI " "and conda publishing of your Python package." msgstr "" +"A seguir você aprenderá mais detalhes sobre as diferenças entre a publicação no PyPI " +"e no conda do seu pacote Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:23 #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:6 @@ -1859,6 +2466,12 @@ msgid "" "distributions. From PyPI if you create a conda-forge recipe you can then " "publish to conda-forge." msgstr "" +"Imagem mostrando a progressão de criação de um pacote Python, sua compilação " +"e posterior publicação no PyPI e no conda-forge. Você pega seu código e o transforma " +"em arquivos de distribuição (sdist e wheel) que o PyPI aceita. Em seguida, " +"há uma seta em direção ao repositório PyPI onde você publica ambas as " +"distribuições. A partir do PyPI, se você criar uma receita conda-forge, poderá " +"publicar no conda-forge." #: ../../package-structure-code/publish-python-package-pypi-conda.md:25 msgid "" @@ -1868,10 +2481,15 @@ msgid "" " your package on conda-forge. You do not need to rebuild your package to " "publish to conda-forge." msgstr "" +"Após publicar ambas as distribuições do pacote (a distribuição-fonte e o wheel) no PyPI, " +"você pode publicar no conda-forge. " +"O conda-forge requer uma distribuição-fonte no PyPI para compilar " +"seu pacote no conda-forge. Você não precisa recompilar seu pacote para " +"publicar no conda-forge." #: ../../package-structure-code/publish-python-package-pypi-conda.md:29 msgid "What is PyPI" -msgstr "" +msgstr "O que é o PyPI" #: ../../package-structure-code/publish-python-package-pypi-conda.md:31 msgid "" @@ -1880,12 +2498,18 @@ msgid "" "is also a test PyPI repository where you can test publishing your package" " prior to the final publication on PyPI." msgstr "" +"O [PyPI](https://pypi.org/) é um repositório online de pacotes Python que você " +"pode usar tanto para encontrar, instalar quanto para publicar seu pacote Python. Existe " +"também um repositório PyPI de testes onde você pode testar a publicação do seu pacote " +"antes da publicação definitiva no PyPI." #: ../../package-structure-code/publish-python-package-pypi-conda.md:36 msgid "" "Many if not most Python packages can be found on PyPI and are thus " "installable using `pip`." msgstr "" +"Muitos, se não a maioria dos pacotes Python, podem ser encontrados no PyPI e, portanto, " +"instalados usando `pip`." #: ../../package-structure-code/publish-python-package-pypi-conda.md:38 msgid "" @@ -1893,10 +2517,13 @@ msgid "" " that conda can install any package regardless of the language(s) that it" " is written in. Whereas `pip` can only install Python packages." msgstr "" +"A principal diferença entre usar pip e conda para instalar um pacote é " +"que o conda pode instalar qualquer pacote independentemente da(s) linguagem(ns) em que foi " +"escrito. Já o `pip` só consegue instalar pacotes Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:43 msgid "Click here for a tutorial on publishing your package to PyPI." -msgstr "" +msgstr "Clique aqui para acessar um tutorial sobre como publicar seu pacote no PyPI." #: ../../package-structure-code/publish-python-package-pypi-conda.md:51 msgid "" @@ -1907,10 +2534,16 @@ msgid "" "\"bundles\" will be published on PyPI when you use [a standard build tool" "](python-package-build-tools) to build your package." msgstr "" +"Na página de compilação de pacotes, discutimos os [dois tipos de distribuição " +"que você criará ao fazer um pacote Python](python-package-" +"distribution-files-sdist-wheel): SDist (empacotado como .tar.gz ou .zip) " +"e Wheel (.whl), que é basicamente um arquivo zip. Ambos esses \"pacotes\" de arquivos " +"serão publicados no PyPI quando você usar [uma ferramenta de build padrão" +"](python-package-build-tools) para compilar seu pacote." #: ../../package-structure-code/publish-python-package-pypi-conda.md:59 msgid "What is conda and Anaconda.org?" -msgstr "" +msgstr "O que são conda e Anaconda.org?" #: ../../package-structure-code/publish-python-package-pypi-conda.md:61 msgid "" @@ -1918,16 +2551,21 @@ msgid "" "can be used to install tools from the [Anaconda " "repository](https://repo.anaconda.com/)." msgstr "" +"O conda é uma ferramenta de código aberto para gerenciamento de pacotes e ambientes. O conda " +"pode ser usado para instalar ferramentas do [repositório Anaconda" +"](https://repo.anaconda.com/)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:65 msgid "" "Anaconda.org contains public and private repositories for packages. These" " repositories are known as channels (discussed below)." msgstr "" +"O Anaconda.org contém repositórios públicos e privados de pacotes. Esses " +"repositórios são conhecidos como canais (discutidos abaixo)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:68 msgid "A brief history of conda's evolution" -msgstr "" +msgstr "Um breve histórico da evolução do conda" #: ../../package-structure-code/publish-python-package-pypi-conda.md:71 msgid "" @@ -1935,6 +2573,8 @@ msgid "" "simplify the process of, managing software dependencies in scientific " "Python projects." msgstr "" +"O ecossistema conda surgiu há anos para oferecer suporte e simplificar o processo de " +"gerenciamento de dependências de software em projetos Python científicos." #: ../../package-structure-code/publish-python-package-pypi-conda.md:75 msgid "" @@ -1946,12 +2586,21 @@ msgid "" "builds that allow developers to bundle non-Python code into a Python " "distribution using the [wheel distribution format](python-wheel)." msgstr "" +"Muitos dos principais projetos Python científicos dependem de ou encapsulam " +"ferramentas e extensões escritas em outras linguagens, como C++. Nos " +"primeiros estágios do desenvolvimento do ecossistema científico, essas extensões e " +"ferramentas não-Python não tinham boa cobertura no PyPI, dificultando a " +"publicação. Nos últimos anos, há mais suporte para builds complexos que permitem aos " +"desenvolvedores empacotar código não-Python em uma distribuição Python usando o " +"[formato de distribuição wheel](python-wheel)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:77 msgid "" "Conda provides a mechanism to manage these dependencies and ensure that " "the required packages are installed correctly." msgstr "" +"O conda oferece um mecanismo para gerenciar essas dependências e garantir que " +"os pacotes necessários sejam instalados corretamente." #: ../../package-structure-code/publish-python-package-pypi-conda.md:81 msgid "" @@ -1962,10 +2611,16 @@ msgid "" "that mixes all of these packages is usually easier and more consistent " "with full-fledged package managers like conda." msgstr "" +"Embora o conda tenha sido originalmente criado para suportar pacotes Python, atualmente " +"é usado em diversas linguagens. Esse suporte multilinguagem facilita " +"que alguns pacotes incluam e acessem ferramentas escritas em outras " +"linguagens, como C/C++ (gdal), Julia ou R. Criar um ambiente " +"que combine todos esses pacotes costuma ser mais fácil e consistente " +"com gerenciadores de pacotes completos como o conda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:89 msgid "conda channels" -msgstr "" +msgstr "canais conda" #: ../../package-structure-code/publish-python-package-pypi-conda.md:91 msgid "" @@ -1973,12 +2628,17 @@ msgid "" "channels. The conda package manager can install packages from different " "channels." msgstr "" +"Os pacotes compilados com conda ficam armazenados em repositórios chamados " +"canais. O gerenciador de pacotes conda pode instalar pacotes de diferentes " +"canais." #: ../../package-structure-code/publish-python-package-pypi-conda.md:94 msgid "" "There are several core public channels that most people use to install " "packages using conda, including:" msgstr "" +"Existem alguns canais públicos principais que a maioria das pessoas usa para instalar " +"pacotes com conda, incluindo:" #: ../../package-structure-code/publish-python-package-pypi-conda.md:97 msgid "" @@ -1987,6 +2647,10 @@ msgid "" "Distribution. Anaconda (the company) decides what packages live on the " "`defaults` channel." msgstr "" +"**defaults:** este é um canal gerenciado pela Anaconda. É a versão dos " +"pacotes Python que você instalará caso instale a Anaconda Distribution. A " +"Anaconda (a empresa) decide quais pacotes ficam disponíveis no canal " +"`defaults`." #: ../../package-structure-code/publish-python-package-pypi-conda.md:98 msgid "" @@ -1995,18 +2659,26 @@ msgid "" "tools that support geospatial data. Anyone can publish a package to this " "channel." msgstr "" +"[**conda-forge:**](https://conda-forge.org/) este é um canal mantido pela " +"comunidade que tem foco em pacotes científicos. Esse canal é ideal para " +"ferramentas que dão suporte a dados geoespaciais. Qualquer pessoa pode " +"publicar um pacote nesse canal." #: ../../package-structure-code/publish-python-package-pypi-conda.md:99 msgid "" "[**bioconda**](https://bioconda.github.io/): this channel focuses on " "biomedical tools." msgstr "" +"[**bioconda**](https://bioconda.github.io/): este canal tem foco em " +"ferramentas biomédicas." #: ../../package-structure-code/publish-python-package-pypi-conda.md:101 msgid "" "**conda-forge** emerged as many of the scientific packages did not exist " "in the `defaults` Anaconda channel." msgstr "" +"O **conda-forge** surgiu porque muitos dos pacotes científicos não " +"existiam no canal `defaults` da Anaconda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:106 msgid "" @@ -2019,6 +2691,15 @@ msgid "" "says PyPI servers. PyPI - anyone can publish to PyPI. And test PyPI. A " "testbed server for you to practice." msgstr "" +"Gráfico com o título Repositórios de pacotes Python. Abaixo dele está " +"escrito Qualquer coisa hospedada no PyPI pode ser instalada usando pip " +"install. Pacotes hospedados em um canal conda podem ser instalados usando " +"conda install. Abaixo disso há duas linhas. A linha de cima diz canais " +"conda. Ao lado dela há três caixas, uma com conda-forge, mantido pela " +"comunidade; bioconda e, em seguida, default - gerenciado pela equipe da " +"anaconda. Abaixo disso há uma linha que diz servidores PyPI. PyPI - " +"qualquer pessoa pode publicar no PyPI. E o test PyPI. Um servidor de " +"testes para você praticar." #: ../../package-structure-code/publish-python-package-pypi-conda.md:108 msgid "" @@ -2028,26 +2709,36 @@ msgid "" "Anyone can submit a package to PyPI and test PyPI. Unlike conda-forge " "there are no manual checks of packages submitted to PyPI." msgstr "" +"Os canais conda representam diversos repositórios a partir dos quais você " +"pode instalar pacotes. Como o conda-forge é mantido pela comunidade, " +"qualquer pessoa pode enviar uma receita para lá. O PyPI também é um " +"repositório mantido pela comunidade. Qualquer pessoa pode enviar um pacote " +"para o PyPI e o test PyPI. Diferentemente do conda-forge, não há " +"verificações manuais dos pacotes enviados ao PyPI." #: ../../package-structure-code/publish-python-package-pypi-conda.md:111 msgid "conda channels, PyPI, conda, pip - Where to publish your package" -msgstr "" +msgstr "canais conda, PyPI, conda, pip - Onde publicar o seu pacote" #: ../../package-structure-code/publish-python-package-pypi-conda.md:113 msgid "" "You might be wondering why there are different package repositories that " "can be used to install Python packages." msgstr "" +"Você pode estar se perguntando por que existem diferentes repositórios de " +"pacotes que podem ser usados para instalar pacotes Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:116 msgid "" "And more importantly you are likely wondering how to pick the right " "repository to publish your Python package." msgstr "" +"E, mais importante, você provavelmente está se perguntando como escolher o " +"repositório certo para publicar o seu pacote Python." #: ../../package-structure-code/publish-python-package-pypi-conda.md:119 msgid "The answer to both questions relates dependency conflicts." -msgstr "" +msgstr "A resposta para ambas as perguntas está relacionada a conflitos de dependências." #: ../../package-structure-code/publish-python-package-pypi-conda.md:123 msgid "" @@ -2055,6 +2746,10 @@ msgid "" "tools and installations. At the bottom is says - My python environment " "has become so degraded that my laptop has been declared a superfund site." msgstr "" +"Imagem mostrando um quadrinho da XKCD que exibe uma teia de ambientes, " +"ferramentas e instalações Python. Na parte de baixo diz - Meu ambiente " +"Python se degradou tanto que meu laptop foi declarado uma área de " +"contaminação tóxica." #: ../../package-structure-code/publish-python-package-pypi-conda.md:125 msgid "" @@ -2065,10 +2760,17 @@ msgid "" "pip to install everything. Or use conda. If you can, try to avoid " "installing package from both pip and conda into the same environment." msgstr "" +"Instalar o Python e pacotes Python a partir de diferentes repositórios " +"pode levar a conflitos de ambiente, em que a versão de um pacote não " +"funciona com a versão de outro pacote. Para manter os seus ambientes " +"limpos e funcionando, o melhor é instalar pacotes a partir do mesmo " +"repositório. Então use o pip para instalar tudo. Ou use o conda. Se " +"puder, tente evitar instalar pacotes tanto pelo pip quanto pelo conda no " +"mesmo ambiente." #: ../../package-structure-code/publish-python-package-pypi-conda.md:133 msgid "Managing Python package dependency conflicts" -msgstr "" +msgstr "Gerenciando conflitos de dependências de pacotes Python" #: ../../package-structure-code/publish-python-package-pypi-conda.md:135 msgid "" @@ -2079,12 +2781,20 @@ msgid "" "contain packages installed from both pip and conda are more likely to " "yield dependency conflicts." msgstr "" +"Ambientes Python podem apresentar conflitos porque as ferramentas Python " +"podem ser instaladas a partir de diferentes repositórios. De modo geral, " +"ambientes Python têm uma chance menor de conflitos de dependências quando " +"as ferramentas são instaladas a partir do mesmo repositório de pacotes. " +"Assim, ambientes que contêm pacotes instalados tanto pelo pip quanto pelo " +"conda têm maior probabilidade de gerar conflitos de dependências." #: ../../package-structure-code/publish-python-package-pypi-conda.md:142 msgid "" "Similarly installing packages from the default anaconda channel mixed " "with the conda-forge channel can also lead to dependency conflicts." msgstr "" +"Da mesma forma, instalar pacotes do canal default da anaconda misturados " +"com o canal conda-forge também pode levar a conflitos de dependências." #: ../../package-structure-code/publish-python-package-pypi-conda.md:144 msgid "" @@ -2096,12 +2806,22 @@ msgid "" "in the channel . Thus, `conda-forge` channel ensures that a broad suite " "of user-developed community packages can be installed from conda." msgstr "" +"Muitos instalam pacotes diretamente do canal `defaults` do conda. No " +"entanto, como esse canal é gerenciado pela Anaconda, os pacotes " +"disponíveis nele são limitados àqueles que a Anaconda decide que devem " +"fazer parte de uma instalação estável. O canal conda-forge foi criado " +"para complementar o canal `defaults`. Ele permite que qualquer pessoa " +"envie um pacote para ser publicado no canal. Assim, o canal `conda-forge` " +"garante que um amplo conjunto de pacotes comunitários desenvolvidos por " +"usuários possa ser instalado pelo conda." #: ../../package-structure-code/publish-python-package-pypi-conda.md:148 msgid "" "Take-aways: If you can, publish on both PyPI and conda-forge to " "accommodate more users of your package" msgstr "" +"Conclusões: Se puder, publique tanto no PyPI quanto no conda-forge para " +"atender a mais usuários do seu pacote" #: ../../package-structure-code/publish-python-package-pypi-conda.md:150 msgid "" @@ -2110,32 +2830,42 @@ msgid "" "you should consider publishing to both PyPI and the conda-forge channel " "(_more on that below_)." msgstr "" +"A conclusão aqui para os mantenedores é que, se você prevê que os usuários " +"vão querer usar o conda para gerenciar seus ambientes locais (o que muitos " +"fazem), você deveria considerar publicar tanto no PyPI quanto no canal " +"conda-forge (_mais sobre isso abaixo_)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:155 msgid "Additional resources" -msgstr "" +msgstr "Recursos adicionais" #: ../../package-structure-code/publish-python-package-pypi-conda.md:157 msgid "" "[learn more about why conda-forge was created, here](https://conda-" "forge.org/docs/user/introduction.html)" msgstr "" +"[saiba mais sobre por que o conda-forge foi criado, aqui](https://conda-" +"forge.org/docs/user/introduction.html)" #: ../../package-structure-code/publish-python-package-pypi-conda.md:159 msgid "" "[To learn more about conda terminology, check out their " "glossary.](https://docs.conda.io/projects/conda/en/latest/glossary.html )" msgstr "" +"[Para saber mais sobre a terminologia do conda, confira o " +"glossário.](https://docs.conda.io/projects/conda/en/latest/glossary.html )" #: ../../package-structure-code/publish-python-package-pypi-conda.md:165 msgid "How to submit to conda-forge" -msgstr "" +msgstr "Como enviar para o conda-forge" #: ../../package-structure-code/publish-python-package-pypi-conda.md:167 msgid "" "While pyOpenSci doesn't require you to add your package to conda-forge, " "we encourage you to consider doing so!" msgstr "" +"Embora o pyOpenSci não exija que você adicione o seu pacote ao conda-" +"forge, nós incentivamos que você considere fazer isso!" #: ../../package-structure-code/publish-python-package-pypi-conda.md:170 msgid "" @@ -2144,20 +2874,26 @@ msgid "" "provided by the conda-forge maintainer team.](https://conda-" "forge.org/docs/maintainer/adding_pkgs.html)." msgstr "" +"Depois que o seu pacote estiver no PyPI, o processo para adicioná-lo ao " +"conda-forge é simples de fazer. [Você pode seguir os passos detalhados " +"fornecidos pela equipe de mantenedores do conda-forge.](https://conda-" +"forge.org/docs/maintainer/adding_pkgs.html)." #: ../../package-structure-code/publish-python-package-pypi-conda.md:174 msgid "Click here for a tutorial on adding your package to conda-forge." -msgstr "" +msgstr "Clique aqui para ver um tutorial sobre como adicionar o seu pacote ao conda-forge." #: ../../package-structure-code/publish-python-package-pypi-conda.md:181 msgid "If you want a step by step tutorial, click here." -msgstr "" +msgstr "Se você quer um tutorial passo a passo, clique aqui." #: ../../package-structure-code/publish-python-package-pypi-conda.md:183 msgid "" "Once your package is added, you will have a feedstock repository on " "GitHub with your packages name" msgstr "" +"Depois que o seu pacote for adicionado, você terá um repositório feedstock " +"no GitHub com o nome do seu pacote" #: ../../package-structure-code/publish-python-package-pypi-conda.md:186 msgid "" @@ -2165,10 +2901,13 @@ msgid "" "package - movingpandas](https://github.com/conda-forge/movingpandas-" "feedstock)" msgstr "" +"[Aqui está um exemplo de feedstock do conda-forge para o pacote aprovado " +"pelo pyOpenSci - movingpandas](https://github.com/conda-forge/movingpandas-" +"feedstock)" #: ../../package-structure-code/publish-python-package-pypi-conda.md:189 msgid "Maintaining your conda-forge package repository" -msgstr "" +msgstr "Mantendo o repositório do seu pacote no conda-forge" #: ../../package-structure-code/publish-python-package-pypi-conda.md:191 msgid "" @@ -2178,6 +2917,11 @@ msgid "" " in the conda-forge repository. Once that build is complete, you will get" " a notification to review the update." msgstr "" +"Depois que o seu pacote estiver no canal conda-forge, mantê-lo é simples. " +"Toda vez que você envia uma nova versão do seu pacote para o PyPI, isso " +"dispara uma build de integração contínua que atualiza o seu pacote no " +"repositório do conda-forge. Quando essa build for concluída, você " +"receberá uma notificação para revisar a atualização." #: ../../package-structure-code/publish-python-package-pypi-conda.md:197 msgid "" @@ -2187,14 +2931,19 @@ msgid "" "file found in the pull request match the PyPI metadata of the new " "release." msgstr "" +"Você pode fazer o merge do pull request dessa atualização assim que " +"estiver satisfeito com ele. Um PR pronto para merge geralmente significa " +"garantir que as dependências do seu projeto (conhecidas como requisitos de " +"execução) listadas no arquivo YAML atualizado encontrado no pull request " +"correspondam aos metadados do PyPI da nova versão." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:2 msgid "Use a pyproject.toml file for your package configuration & metadata" -msgstr "" +msgstr "Use um arquivo pyproject.toml para a configuração e os metadados do seu pacote" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:4 msgid "pyproject.toml takeaways" -msgstr "" +msgstr "Conclusões sobre o pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:6 msgid "" @@ -2202,18 +2951,25 @@ msgid "" "package: **[build-system]** and **[project]**. The **[project]** table " "stores your package's metadata." msgstr "" +"Há apenas duas tabelas que são obrigatórias para um pacote Python " +"instalável: **[build-system]** e **[project]**. A tabela **[project]** " +"armazena os metadados do seu pacote." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:7 msgid "" "There are two _required_ fields in the **[project]** table: **name=** and" " **version=**." msgstr "" +"Há dois campos _obrigatórios_ na tabela **[project]**: **name=** e " +"**version=**." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:8 msgid "" "Add metadata to the classifiers section of your `pyproject.toml` file to " "make it easier for users to find your project on PyPI." msgstr "" +"Adicione metadados à seção classifiers do seu arquivo `pyproject.toml` " +"para facilitar que os usuários encontrem o seu projeto no PyPI." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:9 msgid "" @@ -2222,6 +2978,10 @@ msgid "" "invalid value here will raise an error when you build your package or " "publish to PyPI." msgstr "" +"Ao adicionar classifiers à tabela [project], use apenas valores válidos da " +"[página de classifiers do PyPI](https://PyPI.org/classifiers/). Um valor " +"inválido aqui gerará um erro quando você fizer a build do seu pacote ou " +"publicar no PyPI." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:10 msgid "" @@ -2230,26 +2990,34 @@ msgid "" "example `requires =` always need to be associated with the **[build-" "system]** table." msgstr "" +"Não há uma ordem específica para as tabelas no arquivo `pyproject.toml`. " +"No entanto, os campos precisam ser colocados nas seções de tabela " +"corretas. Por exemplo, `requires =` sempre precisa estar associado à " +"tabela **[build-system]**." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:16 msgid "when these are published, remove this todo" -msgstr "" +msgstr "quando estes forem publicados, remova este todo" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:25 msgid "" "Need help creating your pyproject.toml file? This tutorial will walk you" " through the process." msgstr "" +"Precisa de ajuda para criar o seu arquivo pyproject.toml? Este tutorial " +"vai guiar você pelo processo." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:39 msgid "" "Click here if need help migrating from setup.py/setup.cfg to " "pyproject.toml" msgstr "" +"Clique aqui se precisar de ajuda para migrar de setup.py/setup.cfg para " +"pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:50 msgid "About the pyproject.toml file" -msgstr "" +msgstr "Sobre o arquivo pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:52 msgid "" @@ -2257,6 +3025,9 @@ msgid "" "pure Python packages, this file replaces the `setup.py` and/or " "`setup.cfg` file to describe project metadata." msgstr "" +"Todo pacote Python moderno deveria incluir um arquivo `pyproject.toml`. " +"Para pacotes Python puros, esse arquivo substitui o arquivo `setup.py` " +"e/ou `setup.cfg` para descrever os metadados do projeto." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:54 msgid "" @@ -2264,10 +3035,14 @@ msgid "" "file to build the non-Python extensions. However, a `pyproject.toml` file" " should still be used to store your project’s metadata." msgstr "" +"Se o seu projeto não for Python puro, você ainda pode precisar de um " +"arquivo `setup.py` para fazer a build das extensões não Python. No " +"entanto, um arquivo `pyproject.toml` ainda deve ser usado para armazenar " +"os metadados do seu projeto." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:56 msgid "Tutorial" -msgstr "" +msgstr "Tutorial" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:59 msgid "" @@ -2277,10 +3052,15 @@ msgid "" "**pyproject.toml**](https://packaging.python.org/en/latest/specifications" "/declaring-project-metadata/)" msgstr "" +"Se você está migrando de um arquivo **setup.py** ou **setup.cfg** e quer " +"ajuda, [confira este tutorial.](migrate-pyproj) [especificar requisitos de " +"build e metadados é chamado de " +"**pyproject.toml**](https://packaging.python.org/en/latest/specifications" +"/declaring-project-metadata/)" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:64 msgid "About the .toml format" -msgstr "" +msgstr "Sobre o formato .toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:66 msgid "" @@ -2290,24 +3070,32 @@ msgid "" "contains a `[table identifier]`. Below that table identifier are " "key/value pairs that support configuration for that particular table." msgstr "" +"O arquivo **pyproject.toml** é escrito no [formato TOML (Tom's Obvious, " +"Minimal Language)](https://toml.io/en/). O TOML é uma estrutura fácil de " +"ler baseada em pares chave/valor. Cada seção no arquivo **pyproject.toml** " +"contém um `[identificador de tabela]`. Abaixo desse identificador de " +"tabela estão os pares chave/valor que dão suporte à configuração daquela " +"tabela específica." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:70 msgid "Below `[build-system]` is considered a table in the toml language." -msgstr "" +msgstr "Abaixo, `[build-system]` é considerado uma tabela na linguagem toml." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:71 msgid "Within the `build-system` table, `requires =` is a key." -msgstr "" +msgstr "Dentro da tabela `build-system`, `requires =` é uma chave." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:72 msgid "" "The associated value for `requires` is an array containing the value " "`\"hatchling\"`." msgstr "" +"O valor associado a `requires` é um array contendo o valor " +"`\"hatchling\"`." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:80 msgid "How the pyproject.toml is used when you build a package" -msgstr "" +msgstr "Como o pyproject.toml é usado quando você faz a build de um pacote" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:84 msgid "" @@ -2323,6 +3111,18 @@ msgid "" "distribution file that allows PyPI to read the metadata and print it out " "on their website." msgstr "" +"Quando você publica no PyPI, vai notar que cada pacote tem metadados " +"listados. Vamos dar uma olhada no [xclim](https://pypi.org/project/xclim/), " +"um dos nossos [pacotes do pyOpenSci](https://www.pyopensci.org/python-" +"packages.html). Note que na página inicial do PyPI você vê alguns " +"metadados sobre o pacote, incluindo python, informações do mantenedor e " +"mais. O PyPI consegue preencher esses metadados porque eles foram " +"definidos usando a sintaxe e os classifiers corretos pelos mantenedores do " +"Xclim, [arquivo pyproject.toml]" +"(https://github.com/Ouranosinc/xclim/blob/master/pyproject.toml). Esses " +"metadados, quando o pacote xclim é construído, são traduzidos em um arquivo " +"de distribuição que permite ao PyPI ler os metadados e exibi-los no site " +"deles." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:86 #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:82 @@ -2333,6 +3133,11 @@ msgid "" "language, operating system, programming language and topic. Below each of" " those sections are various classifier options.\" width=\"300px\">" msgstr "" +"Imagem mostrando a barra lateral esquerda do PyPI para o pacote xclim. A " +"seção no topo diz Classifier. Abaixo há uma lista de itens incluindo " +"Status de desenvolvimento, público-alvo, Licença, idioma natural, sistema " +"operacional, linguagem de programação e tópico. Abaixo de cada uma dessas " +"seções estão várias opções de classifier.\" width=\"300px\">" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:91 #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:87 @@ -2343,10 +3148,16 @@ msgid "" "classifiers also allow users to sort through packages by version of " "python they support, categories and more." msgstr "" +"Quando você adiciona a seção classifier ao seu pyproject.toml e o seu " +"pacote é construído, a ferramenta de build organiza os metadados em um " +"formato que o PyPI consegue entender e representar na página inicial do " +"seu pacote no PyPI. Esses classifiers também permitem que os usuários " +"filtrem os pacotes pela versão do python que eles suportam, categorias e " +"mais." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:96 msgid "Benefits of using a pyproject.toml file" -msgstr "" +msgstr "Benefícios de usar um arquivo pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:98 msgid "" @@ -2354,10 +3165,13 @@ msgid "" "**pyproject.toml** format also allows someone to view the project's " "metadata in a GitHub repository." msgstr "" +"Incluir os metadados do seu pacote em um formato **pyproject.toml** " +"separado e legível por humanos também permite que alguém visualize os " +"metadados do projeto em um repositório do GitHub." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:101 msgid "Setup.py is still useful for complex package builds" -msgstr "" +msgstr "O Setup.py ainda é útil para builds de pacotes complexos" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:105 msgid "" @@ -2369,10 +3183,17 @@ msgid "" "complex builds, we will provide resources working with complex builds in " "the future." msgstr "" +"Usar o **setup.py** para gerenciar builds e metadados de pacotes [pode " +"causar problemas no desenvolvimento de " +"pacotes](https://blog.ganssle.io/articles/2021/10/setup-py-" +"deprecated.html). Em alguns casos em que a build de um pacote Python é " +"complexa, um arquivo **setup.py** pode ser necessário. Embora este guia " +"não cubra builds complexas, forneceremos recursos para trabalhar com " +"builds complexas no futuro." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:111 msgid "Optional vs. required pyproject.toml file fields" -msgstr "" +msgstr "Campos opcionais vs. obrigatórios do arquivo pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:113 msgid "" @@ -2380,6 +3201,10 @@ msgid "" "fields that you can use. Below we suggest specific fields to get you " "started that support publication on PyPI and users finding your package." msgstr "" +"Quando você cria o seu arquivo `pyproject.toml`, há diversos campos de " +"metadados que você pode usar. Abaixo, sugerimos campos específicos para " +"você começar, que dão suporte à publicação no PyPI e ajudam os usuários a " +"encontrar o seu pacote." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:115 msgid "" @@ -2387,20 +3212,25 @@ msgid "" "here.](https://packaging.python.org/en/latest/specifications/core-" "metadata/#project-url-multiple-use)" msgstr "" +"[Uma visão geral de todos os elementos de metadados do projeto pode ser " +"encontrada aqui.](https://packaging.python.org/en/latest/specifications/core-" +"metadata/#project-url-multiple-use)" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:117 msgid "Required fields for the `[project]` table" -msgstr "" +msgstr "Campos obrigatórios para a tabela `[project]`" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:119 msgid "" "As mentioned above, your `pyproject.toml` file needs to have a **`name`**" " and **`version`** field in order to properly build your package:" msgstr "" +"Como mencionado acima, o seu arquivo `pyproject.toml` precisa ter um campo " +"**`name`** e **`version`** para fazer a build do seu pacote corretamente:" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:121 msgid "`name`: This is the name of your project provided as a string" -msgstr "" +msgstr "`name`: Este é o nome do seu projeto fornecido como uma string" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:122 msgid "" @@ -2408,10 +3238,13 @@ msgid "" "tool for versioning (using git tags to determine versions), then the " "version may be dynamic (more on that below)." msgstr "" +"`version`: Esta é a versão do seu projeto. Se você está usando uma " +"ferramenta de SCM para versionamento (usando tags do git para determinar " +"as versões), então a versão pode ser dinâmica (mais sobre isso abaixo)." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:124 msgid "Optional fields to include in the `[project]` table" -msgstr "" +msgstr "Campos opcionais para incluir na tabela `[project]`" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:126 msgid "" @@ -2420,10 +3253,14 @@ msgid "" "clear how your package is structured, what platforms you support and what" " dependencies your package requires." msgstr "" +"Recomendamos fortemente que você também adicione as chaves de metadados " +"abaixo, pois elas ajudarão os usuários a encontrar o seu pacote no PyPI. " +"Esses campos deixarão claro como o seu pacote está estruturado, quais " +"plataformas você suporta e quais dependências o seu pacote requer." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:131 msgid "**Description:** this is a short one-line description of your package." -msgstr "" +msgstr "**Description:** esta é uma breve descrição de uma linha do seu pacote." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:132 msgid "" @@ -2431,6 +3268,9 @@ msgid "" "description. This information will be published on your packages PyPI " "landing page." msgstr "" +"**Readme:** Um link para o seu arquivo README.md é usado para a descrição " +"longa. Essa informação será publicada na página inicial do seu pacote no " +"PyPI." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:133 msgid "" @@ -2438,10 +3278,13 @@ msgid "" "Here you tell the installer whether you are using Python 2.x or 3.x. Most" " projects will be using 3.x." msgstr "" +"**Requires-python** (usado pelo pip): este é um campo usado pelo pip. Aqui " +"você informa ao instalador se está usando Python 2.x ou 3.x. A maioria dos " +"projetos estará usando 3.x." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:134 msgid "**License:** the license you are using" -msgstr "" +msgstr "**License:** a licença que você está usando" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:135 msgid "" @@ -2449,6 +3292,9 @@ msgid "" " authors are different from the maintainers. Other times they might be " "the same." msgstr "" +"**Autores:** estes são os autores originais do pacote. Às vezes os" +" autores são diferentes dos mantenedores. Em outras ocasiões, podem ser " +"os mesmos." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:136 msgid "" @@ -2456,6 +3302,9 @@ msgid "" " this using a list with a sub element for each author or maintainer name," " email" msgstr "" +"**Mantenedores:** você pode escolher preencher isso ou não. Você pode " +"preencher usando uma lista com um subelemento para o nome e e-mail de cada " +"autor ou mantenedor" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:144 msgid "" @@ -2465,6 +3314,11 @@ msgid "" " declared in the pyproject.toml file will be installed by uv or pip when " "your project is installed." msgstr "" +"**project.dependencies:** O grupo de dependências é opcional porque nem " +"todos os pacotes requerem dependências. No entanto, se o seu projeto tiver " +"dependências específicas, inclua esta seção no seu `pyproject.toml`. As " +"dependências declaradas no arquivo pyproject.toml serão instaladas pelo uv " +"ou pip quando o seu projeto for instalado." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:146 msgid "" @@ -2474,6 +3328,12 @@ msgid "" "specific features to your package that are not installed by default when " "a user runs `uv sync` or `python -m pip install packagename`." msgstr "" +"**project.optional-dependencies:** Dependências opcionais ou de " +"funcionalidade serão instaladas se alguém executar `python -m pip install " +"projectname[feature]`. Use este array para declarar dependências que " +"adicionam funcionalidades específicas ao seu pacote e que não são " +"instaladas por padrão quando um usuário executa `uv sync` ou `python -m " +"pip install packagename`." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:147 msgid "" @@ -2487,6 +3347,15 @@ msgid "" "here.](https://packaging.python.org/en/latest/specifications/dependency-" "groups/)" msgstr "" +"**dependency-groups:** Os grupos de dependências organizam os pacotes e " +"ferramentas que um colaborador ou desenvolvedor precisaria para trabalhar " +"no seu pacote. Essas dependências podem incluir ferramentas para construir " +"e executar testes, linters e formatadores de código. Esta é uma forma " +"opcional, mas altamente recomendada, de organizar e instalar dependências. " +"Esta seção pode substituir um arquivo requirements.txt. [Saiba mais sobre " +"como adicioná-las ao seu pacote no guia da PyPA " +"aqui.](https://packaging.python.org/en/latest/specifications/dependency-" +"groups/)" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:148 msgid "" @@ -2494,6 +3363,9 @@ msgid "" "landing page. Think of them as words that people might use to search for " "your package." msgstr "" +"**keywords:** Estas são as palavras-chave que aparecerão na página inicial " +"do seu pacote no PyPI. Pense nelas como palavras que as pessoas poderiam " +"usar para pesquisar o seu pacote." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:149 msgid "" @@ -2503,26 +3375,31 @@ msgid "" "here](https://PyPI.org/classifiers/). Some of the classifiers that you " "should consider including" msgstr "" +"**classifiers:** A seção classifiers dos seus metadados também é " +"importante para a página inicial do seu pacote no PyPI e para a filtragem " +"de pacotes no PyPI. Uma lista com [todas as opções de classifiers pode ser " +"encontrada aqui](https://PyPI.org/classifiers/). Alguns dos classifiers " +"que você deveria considerar incluir" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:150 msgid "Development Status" -msgstr "" +msgstr "Status de Desenvolvimento" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:151 msgid "Intended Audience" -msgstr "" +msgstr "Público-alvo" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:152 msgid "Topic" -msgstr "" +msgstr "Tópico" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:153 msgid "Programming language" -msgstr "" +msgstr "Linguagem de programação" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:155 msgid "Advanced options in the pyproject.toml file" -msgstr "" +msgstr "Opções avançadas no arquivo pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:157 msgid "" @@ -2531,6 +3408,11 @@ msgid "" "package, you may include an entry point to call that script directly at " "the command line (rather than at the Python shell)." msgstr "" +"**`[project.scripts]` (Pontos de entrada):** Os pontos de entrada são " +"opcionais. Se você tem uma ferramenta de linha de comando que executa um " +"script específico hospedado no seu pacote, você pode incluir um ponto de " +"entrada para chamar esse script diretamente na linha de comando (em vez de " +"no shell do Python)." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:159 msgid "" @@ -2540,6 +3422,11 @@ msgid "" "perform sets of tasks. The pyOpenSci is using those scripts to process " "their metadata." msgstr "" +"Aqui está um exemplo de [um pacote que tem script de ponto de " +"entrada](https://github.com/pyOpenSci/pyosMeta/blob/main/pyproject.toml#L60)s. " +"Note que há vários scripts principais definidos nesse pacote que executam " +"conjuntos de tarefas. O pyOpenSci está usando esses scripts para processar " +"seus metadados." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:160 msgid "" @@ -2548,11 +3435,15 @@ msgid "" " using Git tags (SCM/version control-based versioning). Example: " "**dynamic = [\"version\"]**" msgstr "" +"Use **Campos Dinâmicos** se você tem campos que são preenchidos " +"dinamicamente. Por exemplo, você pode querer atualizar automaticamente a " +"versão do seu pacote usando tags do Git (versionamento baseado em " +"SCM/controle de versão). Exemplo: **dynamic = [\"version\"]**" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:162 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Add dependencies to your pyproject.toml file" -msgstr "" +msgstr "Adicione dependências ao seu arquivo pyproject.toml" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:164 msgid "" @@ -2561,28 +3452,34 @@ msgid "" "development dependencies and also configuration for tools such as pytest," " black, and others." msgstr "" +"O arquivo `pyproject.toml` é um substituto moderno para o arquivo " +"`requirements.txt`, que tradicionalmente tem sido usado para armazenar " +"dependências de desenvolvimento e também a configuração de ferramentas " +"como pytest, black e outras." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:166 msgid "" "To add development dependencies to your build, add a `[dependency-" "groups]` array to your pyproject.toml file." msgstr "" +"Para adicionar dependências de desenvolvimento à sua build, adicione um " +"array `[dependency-groups]` ao seu arquivo pyproject.toml." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:168 msgid "Then specify dependency groups as follows:" -msgstr "" +msgstr "Em seguida, especifique os grupos de dependências da seguinte forma:" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:176 msgid "Following the above example, you install dependencies like this:" -msgstr "" +msgstr "Seguindo o exemplo acima, você instala as dependências assim:" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:178 msgid "`python -m pip install -e .[tests]`" -msgstr "" +msgstr "`python -m pip install -e .[tests]`" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:180 msgid "pip install --group test _# requires pip 25.1 or greater_" -msgstr "" +msgstr "pip install --group test _# requer pip 25.1 ou superior_" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:182 msgid "" @@ -2590,18 +3487,21 @@ msgid "" "dependencies declared in the tests section of your `[project.optional-" "dependencies]` table." msgstr "" +"O comando acima instalará tanto o seu pacote em modo editável quanto todas " +"as dependências declaradas na seção tests da sua tabela `[project.optional-" +"dependencies]`." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:184 msgid "To install all dependencies and also your package, you'd use:" -msgstr "" +msgstr "Para instalar todas as dependências e também o seu pacote, você usaria:" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:186 msgid "`python -m pip install -e .[tests,lint,docs]`" -msgstr "" +msgstr "`python -m pip install -e .[tests,lint,docs]`" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:188 msgid "Recursive dependencies" -msgstr "" +msgstr "Dependências recursivas" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:192 msgid "" @@ -2609,10 +3509,13 @@ msgid "" "for more.](https://hynek.me/articles/python-recursive-optional-" "dependencies/)" msgstr "" +"Você também pode configurar conjuntos de dependências recursivas. [Veja " +"este post de blog para saber mais.](https://hynek.me/articles/python-" +"recursive-optional-dependencies/)" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:195 msgid "Example pyproject.toml for building using hatchling" -msgstr "" +msgstr "Exemplo de pyproject.toml para build usando hatchling" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:197 msgid "" @@ -2620,14 +3523,18 @@ msgid "" "example package setup uses **hatchling** to build the [package's sdist " "and wheels](python-package-distribution-files-sdist-wheel)." msgstr "" +"Abaixo está um exemplo de configuração de build para um projeto Python. " +"Esta configuração de pacote de exemplo usa o **hatchling** para construir " +"[as distribuições sdist e wheel do pacote](python-package-distribution-" +"files-sdist-wheel)." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:205 msgid "Notice that dependencies are specified in this file." -msgstr "" +msgstr "Note que as dependências são especificadas neste arquivo." #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:207 msgid "Example pyproject.toml for building using setuptools" -msgstr "" +msgstr "Exemplo de pyproject.toml para build usando setuptools" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:209 msgid "" @@ -2636,36 +3543,47 @@ msgid "" "system (setuptools). Notice how simple it is to swap out the tools needed" " to build this package!" msgstr "" +"Os metadados do pacote, incluindo autores, palavras-chave etc., também são " +"fáceis de ler. Abaixo você pode ver o mesmo arquivo TOML que usa um sistema " +"de build diferente (setuptools). Note como é simples trocar as ferramentas " +"necessárias para construir este pacote!" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:213 msgid "In this example package setup you use:" -msgstr "" +msgstr "Nesta configuração de pacote de exemplo você usa:" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:215 msgid "" "**setuptools** to build the [package's sdist and wheels](python-package-" "distribution-files-sdist-wheel)" msgstr "" +"**setuptools** para construir [as distribuições sdist e wheel do " +"pacote](python-package-distribution-files-sdist-wheel)" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:216 msgid "" "**setuptools_scm** to manage package version updates using version " "control tags" msgstr "" +"**setuptools_scm** para gerenciar as atualizações de versão do pacote " +"usando tags de controle de versão" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:218 msgid "" "In the example below `[build-system]` is the first table of values. It " "has two keys that specify the build backend API and containing package:" msgstr "" +"No exemplo abaixo, `[build-system]` é a primeira tabela de valores. Ela " +"tem duas chaves que especificam a API do backend de build e o pacote que a " +"contém:" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:221 msgid "`requires =`" -msgstr "" +msgstr "`requires =`" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:222 msgid "`build-back-end =`" -msgstr "" +msgstr "`build-back-end =`" #: ../../package-structure-code/pyproject-toml-python-package-metadata.md:229 msgid "" @@ -2673,14 +3591,17 @@ msgid "" "setuptools, Poetry and Hatch.](/package-structure-code/python-package-" "build-tools)" msgstr "" +"[Clique aqui para ler sobre as nossas ferramentas de build de pacotes, " +"incluindo PDM, setuptools, Poetry e Hatch.](/package-structure-code/python-" +"package-build-tools)" #: ../../package-structure-code/python-package-build-tools.md:1 msgid "Python Packaging Tools" -msgstr "" +msgstr "Ferramentas de packaging Python" #: ../../package-structure-code/python-package-build-tools.md:4 msgid "Tools for building your package" -msgstr "" +msgstr "Ferramentas para construir o seu pacote" #: ../../package-structure-code/python-package-build-tools.md:6 msgid "" @@ -2692,6 +3613,13 @@ msgid "" "tools that currently support packages with C/C++ and other language " "extensions." msgstr "" +"Existem várias ferramentas de build diferentes que você pode usar para " +"[criar as distribuições _sdist_ e _wheel_ do seu pacote Python](python-" +"package-distribution-files-sdist-wheel). Abaixo, discutimos os recursos, " +"benefícios e limitações das ferramentas de packaging Python mais " +"comumente usadas. Neste guia, focamos em pacotes Python puros. No entanto, " +"também destacamos ferramentas que atualmente dão suporte a pacotes com " +"extensões em C/C++ e em outras linguagens." #: ../../package-structure-code/python-package-build-tools.md:14 msgid "" @@ -2702,6 +3630,13 @@ msgid "" "Hatch are the tools we think beginners might appreciate most with Poetry " "being a close second. Poetry is nice for pure Python projects." msgstr "" +"Diagrama de árvore de decisão mostrando as várias ferramentas de " +"packaging de front-end e back-end. Você pode decidir qual ferramenta " +"de packaging usar pensando em quais recursos você precisa. PDM e Hatch " +"são atualmente as ferramentas mais flexíveis, pois também usam diferentes " +"back-ends de build. Por isso, atualmente PDM e Hatch são as ferramentas " +"que achamos que os iniciantes podem apreciar mais, com o Poetry em segundo " +"lugar, bem próximo. O Poetry é bom para projetos Python puros." #: ../../package-structure-code/python-package-build-tools.md:16 msgid "" @@ -2711,6 +3646,12 @@ msgid "" "understand the most populate tools in the ecosystem. Each tool has " "different features as highlighted below." msgstr "" +"Diagrama mostrando as diferentes ferramentas de build de front-end " +"disponíveis para uso no ecossistema de pacotes Python que você pode " +"escolher. Selecionamos as ferramentas para incluir neste diagrama com base " +"na pesquisa do PyPI, que nos ajudou a entender as ferramentas mais " +"populares do ecossistema. Cada ferramenta tem recursos diferentes, " +"conforme destacado abaixo." #: ../../package-structure-code/python-package-build-tools.md:19 msgid "" @@ -2718,10 +3659,13 @@ msgid "" "written in other languages, [check out the page on complex package builds" ".](complex-python-package-builds)" msgstr "" +"Se você quer saber mais sobre pacotes Python que têm extensões escritas em " +"outras linguagens, [confira a página sobre builds de pacotes " +"complexos.](complex-python-package-builds)" #: ../../package-structure-code/python-package-build-tools.md:22 msgid "Tools that we review here" -msgstr "" +msgstr "Ferramentas que analisamos aqui" #: ../../package-structure-code/python-package-build-tools.md:24 msgid "" @@ -2729,6 +3673,9 @@ msgid "" "popular packaging tools in the PyPA survey. You will learn more about the" " following tools on this page:" msgstr "" +"Nesta seção, selecionamos ferramentas que apareceram como as ferramentas " +"de packaging mais populares na pesquisa da PyPA. Você aprenderá mais " +"sobre as seguintes ferramentas nesta página:" #: ../../package-structure-code/python-package-build-tools.md:28 msgid "" @@ -2736,43 +3683,52 @@ msgid "" "build.readthedocs.io/en/stable/) + " "[setuptools](https://setuptools.pypa.io/en/latest/)" msgstr "" +"[Twine](https://twine.readthedocs.io/en/stable/), [Build](https://pypa-" +"build.readthedocs.io/en/stable/) + " +"[setuptools](https://setuptools.pypa.io/en/latest/)" #: ../../package-structure-code/python-package-build-tools.md:29 msgid "[Flit](https://flit.pypa.io/en/stable/)" -msgstr "" +msgstr "[Flit](https://flit.pypa.io/en/stable/)" #: ../../package-structure-code/python-package-build-tools.md:30 msgid "[Hatch](https://hatch.pypa.io/latest/)" -msgstr "" +msgstr "[Hatch](https://hatch.pypa.io/latest/)" #: ../../package-structure-code/python-package-build-tools.md:31 msgid "[PDM](https://pdm-project.org/latest/)" -msgstr "" +msgstr "[PDM](https://pdm-project.org/latest/)" #: ../../package-structure-code/python-package-build-tools.md:32 msgid "[Poetry](https://python-poetry.org/docs/)" -msgstr "" +msgstr "[Poetry](https://python-poetry.org/docs/)" #: ../../package-structure-code/python-package-build-tools.md:35 msgid "Summary of tools Hatch vs. PDM vs. Poetry (and setuptools)" -msgstr "" +msgstr "Resumo das ferramentas Hatch vs. PDM vs. Poetry (e setuptools)" #: ../../package-structure-code/python-package-build-tools.md:37 msgid "If you are looking for a quick summary, read below." -msgstr "" +msgstr "Se você está procurando um resumo rápido, leia abaixo." #: ../../package-structure-code/python-package-build-tools.md:39 msgid "" "In general, any modern tool that you select from this page will be great " "to build your package. Selecting a tool comes down to the features that " "you are looking for in your workflow." -msgstr "" +msgstr ": +"Em geral, qualquer ferramenta moderna que você selecionar desta página " +"será ótima para construir o seu pacote. A escolha de uma ferramenta se " +"resume aos recursos que você está procurando no seu fluxo de trabalho." #: ../../package-structure-code/python-package-build-tools.md:40 msgid "" "We suggest that beginners start with a modern workflow tool like PDM as " "opposed to navigating the complexities of setuptools." msgstr "" +"Sugerimos que os iniciantes comecem com uma ferramenta de fluxo de " +"trabalho moderna como o PDM, em vez de lidar com as complexidades do " +"setuptools." #: ../../package-structure-code/python-package-build-tools.md:41 msgid "" @@ -2782,14 +3738,19 @@ msgid "" "Poetry will work well for pure-python builds! Poetry also has an active " "discord where you can ask questions." msgstr "" +"Se você vai usar o Poetry (é a ferramenta mais popular e tem a melhor " +"documentação), tome cuidado com as adições de dependências com limite " +"superior e considere sobrescrever as dependências ao adicioná-las. Se você " +"fizer isso, o Poetry funcionará bem para builds de Python puro! O Poetry " +"também tem um discord ativo onde você pode tirar dúvidas." #: ../../package-structure-code/python-package-build-tools.md:43 msgid "Below are some features that Hatch and PDM offer that Poetry does not." -msgstr "" +msgstr "Abaixo estão alguns recursos que o Hatch e o PDM oferecem e o Poetry não." #: ../../package-structure-code/python-package-build-tools.md:45 msgid "PDM:" -msgstr "" +msgstr "PDM:" #: ../../package-structure-code/python-package-build-tools.md:47 msgid "" @@ -2798,18 +3759,22 @@ msgid "" "complex Python builds as it supports meson-python and other build " "backends." msgstr "" +"Dá suporte a outros back-ends, tornando-o ideal para builds que não são de " +"Python puro. Isso significa que o PDM é uma ótima opção tanto para builds " +"de Python puro quanto para builds Python mais complexas, pois dá suporte " +"ao meson-python e a outros backends de build." #: ../../package-structure-code/python-package-build-tools.md:48 msgid "Offers flexibility in dependency management which we like" -msgstr "" +msgstr "Oferece flexibilidade no gerenciamento de dependências, o que apreciamos" #: ../../package-structure-code/python-package-build-tools.md:49 msgid "Offers lock files if you need them" -msgstr "" +msgstr "Oferece arquivos de lock (bloqueio) caso você precise deles" #: ../../package-structure-code/python-package-build-tools.md:51 msgid "Hatch:" -msgstr "" +msgstr "Hatch:" #: ../../package-structure-code/python-package-build-tools.md:53 msgid "" @@ -2817,6 +3782,9 @@ msgid "" "Python versions. If this feature is important to you, then Hatch is a " "clear winner." msgstr "" +"Oferece gerenciamento de ambientes em matriz que permite executar testes " +"em diferentes versões do Python. Se esse recurso é importante para você, " +"então o Hatch é o vencedor claro." #: ../../package-structure-code/python-package-build-tools.md:54 msgid "" @@ -2824,10 +3792,13 @@ msgid "" "you are looking to reduce the number of tools in your workflow, Hatch " "might be for you." msgstr "" +"Oferece uma ferramenta semelhante ao Nox / Makefile para otimizar o seu " +"fluxo de trabalho de build. Se você está buscando reduzir o número de " +"ferramentas no seu fluxo de trabalho, o Hatch pode ser para você." #: ../../package-structure-code/python-package-build-tools.md:57 msgid "Build front-end vs. build back-end tools" -msgstr "" +msgstr "Ferramentas de front-end de build vs. back-end de build" #: ../../package-structure-code/python-package-build-tools.md:59 msgid "" @@ -2835,10 +3806,13 @@ msgid "" "package, it's important to first understand the difference between a " "build tool front-end and build back-end." msgstr "" +"Para entender melhor as suas opções quando se trata de construir um pacote " +"Python, é importante primeiro entender a diferença entre uma ferramenta de " +"front-end de build e uma de back-end de build." #: ../../package-structure-code/python-package-build-tools.md:64 msgid "Build back-ends" -msgstr "" +msgstr "Back-ends de build" #: ../../package-structure-code/python-package-build-tools.md:66 msgid "" @@ -2849,6 +3823,13 @@ msgid "" "package build that does not have extensions that are written in another " "programming language (such as `C` or `C++`)." msgstr "" +"A maioria das ferramentas de packaging tem uma ferramenta de build de " +"back-end que constrói o seu pacote e cria os [arquivos de distribuição " +"(sdist e wheel)](python-package-distribution-files-sdist-wheel) " +"associados. Algumas ferramentas, como o **Flit**, dão suporte apenas a " +"builds de pacotes de Python puro. Uma build de Python puro refere-se a uma " +"build de pacote que não tem extensões escritas em outra linguagem de " +"programação (como `C` ou `C++`)." #: ../../package-structure-code/python-package-build-tools.md:73 msgid "" @@ -2859,10 +3840,17 @@ msgid "" "is particularly complex (i.e. you have more than a few `C`/`C++` " "extensions), then we suggest you use **meson.build** or **scikit-build**." msgstr "" +"Outros pacotes que têm extensões em C e C++ (ou que encapsulam outras " +"linguagens como fortran) requerem etapas adicionais de compilação de " +"código ao serem construídos. Back-ends como **setuptools.build**, " +"**meson.build** e **scikit-build** dão suporte a builds complexas com " +"etapas personalizadas. Se a sua build for particularmente complexa (ou " +"seja, você tem mais do que algumas poucas extensões `C`/`C++`), então " +"sugerimos que você use o **meson.build** ou o **scikit-build**." #: ../../package-structure-code/python-package-build-tools.md:79 msgid "Python package build front-ends" -msgstr "" +msgstr "Front-ends de build de pacotes Python" #: ../../package-structure-code/python-package-build-tools.md:81 msgid "" @@ -2870,36 +3858,45 @@ msgid "" "to perform common packaging tasks using similar commands. These tasks " "include:" msgstr "" +"Uma ferramenta de front-end de packaging refere-se a uma ferramenta " +"que facilita a execução de tarefas comuns de packaging usando comandos " +"semelhantes. Essas tarefas incluem:" #: ../../package-structure-code/python-package-build-tools.md:84 msgid "" "[Build your packages (create the sdist and wheel distributions)](python-" "package-distribution-files-sdist-wheel)" msgstr "" +"[Construir os seus pacotes (criar as distribuições sdist e wheel)](python-" +"package-distribution-files-sdist-wheel)" #: ../../package-structure-code/python-package-build-tools.md:85 msgid "" "Installing your package in a development mode (so it updates when you " "update your code)" msgstr "" +"Instalar o seu pacote em modo de desenvolvimento (para que ele seja " +"atualizado quando você atualizar o seu código)" #: ../../package-structure-code/python-package-build-tools.md:86 msgid "Publishing to PyPI" -msgstr "" +msgstr "Publicar no PyPI" #: ../../package-structure-code/python-package-build-tools.md:87 msgid "Running tests" -msgstr "" +msgstr "Executar testes" #: ../../package-structure-code/python-package-build-tools.md:88 msgid "Building documentation" -msgstr "" +msgstr "Construir documentação" #: ../../package-structure-code/python-package-build-tools.md:89 msgid "" "Managing an environment or multiple environments in which you need to run" " tests and develop your package" msgstr "" +"Gerenciar um ambiente ou múltiplos ambientes nos quais você precisa " +"executar testes e desenvolver o seu pacote" #: ../../package-structure-code/python-package-build-tools.md:91 msgid "" @@ -2907,6 +3904,10 @@ msgid "" " builds. Each front-end tool discussed below supports a slightly " "different set of Python packaging tasks." msgstr "" +"Existem várias ferramentas de packaging Python que você pode usar para " +"builds de Python puro. Cada ferramenta de front-end discutida abaixo dá " +"suporte a um conjunto ligeiramente diferente de tarefas de packaging " +"Python." #: ../../package-structure-code/python-package-build-tools.md:95 msgid "" @@ -2918,6 +3919,15 @@ msgid "" "build your package's sdist and wheel distribution files, then you can " "stick with PyPA's Build. You'd then use Twine to publish to PyPI." msgstr "" +"Por exemplo, você pode usar as ferramentas de packaging **Flit**, " +"**Hatch** ou **PDM** tanto para construir quanto para publicar o seu " +"pacote no PyPI. No entanto, embora o **Hatch** e o **PDM** deem suporte a " +"versionamento e gerenciamento de ambientes, o **Flit** não dá. Se você " +"quer uma ferramenta que dê suporte ao bloqueio de dependências, você pode " +"usar o **PDM** ou o **Poetry**, mas não o **Hatch**. Se você só precisa " +"construir os arquivos de distribuição sdist e wheel do seu pacote, então " +"você pode ficar com o Build da PyPA. Aí você usaria o Twine para publicar " +"no PyPI." #: ../../package-structure-code/python-package-build-tools.md:102 msgid "" @@ -2925,24 +3935,31 @@ msgid "" "front-end that performs multiple tasks. You will need to use **build** to" " build your package and **twine** to publish to PyPI." msgstr "" +"Se você está usando o **Setuptools**, não há um front-end de build padrão " +"e amigável que execute múltiplas tarefas. Você precisará usar o **build** " +"para construir o seu pacote e o **twine** para publicar no PyPI." #: ../../package-structure-code/python-package-build-tools.md:105 msgid "Example build steps that can be simplified using a front-end tool" -msgstr "" +msgstr "Exemplo de etapas de build que podem ser simplificadas usando uma " +"ferramenta de front-end" #: ../../package-structure-code/python-package-build-tools.md:107 msgid "" "Below, you can see how a build tool streamlines your packaging " "experience. Example to build your package with **Hatch**:" msgstr "" +"Abaixo, você pode ver como uma ferramenta de build otimiza a sua " +"experiência de packaging. Exemplo para construir o seu pacote com o " +"**Hatch**:" #: ../../package-structure-code/python-package-build-tools.md:117 msgid "Example build steps using the **setuptools** back-end and **build**:" -msgstr "" +msgstr "Exemplo de etapas de build usando o back-end **setuptools** e o **build**:" #: ../../package-structure-code/python-package-build-tools.md:127 msgid "Choosing a build back-end" -msgstr "" +msgstr "Escolhendo um back-end de build" #: ../../package-structure-code/python-package-build-tools.md:129 msgid "" @@ -2951,22 +3968,31 @@ msgid "" "For pure Python packages, the main difference between the different build" " back-ends discussed below is:" msgstr "" +"A maioria das ferramentas de packaging de front-end tem a sua própria " +"ferramenta de build de back-end. A ferramenta de build cria os arquivos de " +"distribuição (sdist e wheel) do seu pacote. Para pacotes de Python puro, a " +"principal diferença entre os diferentes back-ends de build discutidos " +"abaixo é:" #: ../../package-structure-code/python-package-build-tools.md:134 msgid "" "How configurable they are - for example, do they allow you to add build " "steps that support non python extensions?" msgstr "" +"O quão configuráveis eles são - por exemplo, eles permitem que você " +"adicione etapas de build que dão suporte a extensões não Python?" #: ../../package-structure-code/python-package-build-tools.md:135 msgid "" "How much you need to configure them to ensure the correct files are " "included in your sdist and wheel distributions." msgstr "" +"O quanto você precisa configurá-los para garantir que os arquivos corretos " +"sejam incluídos nas suas distribuições sdist e wheel." #: ../../package-structure-code/python-package-build-tools.md:137 msgid "Build back-end support for non pure-python packages" -msgstr "" +msgstr "Suporte de back-end de build para pacotes que não são de Python puro" #: ../../package-structure-code/python-package-build-tools.md:139 msgid "" @@ -2974,20 +4000,25 @@ msgid "" " only support pure Python builds. Other back-ends support C and C++ " "extensions as follows:" msgstr "" +"É importante observar que alguns back-ends de build, como o **Flit-core**, " +"dão suporte apenas a builds de Python puro. Outros back-ends dão suporte a " +"extensões em C e C++ da seguinte forma:" #: ../../package-structure-code/python-package-build-tools.md:142 msgid "setuptools supports builds using C / C++ extensions" -msgstr "" +msgstr "o setuptools dá suporte a builds usando extensões em C / C++" #: ../../package-structure-code/python-package-build-tools.md:143 msgid "" "Hatchling (hatch's back-end) supports C / C++ extensions via plugins that" " the developer creates to customize a build" msgstr "" +"O Hatchling (o back-end do hatch) dá suporte a extensões em C / C++ por " +"meio de plugins que o desenvolvedor cria para personalizar uma build" #: ../../package-structure-code/python-package-build-tools.md:144 msgid "PDM's back-end supports C / C++ extensions by using setuptools" -msgstr "" +msgstr "O back-end do PDM dá suporte a extensões em C / C++ usando o setuptools" #: ../../package-structure-code/python-package-build-tools.md:145 msgid "" @@ -2995,16 +4026,22 @@ msgid "" " currently undocumented. As such we don't recommend using Poetry for " "complex or non pure Python builds until it is documented." msgstr "" +"O back-end do Poetry dá suporte a extensões em C/C++, no entanto essa " +"funcionalidade atualmente não é documentada. Por isso, não recomendamos " +"usar o Poetry para builds complexas ou que não sejam de Python puro até " +"que ela seja documentada." #: ../../package-structure-code/python-package-build-tools.md:147 msgid "" "While we won't discuss more complex builds below, we will identify which " "tools have documented support for C / C++ extensions." msgstr "" +"Embora não discutamos builds mais complexas abaixo, identificaremos quais " +"ferramentas têm suporte documentado para extensões em C / C++." #: ../../package-structure-code/python-package-build-tools.md:150 msgid "An ecosystem of Python build tools" -msgstr "" +msgstr "Um ecossistema de ferramentas de build Python" #: ../../package-structure-code/python-package-build-tools.md:152 msgid "" @@ -3012,10 +4049,14 @@ msgid "" "build front-end tools. We highlight the features that each tool offers as" " a way to help you decide what tool might be best for your workflow." msgstr "" +"Abaixo, apresentamos várias das ferramentas de front-end de build de " +"packaging Python mais comumente usadas. Destacamos os recursos que " +"cada ferramenta oferece como uma forma de ajudar você a decidir qual " +"ferramenta pode ser a melhor para o seu fluxo de trabalho." #: ../../package-structure-code/python-package-build-tools.md:156 msgid "We do not suggest using setuptools" -msgstr "" +msgstr "Não sugerimos usar o setuptools" #: ../../package-structure-code/python-package-build-tools.md:159 msgid "" @@ -3023,12 +4064,17 @@ msgid "" " setuptools because setuptools will require some additional knowledge to " "set up correctly." msgstr "" +"Sugerimos que você escolha uma das ferramentas modernas listadas acima em " +"vez do setuptools, porque o setuptools exigirá algum conhecimento " +"adicional para ser configurado corretamente." #: ../../package-structure-code/python-package-build-tools.md:163 msgid "" "We review setuptools as a back-end because it is still popular. However " "it is not the most user friendly option." msgstr "" +"Analisamos o setuptools como um back-end porque ele ainda é popular. No " +"entanto, não é a opção mais amigável." #: ../../package-structure-code/python-package-build-tools.md:167 msgid "" @@ -3036,12 +4082,18 @@ msgid "" "(with build) and Poetry (a front end tool with numerous features and " "excellent documentation)." msgstr "" +"As ferramentas mais comumente usadas no ecossistema são o back-end " +"setuptools (com o build) e o Poetry (uma ferramenta de front-end com " +"diversos recursos e excelente documentação)." #: ../../package-structure-code/python-package-build-tools.md:173 msgid "" "Graph showing the results of the 2022 PyPA survey of Python packaging " "tools. On the x axis is percent response and on the y axis are the tools." msgstr "" +"Gráfico mostrando os resultados da pesquisa de 2022 da PyPA sobre " +"ferramentas de packaging Python. No eixo x está a porcentagem de " +"respostas e no eixo y estão as ferramentas." #: ../../package-structure-code/python-package-build-tools.md:175 msgid "" @@ -3054,52 +4106,63 @@ msgid "" "heavily represented by those in web development. So this represents a " "snapshot across the broader Python ecosystem." msgstr "" +"Os resultados da pesquisa com desenvolvedores Python (n=>8.000 usuários do " +"PyPI) mostram o setuptools e o poetry como as ferramentas de packaging " +"Python mais comumente usadas. As principais ferramentas que vimos sendo " +"usadas na comunidade científica estão incluídas aqui. [Você pode ver os " +"resultados completos da pesquisa clicando " +"aqui.](https://drive.google.com/file/d/1U5d5SiXLVkzDpS0i1dJIA4Hu5Qg704T9/view)" +" NOTA: estes dados representam mantenedores de diversos domínios e " +"provavelmente são fortemente representados por pessoas do desenvolvimento " +"web. Portanto, isto representa um panorama de todo o ecossistema Python." #: ../../package-structure-code/python-package-build-tools.md:178 msgid "Chose a build workflow tool" -msgstr "" +msgstr "Escolha uma ferramenta de fluxo de trabalho de build" #: ../../package-structure-code/python-package-build-tools.md:180 msgid "The tools that we review below include:" -msgstr "" +msgstr "As ferramentas que analisamos abaixo incluem:" #: ../../package-structure-code/python-package-build-tools.md:182 msgid "Twine, Build + setuptools" -msgstr "" +msgstr "Twine, Build + setuptools" #: ../../package-structure-code/python-package-build-tools.md:183 #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:294 #: ../../package-structure-code/python-package-build-tools.md:307 msgid "Flit" -msgstr "" +msgstr "Flit" #: ../../package-structure-code/python-package-build-tools.md:184 #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:336 #: ../../package-structure-code/python-package-build-tools.md:353 msgid "Hatch" -msgstr "" +msgstr "Hatch" #: ../../package-structure-code/python-package-build-tools.md:185 #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:233 #: ../../package-structure-code/python-package-build-tools.md:254 msgid "PDM" -msgstr "" +msgstr "PDM" #: ../../package-structure-code/python-package-build-tools.md:186 #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:380 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Poetry" -msgstr "" +msgstr "Poetry" #: ../../package-structure-code/python-package-build-tools.md:188 msgid "" "When you are selecting a tool, you might consider this general workflow " "of questions:" msgstr "" +"Ao selecionar uma ferramenta, você pode considerar este fluxo geral de " +"perguntas:" #: ../../package-structure-code/python-package-build-tools.md:191 msgid "" @@ -3107,10 +4170,13 @@ msgid "" "Pick the tool that has the features that you want to use in your build " "workflow. We suggest:" msgstr "" +"**O seu pacote é Python puro? Sim?** Você pode usar qualquer ferramenta " +"que quiser! Escolha a ferramenta que tem os recursos que você quer usar no " +"seu fluxo de trabalho de build. Sugerimos:" #: ../../package-structure-code/python-package-build-tools.md:193 msgid "Flit, Hatch, PDM or Poetry (read below for more)" -msgstr "" +msgstr "Flit, Hatch, PDM ou Poetry (leia abaixo para saber mais)" #: ../../package-structure-code/python-package-build-tools.md:195 msgid "" @@ -3121,6 +4187,13 @@ msgid "" "workflow. PDM supports other back-ends such as scikit-build and meson-" "python that will allow you to fully customize your package's build." msgstr "" +"**O seu pacote tem algumas extensões em C ou C++?** Ótimo, sugerimos usar " +"o **PDM** por enquanto. É a única ferramenta da lista abaixo que tem tanto " +"um fluxo de trabalho documentado para dar suporte a essas extensões quanto " +"suporte a outros back-ends caso os build hooks não sejam suficientes para " +"o seu fluxo de trabalho. O PDM dá suporte a outros back-ends como o scikit-" +"build e o meson-python, que permitirão que você personalize totalmente a " +"build do seu pacote." #: ../../package-structure-code/python-package-build-tools.md:199 msgid "" @@ -3131,10 +4204,17 @@ msgid "" "python to build their packages. Thus, we appreciate that PDM can work " "with meson-python specifically." msgstr "" +"NOTA: Você também pode usar o Hatch para builds que não sejam de Python " +"puro. O Hatch, assim como o PDM, permite que você escreva os seus próprios " +"build hooks ou plugins para dar suporte a etapas de build personalizadas. " +"Mas, atualmente, o hatch não dá suporte a outros back-ends de build. " +"Muitos dos principais pacotes científicos estão migrando para o meson-" +"python para construir seus pacotes. Por isso, valorizamos o fato de o PDM " +"poder trabalhar especificamente com o meson-python." #: ../../package-structure-code/python-package-build-tools.md:201 msgid "Python packaging tools summary" -msgstr "" +msgstr "Resumo das ferramentas de packaging Python" #: ../../package-structure-code/python-package-build-tools.md:203 msgid "" @@ -3146,16 +4226,26 @@ msgid "" "do all of those things using the same tool (e.g. `hatch build`, `hatch " "publish` or `pdm build`, `pdm publish`)." msgstr "" +"Abaixo, resumimos os recursos oferecidos pelas ferramentas de front-end de " +"build mais populares. É importante ter em mente que essas ferramentas de " +"front-end eliminam a necessidade de usar outras ferramentas principais no " +"seu fluxo de trabalho. Por exemplo, se você usar o setuptools, também " +"precisará usar o Build e o Twine para construir o seu pacote e publicar no " +"PyPI. Mas se você usar o Poetry, o Hatch ou o PDM, você pode fazer todas " +"essas coisas usando a mesma ferramenta (por exemplo, `hatch build`, `hatch " +"publish` ou `pdm build`, `pdm publish`)." #: ../../package-structure-code/python-package-build-tools.md:206 msgid "" "Note that because setuptools does not offer a front-end interface, it is " "not included in the table." msgstr "" +"Observe que, como o setuptools não oferece uma interface de front-end, ele " +"não está incluído na tabela." #: ../../package-structure-code/python-package-build-tools.md:210 msgid "Package tool features table" -msgstr "" +msgstr "Tabela de recursos das ferramentas de pacote" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:254 @@ -3163,34 +4253,34 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Feature" -msgstr "" +msgstr "Recurso" #: ../../package-structure-code/python-package-build-tools.md:217 msgid "Default Build Back-end" -msgstr "" +msgstr "Back-end de Build Padrão" #: ../../package-structure-code/python-package-build-tools.md:217 msgid "Flit-core" -msgstr "" +msgstr "Flit-core" #: ../../package-structure-code/python-package-build-tools.md:217 msgid "hatchling" -msgstr "" +msgstr "hatchling" #: ../../package-structure-code/python-package-build-tools.md:217 msgid "Poetry-core" -msgstr "" +msgstr "Poetry-core" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:353 msgid "Use Other Build Backends" -msgstr "" +msgstr "Usar Outros Back-ends de Build" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:353 msgid "✖" -msgstr "" +msgstr "x" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:254 @@ -3198,45 +4288,45 @@ msgstr "" #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "✅" -msgstr "" +msgstr "✅" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:353 msgid "Dependency management" -msgstr "" +msgstr "Gerenciamento de dependências" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:254 msgid "Publish to PyPI" -msgstr "" +msgstr "Publicar no PyPI" #: ../../package-structure-code/python-package-build-tools.md:217 msgid "Version Control based versioning (using `git tags`)" -msgstr "" +msgstr "Versionamento baseado em controle de versão (usando `git tags`)" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Version bumping" -msgstr "" +msgstr "Incremento de versão" #: ../../package-structure-code/python-package-build-tools.md:217 #: ../../package-structure-code/python-package-build-tools.md:353 msgid "Environment Management" -msgstr "" +msgstr "Gerenciamento de Ambientes" #: ../../package-structure-code/python-package-build-tools.md:217 msgid "More than one maintainer? (bus factor)" -msgstr "" +msgstr "Mais de um mantenedor? (fator ônibus)" #: ../../package-structure-code/python-package-build-tools.md:227 msgid "Notes:" -msgstr "" +msgstr "Notas:" #: ../../package-structure-code/python-package-build-tools.md:229 msgid "_Hatch plans to support dependency management in the future_" -msgstr "" +msgstr "_O Hatch planeja dar suporte ao gerenciamento de dependências no futuro_" #: ../../package-structure-code/python-package-build-tools.md:230 msgid "" @@ -3244,6 +4334,9 @@ msgid "" "bumping following commit messages if you use a tool such as Python " "Semantic Release" msgstr "" +"O Poetry dá suporte ao versionamento semântico. Assim, ele dará suporte ao " +"incremento de versão seguindo as mensagens de commit se você usar uma " +"ferramenta como o Python Semantic Release" #: ../../package-structure-code/python-package-build-tools.md:235 msgid "" @@ -3252,10 +4345,14 @@ msgid "" "also provides multiple layers of support for projects that have C and C++" " extensions." msgstr "" +"[O PDM é uma ferramenta de packaging e gerenciamento de dependências " +"Python](https://pdm-project.org/latest/). O PDM dá suporte a builds para " +"projetos Python puros. Ele também fornece várias camadas de suporte para " +"projetos que têm extensões em C e C++." #: ../../package-structure-code/python-package-build-tools.md:239 msgid "PDM support for C and C++ extensions" -msgstr "" +msgstr "Suporte do PDM para extensões em C e C++" #: ../../package-structure-code/python-package-build-tools.md:241 msgid "" @@ -3264,17 +4361,22 @@ msgid "" "PDM's build back-end receives the compiled extension files (.so, .pyd) " "and packages them with the pure Python files." msgstr "" +"O PDM dá suporte ao uso do back-end do PDM e do setuptools ao mesmo tempo. " +"Isso significa que você pode executar o setuptools para compilar e " +"construir extensões em C. O back-end de build do PDM recebe os arquivos de " +"extensão compilados (.so, .pyd) e os empacota junto com os arquivos Python " +"puros." #: ../../package-structure-code/python-package-build-tools.md:247 msgid "PDM features" -msgstr "" +msgstr "Recursos do PDM" #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:307 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Notes" -msgstr "" +msgstr "Notas" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" @@ -3282,10 +4384,14 @@ msgid "" " including: PDM-core, flit-core and hatchling. PDM also can work with " "Meson-Python which supports move complex python builds." msgstr "" +"Quando você configura o PDM, ele permite que você selecione um de vários " +"back-ends de build, incluindo: PDM-core, flit-core e hatchling. O PDM " +"também pode trabalhar com o Meson-Python, que dá suporte a builds Python " +"mais complexas." #: ../../package-structure-code/python-package-build-tools.md:254 msgid "Dependency specifications" -msgstr "" +msgstr "Especificações de dependências" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" @@ -3296,10 +4402,16 @@ msgid "" "limit](https://pdm-project.org/en/latest/usage/dependency/#about-update-" "strategy).**" msgstr "" +"O PDM tem suporte flexível para gerenciar dependências. O PDM usa por " +"padrão uma abordagem de limite aberto (por exemplo, `requests >=1.2`) para " +"as dependências. No entanto, você pode [personalizar como deseja " +"adicionar dependências caso prefira outra abordagem, como a do Poetry, que " +"usa um limite superior](https://pdm-project.org/en/latest/usage/dependency/#about-update-" +"strategy).**" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "Environment lock files" -msgstr "" +msgstr "Arquivos de lock de ambiente" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" @@ -3309,11 +4421,16 @@ msgid "" " For community-used packages, you will likely never want to use a lock " "file." msgstr "" +"O PDM e o Poetry são atualmente as únicas ferramentas que criam arquivos " +"de lock de ambiente. Os arquivos de lock costumam ser mais úteis para " +"desenvolvedores que criam aplicações web, onde bloquear o ambiente é " +"essencial para uma experiência de usuário consistente. Para pacotes usados " +"pela comunidade, é provável que você nunca queira usar um arquivo de lock." #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Environment management" -msgstr "" +msgstr "Gerenciamento de ambientes" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" @@ -3322,79 +4439,93 @@ msgid "" "newer option in the Python ecosystem. No extensions are needed for this " "support." msgstr "" +"O PDM fornece suporte ao gerenciamento de ambientes. Ele dá suporte a " +"ambientes virtuais Python, conda e a um ambiente local `__pypackages__`, " +"que é uma opção mais recente no ecossistema Python. Nenhuma extensão é " +"necessária para esse suporte." #: ../../package-structure-code/python-package-build-tools.md:254 msgid "Select your environment type on install" -msgstr "" +msgstr "Selecione o tipo de ambiente na instalação" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" "When you run `PDM init`, PDM will discover environments that are already " "on your system and allow you to select one to use for your project." msgstr "" +"Quando você executa `PDM init`, o PDM descobrirá os ambientes que já estão " +"no seu sistema e permitirá que você selecione um para usar no seu projeto." #: ../../package-structure-code/python-package-build-tools.md:254 msgid "PDM supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "O PDM dá suporte à publicação tanto no test PyPI quanto no PyPI" #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Version Control based versioning" -msgstr "" +msgstr "Versionamento baseado em controle de versão" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" "PDM has a setuptools_scm like tool built into it which allows you to use " "dynamic versioning that rely on git tags." msgstr "" +"O PDM tem uma ferramenta semelhante ao setuptools_scm embutida nele, que " +"permite usar versionamento dinâmico baseado em tags do git." #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" "PDM supports you bumping the version of your package using standard " "semantic version terms patch; minor; major" msgstr "" +"O PDM dá suporte ao incremento da versão do seu pacote usando os termos " +"padrão de versionamento semântico patch; minor; major" #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:307 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Follows current packaging standards" -msgstr "" +msgstr "Segue os padrões atuais de packaging" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" "PDM supports current packaging standards for adding metadata to the " "**pyproject.toml** file." msgstr "" +"O PDM dá suporte aos padrões atuais de packaging para adicionar " +"metadados ao arquivo **pyproject.toml**." #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:307 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Install your package in editable mode" -msgstr "" +msgstr "Instale o seu pacote em modo editável" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "PDM supports installing your package in editable mode." -msgstr "" +msgstr "O PDM dá suporte à instalação do seu pacote em modo editável." #: ../../package-structure-code/python-package-build-tools.md:254 #: ../../package-structure-code/python-package-build-tools.md:307 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Build your sdist and wheel distributions" -msgstr "" +msgstr "Construa as suas distribuições sdist e wheel" #: ../../package-structure-code/python-package-build-tools.md:254 msgid "" "Similar to all of the other tools PDM builds your packages sdist and " "wheel files for you." msgstr "" +"Assim como todas as outras ferramentas, o PDM constrói os arquivos sdist e " +"wheel do seu pacote para você." #: ../../package-structure-code/python-package-build-tools.md:267 msgid "PDM vs. Poetry" -msgstr "" +msgstr "PDM vs. Poetry" #: ../../package-structure-code/python-package-build-tools.md:268 msgid "" @@ -3403,12 +4534,19 @@ msgid "" " versioning. As such, PDM is preferred for those working on non pure-" "Python packages." msgstr "" +"A funcionalidade do PDM é semelhante à do Poetry. No entanto, o PDM também " +"oferece suporte adicional e documentado para extensões em C e " +"versionamento baseado em controle de versão. Por isso, o PDM é preferível " +"para quem trabalha com pacotes que não são de Python puro." #: ../../package-structure-code/python-package-build-tools.md:272 msgid "" "If you are deciding between the Poetry and PDM, a smaller difference is " "the default way that dependencies are added to your pyproject.toml file." msgstr "" +"Se você está decidindo entre o Poetry e o PDM, uma diferença menor é a " +"forma padrão como as dependências são adicionadas ao seu arquivo " +"pyproject.toml." #: ../../package-structure-code/python-package-build-tools.md:274 msgid "" @@ -3423,6 +4561,17 @@ msgid "" " bound locks means that requests 2.0 could never be installed even if it " "came out and your package could benefit from it)." msgstr "" +"O Poetry, por padrão, segue o versionamento semântico estrito, adicionando " +"dependências ao seu arquivo pyproject.toml [usando uma restrição de limite " +"superior (`^`)](https://python-poetry.org/docs/dependency-specification/#version-" +"constraints). O bloqueio de limite superior significa que o Poetry nunca " +"vai incrementar uma dependência para a próxima versão major (ou seja, de " +"1.2 para 2.0). No entanto, você pode dizer ao Poetry para usar uma " +"abordagem de limite aberto adicionando o pacote explicitamente assim: " +"`poetry add requests >= 1.2` em vez de apenas usar `poetry add requests`, " +"o que resultará em um limite superior bloqueado (ou seja, o bloqueio de " +"limite superior significa que requests 2.0 nunca poderia ser instalado, " +"mesmo que fosse lançado e o seu pacote pudesse se beneficiar dele)." #: ../../package-structure-code/python-package-build-tools.md:275 msgid "" @@ -3432,22 +4581,32 @@ msgid "" " you can also specify upper-bounds (`^`) using PDM if require that " "approach." msgstr "" +"O PDM usa por padrão adições de dependências com limites abertos (`>=`), " +"que é a abordagem preferida no ecossistema científico do python. No " +"entanto, o PDM também permite que você especifique a forma como as " +"dependências são adicionadas por padrão. Assim, você também pode " +"especificar limites superiores (`^`) usando o PDM caso precise dessa " +"abordagem." #: ../../package-structure-code/python-package-build-tools.md:277 msgid "" "Finally there are some nuanced differences in how both tools create lock " "files which we will not go into detail about here." msgstr "" +"Por fim, há algumas diferenças sutis na forma como ambas as ferramentas " +"criam arquivos de lock, sobre as quais não entraremos em detalhes aqui." #: ../../package-structure-code/python-package-build-tools.md:280 msgid "Challenges with PDM" -msgstr "" +msgstr "Desafios com o PDM" #: ../../package-structure-code/python-package-build-tools.md:282 msgid "" "PDM is a full-featured packaging tool. However it is not without " "challenges:" msgstr "" +"O PDM é uma ferramenta de packaging completa. No entanto, ela não está " +"isenta de desafios:" #: ../../package-structure-code/python-package-build-tools.md:284 msgid "" @@ -3455,6 +4614,9 @@ msgid "" "packaging. For example, PDM doesn't provide an end to end beginning " "workflow in its documentation." msgstr "" +"Sua documentação pode ser confusa, especialmente se você é novo no " +"packaging. Por exemplo, o PDM não fornece um fluxo de trabalho inicial " +"de ponta a ponta na sua documentação." #: ../../package-structure-code/python-package-build-tools.md:286 msgid "" @@ -3463,6 +4625,11 @@ msgid "" "longer have time to work on the project, it leaves users with a gap in " "support. Hatch and Flit also have single maintainer teams." msgstr "" +"O PDM também tem apenas um mantenedor atualmente. Consideramos as equipes " +"com um único mantenedor como um risco potencial. Se o mantenedor perceber " +"que não tem mais tempo para trabalhar no projeto, isso deixa os usuários " +"com uma lacuna no suporte. O Hatch e o Flit também têm equipes com um " +"único mantenedor." #: ../../package-structure-code/python-package-build-tools.md:291 msgid "" @@ -3471,6 +4638,10 @@ msgid "" " README file for this directly provides you with an overview of what the " "PDM command line interface looks like when you use it." msgstr "" +"[Você pode ver um exemplo de um pacote que usa o PDM " +"aqui](https://github.com/pyOpenSci/examplePy/tree/main/example4_pdm). O " +"arquivo README disso fornece diretamente uma visão geral de como é a " +"interface de linha de comando do PDM quando você a usa." #: ../../package-structure-code/python-package-build-tools.md:296 msgid "" @@ -3481,62 +4652,75 @@ msgid "" "features. And if your package structure is already created. More on that " "below." msgstr "" +"[O Flit é uma ferramenta de packaging simples e " +"enxuta](https://flit.pypa.io/en/stable/) que dá suporte aos padrões " +"modernos de packaging Python. O Flit é uma ótima escolha se você está " +"construindo um pacote básico para usar em um fluxo de trabalho local que " +"não requer nenhum recurso avançado. E se a estrutura do seu pacote já " +"estiver criada. Mais sobre isso abaixo." #: ../../package-structure-code/python-package-build-tools.md:300 msgid "Flit features" -msgstr "" +msgstr "Recursos do Flit" #: ../../package-structure-code/python-package-build-tools.md:307 #: ../../package-structure-code/python-package-build-tools.md:353 #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Publish to PyPI and test PyPI" -msgstr "" +msgstr "Publicar no PyPI e no test PyPI" #: ../../package-structure-code/python-package-build-tools.md:307 msgid "Flit supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "O Flit dá suporte à publicação tanto no test PyPI quanto no PyPI" #: ../../package-structure-code/python-package-build-tools.md:307 msgid "Helps you add metadata to your **pyproject.toml** file" -msgstr "" +msgstr "Ajuda você a adicionar metadados ao seu arquivo **pyproject.toml**" #: ../../package-structure-code/python-package-build-tools.md:307 msgid "" "Flit does support adding metadata to your **pyproject.toml** file " "following modern packaging standards." msgstr "" +"O Flit dá suporte à adição de metadados ao seu arquivo **pyproject.toml** " +"seguindo os padrões modernos de packaging." #: ../../package-structure-code/python-package-build-tools.md:307 msgid "" "Flit supports current packaging standards for adding metadata to the " "**pyproject.toml** file." msgstr "" +"O Flit dá suporte aos padrões atuais de packaging para adicionar " +"metadados ao arquivo **pyproject.toml**." #: ../../package-structure-code/python-package-build-tools.md:307 msgid "Flit supports installing your package in editable mode.**" -msgstr "" +msgstr "O Flit dá suporte à instalação do seu pacote em modo editável.**" #: ../../package-structure-code/python-package-build-tools.md:307 msgid "Flit can be used to build your packages sdist and wheel distributions." -msgstr "" +msgstr "O Flit pode ser usado para construir as distribuições sdist e wheel do seu pacote." #: ../../package-structure-code/python-package-build-tools.md:314 msgid "" "NOTE: _If you are using the most current version of pip, it supports both" " a symlink approach `flit install -s` and `python -m pip install -e .`_" msgstr "" +"NOTA: _Se você está usando a versão mais atual do pip, ele dá suporte " +"tanto à abordagem de symlink `flit install -s` quanto a `python -m pip " +"install -e .`_" #: ../../package-structure-code/python-package-build-tools.md:316 msgid "Learn more about flit" -msgstr "" +msgstr "Saiba mais sobre o flit" #: ../../package-structure-code/python-package-build-tools.md:318 msgid "[Why use flit?](https://flit.pypa.io/en/stable/rationale.html)" -msgstr "" +msgstr "[Por que usar o flit?](https://flit.pypa.io/en/stable/rationale.html)" #: ../../package-structure-code/python-package-build-tools.md:321 msgid "Why you might not want to use Flit" -msgstr "" +msgstr "Por que você pode não querer usar o Flit" #: ../../package-structure-code/python-package-build-tools.md:323 msgid "" @@ -3544,30 +4728,37 @@ msgid "" " a beginner you may want to select Hatch or PDM which will offer you more" " support in common operations." msgstr "" +"Como o Flit é simples e sem complicações, ele é melhor para builds " +"básicas e rápidas. Se você é iniciante, talvez prefira escolher o Hatch ou " +"o PDM, que lhe oferecerão mais suporte em operações comuns." #: ../../package-structure-code/python-package-build-tools.md:327 msgid "You may NOT want to use flit if:" -msgstr "" +msgstr "Você pode NÃO querer usar o flit se:" #: ../../package-structure-code/python-package-build-tools.md:329 msgid "" "You want to setup more advanced version tracking and management (using " "version control for version bumping)" msgstr "" +"Você quer configurar um rastreamento e gerenciamento de versões mais " +"avançado (usando controle de versão para o incremento de versão)" #: ../../package-structure-code/python-package-build-tools.md:330 msgid "" "You want a tool that handles dependency versions (use PDM or Poetry " "instead)" msgstr "" +"Você quer uma ferramenta que lide com versões de dependências (use o PDM " +"ou o Poetry no lugar)" #: ../../package-structure-code/python-package-build-tools.md:331 msgid "You have a project that is not pure Python (Use Hatch, PDM or setuptools)" -msgstr "" +msgstr "Você tem um projeto que não é de Python puro (Use Hatch, PDM ou setuptools)" #: ../../package-structure-code/python-package-build-tools.md:332 msgid "You want environment management (use PDM, Hatch or Poetry)" -msgstr "" +msgstr "Você quer gerenciamento de ambientes (use PDM, Hatch ou Poetry)" #: ../../package-structure-code/python-package-build-tools.md:338 msgid "" @@ -3580,16 +4771,27 @@ msgid "" "locally. This means that you could potentially drop a tool like **Make** " "or **Nox** from your workflow and use Hatch instead." msgstr "" +"O [**Hatch**](https://hatch.pypa.io/latest/), assim como o Poetry e o " +"PDM, fornece uma interface de linha de comando unificada. Para diferenciar " +"o Hatch do Poetry e do PDM, ele também fornece um gerenciador de ambientes " +"para testes que facilitará a execução de testes localmente em diferentes " +"versões do Python. Ele também oferece um recurso semelhante ao nox / " +"makefile que permite criar fluxos de trabalho de build personalizados, " +"como construir a sua documentação localmente. Isso significa que você " +"poderia, potencialmente, eliminar uma ferramenta como o **Make** ou o " +"**Nox** do seu fluxo de trabalho e usar o Hatch no lugar." #: ../../package-structure-code/python-package-build-tools.md:345 msgid "Hatch features" -msgstr "" +msgstr "Recursos do Hatch" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" "Hatch is used with the backend Hatchling by default, but allows you to " "use another backend by switching the declaration in pyproject.toml." msgstr "" +"O Hatch é usado com o backend Hatchling por padrão, mas permite que você " +"use outro backend trocando a declaração no pyproject.toml." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3597,6 +4799,9 @@ msgid "" "feature to support dependencies management may be added in a future " "release." msgstr "" +"Atualmente, você precisa adicionar as dependências manualmente com o " +"Hatch. No entanto, um recurso para dar suporte ao gerenciamento de " +"dependências pode ser adicionado em uma versão futura." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3605,10 +4810,14 @@ msgid "" "such as hatch-conda for conda support](https://github.com/OldGrumpyViking" "/hatch-conda)." msgstr "" +"O Hatch dá suporte a ambientes virtuais Python. Se você quiser usar outros " +"tipos de ambientes, como o Conda, será necessário [instalar um plugin como " +"o hatch-conda para suporte ao conda](https://github.com/OldGrumpyViking" +"/hatch-conda)." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "Hatch supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "O Hatch dá suporte à publicação tanto no test PyPI quanto no PyPI" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3616,18 +4825,25 @@ msgid "" "support versioning using git tags. The workflow with `hatch_vcs` is the " "same as that with `setuptools_scm`." msgstr "" +"O Hatch oferece o `hatch_vcs`, que é um plugin que usa o setuptools_scm " +"para dar suporte ao versionamento usando tags do git. O fluxo de trabalho " +"com o `hatch_vcs` é o mesmo do `setuptools_scm`." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" "Hatch supports you bumping the version of your package using standard " "semantic version terms patch; minor; major" msgstr "" +"O Hatch dá suporte ao incremento da versão do seu pacote usando os termos " +"padrão de versionamento semântico patch; minor; major" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" "Hatch supports current packaging standards for adding metadata to the " "**pyproject.toml** file." msgstr "" +"O Hatch dá suporte aos padrões atuais de packaging para adicionar " +"metadados ao arquivo **pyproject.toml**." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3637,14 +4853,19 @@ msgid "" "installs](https://hatch.pypa.io/latest/config/build/#dev-mode) but refers" " to pip in its documentation." msgstr "" +"Por padrão, o Hatch instalará o seu pacote em qualquer um dos seus " +"ambientes em modo editável. Você pode instalar o seu pacote em modo " +"editável manualmente usando `python -m pip install -e .` O Hatch menciona " +"[instalações editáveis](https://hatch.pypa.io/latest/config/build/#dev-mode), " +"mas faz referência ao pip na sua documentação." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "Hatch will build the sdist and wheel distributions" -msgstr "" +msgstr "O Hatch construirá as distribuições sdist e wheel" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "✨Matrix environment creation to support testing across Python versions✨" -msgstr "" +msgstr "✨Criação de ambientes em matriz para dar suporte a testes em diferentes versões do Python✨" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3653,12 +4874,18 @@ msgid "" "package locally across Python versions (instead of using a tool such as " "tox)." msgstr "" +"A criação de ambientes em matriz é um recurso exclusivo do Hatch no " +"ecossistema de packaging. Esse recurso é útil se você quiser testar o " +"seu pacote localmente em diferentes versões do Python (em vez de usar uma " +"ferramenta como o tox)." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" "✨[Nox / MAKEFILE like " "functionality](https://hatch.pypa.io/latest/environment/#selection)✨" msgstr "" +"✨[Funcionalidade semelhante ao Nox / " +"MAKEFILE](https://hatch.pypa.io/latest/environment/#selection)✨" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3667,10 +4894,15 @@ msgid "" "like serve docs locally and clean your package build directory. This " "means you may have one less tool in your build workflow." msgstr "" +"Esse recurso também é exclusivo do Hatch. Essa funcionalidade permite que " +"você crie fluxos de trabalho na configuração do **pyproject.toml** para " +"fazer coisas como servir a documentação localmente e limpar o diretório de " +"build do seu pacote. Isso significa que você pode ter uma ferramenta a " +"menos no seu fluxo de trabalho de build." #: ../../package-structure-code/python-package-build-tools.md:353 msgid "✨A flexible build backend: **hatchling**✨" -msgstr "" +msgstr "✨Um backend de build flexível: **hatchling**✨" #: ../../package-structure-code/python-package-build-tools.md:353 msgid "" @@ -3678,6 +4910,9 @@ msgid "" "developers to easily build plugins to support custom build steps when " "packaging." msgstr "" +"**O backend de build hatchling, oferecido pelo mantenedor do Hatch, " +"permite que os desenvolvedores criem plugins com facilidade para dar " +"suporte a etapas de build personalizadas durante o packaging." #: ../../package-structure-code/python-package-build-tools.md:367 msgid "" @@ -3686,36 +4921,46 @@ msgid "" "flexibility. The Hatch build hook approach is also comparable with the " "features offered by PDM._" msgstr "" +"_Há alguma controvérsia sobre essa abordagem impor aos mantenedores o ônus " +"de criar um sistema de build personalizado. Mas outros apreciam a " +"flexibilidade. A abordagem de build hook do Hatch também é comparável aos " +"recursos oferecidos pelo PDM._" #: ../../package-structure-code/python-package-build-tools.md:369 msgid "Why you might not want to use Hatch" -msgstr "" +msgstr "Por que você pode não querer usar o Hatch" #: ../../package-structure-code/python-package-build-tools.md:371 msgid "" "There are a few features that hatch is missing that may be important for " "some. These include:" msgstr "" +"Há alguns recursos que faltam no hatch e que podem ser importantes para " +"alguns. Eles incluem:" #: ../../package-structure-code/python-package-build-tools.md:374 msgid "" "Hatch doesn't support adding dependencies. You will have to add them " "manually." msgstr "" +"O Hatch não dá suporte à adição de dependências. Você terá que adicioná-las " +"manualmente." #: ../../package-structure-code/python-package-build-tools.md:375 msgid "Hatch won't by default recognize Conda environments without a plugin." -msgstr "" +msgstr "Por padrão, o Hatch não reconhecerá ambientes Conda sem um plugin." #: ../../package-structure-code/python-package-build-tools.md:376 msgid "" "Similar to PDM, Hatch's documentation can difficult to work through, " "particularly if you are just getting started with creating a package." msgstr "" +"Assim como o PDM, a documentação do Hatch pode ser difícil de acompanhar, " +"especialmente se você está apenas começando a criar um pacote." #: ../../package-structure-code/python-package-build-tools.md:377 msgid "Hatch, similar to PDM and Flit currently only has one maintainer." -msgstr "" +msgstr O Hatch, assim como o PDM e o Flit, atualmente tem apenas um mantenedor." #: ../../package-structure-code/python-package-build-tools.md:382 msgid "" @@ -3724,6 +4969,10 @@ msgid "" "PyPA survey). Poetry is user-friendly and has clean and easy-to-read " "documentation." msgstr "" +"[O Poetry é uma ferramenta de build completa.](https://python-poetry.org/) " +"Ele também é a segunda ferramenta de packaging de front-end mais " +"popular (com base na pesquisa da PyPA). O Poetry é amigável e tem uma " +"documentação limpa e fácil de ler." #: ../../package-structure-code/python-package-build-tools.md:387 msgid "" @@ -3731,18 +4980,21 @@ msgid "" " support is currently undocumented. Thus, we don't recommend using Poetry" " for more complex builds." msgstr "" +"Embora alguns tenham usado o Poetry para builds Python com extensões em " +"C/C++, esse suporte atualmente não é documentado. Por isso, não " +"recomendamos usar o Poetry para builds mais complexas." #: ../../package-structure-code/python-package-build-tools.md:391 msgid "Poetry features" -msgstr "" +msgstr "Recursos do Poetry" #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Poetry helps you add dependencies to your `pyproject.toml` metadata." -msgstr "" +msgstr "O Poetry ajuda você a adicionar dependências aos metadados do seu `pyproject.toml`." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Dependency specification" -msgstr "" +msgstr "Especificação de dependências" #: ../../package-structure-code/python-package-build-tools.md:398 msgid "" @@ -3752,6 +5004,11 @@ msgid "" "override the default setting when adding dependencies). Read below for " "more." msgstr "" +"O Poetry permite que você seja específico quanto à versão das dependências " +"que você adiciona ao arquivo pyproject.toml do seu pacote. No entanto, sua " +"abordagem padrão de limite superior pode ser problemática para alguns " +"pacotes (sugerimos que você sobrescreva a configuração padrão ao adicionar " +"dependências). Leia abaixo para saber mais." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "" @@ -3761,20 +5018,26 @@ msgid "" "options](https://python-poetry.org/docs/basic-usage/#using-your-virtual-" "environment)." msgstr "" +"O Poetry permite que você use o seu ambiente embutido ou selecione o tipo " +"de ambiente que deseja usar para gerenciar o seu pacote. [Leia mais sobre " +"as suas opções de gerenciamento de ambientes embutidas](https://python-" +"poetry.org/docs/basic-usage/#using-your-virtual-environment)." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Lock files" -msgstr "" +msgstr "Arquivos de lock" #: ../../package-structure-code/python-package-build-tools.md:398 msgid "" "Poetry creates a **poetry.lock** file that you can use if you need a lock" " file for your build." msgstr "" +"O Poetry cria um arquivo **poetry.lock** que você pode usar caso precise de " +"um arquivo de lock para a sua build." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Poetry supports publishing to both test PyPI and PyPI" -msgstr "" +msgstr "O Poetry dá suporte à publicação tanto no test PyPI quanto no PyPI" #: ../../package-structure-code/python-package-build-tools.md:398 msgid "" @@ -3782,12 +5045,17 @@ msgid "" "/poetry-dynamic-versioning) supports versioning using git tags with " "Poetry." msgstr "" +"O plugin [Poetry dynamic versioning](https://github.com/mtkennerly" +"/poetry-dynamic-versioning) dá suporte ao versionamento usando tags do git " +"com o Poetry." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "" "Poetry supports you bumping the version of your package using standard " "semantic version terms patch; minor; major" msgstr "" +"O Poetry dá suporte ao incremento da versão do seu pacote usando os termos " +"padrão de versionamento semântico patch; minor; major" #: ../../package-structure-code/python-package-build-tools.md:398 msgid "" @@ -3795,22 +5063,26 @@ msgid "" "standards. However, not all standards are supported, and it also supports" " the legacy Poetry format. Read below for more." msgstr "" +"Desde a versão 2.0, o Poetry dá suporte à maioria dos padrões atuais de " +"metadados de projeto. No entanto, nem todos os padrões são suportados, e " +"ele também dá suporte ao formato legado do Poetry. Leia abaixo para saber " +"mais." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Poetry supports installing your package in editable mode." -msgstr "" +msgstr "O Poetry dá suporte à instalação do seu pacote em modo editável." #: ../../package-structure-code/python-package-build-tools.md:398 msgid "Poetry will build your sdist and wheel distributions using `poetry build`" -msgstr "" +msgstr "O Poetry construirá as suas distribuições sdist e wheel usando `poetry build`" #: ../../package-structure-code/python-package-build-tools.md:413 msgid "Challenges with Poetry" -msgstr "" +msgstr "Desafios com o Poetry" #: ../../package-structure-code/python-package-build-tools.md:415 msgid "Some challenges of Poetry include:" -msgstr "" +msgstr "Alguns desafios do Poetry incluem:" #: ../../package-structure-code/python-package-build-tools.md:417 msgid "" @@ -3822,6 +5094,13 @@ msgid "" "standardised and lets you group your dependencies into several optional " "groups." msgstr "" +"O Poetry tem o seu próprio conceito de dependências agrupadas (`poetry add " +"--group=GROUP_NAME DEPENDENCY`). As dependências adicionadas como " +"dependências agrupadas não são opcionais e não há um padrão Python para " +"esse tipo de dependência. Isso não deve ser confundido com as dependências " +"\"opcionais\" (`poetry add --optional=GROUP_NAME DEPENDENCY`), que são " +"padronizadas e permitem que você agrupe as suas dependências em vários " +"grupos opcionais." #: ../../package-structure-code/python-package-build-tools.md:418 msgid "" @@ -3830,6 +5109,10 @@ msgid "" "does not yet follow the standardised format for specifying such " "dependencies." msgstr "" +"Embora o Poetry dê suporte a dependências de \"desenvolvimento\" (ou seja, " +"dependências que você usa para o desenvolvimento, mas não para executar o " +"código, como o `pytest`), o Poetry ainda não segue o formato padronizado " +"para especificar tais dependências." #: ../../package-structure-code/python-package-build-tools.md:419 msgid "" @@ -3839,6 +5122,12 @@ msgid "" "use `poetry add` as follows: `poetry add \"requests>=2.1\"` See breakout " "below for more discussion on issues surrounding upper-bounds pinning." msgstr "" +"O Poetry, por padrão, fixa as dependências usando um limite \"superior\" " +"(que é especificado com o símbolo `^` no formato legado). No entanto, esse " +"comportamento pode ser sobrescrito especificando a dependência quando você " +"usa `poetry add` da seguinte forma: `poetry add \"requests>=2.1\"` Veja o " +"destaque abaixo para mais discussões sobre as questões em torno da fixação " +"com limites superiores." #: ../../package-structure-code/python-package-build-tools.md:421 msgid "" @@ -3848,10 +5137,16 @@ msgid "" "builds. If you use Poetry, we strongly suggest that you override the " "default upper bound dependency option." msgstr "" +"O Poetry é uma ferramenta de packaging popular e introduziu muitos " +"recursos bastante úteis. No entanto, se você decidir usá-lo, tenha cuidado " +"ao adicionar dependências, pois a abordagem de fixação do Poetry pode ser " +"problemática para muitas builds. Se você usar o Poetry, sugerimos " +"fortemente que você sobrescreva a opção padrão de dependências com limite " +"superior." #: ../../package-structure-code/python-package-build-tools.md:426 msgid "Challenges with Poetry dependency pinning" -msgstr "" +msgstr "Desafios com a fixação de dependências do Poetry" #: ../../package-structure-code/python-package-build-tools.md:429 msgid "" @@ -3862,6 +5157,13 @@ msgid "" "never bump the dependency to 2.0 even if there is a new major version of " "the package. Poetry will instead bump up to 1.9.x." msgstr "" +"Por padrão, o Poetry fixa as dependências usando `^`. Esse símbolo `^` " +"significa que há um \"limite superior\" para a dependência. Assim, o " +"poetry não incrementará a versão de uma dependência para uma nova versão " +"major. Portanto, se o seu pacote usa uma dependência que está na versão " +"1.2.3, o Poetry nunca incrementará a dependência para 2.0, mesmo que haja " +"uma nova versão major do pacote. Em vez disso, o Poetry incrementará até " +"1.9.x." #: ../../package-structure-code/python-package-build-tools.md:435 msgid "" @@ -3872,6 +5174,13 @@ msgid "" "problematic by many of our core scientific " "packages.](https://iscinumpy.dev/post/bound-version-constraints/)" msgstr "" +"O Poetry faz isso porque adere ao versionamento semântico estrito, que " +"afirma que um incremento de versão major (de 1.0 para 2.0, por exemplo) " +"significa que há mudanças que quebram a compatibilidade na ferramenta. No " +"entanto, nem todas as ferramentas seguem o versionamento semântico " +"estrito. [Essa abordagem foi considerada problemática por muitos dos " +"nossos principais pacotes " +"científicos.](https://iscinumpy.dev/post/bound-version-constraints/)" #: ../../package-structure-code/python-package-build-tools.md:440 msgid "" @@ -3879,10 +5188,14 @@ msgid "" "instance, some tools use [calver](https://calver.org/) which creates new " "versions based on the date." msgstr "" +"Essa abordagem também não dará suporte a outras formas de versionar " +"ferramentas; por exemplo, algumas ferramentas usam o " +"[calver](https://calver.org/), que cria novas versões com base na data." #: ../../package-structure-code/python-package-build-tools.md:445 msgid "Using Setuptools back-end for Python packaging with Build front-end" -msgstr "" +msgstr "Usando o back-end Setuptools para packaging Python com o front-end " +"Build" #: ../../package-structure-code/python-package-build-tools.md:447 msgid "" @@ -3894,6 +5207,14 @@ msgid "" " Hatch offer. As such you will need to use other tools such as **build** " "to create your package distributions and **twine** to publish to PyPI." msgstr "" +"O [Setuptools](https://setuptools.pypa.io/en/latest/) é a ferramenta de " +"build de packaging Python mais madura, com [desenvolvimento que remonta " +"a 2009 e antes](https://setuptools.pypa.io/en/latest/history.html#). O " +"Setuptools também tem o maior número de usuários na comunidade (de acordo " +"com a pesquisa da PyPA). O Setuptools não oferece um front-end de usuário " +"como o Flit, o Poetry e o Hatch oferecem. Por isso, você precisará usar " +"outras ferramentas, como o **build** para criar as distribuições do seu " +"pacote e o **twine** para publicar no PyPI." #: ../../package-structure-code/python-package-build-tools.md:455 msgid "" @@ -3901,50 +5222,57 @@ msgid "" "maintainers to consider using a more modern tool for packaging such as " "Poetry, Hatch or PDM." msgstr "" +"Embora o setuptools seja a ferramenta mais comumente usada, incentivamos os " +"mantenedores de pacotes a considerarem usar uma ferramenta mais moderna " +"para packaging, como o Poetry, o Hatch ou o PDM." #: ../../package-structure-code/python-package-build-tools.md:458 msgid "" "We discuss setuptools here because it's commonly found in the ecosystem " "and contributors may benefit from understanding it." msgstr "" +"Discutimos o setuptools aqui porque ele é comumente encontrado no " +"ecossistema e os contribuidores podem se beneficiar de entendê-lo." #: ../../package-structure-code/python-package-build-tools.md:461 msgid "Setuptools features" -msgstr "" +msgstr "Recursos do Setuptools" #: ../../package-structure-code/python-package-build-tools.md:463 msgid "Some of features of setuptools include:" -msgstr "" +msgstr "Alguns dos recursos do setuptools incluem:" #: ../../package-structure-code/python-package-build-tools.md:465 msgid "Fully customizable build workflow" -msgstr "" +msgstr "Fluxo de trabalho de build totalmente personalizável" #: ../../package-structure-code/python-package-build-tools.md:466 msgid "Many scientific Python packages use it." -msgstr "" +msgstr "Muitos pacotes científicos em Python o utilizam." #: ../../package-structure-code/python-package-build-tools.md:467 msgid "" "It offers version control based package versioning using " "**setuptools_scm**" msgstr "" +"Ele oferece versionamento de pacotes baseado em controle de versão usando o " +"**setuptools_scm**" #: ../../package-structure-code/python-package-build-tools.md:468 msgid "It supports modern packaging using **pyproject.toml** for metadata" -msgstr "" +msgstr "Ele dá suporte ao packaging moderno usando o **pyproject.toml** para metadados" #: ../../package-structure-code/python-package-build-tools.md:469 msgid "Supports backwards compatibly for older packaging approaches." -msgstr "" +msgstr "Dá suporte à compatibilidade retroativa com abordagens de packaging mais antigas." #: ../../package-structure-code/python-package-build-tools.md:471 msgid "Challenges using setuptools" -msgstr "" +msgstr "Desafios ao usar o setuptools" #: ../../package-structure-code/python-package-build-tools.md:475 msgid "Setuptools has a few challenges:" -msgstr "" +msgstr "O Setuptools tem alguns desafios:" #: ../../package-structure-code/python-package-build-tools.md:477 msgid "" @@ -3957,6 +5285,14 @@ msgid "" "features such as tab / auto completion when using an IDE like VSCODE or " "pycharm (as long as your version of pip is current!)." msgstr "" +"Por padrão, o Setuptools não dá suporte a recursos interativos como " +"auto / tab completion se você estiver trabalhando em uma IDE como o VSCODE " +"e usando uma instalação editável para desenvolvimento. [Veja as notas aqui " +"sobre o suporte do pylance](https://github.com/microsoft/pylance-" +"release/blob/main/TROUBLESHOOTING.md#editable-install-modules-not-found). " +"Em comparação, ferramentas como flit, hatch e PDM dão suporte a recursos " +"interativos como tab / auto completion ao usar uma IDE como o VSCODE ou o " +"pycharm (desde que a sua versão do pip seja atual!)." #: ../../package-structure-code/python-package-build-tools.md:478 msgid "" @@ -3964,30 +5300,41 @@ msgid "" "range of packages, it is not as flexible in its adoption of modern Python" " packaging standards." msgstr "" +"Como o **setuptools** precisa manter a compatibilidade retroativa com uma " +"variedade de pacotes, ele não é tão flexível na adoção dos padrões modernos " +"de packaging Python." #: ../../package-structure-code/python-package-build-tools.md:481 msgid "" "The above-mentioned backwards compatibility makes for a more complex " "code-base." msgstr "" +"A compatibilidade retroativa mencionada acima resulta em uma base de código " +"mais complexa." #: ../../package-structure-code/python-package-build-tools.md:482 msgid "" "Your experience as a user will be less streamlined and simple using " "setuptools compared to other tools discussed on this page." msgstr "" +"A sua experiência como usuário será menos enxuta e simples usando o " +"setuptools em comparação com as outras ferramentas discutidas nesta página." #: ../../package-structure-code/python-package-build-tools.md:484 msgid "" "There are also some problematic default settings that users should be " "aware of when using setuptools. For instance:" msgstr "" +"Há também algumas configurações padrão problemáticas que os usuários devem " +"conhecer ao usar o setuptools. Por exemplo:" #: ../../package-structure-code/python-package-build-tools.md:487 msgid "" "setuptools will build a project without a name or version if you are not " "using a **pyproject.toml** file to store metadata." msgstr "" +"o setuptools construirá um projeto sem nome ou versão se você não estiver " +"usando um arquivo **pyproject.toml** para armazenar os metadados." #: ../../package-structure-code/python-package-build-tools.md:489 msgid "" @@ -3995,10 +5342,13 @@ msgid "" "if you do not explicitly tell it to exclude files using a **MANIFEST.in**" " file" msgstr "" +"o setuptools também incluirá todos os arquivos do repositório do seu pacote " +"se você não disser explicitamente para excluir arquivos usando um arquivo " +"**MANIFEST.in**" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:1 msgid "Learn about Building a Python Package" -msgstr "" +msgstr "Aprenda sobre como construir um pacote Python" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:8 msgid "" @@ -4008,6 +5358,11 @@ msgid "" "build your package on conda-forge. You do not need to rebuild your " "package to publish to conda-forge." msgstr "" +"Depois que você tiver publicado ambas as distribuições do pacote (a " +"distribuição de código-fonte e a wheel) no PyPI, você pode então publicar " +"no conda-forge. O conda-forge requer uma distribuição de código-fonte no " +"PyPI para construir o seu pacote no conda-forge. Você não precisa " +"reconstruir o seu pacote para publicar no conda-forge." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:11 msgid "" @@ -4018,20 +5373,29 @@ msgid "" "PyPI in order for conda-forge to properly build your package " "automatically." msgstr "" +"Você precisa construir o seu pacote Python para publicá-lo no PyPI (ou em " +"um canal conda). O processo de build organiza o seu código e os metadados " +"em um formato de distribuição que pode ser enviado ao PyPI e, " +"posteriormente, baixado e instalado pelos usuários. NOTA: você precisa " +"publicar um sdist no PyPI para que o conda-forge construa o seu pacote " +"corretamente de forma automática." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:14 msgid "What is building a Python package?" -msgstr "" +msgstr "O que é construir um pacote Python?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:16 msgid "" "To [publish your Python package](publish-python-package-pypi-conda) and " "make it easy for anyone to install, you first need to build it." msgstr "" +"Para [publicar o seu pacote Python](publish-python-package-pypi-conda) e " +"facilitar a instalação para qualquer pessoa, você primeiro precisa " +"construí-lo." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:18 msgid "But, what does it mean to build a Python package?" -msgstr "" +msgstr "Mas o que significa construir um pacote Python?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:20 msgid "" @@ -4041,6 +5405,11 @@ msgid "" "and metadata about the package, in the format required by the Python " "Package Index, so that it can be installed by tools like pip." msgstr "" +"[Como mostrado na figura acima](#pypi-conda-channels), quando você constrói " +"o seu pacote Python, você converte os arquivos de código-fonte em algo " +"chamado de pacote de distribuição. Um pacote de distribuição contém o seu " +"código-fonte e metadados sobre o pacote, no formato exigido pelo Python " +"Package Index, para que ele possa ser instalado por ferramentas como o pip." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:23 msgid "" @@ -4049,6 +5418,10 @@ msgid "" " Authority](https://www.pypa.io/en/latest/) and refer to the product of " "the build step as a **distribution package**." msgstr "" +"O termo pacote costumava significar muitas coisas diferentes em Python e em " +"outras linguagens. Nesta página, adotamos a convenção da [Python Packaging " +"Authority](https://www.pypa.io/en/latest/) e nos referimos ao produto da " +"etapa de build como um **pacote de distribuição**." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:27 msgid "" @@ -4056,10 +5429,13 @@ msgid "" " and metadata into a format that both pip and PyPI can use, is called a " "build step." msgstr "" +"Esse processo de organizar e formatar o seu código, documentação, testes e " +"metadados em um formato que tanto o pip quanto o PyPI possam usar é chamado " +"de etapa de build." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:31 msgid "Project metadata and PyPI" -msgstr "" +msgstr "Metadados do projeto e o PyPI" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:33 msgid "" @@ -4068,6 +5444,10 @@ msgid "" "](pyproject-toml-python-package-metadata). This metadata is used for " "several purposes:" msgstr "" +"Os metadados que tanto as ferramentas de build quanto o PyPI usam para " +"descrever e entender o seu pacote geralmente são armazenados em um [arquivo " +"pyproject.toml](pyproject-toml-python-package-metadata). Esses metadados " +"são usados para várias finalidades:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:35 msgid "" @@ -4076,6 +5456,10 @@ msgid "" "poetry, PDM or Hatch) understand how to build your package. Information " "it provides to your build tool includes:" msgstr "" +"Eles ajudam qualquer ferramenta que você usar para construir o seu pacote " +"(pip, [o Build da pypa](https://pypi.org/project/build/) ou uma ferramenta " +"de ponta a ponta como poetry, PDM ou Hatch) a entender como construir o seu " +"pacote. As informações que eles fornecem à sua ferramenta de build incluem:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:37 msgid "" @@ -4083,12 +5467,17 @@ msgid "" "[build backend tool](build_backends) you wish to use for creating your " "sdist and wheel distributions." msgstr "" +"A tabela `[build-system]` no seu arquivo pyproject.toml informa ao pip qual " +"[ferramenta de build backend](build_backends) você deseja usar para criar " +"as suas distribuições sdist e wheel." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:45 msgid "" "And the dependencies section of your project table tells the build tool " "and PyPI what dependencies your project requires." msgstr "" +"E a seção de dependências da sua tabela project informa à ferramenta de " +"build e ao PyPI quais dependências o seu projeto requer." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:54 msgid "" @@ -4096,6 +5485,10 @@ msgid "" " you publish on PyPI), it also creates a METADATA file which PyPI can " "read and use to help users find your package. For example:" msgstr "" +"Quando a ferramenta de build cria o arquivo de distribuição do seu pacote " +"(o arquivo que você publica no PyPI), ela também cria um arquivo METADATA " +"que o PyPI pode ler e usar para ajudar os usuários a encontrar o seu " +"pacote. Por exemplo:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:56 msgid "" @@ -4104,10 +5497,14 @@ msgid "" "filter for packages that address different topics or that support " "specific versions of python." msgstr "" +"A seção `classifiers = ` da sua tabela `[project]` no arquivo " +"pyproject.toml fornece informações que os usuários no PyPI podem usar para " +"filtrar pacotes que abordam diferentes tópicos ou que dão suporte a versões " +"específicas do python." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:72 msgid "What happened to setup.py and setup.cfg for metadata?" -msgstr "" +msgstr "O que aconteceu com o setup.py e o setup.cfg para metadados?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:75 msgid "" @@ -4116,10 +5513,14 @@ msgid "" "metadata is to use a pyproject.toml file. [Learn more about the " "pyproject.toml file here.](pyproject-toml-python-package-metadata)" msgstr "" +"Os metadados do projeto costumavam ser armazenados em um arquivo setup.py " +"ou em um arquivo setup.cfg. A prática recomendada atualmente para armazenar " +"os metadados do pacote é usar um arquivo pyproject.toml. [Saiba mais sobre " +"o arquivo pyproject.toml aqui.](pyproject-toml-python-package-metadata)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:78 msgid "An example - xclim" -msgstr "" +msgstr "Um exemplo - xclim" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:80 msgid "" @@ -4135,6 +5536,18 @@ msgid "" "distribution file that allows PyPI to read the metadata and print it out " "on their website." msgstr "" +"Quando você publica no PyPI, vai notar que cada pacote tem metadados " +"listados. Vamos dar uma olhada no [xclim](https://pypi.org/project/xclim/), " +"um dos nossos [pacotes do pyOpenSci](https://www.pyopensci.org/python-" +"packages.html). Note que na página inicial do PyPI você vê alguns " +"metadados sobre o pacote, incluindo python, informações do mantenedor e " +"mais. O PyPI consegue preencher esses metadados porque eles foram " +"definidos usando a sintaxe e os classifiers corretos pelos mantenedores do " +"Xclim, [arquivo pyproject.toml]" +"(https://github.com/Ouranosinc/xclim/blob/master/pyproject.toml). Esses " +"metadados, quando o pacote xclim é construído, são traduzidos em um arquivo " +"de distribuição que permite ao PyPI ler os metadados e exibi-los no site " +"deles." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:93 msgid "" @@ -4147,6 +5560,15 @@ msgid "" "connect to conda-forge for an automated build that sends distributions " "from PyPI to conda-forge." msgstr "" +"Gráfico mostrando o fluxo de trabalho de packaging em alto nível. À " +"esquerda você vê um gráfico com código, metadados e testes nele. Todos " +"esses itens entram no seu pacote. Documentação e dados estão abaixo dessa " +"caixa porque normalmente não são publicados na distribuição wheel do seu " +"packaging. Uma seta para a direita leva você a uma caixa de construir " +"arquivos de distribuição. Essa caixa leva você a publicar no TestPyPI ou no " +"PyPI de verdade. A partir do PyPI, você pode então se conectar ao conda-" +"forge para uma build automatizada que envia as distribuições do PyPI para o " +"conda-forge." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:95 msgid "" @@ -4157,6 +5579,12 @@ msgid "" "PyPI in order for conda-forge to properly build your package " "automatically." msgstr "" +"Você precisa construir o seu pacote Python para publicá-lo no PyPI (ou no " +"Conda). O processo de build organiza o seu código e os metadados em um " +"formato de distribuição que pode ser enviado ao PyPI e, posteriormente, " +"baixado e instalado pelos usuários. NOTA: você precisa publicar um sdist no " +"PyPI para que o conda-forge construa o seu pacote corretamente de forma " +"automática." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:100 msgid "" @@ -4165,10 +5593,14 @@ msgid "" "keywords associated with the package and the base python version it " "requires which is 3.8." msgstr "" +"Esta captura de tela mostra os metadados no PyPI para o pacote xclim. Nela " +"você pode ver o nome da licença, os nomes do autor e do mantenedor, as " +"palavras-chave associadas ao pacote e a versão base do python que ele " +"requer, que é a 3.8." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:102 msgid "PyPI screenshot showing metadata for the xclim package." -msgstr "" +msgstr "Captura de tela do PyPI mostrando os metadados para o pacote xclim." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:109 msgid "" @@ -4176,6 +5608,9 @@ msgid "" "xclim there are three maintainers listed with their profile pictures and " "github user names to the right." msgstr "" +"Aqui você vê os metadados do mantenedor como são exibidos no PyPI. Para o " +"xclim, há três mantenedores listados com suas fotos de perfil e nomes de " +"usuário do github à direita." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:111 msgid "" @@ -4184,10 +5619,14 @@ msgid "" "and then processed by your build tool and stored in your packages sdist " "and wheel distributions." msgstr "" +"Nomes dos mantenedores e nomes de usuário do GitHub para o pacote xclim " +"como são exibidos no PyPI. Essa informação é registrada no seu " +"pyproject.toml e então processada pela sua ferramenta de build e armazenada " +"nas distribuições sdist e wheel do seu pacote." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:114 msgid "How to create the distribution format that PyPI and Pip expects?" -msgstr "" +msgstr "Como criar o formato de distribuição que o PyPI e o Pip esperam?" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:116 msgid "" @@ -4197,6 +5636,11 @@ msgid "" "there are packages and tools that help you create package build " "distribution files." msgstr "" +"Em teoria, você poderia criar os seus próprios scripts para organizar o seu " +"código da forma que o PyPI deseja. No entanto, assim como há pacotes que " +"lidam com estruturas conhecidas, como o Pandas para data frames e o Numpy " +"para arrays, há pacotes e ferramentas que ajudam você a criar os arquivos " +"de distribuição de build do pacote." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:120 msgid "" @@ -4206,6 +5650,12 @@ msgid "" "your sdist and wheel. Whereas tools like Hatch, PDM, Poetry and flit help" " with other parts of the packaging process." msgstr "" +"Há um conjunto de ferramentas de packaging que podem ajudar você com " +"todo o processo de packaging ou apenas com uma etapa do processo. Por " +"exemplo, o setuptools é um back-end de build comumente usado que pode ser " +"utilizado para criar o seu sdist e a sua wheel. Enquanto ferramentas como " +"Hatch, PDM, Poetry e flit ajudam com outras partes do processo de " +"packaging." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:126 msgid "" @@ -4214,6 +5664,11 @@ msgid "" "output (with minor differences that most users may not care about). Learn" " more about those tools on this page." msgstr "" +"Embora isso possa causar alguma confusão e complexidade no ecossistema de " +"packaging - na maioria das vezes, cada ferramenta fornece a mesma saída " +"de distribuição (com pequenas diferenças com as quais a maioria dos " +"usuários pode não se importar). Saiba mais sobre essas ferramentas nesta " +"página." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:132 msgid "" @@ -4221,6 +5676,9 @@ msgid "" "you to publish: sdist and wheel. You will learn about their structure and" " what files belong in each." msgstr "" +"Abaixo, você aprenderá sobre os dois arquivos de distribuição que o PyPI " +"espera que você publique: sdist e wheel. Você aprenderá sobre a estrutura " +"deles e quais arquivos pertencem a cada um." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:135 msgid "" @@ -4230,10 +5688,16 @@ msgid "" "wheel (.whl) contains the built / compiled files that can be directly " "installed onto anyones' computer." msgstr "" +"Há dois arquivos de distribuição principais que você precisa criar para " +"publicar o seu pacote Python no PyPI: a distribuição de código-fonte " +"(frequentemente chamada de sdist) e a wheel. O sdist contém o código-fonte " +"bruto do seu pacote. A wheel (.whl) contém os arquivos construídos / " +"compilados que podem ser instalados diretamente no computador de qualquer " +"pessoa." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:141 msgid "Learn more about both distributions below." -msgstr "" +msgstr "Saiba mais sobre ambas as distribuições abaixo." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:144 msgid "" @@ -4243,6 +5707,11 @@ msgid "" "languages or is more complex in its build, the two distributions will be " "very different." msgstr "" +"Se o seu pacote é um pacote Python puro sem etapas adicionais de build / " +"compilação, então as distribuições sdist e wheel terão conteúdo " +"semelhante. No entanto, se o seu pacote tem extensões em outras linguagens " +"ou é mais complexo na sua build, as duas distribuições serão muito " +"diferentes." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:149 msgid "" @@ -4251,10 +5720,14 @@ msgid "" "here.](https://docs.conda.io/projects/conda-build/en/latest/user-" "guide/tutorials/index.html)" msgstr "" +"Observe também que não estamos discutindo fluxos de trabalho de build do " +"conda nesta seção. [Você pode aprender mais sobre builds do conda " +"aqui.](https://docs.conda.io/projects/conda-build/en/latest/user-" +"guide/tutorials/index.html)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:154 msgid "What is a source distribution (sdist)" -msgstr "" +msgstr "O que é uma distribuição de código-fonte (sdist)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:156 msgid "" @@ -4262,6 +5735,10 @@ msgid "" "These are the \"raw / as-is\" files that you store on GitHub or whatever " "platform you use to manage your code." msgstr "" +"**Arquivos de código-fonte** são os arquivos não construídos necessários " +"para construir o seu pacote. Estes são os arquivos \"brutos / como estão\" " +"que você armazena no GitHub ou em qualquer plataforma que você usa para " +"gerenciar o seu código." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:160 msgid "" @@ -4273,6 +5750,14 @@ msgid "" "everything required to build a wheel (except for project dependencies) " "without network access." msgstr "" +"As Distribuições de Código-Fonte (**S** + **Dist**) são chamadas de sdist. " +"Como o nome indica, um SDIST contém o código-fonte; ele não foi construído " +"nem compilado de forma alguma. Assim, quando um usuário instala a sua " +"distribuição de código-fonte usando o pip, o pip precisa executar uma etapa " +"de build primeiro. Por esse motivo, você poderia definir uma distribuição " +"de código-fonte como um arquivo compactado que contém tudo o que é " +"necessário para construir uma wheel (exceto as dependências do projeto) sem " +"acesso à rede." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:164 msgid "" @@ -4280,14 +5765,18 @@ msgid "" "\"tarball\"). Thus, when a user installs your source distribution using " "pip, pip needs to run a build step first." msgstr "" +"O sdist normalmente é armazenado como um arquivo `.tar.gz` (frequentemente " +"chamado de \"tarball\"). Assim, quando um usuário instala a sua " +"distribuição de código-fonte usando o pip, o pip precisa executar uma etapa " +"de build primeiro." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:166 msgid "Below is an example sdist for the stravalib Python package:" -msgstr "" +msgstr "Abaixo está um exemplo de sdist para o pacote Python stravalib:" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:218 msgid "GitHub archive vs sdist" -msgstr "" +msgstr "Arquivo do GitHub vs sdist" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:220 msgid "" @@ -4298,10 +5787,16 @@ msgid "" "`setuptools_scm` or `hatch_vcs` the sdist may also contain a file that " "stores the version." msgstr "" +"Quando você faz um release no GitHub, ele cria um `git archive` que contém " +"todos os arquivos do seu repositório do GitHub. Embora esses arquivos sejam " +"semelhantes a um sdist, esses dois arquivos não são iguais. O sdist contém " +"alguns outros itens, incluindo um diretório de metadados e, se você usar o " +"`setuptools_scm` ou o `hatch_vcs`, o sdist também pode conter um arquivo " +"que armazena a versão." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:228 msgid "What is a Python wheel (whl):" -msgstr "" +msgstr "O que é uma wheel Python (whl):" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:230 msgid "" @@ -4312,6 +5807,12 @@ msgid "" "may be included in source distributions are not included in wheels " "because it is a built distribution." msgstr "" +"Um arquivo wheel é um arquivo em formato ZIP cujo nome segue um formato " +"específico (abaixo) e tem a extensão `.whl`. O arquivo `.whl` contém um " +"conjunto específico de arquivos, incluindo metadados gerados a partir do " +"arquivo pyproject.toml do seu projeto. O pyproject.toml e outros arquivos " +"que podem ser incluídos nas distribuições de código-fonte não são incluídos " +"nas wheels porque ela é uma distribuição construída." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:237 msgid "" @@ -4323,6 +5824,14 @@ msgid "" "thus faster to install - particularly if you have a package that requires" " build steps." msgstr "" +"A wheel (.whl) é a sua distribuição binária construída. **Arquivos " +"binários** são os arquivos de código-fonte construídos / compilados. Esses " +"arquivos estão prontos para serem instalados. Uma wheel (**.whl**) é um " +"arquivo **zip** que contém todos os arquivos necessários para instalar " +"diretamente o seu pacote. Todos os arquivos em uma wheel são binários - " +"isso significa que o código já está compilado / construído. As wheels são, " +"portanto, mais rápidas de instalar - especialmente se você tem um pacote " +"que requer etapas de build." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:239 msgid "" @@ -4330,12 +5839,17 @@ msgid "" " as **setup.cfg** or **pyproject.toml**. This distribution is already " "built so it's ready to install." msgstr "" +"A wheel não contém nenhum dos arquivos de configuração do seu pacote, como " +"o **setup.cfg** ou o **pyproject.toml**. Essa distribuição já está " +"construída, então está pronta para instalar." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:243 msgid "" "Because it is built, the wheel file will be faster to install for pure " "Python projects and can lead to consistent installs across machines." msgstr "" +"Por já estar construída, a wheel será mais rápida de instalar para projetos " +"Python puros e pode levar a instalações consistentes entre máquinas." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:251 msgid "" @@ -4344,52 +5858,59 @@ msgid "" "the wheel bundle are pre built, the user installing doesn't have to worry" " about malicious code injections when it is installed." msgstr "" +"As wheels também são úteis no caso de um pacote precisar de um arquivo " +"**setup.py** para dar suporte a uma build mais complexa. Nesse caso, como " +"os arquivos no pacote wheel são pré-construídos, o usuário que faz a " +"instalação não precisa se preocupar com injeções de código malicioso " +"durante a instalação." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:258 msgid "The filename of a wheel contains important metadata about your package." -msgstr "" +msgstr "O nome de arquivo de uma wheel contém metadados importantes sobre o seu pacote." #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:260 msgid "Example: **stravalib-1.1.0.post2-py3-none.whl**" -msgstr "" +msgstr "Exemplo: **stravalib-1.1.0.post2-py3-none.whl**" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:262 msgid "name: stravalib" -msgstr "" +msgstr "name: stravalib" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:263 msgid "version: 1.1.0" -msgstr "" +msgstr "version: 1.1.0" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:264 msgid "" "build-number: 2 (post2) [(read more about post " "here)](https://peps.python.org/pep-0440/#post-release-separators)" msgstr "" +"build-number: 2 (post2) [(leia mais sobre post " +"aqui)](https://peps.python.org/pep-0440/#post-release-separators)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:265 msgid "py3: supports Python 3.x" -msgstr "" +msgstr "py3: dá suporte ao Python 3.x" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:266 msgid "none: is not operating system specific (runs on windows, mac, linux)" -msgstr "" +msgstr "none: não é específica de sistema operacional (roda em windows, mac, linux)" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:267 msgid "any: runs on any computer processor / architecture" -msgstr "" +msgstr "any: roda em qualquer processador / arquitetura de computador" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:269 msgid "What a wheel file looks like when unpacked (unzipped):" -msgstr "" +msgstr "Como é um arquivo wheel quando descompactado (unzipped):" #: ../../package-structure-code/python-package-distribution-files-sdist-wheel.md:303 msgid "[Read more about the wheel format here](https://pythonwheels.com/)" -msgstr "" +msgstr "[Leia mais sobre o formato wheel aqui](https://pythonwheels.com/)" #: ../../package-structure-code/python-package-structure.md:1 msgid "Python Package Structure & Layout" -msgstr "" +msgstr "Estrutura e Layout de Pacotes Python" #: ../../package-structure-code/python-package-structure.md:3 msgid "" @@ -4397,6 +5918,9 @@ msgid "" "Python packaging ecosystem: src and flat layouts. Both layouts have " "advantages for different groups of maintainers." msgstr "" +"Há dois layouts diferentes que você verá comumente dentro do ecossistema de " +"packaging Python: os layouts src e flat. Ambos os layouts têm vantagens " +"para diferentes grupos de mantenedores." #: ../../package-structure-code/python-package-structure.md:8 msgid "" @@ -4406,16 +5930,24 @@ msgid "" "tutorial](https://packaging.python.org/en/latest/tutorials/packaging-" "projects/)." msgstr "" +"Sugerimos fortemente, mas não exigimos, que você use o layout **src/** " +"(discutido abaixo) para criar o seu pacote Python. Esse layout também é " +"recomendado no [tutorial do guia de packaging da " +"PyPA](https://packaging.python.org/en/latest/tutorials/packaging-" +"projects/)." #: ../../package-structure-code/python-package-structure.md:12 msgid "pyOpenSci will never require a specific package structure for peer review" -msgstr "" +msgstr "O pyOpenSci nunca exigirá uma estrutura de pacote específica para a revisão " +"por pares" #: ../../package-structure-code/python-package-structure.md:15 msgid "" "We understand that it would take significant effort for existing " "maintainers to move to a new layout." msgstr "" +"Entendemos que seria necessário um esforço significativo para os " +"mantenedores existentes migrarem para um novo layout." #: ../../package-structure-code/python-package-structure.md:18 msgid "" @@ -4424,10 +5956,14 @@ msgid "" "package has a simple build and might be open to moving to a more fail-" "proof approach." msgstr "" +"A visão geral nesta página apresenta recomendações que consideramos as " +"melhores para alguém que está começando com o packaging Python ou para " +"alguém cujo pacote tem uma build simples e que pode estar aberto a migrar " +"para uma abordagem mais à prova de falhas." #: ../../package-structure-code/python-package-structure.md:22 msgid "Other resources you can check out:" -msgstr "" +msgstr "Outros recursos que você pode conferir:" #: ../../package-structure-code/python-package-structure.md:24 msgid "" @@ -4435,30 +5971,38 @@ msgid "" "layouts](https://packaging.python.org/en/latest/discussions/src-layout-" "vs-flat-layout/)" msgstr "" +"[Visão geral da PyPA sobre os layouts src vs " +"flat](https://packaging.python.org/en/latest/discussions/src-layout-" +"vs-flat-layout/)" #: ../../package-structure-code/python-package-structure.md:27 msgid "" "You can use tools like Hatch to quickly create a modern Python package " "structure. Check out our quickstart tutorial:" msgstr "" +"Você pode usar ferramentas como o Hatch para criar rapidamente uma " +"estrutura moderna de pacote Python. Confira o nosso tutorial de início " +"rápido:" #: ../../package-structure-code/python-package-structure.md:29 msgid "" "Want to learn how to create the structure to build your package? Click " "here." msgstr "" +"Quer aprender como criar a estrutura para construir o seu pacote? Clique " +"aqui." #: ../../package-structure-code/python-package-structure.md:38 msgid "What is the Python package source layout?" -msgstr "" +msgstr "O que é o layout de código-fonte de um pacote Python?" #: ../../package-structure-code/python-package-structure.md:40 msgid "An example of the **src/package** layout structure is below." -msgstr "" +msgstr "Abaixo está um exemplo da estrutura do layout **src/package**." #: ../../package-structure-code/python-package-structure.md:62 msgid "Note the location of the following directories in the example above:" -msgstr "" +msgstr "Observe a localização dos seguintes diretórios no exemplo acima:" #: ../../package-structure-code/python-package-structure.md:64 msgid "" @@ -4466,6 +6010,10 @@ msgid "" "user-facing documentation website. In a **src/** layout docs/ are " "normally included at the same directory level as the **src/** folder." msgstr "" +"**docs/:** Discutido no nosso capítulo sobre documentação, este diretório " +"contém o site de documentação voltado para o usuário. Em um layout " +"**src/**, o docs/ normalmente é incluído no mesmo nível de diretório que a " +"pasta **src/**." #: ../../package-structure-code/python-package-structure.md:65 msgid "" @@ -4473,12 +6021,17 @@ msgid "" "**src/** layout, tests are normally included at the same directory level " "as the **src/** folder." msgstr "" +"**tests/** Este diretório contém os testes para o código do seu projeto. Em " +"um layout **src/**, os testes normalmente são incluídos no mesmo nível de " +"diretório que a pasta **src/**." #: ../../package-structure-code/python-package-structure.md:66 msgid "" "**src/package/**: this is the directory that contains the code for your " "Python project. \"Package\" is normally your project's name." msgstr "" +"**src/package/**: este é o diretório que contém o código do seu projeto " +"Python. \"Package\" normalmente é o nome do seu projeto." #: ../../package-structure-code/python-package-structure.md:68 msgid "" @@ -4486,58 +6039,62 @@ msgid "" "files that pyOpenSci requires live in the root of your project directory." " These files include:" msgstr "" +"Também no exemplo acima, observe que todos os arquivos de documentação " +"principais que o pyOpenSci exige ficam na raiz do diretório do seu projeto. " +"Esses arquivos incluem:" #: ../../package-structure-code/python-package-structure.md:72 msgid "CHANGELOG.md" -msgstr "" +msgstr "CHANGELOG.md" #: ../../package-structure-code/python-package-structure.md:73 msgid "CODE_OF_CONDUCT.md" -msgstr "" +msgstr "CODE_OF_CONDUCT.md" #: ../../package-structure-code/python-package-structure.md:74 msgid "CONTRIBUTING.md" -msgstr "" +msgstr "CONTRIBUTING.md" #: ../../package-structure-code/python-package-structure.md:75 msgid "LICENSE.txt" -msgstr "" +msgstr "LICENSE.txt" #: ../../package-structure-code/python-package-structure.md:76 msgid "README.md" -msgstr "" +msgstr "README.md" #: ../../package-structure-code/python-package-structure.md:80 msgid "Click here to read about our packaging documentation requirements." -msgstr "" +msgstr "Clique aqui para ler sobre os nossos requisitos de documentação de " +"packaging." #: ../../package-structure-code/python-package-structure.md:87 msgid "Example scientific packages that use **src/package** layout" -msgstr "" +msgstr "Exemplos de pacotes científicos que usam o layout **src/package**" #: ../../package-structure-code/python-package-structure.md:89 msgid "[Sourmash](https://github.com/sourmash-bio/sourmash)" -msgstr "" +msgstr "[Sourmash](https://github.com/sourmash-bio/sourmash)" #: ../../package-structure-code/python-package-structure.md:90 msgid "[bokeh](https://github.com/bokeh/bokeh)" -msgstr "" +msgstr "[bokeh](https://github.com/bokeh/bokeh)" #: ../../package-structure-code/python-package-structure.md:91 msgid "[openscm](https://github.com/openscm/openscm-runner)" -msgstr "" +msgstr "[openscm](https://github.com/openscm/openscm-runner)" #: ../../package-structure-code/python-package-structure.md:92 msgid "[awkward](https://github.com/scikit-hep/awkward)" -msgstr "" +msgstr "[awkward](https://github.com/scikit-hep/awkward)" #: ../../package-structure-code/python-package-structure.md:93 msgid "[poliastro](https://github.com/poliastro/poliastro/)" -msgstr "" +msgstr "[poliastro](https://github.com/poliastro/poliastro/)" #: ../../package-structure-code/python-package-structure.md:98 msgid "The src layout and testing" -msgstr "" +msgstr "O layout src e os testes" #: ../../package-structure-code/python-package-structure.md:100 msgid "" @@ -4547,6 +6104,12 @@ msgid "" "files rather than the installed version of your package, you may be " "missing issues that users encounter when your package is installed." msgstr "" +"O benefício de usar o layout **src/package** é que ele garante que os " +"testes sejam executados contra a versão instalada do seu pacote, em vez dos " +"arquivos no diretório de trabalho do seu pacote. Se você executar os seus " +"testes nos seus arquivos em vez da versão instalada do seu pacote, você " +"pode estar deixando passar problemas que os usuários encontram quando o seu " +"pacote é instalado." #: ../../package-structure-code/python-package-structure.md:106 msgid "" @@ -4555,22 +6118,30 @@ msgid "" "size slightly smaller, which places a smaller storage burden on PyPI, and" " makes them faster to fetch." msgstr "" +"Se o `tests/` estiver fora do diretório **src/package**, ele não será " +"incluído na [wheel](python-wheel) do pacote. Isso deixa o tamanho do seu " +"pacote ligeiramente menor, o que impõe um ônus de armazenamento menor ao " +"PyPI e os torna mais rápidos de baixar." #: ../../package-structure-code/python-package-structure.md:108 msgid "" "[Read more about reasons to use the **src/package** " "layout](https://hynek.me/articles/testing-packaging/)" msgstr "" +"[Leia mais sobre as razões para usar o layout " +"**src/package**](https://hynek.me/articles/testing-packaging/)" #: ../../package-structure-code/python-package-structure.md:110 msgid "How Python discovers and prioritizes importing modules" -msgstr "" +msgstr "Como o Python descobre e prioriza a importação de módulos" #: ../../package-structure-code/python-package-structure.md:112 msgid "" "By default, Python adds a module in your current working directory to the" " front of the Python module search path." msgstr "" +"Por padrão, o Python adiciona um módulo do seu diretório de trabalho atual " +"ao início do caminho de busca de módulos do Python." #: ../../package-structure-code/python-package-structure.md:114 msgid "" @@ -4579,6 +6150,10 @@ msgid "" "discover `package/module.py` file before it discovers the installed " "package." msgstr "" +"Isso significa que, se você executar os seus testes no diretório de " +"trabalho do seu pacote, usando um layout flat, `/package/module.py`, o " +"Python descobrirá o arquivo `package/module.py` antes de descobrir o pacote " +"instalado." #: ../../package-structure-code/python-package-structure.md:116 msgid "" @@ -4587,6 +6162,10 @@ msgid "" "This means that when you import your package, Python will be forced to " "search the active environment (which has your package installed)." msgstr "" +"No entanto, se o seu pacote ficar em uma estrutura de diretório src/ " +"**src/package**, então ele não será adicionado ao caminho do Python por " +"padrão. Isso significa que, quando você importar o seu pacote, o Python " +"será forçado a buscar no ambiente ativo (que tem o seu pacote instalado)." #: ../../package-structure-code/python-package-structure.md:118 msgid "" @@ -4594,10 +6173,13 @@ msgid "" "adjusted to ensure the priority is to use installed packages first (e.g.," " `PYTHONSAFEPATH`)." msgstr "" +"Nota: As versões 3.11 e superiores do Python têm uma configuração de " +"caminho que pode ser ajustada para garantir que a prioridade seja usar " +"primeiro os pacotes instalados (por exemplo, `PYTHONSAFEPATH`)." #: ../../package-structure-code/python-package-structure.md:121 msgid "Don't include tests in your package wheel" -msgstr "" +msgstr "Não inclua os testes na wheel do seu pacote" #: ../../package-structure-code/python-package-structure.md:123 msgid "" @@ -4611,6 +6193,15 @@ msgid "" "`tests/` directory into the **src/package** directory (see example " "below)." msgstr "" +"Escrever [testes](tests-intro) para o seu pacote é importante; no entanto, " +"por padrão, não recomendamos incluir os testes como parte da [wheel do seu " +"pacote](python-wheel). Por outro lado, não incluir os testes na " +"distribuição do seu pacote tornará mais difícil para outras pessoas, além " +"de você, testar se o seu pacote roda corretamente no sistema delas. Se você " +"tem um conjunto de testes pequeno (arquivos Python + dados) e acha que os " +"seus usuários podem querer executar os testes localmente em seus sistemas, " +"você pode incluir os testes movendo o diretório `tests/` para dentro do " +"diretório **src/package** (veja o exemplo abaixo)." #: ../../package-structure-code/python-package-structure.md:132 msgid "" @@ -4618,6 +6209,8 @@ msgid "" "ensures that tests will be included in your package's [wheel](python-" "wheel)." msgstr "" +"Incluir o diretório **tests/** no seu diretório **src/package** garante que " +"os testes sejam incluídos na [wheel](python-wheel) do seu pacote." #: ../../package-structure-code/python-package-structure.md:134 msgid "" @@ -4626,36 +6219,46 @@ msgid "" "distribution](https://docs.pytest.org/en/7.2.x/explanation/goodpractices.html#choosing-a" "-test-layout-import-rules)." msgstr "" +"Certifique-se de ler a [documentação do pytest para saber mais sobre como " +"incluir os testes na distribuição do seu " +"pacote](https://docs.pytest.org/en/7.2.x/explanation/goodpractices.html#choosing-a" +"-test-layout-import-rules)." #: ../../package-structure-code/python-package-structure.md:136 msgid "Challenges with including tests and data in a package wheel" -msgstr "" +msgstr "Desafios ao incluir testes e dados em uma wheel de pacote" #: ../../package-structure-code/python-package-structure.md:139 msgid "" "Tests, especially when accompanied by test data, can create a few small " "challenges, including:" msgstr "" +"Os testes, especialmente quando acompanhados de dados de teste, podem criar " +"alguns pequenos desafios, incluindo:" #: ../../package-structure-code/python-package-structure.md:141 msgid "" "Take up space in your distribution, which will build up over time as " "storage space on PyPI" msgstr "" +"Ocupar espaço na sua distribuição, que se acumulará com o tempo como espaço " +"de armazenamento no PyPI" #: ../../package-structure-code/python-package-structure.md:142 msgid "Large file sizes can also slow down package installation." -msgstr "" +msgstr "Arquivos de tamanho grande também podem deixar a instalação do pacote mais lenta." #: ../../package-structure-code/python-package-structure.md:144 msgid "" "However, in some cases, particularly in the scientific Python ecosystem, " "you may need to include tests." msgstr "" +"No entanto, em alguns casos, particularmente no ecossistema científico do " +"Python, você pode precisar incluir os testes." #: ../../package-structure-code/python-package-structure.md:147 msgid "**Don't include test suite datasets in your package**" -msgstr "" +msgstr "**Não inclua os conjuntos de dados do seu conjunto de testes no seu pacote**" #: ../../package-structure-code/python-package-structure.md:149 msgid "" @@ -4665,12 +6268,20 @@ msgid "" "tool such as [Pooch](https://www.fatiando.org/pooch/latest/) to access " "the data when you (or a user) runs tests." msgstr "" +"Se você incluir os seus testes na distribuição do seu pacote, " +"desencorajamos fortemente que você inclua dados no diretório do seu " +"conjunto de testes. Em vez disso, hospede os seus dados de teste em um " +"repositório como o Figshare ou o Zenodo. Use uma ferramenta como o " +"[Pooch](https://www.fatiando.org/pooch/latest/) para acessar os dados " +"quando você (ou um usuário) executar os testes." #: ../../package-structure-code/python-package-structure.md:155 msgid "" "For more information about Python package tests, see the [tests section " "of our guide](tests-intro)." msgstr "" +"Para mais informações sobre testes de pacotes Python, veja a [seção de " +"testes do nosso guia](tests-intro)." #: ../../package-structure-code/python-package-structure.md:157 msgid "" @@ -4678,6 +6289,9 @@ msgid "" "found in the **src/package** directory, `tests/` and `docs/`are in the " "root directory." msgstr "" +"O layout **src/package** é semanticamente mais claro. O código é sempre " +"encontrado no diretório **src/package**, e o `tests/` e o `docs/` ficam no " +"diretório raiz." #: ../../package-structure-code/python-package-structure.md:161 msgid "" @@ -4687,24 +6301,32 @@ msgid "" "repositories like PyPI and Anaconda.org that have to deal with thousands " "of package uploads." msgstr "" +"Se os testes do seu pacote requerem dados, NÃO inclua esses dados dentro da " +"estrutura do seu pacote. Incluir dados na estrutura do seu pacote aumenta o " +"tamanho dos seus arquivos de distribuição. Isso impõe um ônus de manutenção " +"a repositórios como o PyPI e o Anaconda.org, que precisam lidar com " +"milhares de envios de pacotes." #: ../../package-structure-code/python-package-structure.md:167 msgid "Click here for a quickstart tutorial on creating your Python package." -msgstr "" +msgstr "Clique aqui para ver um tutorial de início rápido sobre como criar o seu " +"pacote Python." #: ../../package-structure-code/python-package-structure.md:176 msgid "What is the flat Python package layout?" -msgstr "" +msgstr "O que é o layout flat de pacote Python?" #: ../../package-structure-code/python-package-structure.md:178 msgid "Many scientific packages use the **flat-layout** given:" -msgstr "" +msgstr "Muitos pacotes científicos usam o **flat-layout** porque:" #: ../../package-structure-code/python-package-structure.md:180 msgid "" "This layout is used by many core scientific Python packages such as " "NumPy, SciPy, and Matplotlib." msgstr "" +"Esse layout é usado por muitos dos principais pacotes científicos em " +"Python, como NumPy, SciPy e Matplotlib." #: ../../package-structure-code/python-package-structure.md:181 msgid "" @@ -4712,6 +6334,9 @@ msgid "" "builds with compilation steps. Many maintainers prefer features of the " "flat layout for more complex builds." msgstr "" +"Muitas ferramentas Python dependem de ferramentas em outras linguagens e/ou " +"de builds complexas com etapas de compilação. Muitos mantenedores preferem " +"os recursos do layout flat para builds mais complexas." #: ../../package-structure-code/python-package-structure.md:185 msgid "" @@ -4719,16 +6344,21 @@ msgid "" " it's important to also understand the flat layout, especially if you " "plan to contribute to a package that uses this layout." msgstr "" +"Embora sugiramos que você use o layout **src/package** discutido acima, é " +"importante entender também o layout flat, especialmente se você planeja " +"contribuir com um pacote que usa esse layout." #: ../../package-structure-code/python-package-structure.md:188 msgid "Why most scientific Python packages do not use src/ layout" -msgstr "" +msgstr "Por que a maioria dos pacotes científicos em Python não usa o layout src/" #: ../../package-structure-code/python-package-structure.md:191 msgid "" "Migrating larger scientific packages that already use a flat layout would" " consume significant time and resources." msgstr "" +"Migrar pacotes científicos maiores que já usam um layout flat consumiria " +"tempo e recursos significativos." #: ../../package-structure-code/python-package-structure.md:193 msgid "" @@ -4736,6 +6366,9 @@ msgid "" "beginner are significant. As such, we recommend that you use the " "**src/package** layout if you are creating a new package." msgstr "" +"No entanto, as vantagens de usar o layout **src/package** para um " +"iniciante são significativas. Por isso, recomendamos que você use o layout " +"**src/package** se estiver criando um novo pacote." #: ../../package-structure-code/python-package-structure.md:196 msgid "" @@ -4743,48 +6376,60 @@ msgid "" " layout](https://github.com/scikit-build/cmake-python-" "distributions/pull/145)." msgstr "" +"Diversos pacotes no ecossistema [tiveram que migrar para um layout " +"**src/package**](https://github.com/scikit-build/cmake-python-" +"distributions/pull/145)." #: ../../package-structure-code/python-package-structure.md:200 msgid "What does the flat layout structure look like?" -msgstr "" +msgstr "Como é a estrutura do layout flat?" #: ../../package-structure-code/python-package-structure.md:202 msgid "The flat layout's primary characteristics are:" -msgstr "" +msgstr "As principais características do layout flat são:" #: ../../package-structure-code/python-package-structure.md:204 msgid "" "The source code for your package lives in a directory with your package's" " name in the root of your directory" msgstr "" +"O código-fonte do seu pacote fica em um diretório com o nome do seu pacote " +"na raiz do seu diretório" #: ../../package-structure-code/python-package-structure.md:206 msgid "" "Often the `tests/` directory also lives within that same `package` " "directory." msgstr "" +"Frequentemente, o diretório `tests/` também fica dentro desse mesmo " +"diretório `package`." #: ../../package-structure-code/python-package-structure.md:208 msgid "" "Below you can see the recommended structure of a scientific Python " "package using the flat layout." msgstr "" +"Abaixo você pode ver a estrutura recomendada de um pacote científico em " +"Python usando o layout flat." #: ../../package-structure-code/python-package-structure.md:230 msgid "Benefits of using the flat layout in your Python package" -msgstr "" +msgstr "Benefícios de usar o layout flat no seu pacote Python" #: ../../package-structure-code/python-package-structure.md:232 msgid "" "There are some benefits to the scientific community in using the flat " "layout." msgstr "" +"Há alguns benefícios para a comunidade científica em usar o layout flat." #: ../../package-structure-code/python-package-structure.md:234 msgid "" "This structure has historically been used across the ecosystem and " "packages using it are unlikely to change." msgstr "" +"Essa estrutura tem sido historicamente usada em todo o ecossistema e é " +"improvável que os pacotes que a utilizam mudem." #: ../../package-structure-code/python-package-structure.md:236 msgid "" @@ -4794,38 +6439,43 @@ msgid "" "against the installed version of your package. Rather, you are working " "directly with the flat files." msgstr "" +"Você pode importar o pacote diretamente do diretório raiz. Para alguns, " +"isso está enraizado em seus respectivos fluxos de trabalho. No entanto, " +"para um iniciante, o perigo de fazer isso é que você não está desenvolvendo " +"e testando contra a versão instalada do seu pacote. Em vez disso, você está " +"trabalhando diretamente com os arquivos flat." #: ../../package-structure-code/python-package-structure.md:242 msgid "Core scientific Python packages that use the flat layout" -msgstr "" +msgstr "Principais pacotes científicos em Python que usam o layout flat" #: ../../package-structure-code/python-package-structure.md:245 msgid "[numpy](https://github.com/numpy/numpy)" -msgstr "" +msgstr "[numpy](https://github.com/numpy/numpy)" #: ../../package-structure-code/python-package-structure.md:246 msgid "[scipy](https://github.com/scipy/scipy)" -msgstr "" +msgstr "[scipy](https://github.com/scipy/scipy)" #: ../../package-structure-code/python-package-structure.md:247 msgid "[pandas](https://github.com/pandas-dev/pandas)" -msgstr "" +msgstr "[pandas](https://github.com/pandas-dev/pandas)" #: ../../package-structure-code/python-package-structure.md:248 msgid "[xarray](https://github.com/pydata/xarray)" -msgstr "" +msgstr "[xarray](https://github.com/pydata/xarray)" #: ../../package-structure-code/python-package-structure.md:249 msgid "[Jupyter-core](https://github.com/jupyter/jupyter_core)" -msgstr "" +msgstr "[Jupyter-core](https://github.com/jupyter/jupyter_core)" #: ../../package-structure-code/python-package-structure.md:250 msgid "[Jupyter notebook](https://github.com/jupyter/notebook)" -msgstr "" +msgstr "[Jupyter notebook](https://github.com/jupyter/notebook)" #: ../../package-structure-code/python-package-structure.md:251 msgid "[scikit-learn](https://github.com/scikit-learn/scikit-learn)" -msgstr "" +msgstr "[scikit-learn](https://github.com/scikit-learn/scikit-learn)" #: ../../package-structure-code/python-package-structure.md:253 msgid "" @@ -4833,10 +6483,13 @@ msgid "" "these packages to a different layout. The potential benefits of the " "source layout for these tools are not worth the maintenance investment." msgstr "" +"Seria um custo e um ônus de manutenção significativo migrar todos esses " +"pacotes para um layout diferente. Os benefícios potenciais do layout de " +"código-fonte para essas ferramentas não valem o investimento de manutenção." #: ../../package-structure-code/python-package-structure.md:258 msgid "Multiple packages in a src/ folder" -msgstr "" +msgstr "Múltiplos pacotes em uma pasta src/" #: ../../package-structure-code/python-package-structure.md:261 msgid "" @@ -4846,14 +6499,19 @@ msgid "" " However, for most beginners you will likely only have one sub-directory " "in your **src/** folder." msgstr "" +"Em alguns casos mais avançados, você pode ter mais de um pacote no seu " +"diretório **src/**. Veja o [repositório do Black no " +"GitHub](https://github.com/psf/black/tree/main/src) para ver um exemplo " +"disso. No entanto, para a maioria dos iniciantes, você provavelmente terá " +"apenas um subdiretório na sua pasta **src/**." #: ../../package-structure-code/python-package-versions.md:1 msgid "Creating New Versions of Your Python Package" -msgstr "" +msgstr "Criando Novas Versões do Seu Pacote Python" #: ../../package-structure-code/python-package-versions.md:6 msgid "Key Takeways" -msgstr "" +msgstr "Principais Conclusões" #: ../../package-structure-code/python-package-versions.md:8 msgid "" @@ -4862,6 +6520,10 @@ msgid "" "package version; for example a major version bump (version 1.0 --> 2.0) " "equates to breaking changes in your package's code for a user." msgstr "" +"Siga as [diretrizes de versionamento semântico (SemVer)](https://semver.org/) " +"ao incrementar (aumentar) a versão do seu pacote Python; por exemplo, um " +"incremento de versão major (versão 1.0 --> 2.0) equivale a mudanças que " +"quebram a compatibilidade no código do seu pacote para um usuário." #: ../../package-structure-code/python-package-versions.md:9 msgid "" @@ -4869,16 +6531,23 @@ msgid "" "versions of your package - if you want to have a GitHub only release " "workflow." msgstr "" +"Você pode querer considerar usar um plugin como o hatch_vsc para gerenciar " +"as versões do seu pacote - se você quiser ter um fluxo de trabalho de " +"release apenas no GitHub." #: ../../package-structure-code/python-package-versions.md:10 msgid "" "Otherwise most major package build tools such as Hatch, Flit and PDM have" " a version feature that will help you update your package's version" msgstr "" +"Caso contrário, a maioria das principais ferramentas de build de pacotes, " +"como Hatch, Flit e PDM, tem um recurso de versão que ajudará você a " +"atualizar a versão do seu pacote" #: ../../package-structure-code/python-package-versions.md:11 msgid "Avoid updating your packages version number manually by hand in your code!" -msgstr "" +msgstr "Evite atualizar o número de versão do seu pacote manualmente, à mão, no seu " +"código!" #: ../../package-structure-code/python-package-versions.md:14 msgid "" @@ -4888,6 +6557,11 @@ msgid "" "/#semantic-versioning) when assigning release values to new versions of " "your Python package." msgstr "" +"O pyOpenSci recomenda que você siga a [PEP 440 do " +"Python](https://peps.python.org/pep-0440), que recomenda usar as " +"[diretrizes de versionamento semântico](https://www.python.org/dev/peps/pep-0440" +"/#semantic-versioning) ao atribuir valores de release a novas versões do " +"seu pacote Python." #: ../../package-structure-code/python-package-versions.md:18 msgid "" @@ -4896,18 +6570,26 @@ msgid "" "are making to the package code. Being consistent with how and when you " "update your package versions is important as:" msgstr "" +"O [versionamento semântico](https://semver.org/) é uma abordagem para " +"atualizar as versões de um pacote que considera o tipo e a extensão de uma " +"mudança que você está fazendo no código do pacote. Ser consistente com como " +"e quando você atualiza as versões do seu pacote é importante porque:" #: ../../package-structure-code/python-package-versions.md:23 msgid "" "It helps your users (which might include other developers that depend on " "your package) understand the extent of changes to a package." msgstr "" +"Ajuda os seus usuários (que podem incluir outros desenvolvedores que " +"dependem do seu pacote) a entender a extensão das mudanças em um pacote." #: ../../package-structure-code/python-package-versions.md:24 msgid "" "It helps your development team make decisions about when to bump a " "package version based on standard rules." msgstr "" +"Ajuda a sua equipe de desenvolvimento a tomar decisões sobre quando " +"incrementar a versão de um pacote com base em regras padrão." #: ../../package-structure-code/python-package-versions.md:26 msgid "" @@ -4918,10 +6600,17 @@ msgid "" "code expressive](https://medium.com/@daniel.oliver.king/writing-" "expressive-code-b69ef7a5a2fa)." msgstr "" +"Aumentos de versão consistentes que seguem as regras do semver significam " +"que os valores da versão do seu pacote explicam a extensão das mudanças " +"feitas na base de código de uma versão para outra. Assim, os números de " +"versão do seu pacote tornam-se \"expressivos\" da mesma forma que nomear " +"bem as variáveis de código pode [tornar o código " +"expressivo](https://medium.com/@daniel.oliver.king/writing-" +"expressive-code-b69ef7a5a2fa)." #: ../../package-structure-code/python-package-versions.md:28 msgid "A note about versioning" -msgstr "" +msgstr "Uma nota sobre versionamento" #: ../../package-structure-code/python-package-versions.md:29 msgid "" @@ -4930,44 +6619,51 @@ msgid "" "document how you version your code and if you can, also document your " "deprecation policy for code." msgstr "" +"Em alguns casos, até mesmo pequenas mudanças de versão podem transformar " +"uma atualização de pacote em uma mudança que quebra a compatibilidade para " +"alguns usuários. O que também é importante é que você documente como " +"versiona o seu código e, se possível, também documente a sua política de " +"depreciação de código." #: ../../package-structure-code/python-package-versions.md:38 msgid "SemVer rules" -msgstr "" +msgstr "Regras do SemVer" #: ../../package-structure-code/python-package-versions.md:40 msgid "Following SemVer, your bump your package version to a:" -msgstr "" +msgstr "Seguindo o SemVer, você incrementa a versão do seu pacote para um:" #: ../../package-structure-code/python-package-versions.md:42 msgid "patch (1.1.1 --> 1.1.**2**)" -msgstr "" +msgstr "patch (1.1.1 --> 1.1.**2**)" #: ../../package-structure-code/python-package-versions.md:43 msgid "minor (1.1.1 --> 1.**2**.1)" -msgstr "" +msgstr "minor (1.1.1 --> 1.**2**.1)" #: ../../package-structure-code/python-package-versions.md:44 msgid "major (1.1.1 --> **2**.1.1)" -msgstr "" +msgstr "major (1.1.1 --> **2**.1.1)" #: ../../package-structure-code/python-package-versions.md:46 msgid "version number change based on the following rules:" -msgstr "" +msgstr "a mudança do número de versão é baseada nas seguintes regras:" #: ../../package-structure-code/python-package-versions.md:48 msgid "Given a version number MAJOR.MINOR.PATCH, increment the:" -msgstr "" +msgstr "Dado um número de versão MAJOR.MINOR.PATCH, incremente o:" #: ../../package-structure-code/python-package-versions.md:50 msgid "**MAJOR version** when you make incompatible API changes" -msgstr "" +msgstr "**versão MAJOR** quando você faz mudanças incompatíveis na API" #: ../../package-structure-code/python-package-versions.md:51 msgid "" "**MINOR version** when you add functionality in a backwards compatible " "manner" msgstr "" +"**versão MINOR** quando você adiciona funcionalidade de forma " +"retrocompatível" #: ../../package-structure-code/python-package-versions.md:52 msgid "" @@ -4975,6 +6671,9 @@ msgid "" " labels for pre-release and build metadata are available as extensions to" " the MAJOR.MINOR.PATCH format." msgstr "" +"**versão PATCH** quando você faz correções de bugs retrocompatíveis. " +"Rótulos adicionais para pré-release e metadados de build estão disponíveis " +"como extensões ao formato MAJOR.MINOR.PATCH." #: ../../package-structure-code/python-package-versions.md:57 msgid "" @@ -4984,16 +6683,24 @@ msgid "" "provide a user with a sense of when a new version might break an existing" " build. As such we still suggest semver." msgstr "" +"Algumas pessoas preferem usar o [calver](https://calver.org/index.html) " +"para o versionamento. Pode ser um sistema mais simples de usar, já que se " +"baseia em valores de data associados às versões lançadas. No entanto, o " +"calver não dá ao usuário uma noção de quando uma nova versão pode quebrar " +"uma build existente. Por isso, ainda sugerimos o semver." #: ../../package-structure-code/python-package-versions.md:60 msgid "" "pyOpenSci will never require semver in a peer review as long as a package" " has a reasonable approach to versioning!" msgstr "" +"O pyOpenSci nunca exigirá o semver em uma revisão por pares, desde que um " +"pacote tenha uma abordagem razoável para o versionamento!" #: ../../package-structure-code/python-package-versions.md:64 msgid "Avoid manually updating Python package version numbers if you can" -msgstr "" +msgstr "Evite atualizar manualmente os números de versão do pacote Python, se " +"possível" #: ../../package-structure-code/python-package-versions.md:66 msgid "" @@ -5001,6 +6708,9 @@ msgid "" "locations. One example of this is that it might be both an attribute in " "your package **version** and also called in your documentation." msgstr "" +"Muitas vezes, você pode querer ter o valor da versão do seu pacote em " +"vários locais. Um exemplo disso é que ele pode ser tanto um atributo na " +"**versão** do seu pacote quanto também ser chamado na sua documentação." #: ../../package-structure-code/python-package-versions.md:71 msgid "" @@ -5008,6 +6718,9 @@ msgid "" " to avoid human-error. It is better practice to keep your version number " "in one location." msgstr "" +"Recomendamos que você evite atualizações manuais do número de versão do seu " +"pacote para evitar erros humanos. É uma prática melhor manter o seu número " +"de versão em um único local." #: ../../package-structure-code/python-package-versions.md:75 msgid "" @@ -5015,16 +6728,21 @@ msgid "" "tool like hatch, PDM or bump2version that will update the version values " "for you - throughout your package." msgstr "" +"Se você não conseguir implementar uma versão em um único local, então " +"considere usar uma ferramenta como hatch, PDM ou bump2version, que " +"atualizará os valores de versão para você - em todo o seu pacote." #: ../../package-structure-code/python-package-versions.md:79 msgid "" "Below we discuss some tools that you can use to manage updating Python " "package versions." msgstr "" +"Abaixo, discutimos algumas ferramentas que você pode usar para gerenciar a " +"atualização das versões de pacotes Python." #: ../../package-structure-code/python-package-versions.md:85 msgid "Tools to manage versions for your Python package" -msgstr "" +msgstr "Ferramentas para gerenciar as versões do seu pacote Python" #: ../../package-structure-code/python-package-versions.md:87 msgid "" @@ -5033,16 +6751,23 @@ msgid "" " tools are built into or work with your chosen [packaging build tools " "that discussed in this chapter.](python-package-build-tools)" msgstr "" +"Há um punhado de ferramentas que são amplamente usadas no ecossistema " +"científico e que você pode usar para gerenciar as versões do seu pacote. " +"Algumas dessas ferramentas são embutidas ou funcionam com as [ferramentas " +"de build de packaging que você escolher, discutidas neste " +"capítulo.](python-package-build-tools)" #: ../../package-structure-code/python-package-versions.md:93 msgid "Below, we provide an overview of these tools." -msgstr "" +msgstr "Abaixo, fornecemos uma visão geral dessas ferramentas." #: ../../package-structure-code/python-package-versions.md:99 msgid "" "There are three general groups of tools that you can use to manage " "package versions:" msgstr "" +"Há três grupos gerais de ferramentas que você pode usar para gerenciar as " +"versões de um pacote:" #: ../../package-structure-code/python-package-versions.md:102 msgid "" @@ -5052,6 +6777,12 @@ msgid "" "release.readthedocs.io/en/latest/) as a Python tool that implements a " "semantic versioning approach." msgstr "" +"**ferramentas de semantic release:** Essas ferramentas determinam " +"automagicamente qual tipo de incremento de versão usar com base no texto " +"das suas mensagens de commit. Abaixo, discutimos o [Python Semantic " +"Release](https://python-semantic-release.readthedocs.io/en/latest/) como " +"uma ferramenta Python que implementa uma abordagem de versionamento " +"semântico." #: ../../package-structure-code/python-package-versions.md:104 msgid "" @@ -5060,6 +6791,11 @@ msgid "" "within your package. Normally this is implemented at the command link for" " instance `hatch version major` would bump your project from 0.x to 1.0." msgstr "" +"**Ferramentas de incremento manual:** Ferramentas como o " +"[Hatch](https://hatch.pypa.io/latest/version/) oferecem o incremento de " +"versão dentro do seu pacote. Normalmente, isso é implementado na linha de " +"comando; por exemplo, `hatch version major` incrementaria o seu projeto de " +"0.x para 1.0." #: ../../package-structure-code/python-package-versions.md:105 msgid "" @@ -5069,10 +6805,17 @@ msgid "" "We discuss this option below assuming that you are using **.git tags** " "and **GitHub** to manage your package repository." msgstr "" +"**Ferramentas de Sistema de Controle de Versão:** Por fim, há ferramentas " +"que se baseiam no seu sistema de controle de versão para rastrear as " +"versões. Essas ferramentas costumam ser plugins para a sua ferramenta de " +"build de pacotes (ex: setuptools build ou hatchling). Discutimos essa opção " +"abaixo, presumindo que você está usando **.git tags** e o **GitHub** para " +"gerenciar o repositório do seu pacote." #: ../../package-structure-code/python-package-versions.md:107 msgid "Semantic release, vs version control based vs manual version bumping" -msgstr "" +msgstr "Semantic release vs. baseado em controle de versão vs. incremento manual de " +"versão" #: ../../package-structure-code/python-package-versions.md:109 msgid "" @@ -5081,18 +6824,23 @@ msgid "" "can create a workflow where a GitHub release and associated new version " "tag is used to trigger an automated build that:" msgstr "" +"Em geral, as ferramentas de semantic release e de sistema de controle de " +"versão podem ser configuradas para rodar automaticamente no GitHub usando o " +"GitHub Actions. Isso significa que você pode criar um fluxo de trabalho em " +"que um release do GitHub e a nova tag de versão associada são usados para " +"disparar uma build automatizada que:" #: ../../package-structure-code/python-package-versions.md:115 msgid "Builds your package and updates the version following the new tag" -msgstr "" +msgstr "Constrói o seu pacote e atualiza a versão de acordo com a nova tag" #: ../../package-structure-code/python-package-versions.md:116 msgid "Tests the build and publishes to test PyPI" -msgstr "" +msgstr "Testa a build e publica no test PyPI" #: ../../package-structure-code/python-package-versions.md:117 msgid "Publishes the package to PyPI" -msgstr "" +msgstr "Publica o pacote no PyPI" #: ../../package-structure-code/python-package-versions.md:120 msgid "" @@ -5100,46 +6848,55 @@ msgid "" "version after a set number of changes have been made to it. For example, " "you might bump from version 0.8 to 0.9 of a package or from 0.9 to 1.0." msgstr "" +"Incrementar a versão de um pacote refere-se à etapa de aumentar a versão do " +"pacote depois que um certo número de mudanças foi feito nele. Por exemplo, " +"você pode incrementar da versão 0.8 para a 0.9 de um pacote ou da 0.9 para " +"a 1.0." #: ../../package-structure-code/python-package-versions.md:124 msgid "" "Using semantic versioning, there are three main \"levels\" of versions " "that you might consider:" msgstr "" +"Usando o versionamento semântico, há três \"níveis\" principais de versões " +"que você pode considerar:" #: ../../package-structure-code/python-package-versions.md:127 msgid "Major, minor and patch. These are described in more detail below." -msgstr "" +msgstr "Major, minor e patch. Eles são descritos em mais detalhes abaixo." #: ../../package-structure-code/python-package-versions.md:130 msgid "Tools for bumping Python package versions" -msgstr "" +msgstr "Ferramentas para incrementar as versões de pacotes Python" #: ../../package-structure-code/python-package-versions.md:132 msgid "" "In this section we discuss the following tools for managing your Python " "package's version:" msgstr "" +"Nesta seção, discutimos as seguintes ferramentas para gerenciar a versão do " +"seu pacote Python:" #: ../../package-structure-code/python-package-versions.md:135 msgid "hatch &" -msgstr "" +msgstr "hatch &" #: ../../package-structure-code/python-package-versions.md:136 msgid "hatch_vcs plugin for hatchling" -msgstr "" +msgstr "plugin hatch_vcs para o hatchling" #: ../../package-structure-code/python-package-versions.md:137 msgid "setuptools-scm" -msgstr "" +msgstr "setuptools-scm" #: ../../package-structure-code/python-package-versions.md:138 msgid "python-semantic-version" -msgstr "" +msgstr "python-semantic-version" #: ../../package-structure-code/python-package-versions.md:140 msgid "Tool 1: Hatch and other build tools that offer incremental versioning" -msgstr "" +msgstr "Ferramenta 1: Hatch e outras ferramentas de build que oferecem " +"versionamento incremental" #: ../../package-structure-code/python-package-versions.md:142 msgid "" @@ -5149,14 +6906,19 @@ msgid "" "implement version. Rather, they allow you to update the version at the " "command line using commands such as:" msgstr "" +"Muitas das ferramentas de front-end de build modernas oferecem suporte a " +"versões que seguem as regras de versionamento semântico. Essas ferramentas " +"são diferentes do Python Semantic Version porque não requerem mensagens de " +"commit específicas para implementar a versão. Em vez disso, elas permitem " +"que você atualize a versão na linha de comando usando comandos como:" #: ../../package-structure-code/python-package-versions.md:148 msgid "`tool-name version update major`" -msgstr "" +msgstr "`tool-name version update major`" #: ../../package-structure-code/python-package-versions.md:149 msgid "`tool-name version update minor`" -msgstr "" +msgstr "`tool-name version update minor`" #: ../../package-structure-code/python-package-versions.md:151 msgid "" @@ -5165,28 +6927,34 @@ msgid "" "incrementally. With **Hatch** the version value will be found in your " "`pyproject.toml` file. " msgstr "" +"O [Hatch](https://hatch.pypa.io/latest/version/), por exemplo, oferece " +"`hatch version minor`, que modificará a versão do seu pacote de forma " +"incremental. Com o **Hatch**, o valor da versão será encontrado no seu " +"arquivo `pyproject.toml`. " #: ../../package-structure-code/python-package-versions.md:154 msgid "Hatch (or other tools like PDM) pros" -msgstr "" +msgstr "Prós do Hatch (ou de outras ferramentas como o PDM)" #: ../../package-structure-code/python-package-versions.md:156 msgid "Easy to use version updates locally using a single tool!" -msgstr "" +msgstr "Atualizações de versão fáceis de usar localmente com uma única ferramenta!" #: ../../package-structure-code/python-package-versions.md:158 msgid "Hatch (or other tools like PDM) cons" -msgstr "" +msgstr "Contras do Hatch (ou de outras ferramentas como o PDM)" #: ../../package-structure-code/python-package-versions.md:160 msgid "" "There will be some setup involved to ensure package version is updated " "throughout your package" msgstr "" +"Haverá alguma configuração envolvida para garantir que a versão do pacote " +"seja atualizada em todo o seu pacote" #: ../../package-structure-code/python-package-versions.md:162 msgid "Tool 2: Hatch_vcs & hatchling build back-end" -msgstr "" +msgstr "Ferramenta 2: Hatch_vcs & o back-end de build hatchling" #: ../../package-structure-code/python-package-versions.md:164 msgid "" @@ -5195,6 +6963,10 @@ msgid "" "creates a **\\_version.py** file in your package ecosystem that keeps " "track of the package's current version." msgstr "" +"O [hatch_vcs](https://github.com/ofek/hatch-vcs) é uma ferramenta de " +"versionamento que permite gerenciar as versões de um pacote usando **git " +"tags**. O Hatch_vcs cria um arquivo **\\_version.py** no ecossistema do seu " +"pacote que mantém o controle da versão atual do pacote." #: ../../package-structure-code/python-package-versions.md:169 msgid "" @@ -5204,6 +6976,11 @@ msgid "" "This in turn eliminates potential error associated with manually updating" " your package's version." msgstr "" +"O Hatch mantém o controle da versão do seu pacote em um arquivo " +"`_version.py`. Armazenar a versão em um único arquivo gerenciado pelo Hatch " +"fornece ao seu pacote um valor de \"fonte única da verdade\" para o número " +"de versão. Isso, por sua vez, elimina o potencial erro associado à " +"atualização manual da versão do seu pacote." #: ../../package-structure-code/python-package-versions.md:175 msgid "" @@ -5211,6 +6988,9 @@ msgid "" " tag number for your package. If it has increased, it will update the " "**\\_version.py** file with the new value." msgstr "" +"Quando você (ou o seu sistema de CI) constrói o seu pacote, o hatch " +"verifica o número da tag atual do seu pacote. Se ela tiver aumentado, ele " +"atualizará o arquivo **\\_version.py** com o novo valor." #: ../../package-structure-code/python-package-versions.md:178 msgid "" @@ -5218,28 +6998,39 @@ msgid "" "your package, Hatch will access the new tag value and use it to update " "your package version." msgstr "" +"Assim, quando você cria uma nova tag ou um novo release com uma tag e " +"constrói o seu pacote, o Hatch acessará o valor da nova tag e o usará para " +"atualizar a versão do seu pacote." #: ../../package-structure-code/python-package-versions.md:181 msgid "" "To use **hatch_vcs** you will need to use the **hatchling** build back " "end." msgstr "" +"Para usar o **hatch_vcs**, você precisará usar o back-end de build " +"**hatchling**." #: ../../package-structure-code/python-package-versions.md:184 msgid "" "Hatchling can also be used with any of the modern build tools including " "**Flit** and **PDM** if you prefer those for your day to day workflow." msgstr "" +msgstr "" +"O Hatchling também pode ser usado com qualquer uma das ferramentas de build " +"modernas, incluindo o **Flit** e o **PDM**, se você as preferir para o seu " +"fluxo de trabalho do dia a dia." #: ../../package-structure-code/python-package-versions.md:189 msgid "Hatch example setup in your pyproject.toml" -msgstr "" +msgstr "Exemplo de configuração do Hatch no seu pyproject.toml" #: ../../package-structure-code/python-package-versions.md:198 msgid "" "**Hatch_vcs** supports a fully automated package release and build, and " "push to PyPI workflow on GitHub." msgstr "" +"O **Hatch_vcs** dá suporte a um fluxo de trabalho totalmente automatizado " +"de release e build do pacote, e push para o PyPI no GitHub." #: ../../package-structure-code/python-package-versions.md:208 msgid "" @@ -5247,24 +7038,27 @@ msgid "" "**hatchling** to be the modern equivalent to your current setuptools / " "build workflow." msgstr "" +"Se você usa o **setuptools_scm**, então você pode achar que o **hatch_vcs** " +"e o **hatchling** são o equivalente moderno do seu fluxo de trabalho atual " +"de setuptools / build." #: ../../package-structure-code/python-package-versions.md:211 msgid "hatch_vcs pros" -msgstr "" +msgstr "Prós do hatch_vcs" #: ../../package-structure-code/python-package-versions.md:213 msgid "Hatch supports modern Python packaging standards" -msgstr "" +msgstr "O Hatch dá suporte aos padrões modernos de packaging Python" #: ../../package-structure-code/python-package-versions.md:214 #: ../../package-structure-code/python-package-versions.md:240 msgid "It creates a single-source file that contains your package version." -msgstr "" +msgstr "Ele cria um arquivo de fonte única que contém a versão do seu pacote." #: ../../package-structure-code/python-package-versions.md:215 #: ../../package-structure-code/python-package-versions.md:241 msgid "You never manually update the package version" -msgstr "" +msgstr "Você nunca atualiza a versão do pacote manualmente" #: ../../package-structure-code/python-package-versions.md:216 #: ../../package-structure-code/python-package-versions.md:242 @@ -5272,6 +7066,8 @@ msgid "" "You can automate writing the version anywhere in your package including " "your documentation!" msgstr "" +"Você pode automatizar a escrita da versão em qualquer lugar do seu pacote, " +"incluindo a sua documentação!" #: ../../package-structure-code/python-package-versions.md:217 #: ../../package-structure-code/python-package-versions.md:243 @@ -5279,6 +7075,8 @@ msgid "" "It supports a purely GitHub based release workflow. This simplifies " "maintenance workflows." msgstr "" +"Ele dá suporte a um fluxo de trabalho de release puramente baseado no " +"GitHub. Isso simplifica os fluxos de trabalho de manutenção." #: ../../package-structure-code/python-package-versions.md:218 #: ../../package-structure-code/python-package-versions.md:244 @@ -5286,6 +7084,8 @@ msgid "" "Version number is updated in your package via a hidden `_version.py` " "file. There is no manual configuration updates required." msgstr "" +"O número de versão é atualizado no seu pacote por meio de um arquivo oculto " +"`_version.py`. Não é necessária nenhuma atualização manual de configuração." #: ../../package-structure-code/python-package-versions.md:219 #: ../../package-structure-code/python-package-versions.md:245 @@ -5294,10 +7094,14 @@ msgid "" "below), we know that sometimes when maintaining a package specific " "guidelines around commit messages can be hard to apply and manage." msgstr "" +"Embora gostemos de mensagens de commit detalhadas (Veja o Python Semantic " +"Version abaixo), sabemos que, às vezes, ao manter um pacote, diretrizes " +"específicas em torno das mensagens de commit podem ser difíceis de aplicar " +"e gerenciar." #: ../../package-structure-code/python-package-versions.md:221 msgid "hatch_vcs cons" -msgstr "" +msgstr "Contras do hatch_vcs" #: ../../package-structure-code/python-package-versions.md:223 msgid "" @@ -5305,10 +7109,14 @@ msgid "" "version number via a tag on GitHub. But you could locally develop a build" " to \"bump\" tag versions" msgstr "" +"Em um fluxo de trabalho de CI, você acabará inserindo ou criando " +"manualmente o número de versão por meio de uma tag no GitHub. Mas você " +"poderia desenvolver localmente uma build para \"incrementar\" as versões " +"das tags" #: ../../package-structure-code/python-package-versions.md:226 msgid "Tool 3: setuptools-scm versioning using git tags" -msgstr "" +msgstr "Ferramenta 3: versionamento do setuptools-scm usando git tags" #: ../../package-structure-code/python-package-versions.md:228 msgid "" @@ -5318,52 +7126,70 @@ msgid "" "above) does. It stores a version in a **\\_version.py** file and relies " "on (**git**) tags to determine the package's current version." msgstr "" +"O [`Setuptools_scm`](https://github.com/pypa/setuptools-scm/) é uma " +"extensão que você pode usar com o setuptools para gerenciar as versões de " +"um pacote. O **Setuptools_scm** opera da mesma forma que o **hatch_vcs** " +"(discutido acima). Ele armazena uma versão em um arquivo **\\_version.py** " +"e se baseia em tags (**git**) para determinar a versão atual do pacote." #: ../../package-structure-code/python-package-versions.md:234 msgid "" "If you are using **setuptools** as your primary build tool, then " "`*setuptools-scm` is a good choice as:" msgstr "" +"Se você está usando o **setuptools** como a sua ferramenta de build " +"principal, então o `*setuptools-scm` é uma boa escolha porque:" #: ../../package-structure-code/python-package-versions.md:238 msgid "setuptools_scm Pros" -msgstr "" +msgstr "Prós do setuptools_scm" #: ../../package-structure-code/python-package-versions.md:246 msgid "**setuptools** is still the most commonly used Python packaging build tool" -msgstr "" +msgstr "O **setuptools** ainda é a ferramenta de build de packaging Python mais " +"comumente usada" #: ../../package-structure-code/python-package-versions.md:248 msgid "setuptools_scm cons" -msgstr "" +msgstr "Contras do setuptools_scm" #: ../../package-structure-code/python-package-versions.md:250 msgid "" "In a CI workflow you will end up manually entering or creating the " "version number via a tag on GitHub." msgstr "" +"Em um fluxo de trabalho de CI, você acabará inserindo ou criando " +"manualmente o número de versão por meio de uma tag no GitHub." #: ../../package-structure-code/python-package-versions.md:251 msgid "Not well documented" -msgstr "" +msgstr "Não é bem documentado" #: ../../package-structure-code/python-package-versions.md:252 msgid "" "Because setuptools will always have to support backwards compatibility it" " will always be slower in adopting modern Python packaging conventions." msgstr "" +"Como o setuptools sempre terá que dar suporte à compatibilidade retroativa, " +"ele sempre será mais lento em adotar as convenções modernas de " +"packaging Python." #: ../../package-structure-code/python-package-versions.md:254 msgid "" "As such you might consider using a more modern tool such as **hatch_vcs**" " and **hatchling** to build your package and manage package versions." msgstr "" +"Por isso, você pode considerar usar uma ferramenta mais moderna, como o " +"**hatch_vcs** e o **hatchling**, para construir o seu pacote e gerenciar as " +"versões do pacote." #: ../../package-structure-code/python-package-versions.md:266 msgid "" "Tool 4: [Python semantic release](https://python-semantic-" "release.readthedocs.io/en/latest/)" msgstr "" +"Ferramenta 4: [Python semantic release](https://python-semantic-" +"release.readthedocs.io/en/latest/)" #: ../../package-structure-code/python-package-versions.md:268 msgid "" @@ -5372,12 +7198,18 @@ msgid "" "As the name implies, Python Semantic Release follows semver release " "rules." msgstr "" +"O Python semantic release usa um fluxo de trabalho de mensagens de commit " +"que atualiza a versão do seu pacote com base em palavras-chave encontradas " +"nas suas mensagens de commit. Como o nome indica, o Python Semantic Release " +"segue as regras de release do semver." #: ../../package-structure-code/python-package-versions.md:273 msgid "" "With Python Semantic Release, versions are triggered using specific " "language found in a git commit message." msgstr "" +"Com o Python Semantic Release, as versões são disparadas usando uma " +"linguagem específica encontrada em uma mensagem de commit do git." #: ../../package-structure-code/python-package-versions.md:276 msgid "" @@ -5387,12 +7219,19 @@ msgid "" " fix(text-here), Python Semantic Release would bump your package to " "version 1.1.1." msgstr "" +"Por exemplo, as palavras `fix(attribute_warning):` fazem o Python Semantic " +"Release implementar um incremento de versão **patch**. Por exemplo, se o " +"seu pacote estivesse na versão 1.1.0 e você fizesse o commit abaixo com as " +"palavras fix(text-here), o Python Semantic Release incrementaria o seu " +"pacote para a versão 1.1.1." #: ../../package-structure-code/python-package-versions.md:286 msgid "" "Similarly a feature (`feat()`) triggers a minor version bump. For example" " from version 1.1 to version 1.2" msgstr "" +"De forma semelhante, uma funcionalidade (`feat()`) dispara um incremento de " +"versão minor. Por exemplo, da versão 1.1 para a versão 1.2" #: ../../package-structure-code/python-package-versions.md:294 msgid "" @@ -5402,14 +7241,20 @@ msgid "" "since 2020 and will potentially be updated in the future! But for now, " "some of the commands are dated but the content is still excellent." msgstr "" +"Você pode encontrar uma discussão criteriosa sobre o python semantic " +"version [neste guia de pacotes Python](https://py-pkgs.org/07-releasing-" +"versioning#automatic-version-bumping). Note que o guia não é atualizado " +"desde 2020 e, potencialmente, será atualizado no futuro! Mas, por enquanto, " +"alguns dos comandos estão desatualizados, embora o conteúdo ainda seja " +"excelente." #: ../../package-structure-code/python-package-versions.md:297 msgid "Python Semantic Release pros" -msgstr "" +msgstr "Prós do Python Semantic Release" #: ../../package-structure-code/python-package-versions.md:299 msgid "Follows semver versioning closely" -msgstr "" +msgstr "Segue de perto o versionamento semver" #: ../../package-structure-code/python-package-versions.md:300 msgid "" @@ -5417,10 +7262,13 @@ msgid "" " troubleshooting and ensure a cleaner and more self-describing git " "history." msgstr "" +"Obriga os mantenedores a usar mensagens de commit descritivas, o que pode " +"simplificar a resolução de problemas e garantir um histórico do git mais " +"limpo e autoexplicativo." #: ../../package-structure-code/python-package-versions.md:302 msgid "Python Semantic Release cons" -msgstr "" +msgstr "Contras do Python Semantic Release" #: ../../package-structure-code/python-package-versions.md:304 msgid "" @@ -5429,6 +7277,10 @@ msgid "" "specificity in commit messages (NOTE: there are bots that will check git " "commit messages in a repo)" msgstr "" +"Requer uma linguagem de commit muito específica para funcionar. Na prática, " +"alguns mantenedores e contribuidores podem não conseguir manter esse nível " +"de especificidade nas mensagens de commit (NOTA: há bots que verificam as " +"mensagens de commit do git em um repositório)" #: ../../package-structure-code/python-package-versions.md:305 msgid "" @@ -5436,9 +7288,15 @@ msgid "" "GitHub based release workflow as the wrong commit message could trigger a" " release." msgstr "" +"O release acontece na linha de comando. Isso torna mais difícil implementar " +"um fluxo de trabalho de release baseado no GitHub, pois a mensagem de " +"commit errada poderia disparar um release." #: ../../package-structure-code/python-package-versions.md:306 msgid "" "The version number is manually updated in a configuration file such as " "`pyproject.toml` vs. in a package **\\_version.py** file." msgstr "" +"O número de versão é atualizado manualmente em um arquivo de configuração " +"como o `pyproject.toml`, em vez de em um arquivo **\\_version.py** do " +"pacote."