build(deps): bump pyicu from 2.13.1 to 2.14 #195
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
- push | |
- pull_request | |
- workflow_dispatch | |
jobs: | |
main: | |
strategy: | |
matrix: | |
include: | |
- python: '3.9' | |
djvulibre: legacy | |
- python: '3.10' | |
djvulibre: legacy | |
- python: '3.11' | |
djvulibre: legacy | |
- python: '3.9' | |
djvulibre: latest | |
- python: '3.10' | |
djvulibre: latest | |
- python: '3.11' | |
djvulibre: latest | |
- python: '3.12' | |
djvulibre: latest | |
- python: '3.13' | |
djvulibre: latest | |
runs-on: ubuntu-latest | |
name: Python ${{ matrix.python }} with djvulibre ${{ matrix.djvulibre }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: apt update | |
run: | |
sudo apt-get update | |
- name: apt install deps | |
run: | |
sudo apt-get install -y | |
djvulibre-bin | |
docbook-xml | |
docbook-xsl | |
libdjvulibre-dev | |
libicu-dev | |
libxml2-utils | |
libxslt1-dev | |
xsltproc | |
- name: apt install OCR packages | |
run: | |
sudo apt-get install -y | |
tesseract-ocr | |
cuneiform | |
ocrad | |
gocr | |
- name: update PIP | |
run: | |
python -m pip install --upgrade pip | |
- name: install wheel | |
run: | |
python -m pip install --upgrade wheel | |
# Cython 3.0 broke the old code. | |
- name: install djvulibre legacy | |
run: | | |
python -m pip install "cython<3" | |
mkdir -p deps/ | |
python -m pip download --dest deps --no-binary python-djvulibre --no-deps python-djvulibre | |
cd deps | |
mkdir -p python-djvulibre/ | |
tar -xvzf python-djvulibre-* --strip-components=1 -C python-djvulibre | |
cd python-djvulibre | |
python setup.py install | |
if: ${{ matrix.djvulibre == 'legacy' }} | |
- name: install djuvlibre master | |
run: | | |
url="https://github.com/FriedrichFroebel/python-djvulibre/archive/python3.tar.gz" | |
mkdir -p deps/ | |
wget "$url" -O deps/python-djvulibre.tar.gz | |
cd deps | |
tar -xvzf python-djvulibre.tar.gz | |
cd python-djvulibre-python3/ | |
python -m pip install . | |
if: ${{ matrix.djvulibre != 'legacy' }} | |
- name: install package | |
run: | |
python -m pip install .[dev,docs] | |
- name: install PyICU | |
run: | |
python -m pip install pyicu | |
- name: install html5lib | |
run: | |
python -m pip install html5lib | |
- name: run tests | |
run: | |
make test | |
- name: determine coverage | |
run: | |
make update-coverage | |
- name: run flake8 | |
run: | |
python -m flake8 . | |
- name: check docs | |
run: | |
make -C doc check | |
- name: build docs | |
run: | |
make -C doc all | |
- name: check whether the executables were installed correctly | |
run: | | |
cd / | |
djvu2hocr --version | |
hocr2djvused --version | |
ocrodjvu --version | |
- name: install man page | |
run: | |
make install_manpage PREFIX=$HOME/.local | |
- name: check whether the man pages were installed correctly | |
env: | |
MANPATH: /home/runner/.local/share/man | |
MANWIDTH: 80 | |
run: | | |
cd / | |
man 1 ocrodjvu | grep -A 10 -w OCRODJVU | |
man 1 djvu2hocr | grep -A 10 -w DJVU2HOCR | |
man 1 hocr2djvused | grep -A 10 -w HOCR2DJVUSED |