Releases: ogri-la/strongbox
Releases · ogri-la/strongbox
5.4.1
Added
- support for Tukui's WotLK addons
- because of how Tukui partition their addons they need some special handling.
Changed
- inconsistent 'source' column widths and resizing behaviour in the search addons tab.
Fixed
- bug with selecting the 'WotLK Classic' game track in strict mode that would empty the list of installed addons.
- minor bug with an error message repeated N times when installing an addon and the selected game track isn't supported
- affected non-strict mode only and was simply the same error message but for each game track it iterated through, i.e. 'no releases found for classic', 'no releases found for classic-tbc', etc.
5.4.0
5.3.0
Added
- multiple addons can now be selected and installed from
File -> Install addon from file
. - tooltips for values in the 'WoW' column are now the long-form patch name.
- for example, '9.2.5' will have the tooltip 'Shadowlands: Eternity's End'.
Changed
- addons that are completely replaced by another addon are now uninstalled first rather than creating a 'mutual dependency' (overwritten in-place with a reference).
- using the
Find similar
option to replace Curseforge addons was leading to addons from other hosts creating unnecessary mutual dependencies. - also common when installing an addon from a file that overwrites one installed from a catalogue or vice-versa.
- using the
- data from invalid .toc files is now discarded.
- for example, Questie: https://github.com/Questie/Questie/blob/2242b806172163122ba0a08e451b750851aac3f8/Questie.toc#L4
- it means some data derived from toc files, like description, game-track, alternate source hosts, etc will not be available.
- if there is a catalogue match then most of this shouldn't be a problem. This is a pretty rare case.
ctrl-f5
now clears the http cache and then does a full refresh, including a reload of the addons from the filesystem.- previously it just cleared the cache and checked for updates online.
- some warnings have been made less obscure or dropped down to debug statements.
- start strongbox with
--debug
to see debug-level messages.
- start strongbox with
5.2.0
Added
- added 'scrape-github-catalogue' to the list of command line actions.
- added 'Browse addon directory' to the 'File' menu that opens your configured file browser to the selected addon directory.
- also accessible with the
ctrl+b
shortcut.
- also accessible with the
- added ability to install addons from zip files, bypassing catalogue matching.
- you get grouping, ignoring and pinning but unless the addon matches against the catalogue, you won't get updates.
- see:
File -> Install addon from file
Changed
- bumped JavaFX from 15.0.1 to 17.0.2
- addons are now installed and uninstalled in parallel.
- previously they were just downloaded in parallel then installed sequentially to prevent mutual dependencies potentially overwriting each other in a non-deterministic way.
- the warning message 'addon "Foo" is overwriting "Bar"' when creating a mutual dependency has been changed to the more helpful '"Foo" (1.2.3) replaced directory "Bar/" of addon "Baz" (3.4.5)'.
- or similar. It varies depending on availability of version numbers, labels, etc.
- 'version' column on installed addons tab now emboldens it's value when update available.
- both 'installed version' and 'available version' columns are also available if you prefer separate values.
- (possibly not working on mac)
- 'updated' column on the search tab is now 'friendly' formatted using a relative time label.
- consistent with the date columns on the installed addons tab.
Fixed
- fixed handling for empty game track lists in the github csv catalogue.
- fixed bug where the GUI would look for parallel jobs matching a complex ID when jobs with a simple ID were present.
- fixed placeholder text size in addon detail pane for addons with no mutual dependency data (like search results).
- fixed button text in addon detail pane from "install" to "re-install" for releases matching currently installed version.
5.1.0
Added
- 'star' column to the search tab. Starring an addon will add it to your user-catalogue.
- 'star' button to the search pane that will filter addons to those in your user-catalogue.
- 'addon host' multi-checkbox field to the search tab, allowing you to select which hosts to see addons from.
- disabled when there is only one host to choose from.
- clickable tags in the 'tags' column that filter search results.
- selected tags appear in the search area. clicking them will remove the tag from the search.
- gui, search, count of addons selected to the 'install selected' button.
- gui, addon-details, a 'mutual dependencies' pane to show which addons the current addon is overwriting.
- gui, addon-details, the installed and latest releases are now highlighted in the 'releases' pane.
Changed
- core, the user-catalogue is now part of application state rather than read from file as needed.
- gui, search, 'install selected' button moved to the left of the search field and disabled if no addons selected.
- gui, addon-details, switched from a three-pane layout to a two-pane layout with navigation.
- default panes displayed are 'releases' and 'grouped addons'
- 'raw-data' shifted to it's own pane, it's always been a bit of a debug option.
- gui, styling, some of the early, complex, styling has been minimised and contained to just the install and search tabs.
- the appearance shouldn't have altered, it's just less wooly behind the scenes.
- gui, addon-details, very minor, "Stop ignoring" label changed to "Unignore" to conserve horizontal space.
- gui, installed addons, 'update all' button no longer does anything if no addons need updates.
- gui, the 'split' button (bottom right) is now a proper 'toggle' button with indent and outdent styling.
Fixed
- gui, addon-details, very minor bug that would sometimes result in two seemingly identical addon tabs being open.
- new tab and their default state were being compared to all other tabs open and, if not found, a new one would be opened.
- for example, if you changed the log level in an addon's detail pane then opened the addon again, you'd get a duplicate tab.
- new tab and their default state were being compared to all other tabs open and, if not found, a new one would be opened.
- gui, addon-details, the most recent release would always be missing from the 'releases' pane.
- my thinking was the user wouldn't want to see the latest release, only the other releases available.
- gui, installed addons, removing all columns will now present with you a helpful message again and a button to reset columns.
- the condition that would trigger this message was never being hit after the introduction of the 'arrow' column in
4.7.0
.
- the condition that would trigger this message was never being hit after the introduction of the 'arrow' column in
Removed
- the 'random' button. room was needed for the new filters.
- it's affect can still be simulated by pressing spacebar in the search field.
- the 'wrote: /path/to/user-catalogue.json' message when the user catalogue is updated.
- it's just noise now that the operation has become common.
5.0.0
Added
- column presets 'default', 'skinny' and 'fat'.
- support for
X-Github
fields in the.toc
file.- these are a form
x-<source>-id
likex-curse-project-id
andx-wowi-id
and the value should be a Github URL.
- these are a form
Changed
- replaced 'View -> Columns -> Reset to defaults' with the 'default' column preset.
- github catalogue tweaks to support latest version of https://github.com/layday/github-wow-addon-catalogue
- column preferences in the config file are now upgraded to the new default column set.
- any customised column preferences are preserved.
- minor, errors/warning/info messages that appeared across multiple messages are now just one message.
- I also replaced some developer-isms like 'unhandled exception' with 'unexpected error'.
- please let me know if you ever find messages in the log obscure.
- I also replaced some developer-isms like 'unhandled exception' with 'unexpected error'.
- curseforge February deprecation notice is now the definitive "no longer supported".
Fixed
- minor, clicking an already selected source in an addon's 'Source' context menu no longer triggers an update.
Removed
- Curseforge support. Curseforge addons are:
- no longer checked for updates.
- excluded from being imported.
- excluded from the user-catalogue.
- no longer scraped from the 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 known addon sources to switch between.
4.9.1
Fixed
- github, regression, pre-releases and drafts are now removed from consideration when looking for updates.
- addon, regression, the 'updatable?' check now correctly handles addons with multiple .toc files.
- regular addons were being affected by some buggy logic here introduced in 4.8.0 (2021-12-12).
4.9.0
Added
- a github catalogue.
- actually, the catalogue is available right now if you're using the 'short' (default) or 'full' catalogues.
- an entry in the
Catalogue
menu where you can switch to the Github catalogue exclusively.
- source switching.
- when an addon has multiple sources (curseforge, wowinterface, github, etc) you can switch between them.
- this relies on the
x-project-id
type values in addon.toc
files.
- this relies on the
- a 'Source' context menu option for addons with multiple sources.
- a 'other sources' column with clickable links.
- note: curseforge links are a bit hit or miss as a direct URL isn't possible from just the source/project ID
- when an addon has multiple sources (curseforge, wowinterface, github, etc) you can switch between them.
- 'find similar' context menu option. It searches the catalogue for addons that share the addon's name.
- this may reveal the same addon on different hosts that aren't present in an addon's
.toc
file.- ensure the 'short' or 'full' catalogues are selected for better results.
- this may reveal the same addon on different hosts that aren't present in an addon's
- a warning for curseforge addons that updates will stop Feb 1st 2022 and directions on how to migrate.
- new dependency
org.clojure/data.csv
for parsing the Github catalogue.
Changed
- the set of catalogues in your
config.json
file will be upgraded to include the new Github catalogue- but only if it looks unmodified from the default set of catalogues.
- curseforge addons missing from the currently selected catalogue can no longer be checked for updates.
- this was a recent feature that allowed addons that could patch together a full set of data to be checked regardless of a match in the catalogue.
- it is now disabled for curseforge because the
group-id
value it depends on may not be consistent now that source switching is present.
- it is now disabled for curseforge because the
- this was a recent feature that allowed addons that could patch together a full set of data to be checked regardless of a match in the catalogue.
Fixed
- http backoff regression on timeout errors.
- the 'synthetic' http errors I was using to replicate socket connection errors and connection timeout errors used 4xx statuses.
- this meant they were considered 'client' errors (404, 403, etc) and were not re-attempted.
- the 'synthetic' http errors I was using to replicate socket connection errors and connection timeout errors used 4xx statuses.
- minor issue causing cramped multi-line messages in the notice logger.
4.8.0
Added
- Gitlab support.
- similar to addons hosted on Github, Gitlab addons must be using releases with custom assets (not the default ones).
- multi-toc support.
- the presence of multiple .toc files determines if an update is necessary when switching game tracks.
- a warning is issued if the suffix of a
.toc
file doesn't match theInterface Version
within it.- for example,
SomeAddon-Classic.toc
is using a20501
as it's interface version. - this may lead to false positives for the few addons that are named
SomeAddon-Classic
and use multiple toc files.
- for example,
- a warning is issued if there are multiple non-identical sets of toc data for the same game track.
- for example, an addon has
SomeAddon-Classic.toc
andSomeAddon-Vanilla.toc
(both valid), but-Vanilla.toc
data is not identical to-Classic.toc
.- in these cases the first in the group is used with '-Classic' having alphabetic priority over '-Vanilla', '-BCC' over '-TBC', etc.
- for example, an addon has
release.json
support for Github and Gitlab.- this file is generated by Bigwigs packager and includes extra information about files in a 'release'.
- a 'release' is a bundle of files, including the addon zip file, in Github and Gitlab attached to a revision tag.
- it is being used to find the supported game tracks for a release if they can't be guessed in any other fashion.
- this file is generated by Bigwigs packager and includes extra information about files in a 'release'.
Changed
- the 'source-id' column in the GUI has had it's max width removed.
- this is because Gitlab addons can have very long IDs.
- Github addons are no longer assumed to be for retail/mainline unless released prior to the release of Classic.
- Github addons will now do extra checks to determine game tracks for the latest release, on initial import and during the user-catalogue refresh.
- if absolutely no game tracks can be found we default to retail.
- this may be replaced in the future by actually downloading a release and inspecting it's contents
- if absolutely no game tracks can be found we default to retail.
- http downloads will no longer be re-attempted on client (4xx) errors, server (5xx) and connection errors only.
- this fixes the multi-second pause before an error while updating addons that have gone away.
Fixed
- a minor bug in translating an interface version (10100) to a game track ("classic").
- a bad value might have caused a stacktrace in the console
- stability improvements to the 'refresh user catalogue' feature.
- 404s, transient server errors and unhandled exceptions will no longer stop the update process.
4.8.0-alpha1
A pre-release of strongbox 4.8.0 with Gitlab support.
Please report any bugs or issues here: #303