LINUX.ORG.RU

Qt 5.8

 


2

6

Выпуск Qt 5.8 должен был состояться ещё в ноябре, но задержался до сегодняшнего дня.

Основные нововведения:

  • полная поддержка Qt Wayland Compositor API (ранее была доступна как технологическое превью);
  • модуль Qt Network Authorization с поддержкой OAuth;
  • экспериментальный бекенд Direct3D 12 для Qt Quick;
  • обновление Qt WebEngine до новой версии Chromium;
  • полная поддержка Qt SCXML;
  • Qt Speech — новый модуль преобразования текста в голос.

В связи с задержками релиза, заморозка функций (feature freeze) Qt 5.9 произойдёт в ближайшее время.

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

★★

Проверено: jollheef ()
Последнее исправление: sudopacman (всего исправлений: 7)

Божественный тулкит и фреймворк. Единственный в своем роде. Альтернатив никогда не было, и в будущем не предвидится. А после появления Qt Lite он стал лучший во всем. И это хорошо.

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

А не осиляторы C++, могут использовать Go binding.

Go быстрее C++, потому что его написало Google, а там веников не вяжут. Поиск там тоже быстрее яндекса, который писали не на Go

Не удивлюсь, если в планах переписать хром и gtest на Go

anonymous
()

полная поддержка Qt Wayland Compositor API (ранее была доступна как технологическое превью);

Быстрее бы лонгтерм

reedych
()

МИНИНОВОСТЬ?!?!?!?

Тоесть какой-то там Ruby - это НОВОСТИЩЩЕ, а божественный Qt вышел - мининовость?

Что за дискриминация по половому признаку?

navrocky
()

Господа,

Объясните простому человеку, как лицензионно и технически можно поставить Qt creator и PyQt без лишнего мусора в виде кучки С++ аддонов. Хочу для себя сделать морду к ряду функций в python. Но эта двойная лицензионная галиматья только затрудняет алекватную установку.

Целевые хосты: макось и убунту.

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

Ты как это себе представляешь? PyQt - это всего лишь биндинги к Qt, это не имплементация Qt на пистоне

perplexus
()
Ответ на: МИНИНОВОСТЬ?!?!?!? от navrocky

Тоесть какой-то там Ruby - это НОВОСТИЩЩЕ, а божественный Qt вышел - мининовость?

Ничоси ты дерзкий так про Божественный Рубин говорить!

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

Божественный тулкит и фреймворк. Единственный в своем роде. Альтернатив никогда не было, и в будущем не предвидится.

Ваша правда, один софт от The Foundry чего стоит (например MODO для всех платформ).

А ведь никто и не станет спорить.

slon
()

Ненужно :-)

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

один софт от The Foundry чего стоит (например MODO для всех платформ).

но там бандл с патчем на патче (полагаю), интересно, обязанны ли они открывать сорс, хотя скорее всего, как люди очень не бедные, купили какую-то специальную лицензию и ничего кроме шуток про сопли под носом — не предоставляют.

slon
()

Феерическая борьба бобра со злом.

Начиная с версии 5.6, или раньше можно заметить, что в Qt активно внедрился макрос QStringLiteral, создающий статическую строку. Если в плагинах встречаются классы с одинаковым названием и с QStringLiteral внутри, то эти плагины могут конфликтовать. Особенно просто отстрелить себе ногу, если использовать формочки .ui. Из них uic сгенерит ui_*.h, в которых будут эти QStringLiteral в изобилии. А там достаточно случайно в двух плагинах назвать одинаково формочки и геморрой обеспечен. Но это мелочь, т.к. ещё можно нарваться на кучу проблем. И судя по «git log | grep QStringLiteral» в самом Qt куча человеко-часов потрачена на разгребание этих проблем. Вплоть до того, что при попытке выгрузить плагин возникал сегфолт, т.к. использовался указатель на этот вот «QStringLiteral».

