tomboy-ng unexpectedly crashes (per KDE) when using tray icon

tomboy-ng-20191230-110216.kcrash.txt
openSUSE 15.1 (Leap)
KDE
tomboy-ng 0.25.2 (qt5 RPM)
I've noticed that as long as I have a tomboy-ng window open somewhere, the system tray icon to open notes, open the search window, or go to settings, works just fine.  If I close the last note window, though, the next time I try to use the system tray icon the application crashes.  This has happened several times now, and this last time I saved out the crash text which is down below.
Before installing the first time last night I had to manually tell the system to install the libQt5Pa1 package in order to provide libQt5Pas1.so.1 but with that done the tomboy-ng package installed just fine, on two systems now (I may be able to help figure out why the dependency resolution is not working if that's useful).  That libQt5Pas1 package's metadata follow:
Name        : libQt5Pas1
Version     : 2.0.2
Release     : lp151.1.4
Architecture: x86_64
Install Date: Mon 30 Dec 2019 07:58:14 AM MST
Group       : System/Libraries
Size        : 2702277
License     : LGPL-3.0-only
Signature   : RSA/SHA256, Fri 03 May 2019 07:10:37 PM MDT, Key ID b88b2fd43dbdc284
Source RPM  : lazarus-2.0.2-lp151.1.4.src.rpm
Build Date  : Fri 03 May 2019 07:01:47 PM MDT
Build Host  : lamb20
Relocations : (not relocatable)
Packager    : https://bugs.opensuse.org
Vendor      : openSUSE
URL         : http://www.lazarus.freepascal.org/
Summary     : Free Pascal interface to Qt5
Description :
Library that allows to use Qt5 with Free Pascal
Distribution: openSUSE Leap 15.1
Crash dump text:
Application: tomboy-ng (tomboy-ng), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fbb698398c0 (LWP 8874))]
Thread 5 (Thread 0x7fbb3a02a700 (LWP 8878)):
#0  0x00007fbb694358ad in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fbb3acd09ab in ?? () from /usr/lib64/dri/i965_dri.so
#2  0x00007fbb3acd06b7 in ?? () from /usr/lib64/dri/i965_dri.so
#3  0x00007fbb6942f569 in start_thread () from /lib64/libpthread.so.0
#4  0x00007fbb6878f9ef in clone () from /lib64/libc.so.6
Thread 4 (Thread 0x7fbb45f61700 (LWP 8877)):
#0  0x000000000041cc1d in ?? ()
#1  0x0000000000000000 in ?? ()
Thread 3 (Thread 0x7fbb4e799700 (LWP 8876)):
#0  0x00007fbb69438eb8 in read () from /lib64/libpthread.so.0
#1  0x00007fbb63a10ca0 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fbb639cbcb8 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fbb639cc150 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fbb639cc2bc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007fbb66a4c96b in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib64/libQt5Core.so.5
#6  0x00007fbb669f190a in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib64/libQt5Core.so.5
#7  0x00007fbb6680fdaa in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#8  0x00007fbb5efa09e5 in ?? () from /usr/lib64/libQt5DBus.so.5
#9  0x00007fbb66814ced in ?? () from /usr/lib64/libQt5Core.so.5
#10 0x00007fbb6942f569 in start_thread () from /lib64/libpthread.so.0
#11 0x00007fbb6878f9ef in clone () from /lib64/libc.so.6
Thread 2 (Thread 0x7fbb5bffe700 (LWP 8875)):
#0  0x00007fbb6878519b in poll () from /lib64/libc.so.6
#1  0x00007fbb65f9f307 in ?? () from /usr/lib64/libxcb.so.1
#2  0x00007fbb65fa0f3a in xcb_wait_for_event () from /usr/lib64/libxcb.so.1
#3  0x00007fbb5f496939 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007fbb66814ced in ?? () from /usr/lib64/libQt5Core.so.5
#5  0x00007fbb6942f569 in start_thread () from /lib64/libpthread.so.0
#6  0x00007fbb6878f9ef in clone () from /lib64/libc.so.6
Thread 1 (Thread 0x7fbb698398c0 (LWP 8874)):
[KCrash Handler]
#6  0x00007fbb5a0ccfb9 in KStatusNotifierItem::activate(QPoint const&) () from /usr/lib64/libKF5Notifications.so.5
#7  0x00007fbb5a0d3a22 in ?? () from /usr/lib64/libKF5Notifications.so.5
#8  0x00007fbb5a0ebb29 in ?? () from /usr/lib64/libKF5Notifications.so.5
#9  0x00007fbb5a0ec0b5 in ?? () from /usr/lib64/libKF5Notifications.so.5
#10 0x00007fbb5efabd98 in ?? () from /usr/lib64/libQt5DBus.so.5
#11 0x00007fbb5efb1049 in ?? () from /usr/lib64/libQt5DBus.so.5
#12 0x00007fbb5efb160c in ?? () from /usr/lib64/libQt5DBus.so.5
#13 0x00007fbb5efb3d2e in ?? () from /usr/lib64/libQt5DBus.so.5
#14 0x00007fbb66a230a2 in QObject::event(QEvent*) () from /usr/lib64/libQt5Core.so.5
#15 0x00007fbb67d2c3dc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#16 0x00007fbb67d33ca4 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#17 0x00007fbb669f38d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#18 0x00007fbb669f604d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQt5Core.so.5
#19 0x00007fbb66a4d323 in ?? () from /usr/lib64/libQt5Core.so.5
#20 0x00007fbb639cbe87 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#21 0x00007fbb639cc230 in ?? () from /usr/lib64/libglib-2.0.so.0
#22 0x00007fbb639cc2bc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#23 0x00007fbb66a4c94f in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib64/libQt5Core.so.5
#24 0x0000000000550a59 in ?? ()
#25 0xffffffff697f9b70 in ?? ()
#26 0x00007fbb697f9fb0 in ?? ()
#27 0x00007fff910467e0 in ?? ()
#28 0x0000000000441919 in ?? ()
#29 0x0000000000000000 in ?? ()
[Inferior 1 (process 8874) detached]

I thought this was related to having a note open, or not, but I've seen a few cases where that has not mattered; notes have been open, and it has crashed . I've been opening and closing notes, and it has crashed.  This last time, I merely clocked on the tray icon, then made it go away, and on the fourth time it crashed. Are there any steps I can take to narrow this down a bit more, or find out the root cause of the crash?  The dump text above looks pretty unhelpful.

Thanks dajoker, a detailed bug report is valuable !
Firstly, sad that you have had to manually install libqt5pas1, What I have done is make a deb package, convert that to an rpm via alien. Sounds like the dependency is not making it through that transition. And my testing did not pick it up. Sigh ...
Next issue, the big one is the crash.  I have not experienced anything like that. The "no window open" must be a clue but does not bring anything to mind. Looking at your dump indicates to me that the problem may be in the Qt loop rather than my code. The Qt version of tomboy-ng is new and relatively untested. And unlike the GTK version, I have not been using it pre-release personally because my platform is Ubuntu18.04 and its Qt is a problem, Ubuntu's 'unattended update' tool keeps overwriting my fix. sigh....
We have a few approaches possible. Firstly, I can make you a new binary with debugging included, its a lot bigger and a bit slower but might just localise the problem.  Secondly, you could try the gtk version, particularly easy if you already have some GTK2 apps installed, otherwise it will involve about 300Meg extra disk usage when the necessary libraries are installed.
How do you want to approach this ?
Further on, its going to need to be run, and hopefully crash, from within the Lazarus IDE so the debugger can catch it and show us whats really happening.  Two ways, you tell me about your system and I'll try to build a VM and replicate your problem. Secondly, if you are feeling really brave, you could try installing Lazarus, et al and try it on site. Big job and will depend a lot on how keen you are and require some programming background. Honestly, its my problem ...
Davo
Davo

If you are willing to share instructions I'd be happy to try them all.  For now I'll see what the GTK version does, since that might be easiest for you and since I likely have GTK stuff installed anyway (Pidgin makes me think it is GTK-based).  Ultimately I like learning new troubleshooting techniques, and feel like I might learn a lot from something like this.
I saw, from the manpage, that there is some debugging within the executable.  I presume that is not sufficient, and since you mentioned the size and speed, I presume you mean debugging symbols and such.
Based on the package version I posted above, my package version may not be as new as others, both supporting your theory it is Qt-related and that it's something impacting me but not you.
I saw the script in the git repository that converts from .deb to .rpm using alien, and it looks like you specifically create a spec file.  Do you have that intermediate spec file handy as it was fed to rpmbuild in there?  Reviewing it might be interesting.
If Lazarus is something I can try I'll do that.  As mentioned, I have a second laptop on which I can try to duplicate the issue (I'll try that tonight for sure) and on which I can do any amount of debugging without worrying about my previous notes.  I've done debugging in IDEs (Eclipse, Zend Studio) before, and have experience with other languages (Java, Perl, and PHP the most).
If you get bored and want to try out a distro WAY better than Ubuntu ;-) then getting openSUSE going is really easy, either with a network-based install or a full DVD install.  If handy for you I could probably create it (KVM, VirtualBox, or maybe VMware) and send a disk file over once I have it duplicated.
P.S.  I realized the no-undo (Ctrl-Z) bit this afternoon too.  As you saw from the other reported issues, that would be a big nice-to-have.

