Portál AbcLinuxu, 15. května 2025 00:00
Vidím, že teď jsou ke stažení opravdu jen zdrojáky, ne binárky.Online instalátory jsou taky dostupný. V době, kdy většina hipsterských programátorů ani neví co všechno a odkud má ve svých buildech mi potřeba internetového připojení pro instalaci Qt (pro vývoj) nepřijde jako nějaký zásadní omezení...
Je to docela pruda kazdy predelavat neco kvuli tomu, ze uz to nejde prekompilovat.
Qt drží velice dobrou zpětnou kompatibilitu a to dokonce i přes major verze (mám netriviální Qt projekt, který lze zkompilovat od Qt 4.8 po Qt 5.15). Pokud někdo vytváří SW tak, že mu s novější (minor) verzí Qt nejde přeložit, dělá něco zásadně špatně...
Mimochodem kvuli tem jejich zmenam v instalatoru se ve Wiresharku rozhodli, ze zrusi CI pro windows, protoze to nejde bez prihlasovacich udaju ani nainstalovat. V projektu nitroshare jsou pro zmenu ty prihlasovaci udaje zadratovane v gitu.
To jako že s každým buildem někdo tahá a instaluje celé Qt znovu z online instalátoru?! Pokuď někdo takhle plejtvá prostředkama, tak si snad ani nic jinýho nezasluhuje, než aby mu to přestalo fungovat... Až si tohle přečte Gréta...
Instalace "do projektu"?! K tomu přece slouží macdeployqt/windeployqt, kde se právě z jedné instalace Qt vykopírují potřebné části Qt pro daný projekt. Build pak může bez problémů probíhat oproti té jedné instalaci, nijak jí nemodifikuje. Nevidím důvod se spoléhat na nějakou cache a Qt pokaždé znovu instalovat (byť z cache)...
Třeba nejznámější Windows CI (kterej používá i ten Wireshark, takže tý historce moc nevěřim) - AppVeyor - má to Qt normálně předinstalovaný a žádný "šašení" s cache instalátoru AFAIK neprovádí.
Je sice pravda, ze kompatibilita je docela dobra, ale ne dokonala. Treba ted resim co budu delat s deprecated controls1. Protoze v controls2 neni zadny view, ktery by implementoval selection (oznaceni vice polozek) podobne jako to ma TableView viz https://wiki.qt.io/New_Features_in_Qt_5.15#Deprecated_Modules Taky mam jeden starsi projekt, ve kterem je jeste WebKit.Je to docela pruda kazdy predelavat neco kvuli tomu, ze uz to nejde prekompilovat.Qt drží velice dobrou zpětnou kompatibilitu a to dokonce i přes major verze (mám netriviální Qt projekt, který lze zkompilovat od Qt 4.8 po Qt 5.15). Pokud někdo vytváří SW tak, že mu s novější (minor) verzí Qt nejde přeložit, dělá něco zásadně špatně...
Tohle by melo resit nejak rozumne samotne CI. Po nainstalovani zavislosti by se mel pouzivat uz jen snapshot. Soucasne chces mit build reprodukovatelny i jinde bez nutnosti rucne odklikavat nejake instalatory, ale jednoduse spustenim skriptu. Proto maji lidi tak radi reseni jako docker/podman.Mimochodem kvuli tem jejich zmenam v instalatoru se ve Wiresharku rozhodli, ze zrusi CI pro windows, protoze to nejde bez prihlasovacich udaju ani nainstalovat. V projektu nitroshare jsou pro zmenu ty prihlasovaci udaje zadratovane v gitu.To jako že s každým buildem někdo tahá a instaluje celé Qt znovu z online instalátoru?! Pokuď někdo takhle plejtvá prostředkama, tak si snad ani nic jinýho nezasluhuje, než aby mu to přestalo fungovat... Až si tohle přečte Gréta...
Naklikat jsem myslel instalaci Qt do nějakého vlastního image třeba pro CI typu Jenkins. Pokuď se použije nějaká služba typu AppVeyor (že nemá novou verzi Qt 5 minut po vydání mě netankuje, Qt není JavaScript framework, který je zastaralý už v okamžiku tagování v GITu), tak je to ještě jednodušší, tam je to změna na 1-2 řádky. Ale jinak samozřejmě, jakákoliv vlastní práce je vždy méně výhodná než libovolně veliké cizí náklady. Ale ne vždy to "za cizí" jde...
Co se týče automatizovaných testů UI, tak to je sice hezká hračka, ale možnosti omezené (lidský pohled to stejně nenahradí) a náklady vysoké... Pro spoustu (osobně bych řekl drtivou většinu) projektů je to úplně mimo ekonomickou realitu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.