From 75547f0d808e4e4b4cf2a1571725f532a6f8eff0 Mon Sep 17 00:00:00 2001 From: dunossauro Date: Wed, 16 Oct 2024 15:03:24 -0300 Subject: [PATCH] Adicionando suporte ao python 3.13 nos textos das aulas 1, 10 e 11 --- aulas/01.md | 10 +++++- aulas/10.md | 4 +++ aulas/11.md | 57 ++++++++++++++++++++++++++++++++ aulas/apendices/a_instalacoes.md | 16 ++++----- 4 files changed, 78 insertions(+), 9 deletions(-) diff --git a/aulas/01.md b/aulas/01.md index c07a981d..3f9eb083 100644 --- a/aulas/01.md +++ b/aulas/01.md @@ -72,8 +72,12 @@ Navegue até o diretório onde fará os códigos e exercícios do curso e digite {%set full_version = "3.12.6" %} {%set short_version = 3.12 %} {% include "templates/instalacao.md" %} +=== "Versão 3.13" +{%set full_version = "3.13.0" %} +{%set short_version = 3.13 %} +{% include "templates/instalacao.md" %} -> :warning: Toda a implementação do curso foi feita com o python 3.11 e testada para ser compatível com a versão 3.12. Nesse momento de configuração estão disponíveis as duas versões. Ao decorrer do curso, você pode se deparar com a versão 3.11 fixada no texto. Mas, sinta-se a vontade para alterar para versão 3.12. :warning: +> :warning: Toda a implementação do curso foi feita com o python 3.11 e testada para ser compatível com a versão 3.12 e 3.13. Nesse momento de configuração estão disponíveis as duas versões. Ao decorrer do curso, você pode se deparar com a versão 3.11 fixada no texto. Mas, sinta-se a vontade para alterar para versão 3.12 ou 3.13. :warning: ## Gerenciamento de Dependências com Poetry @@ -129,6 +133,10 @@ Ele criará uma estrutura de arquivos e pastas como essa: {%set full_version = "3.12.3" %} {%set short_version = 3.12 %} {% include "templates/poetry.md" %} +=== "Versão 3.13" +{%set full_version = "3.13.0" %} +{%set short_version = 3.13 %} +{% include "templates/poetry.md" %} Desta forma, temos uma versão do python selecionada para esse projeto e uma garantia que o poetry usará essa versão para a criação do nosso ambiente virtual. diff --git a/aulas/10.md b/aulas/10.md index 70871057..0885756b 100644 --- a/aulas/10.md +++ b/aulas/10.md @@ -62,6 +62,10 @@ Aqui está um exemplo de `Dockerfile` para executar nossa aplicação: {%set full_version = "3.12.3" %} {%set short_version = 3.12 %} {% include "templates/dockerfile.md" %} +=== "Versão 3.13" +{%set full_version = "3.13.0" %} +{%set short_version = 3.13 %} +{% include "templates/dockerfile.md" %} Vamos entender melhor esse último comando: diff --git a/aulas/11.md b/aulas/11.md index 82e9b596..f5b7f59d 100644 --- a/aulas/11.md +++ b/aulas/11.md @@ -88,6 +88,21 @@ As configurações dos workflows no GitHub Actions são definidas em um arquivo with: python-version: '3.12' ``` +=== "Versão 3.13" + ```yaml title=".github/workflows/pipeline.yaml" linenums="1" + name: Pipeline + on: [push, pull_request] + + jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Instalar o python + uses: actions/setup-python@v5 + with: + python-version: '3.13' + ``` Basicamente um arquivo de workflow precisa de três componentes essenciais para serem definidos: @@ -116,6 +131,14 @@ O único step que definimos é a instalação do Python na versão "3.11": with: python-version: '3.12' ``` +=== "Versão 3.13" + ```yaml linenums="8" + steps: + - name: Instalar o python + uses: actions/setup-python@v5 + with: + python-version: '3.13' + ``` Nesse momento, se executarmos um commit do arquivo `.github/workflows/pipeline.yaml` e um push em nosso repositório, um workflow será iniciado. @@ -198,6 +221,23 @@ Para isso, devemos criar um `step` para cada uma dessas ações no nosso job `te - name: Executar testes run: poetry run task test ``` +=== "Versão 3.13" + ```yaml title=".github/workflows/pipeline.yaml" linenums="8" + steps: + - name: Instalar o python + uses: actions/setup-python@v5 + with: + python-version: '3.13' + + - name: Instalar o poetry + run: pipx install poetry + + - name: Instalar dependências + run: poetry install + + - name: Executar testes + run: poetry run task test + ``` Para testar essa implementação no Actions, temos que fazer um commit[^1], para executar o trigger do CI: @@ -252,6 +292,23 @@ Para solucionar esse problema, adicionaremos um passo antes da execução dos te # continua com os passos anteriormente definidos ``` +=== "Versão 3.13" + ```yaml title=".github/workflows/pipeline.yaml" linenums="4" hl_lines="6-7" + jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Copia os arquivos do repositório + uses: actions/checkout@v3 + + - name: Instalar o python + uses: actions/setup-python@v5 + with: + python-version: '3.13' + + # continua com os passos anteriormente definidos + ``` Para testar a execução desse passo faremos um novo commit para triggar o Actions: diff --git a/aulas/apendices/a_instalacoes.md b/aulas/apendices/a_instalacoes.md index 3d352d75..64b651d6 100644 --- a/aulas/apendices/a_instalacoes.md +++ b/aulas/apendices/a_instalacoes.md @@ -48,18 +48,18 @@ Após isso reinicie o shell para que a variável de ambiente seja carregada. Agora, com o pyenv instalado, você pode instalar a versão do python que usaremos no curso. Como descrito na [página de configuração do projeto](../01.md#instalacao-do-python){:target="_blank"}: ```shell title="$ Execução no terminal!" -pyenv install 3.12.3 +pyenv install 3.13.0 ``` A seguinte mensagem deve aparecer na tela: ```{.powershell .no-copy} :: [Info] :: Mirror: https://www.python.org/ftp/python -:: [Downloading] :: 3.12.3 ... -:: [Downloading] :: From https://www.python.org/ftp/python/3.12.3/python-3.12.3-amd64.exe -:: [Downloading] :: To C:\Users\vagrant\.pyenv\pyenv-win\install_cache\python-3.12.3-amd64.exe -:: [Installing] :: 3.12.3 ... -:: [Info] :: completed! 3.12.3 +:: [Downloading] :: 3.13.0 ... +:: [Downloading] :: From https://www.python.org/ftp/python/3.13.0/python-3.13.0-amd64.exe +:: [Downloading] :: To C:\Users\vagrant\.pyenv\pyenv-win\install_cache\python-3.13.0-amd64.exe +:: [Installing] :: 3.13.0 ... +:: [Info] :: completed! 3.13.0 ``` #### Configurando a versão no pyenv @@ -67,7 +67,7 @@ A seguinte mensagem deve aparecer na tela: Agora com versão instalada, devemos dizer ao shim, qual versão será usada globalmente. Podemos executar esse comando: ```shell title="$ Execução no terminal!" -pyenv global 3.12.3 +pyenv global 3.13.0 ``` Esse comando não costuma exibir nenhuma mensagem em caso de sucesso, se nada foi retornado, significa que tudo ocorreu como esperado. @@ -76,7 +76,7 @@ Para testar se a versão foi definida, podemos chamar o python no terminal: ```shell title="$ Execução no terminal!" python --version -Python 3.12.3 #(1)! +Python 3.13.0 #(1)! ``` 1. Responde que a versão correta foi setada!