Somehow I forgot to past the openSUSE media URL: https://software.opensuse.org/distributions/leap

Yep, sounds like  you are on right track. Pidgin is GTK2, the debugging command line switches won't help in the part  the crash appears to happen in.
Alien makes that spec file for us but I do play with it mid process. I am not too worried about the libqt5pas1 issue, its quite fixable. The crash does worry me !
Can you tell me what version of Qt5 you are using ?   That might be important. I don't remember right now how to find out, nor what the minimum version is but can look it up ...
I do have a openSUSE VM I have been testing on, Leap 15.1.  (Did not like it, but we all hate unfamiliar stuff !).
yeah, undo/redo is a big miss, long story, relates to the RichText editing component (ie library, widget...) I have used. I have been considering replacing it with another, rival one but thats got a few issues on MacOS ....
To build your own -ng you would need to install FPC and FPC-SRC, easy, packages available. Plus Lazarus, dated packages, better to build on the fly. Plus KControls, easy from within Lazarus but needs a patch to deal with a bug I logged almost two months ago (!). If and when you are ready, let me know and I can provide some useful details.
Davo

Hmm, my OpenSuse VM is Gnome only, don't think I want to install QT5 on it yet, might clone it to keep it a clean install.
If you have qmake available, you could try qmake -query [enter]    // note single dash :-(
You could also try, if you have a bit of free time -
find / -name "libqt5*" 2> /dev/null [enter]
That might tell us your qt version.  As I remember it, need at least Qt5.12 (which is newer than Qt5.9) but there are some grey areas .....

Queried all the 'libqt'-containing packages in the system:

rpm -qa | grep -i libqt

libqt5-qtimageformats-5.9.7-lp151.1.2.x86_64
libqt4-sql-sqlite-4.8.7-lp151.8.4.x86_64
libqt5-qtgraphicaleffects-5.9.7-lp151.1.2.x86_64
libQt5WebKitWidgets5-5.212~alpha2-lp151.5.37.x86_64
libQt5Test5-5.9.7-lp151.3.1.x86_64
libQt5Sql5-sqlite-5.9.7-lp151.3.1.x86_64
libQt5Widgets5-5.9.7-lp151.3.1.x86_64
libQt5Script5-5.9.7-lp151.1.37.x86_64
libQt5Sensors5-imports-5.9.7-lp151.1.3.x86_64
libQt5QuickControls2-5-5.9.7-lp151.1.3.x86_64
libQt5Pas1-2.0.2-lp151.1.4.x86_64
libqt4-x11-4.8.7-lp151.8.4.x86_64
libQt5Concurrent5-5.9.7-lp151.3.1.x86_64
libQt5Xml5-5.9.7-lp151.3.1.x86_64
libQt5Sensors5-5.9.7-lp151.1.3.x86_64
libQtQuick5-5.9.7-lp151.2.2.x86_64
libQt5WebChannel5-5.9.7-lp151.1.2.x86_64
libQt5WebChannel5-imports-5.9.7-lp151.1.2.x86_64
libqt5-qtquickcontrols2-5.9.7-lp151.1.3.x86_64
libqt4-4.8.7-lp151.8.4.x86_64
libqt4-sql-4.8.7-lp151.8.4.x86_64
libqt4-qt3support-4.8.7-lp151.8.4.x86_64
libQt5Multimedia5-5.9.7-lp151.1.3.x86_64
libQt5Positioning5-5.9.7-lp151.1.3.x86_64
libQt5Sql5-5.9.7-lp151.3.1.x86_64
libQt5Sql5-mysql-5.9.7-lp151.3.1.x86_64
libQt5XmlPatterns5-5.9.7-lp151.1.3.x86_64
libQt5PrintSupport5-5.9.7-lp151.3.1.x86_64
libQt5WaylandClient5-5.9.7-lp151.1.4.x86_64
libQt5OpenGL5-5.9.7-lp151.3.1.x86_64
libQt5QuickTemplates2-5-5.9.7-lp151.1.3.x86_64
libQt5WebKit5-5.212~alpha2-lp151.5.37.x86_64
libqt5-qdbus-5.9.7-lp151.1.38.x86_64
libqt5-qtquickcontrols-5.9.7-lp151.1.3.x86_64
libqt5-qtbase-platformtheme-gtk3-5.9.7-lp151.3.1.x86_64
libQt5NetworkAuth5-5.9.7-lp151.1.3.x86_64
libQt5TextToSpeech5-5.9.7-lp151.3.2.x86_64
libQt5Network5-5.9.7-lp151.3.1.x86_64
libQt5X11Extras5-5.9.7-lp151.1.1.x86_64
libQt5Svg5-5.9.7-lp151.1.3.x86_64
libQt5WaylandCompositor5-5.9.7-lp151.1.4.x86_64
libqt5-qtwayland-5.9.7-lp151.1.4.x86_64
libQt5WebKit5-imports-5.212~alpha2-lp151.5.37.x86_64
libQt5DBus5-5.9.7-lp151.3.1.x86_64
libQt5Gui5-5.9.7-lp151.3.1.x86_64
libqt5-qtstyleplugins-platformtheme-gtk2-5.0.0+git20170311-lp151.4.2.x86_64
libqt5-qtvirtualkeyboard-5.9.7-lp151.1.1.x86_64
libqt5-qttranslations-5.9.7-lp151.1.1.x86_64
libQt5Core5-5.9.7-lp151.3.1.x86_64
libqt5-qtwebengine-5.9.7-lp151.1.42.x86_64
libqt5-qtpaths-5.9.7-lp151.1.38.x86_64
Running the find command the majority of the libraries under /usr/lib64 end in .5.9.7, which seems to match the list above.  5.9 < 5.12, so perhaps that's the issue.
At the end of the day, the non-Qt5 version is working better so far; I just installed, and poked at the tray icon quite a bit, and so far no issues.  If it turns out this is some "your Qt5 is too old" issue, then perhaps that dependency can be added to the spec file for that particular build and then we're done.  I'm not sure which package is best, but libqt5-qtbase-platformtheme-gtk3 MIGHT be a sensible start; I wish there was a simple libqt5-qtbase package only, but there are are various "provides" options in/around these packages on my current system:
libqt5-qtbase-platformtheme-gtk3(x86-64) = 5.9.7-lp151.3.1
Building some kind of dependency that states we need >= 5.12 might match up with your understanding.  Perhaps I'll see if I can get a Tumbleweed VM going as its qt5 packages should be about as bleeding edge as possible.

One of the biggest reasons I love openSUSE: It's good for this kind of thing thanks to the Open Build Service (OBS):
https://software.opensuse.org/package/libqt5-qtbase
If that opens for you like it does for me, you should be able to click the "Show libqt5-qtbase for other distributions" button, and it will show you 5.9.7 is for Leap, and 5.13.1 is available on Tumbleweed, plus a bunch of other versions, and distros, and often that even includes Debian stuff.  Anyway, I'll see if I can get Tumbleweed going in a VM and test out there, or maybe just see about getting 5.12+ on my other system for testing/verification.

I built an openSUSE Tumblweed install yesterday (test rig) and today in a virtual machine (VirtualBox) so I have now duplicated a new problem, but the old problem is gone, so perhaps that means we should close this issue and open another.
The new issue, or maybe the related issue, is something I stumbled upon while verifying the newer libqt5 (5.13) in Tumbleweed fixes the issue reported here, and while the crash does not happen my testing consisted of a bunch of system tray icon access in a quick sequence (which may or may not be relevant, but I think it probably is).  I'm attaching a screenshot of the error.

In the screenshot the dialog box in the middle pops up, with some scary warning, right when I click on the tray icon, but nothing comes up from the tray icon.  While I was getting ready to take the screenshot, though, the tray finally showed its menu (shown), though you do not see any notes created (I had created six (6) in about thirty (30) seconds, most with just one word in them, Testing0, Testing1, Testing2, etc., and with their default titles).  Not showing any of them makes me think that the writes had not completed properly, or maybe the indexing had not happened, or maybe something else was wrong, but either way the message is scary.  After the app crashed and I reloaded it I now see the notes as expected:

