Releases: 64x-lunicorn/LogSquirl-Logcat
Releases · 64x-lunicorn/LogSquirl-Logcat
Release list
Android Logcat v0.4.0
Changed
- Requires LogSquirl 26.10.0 or later. This release is built with the Qt of
LogSquirl 26.10.0 (Qt 6.11.3); an older LogSquirl cannot load it.
Fixed
- Log messages and notifications reach LogSquirl as UTF-8, so non-ASCII
device names and paths are no longer garbled on systems whose local
8-bit encoding is not UTF-8. - Lines that adb terminates with
\r\nno longer keep a stray carriage
return in the log file. - A session whose adb cannot be launched is no longer listed as active
with nothing running: the error is shown once, no tab is opened, and
no empty log file is left behind. An adb that does not start within
5 seconds is given up on with a message, instead of freezing LogSquirl
for 30 seconds and failing silently. - Temporary log files are now removed when LogSquirl quits: those of the
running sessions and of every session that was stopped, ended or
rotated away before, whose tabs close with LogSquirl. When the plugin is
disabled or updated while LogSquirl keeps running, its sessions are
stopped but every file is kept, since open tabs may still show them.
0.3.0's cleanup never took effect: each session stopped at shutdown
reported back that it had ended, and handling that preserved its file,
while the files of earlier and rotated sessions were never removed at
all. Save paths and files in the log directory are never removed. Shutdown also rescanned the
devices once per session, blocking it. - Temporary log files are now also removed when LogSquirl quits after the
plugin was disabled and enabled again, or updated, while it kept running.
The new plugin did not know the files the earlier one had kept for its
tabs, so they stayed for good. Their directories are now named
logsquirl-logcat-<pid>-XXXXXXafter the LogSquirl process, and at quit
the plugin removes every one with its own process ID. Directories left
behind by a LogSquirl that no longer runs, e.g. after a crash, are removed
when the plugin starts; those of a running LogSquirl, links and, on Unix,
other users' directories are left alone. - Device discovery no longer freezes LogSquirl:
adb devicesruns in the
background instead of blocking the UI for up to 10 seconds, twice at
startup and two or three times per Start or Stop. Starting and stopping
a session no longer rescan at all. Refreshes requested while a scan is
running are combined into one more scan after it, the Refresh button
shows "Scanning…" meanwhile, and changing the ADB path (in the dialog
or in Plugins → Configure) abandons a running scan for one with the new
path. - On Windows, an adb that cannot be started no longer logs a false "adb
devices timed out" 10 seconds later, and closing the dialog while a
device scan runs kills the scan instead of leaving it to Qt. - Stopping a session on Windows no longer freezes LogSquirl for three
seconds: adb is killed right away, since as a console program it ignores
the polite request to close. - The Android Logcat dialog (Plugins menu) stays on top of LogSquirl's
window, and no longer keeps LogSquirl running when it is open while the
main window is closed. - adb's stderr is no longer discarded: its warnings go to the LogSquirl
log, and when adb exits with an error (device offline, not found,
unauthorised) the notification says what adb reported. - Deleting the dialog with sessions still running no longer calls back
into the half-destroyed dialog. - Stopping a session no longer shows an "ADB process crashed" error on
macOS and Linux, where adb ends from the stop signal. - Starting, stopping and rotating never truncate an existing log file.
A save path is appended to, so Stop and Start keep the earlier capture;
generated file names get a_2,_3, … suffix when a file of that
name exists, so a rotation within the same second as the start no
longer wipes the capture it rotates away from. - A rotation that cannot create its new file no longer leaves the session
running with its log file closed, which silently dropped all further
output: the capture continues in the old file and the error is shown. - A second session is refused instead of writing into the save path of
one that is still running. - Wireless devices (
192.168.1.5:5555) get a valid temporary file name
on Windows: the serial's:is replaced, as it already was for files
in the log directory.
Verifying downloads
Every archive is listed in logsquirl-logcat-0.4.0-sha256.txt. That file is
signed with Sigstore (logsquirl-logcat-0.4.0-sha256.txt.sigstore.json), and
every archive carries a GitHub build provenance attestation from the shared
LogSquirl plugin release workflow.
# 1. Check the signature of the checksum file (needs cosign)
cosign verify-blob \
--bundle logsquirl-logcat-0.4.0-sha256.txt.sigstore.json \
--certificate-identity-regexp '^https://github\.com/64x-lunicorn/LogSquirl-Plugin-CI/\.github/workflows/plugin-release\.yml@.+$' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
--certificate-github-workflow-repository 64x-lunicorn/LogSquirl-Logcat \
logsquirl-logcat-0.4.0-sha256.txt
# 2. Check the archives you downloaded against it
sha256sum -c logsquirl-logcat-0.4.0-sha256.txt --ignore-missing
# 3. Or check one archive's build provenance (needs the GitHub CLI)
gh attestation verify <file> -R 64x-lunicorn/LogSquirl-Logcat \
--signer-workflow 64x-lunicorn/LogSquirl-Plugin-CI/.github/workflows/plugin-release.ymlAndroid Logcat Plugin v0.3.0
What's Changed
- Fix/macos rpath by @64x-lunicorn in #7
- Fix/tmp cleanup and log path by @64x-lunicorn in #8
- build(deps): bump apple-actions/import-codesign-certs from 3 to 6 by @dependabot[bot] in #9
- New Release by @64x-lunicorn in #10
Full Changelog: v0.2.0...v0.3.0
Android Logcat Plugin v0.2.0
What's Changed
- Feat/sidebar v0.2.0 by @64x-lunicorn in #6
New Contributors
- @64x-lunicorn made their first contribution in #6
Full Changelog: v0.1.0-beta.1...v0.2.0
Android Logcat Plugin v0.1.0-beta.1
What's Changed
- build(deps): bump actions/attest-build-provenance from 2 to 4 by @dependabot[bot] in #5
New Contributors
- @dependabot[bot] made their first contribution in #5
Full Changelog: https://github.com/64x-lunicorn/LogSquirl-Logcat/commits/v0.1.0-beta.1