Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Synced up to 0.8.8 tag, and fixed the import as directed in #1229 #1261

Closed
wants to merge 391 commits into from

Conversation

apolkosnik-old
Copy link

This change is Reviewable

rozza and others added 30 commits June 3, 2013 06:03
if `dateutil` is available, use it to parse datetimes
Addition of pre_save_validation and move of pre_save to after validation.
Conflicts:
	AUTHORS
	docs/guide/signals.rst
Remove custom change tracking for ComplexBaseFields just use BaseField's one
FileField now honouring db_alias
Simplify _cls queries when only a single class
@lafrech
Copy link
Member

lafrech commented Mar 23, 2016

try: 
    from django.utils.importlib import import_module
except Exception:
    from importlib import import_module
from django.utils.translation import ugettext_lazy as _

Why not ImportError instead of Exception?

@apolkosnik-old
Copy link
Author

Too much coffee this morning.

@lafrech
Copy link
Member

lafrech commented Mar 23, 2016

@touilleMan, @thedrow, any objection to this fix to the 0.8 branch?

If it is fine with you, we can merge this and release 0.8.9.

@MRigal
Copy link
Member

MRigal commented Mar 23, 2016

I am actually not in favor of having bugfixes for older branches. Since we have no versioning for docs and so, I fear it is opening the door to many other things... We never made this in order to try to keep the focus on the still great amount of other issues we have.
I don't see the point of updating Django but not updating the other libs, like mongoengine and pymongo...
Then if everybody else is in favor, I won't oppose to it...

Also, as it is visible with the amount of commits, the 0.8.x branch was not continued (back in 2014) and I fear that these commits may just make our git history hardly readable...

@wojcikstefan
Copy link
Member

This seems outdated and abandoned. Please create a new PR that's rebased against the latest master if there's still something we should do here.

@apolkosnik
Copy link

It was a stupid simple fix pertaining to 0.8.8, because 0.10.x just kills the performance among other things... See marrow/contentment#12 for a quite large list.

@wojcikstefan
Copy link
Member

Ahh, thanks for linking to that ticket @apolkosnik ! It's a great summary of everything that's wrong with this package at the moment. I'll be working on addressing many of these in near future.

@amcgregor
Copy link
Contributor

@wojcikstefan I mention this not to spam, or to further deride. Reviewing references made to my own ticket, I noticed this one and felt I should mention I've abandoned use of MongoEngine and am now writing my own DAO layer which avoids active record patterns for the most part. (Active collection, fine, active record, that's an insane amount of complexity and rewritten behaviour to track.)

I value feedback—and the documentation is still very WIP—but there may also be alternative approaches or ideas you could "steal" for MongoEngine if you desire. (It's all MIT, so go nuts. ;) As benchmarked elsewhere some time ago, the underlying storage mechanism and metaclasses (from marrow.schema) are a good chunk more performant than the ones MongoEngine currently utilizes, and MongoEngine represents a superset of marrow.schema basic declarative schema usage.

Simplicity and straight-forwardness are the goals, with minimal deviation from modern PyMongo patterns and a preference for MongoDB native type storage in-memory. Simple rules can lead to very interesting complex behaviour, though. For example: QueryableQueryableQueryable. (An optimization for filtering a single condition against multiple fields simultaneously.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.