I have not noticed this with the GTK version, but I also have not tried this particular test, so maybe I'll try that shortly on another system.

Hmm, interesting.  I don't see any reason why the Qt5 version of -ng would be more prone to this problem than the GTK one. So, think it could be a broader issue.  Clearly you could trigger race conditions creating new notes faster that the system can keep up but, firstly, I doubt you would with empty notes. Longer notes with a lot of content take longer to save. But secondly, I don't see how that would lead to an Access Violation. Generally that means the app is trying to access memory that its not entitled to access. A bad thing !  Unix caching means the notes don't really need to be physically saved to disk, just passed to the unix file system, thats pretty quick unless you are struggling for memory. And new notes require very little memory. Sigh...
We keep a list in memory that  represents the on disk status and do regard that as authoritative.  But if that gets out of sync, you'd get a well handled file i/o exception, no assumptions are made about access being available.
------------- QUESTION ?
When you hit that trayicon quickly what are you asking it to do ?  Add a new note,  reopen another, bring an open one to focus  or open one of the other windows ?
Thanks for tracking down that QT5 version issue ! I think I will state that it should use 5.12 or later, while it can be forced to use earlier (by replacing the libqt5pas1 with a specially compiled one), I think any system using the older Qt5 is probably going to have GTK2 available any way. Its far better tested. Lets play safe !

Steps I was using were simply:
Click on tray icon
Click New Note
Type a few characters in the new note.
Close the new note ('x' in the corner)
Rinse and repeat.
I tried again this morning on my test box (Qt5 version of tomcat-ng, but Tumbleweed so 5.13 version of Qt5) and it happened when I created the second note, so not very encouraging.  I'm going to swap that one to GTK to see if that helps.

Testing with the GTK version did not have any errors; where before I would get that exception after just a few notes (or in that one case, on just the second note) with GTK I was able to create twenty (20) without any errors using the same steps as above only using Alt+F4 to close the notes (rather than clicking the 'x' in the corner) in order to go faster.
Anyway, I'm not sure what this means other than the Qt version seems to have some interesting underlying issue.  I have a VirtualBox VM I can put somewhere if you want to use it directly.  It is not the box where I duplicated GTK's success just now, but it's the same setup otherwise, just a minimal Tumbleweed with Qt 5.13.

I feel that I will really need to get to bottom of this (late model) Qt5 problem. That means being able to replicate it and so far, I cannot and then replicate it in some very simple app. Often drilling down like that will clarify the problem and its necessary to get the Qt5/Lazarus people interested.

If I can help, perhaps by providing the VM, let me know.  My own testing makes me think that this should be easy to duplicate with whatever version of Qt comes with Leap or Tumbleweed, but if nothing else I can send a VM, or build a new one.

Eek... on my main box (Leap, NON-Qt version of Tomboy-ng) I just saw the same Access Violation error I saw in Tumbleweed with Qt.  It happened, maybe coincidentally, as I was making the note I was using a bit thinner (resizing it).  I do not recall if I had typed in it recently, thus it might have been saving changes, but there you go.  I closed and reopened and had no problems since (of which I am aware), nor until this time since using the GTK version, but at least it confirms it is not a Qt-version-only issue.

Hmm, thats a worry ....

Yes, I really did not expect that since my earlier GTK testing on my test box did so well creating test notes a couple dozen times.  I also did not expect it because I was just resizing the window.  I've seen it once since, again while resizing the window on my main (GTK) box.  I guess I'll be careful when doing that.

Hmm, I don't want to put "be careful when resizing" in the release notes  :-(  So, must get to bottom of both thses issues.  One thing I have been quite proud of is how stable -ng is, Tomboy did have some problems...
dojoker, you had an open note and resized it ?  By grabbing the edge with the mouse ?  Anything you tell me about the note ?  Big, small, unicode characters ?  Lots of bullet points perhaps ?
Davo

I am not making a lot of progress here. Firstly, dajoker, can you tell me more about your platform ?
Its OpenSuse, I am testing against Leap 15.1.  But what desktop are your using, given your initial choice of Qt5-ng, I am guessing Plasma/KDE ?   Or are you using Gnome ?  I have little OpenSuse experience, I assume you can download what people call 'spins' or 'flavours' of OpenSuse getting different desktops ?
I cannot replicate your problem on my OpenSuse Leap 15.1 using either Wayland or Xorg.  I am absolutely astounded that I can run Qt5-ng on the Wayland version of OpenSuse, thats a real no-no on Fedora and I tend to lump Suse with Redhat.
The issue about libqt5pas1 also has me puzzled. I did not initially test OpenSuse with the Qt5-ng because it uses Wayland and I was sure it would not work. Wrong.  But also wrong is that rpm, when told to install Qt5-ng, complains it needs libqt5pas, thats wrong, the deb the rpm was made from specifies libqt5pas1, note the '1' at the end.  If I manually install using yast, libqt5pas1, all is good. Somehow, something, maybe alien is changing the name of the dependency.  Ah, got it, Fedora and its spins call that library qt5pas, no '1', so perhaps Ubuntu's alien is making RedHat specific rpm files ......
This is getting messy !
I am still more worried about the crashes. And why I cannot replicate them.
Davo

I'm using openSUSE Leap 15.1 (x86_64) with KDE (main rig).  The other system where I originally saw the error as noted in the screenshots was on an openSUSE Tumbleweed (installed a few days ago for this testing) system, also with KDE (test rig).
My main rig has 16 GiB RAM, a decent SSD (lat time I tested I could write around 340+ MiB/second), lots of free space, and I'm using XFS as the filesystem for /home (as opposed to Btrfs used for the rest of the system).  My test rig is significantly less, but newly installed so lots of free space.
I have some huge notes, but my daily notes are not huge.  For example, here is yesterday's note as reported by ls:
-rw-r--r-- 1 aaron users  25135 Jan  3 05:43 231AD7F2-D826-4B63-9AD6-E18B5D11FBA1.note
As a rule I try to avoid doing anything not-basic in my notes, i.e. I stick with ASCII characters mostly, though UTF8 is permitted, and I avoid bullets and such things always.
Usually when I resize I use a KDE-ism to do so, and I think that's probably what I did yesterday (or else I grabbed the edge), by using Alt+right-click which lets you move the closest edge of the window however you move the mouse.  I believe it is basically the same as dragging the edge of the window, but without needing to perfectly aim for the edge of the window.  Similarly, KDE lets you Alt+left-click to move a window, so instead of needing to grab the window header you can move anything from anywhere as long as you can touch it with the mouse at all.

I do not believe I am using Wayland anywhere currently; I get /usr/share/xsessions/plasma5 returned when I query the DESKTOP_SESSION environment variable, and XDG_SESSION_TYPE returns 'x11'.

I made a little screen-capture video thingy of the duplicated error using the GTK version of Tomboy-ng on my test rig; the goal here is to show you what I did, as well as how basic (not huge, complex, anything) the note is.

Same test, test rig, KDE, Tumbleweed, GTK version of -ng, etc., but this time I loaded it with strace (strace -ttt -ff -s 499 -e file tomboy-ng) and then started capturing when I started resizing things.  I am not sure if this is useful, but here you go.  All the 'Peek !!!!' lines show up doing any actual resizing, then we see a SIGSEGV and that is about the end of it.  Perhaps limiting strace to just file operations is a mistake, but it's what I know best.
20200103-tomboy-ng-crash.txt

Yeah, strace is my friend ! Some very useful info there.  On the assumption that things happening just before a crash (and the crash is an unhandled InOutError) are related to the crash ...
Down at #1627, "TKMemo.Destroy with LCLRefCount>0. Hint:
That means -ng was trying to close a note window. But clearly not on your instructions.  So, up a bit we are playing with a temp file I create when rewriting a note to disk when its being resized. Thats about remembering the size if you reopen it later. And is only called as the NoteWindow closes. So, a decision that something was wrong was taken before then.
So, further up, all I see is attempts to open various theme icons. I am wondering if -ng has detected something it does not like, has attempted to open a message window to tell you but cannot find the icons the OS directs it to use for that sort of dialog box.
Anyway, the problems seems to be strictly related to your particular config. I have been testing on a Gnome desktop, thats probably why I cannot duplicate your results.
Just so I can get as close as possible to what you are doing, did you install from the standard Leap 15.1 iso file that installs a Gnome (and Wayland) system and then add the necessary KDE packages ?  Or did you install from a OpenSuse KDE 'spin' ?   Or a 'net install' ?
(Wayland only works with Gnome and barely works there...)
I am going to open a new thread on the libqt5pas issue, these two issue are both important and quite different.

