on: workflow_call: jobs: run-checks: runs-on: ubuntu-latest strategy: matrix: python-version: ['3.10', '3.11', '3.12'] steps: - uses: actions/checkout@v3 - name: Install tesseract run: sudo apt-get install -y tesseract-ocr tesseract-ocr-eng tesseract-ocr-fra tesseract-ocr-deu tesseract-ocr-spa libleptonica-dev libtesseract-dev pkg-config - name: Set TESSDATA_PREFIX run: | echo "TESSDATA_PREFIX=$(dpkg -L tesseract-ocr-eng | grep tessdata$)" >> "$GITHUB_ENV" - uses: ./.github/actions/setup-poetry with: python-version: ${{ matrix.python-version }} - name: Run styling check run: poetry run pre-commit run --all-files - name: Install with poetry run: poetry install --all-extras - name: Testing run: | poetry run pytest -v tests - name: Run examples run: | for file in examples/*.py; do # Skip batch_convert.py if [[ "$(basename "$file")" == "batch_convert.py" ]]; then echo "Skipping $file" continue fi echo "Running example $file" poetry run python "$file" || exit 1 done - name: Build with poetry run: poetry build