Skip to content

Commit 042cc66

Browse files
committed
general pep8 and more clean-up
1 parent 42ba4a5 commit 042cc66

File tree

16 files changed

+92
-131
lines changed

16 files changed

+92
-131
lines changed

mongoengine/base/datastructures.py

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import weakref
2-
import functools
32
import itertools
3+
44
from mongoengine.common import _import_class
55
from mongoengine.errors import DoesNotExist, MultipleObjectsReturned
66

@@ -21,7 +21,7 @@ def __init__(self, dict_items, instance, name):
2121
if isinstance(instance, (Document, EmbeddedDocument)):
2222
self._instance = weakref.proxy(instance)
2323
self._name = name
24-
return super(BaseDict, self).__init__(dict_items)
24+
super(BaseDict, self).__init__(dict_items)
2525

2626
def __getitem__(self, key, *args, **kwargs):
2727
value = super(BaseDict, self).__getitem__(key)
@@ -66,15 +66,15 @@ def __setstate__(self, state):
6666

6767
def clear(self, *args, **kwargs):
6868
self._mark_as_changed()
69-
return super(BaseDict, self).clear(*args, **kwargs)
69+
return super(BaseDict, self).clear()
7070

7171
def pop(self, *args, **kwargs):
7272
self._mark_as_changed()
7373
return super(BaseDict, self).pop(*args, **kwargs)
7474

7575
def popitem(self, *args, **kwargs):
7676
self._mark_as_changed()
77-
return super(BaseDict, self).popitem(*args, **kwargs)
77+
return super(BaseDict, self).popitem()
7878

7979
def setdefault(self, *args, **kwargs):
8080
self._mark_as_changed()
@@ -190,7 +190,7 @@ def remove(self, *args, **kwargs):
190190

191191
def reverse(self, *args, **kwargs):
192192
self._mark_as_changed()
193-
return super(BaseList, self).reverse(*args, **kwargs)
193+
return super(BaseList, self).reverse()
194194

195195
def sort(self, *args, **kwargs):
196196
self._mark_as_changed()
@@ -369,45 +369,58 @@ class StrictDict(object):
369369
__slots__ = ()
370370
_special_fields = set(['get', 'pop', 'iteritems', 'items', 'keys', 'create'])
371371
_classes = {}
372+
372373
def __init__(self, **kwargs):
373-
for k,v in kwargs.iteritems():
374+
for k, v in kwargs.iteritems():
374375
setattr(self, k, v)
376+
375377
def __getitem__(self, key):
376378
key = '_reserved_' + key if key in self._special_fields else key
377379
try:
378380
return getattr(self, key)
379381
except AttributeError:
380382
raise KeyError(key)
383+
381384
def __setitem__(self, key, value):
382385
key = '_reserved_' + key if key in self._special_fields else key
383386
return setattr(self, key, value)
387+
384388
def __contains__(self, key):
385389
return hasattr(self, key)
390+
386391
def get(self, key, default=None):
387392
try:
388393
return self[key]
389394
except KeyError:
390395
return default
396+
391397
def pop(self, key, default=None):
392398
v = self.get(key, default)
393399
try:
394400
delattr(self, key)
395401
except AttributeError:
396402
pass
397403
return v
404+
398405
def iteritems(self):
399406
for key in self:
400407
yield key, self[key]
408+
401409
def items(self):
402410
return [(k, self[k]) for k in iter(self)]
411+
403412
def keys(self):
404413
return list(iter(self))
414+
405415
def __iter__(self):
406416
return (key for key in self.__slots__ if hasattr(self, key))
417+
407418
def __len__(self):
408419
return len(list(self.iteritems()))
420+
409421
def __eq__(self, other):
410422
return self.items() == other.items()
423+
411424
def __neq__(self, other):
412425
return self.items() != other.items()
413426

@@ -418,15 +431,18 @@ def create(cls, allowed_keys):
418431
if allowed_keys not in cls._classes:
419432
class SpecificStrictDict(cls):
420433
__slots__ = allowed_keys_tuple
434+
421435
def __repr__(self):
422-
return "{%s}" % ', '.join('"{0!s}": {0!r}'.format(k,v) for (k,v) in self.iteritems())
436+
return "{%s}" % ', '.join('"{0!s}": {0!r}'.format(k, v) for (k, v) in self.iteritems())
437+
423438
cls._classes[allowed_keys] = SpecificStrictDict
424439
return cls._classes[allowed_keys]
425440

426441

427442
class SemiStrictDict(StrictDict):
428443
__slots__ = ('_extras')
429444
_classes = {}
445+
430446
def __getattr__(self, attr):
431447
try:
432448
super(SemiStrictDict, self).__getattr__(attr)
@@ -435,6 +451,7 @@ def __getattr__(self, attr):
435451
return self.__getattribute__('_extras')[attr]
436452
except KeyError as e:
437453
raise AttributeError(e)
454+
438455
def __setattr__(self, attr, value):
439456
try:
440457
super(SemiStrictDict, self).__setattr__(attr, value)