I built my box from the install ISO (USB) and specified online sources when prompted so it basically did auto-updates at install time (vs. doing more updates after the install is done), not that I think that part matters.  If you did a network-based install (smaller ISO) that should be fine.
I also chose KDE during the installation (it's a prompt on one of the screens, Desktop with KDE vs. Desktop with Gnome vs. Server vs. other options).
If you want strace without the "file" filter I can send that along too, just a lot more stuff.  I'm open to other troubleshooting options too.
Thanks for all your help with this.

In case it helps, here is a screenshot of what popped up in Lazarus as I was doing my resize-induced crash; test rig, so Tumbleweed, from the Git repo so the latest code, etc.  P.S.  Setting it up was super-easy so apparently your instructions are great.  I'll post a script to do the openSUSE-side setup so you can use them if you'd like to duplicate with Lazarus there easily.

I can get whatever you want from Lazarus at this point, just wasn't sure what would be most helpful.

Sigh, thats just what I was hoping to not see.  This problem would be heaps easier if it appears in my (pascal) code.  Still, its possible we can trace the problem to being caused by my code, just showing up there.  I am currently building a Leap15.1 Plasma, hope that finds a smoking gun.
You can step through that asm code line by line and may eventually end up in Pascal space but it is usually quite difficult.  Buttons to the right of the red square 'stop' icon.

OK, at last I have been able to replicate both problems -

The Qt5 issue where it crashes if no windows open.
The KDE issue that crashes if you shake the border of a note window.
Interesting that neither show up in OpenSuse 15.1 using Gnome.
Davo

This is looking like some problem !
Generally, if I grab a corner (not edge ?) of a tomboy-ng window, and shake quite violently, after a few seconds, I will trigger something bad. More often than not, crash the display manager because I end up logged off.  Not just a note window, I can do it with the settings or search window. And, wait for it, I can trigger the crash with a totally different application.
Hmm....

For what it's worth, I concur that the side edge (right side, to be specific) does not cause the crash, but the bottom edge does, so maybe it is just an issue with resizing up and down, thus the corners work, as does the bottom.
What applications, in what way, also caused this?  I have tried a couple (Kate, Pidgin), but no luck yet.  I presume you mean that shaking other applications causes Tomboy-ng to crash, not that it causes the other applications themselves to crash.

No, I can crash the other application, completely independent of tomboy-ng.
But its another application made in Lazarus, using the same GTK2 stack.  Just a demo app from own collection. Same process has no effect on any other system I try it on. Very interesting ....

OK, I think I have determined that the GTK crash happens when the height is reduced to a small number. I set a constraint on minimum height and width and I don't seem to be able to crash it anymore.
While not a solution, it might be a hint as to where the problem does lie.
Dajoker, you can try it your self. From within the IDE, open the Editbox unit, Click Project-ProjectInspector->editbox
Then, click the 6th button from the left, top row of the IDE button bar "toggle form/unit view F12" (or press F12).  That will set focus on the form, now, to the left, you should see the Object Inspector, it has a list of the objects on the form, select the top entry so it displays the form itself "EditBoxForm : TEditBoxForm" (that means we are looking at an object called EditBoxForm that is of type TEditBoxForm).
Now, in the middle part of the ObjectInspector, we have four tabs, left most one, "properties" being the properties of EditBoxForm. Now, below the tabs, you may need to scroll, is a setting called "constraints", expand it down and set both MinHeigth and MinWidth to 200.  Re-compile.
Now, a user cannot reduce the size to less than 200x200. And it no longer crashes.
Incidently, I see this same crash on the Gnome version of openSuse, earlier I said both crashes are unique to KDE openSues.

Thanks for the instructions.
Even with the 200x200 minimum size constraint I saw the error pop up, though I had added content to the note sufficient to cause the vertical scroll bar to show up.  At first, without enough testing to be conclusive, I didn't see the crash after adding the constraint, so I added a dozen lines of [enter] and then tried again and caused it immediately.  Coincidence?  More related to the fact I made edits at all vs. made them to cause the scrollbar?  Perhaps.
Thinking without actually testing, is it possible the writes are happening separately to the file for content (actual text) vs. metadata (note size)?  Are all writes to the .note files done via the same mechanism, at the same time, or are things like note size written differently than actual content, maybe causing a conflict since, ultimately, the same file is being updated?

I am pretty convienced its a a problem within Lazarus's GTK2 loop. Not happening (but possibly cause by) my code.   Nasty job to track down ....

OK, I can demonstrate this problem, only on openSuse KDE with nothing more than two buttons and a Memo on a form.  You do have to vigoursly slam the window bottom right corner up beyond its top and down again many times but yep, you can crash something doing that.
I have not been able to produce any instability just using it as intended.
So, at present, this sounds like a hard problem, KDE will say its LCL, LCL will point out it only appears KDE on openSuse. openSuse will probably ask why I need to slam the corned up and down......
So, for immediate purposes, I will let it sit, will definitely need an answer sooner or later but I do to, somewhat urgently, get a new release out due to the problem with Notebooks.

Again, this release does not seem to exhibit this problem when used in a normal manner. At least on my system.  Feel free to reopen if you have more to add.

Hello i still get the same error and i have kde neon
KDE Neon User - 5.24
I have 2 computers with kde neon and it gives me the same error on both
It's very annoying since I have a lot of notes.
How can I help you and send you logs or debugging information?

hi bugcoder, thanks for the report. This thread covers a few issues and is quite old so maybe I need a few specific details please ?

which version of tomboy are you using ?  Is it from you distro repository, the PPA or direct from here ?
Is it the Qt5 version ?  Have you tried the GTk2 version ?
Exactly what error do you see ?
What happens before the error, do you think its the rapid, repeated resizing of a particular window ?  Which window ?

Qt5 (only) seemed to have an issue that was fixed by setting a minimum size of the note window two years ago so I expect its not exactly the same thing. Or hope so anyway ....
Davo

I use qt5 version in KDE Neon User - 5.24
Now i change to gtk2 version and its works.

We seem to have this under control. All my testing on KDE says no problems in version 0.35
So, I'll close
Thanks for the report.
Davo


index out of range

Traceback (most recent call last):
File "train.py", line 294, in
args.warm_start, args.n_gpus, args.local_rank, args.group_name, hparams)
File "train.py", line 211, in train
for i, batch in enumerate(train_loader):
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 345, in next
data = self._next_data()
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 856, in _next_data
return self._process_data(data)
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 881, in _process_data
data.reraise()
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/_utils.py", line 394, in reraise
raise self.exc_type(msg)
IndexError: Caught IndexError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 178, in _worker_loop
data = fetcher.fetch(index)
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/zero/anaconda3/envs/tacotron/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/zero/TTS/Cross-Lingual-Voice-Cloning/data_utils.py", line 62, in getitem
return self.get_mel_text_pair(self.audiopaths_and_text[index])
File "/home/zero/TTS/Cross-Lingual-Voice-Cloning/data_utils.py", line 35, in get_mel_text_pair
mel = self.get_mel(audiopath)
File "/home/zero/TTS/Cross-Lingual-Voice-Cloning/data_utils.py", line 43, in get_mel
sampling_rate, self.stft.sampling_rate))
IndexError: tuple index out of range
i got the error: index out of range and i can't find the reason
and the hparams:
    use_saved_learning_rate=False,
    learning_rate=1e-3,
    weight_decay=1e-5,
    grad_clip_thresh=1.0,
    batch_size=10,
    mask_padding=True,  # set model's padded outputs to padded values

    ###############################
    # Speaker and Lang Embeddings #
    ###############################
    speaker_embedding_dim = 64,
    lang_embedding_dim = 3,
    n_langs = 2,
    n_speakers = 9,

    ###############################
    ## Speaker Classifier Params ##
    ###############################
    hidden_sc_dim=256,

    ##############################
    ## Residual Encoder Params  ##
    ##############################
    residual_encoding_dim = 32,          #16 for q(z_l|X) and 16 for q(z_o|X)
    dim_yo = 6,                          #(==n_speakers) dim(y_{o})
    dim_yl = 10,                         #K
    # mcn = 8                              #n for monte carlo sampling of q(z_l|X)and q(z_o|X)
    mcn = 6                              #n for monte carlo sampling of q(z_l|X)and q(z_o|X)

ok, I solved it. It caused by different samplling rate

okay.


how to get the subsuming mutants

Sorry, I did not completely understand your question. I can definitely try to help you out if you can please elaborate.
Are you referring to how to manually identify which mutants are subsuming out of the entire mutant set?
OR
Are you asking for the location where can you get the subsuming mutants in this specific repo?
Please let me know.