Чтобы избежать проблему, следим за названием классов внутри плагинов, и используем namespace. uic тоже, оказывается, умеет namespace. Достаточно назвать класс в крейторе как-то так «MyPlug::Settings». В документации этого нигде нет вообще. Ну и радикальный способ - это собирать плагины с -fvisibility=hidden.

Надеюсь, эта информация будет кому-нибудь полезна.

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

"Арфы нет - возьмите бубен!" (c) Маэстро

Хочу для себя сделать морду к ряду функций в python. Но эта двойная лицензионная галиматья только затрудняет алекватную установку.

Для нескольких функций лучше Tkinter, Tix ну и Matplotlib должно хватить «за глаза».

В крайнем случае поищи на github по ключевым словам

https://github.com/search?o=desc&q=python gui&ref=simplesearch&s=...

atsym ★★★★★
()

В движке выполнения QML реализована новая инфраструктура кэширования, позволяющая кэшировать QML-файлы в предкомпилированном бинарном представлении. Кэширование дало возможность значительно ускорить повторную загрузку QML-приложений и сократить потребление памяти

Может, теперь Плазма перестанет жиреть до 1 Гб за сутки))

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

Может, теперь Плазма перестанет жиреть до 1 Гб за сутки))

У меня процесс plasmashell ещё ни разу не разжирел больше чем на 170 метров

Sunderland93 ★★★★★
()

Почему про Qt Lite ничего не написали в новости?

GladAlex ★★★★★
()
Ответ на: МИНИНОВОСТЬ?!?!?!? от navrocky

МИНИНОВОСТЬ?!?!?!?
Тоесть какой-то там Ruby - это НОВОСТИЩЩЕ, а божественный Qt вышел - мининовость?

Всё по чесноку! Просто Qt - **оно, а ruby - **ВНИЩЩЕ! :-)

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

Ну и радикальный способ - это собирать плагины с -fvisibility=hidden

CONFIG += hide_symbols
это правильный способ, а не радикальный

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

Объясните простому человеку, как лицензионно и технически можно поставить Qt creator и PyQt без лишнего мусора в виде кучки С++ аддонов

перепиши весь Qt и питон на Rust, это единственный быстрый и безопасный выход.

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

Кэш только ускоряет время запуска, на потребление памяти не влияет.

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

CONFIG += hide_symbols

Для qmake. В cmake надо прописать «set(CMAKE_CXX_VISIBILITY_PRESET hidden)», если уж мы до систем сборки снизошли.

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

Собственно как заюзать Qt Lite?

А что ты там заюзывать собрался? Читай configure --help и выключай ненужное. Сейчас просто каждый параметр имеет единообразное описание в JSON. А так, просто новый инструментарий сборки Qt, только и всего. Тоже не понял, зачем его преподнесли как что-то принципиальное новое.

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

У меня до ~190 жирел. Но до гига, конечно далеко.

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

На лине из репы, на других ОС - через online-установщик. И всё.

На лине тоже из online-установщика иначе Qt будет старая.

GladAlex ★★★★★
()

модуль Qt Network Authorization с поддержкой OAuth

Это для обычных десктопных программ (не web) такое может работать?

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

А что за двойная лицензия? Можно подробнее?

LGPL+коммерческая, как выше написали. Ну и нюансы, в виде того, что просто так коммитить не получится. Обязательно надо принять соглашение, что твой код можно использовать в коммерческой версии.

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

Ну сейчас, насколько я знаю, плагины в Qt просто не выгружаются и проблема решена :)

Да, что-то там проскакивало в рассылке. Типа внутри Qt не выгружаем. Теперь valgrind матерится ещё сильнее. Ну а по факту QPluginLoader::unload() остался, так что в своей программе вполне реально это сделать, пусть и недокументированным способом. Ссылка на багрепорт https://bugreports.qt.io/browse/QTBUG-17458

Но, откровенно говоря, уровень сегодняшней команды Qt упал ниже плинтуса. Даже в 5.8 багов очень много. Многие появились только 5-й в версии, но продолжают висеть годами.

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