Releases: textbrowser/spot-on
Releases · textbrowser/spot-on
Version 2025.09.28
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
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
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
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
Release Notes
- Removed custom style sheets.
- Replaced Options -> Theme with Theme Override.
- Timely Rosetta, if timeliness is timely.
Version 2025.03.20
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.
Version 2025.03.01
Release Notes
- Added GCRY_SEXP_BUILD_HASH_ALGORITHM_STRING to Options -> Miscellaneous. The algorithms allowed are BLAKE2B_512, SHA3-512, SHA512, STRIBOG512, WHIRLPOOL. Participants must specify common values which are supported on all systems.
- Decreased frequency of spot-on-git.sh processes.
- Default buttons of No in Rosetta prompts: removal of GPG keys, removal of contacts.
- Disable native dialogs.
- Fortuna and SHA3-256.
- Forward-only SQL queries. Conserve resources.
- GIT and congestion control within the kernel.
- Icons here and there.
- Ignore file permissions during the processing of local Prison Blues files.
- Keys and values in Options -> Miscellaneous are now trimmed.
- OpenSSL 3.4.1; Windows.
- Optional removal of participant GPG keys from the key ring via Rosetta.
- Populate Rosetta -> GPG Messaging contacts after a participant is removed.
- Prison Blues now supports five sites. Please see Options. Previous settings will be removed. Apologies.
- Process all errors in spoton_crypt::decryptedAfterAuthenticated(). A keyed-hash failure was not observed.
- Qt 6.8 LTS.
- Replaced file socket notifier with timer in Fortuna.
- Rosetta: include the recipient's public-key digest in the digital signature.
- Set the parent of spoton_virtual_keyboard created in a spoton_lineedit to the provided parent instead of the spoton_lineedit object. Otherwise, the clear-button will not be shown.
- Single-set spot-on-git.sh process(es). If a kernel process is active, the interface will not launch separate spot-on-git.sh process(es) automatically.
- The function gcry_cipher_reset() may fail.
Version 2025.02.05
Release Notes
- Added the option GPGME_ENCRYPT_NO_COMPRESS in gpgme_op_encrypt_sign(). Do not compress a message.
- Added the option GPGME_ENCRYPT_THROW_KEYIDS in gpgme_op_encrypt_sign(). Hide the recipient.
- Be careful of zero objects: spoton_rss::slotItemChanged().
- C++ enumerator classes.
- C++ nullptr replaces zero.
- Disable WebGL for WebEngine.
- Display SMP step numbers in Chat messages.
- GPG messaging on the GIT blues. Please read Rosetta.
- GPGME and MacOS.
- GPGME and Windows. Not verified. Someday!
- Message boxes replaced with status-bar messages in Rosetta.
- New Iteration Count of 250000 in Settings -> Passphrase. New installations only.
- New Reset buttons for Listener and Neighbor pages.
- Prison Blues. Communications via GIT. Please read the documentation. SMP blues, also.
- Process configuration settings in the kernel after the security containers have been initialized.
- Removed NTL for local Unix project files, save for PowerPC. Systems must believe in maintainers. See YOU!
- Replaced C-style casts with modern versions.
- Retain the GPG passphrase in Rosetta. Optional. New Rosetta -> Edit -> Remove Stored INI GPG Passphrase. The passphrase is not re-encoded during the re-encode process.
- Speedier detection of active kernel in the interface.
- Spot-On-Lite will address Prison Blues and Smoke.
- Trim Buzz and Chat messages.
- WebEngine: cache-path, download-path, and persistent-storage-path are now /dev/null for all systems.
Version 2024.12.25
Release Notes
- Adaptive Echo tokens will now be trimmed.
- Allow comments (#) in Options -> Miscellaneous. An entry is considered a comment if the first character in it is a number sign. Deeper symbols are not interpreted.
- Attempt to load translation files according to QTranslator::load(QLocale(), "qtbase", "_", path, ".qm") and QTranslator::load(QLocale(), "spot-on", "_", path, ".qm").
- Automatics and constants. Mishaps? We simply do not know!
- Beautiful and final LTS release of 2024. See you.
- Beautiful and natural find in various places.
- Beautiful lively documentation in the various panels.
- Beautiful source!
- Breeze style on Unix-like, excluding MacOS.
- Centering children with parents is strange. Introduced a delayed and simple centering machine. The delay is not observable by a standard person.
- Close the RSS panel before deleting it as this will preserve its geometry.
- Completed some of spoton_smpwindow::slotSetIcons().
- Corrected access of the URLs database in the kernel. QSqlDatabase::connectionName() is not QSqlDatabase::databaseName(). The error may result in lingering database connections.
- Corrected Windows project file. Deleting debug plugins may delete required plugins files in the Windows install target. Qt 6.5 LTS has separated the debug and release files and the additional logic in the project file is not necessary.
- Corrected incorrect error report in spoton_crypt::init().
- Corrected interface and kernel RSS: place the original URL into the redirected URL database field (rss_feeds_links database table) as the redirected URL is the URL which determines if its contents should be imported. If the original URL is redirected, the redirected URL field will be correct. Excellent!
- Editable RSS feeds. Double-click the desired feed, modify its link, and press the Enter key.
- Eliminated GitHub warnings of NTRU.
- Enable Monitor Events in Notifications window after a new installation. The default value is true.
- Final release of Linux packages. Future: MacOS, Windows. See YOU!
- GCrypt 1.11.1; Windows.
- GPGError 1.51; Windows.
- Import published pages. Options -> Miscellaneous. Importing occurs routinely. (PUBLISHED_PAGES := path, title-line-number, url-line-number)
- Inbound e-mail will be displayed in a plain-text container, replacing the rich-text widget. Rich-text is not suitable for Qt.
- Include discovered Spot-On options in About page.
- Increased GEMINI_ITERATION_COUNT to 250000 from 25000. This constant is applied during the creation of credentials from a completed SMP process.
- Increased MAXIMUM_NEIGHBOR_CONTENT_LENGTH to MAXIMUM_NEIGHBOR_BUFFER_SIZE / 2.
- Introduced SPOTON_MACOS_OVERRIDE_NEIGHBOR_DELETE_LATER in the kernel. Disabled.
- Listener accounts and passwords will now be trimmed.
- Monitoring the INI file in the kernel may not be possible with a file-system monitor. Enable periodic monitoring if necessary.
- More statistics in local format.
- Natural woody: collapse / expand are more clever.
- New --launch-kernel main interface terminal option. This option does not share credentials with a kernel process. The kernel is launched shortly after the main window is shown.
- New About page in Web search.
- New Reset All in Search page.
- New congestion control digest: SHAKE256. Requires GCrypt.
- New modern C++ nullptr, here and there.
- Novas will now be trimmed.
- On reset confirmation dialog, set No as the default button.
- OpenSSL 3.4; Windows.
- Optional human proxy. Please see Chat page.
- Prettier about text in search server.
- Prettier tool buttons on MacOS. Menu arrows were quirky.
- Q_OS_WIN -> Q_OS_WINDOWS.
- Qt 6.8 LTS.
- RSS: Edit -> Find -> Timeline.
- RSS: bold labels for lovely meaning.
- RSS: describe reason(s) of disabled widget(s).
- RSS: new verify-feeds machine.
- Rapid McEliece.
- Removed Doxygen.
- Removed GeoIP from MacOS, PiOS, and PowerPC. GeoIP is dead!
- Removed echo_key_sharing_secrets_temporary from echo_key_sharing_secrets.db as the requirement is ancient.
- Removed old database ALTER statements.
- Renamed FORTUNA_QUERY_INTERVAL_MS to FORTUNA_QUERY_INTERVAL_MSECS. Please adjust in Options -> Miscellaneous.
- Renamed P2P_SERVERLESS_CONNECT_INTERVAL_MS to P2P_SERVERLESS_CONNECT_INTERVAL_MSECS. Please adjust in Options -> Miscellaneous.
- Replaced selectedItems() with a model's selectedRows(). Super fast, super splendid, super Spot-On.
- Resize a dialog before centering it.
- Replaced old-style C casts.
- Select the Breeze style on KDE systems in spot-on.sh.
- Set QMAKE_MACOSX_DEPLOYMENT_TARGET to 12.0.
- Spot-On contains at least 740 options.
- Spot-On kernel uptime in About page in Web search.
- Taller windows: Documentation, Options, Release Notes, Log Viewer.
- The method gcry_mpi_scan() may fail in spoton_smp::setGuess(). Be careful!
- The method spoton_listener::maxPendingConnections() may return a special value, indicating that a listener has not completed initialization. Adjusted logic.
- Total URLs in About page in Web search.
Version 2024.07.15
Release Notes
- A StarBeam's estimated time of arrival is now displayed as a rational. GitHub ticket #34.
- A StarBeam's percent completed is now displayed as a rational. GitHub ticket #34.
- About the 88th release of Spot-On.
- Adjusted QString::split() for modern Qt versions.
- Corrected INI setting kernel/tcp_nodelay in spoton_gui_server_tcp_server::incomingConnection(); the proper setting name is gui/tcp_nodelay.
- Disable WebEngine's cache if SPOTON_WEBENGINE_ENABLED is true.
- Do not set an empty URL interceptor for WebEngine as the engine is particular.
- Elegant source.
- Fourteen years of silent awesomeness.
- GPGError 1.50; Windows.
- Include urls.db in database vacuuming. New confirmation prompt included.
- NTRU memset() size parameter correction; size must be non-zero. Please read line 506 of src/poly.c. Notice that the len parameter is an unsigned 16-bit integer.
- Non-modal About dialog.
- OpenSSL 3.3.1; Windows.
- Prepared for Apple Silicon MacOS. Intel MacOS is deprecated.
- QLocale::country() was replaced with QLocale::territory() in Qt 6.6.
- Qt 6 LTS and WebEngine preparations.
- Qt 6 LTS and deprecated SSL corrections.
- Removed ancient QSettings::remove() instances.
- Removed deprecated QAction objects.
- Removed tool tips from StarBeam -> Transmitted -> Add Mosaic.
- Replaced QWebEngineSettings::globalSettings() with QWebEngineSettings::defaultSettings().
- Simplified StarBeam reading. Reading tasks are cumbersome.
- Some QDateTime::setTimeSpec(Qt::UTC) instances are redundant. Removed!
- Source-only releases! Computers do not exist.
- The method spoton_webengine_page::acceptNavigationRequest() must return true else a local page will not be loaded.
- This happy release is dedicated to the spotty Mr. D.
- Ultra StarBeams were introduced in 2019 or so. Perhaps earlier, perhaps later. Ultra StarBeams are reliable and therefore resize() is not necessary.
- Unroll loops, if possible, via funroll-loops.
- Various tool tips in StarBeam -> Transmitted would disappear if an active StarBeam was present: QTableWidget::selectRow().
- View Locally is now hidden in Search unless WebEngine or WebKit is available.
- WebEngine is now included in some Linux distributions. The engine will render local Web pages.