Revert "Merge dev to main for 6.13.0 release"

Reverts newrelic/newrelic-ruby-agent#413

Thanks for doing this. Just trying to preserve the commit history here by reverting and re-merging without squashing.


Firebase: Migrate to using the Kotlin extensions (KTX) APIs in the main modules

https://firebase.google.com/docs/android/kotlin-migration
Requirements: Firebase BoM 32.5.0, but let's update to the latest 32.6.0.
And remove warnings:

'logEvent(String, ParametersBuilder.() -> Unit): Unit' is deprecated. Migrate to use the KTX API from the main module: https://firebase.google.com/docs/android/kotlin-migration.
'param(String, String): Unit' is deprecated. Migrate to use the KTX API from the main module: https://firebase.google.com/docs/android/kotlin-migration.

See https://github.com/android/nowinandroid/pull/1006 for these new permissions and "Ad Services" property.

@dturner this PR is ready to be reviewed 🙇


backport: fs wrapper

This backports the fs wrapper facility from Bitcoin Core that enables us to do a number of future enhancements, like allowing windows datadir paths in different codepages and allowing a means to ease a switch between boost::filesystem and std::filesystem (with c++17).
Backported commits:

19e36bbe
2a5f5747
75594bd7

Manually executed:

replacing all boost/filesystem header includes with fs.h
replacing all boost::filesystem:: calls with fs::
removing file-local fs namespace aliases
additional implementation of fsbridge::fopen in bitcoin-tx.cpp and test/script_tests.cpp

This is split off from #3229 and a prerequisite for that.

Concept ACK, I like what I see on a skim. It'll take some time to get to this in detail, but I'm +1 so far.

All tests pass on x86-64 Linux, so I'll review the commits next.


Added isomorphism between callback and metacallback categories

After using parallel and sequential function I admitted common transforms of callbacks from (err, data) to (err || data).
I propose to create category "metacallback" for this functions. And functions that allows to convert between common callbacks and these special callbacks.
P.S. The best option, as see my eyes, to use this kind of functions everywhere to save ease of using metasync library.

Well, actually we can solve this issue without category theory. There should be no (err || data) callbacks and I have though we had refactored all of them. Node's contract of asynchronous functions specifies that callbacks have the signature (err, ...args), period.

Just to create full picture:
Callbacks with one argument is not nodejs standard but working with one value is easier when it is needed to save result without knowledge about asynchronous function success or fail (one value can be assigned easier than two).
And if we assume that err always is instanceof Error and data is never instanceof Error, can be used checking with instance and Functor like this:
https://github.com/HowProgrammingWorks/Functor/pull/6/files

Given this PR has been open for quite a long time and there hasn't been any progress on this, nor even enough evidence that this change is useful, I'll go ahead and close it.
@tshemsedinov @DzyubSpirit feel free to reopen the PR if you think it's appropriate.


ErrorHandler improvements + new OptionNameMode.NONE

Made it easier to exit with a specific exit code from a registered error handler function
Made it possible to have a less specific error handler handle an exception that a more specific one did not handle
Expanded documentation related to error handlers
Added a new OptionNameMode.NONE to allow Option/Flag/etc params to be defined with only a short option string, if desired

Codecov Report

Merging #38 (97d697d) into main (fa88e03) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main      #38   +/-   ##
=======================================
  Coverage   99.98%   99.98%
=======================================
  Files          47       47
  Lines        6117     6139   +22
  Branches     1264     1269    +5
=======================================
+ Hits         6116     6138   +22
  Misses          1        1

Flag
Coverage Δ

unittests
99.98% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

lib/cli_command_parser/commands.py
100.00% <ø> (ø)

lib/cli_command_parser/inputs/numeric.py
100.00% <ø> (ø)

lib/cli_command_parser/__init__.py
100.00% <100.00%> (ø)

lib/cli_command_parser/command_parameters.py
100.00% <100.00%> (ø)

lib/cli_command_parser/config.py
100.00% <100.00%> (ø)

lib/cli_command_parser/error_handling.py
100.00% <100.00%> (ø)

lib/cli_command_parser/exceptions.py
100.00% <100.00%> (ø)

lib/cli_command_parser/formatting/params.py
100.00% <100.00%> (ø)

lib/cli_command_parser/parameters/base.py
100.00% <100.00%> (ø)

...ib/cli_command_parser/parameters/option_strings.py
100.00% <100.00%> (ø)


Make the cookie storage optional

This makes three crates optional dependencies.
While this not a breaking change, this should be released as/with 0.10.0 as rustls users use  no-default-features.

This would be great, I just came here seeing if the cookie stuff was behind a feature flag due to how many additional dependencies it pulls down.

As mentioned in #614, this seems like a good idea! Either this or #554 could be rebased and then merged.

Fixed in #640


Crash on link click

