Skip to content

Commit 778c7dc

Browse files
committed
general pep8 and more clean-up
1 parent 4c80154 commit 778c7dc

15 files changed

+81
-110
lines changed

mongoengine/base/datastructures.py

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import weakref
22
import itertools
3+
34
from mongoengine.common import _import_class
45
from mongoengine.errors import DoesNotExist, MultipleObjectsReturned
56

@@ -20,7 +21,7 @@ def __init__(self, dict_items, instance, name):
2021
if isinstance(instance, (Document, EmbeddedDocument)):
2122
self._instance = weakref.proxy(instance)
2223
self._name = name
23-
return super(BaseDict, self).__init__(dict_items)
24+
super(BaseDict, self).__init__(dict_items)
2425

2526
def __getitem__(self, key, *args, **kwargs):
2627
value = super(BaseDict, self).__getitem__(key)
@@ -65,15 +66,15 @@ def __setstate__(self, state):
6566

6667
def clear(self, *args, **kwargs):
6768
self._mark_as_changed()
68-
return super(BaseDict, self).clear(*args, **kwargs)
69+
return super(BaseDict, self).clear()
6970

7071
def pop(self, *args, **kwargs):
7172
self._mark_as_changed()
7273
return super(BaseDict, self).pop(*args, **kwargs)
7374

7475
def popitem(self, *args, **kwargs):
7576
self._mark_as_changed()
76-
return super(BaseDict, self).popitem(*args, **kwargs)
77+
return super(BaseDict, self).popitem()
7778

7879
def setdefault(self, *args, **kwargs):
7980
self._mark_as_changed()
@@ -189,7 +190,7 @@ def remove(self, *args, **kwargs):
189190

190191
def reverse(self, *args, **kwargs):
191192
self._mark_as_changed()
192-
return super(BaseList, self).reverse(*args, **kwargs)
193+
return super(BaseList, self).reverse()
193194

194195
def sort(self, *args, **kwargs):
195196
self._mark_as_changed()
@@ -368,45 +369,58 @@ class StrictDict(object):
368369
__slots__ = ()
369370
_special_fields = set(['get', 'pop', 'iteritems', 'items', 'keys', 'create'])
370371
_classes = {}
372+
371373
def __init__(self, **kwargs):
372-
for k,v in kwargs.iteritems():
374+
for k, v in kwargs.iteritems():
373375
setattr(self, k, v)
376+
374377
def __getitem__(self, key):
375378
key = '_reserved_' + key if key in self._special_fields else key
376379
try:
377380
return getattr(self, key)
378381
except AttributeError:
379382
raise KeyError(key)
383+
380384
def __setitem__(self, key, value):
381385
key = '_reserved_' + key if key in self._special_fields else key
382386
return setattr(self, key, value)
387+
383388
def __contains__(self, key):
384389
return hasattr(self, key)
390+
385391
def get(self, key, default=None):
386392
try:
387393
return self[key]
388394
except KeyError:
389395
return default
396+
390397
def pop(self, key, default=None):
391398
v = self.get(key, default)
392399
try:
393400
delattr(self, key)
394401
except AttributeError:
395402
pass
396403
return v
404+
397405
def iteritems(self):
398406
for key in self:
399407
yield key, self[key]
408+
400409
def items(self):
401410
return [(k, self[k]) for k in iter(self)]
411+
402412
def keys(self):
403413
return list(iter(self))
414+
404415
def __iter__(self):
405416
return (key for key in self.__slots__ if hasattr(self, key))
417+
406418
def __len__(self):
407419
return len(list(self.iteritems()))
420+
408421
def __eq__(self, other):
409422
return self.items() == other.items()
423+
410424
def __neq__(self, other):
411425
return self.items() != other.items()
412426

@@ -417,15 +431,18 @@ def create(cls, allowed_keys):
417431
if allowed_keys not in cls._classes:
418432
class SpecificStrictDict(cls):
419433
__slots__ = allowed_keys_tuple
434+
420435
def __repr__(self):
421-
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+
422438
cls._classes[allowed_keys] = SpecificStrictDict
423439
return cls._classes[allowed_keys]
424440

425441

426442
class SemiStrictDict(StrictDict):
427443
__slots__ = ('_extras')
428444
_classes = {}
445+
429446
def __getattr__(self, attr):
430447
try:
431448
super(SemiStrictDict, self).__getattr__(attr)
@@ -434,6 +451,7 @@ def __getattr__(self, attr):
434451
return self.__getattribute__('_extras')[attr]
435452
except KeyError as e:
436453
raise AttributeError(e)
454+
437455
def __setattr__(self, attr, value):
438456
try:
439457
super(SemiStrictDict, self).__setattr__(attr, value)

