[Twisted-Python] T9217 / PR1052: Wheels, wheels, and more wheels
Kyle Altendorf
sda at fstab.net
Wed Sep 5 06:44:09 MDT 2018
On 2018-09-05 03:25, Glyph wrote:
>> On Aug 29, 2018, at 10:13 AM, Kyle Altendorf <sda at fstab.net> wrote:
>> wheel links:
>> https://github.com/twisted/twisted/pull/1051#issuecomment-416743261
>> (and next comment)
>>
>> Now that I've got the wheel builds happening I figured it'd be good to
>> try them out on 'real' machines. Turns out we get a failure on
>> twisted.cred.test.test_strcred.SSHCheckerTests.test_isChecker for at
>> least the two checks I've done so far (Windows and OSX). I haven't
>> done more than a cursory look at that yet, but it's on the list to
>> understand and resolve. More testing would of course be welcome.
>> Real world, just trial Twisted's own tests, whatever would be
>> appreciated if you are interested.
>>
>> failures with wheels:
>> https://github.com/twisted/twisted/pull/1051#issuecomment-416977723
>
> It's not clear to me that we have any test environments that accurately
> test what happens after you install from PyPI. If we could build these
> wheels and then actually run tests on installing them that would be a
> big step forward in test fidelity! But given the current state of the
> art, I'd be happy if they just got built from the same code that passed
> our tests in existing configurations.
cibuildwheel does have an option to provide a test command. If we did
that would we replace the existing tests or supplement? If
supplementing that will presumably be a significant increase in build
times. Especially if we did it for all wheels.
So, how much of a build time hit do we want to take?
>> I hear that Travis OSX builds were really slow, but from what I can
>> see Circle isn't doing any OSX (other than what I added).
>
> The issue for addressing this is
> https://twistedmatrix.com/trac/ticket/9445 if you'd like to pick up
> where Adi left off. It's probably just resolving some conflicts,
> resubmitting for review, and bugging people to get it through the
> process :).
https://github.com/twisted/twisted/pull/1056/files
It looks like the builds I added in my wheel PR, for whatever that is
worth. Well, other than picking xcode v9 vs me picking v10 which
neither of the PRs use anyways. I added the requires over in the wheel
PR as well in case it ends up saving a useful amount of our OS X quota.
>> Now that I've got something rough in place, are there any opinions
>> about how this should work? I don't know the present release workflow
>> so I don't know if we'd want an automatic push to PyPI on tags
>> (probably not)
>
> I definitely want this. This is really the whole point, what we're
> trying to get to :). Why don't you think we want this?
Uhm... hmm... *shrug* I figured someone might want to do a final spot
check or have manual intervention for a real release. You can't replace
a file on PyPI so... but sure, I didn't mean to argue against
automation.
Here's one spot I did automatic deployment off of Travis to PyPI.
https://github.com/altendky/gitignoreio/blob/aeeb9546b6f27f411b191699d3625b4d0a08e7cf/.travis.yml#L11-L19
Pretty straightforward though I think it does the wheel build which
isn't what we'd really want. I'd have to check on how to deploy
existing wheels as well as those from OS X and Windows. I'd suggest a
separate PR? I mean maybe it'd be easier to get one PR reviewed than
two but that doesn't seem like a great reason to mash things together.
Cheers,
-kyle
More information about the Twisted-Python
mailing list