When the link is touched, the game is opened normally (by the intent-filter), but we receive an error when calling 'Branch.Init' method:
07-03 17:12:13.878: I/Unity(32438): AndroidJavaException: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Intent android.app.Activity.getIntent()' on a null object reference
07-03 17:12:13.878: I/Unity(32438):   at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at UnityEngine.AndroidJNISafe.CallStaticVoidMethod (IntPtr clazz, IntPtr methodID, UnityEngine.jvalue[] args) [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at UnityEngine.AndroidJavaObject._CallStatic (System.String methodName, System.Object[] args) [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at UnityEngine.AndroidJavaObject.CallStatic (System.String methodName, System.Object[] args) [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at BranchAndroidWrapper.initSessionWithCallback (System.String callbackId) [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at Branch._initSessionWithCallback (System.String callbackId) [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at Branch.initSession (.BranchCallbackWithParams callback) [0x00000] in <filename unknown>:0
07-03 17:12:13.878: I/Unity(32438):   at Main.Start () [0x00000] in <filename unknown>:

However opening the game without the link (no parameters), gives no problem and Branch is correctly initiated. As I showed you last time, the Init code is just this:
 try
            {
                Branch.initSession(
                    (parameters, error) =>
                    {
                        //Show error or correct initialization.
                        if (error != null)
                        {
                            Debug.LogError("Branch Error: " + error);
                        }
                        else if (parameters.Count > 0)
                        {
                            Debug.LogWarning("Branch initialization completed with the following parameters: " + parameters.Keys);
                        }

                        //Check if branch parameters (SHOULD BE CALLED HERE BECAUSE THIS CALLBACK IS EXECUTED IN THE UI THREAD).
                        Dictionary<string, object> lastParameters = Branch.getLatestReferringParams();
                        if (lastParameters != null && lastParameters.Count > 0)
                        {
                            //Debug parameters.
                            Debug.LogWarning("Received " + lastParameters.Count + " Branch parameters.");
                            foreach (object value in lastParameters.Values)
                            {
                                Debug.Log("    " + value.ToString());
                            }
                            //Pass to manager.
                            invitationAndMessagesManager.handleMobileInvitation(lastParameters);
                        }
                    });
            }
            catch (Exception e)
            {
                Debug.LogError("Error starting Branch!");
                Debug.LogError(e.Message);
            }

And the sent parameters in the URL should be these:
Dictionary<string, object> parameters = new Dictionary<string, object>
{
{"fullname", fullname},
{"mode", "ROOM_INVITATION"},
{"roomId", roomId},
{"timestamp", timestamp},
{"msgId", "" + UnityEngine.Random.Range(0, int.MaxValue)}
};
Maybe is there something more that we have to do when initiating with URL parameters?

Hmm, it's hard to tell immediately, but it seems that perhaps the Unity Activity is null. Which Activity does your intent filter point to?

It's pointing to default activity.

Hi Austin, we waiting for this issue to be solved.
When do you think this can be solved?

I'm really sorry on the delay @jemchicomac. We heard a report that it should be resolved tomorrow. I'll let you know as soon as I hear back for sure.

Hi guys, this should be fixed by #3. Could you please review with the new version, and reopen if this is still an issue?


Add Tesseract 5 & update Tessdata to 4.1.0

Description of changes

Added Tesseract 5 as tesseract5
Updated Tessdata v4 to 4.1.0

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Should I add myself as a maintainer for tesseract5?

Should I add myself as a maintainer for tesseract5?

If you are interested in this package then it probably makes sense. cc @viric @erikarvstedt if they want to still maintain Tesseract 5.

Should this be noted in the release notes?

Not necessary. It is not a BC break or significant package.

Would also be nice if you could follow the contribution guidelines for commit messages – you should have two commits:

tesseract4.tessdata: 4.0.0 → 4.1.0
tesseract5: init at 5.1.0

Changelogs look okay:

https://github.com/tesseract-ocr/tessdata/releases/tag/4.1.0
https://github.com/tesseract-ocr/tesseract/releases

There are many CMake improvements but according to 5.0.1, distros should stay with autotools (for now).
We might want to add libarchive & libcurl dependencies.

Is it OK if I keep the original commit messages in the body of the squashed commit (i.e. modifying the title (iinital line) to be short)?

The commits aren’t completely separated in matter because git can’t do easy reorders.

I have retained the existing maintainers for now, will add myself and/or remove them if requested and/or later

You can re-order commits with interactive rebase (git rebase --interactive HEAD^^).

OK, I restructured it all. Set myself as the maintainer.

By the way, the fetch-language-hashes script doesn’t work, the regex is broken.

This fixes fetch-language-hashes.
Both v3 and v4.1 language data hashes should be reproducible via fetch-language-hashes.
We have two options:

Use the old base32 format for the v4.1 hashes
Use the new SRI format for v4.1 (like proposed in this PR), convert v3 to SRI, switch fetch-language-hashes to SRI.

@jtojnar, what do you prefer?

Either works for me, we just should not have the hash type specified in two different places – we should just use hash attribute if we decide to go with SRI-style.

@schuelermine, here's a fixed version of this PR's branch.
You can fetch it via git fetch https://github.com/erikarvstedt/nixpkgs add/tesseract5-ea-2:add/tesseract5-ea-2 and then force-push it to this PR.

@erikarvstedt Did so

@jtojnar recommended to move the test into a separate derivation to minimize the build-time closure.
Here's the fixup.
git fetch https://github.com/erikarvstedt/nixpkgs add/tesseract5-ea-3:add/tesseract5-ea-3

@erikarvstedt I added your suggested change. Unfortunately you don’t show up as the author, I don’t know how to do that.

@schuelermine, yes, something went wrong here. Try fetching and force-pushing the branch to this PR, exactly as you did for my first fixup branch.


[External], [Namespace] and [Name] do not work together

When using  [External], [Namespace] and [Name] together on a class the namespace is simply omitted in the compiled JavaScript code when calling a function from that class.
Steps To Reproduce
https://deck.net/299c0d04622c3826267127d309ae0cbe

@preli, welcome to Bridge.NET!
[Name] attribute has a priority over [Namespace], this is as designed.
You can add namespace part right into [Name]:
[External]
[Name("my.classname")]
public static class DummyClass
{
    public static int getNumber()
    {
        return 3;
    }
}


FFS-985: Update copy on entry page

Ticket
Resolves FFS-985
Changes
Updated the copy on the entry screen.
Context for reviewers
This is my first PR for this repo so please let me know of any conventions that should be followed.
Testing

Checkout jgasiorek-ffs985 branch
docker compose up
Navigate to http://localhost:3000/cbv/entry

Screenshots

Looks good. Feel free to squash and merge!


Could not reach Fall Guys IP

Hello, the overlays says "Could not reach Fall Guys IP: <IP_ADDRESS>", "Could not reach Fall Guys IP: <IP_ADDRESS>", etc etc
If i open a cmd and ping that IP i can ping it.
Do you know what could be the error, i tried running the program even in admin mode.
Thank you

That's weird because all it's doing is opening a subprocess and calling ping from the command line to get this data. I've specifically designed this so you don't need to run in admin (there would be some benefits to running in admin mode actually, I could simplify the ping logic to not use a subprocess).
Anyway, can you open File Explorer, paste %APPDATA%\fgpe in to the address bar, and see if there is an error log in this directory. If so please attach it a comment here and I will take a look. Hopefully that will give us some clues.


Merge function pointer table struct with high level wrapper struct

-- Using VK_KHR_swapchain as an example:
I think it's pretty confusing to have both ash::extensions::khr::Swapchain and ash::vk::KhrSwapchainFn. Is there a good justification for why the wrapper functions shouldn't be directly defined on the struct that also holds the function pointers?
I originally alluded to this in this comment: https://github.com/ash-rs/ash/pull/734#issuecomment-2001024938.
The Device handle would be a bit awkwardly grouped with the function pointers, but overall it results in an easier to grok API, especially after the changes in #734.

I'm weakly in favor of this, since very few users will care about the *Fn structs, I've seen them cause confusion/impair discoverability in the wild, and I can't think of a good reason to want a *Fn struct that isn't also satisfied by a unified struct.
One case that might call for a raw function table struct is storing wrapped functions in the implementation of a layer, in which storing the handle is (usually?) going to be redundant to the passed-in handle -- but even there, having access to the ergonomic wrappers is more valuable than saving a few bytes.

https://github.com/ash-rs/ash/pull/894 unifies the module hierarchies. It does not unify the structs, but since they're now clearly documented and immediately adjacent, confusion from those should be at least lessened.

I hope the function pointer tables, and everything else in the vk module, remain available for those who just want to use the raw Vulkan API without any additional wrappers (e.g. Vulkano). I think in the past, someone proposed separating out the vk module into its own crate, containing only autogenerated code?

@Rua the proposed PR that will close this issue does exactly that: it moves the original types around to sit inside the same module, but otherwise keeps their original definition the same. You are still able to use the function pointer loaders without the Instance/Device wrappers.


hitting secrets too long when install using terraform.

resource "helm_release" "grafana-dashboard" {
name       = "postgres-grafana-dashboard"
repository = "https://cloudnative-pg.github.io/grafana-dashboards"
chart      = "cluster"
version    = "0.0.1"
}
Error: create: failed to create: Secret "sh.helm.release.v1.postgres-grafana-dashboard.v1" is invalid: data: Too long: must have at most 1048576 bytes

We just created a release 0.0.2. Do you mind giving that a try?


Migrate from claim to claims

The former one is unfortunately unmaintained. claims is a recent fork with an improved bus factor 😅

@LukeMathWalker friendly ping in case you missed the notification :)

Thanks!


Debugging help...Not really an issue...

Hello, I installed this on my M5Stack and works nice, but not everything works, probably some things changed with Spotify API. I want to develop it more but I can't figure out how to debugging.
I'm not an advanced developer when it comes to IOT, I'm coming from mostly web environments.
I can't figure out how to enable debugging, all I see is garbled stuff in the serial monitor.
Is there something I'm missing?
Thank you.

Nevermind, I found it myself, for some reason it was defaulted to 9600 but in reality it needs to be 115200.
I set it in platformio.ini:
monitor_speed = 115200
All works good

Great, thank you for your interest in this little thingy. Wish you a lot of fun with IOT!


CSP MISSING

Pankaj  here I found Vulnerability on your domain
https://asrg.io/
Vulnerability name:CSP: Wildcard Directive
Description:
Content Security Policy is an effective measure to protect your site from XSS attacks.
By whitelisting sources of approved content, you can prevent the browser from loading malicious assets.
The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined:
script-src, script-src-elem, script-src-attr, style-src, style-src-elem, style-src-attr, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, prefetch-src, form-action
The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.
Steps to reproduce:
1)Go to : https://securityheaders.com/
2) Enter host name https://asrg.io/
3)You will see CSP MISSING
Solution:
Ensure that your web server, application server, load balancer, etc. is properly configured to set the Content-Security-Policy header

HI need SFTP access to look at permissions

@usman-asrg Please add the comments and picture here.

@heldyboy  By going on to the following link:
https://securityheaders.com/
You can enter the website:
https://asrg.io/
For the results you can check the attached picture


fix: Update dependencies

Context
Getting security vulnerability warning from Github

:tada: This PR is included in version 1.1.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[SPARK-33899][SQL][3.1] Fix assert failure in v1 SHOW TABLES/VIEWS on spark_catalog

What changes were proposed in this pull request?
Remove assert(ns.nonEmpty) in ResolveSessionCatalog for:

SHOW TABLES
SHOW TABLE EXTENDED
SHOW VIEWS

Why are the changes needed?
Spark SQL shouldn't fail with internal assert failures even for invalid user inputs. For instance:
spark-sql> show tables in spark_catalog;
20/12/24 11:19:46 ERROR SparkSQLDriver: Failed in [show tables in spark_catalog]
java.lang.AssertionError: assertion failed
	at scala.Predef$.assert(Predef.scala:208)
	at org.apache.spark.sql.catalyst.analysis.ResolveSessionCatalog$$anonfun$apply$1.applyOrElse(ResolveSessionCatalog.scala:366)
	at org.apache.spark.sql.catalyst.analysis.ResolveSessionCatalog$$anonfun$apply$1.applyOrElse(ResolveSessionCatalog.scala:49)
	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.$anonfun$resolveOperatorsUp$3(AnalysisHelper.scala:90)
	at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:73)

