Команда проекта Pallets представила релиз фреймворка Flask 1.0
Новости
В новой версии Python-фреймворка представлены расширенные возможности командной строки, обработка прерываний, усовершенствованный механизм тестирования приложений. Вместе с выпуском Flask 1.0 были изменены документация и руководства, облегчающие обучение пользователям.
2К открытий2К показов
В новой версии Python-фреймворка Flask представлены расширенные возможности командной строки, обновленное ведение программных логов, обработка прерываний, усовершенствованный механизм тестирования приложений и многое другое.
Командная строка
- При установке пакета
python-dotenvкомандная строка Flask загружает переменные окружения из файлов c расширениями .env и .flaskenv. Благодаря этому пользователям не нужно экспортировать их каждый раз при открытии нового терминала. - Для отладки и тестирования приложения в режиме командной строки создан метод
test_cli_runner. - Интерфейс командной строки стал более гибким. Теперь переменная
FLASK_APPможет указывать на фабрику приложений (app factory).FLASK_ENVописывает среду, в которой запускается приложение, например, среду разработки. В большинстве случаев эта переменная заменяетFLASK_DEBUG. Более подробно о режиме командной строки можно узнать в документации.
Обработка исключений
- Появилась поэтапная обработка ошибок. При возникновении исключения первым делом проверяется наличие зарегистрированного обработчика ошибок в коде. Если он отсутствует, проверяется наличие наиболее подходящего с помощью анализа иерархий. Если обработчик не зарегистрирован и там, то код ошибки выбирается в подклассах
HTTPException. - Сообщение об ошибке в режиме отладки при доступе к отсутствующим ключам из модуля
request.formстало более информативным.
Ведение журнала приложения
Инструмент для логирования app.logger стал проще в настройке. Теперь он всегда имеет вид объекта flask.app. Инструмент автоматически добавляет обработчик логов по умолчанию, если отсутствуют созданные пользователем, и никогда не удаляет уже существующие.
Другие изменения Flask
- В функции тестирования приложений
test_client()появился аргументjsonдля отправления данных в формате JSON. Получить и декодировать эти данные можно с помощью методаget_json()объектаResponse. - В среду разработки интегрирована параллельная обработка запросов.
- Прекращена поддержка Python 2.6 и 3.3.
- Удален устаревший модуль
flask.ext. Теперь расширения можно импортировать непосредственно по именам программных пакетов. - Написан патч для уязвимости JSON, связанной с некорректной кодировкой байтов. В новой версии для этого формата можно использовать только UTF.
Вместе с новым релизом были переписаны и структурированы документация, руководства и примеры, которые упростят обучение новым пользователям. Установить фреймворк для Python можно с помощью команды pip install -U Flask.
Полный список изменений в новой версии представлен на официальном сайте разработчиков.
О том, как использовать Flask, чтобы создать, например, бота для Facebook Messenger, можно прочитать в нашем материале.
2К открытий2К показов



