Releases: ogri-la/strongbox
Releases · ogri-la/strongbox
7.5.0
Added
- added another heuristic for guessing which asset in a Github release supports retail.
- in this case, if there is a single remaining unclassified asset, and there are other classified assets and nothing has been classified as retail yet, classify that asset as retail.
- yes, this is guessing, and it won't always be correct, but it's probably true most of the time.
- thanks @jake770321
- in this case, if there is a single remaining unclassified asset, and there are other classified assets and nothing has been classified as retail yet, classify that asset as retail.
- error handling for a few cases where uncaught exceptions were being swallowed.
Changed
- installing an addon by file now overwrites/updates ignored addons and unpins pinned addons.
- this accommodates a use case where Strongbox is used to install a select few addons manually from unsupported sources (like Curseforge) but then the new addons match against older versions in the catalogue from wowi.
- please open a feature request if you want this behaviour adjustable.
- updated internal constants for The War Within.
- updated internal constant for the date of the previous expansion.
- affects how much the emergency 'short' catalogue gets truncated from the 'full' catalogue.
- emergency catalogue is used when Github hosted catalogue is unavailable, which is rare.
- affects how much the emergency 'short' catalogue gets truncated from the 'full' catalogue.
- trimmed the '(Flatpak)' from the 'Strongbox (Flatpak)' on the
.desktop
files distributed by Flatpak.- thanks @deadmeu
Fixed
- fixed bug in emergency 'short' catalogue generation.
- it would include addons from BFA instead of stopping at Shadowlands.
- fixed bug where installing a file manually would bypass ignored and pinned addon checks.
- it would tell you it was refusing to install, then install it anyway.
- thanks @akanouras
- fixed bug where ignore check bypassed on ungrouped/single directory addons.
- logic assumed all addons were grouped, but grouping only happens when an addon unzip to multiple directories.
- pretty big bug!
7.4.0
Added
- added support for parsing multiple interface version values from .toc file.
- a single .toc file may now yield multiple possible game tracks (retail, classic, wrath, etc).
- added entries to the known patch list for the recent major Dragonflight patches and The War Within.
Changed
- the WoW column in the GUI now supports displaying multiple game versions (like 8.0, 9.0, 10.0).
- these are derived from interface versions (80000, 90000, 100000).
- the raw data GUI widget in the addon details pane now supports displaying multiple interface versions.
- replaced references to the old wiki with the new wiki (warcraft.wiki.gg).
- bumped dependencies.
Fixed
- fixed a typo in a field name in the import/export logic.
- fixed a bug in the interface-version => game-version logic where 110000 was returned as '1.0.000' instead of '11.0.0'.
Removed
- removed curseforge and tukui test fixtures and the fetching of test fixtures.
- removed support for 'release labels' attached to addon source updates.
- only supported by curseforge and provided a friendlier label for a release than a version number.
- removed more curseforge and tukui logic that was disabled many releases ago.
- removed support for interface versions in .toc files containing non-numeric values.
- for example, "30008a" which used to parse to "3.0.8a".
- the interface version for these alpha and beta releases don't actually have 'a' and 'b' suffixes.
7.3.0
Added
- added support for Cataclysm Classic.
Changed
- dependencies bumped to latest versions.
- game track priority when 'strict' is off now has a proper and consistent strategy.
Fixed
- bumps Clojure from 1.10 to 1.11.2 to fix CVE-2024-22871
- an Arch Linux AUR bug introduced with pacman 6.1 that stripped the binary down to nothing.
- thanks to @nickromanooo for reporting the bug and tracking down the pacman issue.
7.2.0
Added
x-website
Github URLs in.toc
files are now treated as a Github source that an addon can be switched to.- when both
x-github
and Githubx-website
sources exist,x-github
takes priority.
- when both
Changed
- moved AppImage building to
ogri-la/strongbox-appimage
. - consolidated all the
.sh
into a singlemanage.sh
script.lint.sh
moved tomanage.sh
as command 'lint'.run-tests.sh
moved tomanage.sh
as command 'test'.update-test-fixtures.sh
moved tomanage.sh
as command 'update-test-fixtures'.build-linx-image.sh
moved toogri-la/strongbox-appimage
asbuild-appimage.sh
.
Fixed
- fixed bug preventing classic Wrath
.toc
from being detected and loaded. - fixed bug in catalogue location spec where a value that should have been validating as a URL was not.
- removed
x-tukui-id
source detection in.toc
files. Tukui no longer hosts addons so these can't be used.- overlooked, should have been part of 7.0.0 major version.
Removed
- removed
release.sh
as it had been unused for several years.
7.1.0
Added
- added checkbox to bottom of search tab that will toggle search results sampling when search results are unfiltered.
- this lets you browse a catalogue page by page.
- added patch tooltips for Dragonflight 10.1 and 10.2
- added support for the
NO_COLOR
environment variable.- it turns off coloured output in the console if that is where you launched strongbox from.
- added new command line action
print-config
that prints the final config and exits.- usage:
./strongbox --action print-config
- usage:
- added new information captured from the environment when using
--debug
or--action print-config
.state.paths.config-dir
, path to where Strongbox is storing the application config.state.paths.data-dir
, path to where Strongbox is storing the application data.flatpak-id
, looks likela.ogri.strongbox
when running within a Flatpak.
- added plain-text and JSON views of the raw addon data to the 'raw data' widget on the addon detail tab.
- it's pretty basic but JavaFX really resists being able to select text within it's widgets.
- added new preference 'check for update' that toggles checking for an update to Strongbox on startup (default is
true
). - added new command line flag
--update-check
and it's complement--no-update-check
that toggles update checks. - added Flatpak distribution hosted by Flathub
Changed
- bumped JavaFX dependencies from 17.x to 19.x.
- removed the fixed widths on the 'updated' and 'downloads' columns in the search pane.
- attempting to control column widths in a JavaFX table is futile.
- some
info
level logging has been dropped todebug
to reduce console noise.
Fixed
- tag buttons in search pane are now centred vertically.
- selecting hosts in search pane no longer samples results.
- 'interface version' was being treated as an integer and being localised in the raw data widget.
7.0.0
Added
- added 'stats' that serves to centralise a bunch of numbers used internally that might be interesting to the user.
- see the
more stats
button in the bottom left corner.
- see the
- Github rate limit information is now fetched as part of the stats.
- but no more than once a minute.
- see: https://github.com/ogri-la/strongbox#user-content-github-api-authentication
- manually refreshing the user catalogue will now switch to the
log
pane before doing so.- the intent is to show that something is happening.
- see:
Catalogue -> Refresh user catalogue
- new (opt-in) preference to automaticaly refresh the user-catalogue every 28 days.
- the user-catalogue are addons added to strongbox using
File -> Import addon
or by 'starring' a regular addon. - see:
Preferences -> Keep user catalogue updated
.
- the user-catalogue are addons added to strongbox using
- added a "clear" button to the addons search that removes all search filters, including search terms.
- added new column for installed addons "starred" that will add an installed addon to the 'user-catalogue'.
- star button disabled when addon is being ignored or isn't matched against the catalogue.
- new column for installed addons "size" with the total size of the addon on disk, including any grouped addons.
- see:
View -> Columns -> size
- see:
user.clj
, where the REPL will take you by default during development.- this lets me separate some development dependencies and logic from what is released.
Changed
- the main window is now always split with the bottom pane hidden by default.
- if can be dragged open or toggled open by either of the two status bar buttons.
- clicking the status bar buttons to open the bottom pane is now much quicker.
- refreshing the user-catalogue now checks imported/starred addons against the full catalogue before checking online.
- if it fails to find addon in catalogue, it will fall back to checking online like before.
- the user-catalogue was originally for imported addons without a catalogue (github, gitlab) but is now also for 'starred' addons. Refreshing it now that we have a Github catalogue is much faster.
- menu labels for the installed addons table columns have been tweaked (see
View -> Columns
)- "installed" is now "installed version"
- "available" is now "available version"
- "version" is now "installed+available version"
- "WoW" is now "game version (WoW)"
- the "fat" column profile now uses the "installed" and "available" columns rather than the combined "version" column.
- the "fat" column profile includes the new "starred" and "size" columns.
- see:
View -> Columns -> fat
- see:
jlink compress=2
changed tojlink compress=1
during the building of the linux AppImage.2
means "zip", which interferes with the final AppImage compression.- this shaves off ~7MB from the final AppImage.
- replaced the compressed, static, "emergency" catalogue with a simple JSON string.
- it wasn't working at compile time like I thought.
- regular strings are more compressible ultimately when building an AppImage.
- bumped dependencies.
- removed
apache.commons.compressors
as no longer required.
- removed
- some dependencies used for development are no longer bundled during release.
- strongbox release data will only be downloaded once the app has finished loading.
- strongbox release data will only be downloaded once per-session.
- it would previously re-attempt to download the release data on failure endlessly.
Fixed
- search tab filter buttons are now a uniform height.
key
column in the addon detail "raw data" widget is now wide enough for the text "supported game tracks".updated
column in the installed addon tab is now wide enough for the text "12 months ago".- possible cache stampede fetching strongbox release info. A lock is now acquired to ensure checks happen sequentially.
- it was possible for the GUI to fire off many requests to Github simultaneously, bypassing cache and overwriting each other.
Removed
- Tukui support. Tukui addons are:
- no longer checked for updates.
- excluded from being imported.
- excluded from the user-catalogue.
- no longer scraped from the tukui.org API into a catalogue.
- no longer present in the "full" or "short" catalogues.
- excluded from search results.
- removed from the 'emergency' (built-in, hardcoded) catalogue (used when remote catalogues are unavailable).
- removed from lists of available addon hosts to switch an addon between.
6.1.2
- issue #402, fixed a freezing bug in the search results, introduced in 5.1.0 (2022-03-02).
- if the 'full' catalogue were selected, searching and selecting a result would freeze the GUI.
- it may possibly have disabled mouse events as well, depending on your window manager.
- No definite cause found, however the bug was quacking suspiciously like a deadlock/livelock.
- Thanks to @sergen213 for their help and feedback.
- if the 'full' catalogue were selected, searching and selecting a result would freeze the GUI.
6.1.1
6.1.0
Added
- filtering search results by tag can now be switched between inclusive ('any of', default) and exclusive ('all of').
- embedded font for glyphs used in the uber and star buttons for systems running with minimal fonts.
- an app launcher to desktop environments that support them.
- for me,
strongbox
was found under theGames
menu item. - only for installations via the AUR
- the
.desktop
file can be found here: https://github.com/ogri-la/strongbox-pkgbuild/blob/master/strongbox.desktop
- the
- for me,
Changed
- search results filtered by tag are no longer sampled when no search input is available.
- this means you can now browse addons by tags alone if there are more addons that can fit on a single page of results.
- glyphs used for the uber and star buttons switched to their close equivalents in the new embedded font
- they're a little chunkier now but also look a little better in my estimation.
- moved some files used for building the AppImage from the root into a directory called
AppImage
.
Fixed
- page >1 of search results that were then filtered further may have displayed the 'mascot' screen (ᕙ[°▿°]ᕗ)
- this was because the pagination wasn't being reset and there was no 'page N' for the given set of filters.
- the 'mascot' screen is still (deliberately) displayed in rare cases.
- characters in multi-line messages in the notice logger no longer get their descenders ('y', 'g', 'p', etc) truncated.
- ignored addons in the addon detail pane now display mutual dependencies (if any).
- 'WoW' column text was black with a dark background in dark mode, making the value illegible.
6.0.0
Added
- support for six digit interface versions.
- Dragonflight is
100000
- Dragonflight is
- 'Dragonflight' tooltip for 10.0 addons.
Changed
- the slugify function used on a toc's 'title' value switched to the same one used when building catalogues.
- the 'title' value used to be more important as it was primarily used to match an addon within a catalogue.
- it's more of a fallback these days if the addon's
source
andsource-id
aren't found in the catalogue.
- it's more of a fallback these days if the addon's
- the 'title' value used to be more important as it was primarily used to match an addon within a catalogue.
- reviewed a lot of code, lots of very minor shuffling and tweaks that won't affect the user at all.
- unless of course it breaks something.
- I was taking advantage of the major version bump to do some unnecessary and hard to justify changes.
- plenty more could still be done but I'll tackle them individually.
Fixed
- fixed an issue with WotLK toc data having no priority in non-WotLK game tracks.
- for example, if an addon directory is using the 'Classic TBC' game track and an addon had 'Classic WotLK' toc data but no TBC toc data, the WotLK toc data would be ignored when it should be preferred over retail toc data.
Removed
- removed support for building catalogues.
- this logic now lives in
ogri-la/strongbox-catalogue-builder
.
- this logic now lives in
- removed the command line actions:
- 'scrape-catalogue'
- 'write-catalogue'
- 'scrape-github-catalogue'
- 'scrape-wowinterface-catalogue'
- 'scrape-tukui-catalogue'
- removed support for reading version 1 catalogues built using
wowman
- last release of
wowman
was 2020-06-01
- last release of
- removed the 'tag' logic used to normalise and map categories between addons and addon hosts.
- it was used exclusively for catalogue building and this logic now lives in
ogri-la/strongbox-catalogue-builder
.
- it was used exclusively for catalogue building and this logic now lives in
- removed dependencies
org.clojure/data.csv
andenlive
. - removed support for finding
wowman
-era config files.