Bastien Gerard
c00a378776
autoformat with updated black
2020-12-13 00:14:52 +01:00
Bastien Gerard
3926473917
Improve Fields documentation + remove versionadded/changed as it's not maintained
2020-12-06 22:25:12 +01:00
Bastien Gérard
d8b8ff6851
Removed code related to Document.__only_fields and Queryset.only_fields which appear to have no effect
2020-11-02 14:52:02 +01:00
Bastien Gérard
aca4de728e
Merge branch 'master' of github.com:MongoEngine/mongoengine into fix_count_documents_deprecation
2020-08-11 23:01:33 +02:00
Bastien Gérard
194b0cac88
improve doc + changelog
2020-05-26 23:45:35 +02:00
Bastien Gérard
7b4175fc5c
Merge branch 'master' of github.com:MongoEngine/mongoengine into fix_limit0_bug
2020-05-26 23:44:05 +02:00
Bastien Gérard
adb5f74ddb
Fix a bug in limit0 #2311
2020-05-26 23:37:55 +02:00
Agustin Barto
1698f398eb
Add _read_concern to copied properties. Add read_concern to aggregate. Add test to check the read_concern and read_preference values are kept after cloning.
2020-05-20 18:56:13 -03:00
Bastien Gérard
78c9e9745d
fix linting + update changelog & contributors
2020-04-26 22:51:56 +02:00
Bastien Gérard
38ebb5abf4
Merge branch 'master' into feature/allow-setting-read-concern-queryset
2020-04-26 22:36:47 +02:00
Bastien Gérard
0a0e6114f5
Merge branch 'master' into drop_py2_support
2020-04-19 23:13:36 +02:00
Bastien Gérard
2b0157aecd
Improve Queryset.get to avoid confusing message in case multiple match are found
2020-03-22 14:08:29 +01:00
Agustin Barto
8913a74a86
Allow setting the read concern to None
2020-03-17 21:31:05 -03:00
Agustin Barto
af35b25d15
Refactor read_preference to accept a dictionary instead of a ReadPreference instance.
2020-03-17 21:28:08 -03:00
Bastien Gérard
547cd4a3ae
Merge branch 'master' of github.com:MongoEngine/mongoengine into remove_old_deprecated_method
2020-03-17 21:39:36 +01:00
Bastien Gérard
aadc6262ed
remove qs.slave_okay() that is deprecated since pymongo3
2020-03-17 21:10:52 +01:00
Bastien Gérard
85df76c623
Merge branch 'master' of github.com:MongoEngine/mongoengine into drop_py2_support
2020-03-17 09:24:32 +01:00
Bastien Gérard
a3f9016ae9
reformat import for flake8
2020-03-15 22:27:19 +01:00
Bastien Gérard
4e58e9f8d1
Merge branch 'master' of github.com:MongoEngine/mongoengine into feature/allow-setting-read-concern-queryset
2020-03-15 22:25:59 +01:00
Bastien Gérard
c0c0efce18
improve docstring related to #2267 and document the change in the changelog
2020-03-15 22:14:26 +01:00
Bastien Gérard
beabaee345
Merge branch 'master' of github.com:MongoEngine/mongoengine into support-elemmatch-projection
2020-03-15 22:08:20 +01:00
Bastien Gérard
aa4a6ae023
Fix invalid escape seq in codebase
2020-03-15 21:02:44 +01:00
Bastien Gérard
1e110a2c41
run pyupgrade --py3-plus
2020-03-11 23:34:43 +01:00
Bastien Gérard
8086576677
get rid of six
2020-03-11 23:07:03 +01:00
Bastien Gérard
03e34299f0
clean code related to Py2 + six.text_type & six.string_types
2020-03-11 21:50:50 +01:00
Bastien Gérard
421e3f324f
Drop python2 support
2020-03-09 00:18:52 +01:00
Bastien Gérard
a0b803959c
Merge branch 'master' of github.com:MongoEngine/mongoengine into py2py3_improve_compat
2020-03-08 14:44:39 +01:00
Bastien Gérard
ff4d57032a
reformat w black
2020-03-03 23:51:11 +01:00
Agustin Barto
4bca3de42f
Add support for the elemMatch projection operator. Add basic tests to the fields queryset method.
2020-02-14 16:43:07 -03:00
Agustin
8e17e42e26
Allow setting read_concern
2020-01-24 13:11:07 -03:00
Bastien Gérard
86e965f854
remove very old deprecated method
2020-01-13 23:45:42 +01:00
Bastien Gérard
e64a7a9448
reformat with latest black
2020-01-07 22:11:24 +01:00
Bastien Gérard
84f3dce492
fix flake8 findings
2020-01-05 22:50:19 +01:00
Bastien Gérard
60c42dddd5
finalize code related to count_documents migration
2020-01-05 22:29:13 +01:00
Bastien Gérard
f93f9406ee
improve doc next to code
2020-01-05 21:08:20 +01:00
Bastien Gérard
928770c43a
switching to count_documents
2020-01-05 21:01:03 +01:00
Bastien Gérard
b3dbb87c3c
improve doc of aggregate kwargs
2019-12-27 10:06:27 +01:00
Bastien Gérard
aa02f87b69
change & deprecate .aggregate api to mimic pymongo's interface + separate the aggregation tests from the large test_queryset.py file
2019-12-27 09:23:15 +01:00
Bastien Gérard
2ca905b6e5
Finalize python2/3 codebase compatibility and get rid of 2to3
2019-12-13 23:43:04 +01:00
Bastien Gérard
37ca79e9c5
fix black formatting
2019-10-31 22:39:53 +01:00
Bastien Gérard
e3cd553f82
add latest pymongo 3.9 as part of the CI
2019-10-04 21:46:47 +02:00
Bastien Gérard
933cb1d5c7
Merge pull request #2144 from 0a69911a/master
...
Implement collation for queryset
2019-09-11 23:27:25 +02:00
Bastien Gérard
6203e30152
Merge pull request #2160 from vainu-arto/fix-trust-default-cursor-timeout
...
Only set no_cursor_timeout when requested
2019-09-11 22:09:56 +02:00
Bastien Gérard
7d94af0e31
add test coverage for no_cursor_timeout to support recent fix
2019-09-11 21:53:30 +02:00
Arto Jantunen
47f8a126ca
Only set no_cursor_timeout when requested
...
Previously this was always set for all requests. The parameter is only
documented as supported for certain queries, so this was probably wrong.
Mongo version 4.2 fails update queries that have this parameter set making
mongoengine unusable there. Fixes #2148 .
2019-09-03 14:36:06 +03:00
Erdenezul Batmunkh
a06e605e67
Add BulkWriteError exception
2019-08-29 11:11:27 +02:00
Erdenezul Batmunkh
e86cf962e9
Change misleading error message
2019-08-21 13:08:30 +02:00
otrofimov
b887ea9623
Implement collation for queryset
2019-08-08 11:55:45 +03:00
Stefan Wójcik
50555ec73e
Better management of the automatic "_cls" field ( #2112 )
...
* Rename BaseQuerySet._initial_query to BaseQuerySet._cls_query
This new name more accurately reflects the purpose of the dict. It is either
empty for documents that don't use inheritance or it contains a `{"_cls": ...}`
shape query. There was nothing "initial" about it per se.
* Drop read_preference as a kwarg on BaseQuerySet.__call__/filter
It was a poor design choice to offer two different ways to do the same thing:
1. `SomeDoc.objects(foo=bar, bar=baz).read_preference(...)`
2. `SomeDoc.objects(foo=bar, bar=baz, read_preference=...)`
Option 1 is good because it's immediately obvious which part defines the query
to be used and which part defines the read preference.
Option 2 is bad because you don't immediately know whether `read_preference`
is a query kwarg or a reserved keyword with some special behavior. If you
wanted to be particularly cruel, you could even write
`SomeDoc.objects(foo=bar, read_preference=..., bar=baz)`.
THIS IS A BREAKING CHANGE. From now on you have to use the
`BaseQuerySet.read_preference(...)` method.
* Add a BaseQuerySet.clear_cls_query method + get rid of the class_check kwarg
This is similar to what the previous commit did to read preference except that
in this case we were still missing a `BaseQuerySet` method for clearing the
`_cls` query.
Now, instead of the undocumented, untested, and confusing interface:
`ParentDoc.objects(foo=bar, bar=baz, class_check=False)`
We do:
`ParentDoc.objects(foo=bar, bar=baz).clear_cls_query()`
2019-07-03 11:07:55 +02:00
Stefan Wójcik
d0b87f7f82
Drop the deprecated "format" param from BaseQuerySet.explain ( #2113 )
...
That option was pretty useless. You can very easily do:
```
import pprint
(...)
plan = SomeDoc.objects(...).explain()
pprint.pformat(plan)
```
2019-07-01 10:18:47 +02:00