diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 1e59a002e..29d19993a 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -52,7 +52,7 @@ jobs: matrix: format: [ html, latex, epub ] steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: fetch-depth: 5 @@ -70,6 +70,10 @@ jobs: - name: setup run: ./scripts/setup.sh + - name: Install APT dependencies + if: matrix.format == 'latex' + run: sudo apt update -y && sudo apt install librsvg2-bin -y + - name: Add problem matcher uses: sphinx-doc/github-problem-matcher@v1.1 @@ -99,14 +103,14 @@ jobs: - name: Upload artifact - log files if: always() && steps.build.outcome == 'failure' - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v7 with: name: logs-${{ inputs.version }}-${{ matrix.format }} path: logs/* - name: Upload artifact - docs if: always() && steps.build.outcome == 'success' - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v7 with: name: python-docs-pt-br-${{ inputs.version }}-${{ matrix.format }} path: cpython/Doc/build/${{ matrix.format }} @@ -117,13 +121,13 @@ jobs: runs-on: ubuntu-latest needs: [ 'build' ] steps: - - uses: actions/download-artifact@v6 + - uses: actions/download-artifact@v8 with: name: python-docs-pt-br-${{ inputs.version }}-latex - run: sudo apt-get update - run: sudo apt-get install -y latexmk texlive-xetex fonts-freefont-otf xindy texlive-lang-portuguese - run: make - - uses: actions/upload-artifact@v5 + - uses: actions/upload-artifact@v7 if: always() with: name: python-docs-pt-br-${{ inputs.version }}-pdf @@ -135,7 +139,7 @@ jobs: name: Lint translations runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: fetch-depth: 5 @@ -182,7 +186,7 @@ jobs: - name: Upload artifact - log files if: always() && steps.lint.outcome == 'failure' - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v7 with: name: ${{ inputs.version }}-lint-logs path: logs/* @@ -195,7 +199,7 @@ jobs: name: Check for zero-width space characters runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: ref: ${{ inputs.version }} diff --git a/.github/workflows/python-310.yml b/.github/workflows/python-310.yml index 528e1d252..2cb3a2d71 100644 --- a/.github/workflows/python-310.yml +++ b/.github/workflows/python-310.yml @@ -3,7 +3,7 @@ name: python-310 on: workflow_dispatch: schedule: - - cron: '0 0 * * *' + - cron: '15 0 * * *' jobs: sync: diff --git a/.github/workflows/python-311.yml b/.github/workflows/python-311.yml index d94ec6867..a62785b3d 100644 --- a/.github/workflows/python-311.yml +++ b/.github/workflows/python-311.yml @@ -3,7 +3,7 @@ name: python-311 on: workflow_dispatch: schedule: - - cron: '45 23 * * *' + - cron: '0 0 * * *' jobs: sync: diff --git a/.github/workflows/python-312.yml b/.github/workflows/python-312.yml index 84e24aa4d..2b2b26072 100644 --- a/.github/workflows/python-312.yml +++ b/.github/workflows/python-312.yml @@ -3,7 +3,7 @@ name: python-312 on: workflow_dispatch: schedule: - - cron: '30 23 * * *' + - cron: '45 23 * * *' jobs: sync: diff --git a/.github/workflows/python-313.yml b/.github/workflows/python-313.yml index 65672876b..85340a6bd 100644 --- a/.github/workflows/python-313.yml +++ b/.github/workflows/python-313.yml @@ -3,7 +3,7 @@ name: python-313 on: workflow_dispatch: schedule: - - cron: '15 23 * * *' + - cron: '30 23 * * *' pull_request: branches: - main diff --git a/.github/workflows/python-314.yml b/.github/workflows/python-314.yml index 000d02254..d800e9529 100644 --- a/.github/workflows/python-314.yml +++ b/.github/workflows/python-314.yml @@ -3,7 +3,7 @@ name: python-314 on: workflow_dispatch: schedule: - - cron: '0 23 * * *' + - cron: '15 23 * * *' pull_request: branches: - main @@ -17,13 +17,13 @@ jobs: sync: uses: ./.github/workflows/sync.yml with: - tx_project: python-newest + tx_project: python-314 version: 3.14 secrets: inherit check: uses: ./.github/workflows/check.yml needs: sync with: - tx_project: python-newest + tx_project: python-314 version: 3.14 secrets: inherit diff --git a/.github/workflows/python-315.yml b/.github/workflows/python-315.yml new file mode 100644 index 000000000..c1413a42a --- /dev/null +++ b/.github/workflows/python-315.yml @@ -0,0 +1,29 @@ +name: python-315 + +on: + workflow_dispatch: + schedule: + - cron: '0 23 * * *' + pull_request: + branches: + - main + - '3.15' + push: + branches: + - main + - '3.15' + +jobs: + sync: + uses: ./.github/workflows/sync.yml + with: + tx_project: python-newest + version: 3.15 + secrets: inherit + check: + uses: ./.github/workflows/check.yml + needs: sync + with: + tx_project: python-newest + version: 3.15 + secrets: inherit diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index fb5f86c93..7bf2a0c96 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -20,24 +20,23 @@ env: PYDOC_LANGUAGE: pt_BR PYDOC_TX_PROJECT: ${{ inputs.tx_project }} PYDOC_VERSION: ${{ inputs.version }} + PYDOC_LANG_DIR: ${{ inputs.version }} TX_CLI_VERSION: '1.6.17' jobs: sync: runs-on: ubuntu-latest + permissions: + contents: read steps: # 1- Set up environment - name: Check out this repository - uses: actions/checkout@v5 - - - name: Set language dir variable - run: - echo "PYDOC_LANG_DIR=${{ env.PYDOC_VERSION }}" >> $GITHUB_ENV + uses: actions/checkout@v6 - name: Checkout this repository ${{ env.PYDOC_VERSION }} - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: ref: ${{ env.PYDOC_VERSION }} path: ${{ env.PYDOC_LANG_DIR }} @@ -47,7 +46,7 @@ jobs: python-version: ${{ inputs.version }} allow-prereleases: true cache: 'pip' - cache-dependency-path: requirements.txt + pip-install: -r requirements.txt # 2- Install dependencies @@ -59,10 +58,6 @@ jobs: - name: Install APT dependencies run: sudo apt update -y && sudo apt install gettext -y - - name: Install Python dependencies - run: | - pip install -r requirements.txt - # 3- Pull translations - name: Generate updated .tx/config @@ -111,7 +106,53 @@ jobs: env: PYDOC_LANG_DIR: ${{ env.PYDOC_LANG_DIR }} - # 4- Commit and push translations + - name: Upload translation artifacts + uses: actions/upload-artifact@v7 + with: + name: python-${{ env.PYDOC_VERSION }} + path: | + .tx/config + potodo.md + stats.json + *.po + **/*.po + + commit: + runs-on: ubuntu-latest + needs: sync + permissions: + contents: write + steps: + + # 1- Set up environment + + - name: Check out this repository + uses: actions/checkout@v6 + + - name: Checkout this repository ${{ env.PYDOC_VERSION }} + uses: actions/checkout@v6 + with: + ref: ${{ env.PYDOC_VERSION }} + path: ${{ env.PYDOC_LANG_DIR }} + + - uses: actions/setup-python@v6 + with: + python-version: ${{ inputs.version }} + allow-prereleases: true + cache: 'pip' + pip-install: -r requirements.txt + + # 2- Remove PO files and the download files (excluding obsolete) + + - name: Clean PO files + run: find ${{ env.PYDOC_LANG_DIR }} -name '*.po' | xargs -r rm + + - name: Download translation artifacts + uses: actions/download-artifact@v8 + with: + name: python-${{ env.PYDOC_VERSION }} + + # 3- Commit and push changed files depending on the event name - name: Commit run: ./scripts/commit.sh @@ -123,5 +164,3 @@ jobs: run: | cd ./${{ env.PYDOC_LANG_DIR }} git push - - diff --git a/README.rst b/README.rst index 548034df7..8bdf0e847 100644 --- a/README.rst +++ b/README.rst @@ -26,24 +26,33 @@ Maintained versions: - Sync status - Translation progress - Total strings + * - `3.15 `_ + - .. image:: https://github.com/python/python-docs-pt-br/workflows/python-315/badge.svg + :target: https://github.com/python/python-docs-pt-br/actions?workflow=python-315 + - .. image:: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgithub.com%2Fpython%2Fpython-docs-pt-br%2Fraw%2F3.15%2Fstats.json&query=completion&label=pt_BR + :alt: Brazilian Portuguese translation status for Python 3.15 + :target: https://app.transifex.com/python-doc/python-newest/ + - .. image:: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgithub.com%2Fpython%2Fpython-docs-pt-br%2Fraw%2F3.15%2Fstats.json&query=entries&label=3.15 + :alt: Total strings for Python 3.15 + :target: https://app.transifex.com/python-doc/python-newest/ * - `3.14 `_ - .. image:: https://github.com/python/python-docs-pt-br/workflows/python-314/badge.svg :target: https://github.com/python/python-docs-pt-br/actions?workflow=python-314 - .. image:: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgithub.com%2Fpython%2Fpython-docs-pt-br%2Fraw%2F3.14%2Fstats.json&query=completion&label=pt_BR :alt: Brazilian Portuguese translation status for Python 3.14 - :target: https://app.transifex.com/python-doc/python-newest/ + :target: https://app.transifex.com/python-doc/python-314/ - .. image:: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgithub.com%2Fpython%2Fpython-docs-pt-br%2Fraw%2F3.14%2Fstats.json&query=entries&label=3.14 :alt: Total strings for Python 3.14 - :target: https://app.transifex.com/python-doc/python-newest/ + :target: https://app.transifex.com/python-doc/python-314/ * - `3.13 `_ - .. image:: https://github.com/python/python-docs-pt-br/workflows/python-313/badge.svg :target: https://github.com/python/python-docs-pt-br/actions?workflow=python-313 - .. image:: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgithub.com%2Fpython%2Fpython-docs-pt-br%2Fraw%2F3.13%2Fstats.json&query=completion&label=pt_BR :alt: Brazilian Portuguese translation status for Python 3.13 - :target: https://app.transifex.com/python-doc/python-newest/ + :target: https://app.transifex.com/python-doc/python-313/ - .. image:: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgithub.com%2Fpython%2Fpython-docs-pt-br%2Fraw%2F3.13%2Fstats.json&query=entries&label=3.13 :alt: Total strings for Python 3.13 - :target: https://app.transifex.com/python-doc/python-newest/ + :target: https://app.transifex.com/python-doc/python-313/ * - `3.12 `_ - .. image:: https://github.com/python/python-docs-pt-br/workflows/python-312/badge.svg :target: https://github.com/python/python-docs-pt-br/actions?workflow=python-312 diff --git a/requirements.txt b/requirements.txt index 04f125b84..23aaf5bae 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ polib==1.2.0 -pomerge==0.1.4 -potodo==0.31 +pomerge==0.2.1 +potodo==0.35 powrap==1.0.2 sphinx-intl==2.3.2 -sphinx-lint==1.0.1 +sphinx-lint==1.0.2 diff --git a/scripts/commit.sh b/scripts/commit.sh index a5c5d742d..21130ca08 100755 --- a/scripts/commit.sh +++ b/scripts/commit.sh @@ -16,8 +16,8 @@ extra_files=".tx/config stats.json potodo.md" set +u if [ -n "${CI+x}" ]; then - git config user.email "github-actions[bot]@users.noreply.github.com" - git config user.name "github-actions[bot]" + git config user.email "41898282+github-actions[bot]@users.noreply.github.com" + git config user.name "github-actions" fi set -u