Bug#670679: python-debian: deb822 can't parse foreign architecture (package:any) relationships

Stuart Prescott stuart at debian.org
Sat Aug 2 09:02:02 UTC 2014


Hi again

I've had a go at reworking the handling of multiarch qualifiers for Build-
Depends. My objectives here were:

* to support all the different qualifiers that are on the horizon (so :native, 
:i386 etc as well as :any)

* to expose an API similar to dpkg's Deps.pm (or at least using the same 
terminology)

At this stage, I've not exposed any API to interpret the special values like 
"native" or "any". I think to do so we should move away from the parsed 
package relationship being only a dict and make it a real object and expose 
methods or properties to test for these special values.

Following the spirit of Stefano's work on this, I've done a little 
housekeeping on this part of the code too in an effort to help make it a little 
easier to work with when making the later changes. I've actually done the 
tidying first up as that then makes the later multiarch diffs much smaller toand 
hopefully easier to review. Thanks to Stefano Rivera for the original set of 
patches which I made heavy use of in doing this work.

While I was touching this part of the code, I've also taken the opportunity to 
take a stab at adding support for build profiles. There's no time like the 
present to get these things sorted out!

I've done this work based upon my branch with the previous deb822 paragraphs 
iterator work -- the patches should actually be portable across branches and 
I'll do that if it's actually required. The patches are attached or, if you'd 
rather see the context, 

  git clone ssh://git.nanonanonano.net/srv/git/python-debian.git -b multiarch

(if I update the patches based on comments, I can't promise not to rewrite 
history on that branch!)

As with the work on the paragraphs iterator, I'd very much like some feedback 
;)

cheers
Stuart


-- 
Stuart Prescott    http://www.nanonanonano.net/   stuart at nanonanonano.net
Debian Developer   http://www.debian.org/         stuart at debian.org
GPG fingerprint    90E2 D2C1 AD14 6A1B 7EBB 891D BBC1 7EBB 1396 F2F7
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Break-a-very-long-regex-up.patch
Type: text/x-patch
Size: 1264 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0006.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Tidy-creation-of-relation-parsing.patch
Type: text/x-patch
Size: 1757 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0007.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Use-custom-assertion-for-testing-package-relations.patch
Type: text/x-patch
Size: 2800 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0008.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Sparsify-PkgRelations-test-dictionaries.patch
Type: text/x-patch
Size: 13121 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0009.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-Allow-arch-qualifiers-in-package-relationships.patch
Type: text/x-patch
Size: 6344 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0010.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0006-Add-support-for-build-profiles.patch
Type: text/x-patch
Size: 5472 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0011.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.alioth.debian.org/pipermail/pkg-python-debian-maint/attachments/20140802/46b44cce/attachment-0001.sig>


More information about the pkg-python-debian-maint mailing list