Merge branch 'master' of github.com:mitsuhiko/flask
This commit is contained in:
commit
26e748cdd3
6 changed files with 12 additions and 296 deletions
|
|
@ -48,7 +48,7 @@ virtual environment::
|
||||||
|
|
||||||
def deploy():
|
def deploy():
|
||||||
# figure out the release name and version
|
# figure out the release name and version
|
||||||
dist = local('python setup.py --fullname').strip()
|
dist = local('python setup.py --fullname', capture=True).strip()
|
||||||
# upload the source tarball to the temporary folder on the server
|
# upload the source tarball to the temporary folder on the server
|
||||||
put('dist/%s.tar.gz' % dist, '/tmp/yourapplication.tar.gz')
|
put('dist/%s.tar.gz' % dist, '/tmp/yourapplication.tar.gz')
|
||||||
# create a place where we can unzip the tarball, then enter
|
# create a place where we can unzip the tarball, then enter
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ Loading jQuery
|
||||||
In order to use jQuery, you have to download it first and place it in the
|
In order to use jQuery, you have to download it first and place it in the
|
||||||
static folder of your application and then ensure it's loaded. Ideally
|
static folder of your application and then ensure it's loaded. Ideally
|
||||||
you have a layout template that is used for all pages where you just have
|
you have a layout template that is used for all pages where you just have
|
||||||
to add a script statement to your `head` to load jQuery:
|
to add a script statement to the bottom of your `<body>` to load jQuery:
|
||||||
|
|
||||||
.. sourcecode:: html
|
.. sourcecode:: html
|
||||||
|
|
||||||
|
|
@ -35,15 +35,15 @@ Another method is using Google's `AJAX Libraries API
|
||||||
|
|
||||||
.. sourcecode:: html
|
.. sourcecode:: html
|
||||||
|
|
||||||
<script type=text/javascript
|
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.js"></script>
|
||||||
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
|
<script>window.jQuery || document.write('<script src="{{
|
||||||
|
url_for('static', filename='jquery.js') }}">\x3C/script>')</script>
|
||||||
|
|
||||||
In this case you don't have to put jQuery into your static folder, it will
|
In this case you have to put jQuery into your static folder as a fallback, but it will
|
||||||
instead be loaded from Google directly. This has the advantage that your
|
first try to load it directly from Google. This has the advantage that your
|
||||||
website will probably load faster for users if they went to at least one
|
website will probably load faster for users if they went to at least one
|
||||||
other website before using the same jQuery version from Google because it
|
other website before using the same jQuery version from Google because it
|
||||||
will already be in the browser cache. Downside is that if you don't have
|
will already be in the browser cache.
|
||||||
network connectivity during development jQuery will not load.
|
|
||||||
|
|
||||||
Where is My Site?
|
Where is My Site?
|
||||||
-----------------
|
-----------------
|
||||||
|
|
|
||||||
|
|
@ -1,168 +0,0 @@
|
||||||
Approved Extensions
|
|
||||||
===================
|
|
||||||
|
|
||||||
This document contains a list of all extensions that were approved and the
|
|
||||||
date of approval as well as notes. This should make it possible to better
|
|
||||||
track the extension approval process.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Babel
|
|
||||||
-----------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-23
|
|
||||||
:Last Review: 2010-07-23
|
|
||||||
:Approved Version: 0.6
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
Notes: Developed by the Flask development head
|
|
||||||
|
|
||||||
How to improve: add a better long description to the next release
|
|
||||||
|
|
||||||
|
|
||||||
Flask-SQLAlchemy
|
|
||||||
----------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-25
|
|
||||||
:Last Review: 2010-07-25
|
|
||||||
:Approved Version: 0.9.1
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
Notes: Developed by the Flask development head
|
|
||||||
|
|
||||||
How to improve: add a better long description to the next release
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Creole
|
|
||||||
------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-25
|
|
||||||
:Last Review: 2010-07-25
|
|
||||||
:Approved Version: 0.4.4
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
Notes: Flask-Markdown and this should share API, consider that when
|
|
||||||
approving Flask-Markdown
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Genshi
|
|
||||||
------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-26
|
|
||||||
:Last Review: 2010-07-26
|
|
||||||
:Approved Version: 0.3.1
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
Notes: This is the first template engine extension. When others come
|
|
||||||
around it would be a good idea to decide on a common interface.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Script
|
|
||||||
------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-26
|
|
||||||
:Last Review: 2010-07-26
|
|
||||||
:Approved Version: 0.3
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
Notes: Flask-Actions has some overlap. Consider that when approving
|
|
||||||
Flask-Actions or similar packages.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-CouchDB
|
|
||||||
-------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-26
|
|
||||||
:Last Review: 2010-07-26
|
|
||||||
:Approved Version: 0.2.1
|
|
||||||
:Approved License: MIT
|
|
||||||
|
|
||||||
There is also Flask-CouchDBKit. Both are fine because they are doing
|
|
||||||
different things, but the latter is not yet approved.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Testing
|
|
||||||
-------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-27
|
|
||||||
:Last Review: 2010-07-27
|
|
||||||
:Approved Version: 0.2.3
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-WTF
|
|
||||||
---------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-27
|
|
||||||
:Last Review: 2010-07-27
|
|
||||||
:Approved Version: 0.2.3
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Themes
|
|
||||||
------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-27
|
|
||||||
:Last Review: 2010-07-27
|
|
||||||
:Approved Version: 0.1.2
|
|
||||||
:Approved License: MIT
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Uploads
|
|
||||||
-------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-27
|
|
||||||
:Last Review: 2010-07-27
|
|
||||||
:Approved Version: 0.1.2
|
|
||||||
:Approved License: MIT
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Mail
|
|
||||||
----------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-29
|
|
||||||
:Last Review: 2010-07-29
|
|
||||||
:Approved Version: 0.3.4
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-XML-RPC
|
|
||||||
-------------
|
|
||||||
|
|
||||||
:First Approval: 2010-07-30
|
|
||||||
:Last Review: 2010-07-30
|
|
||||||
:Approved Version: 0.1.2
|
|
||||||
:Approved License: MIT
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
||||||
|
|
||||||
Frozen-Flask
|
|
||||||
------------
|
|
||||||
|
|
||||||
:First Approval: 2011-06-05
|
|
||||||
:Last Review: 2011-06-05
|
|
||||||
:Approved Version: 0.4
|
|
||||||
:Approved License: BSD
|
|
||||||
|
|
||||||
All fine. Posted recommendations for minor items/enhancements to mailing list.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Login
|
|
||||||
-----------
|
|
||||||
|
|
||||||
:First Approval: 2011-06-07
|
|
||||||
:Last Review: 2011-06-07
|
|
||||||
:Approved Version: 0.1
|
|
||||||
:Approved License: MIT
|
|
||||||
|
|
||||||
All fine.
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
Listed Extensions
|
|
||||||
=================
|
|
||||||
|
|
||||||
This list contains extensions that passed listing. This means the
|
|
||||||
extension is on the list of extensions on the website. It does not
|
|
||||||
contain extensions that are approved.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-CouchDBKit
|
|
||||||
----------------
|
|
||||||
|
|
||||||
:Last-Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.2
|
|
||||||
|
|
||||||
Would be fine for approval, but the test suite is not part of the sdist
|
|
||||||
package (missing entry in MANIFEST.in) and the test suite does not respond
|
|
||||||
to either "make test" or "python setup.py test".
|
|
||||||
|
|
||||||
|
|
||||||
flask-csrf
|
|
||||||
----------
|
|
||||||
|
|
||||||
:Last-Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.2
|
|
||||||
|
|
||||||
Will not be approved because this is functionality that should be handled
|
|
||||||
in the form handling systems which is for Flask-WTF already the case.
|
|
||||||
Also, this implementation only supports one open tab with forms.
|
|
||||||
|
|
||||||
Name is not following Flask extension naming rules.
|
|
||||||
|
|
||||||
Considered for unlisting.
|
|
||||||
|
|
||||||
|
|
||||||
flask-lesscss
|
|
||||||
-------------
|
|
||||||
|
|
||||||
:Last-Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.9.1
|
|
||||||
|
|
||||||
Broken package description, nonconforming package name, does not follow
|
|
||||||
standard API rules (init_lesscss instead of lesscss).
|
|
||||||
|
|
||||||
Considered for unlisting, improved version should release as
|
|
||||||
"Flask-LessCSS" with a conforming API and fixed packages indices, as well
|
|
||||||
as a testsuite.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-OAuth
|
|
||||||
-----------
|
|
||||||
|
|
||||||
:Last-Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.9
|
|
||||||
|
|
||||||
Short long description, missing tests.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-OpenID
|
|
||||||
------------
|
|
||||||
|
|
||||||
:Last-Review: 2010-07-25
|
|
||||||
:Reviewed Version: 1.0.1
|
|
||||||
|
|
||||||
Short long description, missing tests.
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
Unlisted Extensions
|
|
||||||
===================
|
|
||||||
|
|
||||||
This is a list of extensions that is currently rejected from listing and
|
|
||||||
with that also not approved. If an extension ends up here it should
|
|
||||||
improved to be listed.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Actions
|
|
||||||
-------------
|
|
||||||
|
|
||||||
:Last Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.2
|
|
||||||
|
|
||||||
Rejected because of missing description in PyPI, formatting issues with
|
|
||||||
the documentation (missing headlines, scrollbars etc.) and a general clash
|
|
||||||
of functionality with the Flask-Script package. Latter should not be a
|
|
||||||
problem, but the documentation should improve. For listing, the extension
|
|
||||||
developer should probably discuss the extension on the mailinglist with
|
|
||||||
others.
|
|
||||||
|
|
||||||
Futhermore it also has an egg registered with an invalid filename.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Jinja2Extender
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
:Last Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.1
|
|
||||||
|
|
||||||
Usecase not obvious, hacky implementation, does not solve a problem that
|
|
||||||
could not be solved with Flask itself. I suppose it is to aid other
|
|
||||||
extensions, but that should be discussed on the mailinglist.
|
|
||||||
|
|
||||||
|
|
||||||
Flask-Markdown
|
|
||||||
--------------
|
|
||||||
|
|
||||||
:Last Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.2
|
|
||||||
|
|
||||||
Would be great for enlisting but it should follow the API of Flask-Creole.
|
|
||||||
Besides that, the docstrings are not valid rst (run through rst2html to
|
|
||||||
see the issue) and it is missing tests. Otherwise fine :)
|
|
||||||
|
|
||||||
|
|
||||||
flask-urls
|
|
||||||
----------
|
|
||||||
|
|
||||||
:Last Review: 2010-07-25
|
|
||||||
:Reviewed Version: 0.9.2
|
|
||||||
|
|
||||||
Broken PyPI index and non-conforming extension name. Due to the small
|
|
||||||
featureset this was also delisted from the list. It was there previously
|
|
||||||
before the approval process was introduced.
|
|
||||||
|
|
@ -379,7 +379,10 @@ def send_file(filename_or_fp, mimetype=None, as_attachment=False,
|
||||||
rv.set_etag('flask-%s-%s-%s' % (
|
rv.set_etag('flask-%s-%s-%s' % (
|
||||||
os.path.getmtime(filename),
|
os.path.getmtime(filename),
|
||||||
os.path.getsize(filename),
|
os.path.getsize(filename),
|
||||||
adler32(filename) & 0xffffffff
|
adler32(
|
||||||
|
filename.encode('utf8') if isinstance(filename, unicode)
|
||||||
|
else filename
|
||||||
|
) & 0xffffffff
|
||||||
))
|
))
|
||||||
if conditional:
|
if conditional:
|
||||||
rv = rv.make_conditional(request)
|
rv = rv.make_conditional(request)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue