typhoonae 0.2.0
Typhoon App Engine.
License: Apache License 2.0
Keywords: gae,appengine,wsgi,fastcgi

==================
Typhoon App Engine
==================

The TyphoonAE project aims at providing a full-featured and productive serving
environment to run Google App Engine (Python) applications. It delivers the
parts for building your own scalable App Engine while staying compatible with
Google's API.


Copyright and License
---------------------

Copyright 2009, 2010 Tobias Rodaebel

This software is released under the Apache License, Version 2.0. You may obtain
a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Google App Engine is a trademark of Google Inc.


Installation
------------

Since the TyphoonAE Python package contains glue code for various service
components, it is recommended to install this software with zc.buildout and the
buildout configuration which can be downloaded here::

  http://typhoonae.googlecode.com/files/typhoonae-buildout-0.2.0.tar.gz

Unpack the archive and follow the steps described in the README.txt file. This
package and the Google App Engine SDK 1.4.0 will also be installed by the
buildout.

For the ones who don't want to build their own TyphoonAE environment, we supply
a preconfigured VMware appliance. See http://code.google.com/p/typhoonae/wiki/VMware for a brief documentation.

Visit the project page http://typhoonae.googlecode.com for further information.


CHANGES
=======

Version 0.2.0 (2010-12-12)
--------------------------

  - Supports Google App Engine SDK 1.4.0.

  - Implements Channel API backed by the NGINX push module.

    - http://code.google.com/p/typhoonae/issues/detail?id=57

  - Adds experimental support for the appcfg.py update command.

    - http://code.google.com/p/typhoonae/issues/detail?id=49

  - Incoming Mail Service through a configurable IMAP listener and HTTP
    dispatcher.

    - http://code.google.com/p/typhoonae/issues/detail?id=73

  - Adds process monitor for automatically restarting appserver processes
    consuming more than a given amount of memory that is held in RAM (RSS).

  - Using Celery as alternative Task Queue backend.

  - Appserver imports and initializes API proxy stubs for various service
    backends only when needed.

  - Updated Web Socket Service to provide the latest Web Socket protocol.

    - http://code.google.com/p/typhoonae/issues/detail?id=52

  - Removed obsolete service for sequential integer ids and so eliminated a
    typical 'Single Point Of Failure'.

  - Fixes an issue where spaces in application paths caused failures on
    startup.

    - http://code.google.com/p/typhoonae/issues/detail?id=62

  - Fixes issues where develop mode didn't work.

    - http://code.google.com/p/typhoonae/issues/detail?id=63
    - http://code.google.com/p/typhoonae/issues/detail?id=64

  - Fixes an issue where the Capability API did not work with remote Datastore
    configuration.

    - http://code.google.com/p/typhoonae/issues/detail?id=65

  - Fixes a critical issue where an application hangs if the connection to the
    MySQL database server is temporarily lost.

    - http://code.google.com/p/typhoonae/issues/detail?id=67

  - Fixes a compatibility issue with Memcache.

    - http://code.google.com/p/typhoonae/issues/detail?id=70

  - Fixes compatibility issues with adding new tasks.

    - http://code.google.com/p/typhoonae/issues/detail?id=71
    - http://code.google.com/p/typhoonae/issues/detail?id=75


Version 0.1.5 (2010-07-09)
--------------------------

  - Supports Google App Engine SDK 1.3.5.

  - Introducing MySQL backed Datastore.

  - Added support for configuring and running multiple applications.

  - The apptool takes new options for configuring SSL support.

  - The apptool takes a new option to specify a root directory for HTML error
    pages.

  - Fixes an issue where Blobstore creates invalid upload URLs.

    - http://code.google.com/p/typhoonae/issues/detail?id=26

  - Fixes an issue where the appserver crashes due to absolute script paths in
    the app.yaml file.

    - http://code.google.com/p/typhoonae/issues/detail?id=48

  - Fixes an issue where some users experiencing strange behaviours with
    module imports.

    - http://code.google.com/p/typhoonae/issues/detail?id=56

  - Fixes an issue where request handlers get executed, even though they
    require login.

    - http://code.google.com/p/typhoonae/issues/detail?id=59

  - Fixes an issue where script handlers referring to a package path don't
    work.

    - http://code.google.com/p/typhoonae/issues/detail?id=60


