[openstack-dev] Moving forward with openstack/requirements

Flavio Percoco fpercoco at redhat.com
Mon Jan 14 18:55:39 UTC 2013

On 01/14/13 18:27, Mark McLoughlin wrote:
> On Sat, 2013-01-12 at 19:30 -0800, Monty Taylor wrote:
>> If we do through step 2, it means that before someone can add a new
>> requirement to a project, it would have to go into
>> openstack/requirements. If we do step 3, it'll trap for things like the
>> sqlalchemy 0.8 upgrade issue. It also, as an approach, doesn't enforce
>> that projects have to upgrade at any point, because previous versions of
>> things will still be in our mirror (we don't purge it)
> I think there's 3 things we want to catch:
>    1) When whole new libraries are added as a dependency
>    2) When the minimum version of a dependency is increased
>    3) When a project wants to specify a version range that is
>       incompatible with another project's version range
> I think what you're talking about will catch (1) and (3) but not (2).
> To catch (2), I guess we'd need a separate pypi mirror with all the
> minimum versions of dependencies and a set of jobs to run tests with
> that mirror?

If those versions are not in pypi I guess we'll need this. Many projects 
just delete older versions from pypi when a new one is released.

But, If It's necessary to have a separate mirror for just a couple of 
libraries, I'd suggest to put everything in there and use that one as 
mirror for everything related to openstack.

>> Also - while you're all thinking about it - I've been considering
>> getting the code we have in oslo-incubator setup that makes setup.py
>> understand pip-requires and test-requires automatically upstreamed
>> (seems like a thing we're not the only ones who would want it) The catch
>> - those aren't the filenames most people use for those files. SO - what
>> if we (and by we, I mean I, and by I, I mean a shell script that submits
>> a bajillion reviews) renamed tools/pip-requires to requirements.txt and
>> tools/test-requires to test-requirements.txt? I've already updated our
>> mirror creation code to recognize both files. If people are cool with
>> that, I can then work on trying to get a patch into distribute that
>> would allow for that - which would mean less copied code for us.


Using setup.py for handling either pip-requires or test-requires is a 
good idea.

I don't think renaming files is really necessary but I'm not against it.


More information about the OpenStack-dev mailing list