Does this PR introduce any user-facing change?
Yes. After the changes, for the example above:
spark-sql> show tables in spark_catalog;
Error in query: multi-part identifier cannot be empty.

How was this patch tested?
Added new UT to DDLSuite:
$ build/sbt -Phive-2.3 -Phive-thriftserver "test:testOnly *CatalogedDDLSuite"

Test build #133452 has started for PR 30950 at commit 5d43b3f.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/38041/

Test build #133452 has finished for PR 30950 at commit 5d43b3f.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/133452/

thanks, merging to 3.1!


Reduce memory usage in getVector

There are some obvious optimizations we can make to getVector to reduce the amount of memory allocated in the JS/V8 heap which should help performance in large rendering jobs by avoiding GC churn. And it is becoming clear that memory usage is overall higher on Windows so finding ways to keep memory down will help windows performance in particular.
Here is a shortlist of optimization ideas:

Fix vtile.isSolid key to work

Not sure what was wrong with the key returned from vtile.isSolid, but the hack to workaround is expensive for large vtile buffers. We should replace https://github.com/mapbox/tilelive-bridge/blob/d56e0bed2d421e3a4d52bb479fde35d63e08a3f7/index.js#L187-L193 with something that does not require a crypto call on the entire buffer.

Avoid passing uncompressed buffer from C++ to JS

Instead of calling vtile.getData() and passing that to zlib.gzip we could save memory and perform faster if we implemented vtile.gzip so that the uncompressed vtile buffer never passes into JS land: https://github.com/mapbox/tilelive-bridge/blob/d56e0bed2d421e3a4d52bb479fde35d63e08a3f7/index.js#L172-L173. And we should make vtile.gzip async for best speed.

Call vtile.clear()

Before returning here we could benchmark calling vtile.clear(). This would drop all the internal memory allocated for the vtile buffer immediately instead of waiting for GC to clean up the object. This might help reduce crashes from OOM on windows which are common because the V8 GC does not currently get any hints from node-mapnik about vtile-allocated memory (like it does for mapnik.Images)
/cc @BergWerkGIS

:+1: let me know if you need anything here.
It would be very convenient to have vtile.getData() take an option to get things back gzipped and vtile.setData() to consume the buffer intelligently (gunzipping if necessary).

@yhahn any reason to support pure zlib from your perspective or only gzip? One specific reason I ask is that I've got gzip auto-detection working but there is a bug I'm still trying to flush out around zlib detection (https://github.com/mapbox/mapnik-vector-tile/blob/master/test/vector_tile.cpp#L42 | https://github.com/mapbox/mapnik-vector-tile/blob/master/src/vector_tile_compression.hpp)

Closing. All of the above ideas are now implemented and landed in https://github.com/mapbox/tilelive-bridge/commit/d89ffd578353519870a0e064f9a9543fe85a336f and the v1.6.0 release.


An extra folder displays after selecting 'Enabled overwrite' to retry one conflict blob

Storage Explorer Version: 1.14.0-dev
Build: 20200520.4
Branch: master
Platform/OS: Windows 10/ Linux Ubuntu 16.04/ macOS Mojave
Architecture: ia32/x64
Regression From: Previous release (1.13.0)
Steps to reproduce:

Expand one Non-ADLS Gen2 storage account -> Blob Containers.
Copy one blob to another blob container -> Copy the blob to same destination again.
Select 'Do not paste' in the Conflict dialog -> Apply.
Click 'Retry...' in activity log -> Select 'Enable overwrite' in Retry AzCopy dialog -> Click 'Retry Selected'.
Check the result.

Expect Experience:

Succeed overwrite the blob.
No folder displays.

Actual Experience:
An extra folder displays.

More Info:
This issue doesn't reproduce for one ADLS Gen2 blob container.

This issue is fixed on build master/20200522.4. So we close it.


server does not support SMTP AUTH type: PLAIN

mail2go  -s smtp.office365.com -p 587 -l tls  -u<EMAIL_ADDRESS>-w xxxxxxx -f xxx@xxxx -t<EMAIL_ADDRESS>-h 'Test Mail2Go Subject' -b 'This is a body!'
Error sending email: dial failed: server does not support SMTP AUTH type: PLAIN
can I use other AUTH type ?

Hi,
Not at the moment but I could definitely add that in a future release.
I see that it's Office so it's gonna be the LOGIN auth type.


Add ability to enable/disable inline validation on a per-field basis

Right now this behaviour is controlled in settings, but I might want to be able to make a field behave differently than others. This can be achieved by using attributes and checking them in the property drawer.

Implemented in #12. Will be included in the next release.

Included in 1.2.0.


Question: Runtime config

Just wondering if there will be any push to use runtime configs in future releases

Hi @ryuash , thanks for the question!
I am not sure which runtime configs you are referring to, right now we only have build-time configs
https://github.com/forbole/big-dipper-2.0-cosmos/blob/main/Dockerfile#L57
we are open to change

Whoops I mean runtime variables like https://dev.to/matt_catalfamo/runtime-configurations-with-react-22dl.
This was something I tried to tackle in v1 but never got a chance to :/ I don't know if this might even be needed in v2 but it's a great way to quickly change variables without rebuilding.
I recently had to check something and remembered I could creep on this repo for reference; loving v2 a lot btw!! 🤩🤩🤩

I had thought about this before, and I think we can easy achieve this.
I think some of the config can be read at server start. and we don't need to rebuild the app/docker image.
We can implement this after completed other priorities.

Awesome! Can't want to see.
Closing


ARM Support

I would like to know if it's possible to run this on ARM/ARM64 at all.
I assume there is no existing build with this architecture support.
Would it be possible to share some details on how to build should I wish to try out building my own arm version container?
Thanks in advance. ;-)

I'm not super familiar with how to build for different platforms with Docker unfortunately. The underlying node images used for this project do get published with arm support, so in theory it might work just by building an ARM version of the container using the checked in Dockerfile. I don't know how to do that on a desktop though :)

I think I should be fine with just the Dockerfile and running the build on a arm device.
I will give it a bash and let you know how it goes.
thanks
Kevin

From: Neil Enns @.>
Sent: 18 August 2022 15:03
To: neilenns/node-deepstackai-trigger @.>
Cc: Kevin Crous @.>; Author @.>
Subject: Re: [neilenns/node-deepstackai-trigger] ARM Support (Issue #463)
I'm not super familiar with how to build for different platforms with Docker unfortunately. The underlying node images used for this project do get published with arm support, so in theory it might work just by building an ARM version of the container using the checked in Dockerfile. I don't know how to do that on a desktop though :)
—
Reply to this email directly, view it on GitHubhttps://github.com/neilenns/node-deepstackai-trigger/issues/463#issuecomment-1219467748, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADB3EOKEMHSMKQHJ2M2YHADVZYYDTANCNFSM564HL4WQ.
You are receiving this because you authored the thread.Message ID: @.***>


Hving problems in cmd

I have problems in cmd like when I write manim -m ok.py  TestScene -pl  i do not get my desired products
and ultimately i do not get any of the animations

I advice you read the docs again, because authors have changed things around. For example, the main command now is manimgl. I hope this could be helpfull.

'manimgl' is not recognized as an internal or external command,
operable program or batch file.

Please install manim as the doc says.
If you are using the community version, please open an issue there instead of here.


Functionality is pretty complete now.

in session.go even though the server tells us the amount of connections when connecting, there is no way to keep track of this number throughout the lifetime of our connection.
added new handlers for missing functions, including handling of websocket errors in "userspace".
Reconnection logic is pretty complicated, I tried different approaches but still not happy. Works well enough for now...

Looks good, thanks


2.2.0

Bumping version 2.2.0
That comes with:

