Skip to content

Commit 01311ba

Browse files
committed
don't install everything on lint step
1 parent 9d4e989 commit 01311ba

6 files changed

Lines changed: 40 additions & 19 deletions

File tree

.github/workflows/ci.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ jobs:
2323
cache-dependency-glob: "uv.lock"
2424
- name: Set up Python ${{ env.PYTHON_VERSION }}
2525
run: uv python install ${{ env.PYTHON_VERSION }}
26-
- name: Install dependencies
27-
run: uv sync --extra test --frozen
26+
- name: Install lint dependencies
27+
run: uv sync --only-group lint --frozen
2828
- name: Lint
2929
run: make check
3030

@@ -52,7 +52,7 @@ jobs:
5252
- name: Install dependencies and run core tests
5353
run: |
5454
sudo apt-get update && sudo apt-get install --yes poppler-utils libreoffice
55-
uv sync --extra test --frozen
55+
uv sync --group test --frozen
5656
make install-pandoc
5757
make install-nltk-models
5858
sudo add-apt-repository -y ppa:alex-p/tesseract-ocr5
@@ -114,6 +114,6 @@ jobs:
114114
df -h
115115
- name: Test Dockerfile
116116
run: |
117-
uv sync --extra test --frozen
117+
uv sync --group test --frozen
118118
make docker-build
119119
make docker-test

.github/workflows/docker-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ jobs:
8282
- name: Set up Python ${{ env.PYTHON_VERSION }}
8383
run: uv python install ${{ env.PYTHON_VERSION }}
8484
- name: Install test dependencies
85-
run: uv sync --extra test --frozen
85+
run: uv sync --group test --frozen
8686
- name: Test image
8787
run: |
8888
export DOCKER_IMAGE="$DOCKER_BUILD_REPOSITORY:${{ matrix.arch }}-$SHORT_SHA"

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@
88
* Use `.python-version` file as single source of truth for Python version across all CI workflows
99
* Re-enable arm64 Docker image builds using a dedicated ARM runner (`opensource-linux-arm64-4core`), restoring multiarch support for both amd64 and arm64
1010
* Switch all CI workflows to faster self-hosted runners (`opensource-linux-8core`)
11+
* Split lint tools into a lightweight dependency group so the CI lint step no longer installs heavy runtime dependencies
12+
* Add explicit dependencies for `backoff`, `pandas`, `psutil`, `pypdf`, and `requests` (previously only transitive via `unstructured[all-docs]`)
13+
* Pre-download NLTK models before parallel test runs to prevent race conditions
14+
* Parallelize Docker smoke tests with pytest-xdist
15+
* Remove unused `ARCH` variable from Makefile
1116

1217
## 0.0.93
1318
* Refactored the Dockerfile to use the chainguard/wolfi-base image instead of the unstructured/base-image. This is to align with the recent change in the unstructured repo where the same change was made.

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ install-base-packages:
2525

2626
.PHONY: install-test
2727
install-test:
28-
uv sync --extra test --frozen
28+
uv sync --group test --frozen
2929

3030
.PHONY: install-nltk-models
3131
install-nltk-models:

pyproject.toml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,14 @@ dependencies = [
1414
"requests >=2.32.0, <3.0.0",
1515
]
1616

17-
[project.optional-dependencies]
18-
test = [
17+
[dependency-groups]
18+
lint = [
1919
"ruff >=0.15.0, <1.0.0",
2020
"mypy >=1.19.1, <2.0.0",
2121
"types-requests >=2.32.4, <3.0.0",
22+
]
23+
test = [
24+
{include-group = "lint"},
2225
"pytest >=9.0.2, <10.0.0",
2326
"pytest-cov >=7.0.0, <8.0.0",
2427
"pytest-mock >=3.15.1, <4.0.0",

uv.lock

Lines changed: 24 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)