Bug 822412 - python-poppler-qt4 doesn't build with poppler-0.20.0
python-poppler-qt4 doesn't build with poppler-0.20.0
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: python-poppler-qt4 (Show other bugs)
rawhide
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Brendan Jones
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-17 05:49 EDT by Marek Kašík
Modified: 2013-03-26 12:43 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-03-26 12:40:16 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
minimal fix of compiling of python-poppler-qt4 with poppler-0.20.0 (11.16 KB, patch)
2012-05-18 08:05 EDT, Marek Kašík
no flags Details | Diff
setup.py patched with patch of Marek from comment 5 (4.81 KB, text/plain)
2012-09-14 15:42 EDT, Jogchum Reitsma
no flags Details
The rejection file from applying Marek's patch (comment #5) to setup.py (9.96 KB, text/x-reject)
2012-09-14 15:43 EDT, Jogchum Reitsma
no flags Details

  None (edit)
Description Marek Kašík 2012-05-17 05:49:02 EDT
Description of problem:
python-poppler-qt4 fails when built with new poppler-0.20.0.


Version-Release number of selected component (if applicable):
python-poppler-qt4-0.16.2-3
Comment 1 Rex Dieter 2012-05-17 10:58:17 EDT
I don't see any build attempts in koji.  
I assume this conclusion was based on some private or scratch build(s)?
Comment 2 Rex Dieter 2012-05-17 11:10:46 EDT
Here's a scratch build so we have some logs to go from:
http://koji.fedoraproject.org/koji/taskinfo?taskID=4083843

first failure appears to be some api change :

build/temp.linux-x86_64-2.7/sippopplerqt4QLinkedList0100PopplerAnnotationRevision.cpp: In function 'void assign_QLinkedList_0100Poppler_Annotation_Revision(void*, Py_ssize_t, const void*)':
build/temp.linux-x86_64-2.7/sippopplerqt4QLinkedList0100PopplerAnnotationRevision.cpp:22:34: error: 'Revision' is not a member of 'Poppler::Annotation'
Comment 3 Marek Kašík 2012-05-17 11:34:37 EDT
Hi Rex,

I'm sorry for not providing a patch for this yet. If you'll wait I can create one tomorrow.

Regards

Marek
Comment 4 Rex Dieter 2012-05-17 11:40:17 EDT
OK, thanks!
Comment 5 Marek Kašík 2012-05-18 08:05:03 EDT
Created attachment 585394 [details]
minimal fix of compiling of python-poppler-qt4 with poppler-0.20.0

There were some changes in poppler's API so that some publicly available functions became private (constructors of Annotations and store() functions) and some functions and types were removed.
I placed these parts into %If -- %End sections with proper versions.
This patch doesn't solve other API changes, just those which causes compilation problems.

Regards

Marek
Comment 6 Brendan Jones 2012-05-22 03:16:34 EDT
Thanks for the patch.

I've been able to do a scratch build OK and I'll test it with frescobaldi soon.
Comment 7 Rex Dieter 2012-06-21 10:14:04 EDT
ping, it's been awhile, any news?  need help?
Comment 8 Brendan Jones 2012-06-21 10:33:40 EDT
Was waiting for a formal releaed, but have updated rawhide with Marek's patch.
Comment 9 Jogchum Reitsma 2012-09-14 15:36:20 EDT
Hi,

I downloaded the patch of Marek, but the patch (I assumed I could use "patch" for that) left a setup.py.rej, so it did not go all well.

Not surprising, I still get the same error with the new setup.py:

build/temp.linux-x86_64-2.7/sippopplerqt4QLinkedList0100PopplerAnnotationRevision.cpp: In function ‘void assign_QLinkedList_0100Poppler_Annotation_Revision(void*, Py_ssize_t, const void*)’:
build/temp.linux-x86_64-2.7/sippopplerqt4QLinkedList0100PopplerAnnotationRevision.cpp:22:34: error: ‘Revision’ is not a member of ‘Poppler::Annotation’

Version is

python-poppler-qt4-0.16.2

I will attach the patched setup.py and ,setup.py.rej.
Comment 10 Jogchum Reitsma 2012-09-14 15:42:21 EDT
Created attachment 612978 [details]
setup.py patched with patch of Marek from comment 5
Comment 11 Jogchum Reitsma 2012-09-14 15:43:53 EDT
Created attachment 612979 [details]
The rejection file from applying Marek's patch (comment #5) to setup.py
Comment 12 dentonlt 2012-09-27 22:49:50 EDT
Hi, Jogchum -

I encountered this issue when trying to package python-poppler-qt for TinyCore 4.6 (Linux 3.0.21). Marek's explanation seems to be right in my case - I got this error b/c poppler 0.20+ breaks python-poppler-qt4.

Marek's patch works for me, but took some effort. I have python-poppler-qt4 0.16.2 and patch 2.6.1. Invoking:

patch poppler-annotation.sip /PutMarek'sPatchHere

I got two rejections: one in python-poppler-qt4/setup.py, the other in poppler-qt4.sip.

I patched those two rejections manually and ... voila! python-poppler builds as expected.

Kudos to Marek for the patch. HTH.
Comment 13 Jogchum Reitsma 2012-09-30 14:40:39 EDT
Hi Denton (?),

Thanks for your comment!

I'll +1 the kudo's to Marek, but I'm not yet where I want to be with this one.

I managed to do the manual patches on python-poppler-qt4/setup.py and poppler-qt4.sip too, but the error message remains the same.

I have the same version of python-poppler-qt4, but I'm not sure about the version of the patch - I use the one attached by Marek in this bug report, python-poppler-qt4-0.16.2-poppler-0.20.0.patch, in which I cannot find a version number.
Comment 14 Marek Kašík 2012-10-01 04:23:12 EDT
Hi,

I see the problem now. My script for generating of patches removed lines containing poppler-qt4.sip and setup.py. I'm sorry about that. Fortunately, Brendan identified those 2 files correctly and committed fixed patch to fedora's git (see http://pkgs.fedoraproject.org/cgit/python-poppler-qt4.git/diff/python-poppler-qt4-0.16.2-poppler-0.20.0.patch?id=5f2d065642b5f9f52629c4274af19722b0b6acb1).

Regards

Marek
Comment 15 Rex Dieter 2013-03-26 12:40:16 EDT
closing, per comment #14
Comment 16 Rex Dieter 2013-03-26 12:43:02 EDT
confirmed python-poppler-qt4-0.16.3 upstream release includes the patch used here already too, so future upgrades shouldn't be a problem either.

Note You need to log in before you can comment on or make changes to this bug.