Version 0.1.4 (2010-04-26)
--------------------------

  - Supports Google App Engine SDK 1.3.3.

  - Implements new features of Google App Engine SDK 1.3.2.

    - Blobstore API to read the contents of uploaded Blobs.
    - Task Queue API for adding multiple tasks in a single call.

  - Fixes an issue where it was nearly impossible to use a custom login/logout
    handler.

    - http://code.google.com/p/typhoonae/issues/detail?id=13

  - Fixes an issue where bulkloader.py didn't fetch any results from our
    MongoDB backed datastore.

    - http://code.google.com/p/typhoonae/issues/detail?id=38

  - Fixes a compatibility issue with crontab on Fedora.

    - http://code.google.com/p/typhoonae/issues/detail?id=42

  - Updated memcached, MongoDB, ejabberd and various Python packages.

  - Adds experimental JSON/RPC handler.


Version 0.1.3 (2010-03-12)
--------------------------

  - Supports Google App Engine SDK 1.3.1.

  - Adds support for Datastore Query Cursors.

  - The apptool takes a new option to configure an application for development.

  - Fixes an issue where memcache batch support wasn't implemented.

    - http://code.google.com/p/typhoonae/issues/detail?id=34


Version 0.1.2 (2010-02-08)
--------------------------

  - Adds experimental Web Socket service API.

  - Adds support for remote datastore.

  - Adds command line options to configure the HTTP port and SMTP host.

  - Fixes two issues where some static_dir and static_files handler options
    where misinterpreted.

    - http://code.google.com/p/typhoonae/issues/detail?id=23
    - http://code.google.com/p/typhoonae/issues/detail?id=24

  - Fixes an issue where an incomplete cron.yaml file caused apptool to fail.

    - http://code.google.com/p/typhoonae/issues/detail?id=25

  - Fixes an issue where BlobKey types can't be stored in the mongoDB datastore.

    - http://code.google.com/p/typhoonae/issues/detail?id=28

  - Fixes an issue where the Blobstore API wasn't fully implemented.

    - http://code.google.com/p/typhoonae/issues/detail?id=29


Version 0.1.1 (2009-12-28)
-------------------------- 

  - Supports Google App Engine SDK 1.3.0.

  - Adds support for the new Blobstore API.

  - Adds optional HTTP basic authentication.

  - Fixes an issue where the XMPP/HTTP dispatcher didn't handle unicode.

    - http://code.google.com/p/typhoonae/issues/detail?id=15

  - Fixes an issue where memcache.get_multi(keys) raises a KeyError.

    - http://code.google.com/p/typhoonae/issues/detail?id=16

  - Fixes an issue where the SCRIPT_NAME variable is missing in the CGI
    environment.

    - http://code.google.com/p/typhoonae/issues/detail?id=18

  - Fixes an issue where the login parameter of URL handler definitions in the
    app.yaml configuration file got ignored.

    - http://code.google.com/p/typhoonae/issues/detail?id=20

  - Adds several new command line options to the apptool and fcgiserver.


Version 0.1.0b2 (2009-12-04)
----------------------------

  - Using Google App Engine SDK 1.2.8.

  - Added BDBDatastore support.

  - Fixes an issue where the CURRENT_VERSION_ID variable is missing in the CGI
    environment.

    - http://code.google.com/p/typhoonae/issues/detail?id=8

  - Deferred API works now.

    - http://code.google.com/p/typhoonae/issues/detail?id=9

  - Fixes an issue where memcache.put() raises a UnicodeDecodeError when
    trying to store an encoded protocol buffer.

    - http://code.google.com/p/typhoonae/issues/detail?id=10

  - Added support for datastore queries with the keys_only keyword argument.

    - http://code.google.com/p/typhoonae/issues/detail?id=11

  - Fixes an issue where writing unicode strings to the FastCGI output stream
    raises a TypeError.

    - http://code.google.com/p/typhoonae/issues/detail?id=12


Version 0.1.0b1 (2009-11-20)
----------------------------

  - Added support for scheduled tasks.

    - http://code.google.com/p/typhoonae/issues/detail?id=5

  - Fixes an issue where the params keyword argument gets ignored when adding
    a task.

    - http://code.google.com/p/typhoonae/issues/detail?id=7

  - Minor refactoring.


Version 0.1.0a3 (2009-10-22)
----------------------------

  - Added support for sending XMPP invitations.

  - Fixes an issue where static file pattern handlers got ignored.

    - http://code.google.com/p/typhoonae/issues/detail?id=3

  - Fixed unit tests.


Version 0.1.0a2 (2009-10-17)
----------------------------

  - Added XMPP support.

  - Fixed an issue where an incorrect module path within a handler definition
    can cause the fcgiserver to crash on startup.

    - http://code.google.com/p/typhoonae/issues/detail?id=1

  - Refactored integer ID client API out of datastore stub.


Version 0.1.0a1 (2009-10-05)
----------------------------

  - First alpha release.