converters: Testkorpus und Harness ziehen nach torben/chemenu-testfiles, Workflow Converters mit Pfad-Trigger, Release-Gate (#232); 10.1.0-beta.2
CI / verify (push) Successful in 7m58s
CI / pwsh (push) Successful in 2m52s
Converters / converters (push) Failing after 1m0s
Release / converters (push) Successful in 27s
Release / release (push) Successful in 37s
Release / wiki-mirror (push) Skipped

Files changed:
- .gitattributes
- .gitea/workflows/converters.yml
- .gitea/workflows/release.yml
- .gitignore
- CHANGES.md
- VERSION
- docs/dev/development.md
- instructions/dev/dev-setup.md
- instructions/dev/publish-and-ci.md
- instructions/dev/testing-conventions.md
- testfiles/README.md
- testfiles/mail/github-outlook.msg
- testfiles/mail/github-roundcube.eml
- testfiles/mail/gog-outlook.msg
- testfiles/mail/gog-roundcube.eml
- testfiles/mail/gog-roundcube.eml.expect
- testfiles/mail/tldr-outlook.msg
- testfiles/mail/tldr-roundcube.eml
- testfiles/office/excel-artificial.xlsx
- testfiles/office/excel-business.xlsx
- testfiles/office/excel-business.xlsx.expect
- testfiles/office/excel-science.xlsx
- testfiles/office/pptx-baseline.pptx
- testfiles/office/pptx-master.pptx
- testfiles/office/pptx-objects.pptx
- testfiles/office/word-complex.docx
- testfiles/office/word-simple.docx
- testfiles/pdf/einstein-dissertation.pdf
- testfiles/pdf/ifg.pdf
- testfiles/pdf/nist-ai-rmf.pdf
- testfiles/pdf/nist-ssdf-genai.pdf
- testfiles/zip/archive.zip
- tools/chemenu/tests/test_raw_derive_testfiles.py

Co-Authored-By: Claude Code <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
This commit is contained in:
torbenandClaude Code committed 2026-10-14 15:05:12 +02:00
1 parent 3bf179ae8c
commit 71170bc1e8
33 files changed
+231 -2517

No files matched your search

+65
View File
@@ -24,6 +24,13 @@
# tag). It is a separate job so that a failing mirror leaves the release and its
# tag standing: the release is the product, the wiki a view of it. It does not
# run for a `-beta.N` candidate, for which `release` sets `skip`.
#
# `converters` is the first job: the converter tests against the real documents of the private
# repository `torben/chemenu-testfiles` (converters.yml has the reasoning and is the reference for
# the steps; the two are kept in step by hand, because this instance's support for calling one
# workflow from another is not something this repository relies on). `release` waits for it with
# `needs:`, so a red harness stops the run before a release or a tag exists. For a candidate it
# decides `skip` the way `release` does and ends after its first steps.
name: Release
@@ -39,7 +46,65 @@ on:
workflow_dispatch:
jobs:
converters:
runs-on: linux-docker
timeout-minutes: 30
container:
image: debian:trixie-slim
env:
WIKITOOL_SESSION_ID: release-converters-${{ github.run_id }}
WIKI_TRACE_DIR: /tmp/wikitool-trace
steps:
- name: System dependencies
run: |
set -eu
apt-get update -qq
apt-get install -y --no-install-recommends \
python3 python3-venv git nodejs ripgrep ca-certificates
rm -rf /var/lib/apt/lists/*
- uses: actions/checkout@v7
- name: A candidate needs no converter run
id: version
run: |
set -eu
case "$(tr -d '[:space:]' < VERSION)" in
*-beta.*)
echo "VERSION is a running candidate - the converter tests run for a release only."
echo "skip=true" >> "$GITHUB_OUTPUT"
;;
*)
echo "skip=false" >> "$GITHUB_OUTPUT"
;;
esac
- name: The private test corpus
if: steps.version.outputs.skip != 'true'
uses: actions/checkout@v7
with:
repository: torben/chemenu-testfiles
token: ${{ gitea.token }}
path: testfiles
- name: Tool environment
if: steps.version.outputs.skip != 'true'
run: |
set -eu
git config --global --add safe.directory "$GITHUB_WORKSPACE"
tools/preflight.sh
tools/.venv/bin/python -m pip install --quiet pytest
- name: Real documents
if: steps.version.outputs.skip != 'true'
run: |
set -eu
cd tools
.venv/bin/python -m pytest -c pytest.ini ../testfiles/harness -q --durations=5
release:
needs: converters
runs-on: linux-docker
container:
image: debian:trixie-slim