Preserve block position #347
ChatGPT rewrote it #349
Using swc instead of ts-jest #348
Update Node.js to v16.19.1 #341
Update dependency husky to v8.0.3 #339
adding composite action to use codeowners-generator in a workflow #337
2.1.5 #346
Preserve block position (#347) #343
adding composite action to use codeowners-generator in a workflow (#337) #335

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
258

Relevant Lines:
258

💛  - Coveralls


fix https://github.com/jamesmontemagno/InAppBillingPlugin/issues/111

We faced with the same behavior.
A user sends app to background, when payment popup is shown.
I've already investigated a little. So, I think, it can be help to avoid NULL-result all time after canceling payment.
https://github.com/jamesmontemagno/InAppBillingPlugin/issues/111

@jamesmontemagno  is it already included in any pre release version or planned?

in pre


Tags are not being exported

When I try to run a export on a "production" version the tags are not being exported, it however works normally locally

I was able to reproduce the issue on Local Dev. Here's a screenshot attached showing the behavior on both Production and Local Dev (Main branch).
Please let me know if you have any questions.
Thank you.
PRD

Local Dev

Thanks this is a seperate rendering issue, one of the issues that Brian had was the tag and tag code CSV was not uploaded. I have now updated the code to enable upload in 2.4.0 and test it.


Visibility of dynamic point features is inconsistent on Android

https://gfycat.com/SourSadAndeancat
This produces no obviously relevant error output and can't be reproduced in the desktop demo.

SourSadAndeancat

Some more info here, it seems tiles are not updated for this client datasource, if you move to other zoom levels you start seeing these added points. Still debugging of whats the possible cause of this on "android" platform code specifically!


MDRButton(...): React component classes must extend React.Component.

import React from 'react';
import { Button } from 'material-design-react';

class App extends React.Component {
  	render () {
    	return (
    		<div id="root">
    			<Button colored ripple>plop</Button>
		</div>
		);
  	}
}

export default App;

And i get this in my chrome console
MDRButton(...): React component classes must extend React.Component.

Hi @parweb,
This library is not stable at the moment. Also the current version was built for React v0.13, that may cause the error.
I can recommend tleunen/react-mdl for a React wrapper around Material Design Light or react-toolbox/react-toolbox for a configurable React Material Design implementation.
I may start to maintain this project once Material Design v2 is out.
Thanks for getting in touch,
Nik


[Bindgen Tool] Visit APIs with new language features

Description:
Visit the APIs with new language features available in Swan Lake Preview 1 and improve the following.

Remove casting with dependently-typed functions
Manage Java objects using distinct types

Steps to reproduce:
Affected Versions:
Ballerina (Swan Lake) Preview 1
OS, DB, other environment details and versions:
Related Issues (optional):

Suggested Labels (optional):

Suggested Assignees (optional):

Related Issue: https://github.com/ballerina-platform/ballerina-lang/issues/27830


Remove OSx+Mono skips related to aspnet/External#50

CoreFx worked around the underlying issue
add PlatformNormalizer.NormalizeContent() call in previously-disabled test

/cc @NTaylorMullen since you also worked around this ex-bug.

:shipit:

8189d85


Redo a request.

Hello, right now I have a base wrapper method to handle all my requests.
func requestObj(ReqMethod: HTTPVerb, url: Route, params: Dictionary<String, AnyObject>?, completionHandler: (response: Response?, error: NSError?) -> ())
{
    do {
        let opt = try HTTP.New(...)

        opt.start { response in
            if let err = response.error {
                completionHandler(response: nil, error: response.error)
            }
            switch(response.statusCode!) {
            case 400:
                print("Token expired.. getting a new one")
                self.renewToken(completionHandler: { response in

                })
                break
            default:
                    completionHandler(response: response, error: nil)
                break
            }
        }
    }  catch let error {
        print("\(error)")
    }
}

But is there a way to redo a specific request again if it fails because I get a statuscode that I did not expect? like for example I get a 400 I want to do another request to get a new token and then redo the request that I was planning to do to get my content from the API.

No, there currently isn't a way to automatically redo requests by status code. Based on the code above, I would recommend passing the parameters to the requestObj again once the renewToken finishes:
self.renewToken(completionHandler: { response in
    self.requestObj(ReqMethod, url: url, params: params, completionHandler: completionHandler)
})

Should redo the same request as before, but now fall into the case with the renewed token.

Thanks for the reply man appreciate it. But if I do this, I would call it like this, the original method that called requestObj doesn't get the response does it?

The original method that called with the completionHandler should still get run. Since you are forwarding the completionHandler closure to the next method (same method, recursive call), the original caller should be the one that gets the response, since it is the actual "implementation" of the completionHandler closure. High order functions and recursion and be super handy :smile:.

Worked perfectly! Thanks a lot!!!!! :D


npm doesn't know about 0.3.13

I need the fix from #62 but it's not released.

@mrclay did you figure out how to do it? I need 0.3.13 too


Kill operation on node deregistration

Both validators and miners should stop operating whenever the node gets deregistered. The previous text-prompting repo handles that at the validator side, we should ensure this behaviour is enabled by default on the new repo, both for miners and validators

Link to specific if in previous repo:
https://github.com/opentensor/text-prompting/blob/b126ac10e78844715df20f94a19e0515fcdd89b9/neurons/validators/validator.py#L105


DuplicateRelativeFileException: More than one file was found with OS independent path

When trying to build my project with the dependency:

com.google.android.libraries.tv:companionlibrary:0.2

I get the following error:

Error:com.android.builder.merge.DuplicateRelativeFileException: More than one file was found with OS independent path 'third_party/java_src/error_prone/project/annotations/Annotations.gwt.xml'

I looks like this file is inside the com.google.ads.interactivemedia.v3:interactivemedia library that the companionlibrary depends on.
I tried to exclude it:
implementation('com.google.android.libraries.tv:companionlibrary:0.2') {
        exclude group: 'com.google.android.gms', module: 'play-services-ads'
        exclude group: 'com.google.ads.interactivemedia.v3', module: 'interactivemedia'
    }

But then it fails in onCreateSession with:
java.lang.Class<com.google.android.media.tv.companionlibrary.AdController>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/ads/interactivemedia/v3/api/AdErrorEvent$AdErrorListener;

What other imports are you using in your project? Is there a reason you're using implementation over compile? What happens if you use version 0.1?

I am using:
`   implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
implementation 'com.google.android.libraries.tv:companionlibrary:0.2'

implementation 'com.google.android.exoplayer:exoplayer:r2.5.1'
//implementation project(':exoplayer-lib')
//implementation project(':exoplayer-library')

implementation 'org.jetbrains.anko:anko-sdk15:0.10.1'
implementation 'com.github.bumptech.glide:glide:4.2.0'
implementation "com.github.bumptech.glide:okhttp3-integration:4.2.0"
implementation 'com.squareup.okhttp3:okhttp:3.9.0'
implementation "com.android.support:design:$supportLibVersion"
implementation "com.android.support:support-v4:$supportLibVersion"
implementation "com.android.support:recyclerview-v7:$supportLibVersion"
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation "com.google.android.gms:play-services-gcm:$playServicesVersion"

implementation 'android.arch.lifecycle:extensions:1.0.0'
implementation 'android.arch.lifecycle:reactivestreams:1.0.0'
annotationProcessor 'android.arch.lifecycle:compiler:1.0.0'

implementation 'io.reactivex.rxjava2:rxjava:2.1.2'
implementation 'io.reactivex.rxjava2:rxkotlin:2.1.0'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'`

I stopped using compile when Gradle introduced implementation and api:
https://docs.gradle.org/current/userguide/java_library_plugin.html
The 0.1 version has the same issue.
I have now copied the library module and removed the AdController and dependency on com.google.ads.interactivemedia.v3:interactivemedia. Now it works much better.

Looks like the lib is using a pretty old version of Google Play Services which may cause a conflict with the newer version. Perhaps there needs to be some dependency updates to the lib overall.

This is how I currently have the project included in a build.gradle:
// TV Input Framework
implementation('com.google.android.libraries.tv:companionlibrary:0.2') {
    exclude group: "com.google.ads.interactivemedia.v3"
    exclude group: "com.google.android.gms"
    exclude group: "com.android.support"
}

I do have more modernization on the way.

@Fleker My problem solved just by replacing jar files with their gradle versions.

In my app, I was adding the jar dependencies like this:
implementation files('libs/json-simple-1.1.1.jar')
But I realised that they were already added because of the following first line in dependencies:
implementation fileTree(include: ['*.jar'], dir: 'libs')
This line adds all the jars in lib folder to app dependency.
Hence after removing the extra dependency implementation files('libs/json-simple-1.1.1.jar')
it is working fine.

Anyone use this and got it working ? There seems to be a problem with this Repository.

hi guys i am having the same issue compiling it on android studio build gradle 3.1.0
and having the same error but ralphgabrielle solution did not owrk form me

I have change  playServicesVersion = '18.1.1' version from 12.0.0 to 18.1.1, it works.

So whats the final solution for this ?

Hi,
Only put the code in my gradle:
packagingOptions {         exclude 'error_prone/Annotations.gwt.xml'         exclude 'third_party/java_src/error_prone/project/annotations/Annotations.gwt.xml'         exclude 'third_party/java_src/error_prone/project/annotations/Google_internal.gwt.xml'         exclude 'jsr305_annotations/Jsr305_annotations.gwt.xml'     }

Adding @heitorri solution to build.gradle (Module: app) fixes the problem

I will open a pull request for this :D

This solve my problem
implementation('com.google.android.libraries.tv:companionlibrary:0.4.1') {
exclude group: "com.google.android.gms"
}