On Thu, May 10, 2012 at 02:00:05AM +0530, Vipin Nair wrote:
> I would like to know if Flask[2] is an acceptable web framework, as
> that would be the most well suited framework for my project. Flask is
> already packaged in Debian.
>
> If not, what are the acceptable web frameworks? Other options include
> frameworks like Django and Pylons.
Welcome to the club!
The one big requirement is that it is packaged in Debian
stable+backports. That means you not only have to look at the framework,
but also to its version, and carefully check the dependencies you intend
to use.
That said, it's something one can very comfortably live with, as long as
one picks a framework with a reasonable upstream.
I'll tell you my experience with Django and Flask.
Wrt Django:
Versions of Django are 1.2.3 in Squeeze and 1.3.1 in
Squeeze+backports. I have it in my todo list to work on a backport of
Django 1.4. You probably want to target at least 1.3.1 now that 1.4 is
out[1].
debtags.debian.net and nm.debian.org are written in Django 1.2 and
deployed on DSA administered machines via mod_wsgi. I intend to
forward port them to 1.3.x or 1.4 if I manage to backport it, and it
shouldn't be much work considering Django's good record of API
stability.
If you choose Django, you probably want to get in touch with me: I
have a pluggable app with the Debian site layout, experience in
deploying it and code to make it work with the DACS single signon,
if you need it[2].
Wrt Flask:
Both Flask and Werkzeug are 0.6 in Stable. I don't know what's changed
in 0.8 since I don't follow Flask that closely.
dde.debian.net is written with Flask 0.6 and deployed on DSA
administered machines via FastCGI.
If you are building a simple site and all you need is Flask, then I'm
sure you'll be fine. If instead you intend to use other extra modules,
be careful about dependencies: for example, python-flaskext.wtf is
currently NOT in Squeeze. But then if you start plugging all sorts of
bits on top of Flask, you probably want Django in the first place.
[1] https://docs.djangoproject.com/en/dev/misc/api-stability/
[2] It's quite a while I mean to post a mail about my reusable Django
code in this list.
Ciao,
Enrico
--
GPG key: 4096R/E7AD5568 2009-05-08 Enrico Zini <enrico@enricozini.org>