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

Proposal: split out Django support #958

Closed
noirbizarre opened this issue Apr 16, 2015 · 20 comments · Fixed by #973
Closed

Proposal: split out Django support #958

noirbizarre opened this issue Apr 16, 2015 · 20 comments · Fixed by #973
Assignees

Comments

@noirbizarre
Copy link
Collaborator

Hi !

For many reason, it would be better to have Django support splitted out in its own module:

  • MongoEngine is a framework agnostic ORM
  • Django support is the only framework supported in mongoengine while others have their own module (ex: flask-mongoengine)
  • Having to test Django versions make the testing very hard and long (generates 52 combinations without PyMongo 3), it would be easier as a separate project
  • separation will allow to update django-mongoengine on new mongo release without the need to touch mongoengine
  • Separation of concerns

So, I think it would be better to have:

  • django-mongoengine a Django specific support where it would be easier to test on different Django versions
  • mongoengine, the framework agnostic ORM where it would be way easier to test on different versions of PyMongo, without testing on Django

Apparently the work was started but not updated : https://github.com/MongoEngine/django-mongoengine

@noirbizarre
Copy link
Collaborator Author

I don't know the state of the current django-mongoengine.
I'm not using Django anymore but I still can help for the transition.

@rozza
Copy link
Contributor

rozza commented Apr 22, 2015

👍 Would make supporting django simpler and we can specifically support different versions.

@rozza
Copy link
Contributor

rozza commented Apr 22, 2015

mongoengine/django-mongoengine is free for use - it had some initial momentum but its been two years since the last commit. It also has a warning not to clone on it. I could rename and add a new repo incase anyone relied on the code.

@mmellison
Copy link
Contributor

👍

I like the idea of re-writing the Django support as its own separate extension. I believe it help the Django integration more coverage and attention.

@mmellison
Copy link
Contributor

There probably needs to be a discussion around if we re-write the Django support, what do we do with the open issues / PRs surrounding Django.

One idea is to label them with a temporary "New Django" label and close them out. Then we can go back and inspect them as needed during development of the new extension.

@noirbizarre
Copy link
Collaborator Author

@seglberg: the label+close seems to be a good solution. It will helps for the bug triage.

For the legacy django-mongoengine, PyPI shows there was no download at all:
https://pypi.python.org/pypi/django-mongoengine

@mmellison
Copy link
Contributor

Okay, I will spend some time labeling any currently open Django bugs.

Is everyone still OK with removing Django support from the MongoEngine "core" repository and re-visiting support with a new, but separate module?

@thedrow @MRigal @DavidBord @rozza @yograterol

I like the whole maintainer voting idea since we have been keeping most of our maintainer communication limited to GitHub :)

+1 from me.

@MacMaru
Copy link
Contributor

MacMaru commented Apr 27, 2015

+1 we moved to mongoengine because we wanted to be rid of Django.

@rozza
Copy link
Contributor

rozza commented Apr 27, 2015

+1 but we should move the current code to the django mongoengine repo and publish it to pypi - that way no one loses any code and hopefully then some Djangonauts will want to maintain it and make it better :)

@mmellison
Copy link
Contributor

Do we actually want to move the existing Django code to the django-mongoengine repository or do we want to start clean like @thedrow suggested?

I'm leaning towards a re-write, because I do agree that Django support was pretty broken. Plus I'm not sure if it is a best use of resources to break out the existing extension, clean up module, fix unit tests, publish to pypi, etc. I can update the documentation to point out that the "legacy" extension can be found bundled in the 0.9 release.

Thoughts?

@rozza
Copy link
Contributor

rozza commented Apr 28, 2015

I'm happy to take the lead from any Django users :) I'm not sure how broken it was or if it was just very outdated. I like the idea of updating the documentation and pointing to 0.9 we can also add a call to arms for any potential developers as currently django-mongoengine is a dead repo.

So I'm happy either way 👍 as I don't think it has to be a blocker for removal.

@DavidBord
Copy link
Contributor

+1

@MRigal
Copy link
Member

MRigal commented Apr 28, 2015

+1 for me also. Sorry i have a serious injury and can't contribute so much
these days
Am 28.04.2015 14:27 schrieb "David Bordeynik" notifications@github.com:

+1


Reply to this email directly or view it on GitHub
#958 (comment)
.

mmellison added a commit that referenced this issue Apr 28, 2015
@dblado
Copy link

dblado commented May 9, 2015

Has anyone come forward to take on Django support for MongoEngine? I fully support separating it out -- but now I'm stuck not being able to upgrade MongoEngine and continuing to allow authentication on my site. Can someone identify what was broken w/ the old code that it couldn't be salvaged as a stop gap?

mmellison added a commit to MRigal/mongoengine that referenced this issue Jun 1, 2015
Django support has now been split out of MongoEngine and will be
revisted as a new but separate module.

Closes MongoEngine#958
mmellison added a commit to MRigal/mongoengine that referenced this issue Jun 21, 2015
Django support has now been split out of MongoEngine and will be
revisted as a new but separate module.

Closes MongoEngine#958
thomasst pushed a commit to closeio/mongoengine that referenced this issue Jul 14, 2015
Django support has now been split out of MongoEngine and will be
revisted as a new but separate module.

Closes MongoEngine#958

Conflicts:
	.travis.yml
	docs/changelog.rst
	docs/django.rst
	mongoengine/django/auth.py
	mongoengine/django/mongo_auth/models.py
	mongoengine/django/sessions.py
	mongoengine/django/storage.py
	mongoengine/django/tests.py
	setup.py
	tests/test_django.py
@foodaemon
Copy link

since django-mongoengine had no activity since two years and i was needing to use the features quite badly and fix some bugs, i went ahead and worked on a version which i am updating as per my need and it works. If anyone wants to contribute, please feel free to fork it. Here is the link to the repository: https://github.com/nixdaemon/django-me

@afgane
Copy link

afgane commented Dec 15, 2015

https://github.com/MongoEngine/django-mongoengine seems to say not to use, so I guess at this point there's no support for Django in mongoengine unless you go with 0.9 release?

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

Successfully merging a pull request may close this issue.

11 participants