Skip to content

v7.0.0 - Tags improvements and fixes + Filters revamp

Compare
Choose a tag to compare
@regorxxx regorxxx released this 28 Feb 19:48
· 215 commits to main since this release
7adba1a

There may be a SMP's bug on installation. See wiki.
REQUIRES SMP 1.6.1 (mod version attached has some improvements by marc23)

See full changelog here.

7.0.0 - 2024-02-28

Added

  • Tags: added 'RELATED' and 'UNRELATED' tags which may be used to specify tracks which are considered similar or not similar by the user. Matching the tag adds the given weight as absolute score to the total, i.e. it's not averaged with all weights. These special tags may use as values any combination of 'TITLE', 'ARTIST' or 'MUSICBRAINZ_TRACKID'. As expected, giving a title, would match any track with such title (from any artist). Giving an artist would match any track from such artist. And using the id value, would ensure only specific tracks are matched. This is something similar to the love/hate feature on Spotify (to make tracks appear or not on generated playlists), although in this case these special tags ensure you are only excluding/including specific tracks in relation to others, not globally. See the readme for more info.
  • Tags: to simplify the usage of 'RELATED' and 'UNRELATED' tags (see above), new entries at the customizable button (see Other tools\Relate selected tracks...) have been added. They allow to add the 'MUSICBRAINZ_TRACKID' values to 'RELATED' or 'UNRELATED' tags for the selected tracks or the last track used as reference in a few clicks.
  • Dynamic queries: added new dynamic queries for tracks within a date period relative to the reference track.
  • Dynamic queries: added 'None' entry to clean all dynamic queries. If the entry is not checked, then there is at least a dynamic query set (even if it's not shown on the menus).
  • Configuration: added COMPOSER to the list of global tags.
  • Configuration: added LOCALE LAST.FM to the list of global tags.
  • Configuration: added integrity checks to global user settings files, found at '[FOOBAR PROFILE FOLDER]\js_data\presets\global[...].json'. In particular queries are now check to ensure they are valid and will throw a popup at init otherwise. Other settings are check to ensure they contain valid values too.
  • Configuration: expanded user configurable file at '[FOOBAR PROFILE FOLDER]\js_data\presets\global\globSettings.json' with a new setting to output to console profiling logs at script init. They work globally. Disabled by default.
  • Descriptors: added Symphonic Rap style.
  • Toolbar: new settings for text (or icon) position: left, right (default), top and bottom. These settings mimic CUI options at the buttons bar.
  • Toolbar: new settings for text scale (now independent of button and icon scale).
  • Toolbar: new settings for icon scale (now independent of button and text scale).

Changed

  • Info: improved genre/style identification for substitutions and clusters.
  • Tags: improved queries created according to tags and weights when using 'Negative score for tags out of range'; as result processing time may be lower in some cases (if weight is not high enough to filter a track by such tag but negative cases would exclude it).
  • Cultural Regions: improvements to processing when using cultural filters in some cases.
  • Cache: changed cache structure to minimize file size (up to 50%) and loading time (up to 30%). Link cache will need to be rebuilt on update.
  • Configuration: changed the remove duplicates bias to prefer tracks with higher play-counts and positive feedback tag (love/hate).
  • Helpers: updated helpers.
  • Console: removed unnecessary logging in some cases.
  • Console: improved log file formatting on windows text editors which parse new lines only with CR+LF instead of LF.
  • UI: wrong parsing of png masks on unix systems (currently, it only affected the ListenBrainz icon when changing the font color).
  • Code cleanup.

Removed

Fixed

  • Scoring Method: fix to incorrect handling of (negative) values outside range for some methods ('NORMAL' and 'LOGISTIC').
  • Readmes: minor fix to 'search_by_distance_info.txt' file.
  • Info: minor fixes to reports provided by 'search_by_distance_info' button.
  • Tags: incorrect handling of single-value tags in some cases. Issue #22.
  • Tags: incorrect handling of empty tags in some cases.
  • Tags: incorrect graph distance of genre/style tags if there were zero values. A reference with no genre/style tags should fallback to WEIGHT method and compared tracks should report infinite distance when missing the tags in GRAPH method. Issue #27.
  • Tags: incorrect scoring of genre/style tags when they were put on custom tags. Issue #25.
  • Tags: incorrect handling of genre/style tags not present on the graph for the reference track. Issue #26.
  • Toolbar: buttons' size not restored back to normal height after disabling 'Full size buttons' without reloading the panel.
  • Internal errors with set.add().
  • Crash when using a probability of picking lower than 100 in some cases.
  • Minor fixes.