Skip to content

Releases: textbrowser/spot-on

Version 2026.04.12

11 Apr 22:21

Choose a tag to compare

Release Notes
  • Display public key size on disk in Settings.
  • Do not request for the GPG passphrase if we have not imported personal GPG keys.
  • GCrypt 1.12.1; Windows.
  • GPGError 1.59.1; Windows.
  • GPGME 1.23.2-15; Windows.
  • Increased the default and maximum lane widths to 31457280. New defaults are available for new listeners.db and neighbors.db.
  • New McEliece parameters m = 10, t = 50.
  • OpenSSL 3.6.2; Windows.
  • The maximum-neighbor-content-length is now equal to maximum-neighbor-buffer-size. New defaults are available for new listeners.db and neighbors.db.
  • Windows release featuring NTL 11.6.0! The linked library is static.

Version 2026.01.15

16 Jan 01:19

Choose a tag to compare

Release Notes
  • Disable core files via setrlimit() on Unix systems.
  • New Options -> GIT -> Refresh.
  • New XChaCha20 cipher.

Version 2026.01.04

05 Jan 00:44

Choose a tag to compare

Release Notes
  • Replaced QString::toLatin1() with QString::toUtf8().
  • SMP via Prison Blues is now optional.

Version 2025.12.25

28 Dec 00:39

Choose a tag to compare

Release Notes
  • Allow empty messages in Rosetta GPG if sharing attachments.
  • Corrected discovery of IP addresses for Dynamic DNS neighbors. QHostInfo::lookupHost() must be launched whenever the Dynamic DNS protocol is configured.
  • Final LTS of 2025!
  • Improved spot-on-git.sh. The local .git directory must exist and if it does not, spot-on-git.sh will attempt to create the respective Prison Blues directory via a temporary directory.
  • Local Web content will be served without HTML. The html2text program is required. The program's path will be contained in the new setting Options -> Miscellaneous -> WEB_SERVER_HTML2TEXT_PATH. Initially, the path will be estimated.
  • Minimal Rosetta GPG display.
  • NTL 11.6.0 for Linux!
  • New Options -> GIT -> Share messages with an active kernel. If enabled, Prison Blues messages from Rosetta GPG will be shared with an active kernel. The kernel will share the messages with other Spot-On neighbors. Neighbors, if configured, will process the special bundles as if they were generated locally.
  • New Options -> Miscellaneous -> WEB_SERVER_HTML2TEXT_PATH.
  • New Options -> Miscellaneous -> WEB_SERVER_IP_ADDRESS. The default value is the default local IP address.
  • Prefer at() over value() if the size of the container is known.
  • Prison Blues Key Exchange via GIT (PB-KEG) is now functional for Windows. Please remember the special Unix-like hardware requirement.
  • Prompt for the GPG key ring passphrase after Spot-On is launched if the passphrase is not present in the INI file. The passphrase is required for GPG status messages.
  • Properly close a separated Buzz window if the child page is dismissed.
  • Removed Options -> Miscellaneous -> PRISON_BLUES_REMOTE_SERVER.
  • Removed the WebEngine module from the MacOS build. The module may be easily added to a local build. Please read spot-on-gui.pro.
  • Replaced adaptive-echo list container with a reasonable set.
  • Set QT_STYLE_OVERRIDE to Fusion on MacOS and Windows if the INI value gui/theme_override has not been prepared.
  • Set the environment variable QT_SSL_USE_TEMPORARY_KEYCHAIN on MacOS for Spot-On, Spot-On-Kernel, and Spot-On-Web-Server-Child processes. QSslSocket will create its own temporary keychain.
  • The Options option GCRY_SEXP_BUILD_HASH_ALGORITHM_STRING will now default to sha3-512.
  • Windows OpenSSL 3.6.

Version 2025.09.28

29 Sep 13:47

Choose a tag to compare

