Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python 3 support, Travis CI & a few modernisations #51

Merged
merged 82 commits into from Mar 18, 2014

Conversation

BertrandBordage
Copy link
Contributor

In order to achieve johnny-cache 1.5 goals, I made the following:

  • I added Travis CI to smoothly move from 1.4 to 1.5, but discovered that johnny-cache was not able to run with Django 1.1 (and Python 2.4 & 2.5 are not available on Travis CI)
  • so I wanted to speed things a bit. I implemented full Python 3 support and decided to drop Django<1.3 & Python<2.6 support (as specified in the 1.5 goals).
  • in tests, I changed old failUnless etc to assertTrue, assertFalse, assertEqual and assertNotEqual, all supported from Python 2.6
  • I started working on Django 1.6 support, and only pushed a backward-compatible version of Fix for Django 1.6 and AttributeError: 'Query' object has no attribute 'ordering_aliases' #36. I still have lots of pending changes on my computer about this, but the test suite still fails so I'll stick to this bunch of changes for today.

jself and others added 30 commits December 3, 2013 15:46
@BertrandBordage
Copy link
Contributor Author

I fixed the tests that were broken for Django 1.3 & 1.4 after merging.

Travis CI passes with the following (see the results):

  • Python 2.6, 2.7, 3.2, 3.3
  • Django 1.3.7, 1.4.10, 1.5.5
  • SQLite, PostgreSQL & MySQL
  • Memcached & Redis

Coverage is 89% (see the results).

Django 1.6 is still failing. 2 tests are failing with SQLite and 6 with PostgreSQL. I still don't understand why.
Any help would be welcome for 1.6 support!

@jmoiron
Copy link
Owner

jmoiron commented Feb 6, 2014

Are you running the 1.6 tests in Travis somewhere as well? Also, superb work on this, it must have been a ton of effort.

@BertrandBordage
Copy link
Contributor Author

@jmoiron No, didn't try on Travis, only locally with Python 2.7, Django 1.4, 1.6, SQLite & PostgreSQL.
Yes that represents three full days of work, but that's nothing compared to what johnny-cache gave me these last 2 years! So much performance gain in 5 lines of configuration…

@hxu
Copy link
Contributor

hxu commented Mar 13, 2014

@BertrandBordage how's the progress on this? What can I do to help with the Django 1.6 compatibility? I'm trying to figure out the best way for me to contribute to this pull request, and I think I may fork the main repo, then create a branch that tracks this branch of yours.

@hxu
Copy link
Contributor

hxu commented Mar 14, 2014

@jmoiron I've forked and added 1.6 to the Travis builds, and you can see the results here. I get the same failures locally (additionally an error, relation "django_session" does not exist, but I think that's something wrong with my local environment). I'll try to work on this this weekend.

@hxu
Copy link
Contributor

hxu commented Mar 15, 2014

@jmoiron @BertrandBordage I've got johnny-cache passing all the tests with Django 1.6 in my branch. I've got a pull request on @BertrandBordage's repo here. Let me know if I should open up a new pull request here, or you can pull / merge directly from my branch.

@jmoiron
Copy link
Owner

jmoiron commented Mar 17, 2014

@hxu I'm about ready to just tag master and pull this and your changes in to at least get some movement on supporting newer versions of django and clearing up some older bugs. Travis integration in particular is desirable since it's very time consuming to set up the johnny test environment.

@hxu
Copy link
Contributor

hxu commented Mar 17, 2014

@jmoiron ok, go for it. I've been working with @dlo on this and he has my 1.6 branch in a staging environment for testing. We'll follow up on your repo with issues if we encounter any bugs.

jmoiron added a commit that referenced this pull request Mar 18, 2014
Python 3 support, Travis CI & a few modernisations
@jmoiron jmoiron merged commit a0ed3d3 into jmoiron:master Mar 18, 2014
@jmoiron
Copy link
Owner

jmoiron commented Mar 18, 2014

All of this and @hxu's additions are now in master and the previous master is tagged as johnny-cache-1.4.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants