jmoiron / johnny-cache

johnny cache django caching framework
MIT License
304 stars 83 forks source link

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

Closed BertrandBordage closed 10 years ago

BertrandBordage commented 10 years ago

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

natethelen commented 10 years ago

There are quite a bit of conflicts with the jmoiron/django-1.6 branch. Can you merge and create a django-1.6 branch of your own? Maybe you fixed one of his 3 remaining failing tests (or more).

BertrandBordage commented 10 years ago

I merged django-1.6. 5 tests were failing with Django 1.6 and are still failing after merging. Of course, all tests are passing with Django 1.5 and Python 2.6, 2.7, 3.2 & 3.3. Unfortunately, those tests were passing with Django 1.3 & 1.4 but are broken after merging. I'll fix this.

Before my whole pull request, some tests were skipped, especially multi-databases & multi-threading tests, so don't compare the amount of failed tests. 65% of the lines where covered before my pull request, 90% before merging and 80% after (due to the failed tests with Django 1.3 & 1.4).

BertrandBordage commented 10 years ago

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

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

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 commented 10 years ago

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 commented 10 years ago

@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 commented 10 years ago

@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 commented 10 years ago

@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 commented 10 years ago

@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 commented 10 years ago

@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 commented 10 years ago

@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 commented 10 years ago

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