Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion changes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@ Change Log
==========


**Changes in version 1.26.7**
**Changes in version 1.26.7** (2025-12-11)

* Use MuPDF-1.26.12.

* **Fixed** `4801 <https://github.com/pymupdf/PyMuPDF/issues/4801>`_: Build failure dumping all environment variables

Other:

* Retrospectively mark `4756 <https://github.com/pymupdf/PyMuPDF/issues/4756>`_ as fixed in 1.26.6.
Expand Down
24 changes: 23 additions & 1 deletion pipcl.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ class Package:
... name = 'foo',
... path_i = 'foo.i',
... outdir = 'build',
... source_extra = 'wibble.c',
... )
... return [
... ('build/foo.py', 'foo/__init__.py'),
Expand All @@ -107,8 +108,10 @@ class Package:
...
... def sdist():
... return [
... 'pyproject.toml',
... 'foo.i',
... 'bar.i',
... 'wibble.c',
... 'setup.py',
... 'pipcl.py',
... 'wdev.py',
Expand Down Expand Up @@ -160,6 +163,12 @@ class Package:
>>> with open('pipcl_test/bar.i', 'w') as f:
... _ = f.write( '\\n')

>>> with open('pipcl_test/wibble.c', 'w') as f:
... _ = f.write( '\\n')

>>> with open('pipcl_test/pyproject.toml', 'w') as f:
... pass

>>> with open('pipcl_test/README', 'w') as f:
... _ = f.write(textwrap.dedent("""
... This is Foo.
Expand Down Expand Up @@ -262,6 +271,19 @@ class Package:
>>> so = so[0]
>>> assert os.path.getmtime(so) > t0

Check that touching wibble.c does not run swig, but does recompile/link.

>>> t0 = time.time()
>>> os.utime('pipcl_test/wibble.c')
>>> _ = subprocess.run(
... f'cd pipcl_test && {sys.executable} setup.py bdist_wheel',
... shell=1, check=1)
>>> assert os.path.getmtime('pipcl_test/build/foo.py') <= t0
>>> so = glob.glob('pipcl_test/build/*.so')
>>> assert len(so) == 1
>>> so = so[0]
>>> assert os.path.getmtime(so) > t0

Check `entry_points` causes creation of command `foo_cli` when we install
from our wheel using pip. [As of 2024-02-24 using pipcl's CLI interface
directly with `setup.py install` does not support entry points.]
Expand Down Expand Up @@ -1802,7 +1824,7 @@ def build_extension(

for path_source in [path_cpp] + source_extra:
path_o = f'{path_source}.obj' if windows() else f'{path_source}.o'
path_os.append(f' {path_o}')
path_os.append(path_o)

prerequisites_path = f'{path_o}.d'

Expand Down