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

Appengine 1.4 #58

Open
wants to merge 66 commits into
base: appengine-1.4
Choose a base branch
from
Open

Conversation

dragonx
Copy link

@dragonx dragonx commented Aug 19, 2013

This is a pull request from my currently working repo. It's got a lot of stuff in it, but primarily:

aburgel's ancestor query work is merged in.
support for various devappserver2 issues, making stuff like dumpdata and loaddata work properly.
there's a hack in there for switching between dev_appserver and devappserver2. Create a file called "force_devappserver.py" in the project root with a single line "devappserver_ver = 1" (or 2)

aburgel and others added 30 commits November 25, 2011 20:31
…nonrel/djangoappengine into develop

Conflicts:
	db/compiler.py
It's possible to use a django DateField or TimeField but have your own encoding in the datastore.  In this case, we may not get a datetime value, so check type first.
User and others added 29 commits October 4, 2012 14:30
…djangoappengine into django-1.4

Conflicts:
	db/compiler.py
The main benefit of both is to be able to pass in a Django model instead of a db.Model to get Keys or entities.

Note that DjangoEntityInputReader returns a raw entity instead of a Django object instance.
This is particularly useful for working with old entities in the datastore that may not match the latest Django model.  Django's model classes could raise exceptions if properties were missing, but this class will allow fetching those entities.  The developer can then add the missing properties, or whatever.
Fix socket retry code to find unused socket for next test.
This is really limited, a lot of things don't work (like tests and dumpdata)
Figured out how to get manage.py test, shell and dumpdata working.
…ngo-1.4

- Includes LiveServerTestCase which works with Selenium
- Includes merging in AncestorKey implementation
- Includes various other fixes for field types derived from DateTime fields causing breaks.
- Includes fix for User API login not working.
- Include switch to WSGI for python 2.7
Try original dev_appserver code, and fail to devappserver2 version.
….7.5 running dev_appserver, or devappserver2 0.8.

Currently we detect between dev_appserver and devappserver2 based on availability of certain modules.
In SDK 1.7.5, both dev_appserver and devappserver2 are available, and we default to dev_appserver for backwards compatibility.  Does not have a current way to force devappserver2 in this case.
This makes the FileField's ClearableFileInput widget show up properly when there's an existing file in the model.
Force use of devappserver2 by putting a file in the root of your project called force_devappserver.py
The file should contain a single variable:

devappsever_ver = 1 or 2

manage.py runserver, test and remote shell commands work on both devappserver1/2
manage.py shell works on devappserver1 but not devappserver2.
Other commands have not been tested.
Can currently only run one test at a time, since server sometimes fails to shut down.
…commands like manage.py shell/dumpdat work.

We need to patch runserver a bit so that it resets the stubs, otherwise we get an exception in devappserver2.
…pserver2.

Make python manage.py deploy work.  Removed the use of the appcfg -R flag, it shouldn't be necessary.
…e displayed without the blobkey (ie in form FileField)
…ine into appengine-1.4

Conflicts:
	djangoappengine/db/creation.py
	djangoappengine/db/stubs.py
	djangoappengine/db/utils.py
	djangoappengine/tests/__init__.py
This wasn't necessary on the original dev_appserver, but necessary on devappserver2 since it defaults to eventually consistent.
We can remove the same call from testserver in this case.
@dragonx
Copy link
Author

dragonx commented Nov 28, 2013

BTW I had looked into the Travis CI falure. I changed some settings to set up the Images API so I can test blobstore functionality. On the dev_server, this requires PIL, which isn't set up in the Travis environment, so you get Travis failures.

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.

2 participants