Commit graph

642 commits

Author SHA1 Message Date
Dominik George
ac814e5cd4
Do not throw exception on externally invalidated cache keys (#169)
Closes #120
2021-03-21 19:27:16 -04:00
Andrew-Chen-Wang
d0b5213014 v2.3.3
* Fix a comment block disabling incorrectly RST form for cachalot_disabled
* Update CHANGELOG.rst
* Several points did I incorrectly say that 50 modifications per second was too much. It was supposed to say minute. You'd have to have a LARGE website to really get to that point since inserts from an external DB would typically take a 250-1000ms/1s per INSERT/UPDATE
* Add Python 3.9 support in the docs and setup.py
* Move chat to Discord and reflect in the docs
2020-11-08 21:01:14 -05:00
Andrew-Chen-Wang
e41150abd5 Merge branch 'update-py39' 2020-11-04 16:07:25 -05:00
Mattias Naarttijärvi
d632a79015
Remove deprecated signal argument (#165)
* Remove signal's providing_args deprecated argument
* Update docs for signal

In PR #165

Co-authored-by: Andrew Chen Wang <60190294+Andrew-Chen-Wang@users.noreply.github.com>
2020-10-16 10:39:20 -04:00
Andrew-Chen-Wang
7b22ba5c3f Add Python 3.9 support 2020-10-16 09:42:10 -04:00
Andrew Chen Wang
72be2c07b3 v2.3.2 2020-09-16 13:54:07 +00:00
Denick
d24e3b37ca
Cast memoryview objects to bytes to be able to pickle them. (#163)
Fixes #125
2020-09-09 16:12:11 -04:00
Andrew-Chen-Wang
689f679ad3 v2.3.1 2020-08-10 17:15:13 -04:00
Andrew-Chen-Wang
d699c5b8c3 Squashed commit of the following:
commit 4a33e7b68196bf6e0ee0b7f942a992532495b616
Author: Andrew-Chen-Wang <acwangpython@gmail.com>
Date:   Mon Aug 10 16:04:26 2020 -0400

    Replace f-strings with join for Python 3.5

commit dcb33232d605c01025469e776c4ed8eb6ae0a326
Author: Andrew-Chen-Wang <acwangpython@gmail.com>
Date:   Mon Aug 10 15:55:09 2020 -0400

    Fix sql_flush for dj versions below 3.1
    * Removed any other instances of JSONField for Django 3.1 removed many things like JsonAdapter in favor of regular json module

commit 74195e9ff5a52dba2449a55e543a27ebd99e4fc9
Author: Andrew-Chen-Wang <acwangpython@gmail.com>
Date:   Mon Aug 10 09:17:03 2020 -0400

    Add Django 3.1 to Travis
    * Specify Django version when checking if JSONField exists

commit da5c1fa4c8b2f2efba0b12d7b27460c544e2473a
Author: Andrew-Chen-Wang <acwangpython@gmail.com>
Date:   Wed Aug 5 17:39:58 2020 -0400

    Added support for Django 3.1
    * Some fields were removed, others were deprecated. They are now in a list of deprecation to follow. Some new fields were added like PositiveBigIntegerField that won't be tested
    * monkey_patch.py has a try/except import for EmptyResultSet that was from archaic Django. Removed apparently due to compatibility issues
2020-08-10 16:49:46 -04:00
Andrew-Chen-Wang
6781b9b98a Added changes to CHANGELOG.rst 2020-07-29 16:10:14 -04:00
John-Paul Stanford
71dcf73dd7
Attempt to fix issue #156 by handling subquieries (#157)
* Combine child_class passing to minimize if's

Co-authored-by: Andrew Chen Wang <60190294+Andrew-Chen-Wang@users.noreply.github.com>
2020-07-29 14:57:16 -04:00
Andrew Chen Wang
f40a56dfe1
Add support for disabling cachalot (#158)
* This context manager allows for disabling cachalot using a context manager
* Allow for disabling all queries within context manager
2020-07-29 14:00:04 -04:00
Karthikeyan Singaravelan
6935629785
Fix warning regarding ABC import from collections (#160) 2020-07-26 13:30:47 -04:00
Andrew-Chen-Wang
8a55454557 Support benchmarks for MacOS
* Added how to run benchmarks in docs and README
2020-07-09 18:33:05 -04:00
Andrew-Chen-Wang
b80195fb00 Moved tests requirements file 2020-07-09 16:58:35 -04:00
Andrew-Chen-Wang
6379e41316 Re-organized requirements and other files
* Added hacking and usage section to README
2020-07-09 16:57:41 -04:00
Andrew-Chen-Wang
27b74b7ba9 Use GitHub's version of python package publish 2020-06-25 15:47:59 -04:00
Andrew-Chen-Wang
6ef0287735 Fix GitHub action publish.yml 2020-06-25 15:41:51 -04:00
Andrew-Chen-Wang
6feafb178c v2.2.2
* Dropped Python 2.7 and Django 1.11 support
* Added support for the subqueries issue
2020-06-25 15:33:17 -04:00
Andrew Chen Wang
a8a69e0a1a
Update README with Travis-ci.com change
* Migrated from Travis-ci.org to Travis-ci.com for more features.
2020-06-22 12:31:11 -04:00
Andrew-Chen-Wang
6e22dc7f58 Drop Python 2.7 and Dj 1.11 2020-06-18 09:28:00 -04:00
Andrew Chen Wang
f82e892ad5
Update second Slack link (forgot) 2020-05-02 21:23:19 -04:00
Beda Kosata
41f490650e
add django-prometheus wrapped database engines to the list of supported db engines (#149) 2020-04-28 16:38:21 -04:00
benjfield
182154a286
Fix for queryset no longer existing (#151) 2020-04-28 16:33:22 -04:00
Andrew Chen Wang
41a04d159c
Update with new slack link 2020-04-13 22:28:39 -04:00
Andrew-Chen-Wang
a611950f00 Updated Docs
* Moved svg files of benchmark for next benchmark
2020-02-13 21:15:38 -05:00
Andrew-Chen-Wang
8c35a6f931 Updated Docs
* CHANGELOG, README updated
* Added bare bone CONTRIBUTING
2020-02-12 01:09:42 -05:00
Andrew-Chen-Wang
602cdcee1d
Version 2.2.0 (#146)
This PR upgrades cachalot to version 2.2.0 allowing for anyone to install cachalot at any Django package above 1.11. All tests currently function now.

* Added mysql as a service to fix Travis CI

* Removed tox dependency

* Removed upper limit on Django and support 2.2-3.0 CI Test
* Cachalot will only say "officially supports" while removing upper limit to not hinder anyone's progress.
* Added Python 3.8 and Django 2.2 and 3.0 to CI tests

- Max is 200 and we'll get there quickly if we add another Python version. Utilizes #127
- Keep dependencies for six and django.utils.six

* Correctly run Travis test by updating tox.ini
* Originally using tox syntax but changed testenv to travis so that travis env and travis dependencies and stuff are used

* Tox tests should start running command

* testenv without dependencies broke travis. New spot in Tox
* testenv without dependencies broke travis
* I can't figure out where testenv is supposed to be
* Good thing there's squash

* Added missing six in test
* Also added six package to Tox for Django 3.0 coverage.
* The missing six package caused several problems in several tests due to using an incorrect DB

* Resolves #138
* Need to add the panels here in order to satisfy tests

* Adds CachalotPanel to Python 2 backwards compatibility
* Forgot super class took those like save()

* Added databases to certain test cases
* APITestCase, DebugToolbarTestCase, SignalsTestCase required a database set
* Fixes errors like these: https://travis-ci.org/noripyt/django-cachalot/jobs/648691385#L4892

* Dropped OFFICIAL support for Python 3.4 + MySQL
* MySQL and its client on 3.4 is f--king up a lot of the testing and I can't bear with it. We can revisit it later, but, honestly, who uses Python 3.4... and if an organization is, then they will either have no problem with Postgres and SQLite or know that MySQL doesn't work.

* Drop Py3.4 from running. Fixed databases
* Now goes with setting's databases rather than hardcoded since some tests don't have other databases.

* Fix ReadTestCase

Django 2.2+ changed self.queryset at line 1000 with self.query=queryset.query

* Django Dependency Removed from utils.py

* Last commit used Django version. This one used try except

* Fixed assertNumQuery; added allow_failures for 3.4
* Primary: More information in test_utils.py with method is_django_21_below_and_is_sqlite
* The problem with the entire build lie in the self.is_sqlite for the tests. SQLite will make 2 queries when creating or destroying or updating instead of 1.
* In summary, if SQLite is the DB and Django

* Changed build matrix to allow failures for 3.4 instead of taking it out completely so that we can get it to work soon.

* Remove -> From function return
* I love backwards compatibility

* SQLite2 in multi_db.py returned incorrect bool

* Django 2.1 and SQLite checker doesn't work for some tests
* Some tests DO HAVE the BEGIN query that is returned... Not sure why. If the next test show completely different WriteTestCase problems, then we need to find alternative.
* Removed check from atomic

* Adjust Django and is_sqlite errors
* CI testing the Tox errors: https://travis-ci.org/noripyt/django-cachalot?utm_medium=notification&utm_source=github_status

* Adjust Django and is_sqlite errors (590 CI)
* CI testing the Tox errors: https://travis-ci.org/noripyt/django-cachalot?utm_medium=notification&utm_source=github_status
* Adjustment 2

* Make include matrix and Adjust Django and is_sqlite errors (594 CI)
* CI testing the Tox errors: https://travis-ci.org/noripyt/django-cachalot?utm_medium=notification&utm_source=github_status
* Adjustment 3

* Adjust Django and is_sqlite errors (596 CI)
* CI testing the Tox errors: https://travis-ci.org/noripyt/django-cachalot?utm_medium=notification&utm_source=github_status
* Adjustment 4
* Added my intro to ReadTheDocs

* Adjust Django and is_sqlite errors (598 CI)
* CI testing the Tox errors: https://travis-ci.org/noripyt/django-cachalot?utm_medium=notification&utm_source=github_status
* Adjustment 5

* Drop Python 3.4 from tests since PyLibMC not cooperating at that level.

* Bump package version up 1 minor for Django 2.2 and 3.0
2020-02-12 00:52:12 -05:00
Andrew-Chen-Wang
a2980f1f4a Added GitHub templates: Issues and PR
* Issues start off with some templates
* Pull request start off with a template
* Better workflow and easy to understand without needing too many comments. More efficient commenting basically
2020-02-10 01:03:15 -05:00
Andrew-Chen-Wang
450b544caf Updated README
* Said minute instead of second for 50 modifications.
2020-02-09 23:35:22 -05:00
Petr Dlouhý
782f00300e fixes for Django 3.0 (#144)
Use six since django.utils.six is dropped.
2020-02-09 23:05:06 -05:00
Andrew-Chen-Wang
aced88edb7 Updated README, new maintainer
* Added Django 3.0 support to avoid conflicts when pip installing
* README shows cache comparisons and usage time
* Travis updated
* gitignore updated from GitHub's main page
2020-02-09 22:57:35 -05:00
Bertrand Bordage
3769c9a646
Update README.rst 2019-12-09 12:38:27 +01:00
Bertrand Bordage
f3f8773f85 Version 2.1.0. 2018-08-09 23:55:35 +02:00
Bertrand Bordage
b620e63104 Typo. 2018-08-09 18:49:36 +02:00
Bertrand Bordage
cd90a973f5 Marks Python 3.7 as an expected failure until Travis CI handles it. 2018-08-09 17:49:25 +02:00
Bertrand Bordage
15be36c6a1 Fixes MySQL tests on Django 2.1. 2018-08-09 17:47:02 +02:00
Bertrand Bordage
81580ae11f Tests QuerySet.explain() on Django 2.1. 2018-08-09 14:30:41 +02:00
Bertrand Bordage
c268a15896 Allows running on Django 2.1. 2018-08-09 14:29:47 +02:00
Robert Sköld
616714f114 Run tests with django 2.1 2018-08-09 14:24:27 +02:00
Bertrand Bordage
2b8f001a21 Version 2.0.2. 2018-07-27 20:27:56 +02:00
Bertrand Bordage
ced95ad3fb Fixes another part of SQLite tests. 2018-07-27 19:14:29 +02:00
Bertrand Bordage
3e42475ef0 Fixes tests on SQLite & MySQL. 2018-07-27 18:25:34 +02:00
Bertrand Bordage
7581c7db0a Handles cases where cache values were tampered with. 2018-07-27 17:07:46 +02:00
Bertrand Bordage
109f06077e Locally import FilteredRelation for Django 1.11 compatibility. 2018-07-27 17:02:58 +02:00
Bertrand Bordage
861f20ed67 Handles .union, .intersection, & .difference. 2018-07-27 16:43:57 +02:00
Bertrand Bordage
2bcf320cbe Tests FilteredRelation, .union, .intersection, & .difference. 2018-07-27 16:25:16 +02:00
Bertrand Bordage
7cdce6735e Adds a test explicitly storing a broken query cache value. 2018-07-27 15:13:04 +02:00
Bertrand Bordage
2a8f139acc Tests unmanaged models. 2018-07-27 14:15:06 +02:00
Bertrand Bordage
522cf930a4 Updates CHANGELOG.rst. 2018-06-15 03:47:35 +02:00