** Changed in: pymacaroons (Ubuntu Xenial) Status: Triaged => Invalid
** Changed in: pymacaroons (Ubuntu Xenial) Assignee: Andreas Hasenack (ahasenack) => (unassigned) ** Changed in: pymacaroons (Ubuntu Trusty) Status: Triaged => In Progress -- You received this bug notification because you are a member of नेपाली भाषा समायोजकहरुको समूह, which is subscribed to Xenial. Matching subscriptions: Ubuntu 16.04 Bugs https://bugs.launchpad.net/bugs/1822780 Title: dependency issues in the pymacaroons stack Status in pymacaroons package in Ubuntu: Fix Released Status in pymacaroons source package in Trusty: In Progress Status in pymacaroons source package in Xenial: Invalid Bug description: [Impact] * The pymacaroons stack has dependency issues identified when further testing the backport to trusty (currently in proposed) * Ensure that the pymacaroons stack works well in Trusty (for Ubuntu Advantage client) but also fix the issues that matter for Xenial in Xenial as well. [Test Case] * install python3-pymacaroons. This will pull in python3-libnacl 1.4.5 as well (expected) * Without the latest fix from proposed, this command will backtrace as shown: $ python3 -c "__requires__ = 'pymacaroons';from pkg_resources import load_entry_point" Traceback (most recent call last): File "/usr/lib/python3/dist-packages/pkg_resources.py", line 444, in _build_master ws.require(__requires__) File "/usr/lib/python3/dist-packages/pkg_resources.py", line 725, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python3/dist-packages/pkg_resources.py", line 632, in resolve raise VersionConflict(dist,req) # XXX put more info here pkg_resources.VersionConflict: (libnacl 1.4.5 (/usr/lib/python3/dist-packages), Requirement.parse('libnacl>=1.3.6,<1.4')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "<string>", line 1, in <module> File "/usr/lib/python3/dist-packages/pkg_resources.py", line 2749, in <module> working_set = WorkingSet._build_master() File "/usr/lib/python3/dist-packages/pkg_resources.py", line 446, in _build_master return cls._build_from_requirements(__requires__) File "/usr/lib/python3/dist-packages/pkg_resources.py", line 459, in _build_from_requirements dists = ws.resolve(reqs, Environment()) File "/usr/lib/python3/dist-packages/pkg_resources.py", line 628, in resolve raise DistributionNotFound(req) pkg_resources.DistributionNotFound: libnacl>=1.3.6,<1.4 * the python3-six dependency check isn't reached, because the check stops at the first unsatisfied dependency and that happened to be libnacl. But when testing the fixed packages, there must be no backtrace like above. [Fix] * Changes - Trusty: drop python2 binaries in trusty (was not released there yet) Xenial has those already published, we are not gonna take them away. see [1] - Trusty: adapt python-six dependency to match what is really needed and available in Trusty. Xenial has a version higher than that so don't bother modifying it there. see [2] - Trusty and Xenial: adapt python-libnacl dependency by backporting upstream fix on a too struct version requirement. see [3] [1]: https://git.launchpad.net/~paelzer/ubuntu/+source/pymacaroons/commit/?id=6746ad32b4d785919e849a4bef5685bf0bec6be2 [2]: https://git.launchpad.net/~paelzer/ubuntu/+source/pymacaroons/commit/?id=f94ac40aeb354c008c4764853b877991003ae429 [3]: https://git.launchpad.net/~paelzer/ubuntu/+source/pymacaroons/commit/?id=1987dffcffae29c63ea71635db1cfe19badc145f [Regression Potential] * Lets split this section for Trusty and Xenial. a) Xenial only gets slightly relaxed version dependencies, those should allow pymacaroons to run, but actually never cause any additional issues. b) Trusty this isn't released in trusty at all yet (still in proposed intentionally). Therefore this is one of the few cases I'd call regression risk next to zero. If anything then issues out of the py2 removal not working as expected, but it seems to be ok in build and tests. [Other Info] * This is related to the SRU in bug 1817665 * Furthermore it is related to the MIR extension to Trusty in bug 1746772 bug 1817327 and bug 1621386 --- On the extended testing for the SRU in bug 1817665 we found that there are a few dependency issues that need to be fixed. Affects X&T: python-libnacl - depends on <1.4 but xenial (and trusty soon) have 1.4.5 Fix by importing https://github.com/ecordell/pymacaroons/commit/3924d5b56c42234d0bff3820bc4cb6c4d3f74d8d Affects T: python-six - depends on >=1.8.0 - but trusty is on 1.5.2 still We evaluated if we need to backport six as well (a lot or reverse deps). We found that the usage of pymacaroons is actually ok with 1.5.2 Upstream regularly bumps the dependency level as well as some changes that got added but in the meantime removed (e.g. the serialization). Eventually only two use cases for python3-six are left - pymacaroons/caveat_delegates/encrypted_first_party.py:4:from six import iteritems - pymacaroons/utils.py:5:from six import text_type, binary_type None of these are changed in six between 1.5.2 and 1.8 checked by Odd_Bloke, ahasenack and me. Affects T: python2 - we don't need/want python2 support in this, so since we don't usually exercise and have no interest in supporting the python2 paths lets drop them from pymacaroons in trusty (where they are not published yet). To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pymacaroons/+bug/1822780/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~group.of.nepali.translators Post to : group.of.nepali.translators@lists.launchpad.net Unsubscribe : https://launchpad.net/~group.of.nepali.translators More help : https://help.launchpad.net/ListHelp