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 ()
Последнее исправление: Virtuos86 (всего исправлений: 2)

2approvers: накиньте score, пожалуйста. Вы не представляете, как мне трудно было писать эту новость на мобилке:) Это потом я пересел за комп (ну вы ж UA видите, хехехе:D).

kekelia
() автор топика

Вот сейчас обязательно банальщики начнут обсуждение WPF что предсказать нетрудно, а новость хорошая.

ELF-C
()
Ответ на: комментарий от kekelia

Хто?

Ну не хотелось бы флудить и выделять конкретных личностей, но достаточно забавно что новость об крупном обновлении, выползает прямо под носом, у тех что пишут об будущем уменьшении популярности Qt у программистов, в связи с открытием WPF, WinForm, WinUI.

ELF-C
()
Ответ на: комментарий от ELF-C

Ладно, не будем, обсуждайте свои культи

anonymous
()

Почему логотип кед, а не кути?

Deleted
()

Увеличена производительность (21%) JavaScript-сценариев QML, а также уменьшено потребление памяти (30%)

Нормально говнокода там было.

BceM_IIpuBeT ★★☆☆☆
()

Автору бан, а релиз хороший.

RazrFalcon ★★★★★
()

Поддержка протокола LSP (Language Server Protocol) для подключения к серверным обработчикам, реализующим поддержку различных языков программирования.

Вот это будет круто. Мне редактор в Qt Creator нравится. Он очень быстрый, любую IDE вроде IDEA или Eclipse за пояс заткнёт. Даже VIM медленее, ну это не мудрено, учитывая что они всю подсветку кода регэкспят.

EXL ★★★★★
()

Поддержка протокола LSP (Language Server Protocol)

УРА!!! Каждый день уже проверял их блог в ожидании релиза.

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

Он очень быстрый

Согласен, тоже нравится! Правда, в очередной раз он меня как-то разозлил, и я перелез на Саблайм, он тоже не жрет как мерзкая ненасытная vscode. Скоро новая итерация возвращения на Qt Creator: креатор сам себя не возвратит!

Deleted
()

Использую Qt Creator для универского быдлокодинга на c/c++, отличная IDE, все изкаропки настроено, умеет в красивые формочки, в умный автокомплит и в вим-мод. Единственное, очень уж куцый рефакторинг у него.

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

Вот минуту назад только завёл. Работает. :) ХЗ много ли сейчас от него пользы и багов, но реакция на несуществующий идентификатор мгновенная. :)

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

Похоже погорячился. Дурная зверушка ещё. Ругается на каждую вторую строчку.

UPD. А именно, похоже не цепляет инклуды.

dimgel ★★★★★
()
Последнее исправление: dimgel (всего исправлений: 1)
Ответ на: комментарий от BceM_IIpuBeT

Так это просто движок обновили с 5 на 7.

unC0Rr ★★★★★
()

Новости — KDE

Вы тут ничего не напутали с KDevelop?

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 1)
Ответ на: комментарий от BceM_IIpuBeT

Не всегда. Мы, у примеру, путём хаков и... некоторой непереносимости, добились загрузки FPGA из Linux User Space, примерно за 1сек. Изначальный, наиболее логичный, переносимый и правильный вариант грузил примерно 3 минуты: плата с Apollo Lake, распаяным FPGA, который после загрузки становится PCIe картой, JTAG от FPGA завели на порт SPI SoC и путём костылирования сымитировали JTAG загрузку. Изначальный вариант использовал User Space GPIO доступ и BitBang. Второй вариант, не давший прироста: через модуль ядра и GPIO. Третий вариант: BitBang через /dev/mem, mmap и прямой доступ к регистрам дал загрузку около 15 сек. Финальный вариант: пока JTAG работает в диалоговом режиме - используем BitBang, как только доходит дело до загрузки основной массы кода - переключаем порт в SPI и просто сливаем туда битстрим. Экономия в оду SPI Flash на устройство.

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

код на с++ подозрительно похож на код на python

anonymous
()

Подскажите, кто использует Qt Creator. У него по-прежнему нельзя редактировать код нескольких файлов во вкладках?

silart
()
Ответ на: комментарий от silart

Есть комбобокс с открытыми файлами вверху окна и есть возможность многократно разделить окно на части, например, 2 одновременно видимых файла вверху и один внизу.

Этого недостаточно? Последний вариант, по-моему, куда удобнее, чем вкладки.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)

Поздравляю всех причастных и присосавшихся.

Подскажите, а в QMLный диалог открытия файлов таки добавили возможность программного задания каталога по умолчанию, который отображается при открытии? На ЛОРе как-то эту проблему обсуждали, но сейчас не найду.

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