Release Notes
  • A super Blue-Balloon-Papa release!
  • Added PostgreSQL and SQLite indices to the URL databases. The new objects will decrease search times. Super blue and super fast!
  • Allow drag-and-drop file attachments on Rosetta and e-mail attachments.
  • Animated widgets; here and there and everywhere.
  • Center progress dialogs.
  • Confirm removal of GPG passphrase from the INI file; Rosetta.
  • Corrected ECC key generation via the OpenSSL executable. The subject information must be properly enclosed.
  • Corrected spoton_crypt::initializePrivateKeyContainer(). The atomic variable m_isMcEliece must be set to zero if gcry_calloc_secure() fails.
  • Correctly delete the private key in spoton_crypt::freePrivateKey(). If GCrypt secure memory is enabled, gcry_free() must be issued instead of free().
  • Default of ECC keys in GPG key generation instead of RSA.
  • Default path for the OpenSSL executable for FreeBSD, Linux, MacOS, and OpenBSD in Options -> Settings -> OpenSSL Program. New installations only.
  • Denote processed Prison Blues messages in Rosetta. Optional.
  • Disable mouse-wheel events in Options. Some widgets retain values which are modified via mouse-wheel events. Such events are difficult to notice during scroll events.
  • Display key information for GPG participants in Rosetta.
  • Do not display Base-64 information in Settings -> Public Keys for empty entries.
  • Execute, if present, gpgme_check_version() in the Rosetta constructor. Removed all other instances.
  • Fifteen years of Spot-On!
  • GCrypt 1.11.2; Windows.
  • GCrypt's minimum secure memory is now 15000 bytes.
  • GPG attachments in Rosetta. The GPG program must be available locally. Decrypted attachments are recorded in the Spot-On home directory (.spot-on/Rosetta-GPG).
  • GPG-application support in Rosetta. The new process allows for the creation of custom GPG keys. Generated keys will be placed in the local key ring.
  • Include GPGME_DELETE_ALLOW_SECRET in gpgme_op_delete_ext().
  • Improved spoton_crypt::removeFlawedEntries() by detecting an entry's identifier. If the identifier is not known, delete the respective entry from idiotes.db.
  • Improved text in a Rosetta confirmation prompt(s).
  • Increased the minimum Generator Stream Size in the SMP Window to 768.
  • Independence from techno-feudalism.
  • Initialize an SMP container if a participant receives an SMP-verification request.
  • Inspect the results of gpgme_data_seek().
  • Launch a kernel process and set its working directory as .spot-on (or the official Spot-On directory). MacOS non-bundled kernels will be ignored.
  • New GIT Messages column in the Chat page.
  • New Options -> Miscellaneous -> PREFERRED_HASH_ALGORITHM.
  • New Options -> Miscellaneous -> SPOTON_CRYPT_DERIVED_KEYS_HASH_KEY_SIZE.
  • New Options -> OpenSSL Program Arguments.
  • OpenSSL 3.5.2; Windows
  • Optional status messages in Rosetta -> GPG Messaging.
  • Optionally-import new GPG keys into Spot-On via New GPG Keys.
  • Optionally-share presence via GIT in Rosetta. Status messages are gathered in separate tasks.
  • Prefer container iterators (QHashIterator, etc.); memory and performance.
  • Prevent duplicate e-mail attachments.
  • Prison Blues Key Exchange via GIT (PB-KEG)!
  • Prison Blues messages are now processed in separate tasks. GPG passphrase prompts will not be displayed!
  • QAudioOutput and Qt 6: retain the QAudioOutput object in an intelligent pointer. Otherwise, memory will be lost.
  • Qt 6.8.3 LTS on MacOS.
  • Qt 6.8.3 LTS on Windows.
  • Qt 6: QAudioOutput has a maximum volume of 1.0.
  • Remove temporary message files generated in Rosetta if extreme errors occur.
  • Removed the "GIT message(s)." check box from the Chat page.
  • Removed the kernel option --disable-ui-server as the server is required for the separate Web processes.
  • Renamed INI keys: gui/chat_time_delta -> gui/chatTimeDelta, gui/gpg_passphrase -> gui/gpgPassphrase.
  • Replaced GPGME_SIGSUM_GREEN with GPGME_SIGSUM_VALID in Rosetta.
  • Replaced QDateTime::currentDateTime().toSecsSinceEpoch() with QDateTime::currentSecsSinceEpoch() for Qt 6 and newer.
  • Restart Spot-On after a re-encoding process.
  • Retain Rosetta -> GPG Messaging -> Sign messages.
  • Retain the current Rosetta GPG E-Mail Address widget values.
  • Retain the current Rosetta tab index in the INI file.
  • Rosetta GPG e-mail names must not be modified as the respective GPG key bundles contain the original e-mail names.
  • Rosetta GPG: sign via the selected e-mail's signature key instead of the default signature key.
  • Sound files are now included in the application. The Sounds directory will not be distributed.
  • Terminate Fortuna loop in process_device() for QFile device.
  • The Rosetta GPG Import window is now part of the Rosetta page.
  • The Web server now launches separate processes! Please prepare URLs -> Spot-On-Web-Server-Child Executable Absolute Name!
  • The first beautiful LTS release of 2025!

