Upgrading Flask 0.4 to 0.5
Breaking0.4 → 0.5.2Breaking2New3Changed1Fixed3Other1
BreakingUpgrade verdict
2 breaking changes.
In plain terms
- Removes support for create_jinja_loader, which is no longer used in 0.5 due to improved module support.
- You can no longer run your app from a zip file for now.
Must act 2 items need code or config changes
What you must change
Breaking2
Removes support for create_jinja_loader, which is no longer used in 0.5 due to improved module support.
create_jinja_loaderTemporarily drops support for zipped applications, a rarely used feature that caused confusing behavior.
API changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- removed:
class Config(dict) - removed:
class ConfigAttribute(object) - removed:
class Flask(_PackageBoundObject) - removed:
class Module(_PackageBoundObject) - removed:
class Request(RequestBase) - removed:
class Response(ResponseBase) - removed:
class Session(SecureCookie) - removed:
constructor Config(root_path, defaults=…) - removed:
constructor ConfigAttribute(name) - removed:
constructor Flask(import_name) - removed:
constructor Module(import_name, name=…, url_prefix=…) - removed:
field Flask.debug - removed:
field Flask.debug_log_format - removed:
field Flask.default_config - removed:
field Flask.jinja_options - removed:
field Flask.logger_name - removed:
field Flask.permanent_session_lifetime - removed:
field Flask.request_class - removed:
field Flask.response_class - removed:
field Flask.secret_key - removed:
field Flask.session_cookie_name - removed:
field Flask.static_path - removed:
field Flask.testing - removed:
field Flask.use_x_sendfile - removed:
field Request.endpoint - removed:
field Request.routing_exception - removed:
field Request.view_args - removed:
field Response.default_mimetype - removed:
field Session.permanent - removed:
function flash(message, category=…) - removed:
function get_flashed_messages(with_categories=…) - removed:
function get_template_attribute(template_name, attribute) - removed:
function jsonify(*args, **kwargs) - removed:
function render_template(template_name, **context) - removed:
function render_template_string(source, **context) - removed:
function send_file(filename_or_fp, mimetype=…, as_attachment=…, attachment_filename=…) - removed:
function url_for(endpoint, **values) - removed:
method Config.from_envvar(variable_name, silent=…) - removed:
method Config.from_object(obj) - removed:
method Config.from_pyfile(filename) - removed:
method Flask.add_url_rule(rule, endpoint=…, view_func=…, **options) - removed:
method Flask.after_request(f) - removed:
method Flask.before_request(f) - removed:
method Flask.context_processor(f) - removed:
method Flask.create_jinja_loader() - removed:
method Flask.dispatch_request() - removed:
method Flask.errorhandler(code) - removed:
method Flask.handle_exception(e) - removed:
method Flask.handle_http_exception(e) - removed:
method Flask.make_response(rv) - removed:
method Flask.open_session(request) - removed:
method Flask.preprocess_request() - removed:
method Flask.process_response(response) - removed:
method Flask.register_module(module, **options) - removed:
method Flask.request_context(environ) - removed:
method Flask.route(rule, **options) - removed:
method Flask.run(host=…, port=…, **options) - removed:
method Flask.save_session(session, response) - removed:
method Flask.template_filter(name=…) - removed:
method Flask.test_client() - removed:
method Flask.test_request_context(*args, **kwargs) - removed:
method Flask.update_template_context(context) - removed:
method Flask.wsgi_app(environ, start_response) - removed:
method Module.add_url_rule(rule, endpoint, view_func=…, **options) - removed:
method Module.after_app_request(f) - removed:
method Module.after_request(f) - removed:
method Module.app_context_processor(f) - removed:
method Module.app_errorhandler(code) - removed:
method Module.before_app_request(f) - removed:
method Module.before_request(f) - removed:
method Module.context_processor(f) - removed:
method Module.route(rule, **options) - removed:
property Flask.logger - removed:
property Request.json - removed:
property Request.module - removed:
variable current_app - removed:
variable g - removed:
variable json_available - removed:
variable pkg_resources - removed:
variable request - removed:
variable session - added:
export Config - added:
export Flask - added:
export Module - added:
export Request - added:
export Response - added:
export current_app - added:
export flash - added:
export g - added:
export get_flashed_messages - added:
export get_template_attribute - added:
export json - added:
export json_available - added:
export jsonify - added:
export render_template - added:
export render_template_string - added:
export request - added:
export send_file - added:
export send_from_directory - added:
export session - added:
export url_for
- added:
class Flask(_PackageBoundObject) - added:
constructor Flask(import_name, static_path=…) - added:
field Flask.debug - added:
field Flask.debug_log_format - added:
field Flask.default_config - added:
field Flask.jinja_options - added:
field Flask.logger_name - added:
field Flask.permanent_session_lifetime - added:
field Flask.request_class - added:
field Flask.response_class - added:
field Flask.secret_key - added:
field Flask.session_cookie_name - added:
field Flask.static_path - added:
field Flask.testing - added:
field Flask.use_x_sendfile - added:
method Flask.add_url_rule(rule, endpoint=…, view_func=…, **options) - added:
method Flask.after_request(f) - added:
method Flask.before_request(f) - added:
method Flask.context_processor(f) - added:
method Flask.create_jinja_environment() - added:
method Flask.dispatch_request() - added:
method Flask.errorhandler(code) - added:
method Flask.handle_exception(e) - added:
method Flask.handle_http_exception(e) - added:
method Flask.init_jinja_globals() - added:
method Flask.make_response(rv) - added:
method Flask.open_session(request) - added:
method Flask.preprocess_request() - added:
method Flask.process_response(response) - added:
method Flask.register_module(module, **options) - added:
method Flask.request_context(environ) - added:
method Flask.route(rule, **options) - added:
method Flask.run(host=…, port=…, **options) - added:
method Flask.save_session(session, response) - added:
method Flask.select_jinja_autoescape(filename) - added:
method Flask.template_filter(name=…) - added:
method Flask.test_client() - added:
method Flask.test_request_context(*args, **kwargs) - added:
method Flask.update_template_context(context) - added:
method Flask.wsgi_app(environ, start_response) - added:
property Flask.logger
- added:
class Config(dict) - added:
class ConfigAttribute(object) - added:
constructor Config(root_path, defaults=…) - added:
constructor ConfigAttribute(name) - added:
method Config.from_envvar(variable_name, silent=…) - added:
method Config.from_object(obj) - added:
method Config.from_pyfile(filename)
- added:
variable current_app - added:
variable g - added:
variable request - added:
variable session
- added:
function flash(message, category=…) - added:
function get_flashed_messages(with_categories=…) - added:
function get_template_attribute(template_name, attribute) - added:
function jsonify(*args, **kwargs) - added:
function send_file(filename_or_fp, mimetype=…, as_attachment=…, attachment_filename=…, add_etags=…, cache_timeout=…, conditional=…) - added:
function send_from_directory(directory, filename, **options) - added:
function url_for(endpoint, **values) - added:
variable json - added:
variable json_available
- added:
function create_logger(app)
- added:
class Module(_PackageBoundObject) - added:
constructor Module(import_name, name=…, url_prefix=…, static_path=…) - added:
method Module.add_url_rule(rule, endpoint, view_func=…, **options) - added:
method Module.after_app_request(f) - added:
method Module.after_request(f) - added:
method Module.app_context_processor(f) - added:
method Module.app_errorhandler(code) - added:
method Module.before_app_request(f) - added:
method Module.before_request(f) - added:
method Module.context_processor(f) - added:
method Module.route(rule, **options)
- added:
class Session(SecureCookie) - added:
field Session.permanent
- added:
function render_template(template_name, **context) - added:
function render_template_string(source, **context)
- added:
class Request(RequestBase) - added:
class Response(ResponseBase) - added:
field Request.endpoint - added:
field Request.routing_exception - added:
field Request.view_args - added:
field Response.default_mimetype - added:
property Request.json - added:
property Request.module
- added:
export admin - added:
export frontend - added:
variable app
- added:
function index() - added:
variable admin
- added:
function index() - added:
variable frontend