Ага, вспомнил как мне втирали, что QML быстрый и вообще виджеты скоро deprecated.

Это тебе какие-то левые чуваки втирали. Сами кутешники никогда не называли виджеты deprecated, для них это — mature технология, которая сильно развиваться уже не будет, но будет продолжать полноценно поддерживаться.

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

А официальные заявления об этом были?

А вообще печально, Qt превращается в жабаскрипт для десктопных приложений.

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

На хабре с год назад была статья сотрудника Qt с обзором, кажется, Qt 5.10 или 5.11. Слово mature (или «зрелая») там дословно присутствовало, да и всю мысль я, кажется, передал очень близко. Быстро не найду, извини.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от a1batross

а у меня на дебиане 8-м не завелось :( либдбус говорит слишком старый ( Пришлось опять 4.7 ставить. По некоторым причинам мне этот дебиан нужнее чем более свежий. Вот.

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

пусть быстрый, но они же не будут говорить что он быстрее виджетов - если будут -то это уже не разработчики а какие-то манагеры-продаж, енивей что тех что других нужно уволить если будут говорить что быстрее. Так что как сказал Hobbit

но будет продолжать полноценно поддерживаться

Но мне почему-то думается что и развиваться тоже будет с одной скоростью с QML, т.к. когда QML достигнет некоторой зрелости - то он тоже станет Матюре )

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

редактировать код нескольких файлов во вкладках?

Есть сторонний плагин https://habr.com/post/215107/
Пару лет назад собирался и работал. Сейчас не знаю. Я себе ставил, но потом снёс. Сейчас применяю несколько способов переключения текущих файлов (QtCreator 4.7.2):

  • Список открытых файлов на боковой панели «Open documents».
  • Переключение между открытыми файлами по ctrl+tab. Причём однократное нажатие переключает туда-сюда между двумя последними файлами. А если зажать ctrl и нажимать tab, то появится контекстное меню, где будут переключаться файлы.
  • Открытие файла по имени. Нажимаешь Ctrl+K и вводишь имя файла. Используется нечёткий поиск, т.е. можно написать слово, на которое оканчивается имя файла или часть имени файла и он будет найден. Потом enter и ты его открыл. Быстро и удобно, если знаешь имя файла. Так же в этой менюшке есть и другие фичи, например я ещё пользуюсь переходом к символу.
  • Если есть второй монитор, то можно открыть ещё одно окно qt creator. И это будет именно второе окно текущего редактора, а не ещё один независимый редактор. Открывается через пункт «Open in new window» в менюшке, где ты настраиваешь разбитие окна (справа сверху).
ox55ff ★★★★★
()

Поддержка протокола LSP (Language Server Protocol)

интересно, как там будет с подсветкой кода? В самом qtcreator она есть только для ограниченного числа языков, в протоколе есть такая возможность, но ЕМНИП очень мало серверов заморачивается с ее реализацией. А писать код без подсветки - ...

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

Вот именно. gtk3 нативно умеет тач и gnome-flashback к примеру в бунте 14.04 прлностью юзабелен на планшете. При этом qt5 вместо прокрутки начинает везде делать drug and drop, а qtcreator вообще начинает всё ломать похлеще чем vi

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

Например в том, что относительно маргинальный Cinnamon работает нормально.

ArkaDOSik ★★
()

Как заставить работать плагин автоматического форматирования кода ClangFormat ... может кто подскажет ?

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

https://langserver.org/
https://en.wikipedia.org/wiki/Language_Server_Protocol

Поддержка языков в твоём любимом редакторе на основе отдельного сервера языка, а не средствами самого редактора. Это значит что автодополнение, подсветка кода, проверка синтаксиса и т. д. будет работать через отдельный-сервер, а не через сам редактор.

EXL ★★★★★
()

C msvc могут быть проблемы со сборкой, если пользуетесь std::bitset, на линуксе(clang, gcc) вроде всё нормально.

IceRain
()
Ответ на: комментарий от IceRain

на линуксе(clang, gcc) вроде всё нормально.

не нормально

In Qt Quick Controls 1, a ToolButton that opens a Menu fails to show the menu when trying to open it more than once: QTBUG-71238 Due to this Linux distributions should not ship Qt 5.12.0, unless they apply a fix for this issue. This breaks the Plasma desktop in several ways.

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

This breaks the Plasma desktop in several ways.

Вот бы Plasma сломалась так, чтобы навсегда. И KDE-разработчики написали нормальные KDesktop и Kicker, а не это падающее нечто родом оттуда же, откуда Qt Quick Controls 1.

EXL ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.