LINUX.ORG.RU

Qt 5.12 и Qt Creator 4.8.0

 


3

3

После полугода разработки подготовлен новый мажорный выпуск кроссплатформенного фреймворка Qt 5.12.
Qt лицензируется под лицензиями LGPLv3 и GPLv2, инструменты Qt для разработчиков, такие как Qt Creator и qmake, а также некоторые модули поставляются под лицензией GPLv3.
Релиз 5.12 относится к релизам с длительной поддержкой — LTS.

Значительное внимание разработчиков уделялось обеспечению стабильности и скорости работы. По сравнению с прошлой LTS-веткой в Qt 5.12 устранено более 2000 недочётов.

Список изменений:

  • Теперь модуль «Qt for Python» имеет полную официальную поддержку.
  • Вторая экспериментальная версия модуля «Qt for WebAssembly», позволяющего компилировать модули на WebAssembly для запуска Qt в браузере.
  • Полная официальная поддержка модуля «Qt Remote Objects», позволяющего обмениваться данными через шину IPC.
  • Полная официальная поддержка модуля «Qt WebGL Streaming Plugin», позволяющего транслировать состояние интерфейса приложения по сети для просмотра в любом современном браузере.
  • Переработан JavaScript-движок, используемый для выполнения сценариев QML. Обеспечена поддержка стандарта ECMAScript 7 (ранее поддерживался ECMAScript 5), что позволяет использовать новые возможности JavaScript и упростить интеграцию с JavaScript-библиотеками. Например, добавлена поддержка JavaScript-модулей, которые можно использовать как из QML-кода, так из кода на C++.
  • В Qt Quick добавлен новый элемент TableView, более быстрая альтернатива ItemView, способная отображать сразу несколько столбцов.
  • Qt WebEngine был обновлён до Chromium 69 и получил поддержку клиентских сертификатов.
  • Увеличена производительность (21%) JavaScript-сценариев QML, а также уменьшено потребление памяти (30%).
  • И многое другое!

Одновременно был представлен релиз IDE Qt Creator 4.8.0, интегрированной среды разработки для Qt и не только:

  • Добавлен плагин автоматического форматирования кода ClangFormat.
  • Запуск нескольких отладчиков одновременно — переключайтесь между ними через меню в панели, появляющейся в режиме отладки.
  • До состояния LLVM 7.0 обновлён построитель модели кода для языка С++, основанный на Clang. Добавлена возможность применения операции «Follow Symbol» для определений с ключевым словом «auto». В подсказке, вводимой системой автодополнения для функций, теперь отображаются доступные перезагрузки параметров. Добавлена поддержка экспорта модели кода в форме БД для компиляции (Build > Generate Compilation Database).
  • Поддержка протокола LSP (Language Server Protocol) для подключения к серверным обработчикам, реализующим поддержку различных языков программирования. При использовании LSP на сторону сервера выносятся все базовые операции поддержки языка программирования, связанные с разбором семантики языка, такие как автодополнение кода, анализ опечаток, поиск ссылок, построение карты определений переменных и функций для быстрого перехода. Подключение обработчиков для дополнительных языков осуществляется через плагин LanguageClient (Help > About Plugins).

>>> Подробности



Проверено: Shaman007 ()
Ответ на: комментарий от rumgot

Более чем. К примеру, привык я к редактору, который встроен в Qt Creator, а поддержку Python в него не завезли. Зато в LSP есть реализация: https://github.com/palantir/python-language-server в итоге я могу подцепить её в Qt Creator и использовать все плюшки IDE вроде автодополнений, подсказок, нормальной подсветки кода, разрешения типов и т. д.

Не зря её в Qt Creator пытаются запихнуть, раз Qt for Python анонсировали. Сейчас Qt Creator вообще никак не подходит для чего-либо на Python, а c LSP у него будет шанс.

EXL ★★★★★ ()

А кто-нибудь ещё пытается использовать Qt Creator для навигации по исходникам ядра? А то вот из-за этого -

До состояния LLVM 7.0 обновлён построитель модели кода для языка С++, основанный на Clang.

- каким-то образом ломается парсинг C, причём видимо только для исходников ядра.

mironov_ivan ★★★★★ ()

Вторая экспериментальная версия модуля «Qt for WebAssembly», позволяющего компилировать модули на WebAssembly для запуска Qt в браузере.

Больше тормозов богу тормозов!

upcFrost ★★★★★ ()
Ответ на: комментарий от ox55ff

И это будет именно второе окно текущего редактора, а не ещё один независимый редактор.

Есть одна достадная вещь связанная с данной фичей. Глобальный поиск (aka "Find References to Symbol Under Cursor") всегда открывается в главном окне (что, соответственно, передает ему фокус и показывает окно). Бывает неудобно, если на втором мониторе открыто что-то (например SQL Developer) и оно исчезает под главным окном.

KennyMinigun ★★★★★ ()
Ответ на: комментарий от anonymous

Свой говноQML пилят, а qtWidget уже потихоньку протухает.

qtbase$ git log --since=«1 year old» --pretty=oneline origin/dev — src/widgets/ | wc -l
515

qtdeclarative$ git log --since=«1 year old» --pretty=oneline origin/dev — src/ | wc -l
1643

1) не такой и большой разрыв в скорости разработки
2) 1,5 коммита в день - это очень даже неплохо
3) если тебе что-то не хватает в виджетах - возьми и запили

dt1 ★★ ()