Network connection quality analyzer.
The application sends pinging requests to a selected host and tracks the following statistics:
- amount of requests sent, received and lost;
- requests time/latency/delay.
In the end it also does some analytics on the collected data.
There are two modes of pinging the host:
- via system
ping
utility and ICMP requests; - via HTTP HEAD requests.
Runs system ping
utility and parses the output. Has two obvious disadvantages:
- not every system might allow applications to launch CLI tools such as
ping
(orping
might not be even available in the system); - parsing the
ping
output is not reliable (different format on different platforms, multi-language).
Simple HTTP HEAD requests. Far less reliable/precise than ping in estimating latency values. At the same time, there is no need to rely on external CLI tool (and parse its output in different languages), and sending HTTP requests will work on any platform.
The application is built with Qt and so it is cross-platform.
Platform | Status |
---|---|
Mac OS | works fine, pre-built binary available |
Windows | works fine, pre-built binary available |
GNU/Linux | has certain issues, not distributing pre-built binary |
iOS | not checked |
Android | not checked |
? | ? |
SHA256:
$ shasum -c ./pinger-v1.2.2-macos11.7z.sha256
./pinger-v1.2.2-macos11.7z: OK
PGP (the key is here):
$ gpg --verify ./pinger-v1.2.2-macos11.7z.sig ./pinger-v1.2.2-macos11.7z
gpg: Signature made Fri Nov 12 20:24:37 2021 CET
gpg: using RSA key E984212EC3E4CA2AFAA37E98713EE1F732D42E96
gpg: Good signature
Because 7z archive is considerably smaller than a DMG image. So the question would be rather what's the point of using DMG.
Upgrading to Qt 6 required making certain changes, which are not compatible with Qt 5. Nevertheless, it shouldn't be too hard to "downgrade" back to Qt 5, if you would really need that. Most of the migration effort happened in this and that commits.