diff --git a/.github/workflows/upload_binary.yml b/.github/workflows/upload_binary.yml index 46d92ab2149..39a988752ec 100644 --- a/.github/workflows/upload_binary.yml +++ b/.github/workflows/upload_binary.yml @@ -11,16 +11,20 @@ jobs: fail-fast: false matrix: python-version: [3.7] - os: [ubuntu-16.04, windows-2019] + os: [windows-2019, ubuntu-20.04, macos-latest] include: - os: windows-2019 pathsep: ";" - executable_suffix: ".exe" + asset_name: black_windows.exe executable_mime: "application/vnd.microsoft.portable-executable" - - os: ubuntu-16.04 + - os: ubuntu-20.04 pathsep: ":" - executable_suffix: ".elf" + asset_name: black_linux executable_mime: "application/x-executable" + - os: macos-latest + pathsep: ":" + asset_name: black_macos + executable_mime: "application/x-mach-binary" steps: - uses: actions/checkout@v2 @@ -38,7 +42,7 @@ jobs: - name: Build binary run: | - python -m PyInstaller -F --name black${{ matrix.executable_suffix }} --add-data 'src/blib2to3${{ matrix.pathsep }}blib2to3' src/black/__main__.py + python -m PyInstaller -F --name ${{ matrix.asset_name }} --add-data 'src/blib2to3${{ matrix.pathsep }}blib2to3' src/black/__main__.py - name: Upload binary as release asset uses: actions/upload-release-asset@v1 @@ -46,6 +50,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} - asset_path: dist/black${{ matrix.executable_suffix }} - asset_name: black${{ matrix.executable_suffix }} + asset_path: dist/${{ matrix.asset_name }} + asset_name: ${{ matrix.asset_name }} asset_content_type: ${{ matrix.executable_mime }} diff --git a/CHANGES.md b/CHANGES.md index 603554cd8b7..f795c797bf5 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -13,6 +13,10 @@ - Add a lower bound for the `aiohttp-cors` dependency. Only 0.4.0 or higher is supported. (#2231) +### _Packaging_ + +- Release self-contained macOS binaries as part of the GitHub release pipeline (#2198) + ### Documentation - Fix typos discovered by codespell (#2228)