mitsuhiko/flask — pull request #554 by wibblymat (2012-07-19 16:21:41+00:00)
Title: Endpoints can clash for views defined in modules

When no endpoint name is given to app.route() Flask will currently
use view_func.__name__.

However, if you have view functions defined in several modules, you
can get name clashes. For example, if you have

@app.route('/users/list')
def list():
...

in users.py and

@app.route('/projects/list')
def list():
...

in projects.py then you end up with only one endpoint called 'list'
that will point to which ever view function was defined second.
Both routes will use the same endpoint.

By adding view_func.__module__ to the endpoint name this problem
can be avoided.