[openstack-dev] [requirements] [packaging] How can Upper Constraints be used by packagers

Igor Yozhikov iyozhikov at mirantis.com
Thu May 12 14:57:58 UTC 2016


Hello.

*Background: *

Linux packages like DEB/RPM have “Depends:” clauses, Currently packagers
use the global-requirements.txt (via requirements.txt) to come up with the
version range for this “Depends: || Requires:” clause.

*Example :*

[deb] http://noodle.portalus.net/debian/pool/main/n/nova/nova_13.0.0-2.dsc

[rpm]
https://github.com/openstack-packages/nova/blob/rpm-master/openstack-nova.spec#L378


According to proposed changes in G-R (
https://etherpad.openstack.org/p/newton-global-requirements)  related to
ranges/bounds I want to clarify situation for Linux packagers.

Very often packages for requirements mentioned in requirements.txt or
global-requirements  file are built using code versions set in lower
bounds. Usage of broader range for requirements will lead to complex
calculations of minimum version of requirement which will satisfy all of
projects which are using it. From perspective of packaging - must be only
one installed version of requirement in a system.

To avoid this complexity and provide co-installability, upper constraints
could be used as the source of minimal version for requirements in system
package.

Example(Mitaka):

Package python-nova with requirements according to global-requirements

(
https://github.com/openstack/requirements/blob/stable/mitaka/global-requirements.txt#L68
):

Depends:

         python-iso8601 (>= 0.1.9),

Package python-nova with requirements according to upper-constraints

(
https://github.com/openstack/requirements/blob/stable/mitaka/upper-constraints.txt#L153
):

Depends:
         python-iso8601 (>= 0.1.11),

Thanks,
Igor Yozhikov
Senior Deployment Engineer
at Mirantis <http://www.mirantis.com>
skype: igor.yozhikov
cellular: +7 901 5331200
slack: iyozhikov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160512/7ead44bf/attachment.html>


More information about the OpenStack-dev mailing list