2018-08-04 12:37:38 +00:00
|
|
|
Running img2pdf from source
|
|
|
|
---------------------------
|
|
|
|
|
|
|
|
img2pdf can be run directly from the cloned git repository:
|
|
|
|
|
|
|
|
$ python3 src/img2pdf.py img.jpg -o out.pdf
|
|
|
|
|
|
|
|
Running the testsuite
|
|
|
|
---------------------
|
|
|
|
|
2020-08-03 10:24:41 +00:00
|
|
|
$ pytest
|
2019-01-07 09:41:38 +00:00
|
|
|
|
2018-08-04 12:37:38 +00:00
|
|
|
Making a new release
|
|
|
|
--------------------
|
|
|
|
|
2020-04-05 10:12:30 +00:00
|
|
|
- CHANGES.rst: Add a new entry
|
|
|
|
- setup.py: Bump VERSION
|
|
|
|
- src/img2pdf.py: Bump __version__
|
2018-08-04 12:37:38 +00:00
|
|
|
- Commit:
|
|
|
|
|
2020-04-05 10:12:30 +00:00
|
|
|
$ git add CHANGES.rst setup.py src/img2pdf.py
|
2018-08-04 12:37:38 +00:00
|
|
|
$ git commit -m "release version X.Y.Z"
|
|
|
|
|
|
|
|
- Add git tag:
|
|
|
|
|
2020-04-05 13:10:31 +00:00
|
|
|
$ git tag X.Y.Z -m X.Y.Z
|
2018-08-04 12:37:38 +00:00
|
|
|
|
|
|
|
- Build and upload to pypi:
|
|
|
|
|
2023-11-25 07:00:19 +00:00
|
|
|
$ rm -rf dist/*
|
2019-01-07 09:41:38 +00:00
|
|
|
$ python3 setup.py sdist
|
2023-11-25 07:00:19 +00:00
|
|
|
$ twine upload dist/*
|
|
|
|
|
|
|
|
Using debbisect to find regressions
|
|
|
|
-----------------------------------
|
|
|
|
|
|
|
|
$ debbisect --cache=./cache --depends="git,ca-certificates,python3,
|
|
|
|
ghostscript,imagemagick,mupdf-tools,poppler-utils,python3-pil,
|
|
|
|
python3-pytest,python3-numpy,python3-scipy,python3-pikepdf" \
|
|
|
|
--verbose 2023-09-16 2023-10-24 \
|
|
|
|
'chroot "$1" sh -c "
|
|
|
|
git clone https://gitlab.mister-muffin.de/josch/img2pdf.git
|
|
|
|
&& cd img2pdf
|
|
|
|
&& pytest 'src/img2pdf_test.py::test_jpg_2000_rgba8[internal]"'
|
|
|
|
|
|
|
|
Using debbisect cache
|
|
|
|
---------------------
|
|
|
|
|
|
|
|
$ mmdebstrap --variant=apt --aptopt='Acquire::Check-Valid-Until "false"' \
|
|
|
|
--include=git,ca-certificates,python3,ghostscript,imagemagick \
|
|
|
|
--include=mupdf-tools,poppler-utils,python3-pil,python3-pytest \
|
|
|
|
--include=python3-numpy,python3-scipy,python3-pikepdf \
|
|
|
|
--hook-dir=/usr/share/mmdebstrap/hooks/file-mirror-automount \
|
|
|
|
--setup-hook='mkdir -p "$1/home/josch/git/devscripts/cache/pool/"' \
|
|
|
|
--setup-hook='mount -o ro,bind /home/josch/git/devscripts/cache/pool/ "$1/home/josch/git/devscripts/cache/pool/"' \
|
|
|
|
--chrooted-customize-hook=bash
|
|
|
|
unstable /dev/null
|
|
|
|
file:///home/josch/git/devscripts/cache/archive/debian/20231022T090139Z/
|
|
|
|
|
|
|
|
Bisecting imagemagick
|
|
|
|
---------------------
|
|
|
|
|
|
|
|
$ git clean -fdx && git reset --hard
|
|
|
|
$ ./configure --prefix=$(pwd)/prefix
|
|
|
|
$ make -j$(nproc)
|
|
|
|
$ make install
|
|
|
|
$ LD_LIBRARY_PATH=$(pwd)/prefix/lib prefix/bin/compare ...
|