mongoengine/base/document.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
from mongoengine.errors import (ValidationError, InvalidDocumentError,
1515
LookUpError, FieldDoesNotExist)
1616
from mongoengine.python_support import PY3, txt_type
17-
1817
from mongoengine.base.common import get_document, ALLOW_INHERITANCE
1918
from mongoengine.base.datastructures import (
2019
BaseDict,
@@ -420,7 +419,7 @@ def to_json(self, *args, **kwargs):
420419
:param use_db_field: Set to True by default but enables the output of the json structure with the field names and not the mongodb store db_names in case of set to False
421420
"""
422421
use_db_field = kwargs.pop('use_db_field', True)
423-
return json_util.dumps(self.to_mongo(use_db_field), *args, **kwargs)
422+
return json_util.dumps(self.to_mongo(use_db_field), *args, **kwargs)
424423

425424
@classmethod
426425
def from_json(cls, json_data, created=False):
@@ -569,7 +568,7 @@ def _get_changed_fields(self, inspected=None):
569568
continue
570569
elif (isinstance(data, (EmbeddedDocument, DynamicEmbeddedDocument))
571570
and db_field_name not in changed_fields):
572-
# Find all embedded fields that have been changed
571+
# Find all embedded fields that have been changed
573572
changed = data._get_changed_fields(inspected)
574573
changed_fields += ["%s%s" % (key, k) for k in changed if k]
575574
elif (isinstance(data, (list, tuple, dict)) and
@@ -614,7 +613,7 @@ def _delta(self):
614613
else:
615614
set_data = doc
616615
if '_id' in set_data:
617-
del(set_data['_id'])
616+
del set_data['_id']
618617

619618
# Determine if any changed items were actually unset.
620619
for path, value in set_data.items():
@@ -625,7 +624,7 @@ def _delta(self):
625624
default = None
626625
if (self._dynamic and len(parts) and parts[0] in
627626
self._dynamic_fields):
628-
del(set_data[path])
627+
del set_data[path]
629628
unset_data[path] = 1
630629
continue
631630
elif path in self._fields:
@@ -659,7 +658,7 @@ def _delta(self):
659658
if default != value:
660659
continue
661660

662-
del(set_data[path])
661+
del set_data[path]
663662
unset_data[path] = 1
664663
return set_data, unset_data
665664

@@ -775,7 +774,7 @@ def _build_index_spec(cls, spec):
775774
allow_inheritance = cls._meta.get('allow_inheritance',
776775
ALLOW_INHERITANCE)
777776
include_cls = (allow_inheritance and not spec.get('sparse', False) and
778-
spec.get('cls', True))
777+
spec.get('cls', True))
779778

780779
# 733: don't include cls if index_cls is False unless there is an explicit cls with the index
781780
include_cls = include_cls and (spec.get('cls', False) or cls._meta.get('index_cls', True))
@@ -805,7 +804,6 @@ def _build_index_spec(cls, spec):
805804
parts = key.split('.')
806805
if parts in (['pk'], ['id'], ['_id']):
807806
key = '_id'
808-
fields = []
809807
else:
810808
fields = cls._lookup_field(parts)
811809
parts = []
@@ -966,7 +964,7 @@ def _lookup_field(cls, parts):
966964
if hasattr(getattr(field, 'field', None), 'lookup_member'):
967965
new_field = field.field.lookup_member(field_name)
968966
else:
969-
# Look up subfield on the previous field
967+
# Look up subfield on the previous field
970968
new_field = field.lookup_member(field_name)
971969
if not new_field and isinstance(field, ComplexBaseField):
972970
if hasattr(field.field, 'document_type') and cls._dynamic \

mongoengine/base/fields.py

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
from mongoengine.common import _import_class
99
from mongoengine.errors import ValidationError
10-
1110
from mongoengine.base.common import ALLOW_INHERITANCE
1211
from mongoengine.base.datastructures import (
1312
BaseDict, BaseList, EmbeddedDocumentList
@@ -18,7 +17,6 @@
1817

1918

2019
class BaseField(object):
21-
2220
"""A base class for fields in a MongoDB document. Instances of this class
2321
may be added to subclasses of `Document` to define a document's schema.
2422
@@ -191,7 +189,6 @@ def _validate(self, value, **kwargs):
191189

192190

193191
class ComplexBaseField(BaseField):
194-
195192
"""Handles complex fields, such as lists / dictionaries.
196193
197194
Allows for nesting of embedded documents inside complex types.
@@ -308,8 +305,8 @@ def to_mongo(self, value):
308305
return GenericReferenceField().to_mongo(value)
309306
cls = value.__class__
310307
val = value.to_mongo()
311-
# If we its a document thats not inherited add _cls
312-
if (isinstance(value, EmbeddedDocument)):
308+
# If it's a document that is not inherited add _cls
309+
if isinstance(value, EmbeddedDocument):
313310
val['_cls'] = cls.__name__
314311
return val
315312

@@ -348,8 +345,8 @@ def to_mongo(self, value):
348345
elif hasattr(v, 'to_mongo'):
349346
cls = v.__class__
350347
val = v.to_mongo()
351-
# If we its a document thats not inherited add _cls
352-
if (isinstance(v, (Document, EmbeddedDocument))):
348+
# If it's a document that is not inherited add _cls
349+
if isinstance(v, (Document, EmbeddedDocument)):
353350
val['_cls'] = cls.__name__
354351
value_dict[k] = val
355352
else:
@@ -405,7 +402,6 @@ def _get_owner_document(self, owner_document):
405402

406403

407404
class ObjectIdField(BaseField):
408-
409405
"""A field wrapper around MongoDB's ObjectIds.
410406
"""
411407

@@ -434,7 +430,6 @@ def validate(self, value):
434430

435431

436432
class GeoJsonBaseField(BaseField):
437-
438433
"""A geo json field storing a geojson style object.
439434
440435
.. versionadded:: 0.8

mongoengine/base/metaclasses.py

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,18 @@
11
import warnings
22

3-
import pymongo
4-
53
from mongoengine.common import _import_class
64
from mongoengine.errors import InvalidDocumentError
75
from mongoengine.python_support import PY3
86
from mongoengine.queryset import (DO_NOTHING, DoesNotExist,
97
MultipleObjectsReturned,
10-
QuerySet, QuerySetManager)
11-
8+
QuerySetManager)
129
from mongoengine.base.common import _document_registry, ALLOW_INHERITANCE
1310
from mongoengine.base.fields import BaseField, ComplexBaseField, ObjectIdField
1411