mongoengine/base/document.py

Lines changed: 5 additions & 7 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):
@@ -570,7 +569,7 @@ def _get_changed_fields(self, inspected=None):
570569
continue
571570
elif (isinstance(data, (EmbeddedDocument, DynamicEmbeddedDocument))
572571
and db_field_name not in changed_fields):
573-
# Find all embedded fields that have been changed
572+
# Find all embedded fields that have been changed
574573
changed = data._get_changed_fields(inspected)
575574
changed_fields += ["%s%s" % (key, k) for k in changed if k]
576575
elif (isinstance(data, (list, tuple, dict)) and
@@ -621,7 +620,7 @@ def _delta(self):
621620
else:
622621
set_data = doc
623622
if '_id' in set_data:
624-
del(set_data['_id'])
623+
del set_data['_id']
625624

626625
# Determine if any changed items were actually unset.
627626
for path, value in set_data.items():
@@ -632,7 +631,7 @@ def _delta(self):
632631
default = None
633632
if (self._dynamic and len(parts) and parts[0] in
634633
self._dynamic_fields):
635-
del(set_data[path])
634+
del set_data[path]
636635
unset_data[path] = 1
637636
continue
638637
elif path in self._fields:
@@ -666,7 +665,7 @@ def _delta(self):
666665
if default != value:
667666
continue
668667

669-
del(set_data[path])
668+
del set_data[path]
670669
unset_data[path] = 1
671670
return set_data, unset_data
672671

@@ -821,7 +820,6 @@ def _build_index_spec(cls, spec):
821820
parts = key.split('.')
822821
if parts in (['pk'], ['id'], ['_id']):
823822
key = '_id'
824-
fields = []
825823
else:
826824
fields = cls._lookup_field(parts)
827825
parts = []

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
@@ -23,7 +22,6 @@
2322

2423

2524
class BaseField(object):
26-
2725
"""A base class for fields in a MongoDB document. Instances of this class
2826
may be added to subclasses of `Document` to define a document's schema.
2927
@@ -212,7 +210,6 @@ def owner_document(self, owner_document):
212210

213211

214212
class ComplexBaseField(BaseField):
215-
216213
"""Handles complex fields, such as lists / dictionaries.
217214
218215
Allows for nesting of embedded documents inside complex types.
@@ -330,8 +327,8 @@ def to_mongo(self, value):
330327
return GenericReferenceField().to_mongo(value)
331328
cls = value.__class__
332329
val = value.to_mongo()
333-
# If we its a document thats not inherited add _cls
334-
if (isinstance(value, EmbeddedDocument)):
330+
# If it's a document that is not inherited add _cls
331+
if isinstance(value, EmbeddedDocument):
335332
val['_cls'] = cls.__name__
336333
return val
337334

@@ -370,8 +367,8 @@ def to_mongo(self, value):
370367
elif hasattr(v, 'to_mongo'):
371368
cls = v.__class__
372369
val = v.to_mongo()
373-
# If we its a document thats not inherited add _cls
374-
if (isinstance(v, (Document, EmbeddedDocument))):
370+
# If it's a document that is not inherited add _cls
371+
if isinstance(v, (Document, EmbeddedDocument)):
375372
val['_cls'] = cls.__name__
376373
value_dict[k] = val
377374
else:
@@ -422,7 +419,6 @@ def _set_owner_document(self, owner_document):
422419

423420

424421
class ObjectIdField(BaseField):
425-
426422
"""A field wrapper around MongoDB's ObjectIds.
427423
"""
428424

@@ -454,7 +450,6 @@ def validate(self, value):
454450

455451

456452
class GeoJsonBaseField(BaseField):
457-
458453
"""A geo json field storing a geojson style object.
459454
460455
.. versionadded:: 0.8

mongoengine/base/metaclasses.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414

1515

1616
class DocumentMetaclass(type):
17-
1817
"""Metaclass for all documents.
1918
"""
2019

@@ -144,7 +143,7 @@ def __new__(cls, name, bases, attrs):
144143
for base in document_bases:
145144
if _cls not in base._subclasses:
146145
base._subclasses += (_cls,)
147-
base._types = base._subclasses # TODO depreciate _types
146+
base._types = base._subclasses # TODO depreciate _types
148147

149148
(Document, EmbeddedDocument, DictField,
150149
CachedReferenceField) = cls._import_classes()
@@ -250,7 +249,6 @@ def _import_classes(cls):
250249

251250

252251
class TopLevelDocumentMetaclass(DocumentMetaclass):
253-
254252
"""Metaclass for top-level documents (i.e. documents that have their own
255253
collection in the database.
256254
"""
@@ -260,7 +258,7 @@ def __new__(cls, name, bases, attrs):
260258
super_new = super(TopLevelDocumentMetaclass, cls).__new__
261259

262260
# Set default _meta data if base class, otherwise get user defined meta
263-
if (attrs.get('my_metaclass') == TopLevelDocumentMetaclass):
261+
if attrs.get('my_metaclass') == TopLevelDocumentMetaclass:
264262
# defaults
265263
attrs['_meta'] = {
266264
'abstract': True,
@@ -279,7 +277,7 @@ def __new__(cls, name, bases, attrs):
279277
attrs['_meta'].update(attrs.get('meta', {}))
280278
else:
281279
attrs['_meta'] = attrs.get('meta', {})
282-
# Explictly set abstract to false unless set
280+
# Explicitly set abstract to false unless set
283281
attrs['_meta']['abstract'] = attrs['_meta'].get('abstract', False)
284282
attrs['_is_base_cls'] = False
285283

@@ -294,7 +292,7 @@ def __new__(cls, name, bases, attrs):
294292

295293
# Clean up top level meta
296294
if 'meta' in attrs:
297-
del(attrs['meta'])
295+
del attrs['meta']
298296

299297
# Find the parent document class
300298
parent_doc_cls = [b for b in flattened_bases
@@ -307,7 +305,7 @@ def __new__(cls, name, bases, attrs):
307305
and not parent_doc_cls._meta.get('abstract', True)):
308306
msg = "Trying to set a collection on a subclass (%s)" % name
309307
warnings.warn(msg, SyntaxWarning)
310-
del(attrs['_meta']['collection'])
308+
del attrs['_meta']['collection']
311309

312310
# Ensure abstract documents have abstract bases
313311
if attrs.get('_is_base_cls') or attrs['_meta'].get('abstract'):
@@ -425,7 +423,6 @@ def get_auto_id_names(self):
425423

426424

427425
class MetaDict(dict):
428-
429426
"""Custom dictionary for meta classes.
430427
Handles the merging of set indexes
431428
"""
@@ -440,6 +437,5 @@ def merge(self, new_options):
440437

441438

442439
class BasesTuple(tuple):
443-
444440
"""Special class to handle introspection of bases tuple in __new__"""
445441
pass

mongoengine/connection.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ def get_connection(alias=DEFAULT_CONNECTION_NAME, reconnect=False):
120120
try:
121121
connection = None
122122
# check for shared connections
123-
connection_settings_iterator = ((db_alias, settings.copy()) for db_alias, settings in _connection_settings.iteritems())
123+
connection_settings_iterator = (
124+
(db_alias, settings.copy()) for db_alias, settings in _connection_settings.iteritems())
124125
for db_alias, connection_settings in connection_settings_iterator:
125126
connection_settings.pop('name', None)
126127
connection_settings.pop('username', None)

mongoengine/dereference.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212

1313
class DeReference(object):
14-
1514
def __call__(self, items, max_depth=1, instance=None, name=None):
1615
"""
1716
Cheaply dereferences the items to a set depth.
@@ -49,8 +48,8 @@ def __call__(self, items, max_depth=1, instance=None, name=None):
4948

5049
if is_list and all([i.__class__ == doc_type for i in items]):
5150
return items
52-
elif not is_list and all([i.__class__ == doc_type
53-
for i in items.values()]):
51+
elif not is_list and all(
52+
[i.__class__ == doc_type for i in items.values()]):
5453
return items
5554
elif not field.dbref:
5655
if not hasattr(items, 'items'):
@@ -155,7 +154,7 @@ def _fetch_objects(self, doc_type=None):
155154
elif doc_type is None:
156155
doc = get_document(
157156
''.join(x.capitalize()
158-
for x in collection.split('_')))._from_son(ref)
157+
for x in collection.split('_')))._from_son(ref)
159158
else:
160159
doc = doc_type._from_son(ref)
161160
object_map[(collection, doc.id)] = doc

0 commit comments

Comments
 (0)