kumar303 / hawkrest

Hawk HTTP Authorization for Django Rest Framework
BSD 3-Clause "New" or "Revised" License
19 stars 8 forks source link

Update testing matrix #20

Closed edmorley closed 8 years ago

edmorley commented 8 years ago

Adds testing for:

Drops testing for:

See individual commit messages for more details :-)

edmorley commented 8 years ago

PR updated to fix test failures.

hawkrest currently doesn't work under Django 1.9, so I've marked those jobs as being allowed to fail. In a later PR I'll fix the issues and remove that annotation.

kumar303 commented 8 years ago

What did you mean by the test matrix is too big? You mean for local development? When developing, I always run with -e in a single env just to get things working before running the whole suite.

I'd like to keep at least 1.7 in here. I know support has been dropped but it will be in use at Mozilla for a long time. Actually, a lot of our apps are still on 1.6. When Django drops support they mostly mean they won't take in additional pull requests. Obviously if there is a dramatic security bug, Mozilla will have to scramble to upgrade so it's not ideal. It can take a lot of effort to migrate major versions of Django for a large app though.

edmorley commented 8 years ago

Both Django 1.6 and 1.7 are out of the extended support period, meaning it's not just a case of them not accepting pull requests, but there are no security updates either. Django 1.8 is their long-term release branch, for which they've committed to providing security updates until at least April 2018.

By "too large" I mean that 3 versions of Python x 4 versions of Django x 4 versions of django-rest-framework = 48 jobs on Travis, which seems a bit excessive. In addition, new feature work has to potentially work around issues with older (and unsupported) versions of libraries.

It's up to you - I can add them back in if you'd prefer (perhaps with not the full matrix - eg only test on Python 2.7 for older versions), it's just that many other projects have already dropped support for them.

kumar303 commented 8 years ago

It's up to you - I can add them back in if you'd prefer (perhaps with not the full matrix - eg only test on Python 2.7 for older versions)

Yeah, I'd like to see just one matrix: Python 2.7 + Django 1.7 + the latest version of DRF just as a sanity check. We can't break support for it because of the other Mozilla apps using hawkrest.

new feature work has to potentially work around issues with older (and unsupported) versions of libraries

Yes, I think it should. However, if something comes up in new feature work that makes it hard to support an older version then we can consider dropping support.

edmorley commented 8 years ago

PR updated, preserving testing on Django 1.6 and 1.7, but testing on fewer combinations of Python/django-rest-framework.

kumar303 commented 8 years ago

looks great, thanks

edmorley commented 8 years ago

Thank you :-)