Source dependency being satisfied with unwanted newer version

Asked by Trevor North

Hi,

The PPA in question is:
blubolt/preciseplatform

This has a successful published build of:
qt4-x11 (4:4.8.0+wkhtmltopdf1-3~precise1)

And an unsuccessful build of:
qtwebkit-source (2.0.2+wkhtmltopdf1-1~precise1)

qtwebkit-source has exact build dependencies as follows:
libqt4-dev (= 4:4.8.0+wkhtmltopdf1-3~precise1)
libqt4-opengl-dev (= 4:4.8.0+wkhtmltopdf1-3~precise1)

Both of these have been built and published successfully in the PPA, however when the dependencies are calculated and installed the newer versions available for precise (4:4.8.1-0ubuntu4.1) are being selected instead of the exact versions requested.

I would expect the exact versions which are available and published in the PPA to be used to satisfy the build dependencies.

I could work around this by artificially bumping the version but would really rather not as this sounds like a bug to me.

Regards,
Trevor

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Martin Packman
Solved:
Last query:
Last reply:
Revision history for this message
Martin Packman (gz) said :
#1

There are currently pending builds on the qtwebkit-source package, did you change something and are trying again?

Revision history for this message
Trevor North (trevor) said :
#2

I've not touched or uploaded anything, so I presume that's an automatic retry?

Revision history for this message
Trevor North (trevor) said :
#3
Revision history for this message
Best Martin Packman (gz) said :
#4

So, the short answer is just not how Debian packaging works, unlike other systems it does not promise to keep every version ever of every package and give you the exact one you want, instead the onus is on the packagers to maintain compatibility across versions.

Although = does exist as an option, it's really only for use within a source package that supplies multiple binary packages, when the code would always be in sync. Using it like you've had here pretty much ensures that as soon as a minor update to the dependency lands, your package becomes uninstallable (and that people who already have it don't get the security update without breaking).

If you want more help unders with general packaging problems, you can try #ubuntu-devel on freenode.

Revision history for this message
Trevor North (trevor) said :
#5

Thanks Martin Packman, that solved my question.