Bastien Gérard
87f4d1a323
Merge branch 'master' of github.com:MongoEngine/mongoengine into drop_py2_support
2020-04-25 13:51:21 +02:00
Bastien Gérard
ee2d50b2d1
remove drop_dups index option, deprecated with MongoDB3
2020-03-17 21:38:50 +01:00
Bastien Gérard
1e110a2c41
run pyupgrade --py3-plus
2020-03-11 23:34:43 +01:00
Bastien Gérard
b234aa48e4
run pyupgrade
2020-03-11 23:21:38 +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
Stefan Wójcik
b47669403b
Format the codebase using Black ( #2109 )
...
This commit:
1. Formats all of our existing code using `black`.
2. Adds a note about using `black` to `CONTRIBUTING.rst`.
3. Runs `black --check` as part of CI (failing builds that aren't properly formatted).
2019-06-27 13:05:54 +02:00
Stefan Wojcik
0578cdb62e
Cleaner loop using itertools.count()
2019-06-25 11:41:27 +02:00
Stefan Wojcik
b661afba01
Use set comprehensions for existing_fields & existing_db_fields
2019-06-25 11:34:31 +02:00
Stefan Wojcik
f45552f8f8
Drop support for positional arguments when instantiating a document
...
For example, if you had the following class:
```
class Person(Document):
name = StringField()
age = IntField()
```
You could instantiate an object of such class by doing one of the following:
1. `new_person = Person('Tom', 30)`
2. `new_person = Person('Tom', age=30)`
3. `new_person = Person(name='Tom', age=30)`
From now on, only option (3) is allowed.
Supporting positional arguments may sound like a reasonable idea in this
heavily simplified example, but in real life it's almost never what you want
(especially if you use inheritance in your document definitions) and it may
lead to ugly bugs. We should not rely on the *order* of fields to match a given
value to a given name.
This also helps us simplify the code e.g. by dropping the confusing (and
undocumented) `BaseDocument._auto_id_field` attribute.
2019-06-24 15:44:35 +02:00
Bastien Gérard
00d2fd685a
more test cov
2019-05-17 22:04:28 +02:00
Bastien Gérard
6d353dae1e
refactored iteritems/itervalues to improve 2/3 compat #2003
2019-02-18 22:13:05 +01:00
erdenezul
ffe902605d
Merge pull request #1918 from bagerard/improve_error_cant_subclass_document
...
Improve the error message that mentions that Document cant be subclassed
2018-10-15 11:18:13 +08:00
Bastien Gérard
556f7e85fc
Improve the error message that mentions that Document cant be subclassed
2018-10-10 23:13:34 +02:00
Bastien Gérard
adfb039ba6
Improve overall code quality (based on pylint findings)
2018-10-07 23:05:18 +02:00
Stefan Wójcik
835d3c3d18
Improve the health of this package ( #1428 )
2016-12-11 18:49:21 -05:00
Stefan Wójcik
3c455cf1c1
Improve health of this package ( #1409 )
...
* added flake8 and flake8-import-order to travis for py27
* fixed a test that fails from time to time depending on an order of a dict
* flake8 tweaks for the entire codebase excluding tests
2016-11-28 19:00:34 -05:00
Matthieu Rigal
0aeb1ca408
Various fixes again
2015-06-24 00:50:36 +02:00
mrigal
778c7dc5f2
general pep8 and more clean-up
2015-06-23 23:15:44 +02:00
Matthieu Rigal
3093175f54
SequenceField for abstract classes now have a proper name
2015-06-12 11:03:52 +02:00
Matthieu Rigal
8108198613
corrected formatting for Python 2.6 compatibility
2015-06-11 22:48:34 +02:00
Matthieu Rigal
915849b2ce
Implemented method to auto-generate non-collisioning auto_id names
2015-06-11 22:48:34 +02:00
mrigal
53fbc165ba
added content of PR #688 with a test to proove it is a bit right
2015-06-11 22:47:10 +02:00
mrigal
46817caa68
various unused imports removed (I am allergic)
2015-05-07 12:47:29 +02:00
Matthew Ellison
5d6a28954b
Reflect Inheritance in Field's 'owner_document'
...
The 'owner_document' property of a Field now reflects the parent field
which first contained the Field when a Document in inherited.
Fixes #954
Closes #955
2015-04-29 14:23:57 -04:00
DavidBord
9a4aef0358
fix-#789: abstract shouldn't be inherited in EmbeddedDocument
2014-10-29 13:36:42 +02:00
DavidBord
9b30afeca9
fix-#397: Allow specifying the '_cls' as a field for indexes
2014-08-24 10:51:49 +03:00
Wilson Júnior
6c0112c2be
refs #709 , added support to disable auto_sync
2014-07-25 18:12:26 -03:00
Wilson Júnior
87c97efce0
refs #709 , added CachedReferenceField.sync_all to sync all documents on demand
2014-07-25 08:44:59 -03:00
Wilson Júnior
6c4aee1479
added CachedReferenceField restriction to use in EmbeddedDocument
2014-07-17 13:42:34 -03:00
Frank Battaglia
9d125c9e79
inherit parent Document type _auto_id_field value
2014-02-24 11:10:02 -05:00
Ross Lawley
af86aee970
_dynamic field updates - fixed pickling and creation order
...
Dynamic fields are ordered based on creation and stored in _fields_ordered (#396 )
Fixed pickling dynamic documents `_dynamic_fields` (#387 )
2013-07-10 10:57:24 +00:00
Ross Lawley
7451244cd2
Fixed cascading saves which weren't turned off as planned ( #291 )
2013-06-06 21:04:54 +00:00
Ross Lawley
dc3b09c218
Improved cascading saves write performance ( #361 )
2013-06-06 16:36:17 +00:00
Ross Lawley
3ccc495c75
Fixed register_delete_rule inheritance issue
2013-05-03 12:56:53 +00:00
Ross Lawley
14b6c471cf
Fix PY3 hasattr connecting to the db at define time
2013-04-22 16:37:09 +00:00
Ross Lawley
efad628a87
Objects queryset manager now inherited ( #256 )
2013-04-22 15:32:11 +00:00
Ross Lawley
51e50bf0a9
Merge branch 'master' into 0.8M
...
Conflicts:
AUTHORS
docs/django.rst
mongoengine/base.py
mongoengine/queryset.py
tests/fields/fields.py
tests/queryset/queryset.py
tests/test_dereference.py
tests/test_document.py
2013-04-17 11:57:53 +00:00
Ross Lawley
692f00864d
Fixed inheritance and unique index creation ( #140 )
2013-01-22 15:16:58 +00:00
Ross Lawley
420c3e0073
Fixing for python2.5
...
closes #188
2012-12-19 12:51:42 +00:00
Ross Lawley
3598fe0fb4
Adding _collection to _cls
2012-11-27 14:02:50 +00:00
Ross Lawley
3d5b6ae332
Inheritance is off by default ( MongoEngine/mongoengine#122 )
2012-10-22 19:29:26 +00:00
Ross Lawley
6f29d12386
Changed the inheritance model to remove types
...
The inheritance model has changed, we no longer need to store an array of
`types` with the model we can just use the classname in `_cls`.
See the upgrade docs for information on how to upgrade
MongoEngine/mongoengine#148
2012-10-15 13:48:02 +00:00