[openstack-dev] Python 2.6 failed jobs for SQLA-Migrate

Mike Bayer mbayer at redhat.com
Wed Jul 1 15:29:26 UTC 2015



On 7/1/15 10:03 AM, Mike Bayer wrote:
>
>
> On 6/30/15 9:51 PM, Thomas Goirand wrote:
>> Hi,
>>
>> Mike nicely tried to help me to get sqla-migrate to work with sqlalchemy
>> 1.0.6 which is now in Debian. But there's some failures in Python 2.6:
>>
>> https://review.openstack.org/#/c/197144/
>>
>> Do we still care about them? Can we get them removed from -migrate? IMO,
>> supporting the last SQLA is more important than the old Py 2.6.
>
> That is very odd that there's a failure, and if this is specific to 
> SQLA 1.0 also then I'd be pretty worried something weird is going on.  
> SQLA still supports 2.6 only because I haven't yet had the need to 
> really use 2.7-isms.
>
> I'm all for making the 2.6 job non-voting here but I do want to fix this.

I'm never going to fit this in the changelog, so here is what is going on.

migrate does some bizarre series of tests where it invokes its own 
command runner "migrate" through a library called "scripttest": 
https://scripttest.readthedocs.org/en/latest/.

Then, somewhere when it starts up, it also does some entrypoint stuff.   
In migrate/versioning/util/__init__.py we see:

     return EntryPoint.parse('x=%s' % dotted_name).load(False)

Turns out setuptools wants to emit a deprecation warning there.  I was 
all set to rant on setuptools for what I then saw, but turns out, this 
is just a Python2.6/2.7 ism.

Here's a deprecation warning on py27:

Python 2.7.8 (default, Apr 15 2015, 09:26:43)
[GCC 4.9.2 20150212 (Red Hat 4.9.2-6)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
 >>> import warnings
 >>> warnings.warn("foo", DeprecationWarning)
 >>>


Here is it on py26:

[classic at fedvms1 sqlalchemy-migrate]$ .tox/py26/bin/python
Python 2.6.8 (unknown, Jun  9 2015, 17:10:15)
[GCC 4.9.2 20150212 (Red Hat 4.9.2-6)] on linux4
Type "help", "copyright", "credits" or "license" for more information.
 >>> import warnings
 >>> warnings.warn("foo", DeprecationWarning)
__main__:1: DeprecationWarning: foo
 >>>

  To wrap it up, "scripttest" doesn't want any standard error output 
unless we set it.   so we just turn off that flag and we're done.

https://review.openstack.org/197625







>
>
>
>
>>
>> Thoughts anyone?
>>
>> Cheers,
>>
>> Thomas Goirand (zigo)
>>
>> __________________________________________________________________________ 
>>
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe: 
>> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
> __________________________________________________________________________ 
>
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: 
> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




More information about the OpenStack-dev mailing list