Releases: ogri-la/strongbox
Releases · ogri-la/strongbox
4.7.0
Added
- expanding rows for grouped addons.
- clicking the arrow at the far left of the screen will 'expand' the addon and display the set of grouped addons.
- these addons were bundled together with the addon that was installed but are otherwise hidden behind the 'primary' addon.
- the 'primary' addon is just a best-guess at which the main addon of the group is.
- actions like 'ignore', 'pin', 'uninstall' etc can't be performed against these grouped addons.
- columns in the GUI can now be toggled on and off and reset back to their defaults.
- these preferences are preserved between application restarts.
- new columns 'source-id', 'tags', a combined 'version' column, 'browse local files' and friendly 'created' and 'updated' columns.
- handling for hosts that are refusing connections rather than accepting connections but then timing out.
- happened with Tukui the other day.
- most http requests now make two more attempts to download html/json before giving up.
- curseforge is a bit flaky when making bursts of requests in parallel and we're hitting the 5sec timeout more often.
Changed
- status button now has 'ignored' (empty circle) and 'pinned' (filled circle) icons instead of nothing and a tick respectively.
- connection timeouts are now reduced from 8sec to 5sec.
- minor,
File -> Export Github addon list
renamedFile -> Export the user-catalogue
.
Fixed
- ignored addons had an incorrect 'updated' date.
- previously only visible on the addon detail page, a dummy 'polyfilled' date of 2001-01-01 was being used.
- context menu not refreshed after performing an action and then immediately right clicking the addon again.
- for example, ignoring an addon and then right clicking you would see the 'ignore' option still available.
- connection timeout handling (introduced
4.3.0
) has never worked outside of test conditions.- it's because certain configuration is ignored if the more advanced
RequestConfig
is present.
- it's because certain configuration is ignored if the more advanced
Removed
- the inability to resize certain columns. All columns can be resized now, although some still have maximum widths.
4.6.0
Added
- a
--version
parameter that prints the name of the app and it's current version. - an 'emergency' catalogue that strongbox can use if the remote catalogue is not available.
- it's a bz2 compressed
full-catalogue.json
that was available at build time. - the trade-offs are it's older, makes strongbox binary a little larger and switching catalogues a little slower.
- it's a bz2 compressed
Changed
- bumped dependencies
- slight increase in performance loading JSON with a newer version of the
data.json
library.
- slight increase in performance loading JSON with a newer version of the
- searching for addons is now much much faster.
- matching search input against an addon has been improved by two orders of magnitude.
- searching now searches within the addon name rather than from the beginning of the name.
- catalogue is no longer validated when reading the catalogue JSON file.
- it was the major cause of slow catalogue loads, switches between catalogues and (probably) overly cautious.
- a well-formed but invalid catalogue would cause a freeze printing the validation error to the console.
- addon maps no longer have their keys ordered on reading.
- a minor cause of slow catalogue loading/switching and only necessary when creating catalogues.
- gui, context menu options disabled when no addons selected.
Fixed
- case where selected addons persist across addon directory changes.
- warning on startup about
cat
already refering toclojure.core/cat
. - case where a wowinterface addon pending approval couldn't be downloaded because of a missing query parameter.
- regression where a bad addon downloaded in parallel would still be passed to the 'install addon' operation.
- typo causing a failure to properly validate the 'created-date' in the catalogue.
- this affected both reading and writing catalogues however catalogues are no longer validated on read.
- attempting to check an addon from an unknown host would cause an unhelpful error.
- attempting to install an addon with an unknown game track would cause an error.
- installing an addon in certain circumstances assumed a successful check for updates had been made.
Removed
- the
--profile
command line option and the scaffolding around integrating it with the tests and test coverage.
4.5.0
Added
- better error handling when no network connection is available.
- a warning when the update available is from a different addon host.
- for example, an addon is removed from curseforge and now receives updates on wowinterface exclusively.
Changed
- addons that fail to match against the catalogue but have matched against a catalogue previously can now be updated.
- for example, addons in these cases are now updateable:
- an addon doesn't get updates any more but still works and is eventually removed from the 'short' catalogue.
- you decide to go curseforge-only and have that one addon from wowinterface you can't live without (or vice-versa)
- for example, addons in these cases are now updateable:
4.4.1
Changed
- status bar catalogue count is now localised.
- the 404 error displayed from Curseforge is now more helpful than simply 'not found'.
Fixed
- fixed bug preventing installation of addons from the search pane.
- sorting by 'downloads' in search now works as expected.
4.4.0
Added
- the operations 'check for update' and 'download addon' now run in parallel.
- operations run
n
at a time, wheren
is the number of cores your machine has. - the 'install addon' operation still happens serially to preserve mutual dependency checking.
- operations run
- a progress bar that (temporarily) replaces the status button when parallel operations are happening.
Changed
- installing a specific addon version no longer blocks the GUI while the addon is downloaded and installed.
- cache duration of textual files is now 1hr rather than 24hrs.
- a 'hard refresh' to clear the cache and re-fetch addon details is still possible using alt-F5.
- zip files are still stored indefinitely until manually cleared or the 'Remove addon zip after installation' preference is set.
Fixed
- fetching strongbox release data while over (GitHub) quota no longer results in an infinite log loop.
Removed
- row background colour for 'unsteady' addons (updating/downloading/being modified) has been removed.
- it's too frenetic when multiple addons are doing things in parallel.
4.3.0
Added
- addons from Curseforge, wowinterface.com, Tukui and Github can now be imported from URLs rather than the catalogue.
File
->Import addon
- imported addons are added to the 'user-catalogue' and available for installation regardless of selected catalogue.
- the user-catalogue lives here:
~/.config/strongbox/user-catalogue
- the user-catalogue lives here:
- Github authentication using Github Personal Access Tokens
- if the environment variable
GITHUB_TOKEN
is present, it is used to authenticate with Github for API calls. - remaining number of API calls available can be seen in the strongbox log tab.
- if the environment variable
Changed
Import addon from Github
from theFile
menu has been renamedImport addon
and is now the first entry.Catalogue
->Refresh user catalogue
will now refresh addons in the user-catalogue from all addon hosts.- for non-Github addons, updated addon data is pulled from the currently selected catalogue.
- HTTP requests now have an 8s timeout.
- if it takes longer than 8s to make a connection or receive data, then the request is cancelled and an error logged.
- search, very minor, but trailing whitespace in a search term is now ignored.
Fixed
- HTTP "User-Agent" is now set correctly.
- I don't think it's ever been working correctly. Total failure.
- search results are now updated when the catalogue is switched and the search term, if any, is re-searched for.
- Curseforge API has capped the number of results per-request to a max of 50
4.2.0
Added
- 'report' level log messages.
- used to break up and give context to repetitive blocks of log messages.
- just 'refresh' for now, logged whenever the list of addons are re-read.
- warnings and errors generated while installing an addon are now captured and displayed in a dialog box.
- partially addresses points raised in #231
- a warning when 'strict' is unticked and an update is available for a mismatched game track.
- for example, a 'classic' release is available for an addon but the addon directory is set to 'retail'.
- an 'install' button on the search pane to install addons individually.
- ... which is probably what most of us want most of the time.
- a 'split' button that brings up the notice logger at the highest current log level.
- I missed the old split pane layout and decided the "(warnings)" suffix in the log tab title wasn't good enough
- it's yellow with warnings, red when errors.
- split doesn't persist between app restarts. If you want to see this let me know.
- another variation of the burning crusade abbreviation 'bcc' for the github game track guesser to look for.
- it seems to be gaining traction thanks to BigWigs packager but was non-existant a month or so ago.
Changed
- GUI now disables some actions when no addon directory is selected.
- the game track (retail, classic, classic-tbc) + version (1.2.3) is now used to determine if an addon is updateable.
- 'report' level log messages now appear in an addon's notice logger.
- used to break up and give context to repetitive blocks of log messages.
- tweaks to error/information dialog panes so messages are easier to read.
- asterisks
*
and hyphen-
for list bullets have been replaced with a round black dot•
- asterisks
- the 'downloads' column on the search tab are now formatted according to your locale.
- for me, this means long numbers are now comma separated.
- the 'updated' column on the search tab is now centred.
- the 'installed' and 'available' columns are now right aligned with ellipses appearing on the left when truncated.
- I'm 50/50 on this, let me know if you feel strongly one way or the other.
- an addon's status (green tick, yellow line, red cross, etc) is limited to just events since the last refresh.
- 'install' buttons in the search and addon detail panes are slightly less Weird looking.
Fixed
- a bug where refreshing the 'user' catalogue would throw an error if a repository no longer existed.
- a case where hitting 'update all' many times quickly could cause unexpected behaviour and errors.
- it will now issue a warning that addons are being updated.
Removed
- github addons will no longer have a
-classic
or-classic-tbc
suffix.- this was added to differentiate two releases using the same name and version but different game tracks.
- strongbox will mark affected addons as being updateable because the versions no longer match. The same version will be re-installed.
4.1.0
Added
- a 'welcome' screen for instances of strongbox with no addon directories selected.
- added
Classic (TBC)
to selectable game tracks and theStrict
checkbox to toggle between strictness - support for
Classic (TBC)
for wowinterface, curseforge, tukui and github. - github api now considers the name of the release when attempting to detect the game track of an asset.
- priority is now: asset name, release name and then any game tracks detected in .toc file
Changed
- replaced the 'any, prefer retail' and 'any, prefer classic' in the game track list with a 'strict' checkbox.
- 'any, prefer retail' is now just 'retail' and 'not strict'
- 'any, prefer classic' is now just 'classic' and 'not strict'
- see README for priorities
- the follow widgets and features are now disabled if no addon directory is selected (more to follow):
- the search tab
- the game track drop down
- the addon directory drop down
Fixed
- a bug in wowinterface catalogue generation.
- wowinterface.com changed a label from "Classic" to several other things and it broke classic support detection.
- I don't know how long this has been happening for.
4.0.0
Added
- an addon detail tab accessible by double clicking on either an installed addon or a search result.
- addon detail tabs can be closed.
- shortcut
ctrl-w
also closes an open tab except the installed, search and log tabs. - has a new option
browse local files
if addon is installed locally. - has its own menu of buttons to install/re-install, update, remove, pin and ignore.
- a 'raw data' widget with the fields used within the application.
- a 'releases' widget that lists all available releases with an install button.
- ' a 'grouped addons' widget that displays the other addons that came with this addon and a file browser link.
- a logging widget with per-addon logging and adjustable severity level.
- dedicated log tab.
- will display
(warnings)
or(errors)
if any warnings or errors present in log.
- will display
View
menu has a menu option for open addon detail tabs with an additionalclose all
button.- a column on the
installed
tab that shows the status of an addon.- a happy green tick if everything is ok.
- an unhappy red cross if the addon has errors.
- a stern yellow bar if the addon has warnings.
- an arrow if an update is available.
- single-clicking (rather than double-clicking) in this column takes you to the addon detail pane.
Changed
- console logging is now colour coded.
- console log line now excludes a number of fields including the machine's 'hostname'.
- many error messages have been truncated or made less verbose now they have that context built-in.
- switched from Travis CI to Circle CI.
- I can't package an
AppImage
from Circle CI however, so this is happening manually for now.
- I can't package an
- search pane, styling of the 'already installed' addons now shares the same styling as ignored addons.
Fixed
- looks like the the gap between the
File
menu labels and their submenus is now gone with an update to JavaFX 15.- this only affected some window managers (like mine).
- truncated 'source' column in the search results when in dark mode.
- fixed missing
strongbox.version
value from debug output when run as a binary.
Removed
- original Swing GUI
- the split window with the tab pane in one half and the notice logger in the other.