A Python binding for libpoppler-qt5 that aims for completeness
and for being actively maintained.
Created and currently maintained by Wilbert Berendsen <wbsoft@xs4all.nl>.
Usage:
import popplerqt5
d = popplerqt5.Poppler.Document.load('file.pdf')
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above. NOTE: This is a Python port. Instead of py311-python-poppler-qt5 listed in the above command, you can pick from the names under the Packages section.
python.mk: rename PYTHON_EXT_SUFFIX to PYTHON_TAG, document, etc
EXT_SUFFIX, according to PEP 3149, refers to the full tag and
extension for compiled extension module objects, eg .cpython-311.so,
.cpython-313t.so, etc. We do not use the correct semantic meaning,
and this usage becomes ambiguous and confusing when tags do not
match between bytecode and compiled extension module objects.
Rename our PYTHON_EXT_SUFFIX to PYTHON_TAG to align with PEP 3147's
specification of a magic tag, which consists of implementation name
and shorthand version only. This is meant for bytecode and other
files containing this tag in their filename that do not depend on
a specific Python ABI for the same version. Chase all existing
consumers.
(Only the first 15 lines of the commit message are shown above )
*/*: Add ${PY_SETUPTOOLS} to BUILD_DEPENDS
Fix build when setuptools is removed from RUN_DEPENDS in
Mk/Uses/python.mk.
PR: 270510
Approved by: portmgr (blanket)
graphics/py-python-poppler-qt5: fix build on FreeBSD 13
Patch picked from upstream repo
Fix the build failures on older FreeBSD versions due
to the recently updated graphics/poppler port.
PR: 276263
Reported by: Martin Neubauer <m.ne@gmx.net> (maintainer)
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++
-DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable
-Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong
-fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi
-Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings
-Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x
-MT _quickfix_la-QuickfixPython.lo -MD -MP -MF
.deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o
.libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
'-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>
PyQt: Update to latest versions
- PyQt5: update to 5.15.9
- PyQt6: upate to 6.4.2
- PyQt6-sip: update to 13.4.1
- PyQt5-sip: update to 12.11.1
- PyQt-builder: update to 1.14.1
- sip: upate to 6.7.7
PR: 269751
Exp-run by: antoine
Mk/Uses: always use colon for build/run suffix
Most USES use a colon for build/run(/test) suffixes. Change kde.mk,
qt.mk and pyqt.mk to do the same, and update all ports using that.
Document in CHANGES.
PR: 266034
Exp-run by: antoine
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D36349
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
PyQt: Update sip to 6.5.0, reintroduce sip4 and simplify PyQt framework.
SIP:
As mentioned in the update from sip to sip5, this is a transitional version
to remove what is deprecated in sip4.
Sip6 completely removes the deprecated parts.
Unfortunately, some ports — mostly cura things — can not use sip6, so we
reintroduce sip4.
PyQt:
At the same time, we took the opportunity to simplify PyQT and propose only one
package as for devel/pyside2. */py-qt5-* have been merged — excepted chart,
networkauth and webengine — into devel/py-qt5-pyqt.
This allows us to be in adequacy with the packages that the author of these
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.12
Release 21.12.0:
core:
* Add API to add images
* CairoOutputDev: Fix de-duping of Flate images
* Fix crash on broken files when using non-default
ENABLE_ZLIB_UNCOMPRESS. Issue #393
* Minor code improvements
glib:
* Add API for validation of signatures
* Add API to read/save to file descriptor
utils:
* pdftohtml: Reduce sensitivity of duplicate detection. Issue #1117
build system:
* Increase C++ standard to 17
Exp-run by: antoine
PR: 260344
graphics/py-python-poppler-qt5: limit supported python verions
With python 3.6:
/usr/local/lib/qt5/bin/qmake -query
sip-build: An internal error occurred...
Traceback (most recent call last):
File "/usr/local/bin/sip-build", line 33, in <module>
sys.exit(load_entry_point('sip==5.5.0', 'console_scripts', 'sip-build')())
File "/usr/local/lib/python3.6/site-packages/sipbuild/tools/build.py", line
37, in main
handle_exception(e)
File "/usr/local/lib/python3.6/site-packages/sipbuild/exceptions.py", line 81,
in handle_exception
raise e
File "/usr/local/lib/python3.6/site-packages/sipbuild/tools/build.py", line
33, in main
"Build the project in-situ.")
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.08.0
Release 21.08.0:
core:
* Add API to allow addition and modification of outlines into a PDF
* Use additional samples to test for constant parts of an axial
gradient
* forms: Create fallback fonts for some well known font names
* Support reading the PDF Version from the Catalog
* Fix XRef::copy when there are modified objects
* Take into account that Date string may be in unicode
* JBIG2Stream: Fix regression in "Do not consider a size-0 to be an
error"
* Replace a local bubble sort implementation by std::sort
* Fix issues with malformed files
build system:
(Only the first 15 lines of the commit message are shown above )
misc/qtchooser: remove
QtChooser allows you to select your version of Qt among those installed.
However, this tool is no longer supported upstream and will not be
available for Qt6.
By default, our Qt installations are done in
${LOCALBASE}/lib/qt${QT_VERSION} as recommended.
We have added symbolic linking for the main binaries to
${LOCALBASE}/bin with the suffix -qt5.
graphics/mesa-libs: Bump reverse deps for libglvnd
Per discussion with bapt on helping pkg handle the changing of these
deps and avoiding impossible upgrade senarios.
PR: 246767
Reviewed by: manu, bapt
Approved by: x11
Differential Revision: https://reviews.freebsd.org/D30824
graphics/poppler: update to 21.06.0
Release 21.06.0:
core:
* Fix rendering of some extended latin1 characters in annotations.
Issue #1070
* Support some not so well formed documents with password. Issue #1083
* Add API to get notified if the xref is reconstructed
* Add somewhat fancier left/right signature visual representation
* Fix crashes in malformed files
* Minor code improvements
qt6:
* Change some functions to return std::unique_ptr
qt5/qt6:
(Only the first 15 lines of the commit message are shown above )
Mk: switch PYTHON_REL to 5 digits to support python 3.10.x
PR: 255013
Differential Revision: https://reviews.freebsd.org/D29418
Exp-run by: antoine
Approved by: wen@, no objection from python@ or portmgr@
graphics/py-python-poppler-qt5: Fix packaging with Python 3.8 and onward
* Add a workaround to make the transition from Python 3.7 to Python 3.8
possible because the name of the .so file is slightly different between
the two releases.
* Use PYTHONPREFIX_SITELIBDIR instead PYTHON_SITELIBDIR to make the
port PREFIX safe.
* Also add "gl" to USE, introduce USE_{GL,QT} to fix stage QA issues and pet
portclippy by sorting the entries of USE_PYQT as well. [1]
PR: 254427
Submitted by: <m.ne@gmx.net> (maintainer) [1]
Approved by: <m.ne@gmx.net> (maintainer)
PyQt5: Update PyQt5 to 5.15.3, QScintilla2 to 2.12.0, py-qtbuilder to 1.9.0
* PyQt5: update to 5.15.3
This is a minor feature and bug-fix release. There are corresponding releases of
the other PyQt5-related packages.
- Added the missing QImage.setAlphaChannel().
- Support for the QtNetworkAuth library has been moved to a separate
PyQtNetworkAuth package.
- Wheels no longer bundle the corresponding Qt libraries and instead
automatically install them from an external wheel.
* QScintilla2: update to 2.12.0
This adds support for Qt6 and removes support for Qt4.
- Change the new distname (again)i due to a conflict
- Use the new sip-build system
* devel/py-qtbuilder: update to 1.9.0
* devel/py-sip: fix flavor for sip-distinfo
PR: 253865
Exp-run by: antoine
graphics/poppler: update to 21.02
Release 21.02.0:
core:
* GfxCal*ColorSpace: introduce Bradford transform for chromatic
adaptation
* Fix memory leak if saving the file fails
* Internal code improvements
* Fix various issues handling broken files
* Make checkedAdd work for long long in MSVC
qt5:
* Properly export NewSignatureData class
* Fix regression in QIODeviceOutStream + MSVC
qt6:
* Properly export NewSignatureData class
* Fix regression in QIODeviceOutStream + MSVC
utils:
* pdftohtml: Fix error() parameter type
PR: 253183
Exp-run by: antoine
Update Qt/PySide2 to 5.15.2 / PyQt to 5.15.1 / SIP to 5.4.0
This commit combines several updates.
- Update Qt to 5.12.2
- Update PyQt to 5.15.1
- Since PySide 5.15.1 is broken with Qt 5.15.2, so PySide and Shiboken are also
updated to 5.15.2.
- Update sip to 5.4.0
SIP is a collection of tools to create Python bindings for C and C++ libraries
and used by PyQt and wxPython. There are some changes with sip5 [1]:
- python 3.5+ is required
- sip drops support of old deprecated methods as sipdistutils & cie.
- this version breaks also PyQt5 extension ABI. SIP files will be installed in
${PYTHON_SITELIBDIR}/PyQt${_PYQT_VERSION}/bindings
- some ports will use the new pyqtbuilder package with the pyproject.toml setup.
Instead if the project have a setup.py, you should use sip-build to build it.
- if a port needs sip, it should also needs pysip. BTW, py-qt5-core requires
pysip, so that should be enough for PyQt packages.
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 20.11.0
Release 20.11.0:
core:
* More work on rendering of standalone Annot Widgets. Issue #806
* Fix crashes in embedded file handling on broken files. Issue #967
* Fix uninitialized memory read on broken files
* Save a bit of memory in Dict data
cpp:
* Fix crashes in embedded file handling on broken files. Issue #966
utils:
* pdftohtml: HTML and XML output includes font opacity.
(Only the first 15 lines of the commit message are shown above )
Update PyQt to 5.15.0, py-sip to 4.19.24 and qscintilla2 to 2.11.5
- Update PyQt to 5.15.0, py-sip to 4.19.24 and qscintilla2 to 2.11.5
- Use pypi for PYQT [1]
- Add devel/py-qt5-sip (Don't use it for now. It will be used in future updates
of PyQt with py-sip >= 5)
- Add missing py-qt5 ports: comms/py-qt5-sensors, devel/py-qt5-location,
devel/py-qt5-remoteobjects, net/py-qt5-networkauth
- Strip libs
- Refactor *_PATH and *_PORT parts
[1] RiverBankComputing doesn't offer links to download latest version of some
ports
PR: 247369
Reviewed by: tcberner
Differential Revision: https://reviews.freebsd.org/D25749
Exp-run by: antoine
graphics/poppler: update to 20.09.0
Release 20.09.0:
core:
* Compability fix for Forms
* Fix fetching of Objects failing in some cases
* Fix clearing date in Annot setModified/setDate
* TextSelectionPainter: support glyphless fonts
* Splash: Don't try read past end of image
* avoid abort() on large memory allocation
* Fix memory leak on broken files
* Fix potential invalid memory read
* Small code improvements
qt5:
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.90
Release 0.90.0:
core:
* Color profile tweaks
* Small signature improvements
* BBoxOutputDev: Fix calculation when type3 fonts are involved
* Fix potential crash when reading Forms
* Fix infinite loop in broken file
glib:
* Fix adding annots in rotated pages
* Add ability to reset forms
* Several fixes to the documentation
qt5:
* Make it clear we require Qt 5.5
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.89.0
Release 0.89.0:
core:
* Add support for ResetForm action. Issue #225
* Fix crash in PDFDoc::getSignatureFields when there's no Forms at all
* Fix exporting to PS of some files with CID fonts
* Use ICC profiles in PS output (if new enough lcms is used)
* Allow almost-singular tiling pattern matrices. Issue #894
* Fix memory leak when failing to load some fonts
* CairoOutputDev: Use stroke opacity when clipping to a stroke path
* CairoOutputDev: Fix tiling patterns when pattern cell is too far.
Issue #190
glib:
* Add poppler_movie_get_aspect
cpp:
* Add the font infos to the text_box object
Exp-run by: antoine
PR: 246848
graphics/poppler: update to 0.88.0
Release 0.88.0:
core:
* Support Widget Annotation Buttons not linked to any Form
* SplashOuputDev: Use stroking opacity when clipping to a stroke path
* Handle 1 bit RGB images in ICC colorspace
* Internal code improvements
qt5:
* Add Document::signatures. Returns signatures not attached to any page
* ArthurOutputDev: Fix font hinting
* ArthurOutputDev: Set the opacity when filling with axial gradients
* ArthurOutputDev: Implement the clipToStrokePath method
(Only the first 15 lines of the commit message are shown above )
graphics/py-python-poppler-qt5: Update GitHub repository
Moved from a personal to a project's account.
No contents changed.
PR: 245775
Submitted by: m.ne@gmx.net (maintainer)
Update py-sip to 4.19.21 and qscintilla2 to 2.11.4
- Update py-sip to 4.19.21
- Update qscintilla2 to 2.11.4
- Replace MASTER_SITE_RIVERBANK with https versions
- Replace QSCI2_DISTNAME to match with the new one
PR: 245308
Approved by: tcberner (mentor)
Exp-run by: antoine
graphics/poppler: update to 0.87.0
Release 0.87.0:
core:
* Fix crashes due to inconsistent vtables for Clang builds
* Fix leak in broken files
* Internal code improvements
qt5:
* Add option to get form choice for export value
* ArthurOutputDev: Avoid division by zero in updateLineDash. Issue #695
glib:
* Internal code improvements
utils:
* pdftohtml: Fix memory leak in HtmlOutputDev::getLinkDest
PR: 245150
Exp-run by: antoine
graphics/poppler: update to 0.84.0
Release 0.84.0:
core:
* Fix crash when converting from Unicode to ASCII-7
* Splash::scaleImageYdXu: Protect against crash if srcWidth is too big
* JBIG2Stream: fix potential crash in malformed documents
* JBIG2Stream: fix leak in reset() if called several times
* Internal code improvements
utils:
* pdfimages: Add error message if first page is larger then number of
pages.
* pdfinfo: Improved paper size recognition
* pdfsig: Fix exit code when dumping signatures
* pdftocairo: Error out when even/odd selects 0 pages
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.82.0
Release 0.82.0:
core:
* Fix not being able to open some files. Issue #832
* Fix crashes in malformed files
* Fix memory leak on broken files
* Minor performance improvements
* Minor code improvements
glib:
* Add poppler_document_new_from_bytes
* PopplerAttachment: Silence deprecation warnings for ctime/mtime
build system:
* pdf-inspector: Support builddir != srcdir
* Install Cairo* headers if Cairo has been found
Thanks to adridg@ for fixing all the fallout.
Exp-run by: antoine
PR: 241532
Approved by: gnome (kwm, implicit)
graphics/poppler: update to 0.80.0
Release 0.80.0:
core:
* Annotations: Implement support for setting a different text in the appearance
stream than the real text
* Splash: Optionally use small_vector from boost
* Fix memory leaks on broken files
* Fix abort on broken files
* Small code simplifications
* Remove USE_FIXEDPOINT support. Issue #821
qt5:
* Fix MSVC build
* Add subsitute-font information
* Fix since marker of some functions
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.79.0
Release 0.79.0:
core:
* Fix regression on TextSelectionPainter
* Fix parsing of DefaultAppearance
* Fix memory leak in PostScriptFunction
* Fix crashes in fuzzed files
qt5:
* Implemented support for setIcon by changing appearance
* Added option to set the form available to print
* QString::null is deprecated, use QString()
* Replace deprecated qStableSort with std::stable_sort
build system:
* Turn README into README.md and expand it
PR: 239277
Exp-run by: antoine
Approved by: gnome (kwm, implicit)
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
graphics/poppler: update to 0.78.0
Release 0.78.0:
core:
* Fix line annotation arrows for usage in dimensioning
* Handle Ink annots without an InkList but with an AP
* Fix typos preventing parsing of Movie start and duration
* Fix crash on malformed files
glib:
* Add poppler_document_create_dests_tree()
* Don't use the deprecated g_type_class_add_private()
* Document the differences between render() and render_for_printing()
* Fix introspection for poppler_document_new_from_data
* Don't create PopplerInputStream with length 0. Issue #414
(Only the first 15 lines of the commit message are shown above )
Fix Qt5 symbol version scripts to put the catch-all clause first. When
a symbol matches multiple clauses the last one takes precedence. If the
catch-all is last it captures everything. In the case of Qt5 libraries
this caused all symbols to have a Qt_5 label while some should have
Qt_5_PRIVATE_API. This only affects lld because GNU ld always gives the
catch-all lowest priority.
Older versions of Qt5Webengine exported some memory allocation symbols from
the bundled Chromium. Version 5.9 stopped exporting these [1] but the
symbols were kept as weak wrappers for the standard allocation functions to
maintain binary compatibility. [2][3] The problem is that the call to the
standard function in these weak wrappers is only resolved to the standard
function if there's a call to this standard function in other parts of
Qt5Webengine, because only then is there a non-weak symbol that takes
precedence over the weak one. If there's no such non-weak symbol the call
(Only the first 15 lines of the commit message are shown above )