kumar303 / hawkrest

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

Retriggers of master are failing on Travis #27

Closed edmorley closed 7 years ago

edmorley commented 7 years ago

I have a branch locally for adding Django 1.10/1.11 to the testing matrix.

However I noticed that even the current testing matrix is currently failing, on fresh pushes of master to my fork. eg:

1) https://travis-ci.org/edmorley/hawkrest/jobs/193424762

ImportError: cannot import name setup

(presumably newer django-nose is not compatible with Django 1.6):

2) https://travis-ci.org/edmorley/hawkrest/jobs/193424766

AssertionError: Unexpected call: log.warning("access denied: MisComputedContentHash: Our hash blPLW7mrURX5LO7m2f7iW+3kXihtvlX0//IigunDeCs= (sha256) did not match theirs e8gjS2dr/QZv4GEJa8HHIsupVVrGiWA7YVZnVStNv3c=")

We should first pin these dependencies to make master green, before I make further changes to the testing matrix.

The last (green) Travis run on master was: https://travis-ci.org/kumar303/hawkrest

Comparing the 'py27-django1.8-drf3.3' job to that from my run, shows the following package changes:

--- working.txt 2017-01-19 17:07:00.306042800 +0000
+++ broken.txt  2017-01-19 17:06:46.381880000 +0000
@@ -1,26 +1,28 @@
-alabaster==0.7.8
+alabaster==0.7.9
+args==0.1.0
 Babel==2.3.4
-Django==1.8.13
-django-nose==1.4.3
+clint==0.5.1
+Django==1.8.17
+django-nose==1.4.4
 djangorestframework==3.3.3
-docutils==0.12
+docutils==0.13.1
 funcsigs==1.0.2
 hawkrest==0.0.10
 imagesize==0.7.1
-Jinja2==2.8
+Jinja2==2.9.4
 MarkupSafe==0.23
 mock==2.0.0
-mohawk==0.3.2.1
+mohawk==0.3.4
 nose==1.3.7
 nosenicedots==0.5
 pbr==1.10.0
-pkginfo==1.3.2
+pkginfo==1.4.1
 Pygments==2.1.3
-pytz==2016.4
-requests==2.10.0
-requests-toolbelt==0.6.2
+pytz==2016.10
+requests==2.12.5
+requests-toolbelt==0.7.0
 six==1.10.0
 snowballstemmer==1.2.1
-Sphinx==1.4.2
+Sphinx==1.5.1
 sphinx-rtd-theme==0.1.9
-twine==1.6.5
+twine==1.8.1
kumar303 commented 7 years ago

ok, I guess we need to pin everything in requirements/dev.txt to exact versions, including dependencies, and add --no-deps to the pip args

edmorley commented 7 years ago

I meant to add - I'm working on this locally at the moment, so unless I get stuck, I'm happy to fix this :-)

edmorley commented 7 years ago

django-nose 1.4.4 dropped support for Django <1.8 and added support for Django 1.10: https://github.com/django-nose/django-nose/blob/master/changelog.rst

As such, if we want to add testing against Django 1.10 it would be much easier if we could just stop testing anything older than Django 1.8.

I know in #20 you wished to retain Django 1.6/1.7 support, however given more time has passed, and given that the only hawkrest users at Mozilla I can find (other than Treeherder, which is using Django 1.10 already) are the not recently maintained: https://github.com/mozilla/apk-signer https://github.com/mozilla/signing-service

...then I think we should just drop Django 1.6/1.7 support now.

kumar303 commented 7 years ago

The APK signer is no longer in production and not maintained so I'm happy to drop <Django-1.8. We'll just have to remember to put it in the hawkrest changelog. Also, be sure to patch the docs: https://github.com/kumar303/hawkrest/blob/master/docs/index.rst#installation

Thanks for working on this!