1512
__all__ = ('DocumentMetaclass', 'TopLevelDocumentMetaclass')
1613

1714

1815
class DocumentMetaclass(type):
19-
2016
"""Metaclass for all documents.
2117
"""
2218

@@ -146,7 +142,7 @@ def __new__(cls, name, bases, attrs):
146142
for base in document_bases:
147143
if _cls not in base._subclasses:
148144
base._subclasses += (_cls,)
149-
base._types = base._subclasses # TODO depreciate _types
145+
base._types = base._subclasses # TODO depreciate _types
150146

151147
(Document, EmbeddedDocument, DictField,
152148
CachedReferenceField) = cls._import_classes()
@@ -251,7 +247,6 @@ def _import_classes(cls):
251247

252248

253249
class TopLevelDocumentMetaclass(DocumentMetaclass):
254-
255250
"""Metaclass for top-level documents (i.e. documents that have their own
256251
collection in the database.
257252
"""
@@ -261,7 +256,7 @@ def __new__(cls, name, bases, attrs):
261256
super_new = super(TopLevelDocumentMetaclass, cls).__new__
262257

263258
# Set default _meta data if base class, otherwise get user defined meta
264-
if (attrs.get('my_metaclass') == TopLevelDocumentMetaclass):
259+
if attrs.get('my_metaclass') == TopLevelDocumentMetaclass:
265260
# defaults
266261
attrs['_meta'] = {
267262
'abstract': True,
@@ -280,7 +275,7 @@ def __new__(cls, name, bases, attrs):
280275
attrs['_meta'].update(attrs.get('meta', {}))
281276
else:
282277
attrs['_meta'] = attrs.get('meta', {})
283-
# Explictly set abstract to false unless set
278+
# Explicitly set abstract to false unless set
284279
attrs['_meta']['abstract'] = attrs['_meta'].get('abstract', False)
285280
attrs['_is_base_cls'] = False
286281

@@ -295,7 +290,7 @@ def __new__(cls, name, bases, attrs):
295290

296291
# Clean up top level meta
297292
if 'meta' in attrs:
298-
del(attrs['meta'])
293+
del attrs['meta']
299294

300295
# Find the parent document class
301296
parent_doc_cls = [b for b in flattened_bases
@@ -308,7 +303,7 @@ def __new__(cls, name, bases, attrs):
308303
and not parent_doc_cls._meta.get('abstract', True)):
309304
msg = "Trying to set a collection on a subclass (%s)" % name
310305
warnings.warn(msg, SyntaxWarning)
311-
del(attrs['_meta']['collection'])
306+
del attrs['_meta']['collection']
312307

313308
# Ensure abstract documents have abstract bases
314309
if attrs.get('_is_base_cls') or attrs['_meta'].get('abstract'):
@@ -411,7 +406,6 @@ def __new__(cls, name, bases, attrs):
411406

412407

413408
class MetaDict(dict):
414-
415409
"""Custom dictionary for meta classes.
416410
Handles the merging of set indexes
417411
"""
@@ -426,6 +420,5 @@ def merge(self, new_options):
426420

427421

428422
class BasesTuple(tuple):
429-
430423
"""Special class to handle introspection of bases tuple in __new__"""
431424
pass

mongoengine/connection.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,8 @@ def get_connection(alias=DEFAULT_CONNECTION_NAME, reconnect=False):
114114
try:
115115
connection = None
116116
# check for shared connections
117-
connection_settings_iterator = ((db_alias, settings.copy()) for db_alias, settings in _connection_settings.iteritems())
117+
connection_settings_iterator = (
118+
(db_alias, settings.copy()) for db_alias, settings in _connection_settings.iteritems())
118119
for db_alias, connection_settings in connection_settings_iterator:
119120
connection_settings.pop('name', None)
120121
connection_settings.pop('username', None)

0 commit comments

Comments
 (0)