kitupiikki
kitupiikki copied to clipboard
Kitsas kaatuu MacOS:llä uutta tositetta tallentaessa
- Mene uusi tosite -toimintoon.
- Tuo CSV-tiedosto ja PDF-tiedosto liitteeksi (OP Verkkopankki tiliote)
- Tee kohdistukset
- Tallenna
Ohjelma tallentaa tiedot oikein mutta kaatuu samalla. Toistettu kahdella eri koneella ja erillisellä asennuksella/kirjanpidolla.
Liitteenä virhe: kitsas_error.log
Kitsas versio 5.1.1
Toistuuko tuo myös versiolla 5.2-RC? (https://github.com/petriaarnio/kitupiikki/releases/tag/mac-v5.2-rc)
Minulla Kitsas kattu vanhaa tositetta avattaessa samalla tavalla. Kitsas 5.1.2, MacOS 13.6, MacBook Pro 2023 M2.
Ongelma toistui äsken myös versiolla 5.2-RC, muuten sama ympäristö.
Ongelma ei toistunut Linuxissa (Ubuntu 22.04.3 LTS) Kitsas 5.1:llä.
Palautteen kautta tulleessa raportissa tositteen valintaan kaatumisesta kaatuminen on tapahtunut samassa kohdassa kuin tässä tallennettaessa tapahtuneessa kaatumisessa. QTableview::currentChanged() kutsuminen vie libqcocoaan ja siellä näytettäisiin yritettävän lukea taulukosta arvoa virheellisellä indeksillä. libqcocoa on vain mac-koneilla oleva kirjasto. mikä selittänee sen että näitä ongelmia on esiintynyt vain mac-koneilla. (Villinä veikkauksena heittäisin että muissa käyttöjärjestelmissä käytetyssä koodissa indeksin oikeellisuus mahdollisesti tarkistettaisiin ennen käyttöä.)
Nyt pitäisi vielä selvittää miksi QTableview::currentChanged() on saanut näissä tilanteissa virheellisen / virheelliseksi muuttuvan indeksin....
Jos tuosta kaatumisesta on jotain logia mahdollista ottaa talteen, voin sen toki tehdä. (Jos logi saattaa sisältää sensitiivistä tietoa, pitää toki vielä sopia yksityiskohdista.)
Viiveellä vastaan mutta 5.2RC kaatuu yhtä lailla. Toimitan mielelläni logeja tai vastaavaa jos niistä on apua.
Tapahtuuko kaatuminen kaikilla liitteillä, sekä uusien tallennuksessa että vanhoja tositteita avatessa?
@petriaarnio Minulla Kitsas ei ole kaatunut uutta tositetta lisättäessa ainakaan niin usein, että enää sitä muistaisin. Jos ymmärsin oikein, @JJH86 :lla Kitsas taas on kaatunut nimenomaan uutta tositetta luotaessa. Voi siis olla, että kyseessä onkin kaksi eri ongelmaa.
Vanhoja tositteita avatatessa Kitsas tuntuu minulla kaatuvan joka kerta, kun tositelaji on Tulo (ML), Meno (OL) tai Kululasku (KL). Toisaalta en saanut Kitsasta kaatumaan avattaessa tositetta, jonka tositelaji oli Muistio (MT), Palkka (P) tai Tiliote (T). Kokeilin kaikkia tositelajeja monta kertaa, ja vika näyttäisi olevan hyvin johdonmukainen.
Minulla on kaikissa tositteissa PDF-liitetiedosto, joten sitä en pysty sanomaan, onko liitetiedostolla tai sen puuttumisella merkitystä ongelman kannalta.
Kokeilin vielä lisää ja lisäsin yhden tulo- ja yhden menotositteen. Tositteen lisääminen onnistui ongelmitta, mutta Kitsas kaatui, kun tositteita tallentamisen jälkeen yritti avata.
Onko tämän ongelman korjaatumisesta arviota? Nykyisellään Kitsaan Mac-versio ei ole käytettävä.
Tässä on sellainen ongelma, että en ole saanut softaa kaatumaan omilla tositteilla. Olisiko mahdollista saada sämppeleitä tositteista, joilla kaatuminen tapahtuu?
Minulla Kitsas kaatuu samalla tavalla kuin @anttipalsola kuvasi: lähes mikä tahansa tosite, jossa on PDF-liite ja tositelajina Meno tai Kululasku, kaataa ohjelman tätä avatessa. Sama ongelma toistuu sekä versiossa 5.1.2 että 5.2-RC ja käyttiksenä on mac OS Sonoma 14.1.2 (23B92), laitteena MBP M1 vm 2021.
Tein kuitenkin vielä merkittävän lisähavainnon, josta voi olla apua: jos PDF-liitteen tallentaa ilman vientejä, bugia ei esiinny. Eli tein kokeeksi täysin samasta PDF-tiedostosta kaksi Meno-tyyppistä tositetta, jossa toiseen lisätään joku eurosumma ja menotili ja toisessa tosite tallennetaan ilman vientejä. Viennillisen tositteen klikkaaminen kaataa sovelluksen, viennittömän ei.
Olisiko mahdollista saada sämppeleitä tositteista, joilla kaatuminen tapahtuu?
@petriaarnio en usko että kyseessä on mikään kyseisiin PDF-liitteisiin liityvä piirre. Ainakin minulla on kirjanpidossa satoja PDF-tositteita kymmenistä eri lähteistä useilla eri tilikausilla, ja yhtäkkiä näistä minkä tahansa (Meno- tai Kululasku-tyyppisen) tositteen avaaminen kaataa Kitsaan.
@petriaarnio laitetaan nyt kuitenkin vielä esimerkin vuoksi jakoon vaikka Pagesilla luotu tyhjä PDF-tiedosto: empty.pdf
Tuo liite kaataa minulla sekä 5.1.2 että 5.2-RC:n tositetta avatessa, jos se on liitteenä Meno-tyyppisellä tositteella, jolla on summa ja menotili, mutta ei kaada silloin jos tositteella ei ole vientiä. Bugi koskee kaikkia muitakin PDF:iä millä kokeilin.
Olen nyt testannut softaa sekä vanhemmalla Intel- että M1-macillä enkä saa ongelmaa näkyviin. On lievästi sanottuna hankalaa tutkia tätä ongelmaa jos en pysty toistamaan kaatumista omassa ympäristössä.
Minulla saattaisi olla lähipäivinä aikaa tutkia tätä syvemmin, mutta pitää kyllä aloittaa ihan kehitysympäristön pystyttämisestä, kun edellisestä Kitsas-PR:stä alkaa olla aikaa. Oma lehmä ojassa, kun pitäisi saada kirjanpitoa tehtyä mutta softa kaatuilee.
Voin vahvistaa @rjoonas 'n havainnon: Kun lisäsin tulotositteen (myyntilasku) PDF-liitteellä mutta ilman vientejä, tositteen pystyi avaamaan ilman, että Kitsas olisi kaatunut. Kun tositteeseen lisäsi viennin, Kitsas kaatui, kun tositteen seuraavan kerran avasi. Minäkin olen välissä päivittänyt käyttöjärjestelmän MacOS 14.2.1 (23C71):een, mutta tämä ei vaikuttanut ongelmaan suuntaan eikä toiseen. Ja koneena on siis ollut kokoajan MacBook Pro 14" 2023 M2 Pro.
@petriaarnio : Voisiko olla, että ongelma esiintyisi vain jollain tietyllä Kitsas-konfiguraatiolla, etkä siksi ole pystynyt sitä toistamaan? Minä teen kirjanpidot kahdelle yhdistykselle, ja ongelma esiintyy molemmilla. Alla on joka tapauksessa (ei-täydellinen) kuvaus käyttämistäni asetuksista molemmille yhdistyksille erikseen:
Kirjanpitovelvollinen 1
- Kieli: suomi
- Tilikartan kieli: suomi
- Yritysmuoto: Yhdistys
- Laajuus: Tavallinen, palkat
- Tilikartta: Yhdistys 01.05.2023 (muutama oma lisäys)
- Ei alv-velvollinen
- Ei harjoituskirjanpito
- Liitteiden käsittely:
- Muuta mustavalkoiseksi: ei
- Kuvan koko: 2/7
- Kuvan laatu: 2/8
- Liitteiden katselu: Suuri (oikea reuna)
- Kohdennukset: Kustannuspaikkoja ja projekteja käytössä, merkkauksia ei
- Laskutus: ei käytössä (oletusasetukset)
- Maksutavat: oletukset
- Tositesarjat: käytössä
- Palkkakirjaustilit: oletukset.
Kirjanpitovelvollinen 2
- Kieli: suomi
- Tilikartan kieli: suomi
- Yritysmuoto: Yhdistys
- Laajuus: Tavallinen, palkat
- Tilikartta: Yhdistys 01.05.2023 (muutama oma lisäys)
- Ei alv-velvollinen
- Ei harjoituskirjanpito
- Liitteiden käsittely:
- Muuta mustavalkoiseksi: ei
- Kuvan koko: 2/7
- Kuvan laatu: 2/8
- Liitteiden katselu: Suuri (oikea reuna)
- Kohdennukset: Kustannuspaikkoja käytössä, merkkauksia ei
- Laskutus: ei käytössä (oletusasetukset)
- Maksutavat: oletukset
- Tositesarjat: ei käytössä
- Palkkakirjaustilit: oletukset (käytännössä palkkakirjauksia ei ole tehty).
Käytännössä ero on siis lähinnä siinä, että ensimmäisellä yhdistyksellä on tositesarjat käytössä, toisella ei.
Saatko noilla asetuksilla toistettua?
Minäkin voisin periaatteessa kokeilla kehitysympäristön pystyttämistä, vaikka oma C++-osaamiseni onkin kyllä Hello world -tasoa.
Todennäköisesti tosiaan liittyy konffiin tms.
Olisiko mahdollista tehdä uusi näennäisfirman kirjanpito ja siihen vienti joka kaataa softan, ja sitten lähettää se minulle?
Asensin nyt QT Creatorin ja toistin crashin debuggerissa. Se pysäyttää tulomenoapuri.cpp konstruktoriin, tälle riville:
https://github.com/artoh/kitupiikki/blob/e0d8270d18dc088a22e54bc951381e1389e63f88/kitsas/apuri/tulomenoapuri.cpp#L70
missä kohtaa call stack näyttää tältä:
1 __pthread_kill (arm64e) /usr/lib/system/libsystem_kernel.dylib 0x1817860dc
2 pthread_kill (arm64e) /usr/lib/system/libsystem_pthread.dylib 0x1817bdcc0
3 abort (arm64e) /usr/lib/system/libsystem_c.dylib 0x1816c9a40
4 abort_message (arm64e) /usr/lib/libc++abi.dylib 0x181775070
5 demangling_terminate_handler() (arm64e) /usr/lib/libc++abi.dylib 0x18176512c
6 _objc_terminate() (arm64e) /usr/lib/libobjc.A.dylib 0x18140b98c
7 std::__terminate(void ( *)()) (arm64e) /usr/lib/libc++abi.dylib 0x181774434
8 __cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception *) (arm64e) /usr/lib/libc++abi.dylib 0x181777520
9 __cxa_throw (arm64e) /usr/lib/libc++abi.dylib 0x181777464
10 objc_exception_throw (arm64e) /usr/lib/libobjc.A.dylib 0x18140201c
11 -[__NSArrayM objectAtIndexedSubscript:] (arm64e) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation 0x181886d10
12 -[QMacAccessibilityElement initWithId:role:] qcocoaaccessibilityelement.mm 135 0x101a0a044
13 +[QMacAccessibilityElement elementWithId:] qcocoaaccessibilityelement.mm 161 0x101a0a0c8
14 QCocoaAccessibility::notifyAccessibilityUpdate(QAccessibleEvent *) qcocoaaccessibility.mm 32 0x101a08688
15 QListView::selectionChanged(QItemSelection const&, QItemSelection const&) qlistview.cpp 3435 0x102c091a8
16 void doActivate<false>(QObject *, int, void * *) qobject.cpp 4033 0x1040cf48c
17 QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) moc_qitemselectionmodel.cpp 660 0x104295e44
18 QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) qitemselectionmodel.cpp 1909 0x104295e24
19 QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) qitemselectionmodel.cpp 1327 0x104295a2c
20 QItemSelectionModel::select(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) qitemselectionmodel.cpp 1174 0x10429570c
21 QItemSelectionModel::setCurrentIndex(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) qitemselectionmodel.cpp 1402 0x1042968cc
22 QComboBoxPrivate::setCurrentIndex(QModelIndex const&) qcombobox.cpp 2185 0x102a67338
23 QComboBox::setCurrentIndex(int) qcombobox.cpp 2135 0x102a6a8b4
24 QComboBoxPrivate::rowsInserted(QModelIndex const&, int, int) qcombobox.cpp 1127 0x102a6a870
25 QtPrivate::QSlotObjectBase::call(QObject *, void * *) qobjectdefs_impl.h 433 0x1040cf224
26 void doActivate<false>(QObject *, int, void * *) qobject.cpp 4021 0x1040cf208
27 QAbstractItemModel::rowsInserted(QModelIndex const&, int, int, QAbstractItemModel::QPrivateSignal) moc_qabstractitemmodel.cpp 1356 0x10427e944
28 QAbstractItemModel::endInsertRows() qabstractitemmodel.cpp 2908 0x10427e914
29 QStandardItemPrivate::insertRows(int, QList<QStandardItem *> const&) qstandarditemmodel.cpp 458 0x10321f1a8
30 QComboBox::insertItems(int, QList<QString> const&) qcombobox.cpp 2355 0x102a6de38
31 QComboBox::addItems(QList<QString> const&) qcombobox.h 136 0x1000dd830
32 TuloMenoApuri::TuloMenoApuri(QWidget *, Tosite *) tulomenoapuri.cpp 70 0x1000d9390
33 TuloMenoApuri::TuloMenoApuri(QWidget *, Tosite *) tulomenoapuri.cpp 41 0x1000e081c
34 KirjausWg::tositeTyyppiVaihtui(int) kirjauswg.cpp 908 0x100545024
35 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, void (KirjausWg:: *)(int)>::call(void (KirjausWg:: *)(int), KirjausWg *, void * *) qobjectdefs_impl.h 145 0x10054fa8c
36 void QtPrivate::FunctionPointer<void (KirjausWg:: *)(int)>::call<QtPrivate::List<int>, void>(void (KirjausWg:: *)(int), KirjausWg *, void * *) qobjectdefs_impl.h 182 0x10054f9a8
37 QtPrivate::QCallableObject<void (KirjausWg:: *)(int), QtPrivate::List<int>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void * *, bool *) qobjectdefs_impl.h 520 0x10054f898
38 QtPrivate::QSlotObjectBase::call(QObject *, void * *) qobjectdefs_impl.h 433 0x1040cf224
39 void doActivate<false>(QObject *, int, void * *) qobject.cpp 4021 0x1040cf208
40 Tosite::tyyppiMuuttui(int) moc_tosite.cpp 736 0x1007273d8
41 Tosite::lataa(QMap<QString, QVariant> const&) tosite.cpp 319 0x1003632ec
42 Tosite::lataaData(QVariant *) tosite.cpp 349 0x10036294c
43 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QVariant *>, void, void (Tosite:: *)(QVariant *)>::call(void (Tosite:: *)(QVariant *), Tosite *, void * *) qobjectdefs_impl.h 145 0x10036746c
44 void QtPrivate::FunctionPointer<void (Tosite:: *)(QVariant *)>::call<QtPrivate::List<QVariant *>, void>(void (Tosite:: *)(QVariant *), Tosite *, void * *) qobjectdefs_impl.h 182 0x100367388
45 QtPrivate::QCallableObject<void (Tosite:: *)(QVariant *), QtPrivate::List<QVariant *>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void * *, bool *) qobjectdefs_impl.h 520 0x100367278
46 QtPrivate::QSlotObjectBase::call(QObject *, void * *) qobjectdefs_impl.h 433 0x1040cf224
47 void doActivate<false>(QObject *, int, void * *) qobject.cpp 4021 0x1040cf208
48 KpKysely::vastaus(QVariant *) moc_kpkysely.cpp 279 0x100756b9c
49 SQLiteKysely::vastaa(QVariant const&) sqlitekysely.cpp 68 0x10069c4f8
50 SQLiteModel::reitita(SQLiteKysely *, QVariant const&) sqlitemodel.cpp 380 0x1006b30b4
51 SQLiteKysely::kysy(QVariant const&) sqlitekysely.cpp 39 0x10069be18
52 Tosite::lataa(int) tosite.cpp 272 0x1003627a8
53 KirjausWg::lataaTosite(int) kirjauswg.cpp 796 0x100549d40
54 KirjausSivu::naytaTosite(int, int, QList<int>, KirjausSivu::Takaisinpaluu) kirjaussivu.cpp 136 0x100553c24
55 KitupiikkiIkkuna::naytaTosite(int, QList<int>, KirjausSivu::Takaisinpaluu) kitupiikkiikkuna.cpp 310 0x100514f78
56 QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2>, QtPrivate::List<int, QList<int>, KirjausSivu::Takaisinpaluu>, void, void (KitupiikkiIkkuna:: *)(int, QList<int>, KirjausSivu::Takaisinpaluu)>::call(void (KitupiikkiIkkuna:: *)(int, QList<int>, KirjausSivu::Takaisinpaluu), KitupiikkiIkkuna *, void * *) qobjectdefs_impl.h 145 0x100518914
57 void QtPrivate::FunctionPointer<void (KitupiikkiIkkuna:: *)(int, QList<int>, KirjausSivu::Takaisinpaluu)>::call<QtPrivate::List<int, QList<int>, KirjausSivu::Takaisinpaluu>, void>(void (KitupiikkiIkkuna:: *)(int, QList<int>, KirjausSivu::Takaisinpaluu), KitupiikkiIkkuna *, void * *) qobjectdefs_impl.h 182 0x1005187fc
58 QtPrivate::QCallableObject<void (KitupiikkiIkkuna:: *)(int, QList<int>, KirjausSivu::Takaisinpaluu), QtPrivate::List<int, QList<int>, KirjausSivu::Takaisinpaluu>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void * *, bool *) qobjectdefs_impl.h 520 0x1005186ec
59 QtPrivate::QSlotObjectBase::call(QObject *, void * *) qobjectdefs_impl.h 433 0x1040cf224
60 void doActivate<false>(QObject *, int, void * *) qobject.cpp 4021 0x1040cf208
61 SelausWg::tositeValittu(int, QList<int>, KirjausSivu::Takaisinpaluu) moc_selauswg.cpp 433 0x100743740
62 SelausWg::naytaTositeRivilta(QModelIndex) selauswg.cpp 366 0x100559550
Ja outputiin tulee Cocoasta poikkeus että QComboBox yrittää käpistellä tyhjän taulun ekaa alkiota:
*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndexedSubscript:]: index 0 beyond bounds for empty array'
*** First throw call stack:
(
0 CoreFoundation 0x0000000181910570 __exceptionPreprocess + 176
1 libobjc.A.dylib 0x0000000181401eb4 objc_exception_throw + 60
2 CoreFoundation 0x0000000181886d10 -[__NSCFString hasSuffix:] + 0
3 libqcocoa.dylib 0x0000000102076044 _ZN20QCocoaSystemTrayIcon13emitActivatedEv + 274796
4 libqcocoa.dylib 0x00000001020760c8 _ZN20QCocoaSystemTrayIcon13emitActivatedEv + 274928
5 libqcocoa.dylib 0x0000000102074688 _ZN20QCocoaSystemTrayIcon13emitActivatedEv + 268208
6 QtWidgets 0x00000001032751a8 _ZN9QListView16selectionChangedERK14QItemSelectionS2_ + 204
7 QtCore 0x000000010473b48c _ZN11QMetaObject8activateEP7QObjectPKS_iPPv + 3808
8 QtCore 0x0000000104901e44 _ZN19QItemSelectionModel20emitSelectionChangedERK14QItemSelectionS2_ + 216
9 QtCore 0x0000000104901a2c _ZN19QItemSelectionModel6selectERK14QItemSelection6QFlagsINS_13SelectionFlagEE + 636
10 QtCore 0x000000010490170c _ZN19QItemSelectionModel6selectERK11QModelIndex6QFlagsINS_13SelectionFlagEE + 68
11 QtCore 0x00000001049028cc _ZN19QItemSelectionModel15setCurrentIndexERK11QModelIndex6QFlagsINS_13SelectionFlagEE + 260
12 QtWidgets 0x00000001030d3338 _ZNK9QComboBox5countEv + 828
13 QtWidgets 0x00000001030d68b4 _ZN9QComboBoxC1ER16QComboBoxPrivateP7QWidget + 2412
14 QtCore 0x000000010473b224 _ZN11QMetaObject8activateEP7QObjectPKS_iPPv + 3192
15 QtCore 0x00000001048ea944 _ZN18QAbstractItemModel13endInsertRowsEv + 200
16 QtGui 0x000000010388b1a8 _ZN18QStandardItemModel11itemChangedEP13QStandardItem + 844
17 QtWidgets 0x00000001030d9e38 _ZN9QComboBox11insertItemsEiRK5QListI7QStringE + 340
18 kitsas 0x0000000100749830 _ZN9QComboBox8addItemsERK5QListI7QStringE + 48
19 kitsas 0x0000000100745390 _ZN13TuloMenoApuriC2EP7QWidgetP6Tosite + 2004
20 kitsas 0x000000010074c81c _ZN13TuloMenoApuriC1EP7QWidgetP6Tosite + 44
21 kitsas 0x0000000100bb1024 _ZN9KirjausWg19tositeTyyppiVaihtuiEi + 332
22 kitsas 0x0000000100bbba8c _ZN9QtPrivate11FunctorCallINS_11IndexesListIJLi0EEEENS_4ListIJiEEEvM9KirjausWgFviEE4callES7_PS5_PPv + 152
23 kitsas 0x0000000100bbb9a8 _ZN9QtPrivate15FunctionPointerIM9KirjausWgFviEE4callINS_4ListIJiEEEvEEvS3_PS1_PPv + 80
24 kitsas 0x0000000100bbb898 _ZN9QtPrivate15QCallableObjectIM9KirjausWgFviENS_4ListIJiEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb + 188
25 QtCore 0x000000010473b224 _ZN11QMetaObject8activateEP7QObjectPKS_iPPv + 3192
26 kitsas 0x0000000100d933d8 _ZN6Tosite13tyyppiMuuttuiEi + 72
27 kitsas 0x00000001009cc25c _ZN6Tosite7setDataEi8QVariant + 2780
28 kitsas 0x00000001009cd45c _ZN6Tosite11asetaTyyppiEi + 76
29 kitsas 0x0000000100ba84bc _ZN9KirjausWgC2EP11KirjausSivu5QListIiE + 6212
30 kitsas 0x0000000100bb3fa8 _ZN9KirjausWgC1EP11KirjausSivu5QListIiE + 44
31 kitsas 0x0000000100bbee1c _ZN11KirjausSivuC2EP16KitupiikkiIkkuna5QListIiE + 348
32 kitsas 0x0000000100bbf638 _ZN11KirjausSivuC1EP16KitupiikkiIkkuna5QListIiE + 44
33 kitsas 0x0000000100b7dd94 _ZN16KitupiikkiIkkunaC2EP7QWidget + 1332
34 kitsas 0x0000000100b81f7c _ZN16KitupiikkiIkkunaC1EP7QWidget + 36
35 kitsas 0x0000000100678320 main + 3800
36 dyld 0x000000018143d0e0 start + 2360
)
libc++abi: terminating due to uncaught exception of type NSException
Näillä ohjeilla rytisee ainakin minulla:
- Avaa tgz-paketissa (GitHub ei antanut tallentaa .kitsas-tiedostoa suoraan) Testiyhdistysry.kitsas.tgz oleva kirjanpito.
- Klikkaa Selaa → OL1.
Eipä Testiyhdistyskään saanut Kitsasta kaatumaan minun koneillani. Myöskään sellaisella koneella, jossa ei ole ulkoisia riippuvuuksia (Qt, ...) asennettuna. Viittaukset alkuperäisiin sijaintipaikkoihin ovat olleet yleisin syy kaatumisiin. Jotain koneriippuvaisuutta tässä nyt kuitenkin on.
@petriaarnio Onko mahdollista, että minulla on asennettuna jostain kirjastosta jokin versio, joka ei ole Kitsaan kanssa yhteensopiva. Qt:ta ei pitäisi olla, mutta Homebrew'n kautta kyllä kaikenlaista muuta.
Kitsaalla ei ole enää (ainakaan suoria) muita kirjastoriippuvuuksia kuin Qt, ja joka tapauksessa kaikki tarvittavat kirjastot on paketoitu applikaation bundleen ja viittaukset niihin sen sisällä, eli en kovin todennäköisenä pidä vääriä lokaaleja kirjastoversioita. @rjoonas, sait kehitysympäristön pystyyn, saatko kaiveltua syvemmälle kaatumisen juurisyihin?
Pyörin debuggerissa lisää ja tulin siihen tulokseen, että kyseessä taitaa olla Qt:n Mac-komponenttien bugi, joka saattaisi vieläpä olla juuri korjattu – katsokaapa tämä pari viikkoa vanha Qt:n commit, jossa minulla Kitsaan kaatavan kutsun tableElement->rows[m_rowIndex];
ympärille on lisätty guardeja ja assertioita: https://github.com/qt/qtbase/commit/c81e31461fd5a5bd2fe959f26b2e6d134b9a71e9 .
Ongelma on ilmeisesti syntynyt 12.4.2023 commitissa https://github.com/qt/qtbase/commit/52c2b82082b535123c0eecafe1ec1e4e4190df2a ja tosiaan korjattu nyt joulukuussa.
Qt 6.6.2, jossa tuo korjaus on mukana, julkaistaan ilmeisesti ihan lähiviikkoina. Kokeilin buildata Kitsaan myös Qt 6.7.0-beta 1:lla, mutta siinä ei valitettavasti ollutkaan vielä tuota committia mukana.
Vaihdoin Kitsaan 5.3 versioon Qt 6.6.1 koska en huomannut kommenttia 6.6.2:sta. No uusi yritys kun 6.6.2 julkaistaan.
Tämänhetkisen arvion mukaan Qt 6.6.2 on määrä julkaista 7.2.2024.
Kuulostaa hyvältä. Tuohon mennessä meiltä pitäisi olla ulkona seuraava päivitys, jossa muutaman korjauksen lisäksi pääsee paremmin tekemään Kitsaan laskelmasta poikkeavan alijäämähuojennuksen.
Buildasin Kitsaan Qt 6.7.0-beta2:lla, joka julkaistiin toissapäivänä. Sillä sain itselleni jo kasaan Kitsaan, jolla PDF-tositteet aukeavat kaatumatta 👍
7.2. meni eikä Qt 6.6.2 näytä vieläkään olevan saatavilla.