Version 2025.05.12

12 May 17:15

Choose a tag to compare

Release Notes
  • Another Blue-Balloon-Papa release!
  • GCrypt 1.11.1; Windows. Corrects 2024.12.25 item.
  • GPGError 1.55; Windows.
  • New page Rosetta.
  • Removed the menu View -> Pages.

Version 2025.04.25

25 Apr 22:21

Choose a tag to compare

Release Notes
  • Another Blue-Balloon-Papa release!
  • Avoid cloning a GIT repository's history for Prison Blues.
  • GPGError 1.53; Windows.
  • Richer Prison Blues process messages in status bars.

Version 2024.04.18

18 Apr 18:00

Choose a tag to compare

Release Notes
  • Allow renewal of the Web Server's certificate.
  • Application-modal progress dialogs.
  • Center child windows before displaying these windows.
  • Define QT_QPA_PLATFORMTHEME as qt6ct in spot-on.sh if qt6ct is discovered.
  • Display a warning in the status bar if Web Server credentials cannot be recorded.
  • Exit once and only once. Closing a program is a serious calamity.
  • Fortuna in the main interface.
  • If Fortuna cannot provide the requested number of random bytes, query GCrypt.
  • New Options -> Settings -> OpenSSL.
  • New PRISON_BLUES_REMOTE_SERVER Options -> Miscellaneous. Incomplete.
  • On Spot-On reset, launch a new process before exiting the current process.
  • On-top chat dialogs are now available everywhere.
  • OpenSSL credentials will now be generated via the defined OpenSSL executable. The new approach will replace the monumental effort of maintaining correct and current OpenSSL library processes. Temporary files will be temporarily housed in the Spot-On directory. If the new process fails, the traditional process will resume.
  • Participant SMP secrets are now recorded in friends_public_keys.db and will be available in future sessions.
  • Removed creation of the WebEngineCache directory.
  • Removed database alter statements (ALTER TABLE neighbors ADD ssl_configuration TEXT).
  • Replaced Options -> Miscellaneous text widget with a lovely table widget.
  • Super OpenSSL 3.5; Windows. The new version includes PQC.
  • The Blue-Balloon-Papa release!

Version 2025.03.23

23 Mar 14:25

Choose a tag to compare

Release Notes
  • Removed custom style sheets.
  • Replaced Options -> Theme with Theme Override.
  • Timely Rosetta, if timeliness is timely.

Version 2025.03.20

20 Mar 21:18

Choose a tag to compare

Release Notes
  • Layout modifications of the main interface.
  • New E-Mail -> Plain. The option allows for plain-text or rich-text e-mail display. The new widget is positioned below the e-mail message and may require interaction with the parent splitter before it's visible.
  • New FORTUNA_FILE option. Initialized as none. On Unix systems, /dev/urandom is a possibility.
  • Reset s_kernel as nullptr after deletion.
  • The method spoton_kernel::interfaces() is now lock-less. Super fast and super safe.