Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
runs-on: ubuntu-latest
environment:
name: testpypi
url: https://test.pypi.org/project/ccache/${{ needs.test.outputs.version }}/
url: https://test.pypi.org/project/ccache-bin/${{ needs.test.outputs.version }}/
permissions:
id-token: write # trusted publishing
steps:
Expand All @@ -47,7 +47,7 @@ jobs:
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/project/ccache/${{ needs.test.outputs.version }}/
url: https://pypi.org/project/ccache-bin/${{ needs.test.outputs.version }}/
permissions:
contents: write # attach files to the release
id-token: write # trusted publishing and build provenance attestations
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ jobs:
echo "Python wheels of [ccache $upstream](https://ccache.dev/releasenotes.html#_ccache_${upstream//./_}), repackaged unchanged from the [signed upstream binaries](https://github.com/ccache/ccache/releases/tag/v$upstream)."
echo ""
echo '```bash'
echo "pip install ccache==$version"
echo "pip install ccache-bin==$version"
echo '```'
echo ""
echo "The wheels are on [PyPI](https://pypi.org/project/ccache/$version/) and attached below, together with the corresponding ccache source code (\`ccache-$upstream.tar.gz\` and its \`.minisig\` signature)."
echo "The wheels are on [PyPI](https://pypi.org/project/ccache-bin/$version/) and attached below, together with the corresponding ccache source code (\`ccache-$upstream.tar.gz\` and its \`.minisig\` signature)."
echo ""
echo "EOF"
} >> "$GITHUB_OUTPUT"
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ jobs:
x86_64-unknown-linux-musl aarch64-unknown-linux-musl \
x86_64-apple-darwin aarch64-apple-darwin x86_64-pc-windows-msvc
do
echo "ccache==$VERSION" | uv pip compile --quiet --no-header \
echo "ccache-bin==$VERSION" | uv pip compile --quiet --no-header \
--no-index --find-links dist --python-platform "$target" -
done
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
Expand Down Expand Up @@ -123,14 +123,14 @@ jobs:
run: |
python -m venv .venv-pip
if [ "$RUNNER_OS" = Windows ]; then bin=.venv-pip/Scripts; else bin=.venv-pip/bin; fi
"$bin/python" -m pip install --no-index --find-links dist ccache
"$bin/python" -m pip install --no-index --find-links dist ccache-bin
PATH="$PWD/$bin:$PATH" "$bin/python" tests/smoke_test.py --version "$VERSION"
- name: Install with uv and test
shell: bash
run: |
uv venv .venv-uv
if [ "$RUNNER_OS" = Windows ]; then bin=.venv-uv/Scripts; else bin=.venv-uv/bin; fi
uv pip install --python .venv-uv --no-index --find-links dist ccache
uv pip install --python .venv-uv --no-index --find-links dist ccache-bin
PATH="$PWD/$bin:$PATH" "$bin/python" tests/smoke_test.py --version "$VERSION"

test-linux-containers:
Expand Down Expand Up @@ -203,6 +203,6 @@ jobs:
-e SETUP -e PYTHON -e VERSION "$IMAGE" sh -euc '
sh -c "$SETUP"
"$PYTHON" -m venv /tmp/venv
/tmp/venv/bin/python -m pip install --no-index --find-links dist ccache
/tmp/venv/bin/python -m pip install --no-index --find-links dist ccache-bin
PATH="/tmp/venv/bin:$PATH" /tmp/venv/bin/python tests/smoke_test.py --version "$VERSION"
'
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ same wheels.

```bash
python -m venv .venv
.venv/bin/python -m pip install --no-index --find-links dist ccache
.venv/bin/python -m pip install --no-index --find-links dist ccache-bin
PATH="$PWD/.venv/bin:$PATH" .venv/bin/python tests/smoke_test.py --version "$(cat ccache_version.txt)"
```

Expand Down
14 changes: 9 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,28 @@
# ccache-wheel

[![PyPI](https://img.shields.io/pypi/v/ccache?labelColor=454a63&color=007ec6)](https://pypi.org/project/ccache/)
[![PyPI](https://img.shields.io/pypi/v/ccache-bin?labelColor=454a63&color=007ec6)](https://pypi.org/project/ccache-bin/)
[![ci](https://img.shields.io/github/actions/workflow/status/cpp-linter/ccache-wheel/test.yml?branch=main&label=ci&labelColor=454a63)](https://github.com/cpp-linter/ccache-wheel/actions/workflows/test.yml)
[![part of cpp-linter](https://img.shields.io/badge/part%20of-cpp--linter-ffc20a?labelColor=454a63)](https://cpp-linter.github.io/)

[ccache](https://ccache.dev), the C/C++ compiler cache, as Python wheels on PyPI. The wheels
contain the official ccache binaries, unchanged.
[ccache](https://ccache.dev), the C/C++ compiler cache, as Python wheels on PyPI
(`ccache-bin`). The wheels contain the official ccache binaries, unchanged, and install the
`ccache` command.

[Website](https://cpp-linter.github.io/) ·
[PyPI](https://pypi.org/project/ccache/) ·
[PyPI](https://pypi.org/project/ccache-bin/) ·
[ccache manual](https://ccache.dev/manual/latest.html) ·
[Discussions](https://github.com/orgs/cpp-linter/discussions)

## Quick start

```bash
pip install ccache # or: uv tool install ccache
pip install ccache-bin # or: uv tool install ccache-bin
ccache --version
```

The package is called `ccache-bin` because the name `ccache` is not available on PyPI. The
command it installs is still `ccache` (with uvx: `uvx --from ccache-bin ccache --version`).

## Usage

With CMake:
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ requires = ["hatchling>=1.27", "cryptography>=42"]
build-backend = "hatchling.build"

[project]
name = "ccache"
name = "ccache-bin"
description = "ccache, the C/C++ compiler cache, packaged as Python wheels"
readme = "README.md"
license = "GPL-3.0-or-later"
Expand Down
Loading