Skip to content

Build WinPython Dot 3.13.6, #14

Build WinPython Dot 3.13.6,

Build WinPython Dot 3.13.6, #14

name: Build WinPython Dot 3.13, # fix to build #5, Copilote AI pwsh was not a so good idea
on:
workflow_dispatch:
jobs:
build-dot:
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download python-3.13 standalone
#shell: cmd
run: |
#curl -L -o python-3.13-embed.zip https://github.com/indygreg/python-build-standalone/releases/download/20240421/cpython-3.13.0b1+20240421-x86_64-pc-windows-msvc-shared-install_only.zip
curl -L -o python-3.13-embed.zip https://github.com/astral-sh/python-build-standalone/releases/download/20250807/cpython-3.13.6+20250807-x86_64-pc-windows-msvc-install_only_stripped.tar.gz
- name: Show downloaded file info
shell: pwsh
run: |
Get-Item python-3.13-embed.zip | Format-List Name,Length,LastWriteTime
- name: Wait before extraction
shell: pwsh
run: |
Start-Sleep -Seconds 2
- name: Extract python-3.13-embed.zip
#shell: pwsh
run: |
#New-Item -ItemType Directory -Path dotpython
#Expand-Archive -Path python-3.13-embed.zip -DestinationPath dotpython
mkdir dotpython
tar -xf python-3.13-embed.zip -C dotpython
- name: Copy launchers_final files to dotpython
# enriching things: will need one python to play on the other, so why not there too
#shell: bash
shell: pwsh
run: |
# would run with shell: bash
# cp -r winpython/portable/launchers_final/* dotpython/
if (-not (Test-Path "dotpython")) { New-Item -ItemType Directory -Path "dotpython" | Out-Null }
Copy-Item -Path "winpython/portable/launchers_final/*" -Destination "dotpython/" -Recurse -Force
- name: List dotpython contents (for debugging)
shell: pwsh
run: |
Get-ChildItem -Recurse dotpython
- name: Prepare WinPython target dot structure
shell: pwsh
run: |
New-Item -ItemType Directory -Path WPy64-31351b3
# Get-ChildItem dotpython | Move-Item -Destination WinPython-dot-3.13
# fix: Usually, indygreg zips extract all files directly into the target, not into a subfolder: dotpython/python.exe, dotpython/Lib, etc.
Get-ChildItem -Path dotpython -Force | Move-Item -Destination WPy64-31351b3 -Force
# Add more WinPython-specific folders/files here if needed
- name: try upgrade pip
shell: pwsh
run: |
WPy64-31351b3\python\python.exe -m pip install --upgrade pip
- name: try install download requirements as hashed-requirements
shell: pwsh
run: |
WPy64-31351b3\python\python.exe -m pip download --dest dotpython\wheelhouse --no-deps --require-hashes -r "winpython\portable\cycle_2025_04\requir.64-3_13_5_1dotb3.txt"
WPy64-31351b3\python\python.exe -m pip install --no-deps --no-index --trusted-host=None --find-links=dotpython\wheelhouse --require-hashes -r "winpython\portable\cycle_2025_04\requir.64-3_13_5_1dotb3.txt"
- name: List dotpython contents (for debugging)
shell: pwsh
run: |
Get-ChildItem -Recurse dotpython\wheelhouse
- name: try install requirements as hashed-requirements
shell: pwsh
run: |
WPy64-31351b3\python\python.exe -m pip download --dest dotpython\wheelhouse --no-deps --require-hashes -r "winpython\portable\cycle_2025_04\requir.64-3_13_5_1dotb3.txt"
- name: List WPy64-31351cloudb3 contents (for debugging)
shell: pwsh
run: |
Get-ChildItem -Recurse WPy64-31351b3
#step avoided: upload-artifact will also .zip it (perplexity AI advising)
#- name: Zip the result
# shell: pwsh
# run: |
# Compress-Archive -Path WPy64-31351b3\* -DestinationPath WinPython64-3.13.5.1dotcloudb3.zip
- name: Upload WinPython folder as artifact
uses: actions/upload-artifact@v4
with:
name: WinPython64-3.13.5.1dotcloudb3
path: WPy64-31351b3