Skip to content

fix: preserve legacy path bytes and repair tag, tree and ref edge cases #486

fix: preserve legacy path bytes and repair tag, tree and ref edge cases

fix: preserve legacy path bytes and repair tag, tree and ref edge cases #486

Workflow file for this run

name: Dependency packages
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
test:
runs-on: ${{ matrix.os || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
project: [smmap, gitdb]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.13t"]
include:
# setup-python has no builds of these versions for Ubuntu 26.04.
- python-version: "3.8"
os: ubuntu-24.04
- python-version: "3.9"
os: ubuntu-24.04
env:
PROJECT: ${{ matrix.project }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
persist-credentials: false
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Install test dependencies
run: |
python -m pip install --upgrade pip
python -m pip install pytest flake8 ./smmap
if test "$PROJECT" = gitdb; then python -m pip install ./gitdb; fi
- name: Lint
run: flake8 "$PROJECT/$PROJECT" --count --select=E9,F63,F7,F82 --show-source --statistics
- name: Test
run: |
if test "$PROJECT" = gitdb; then
GITDB_TEST_GIT_REPO_BASE="$(git rev-parse --git-common-dir)" pytest -o addopts= -v gitdb/gitdb/test
else
pytest -o addopts= -v smmap/smmap/test
fi
uv-sync:
runs-on: ubuntu-slim
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install uv
uses: astral-sh/setup-uv@1c37ad07a6a961277cf70c0d37d6f313000f5884 # v10.3.0
with:
enable-cache: false
version: "0.12.13" # Released on 2026-09-10
# Ensure that dependencies and dependency groups are consistent and resolvable.
- run: uv sync --all-extras --all-groups --dry-run