bliss Changelog

What's new in bliss 20240416

Apr 25, 2024
  • The <group> token - support for <tag field>
  • The <group> token is part of the file organisation rule. Used in a file organisation pattern, it creates a folder using a defined number of start characters of the specified field, and then groups child folders under that.
  • Some other, smaller fixes:
  • For ID3v2.2 tags, use the correct DISCNUMBER field ID when removing said fields.
  • On the untagged page, use the space better for the folder path and allow the folder path to be shown fully when clicked.

New in bliss 20240322 (Apr 2, 2024)

  • This release contains an important change to how tracks are grouped into albums - before, we used to separate albums with album or artist names that only differed in case. Now, we group those tracks together because we think it means less “clicking around”.
  • To make one thing clear: this grouping change does not alter how the actual metadata fields inside your music files are updated. It’s purely a user interface change in bliss; in effect making it more likely that tracks will be grouped into albums.

New in bliss 20240227 (Mar 11, 2024)

  • Fix-album:
  • A couple of bug fixes here:
  • Show fixes for problems that only affect a subset of files in an album.
  • When fixing problems for a subset of files, make sure only the files affected are changed.
  • Other improvements:
  • We’ve made some other improvements:
  • When watching files, make sure @Recently-Snapshot (QNAP) and #snapshot (Synology) folders are not sent through for processing.
  • Make sure the tag index and file info caches are cleared when clear and rescan is clicked.
  • Support silent upgrades on Synology.
  • On the fix-all page, if a compliance has no fixes don’t update the execution button.

New in bliss 20240123 (Jan 31, 2024)

  • During last month’s release pause we were assessed for a new, upgraded code signing certificate. We underwent a verification process, assessing the company and our build procedures before the certificate would be granted. I’m pleased to say the new certificate has been granted and integrated into our build process!
  • In addition to that, we’ve added a right-click context menu into the Windows app and fixed a couple of bugs on the Albums page.
  • Code signing certificates contain information that identifies an organisation and are inserted into an application, installer or similar to prove that the organisation created the application and the application code hasn’t been tampered with. The certificate can only be applied by the organisation because only that organisation has access to the private key with which the certificate is paired.
  • Last year, changes were made to code signing certificates which mandated private keys had to be stored in secure locations. They were no longer permitted to be simple files, in a file system like any other.
  • Thus, as well as applying for a new certificate we also had to work out how to store the private key in a manner that is conducive to automated builds of the software. The default is to use a hardware USB ‘dongle’ which must be plugged into the build machine, but this is limiting because it mandates where the build is run. Fortunately there are solutions in the cloud; essentially hired, secure locations to store the key. We chose Google KMS for this task.
  • Fortunately the issuing of the code signing certificate, which this time is an upgraded “EV” certificate, was handled efficiently by our assessors at Digicert and it wasn’t too long until the certificate was granted. Integration into our automated build system was also fairly straightforward; we chose Jsign to perform the actual signing of our installer.

New in bliss 20231212 (Dec 19, 2023)

  • In this release we’ve made improvements to bliss’s startup script for better interoperability on FreeBSD, and improved updating track numbers in MP4 files.

New in bliss 20231128 (Dec 5, 2023)

  • The STARTS WITH filter is a useful way of narrowing down the albums in your collection, to check that they are correctly organised and compliant with your rules.
  • bliss has a lot of users from all over the world and, naturally, some of those users have albums in a script containing accented (or diacritical) characters.
  • In the STARTS WITH filter, accented characters are also included in the set of permitted initial characters. For example, for “i”, albums starting with the characters “I”, “i”, “Í”, “Ȉ” and “Ḯ” (and others) would all show.
  • There was a bug in previous versions where, if the first character was such an accented character, it would be recognised and included in the album count, but not shown in the album list. Worse, subsequent albums would also not show.
  • This is now fixed.

New in bliss 20231114 (Nov 22, 2023)

  • In a previous release we fixed an issue relating to how track level fixes are executed. Before, in cases where there were multiple fixes for one track, we’d ignore those tracks because we weren’t sure which fix to execute. We resolved this bug by making bliss choose one of the suggestions, so we could achieve full automation. The suggestions are always pretty accurate and we require quite a high confidence of matching, so we aren’t concerned about doing this.
  • However, we introduced a bug in the wider platform which wasn’t passing through some data properly to make this decision.
  • Worse, we were actually swallowing the error and not logging it. This had the effect of making it look like the tag accuracy and missing tag rules were compliant, when actually they weren’t running.
  • So the fix for this problem has two dimensions:
  • We now show any error on the album page and mark the compliance as Unknown.
  • The underlying bug is fixed, so the data is passed to the tag accuracy and missing tag rules and the rules should assess normally.
  • We’ve also added automated tests to catch this if it occurs again.
  • This fix is in this new release, so users of the tag accuracy and missing tag rules should definitely install it!

New in bliss 20231103 (Nov 8, 2023)

  • Tag index improvements:
  • bliss’s tag index stores information about what tags each music file contains, with cross references. This makes it easy to look-up, for example, which files have the ALBUM_NAME “Giant Steps”.
  • We recently replaced the underlying database engine for the tag index. We noticed a few more improvements, which have been implemented in this release:
  • Make sure the Tags page and Tags panels for albums show all available tag fields, not just “indexed” ones.
  • Property format the output when the tag index is dumped (for debug archives).
  • Other improvements:
  • When assessing and fixing missing track-level fields, if there are multiple suggestions for a given field choose one of them, rather than none, when making automated fixes.
  • Make sure the logs are included in debug archives.
  • Update our macOS notarization tool.

New in bliss 20231017 (Oct 30, 2023)

  • This is a small release with a tiny fix to make sure log generation works correctly.

New in bliss 20230927 (Sep 27, 2023)

  • This week’s release concludes work on indexing performance. Using a low powered Synology NAS as a guide we’ve reduced the file scan and index time for a 2,000 album library from 2h40m to around 40m. Quite an improvement!

New in bliss 20230905 (Sep 14, 2023)

  • We are stricter about the fields we store in our “tag index”, avoiding storing overly lengthy fields (like lyrics).
  • We have changed the database we use to cache information like fingerprints and last modified times. We now use Xodus for this.
  • We’ve made the identifiers we use for files, tags and libraries much smaller.
  • We’ve reduced the number of lookups for information we make from the tag index - batching them together.
  • Parallelism across multiple databases (tag index, music model, activity stream) has been increased.

New in bliss 20230817 (Aug 17, 2023)

  • We’ve improved the fix-all and fix-album pages so the Execute button can’t be double clicked. “Success” or “Failure” also replace the “Execute” text when the process is completed.
  • Also we improved certain fix buttons which would appear cluttered before, and replaced the button title with a more readable summary of what a fix does.

New in bliss 20230705 (Jul 12, 2023)

  • Some improvements to error messages and the handling of automatic fixes.

New in bliss 20230620 (Jun 27, 2023)

  • Fix execution:
  • Last release we fixed a problem where, if an old, stale fix was executed in the bliss UI, bliss would look up the latest version of that fix and execute it. This meant any old data stored that affected how the fix ran would be refreshed and the latest information used.
  • But there was an additional problem. Sometimes, the album that the fix was executed on also contained stale data. From this release, we make sure we find the latest version of the album from our database, and then when the album is re-assessed following the fix that same latest album is used. This is particularly useful when executing file path changes.
  • New album filters:
  • There were a couple of problems with the Albums starts-with filters that were reported to us, so we’ve fixed them for this release.
  • The first is that for the numeric filters (for albums that start with a number), albums were being duplicated. We’ve fixed this.
  • The second was that albums starting with non-Latin word (not punctuation) characters were not faithfully shown. We’ve fixed this too with a new filter.
  • Other improvements:
  • After finding it difficult to diagnose a problem with changing art, we realised errors weren’t being faithfully forwarded in the change art page. We’ve fixed that, so errors are now shown in full.

New in bliss 20230606 (Jun 12, 2023)

  • Simpler compliance messages:
  • Some aspects of compliance, for example track names or numbers, are repeated multiple times for each album and each have their individual compliance assessment. For example, track three of an album may be correctly titled, while track nine is incorrect.
  • The compliance message for this on the album overview would be a little confused before; combining the compliant and non-compliant assessments:
  • Old confusing compliance message showing titles were both accurate and inaccurate.
  • In a constrained view like this, we aim to provide only the pertinent information you need to decide what your next steps are; thus, we decided to remove the information about accurate tags, and only show Inaccurate track name. This makes the entry easier to read. You can easily see that other titles are compliant in the album page.
  • “Stale fixes”:
  • In various places in bliss it’s possible to see a list of fixes and click each one. Typically, after a fix is executed, potentially changing something in an album, the album is then re-assessed, which creates new fixes.
  • For example, an album may be marked as having a non-compliant file path and a missing GENRE field.
  • If the first fix is executed, changing the file paths, the second fix to update the GENRE field may fail, because bliss’s old record of the file paths is now obsolete.
  • To fix this, we’ve changed how this works so that bliss makes an attempt to always execute the latest version of a given fix. In the example, the GENRE will still be missing, so when assessment runs after the file paths have changed a new GENRE fix is generated, and even if the old fix is executed, bliss finds the latest fix and executes that instead.
  • Other improvements:
  • We’ve also added a fix that meant the albums list couldn’t be navigated when the “starts with” filter was being used.

New in bliss 20230511 (May 19, 2023)

  • This week’s release adds improved support for ID3 COMM and TXXX fields.

New in bliss 20230425 (May 5, 2023)

  • Back/forward buttons for the Windows app:
  • The bliss Windows app is built using a technology called Electron. This provides a way of starting the standard bliss program and showing the standard Web UI in a pop-up app.
  • However, this means other features common in a browser, like the back and forward button, are missing. This release adds those buttons to make navigation easier.
  • Further improvements:
  • Allow compliant alternative art to be fetched when just the min size rule is enabled; not the missing art rule.
  • Show file path fixes in the Inbox and the fix-album dialog correctly.
  • Fix QNAP installs due to QNAP’s outdated root certificates.
  • If bliss is restarted immediately prior to rules being changed and a new scan, ensure old lookup results are flushed.
  • When unlinking all releases ensure that is remembered for the next rescan.

New in bliss 20230412 (Apr 18, 2023)

  • We’ve also fixed a bug when albums would be repeated in the starts-with filter.

New in bliss 20230328 (Apr 5, 2023)

  • Extra work into improving parallelism to increase throughput.
  • Make sure the entire album list is shown when a starts-with filter is used and the first character changes capitalisation halfway through the list.

New in bliss 20230307 (Mar 14, 2023)

  • More improvements:
  • Some other improvements in this release are:
  • When merging albums, flush linked releases so that the newly merged-in tracks get matched.
  • When merging albums with no ALBUM_ARTIST and differing ARTISTs, re-use existing track grouping code used elsewhere to ensure both sets of tracks are retained.

New in bliss 20230131 (Feb 18, 2023)

  • This release contains a few more improvements to this page:
  • Avoid multiple operations for the same album stopping each other from working.
  • Show images for missing art and larger art correctly.
  • Make sure the spinner remains on screen until the entire process completes.

New in bliss 20230117 (Jan 27, 2023)

  • The new fix-all progress page:
  • The Inbox shows outstanding issues in your music library with suggested fixes. As music libraries can be large (and bliss users seem to have the largest 😉 ) it can be monotonous and slow to click every single fix. The “fix-all” procedure batches this into one click.
  • Before this build, all that would be shown during the fix-all process are the fixes in the Inbox that are queued for execution, and their eventual result grouped into one splurge of text. Error reporting was very cluttered to the extent it was difficult to see what was wrong when a batch fix failed. Also, it was difficult to see the progress; there was no overall feedback as to how far through the batch bliss had got.
  • The page is reached by clicking Fix all by type, select the types of fixes you want to make, then Fix all.
  • Initially the page shows the problems that will be fixed. Only when the Execute button is clicked do the fixes actually run.
  • The new page lays out information on every fix bliss attempts, and keeps information about the fix local to each fix. So, for example, if a given album requires its artwork to be shrunk, bliss will report success or failure, with an easy to find error message.
  • In addition, a progress bar shows progress through the batch.
  • We hope this will help improve visibility of problems that occurred during the fix-all process, and better communicate progress.
  • This is a new feature, so let us know your experiences of the new page!
  • More improvements for the artwork rules when the missing art rule is disabled:
  • We also continued, and largely rounded off, our improvements to the cover art rule when the missing cover art rule is disabled.
  • Recall that, previously, bliss required the missing art rule to be enabled for the resolution, data size and image format rules to work.
  • We’ve now completed the tasks that mean those rules can run without the missing rule being enabled. If the missing art rule is not enabled, bliss looks for embedded art and any cover or folder image files in the same folder as the album, and then works on them.
  • For example, if you just enable the minimum resolution rule for 300x300, bliss will check if any artwork in the aformentioned default locations exist, and then check those artworks are above 300x300 if they do exist. If the artwork does not exist, bliss doesn’t apply the rule.
  • This approach applies to the resolution (minimum and maximum sizes), data size and image format rules.
  • If you do have the missing artwork rule enabled, then bliss works as before; using the locations defined there to look for art.

New in bliss 20220906 (Sep 13, 2022)

  • In this release, we ‘bubble’ up the underlying issue when failing to load embedded artwork from a music file. This can happen for a number of reasons; the file is no longer accessible (e.g. it’s on a withdrawn network location), the file has been moved, the file has become corrupted, or the artwork no longer exists in the file (and more reasons). Either way, we now highlight the actual problem we faced in loading the file.
  • In case you were wondering why we’ve released such a small release, it’s all about the cadence. We believe in the discipline of the regular release.

New in bliss 20220826 (Sep 6, 2022)

  • This release adds support for changing album art, even when the missing art rule is disabled. There are also some useful speed improvements for the Inbox and fixes for licensing.
  • More album art improvements:
  • A long term weakness of bliss has been that, if the missing album art rule was disabled, bliss would not change existing album art. The missing art rule defines the locations where art should be. Until now, if the rule was disabled and therefore no locations specified, bliss didn’t know where to store the artwork when it was changed.
  • We’ve now improved this, so that when art is changed we overwrite any existing artwork locations. For example, if you have a cover.jpg file in an album folder and embedded art, bliss will store the art in all the already-existing locations.
  • This means you don’t need the missing artwork rule to be enabled to change artwork.
  • In addition we’ve improved some of the messages displayed when artwork is too large to assess (we avoid assessing ultra large artwork in case it causes instability in bliss because of the memory requirements.)
  • Other improvements
  • We’ve also been working on:
  • Avoiding a problem when adding a renewal licence to an existing finite fixes licence.
  • We take care not to send duplicate metadata queries when showing multiple problems for the same album in the Inbox.

New in bliss 20220705 (Jul 21, 2022)

  • This release includes improvements for the album art rule, the Inbox, more performance improvements and support for Java 16 and later on Linux.
  • Album art rule improvements:
  • We’ve made a few improvements to the album art rule…
  • We now support CMYK JPEGs. CMYK images are a different way of storing colour information in JPEG images… different, that is, to the far more common RGB. Although they are rare, they did come up every now and then. We weren’t supporting these images before, but we do now.
  • One other thing that we occasionally get emails about is where very large images are embedded inside music files. This can cause different problems: some music players just won’t work with large images, and they make files and music libraries much larger in terms of storage requirement. We now have a default to shrink very large images (by default: those over 4MB).
  • Inbox improvements:
  • We’ve made the fix-all process a bit better. In some cases, fix-all wasn’t picking up all the problems that needed to be fixed - this is now fixed. In addition, there was sometimes a lag between clicking a category of problem to fix, and the Fix button becoming enabled. This is now also fixed - the problem was some eager evaluation of code that should be performed lazily.
  • More laziness:
  • I’ve touched on this before, but there are more parts in the app that we’ve made “lazy” - i.e. only doing things when necessary.
  • On each album detail page, the display of fix buttons has been made lazy. Before, the decision as to which fix buttons to show depending on looking data up online. This blocked the page rendering. As some queries can take a long time, this was not what we wanted, so now the page displays and spinners show where fix buttons may appear.

New in bliss 20220531 (Jun 8, 2022)

  • This build contains a fix for the auto completion of ALBUM ARTIST feature.
  • We were using track ARTISTs to provide hints for what the ALBUM ARTIST should be. However, we inadvertently enabled this for the tag accuracy rule. This had the effect of, in most cases, always agreeing with the current calculated ALBUM ARTIST, making for a ‘false positive’. This meant generally inaccurate ALBUM ARTISTs would be ignored even if divergent data was found online.
  • In this release we’ve disabled that so it is only utilised for missing ALBUM ARTISTs.
  • In the same general area, we noticed an oversight during a recent refactoring for performance. When correcting YEAR values we strip new incoming data of the full month and day information to just provide the… year. However, with missing YEAR values we weren’t doing the same thing. That’s now fixed.

New in bliss 20220513 (May 13, 2022)

  • This build contains only the fix for the Synology startup issue.
  • The issue was that, somehow, the startup scripts became corrupted (in a sense). Windows and Linux have different ways of recording the end of a line in text files, such as startup scripts. Somehow, the original Linux style line endings were replaced with Windows ones in the Synology start scripts.
  • We’re not sure how this happened, but we’ve added some new constraints to our source control system to avoid it happening again.

New in bliss 20220503 (May 11, 2022)

  • Another couple of bug fixes in this release, affecting the Windows app and the album detail page.

New in bliss 20220419 (Apr 29, 2022)

  • Fixed:
  • When executing both an artwork fix and changing the album name via fix-all (the Inbox), don’t create duplicate stale albums with the old name.

New in bliss 20220329 (Apr 5, 2022)

  • Duplicate assessments:
  • We noticed that when clicking fixes on the album detail page (the one shown when you click an album name which shows all the tracks and compliance details for the album) the album would be re-assessed twice after the fix is made.
  • We fixed that - just one re-assessment is made now.
  • Other improvements:
  • There are a few other smaller things:
  • We no longer allow embedding of album art above a threshold (determined by the amount of memory bliss is running with). By default on most platforms that will be 4MB right now.
  • Support tracks without a TRACK title better when grouping into albums.
  • Similarly for tracks without an ARTIST or ALBUM ARTIST, grouping such tracks into albums when they share the album name and are in the same folder.
  • When there are duplicate files being renamed to the same file path, when this fails and on rollback make sure the file paths reflect the status quo.

New in bliss 20220301 (Mar 9, 2022)

  • The main improvement in this release is to “tag caching”.

New in bliss 20220217 (Feb 23, 2022)

  • We can read less data when fingerprinting:
  • Fingerprinting is performed any place we need a way of identifying music where just the existing tags and track durations do not give us all the information we might want. This can happen quite often with the tag accuracy rule, or really badly tagged music, so it is quite a frequent operation and it does have an impact.
  • In addition to this we’ve done some work to cache, in memory, any cover art that is being written to multiple places. Although we always cached this on the local drive before writing it, that’s still orders of magnitude slower than storing in memory. So the new change improves the speed of updating cover art.
  • Our final performance fixes are coming in the next release. Together with the next build’s fixes we’ve realised an approximate 100% speed improvement (i.e. the representative tests we are running now take half the time).
  • Box sets:
  • One challenge when matching local music collections to information online is differentiating when a given local album is an instance of an original, individual album (maybe acquired from the original CD) or the exact same album re-released as part of a boxset.
  • For example, if you have the original album Vs. the tracks are identical to this compilation re-release, which includes the same tracks - down to the same recordings, so track durations and audio fingerprints are the same. This means that bliss may match both releases.
  • While we’ve not changed the matching algorithms, we have changed how candidate data is sorted such that, for equal scores, the most common suggested value is now preferred. In the case above, because there are multiple versions of Vs., the title “Vs.” will be suggested more, and bliss will therefore choose that as the default recommended album name.
  • This just makes bliss’s default suggestion more likely to be correct, so it reduces the number of clicks.

New in bliss 20220201 (Feb 8, 2022)

  • Allow track number fields to be removed from ID3v2.2 tags from the Tags panel.

New in bliss 20220118 (Jan 25, 2022)

  • Avoided overly aggressive grouping of compilation albums with the same title.
  • When ignoring albums, handle albums with quote marks in the title.
  • When adding ID3v1 or ID3v2 tags, update the cache of the tag.
  • On Windows, still scan folders which start with a period “.”.
  • Extra error reporting on Synology.
  • The tracks list compliance panel should remove its non-compliant badge when all matters are fixed.
  • Don’t scan the “Home Videos” section of iTunes.

New in bliss 20211207 (Jan 4, 2022)

  • Filling in missing ALBUM ARTISTs:
  • One of our top featured ideas for some time has been the ability to automatically populate ALBUM ARTIST fields from existing [track] ARTIST fields, when the latter are consistent.
  • There are two commonly populated artist fields in a music file. ARTIST refers to the track artist for this track, i.e. it identifies the artist featured in this track. ALBUM ARTIST identifies the artist for the surrounding release/album/single/EP/compilation as a whole. For example, Annie Lennox may be identified as an ARTIST on a Now! compilation, but the ALBUM ARTIST would be more like Various Artists (or however else you want to identify the concept of a various-artists compilation).
  • This new feature allows ALBUM ARTIST to be populated, either using online information about the surrounding release, or from the existing tags.

New in bliss 20211124 (Dec 3, 2021)

  • A few weeks ago, I was brave in removing some code from bliss which performed “track matching” based on existing track names and positions.
  • What’s “track matching”? Basically it’s the code that matches a track in your library to our records online. We’ve improved this code on your server over time, and I thought I was now able to remove some fallback code in bliss which did a little more matching.
  • The cause of this issue was that we were relying much more heavily on the existing duration of a track to match to a track in our database. In some cases this duration can be reported incorrectly in a music file, and in others we just don’t have the duration information in our database. As a result, the track fails to pair to an example on our server, and thus we report there was no match.
  • We’re going to improve that code on the server, but in the short term I’ve re-instated the old fall-back code to:
  • Reduce the number of false positives and
  • Improve the chance of a suggestion to fix the track name (when it is incorrect) being found.
  • Other improvements:
  • If an unexpected problem occurs loading an MP4 file, don’t ignore all other files in that folder.
  • Make sure alternative art suggestions are shown in the Inbox.
  • We now log more details about certain problems when files are tagged.

New in bliss 20211109 (Nov 18, 2021)

  • ID3v1 support:
  • With regard to ID3v1 tags, and other tags that may not support specific fields you want to complete, there are three main improvements.
  • The first is that before, when checking existing fields for missing/incorrect values, we weren’t properly filtering out tags that didn’t support the field we wanted filling/correcting. We now filter out such tags.
  • The second is that when showing suggested fixes on the album detail page we weren’t inspecting as to whether the fixes were actually executable i.e. whether the tag is supported. We have changed this to provide a more descriptive message when the fix isn’t completable.
  • Finally, during fix-all we were blindly trying to set unsupported fields before. We now do not attempt to execute a fix that can’t be completed, which avoids errors being reported by the fix-all process.
  • DSM 6 and modern Java:
  • One for Synology users.
  • Recent versions of Java have mandated something called the Java Platform Module System (JPMS) which is a way of isolating different parts of an application. This has real benefits.
  • However, some of bliss’s dependencies are not written with JPMS in mind. This means we need to turn off JPMS, and we need to do it when bliss starts. The DSM 6 startup script was not implementing these switches (although DSM 7 was) which meant running modern Java versions on DSM 6 for bliss did not work.
  • We’ve now replicated the same switches for DSM 7, so things should work smoothly now.

New in bliss 20211027 (Nov 9, 2021)

  • We’ve improved some elements of file scanning in this release, and a minor although important fix to changing tag type.
  • The first fix involved converting tag types. When adding an ID3v1 tag, if there was an empty genre field in any pre-existing ID3v2 tag, we would encounter an error before. This is now fixed, effectively by ignoring any empty genre field.
  • The next fix is an optimisation: we weren’t properly “weighing” the size of tags inside our cache of tags when it came to images inside FLAC files. This meant the size of the file inside memory was misreported and also meant the cache worked less efficiently. Now, we know better when to expire tags from the cache without over-using memory.
  • We’ve also fixed a rare bug where the file format for a music file isn’t correctly identified. We now handle and report this better.

New in bliss 20211012 (Oct 26, 2021)

  • First, we’ve removed some legacy code which attempted to match tracks based on their name. When there were duplicate track names this sometimes led to false positive attributions, which meant the incorrect track number, for example, could be applied.
  • Over time, we’ve shifted responsibility for attributions (linking your local tracks with tracks in our database) to our metadata server. We now trust this fully; it has more sophisticated matching code.
  • Similarly, we have removed the ability of bliss to match on track number when it’s not the track number that is being assessed. This also led to false positives when selecting alternative track titles. For example, if two tracks track 1 and track 2 both had track numbers of 1, sometimes track 2 would be marked as inaccurate, and would be suggested to be track 1. Again, we now trust the metadata server on this.
  • The next area we’ve improved is where an album features tracks that aren’t recorded in our own database. Sometimes these are mistakes or inaccuracies in your own library, and sometimes it can be incomplete data in your database. Now, when this occurs we show a more specific message: This track appears extraneous to the album.
  • Finally, under the covers we now include all rulesets, including ignore rulesets, in debug archives.

New in bliss 20210928 (Oct 8, 2021)

  • There are two main improvements to track name and position assessments in this release. Both affect the tag accuracy and missing tag rules.
  • The first is that we now use fingerprint lookups in preference to tag based lookups if the fingerprint lookup result is more confident.
  • Before, if a tag based (i.e. using the current tags) lookup returned the same release as a fingerprint lookup then only the tag based lookup confidence score was considered. This particularly affected track name/position lookups, because those track names themselves are sometimes used to score the confidence of a match. That means a track name that needs fixing would perversely lower the score for a release, making the correct release less likely to be used!
  • The second improvement is that tracks without titles are now sent in the lookup.
  • Before, any track that was missing either a track name or a title would be ignored, and not sent. Even though the track name is missing, information about the duration of the track can still be useful in recognising the release and matching the track, so that alternative track names can be suggested.

New in bliss 20210903 (Sep 15, 2021)

  • Confused This release fixes a couple of problems around the new “ignore compliance” feature, and an issue in the file path rule. We also improved the reporting of errors when updating tags.
  • There was also a problem that occurred non-deterministically when selecting the rules for an album. This has also now been fixed.
  • Further fixes:
  • Update our record of where the cover art is stored when music file paths change.
  • Show the full error when we fail to update tags.

New in bliss 20210727 (Jul 27, 2021)

  • The bug fixed in this release concerns compilations. If a compilation album was marked as a compilation and the first file scanned in such a folder was missing an ALBUM_ARTIST field while at least one other track in the same folder with the same album name had one, this would have the effect of including all previous scanned files into the album!
  • Generally speaking this is low in terms of probability of happening, but high in terms of impact when it does happen. So I took the decision to release this fix as soon as the bug was reported.
  • As ever, all subsequent releases will include this fix.

New in bliss 20210719 (Jul 21, 2021)

  • A Synology package repository:
  • The release of DSM 7 has meant a bit of work in updating the bliss Synology package. After the basics of DSM 7 support were completed (and we fixed a bug caused by a post-release candidate change) we realised we’d have to update our download pages to offer both Synology versions, because the versions for DSM 7 and pre-DSM 7 are incompatible.
  • Rather than adding a second download link, we decided to take the time to create a proper Synology package repository, at last. This means, instead of installing “Manually” in Package Center, you can add the package repository and install from within the Package Center app.
  • We’ve updated the Synology installation instructions to take this into account. Users who are already using the SPK should migrate to using the package repository instead - DSM should be “clever” enough to recognise when the version number has updated, and offer the download.
  • Other improvements
  • We’ve also made some other improvements, mostly around performance:
  • Optimise the amount of memory consumed when processing artwork - avoiding duplication of the same artworks.
  • Capture all errors when assessing albums and report them.
  • Improve the Electron app startup on Windows to cope with potential very slow starts.

New in bliss 20210608 (Jun 16, 2021)

  • This is a small release with another bit of work taking us toward “ignore compliance”. There’s also some improvement to file notification listening and the way rules are executed.

New in bliss 20210526 (Jun 3, 2021)

  • This release includes the first work toward “ignore compliance”. There are also improvements to memory use, album grouping, display of current artwork and the cover art rule.
  • One of the most interesting changes in this new release is bliss’s new support for rulesets. It is now possible to create extra settings files which are coded to work for certain albums. This allows variance of settings on a per-album basis. “Ignoring compliance” is a special case of this.
  • There are some more, smaller improvements:
  • When loading MP3 files, use the tag cache more efficiently by not storing duplicate tags in memory.
  • Show all albums when the titles only differ by capitalisation.
  • Make sure the “Rescanning” message disappears.
  • For albums with the same name, be smarter about how the albums are split, using the location of files to hint towards splitting by artist.
  • Don’t double charge when changing art on the change art page.
  • Don’t embed the same artwork multiple times in MP4s.
  • Retain all compliance assessments when only a subset are remediated.

New in bliss 20210504 (May 12, 2021)

  • Allow setting ID3v1 fields when the capitalisation does not match the prescribed ID3 standard.
  • Don’t attempt to set ALBUMARTIST on ID3v1 tags.
  • Add “Folk” to the genre tree.
  • Don’t allow albums to disappear from a per-artist album list.
  • Don’t switch from Tags <-> Compliance on the album detail page when editing album details.
  • Enable fix-all for the genre consolidation rule.
  • Enable fix-all for the artist alias rule.

New in bliss 20210420 (Apr 28, 2021)

  • New Windows app:
  • We introduced the new Windows app as a beta a couple of months ago.
  • The new app is just the same as the old Web based UI, with the same user experience. However, now the app loads in a standard desktop window rather than the browser:
  • The Windows app:
  • This also means you can find and pin the app to the Task bar.
  • The old daemon style app is still available and always will be (it’s the basis for running bliss as a Service). In the Start Menu, under the bliss program group, click Start bliss (in background) to start it. As before, bliss will pop up a browser (assuming that setting was enabled).
  • The old option to start bliss in the background
  • Other improvements:
  • If an MP3 file has both ID3v1 and ID3v2 tags, a failure to write to one of those shouldn’t stop the other being written. When such a failure occurs, remove the old value.
  • During automated fixing, only re-assess rules for which there has been a fix executed.
  • In the duplicates rule, re-use any cached fingerprint we have.
  • Make sure tracks from different folders are included in the same album when “Various” is inferred.

New in bliss 20210316 (Mar 25, 2021)

  • UI improvements:
  • Don’t allow compliance state filter counts to get out of sync.
  • Make sure “Rescanning” message disappears upon rescan when there are no changes to rescan.
  • Make sure album count updates after rescan.
  • Rules:
  • Don’t fail silently when setting genre on an ID3v1 tag to something that isn’t a prescribed ID3v1 genre.
  • If missing AND accuracy rules are enabled, make sure missing fields are processed as non-compliant.
  • Other:
  • When changing settings, also scan the file system.
  • Improve the Electron launcher.
  • Make sure re-assessment of album occurs after changing name/artist name.

New in bliss 20210304 (Mar 11, 2021)

  • UI improvements:
  • Show spinner on rescan button on album detail page.
  • Show in-progress compliance when an album is being rescanned on the album detail page.
  • Make more descriptions appear in the fixed-list on the Inbox.
  • If the music library is not present, or present but empty after previously being scanned, show a help message to get it reconnected.
  • File scanning:
  • Don’t leave file handles open on MP4 files after they’ve been scanned.
  • Clear and rescan should ignore problems in the old database before switching to the fresh one.
  • Improvements to rules:
  • Allow the “Trimmed of whitespace” rule to be executed via fix-all and fix-album.
  • Better title for the group track fix for “Trimmed of whitespace”.
  • Canonical artist queries are cached.
  • Allow single embedded artwork rule to work automatically.
  • Make sure backups can be created for embedded art when the single embedded artwork rule is enabled.
  • Don’t overwrite extant art when filling in missing art.

New in bliss 20210209 (Feb 15, 2021)

  • The new Windows app doesn’t really change the UI; it just changes how bliss is launched.
  • Don’t create duplicate music files when the backup rule is enabled and image files are missing… and those image files are automatically fixed.
  • Don’t scan Windows recycle bin folders.
  • Don’t have distinct change art alternatives, from duplicate sources, for different image locations (e.g. embedded / image file).

New in bliss 20210129 (Jan 30, 2021)

  • Certificates and incompetency:
  • It’s on my (Dan’s) shoulders.
  • A few years ago, we decided to adopt HTTPS for querying musical metadata and cover art. This is to ensure privacy; while no sensitive data is exchanged, the principle that no-one should be able to monitor your Internet activity is important.
  • We used Let’s Encrypt to generate the certificates. However, we have to support older versions of Java which don’t “trust” Let’s Encrypt certificates, so we also needed to hardcode the Let’s Encrypt certificate into bliss.
  • The trouble is, I (Dan) hardcoded the wrong certificate, an “intermediate” certificate which has since been replaced. This expires tonight, and it just so happens we discovered this in the last week.
  • We’ve now properly encoded the required certificates and will institute some process to make sure this doesn’t happen again.
  • To re-iterate: bliss versions older than this release will stop being able to query metadata from midnight tonight (GMT). If you do not have a bliss update licence please ask us at [email protected] for a temporary one so you can upgrade.
  • A workaround:
  • There is a workaround if you want to stay on the current version and you are happy to use HTTP for metadata querying (as above - no sensitive data is exchanged, only a subset of information about your music files).
  • More improvements:
  • We’ve also got a few other improvements in this build:
  • Be tolerant of track numbers ending with periods.
  • … but also be noisy when a track number is tagged that is invalid.
  • Cope with exceptions in custom rules better.

New in bliss 20210119 (Jan 28, 2021)

  • DSM 7:
  • bliss will now run on DSM 7. However, as DSM 7 is not fully released, we’re not making it that easily available yet. Instead, you can directly download the bliss version for DSM 7 at the following URL:
  • https://www.blisshq.com/downloads/bliss-20210119-DSM7.spk
  • There are pre-requisites for DSM 7 operation:
  • You need to install Java. There is no longer an official Java package, so you should install an alternative. See the previous announcement for a suggestion.
  • You must grant bliss access to your music folder.
  • You’ll have to re-install your licence. If you can’t find it, send us an email to [email protected]
  • Oh, and we now support the Geminilake architecture for Synology.
  • We’ve made some more improvements:
  • DSF files over 2GB can now be written.
  • Improved activity logging for assessments.
  • Reduce amount of work when resizing artwork.
  • Don’t retry fixes that failed during “fix-album”.
  • Never try to move directories in the folder from which music files have been moved.
  • When running automatic fixing, re-assess before making further fixes after all fixes from a particular rule have been executed.
  • Dispose of file handles in backup rule.
  • Updated the code signing certificate.

New in bliss 20201118 (Nov 25, 2020)

  • We’ve made some more improvements:
  • Handle non-Latin characters in upper/lower case rules.
  • Expose image corruption errors.
  • When switching to listening mode, enable the file watcher.
  • Don’t re-initialise music libraries when the library folders haven’t changed.
  • Fix the show more button.
  • The show more overlay should pass down button presses to the buttons below.

New in bliss 20201026 (Oct 30, 2020)

  • The licence thank-you popup now shows when a licence is entered in the “run out of fixes” popup.
  • Don’t cancel file listening when a new sub-folder is added to the music library.
  • When creating working files for artwork shrinking, don’t create names over 255 characters.
  • Ensure we always charge for chargeable automatic remediation.
  • Don’t perform eager metadata lookups in the Inbox when the fix-all checkboxes are clicked.

New in bliss 20201013 (Oct 21, 2020)

  • If album or artist names are changed automatically as a result of a rescan (e.g. if linked releases are changed and Rescan pressed) then redirect the album page to the new URL.
  • When running fix-all from the Inbox, group and execute all fixes of the same type before rescanning (e.g. fix all capitalisation issues, then rescan).
  • When fixing an album from the albums list, remember any file path changes which occur automatically for subsequent fixes.
  • Make sure in-app update works on macOS.
  • When an album has explicit linked releases, and a rescan is forced, don’t perform two identical tag and fingerprint queries.

New in bliss 20200916 (Sep 23, 2020)

  • Missing and accuracy settings:
  • In the tag accuracy and missing tag rules, there was a bug that, if a field was chosen for both the missing and accuracy rules, it was impossible to add a field to only the missing rule. We’ve fixed that so you now have complete control over which fields are assessed for accuracy and presence.
  • Scanning missing albums:
  • When bliss rescans the music library we made sure that any old albums that bliss had a record of, which now do not appear in the library, are resolved. They are marked as having Unknown compliance, and when you click on the album you should have the option to remove the album from bliss’s memory.
  • Related to this, we found a case where the album detail page isn’t shown properly if a file is missing in an album; that’s now handled and the album page should be displayed.
  • File organisation rule and “zero” values:
  • The file organisation rule’s <tracknumber> and <discnumber> tokens had a problem when these were set to the value of 0 (zero). When this occurred, bliss would insert the maximum possible value in those locations! We’ve changed this to simply use the current value (zero).
  • Logging the “Fix album” button:
  • We found that when clicking the Fix button for an album, the work that bliss did wasn’t recorded in the Activity log. We’ve fixed that so its operations are included.

New in bliss 20200903 (Sep 9, 2020)

  • A few more bug fixes in this week’s release, with a special concentration on the progress indicator (the Scanned n of m albums text).
  • The progress indicator should now update when settings are changed and a rescan occurs. Before, the progress indicator would show on rescans from the Albums page, but not after rules change.
  • To improve memory efficiency, we’ve consolidated the number of threads used by several places in the codebase that were capable of dropping hung HTTP calls for metadata. Reducing the number of threads in this way saves some memory which is important for more constrained NAS devices.
  • Around rules, we found a bug where if the missing information rule was enabled for album-level tags like genre or year, and an album had inconsistent values for those fields, we’d report the inconsistent values as “incorrect”. Now, we’ve changed that to only mark the missing values as… well… missing. The suggested value is the most common value in the other files.
  • We got a report that when using the top level Tags page, changing album or artist names would mean the album wasn’t rescanned after the change. We’ve fixed that.
  • Finally, we found that in certain rare circumstances data would not be committed to our database when some of the information about an album changed - we fixed that. This only became apparent if bliss was stopped immediately after the update.

New in bliss 20200903 (Sep 9, 2020)

  • A few more bug fixes in this week’s release, with a special concentration on the progress indicator (the Scanned n of m albums text).
  • The progress indicator should now update when settings are changed and a rescan occurs. Before, the progress indicator would show on rescans from the Albums page, but not after rules change.
  • To improve memory efficiency, we’ve consolidated the number of threads used by several places in the codebase that were capable of dropping hung HTTP calls for metadata. Reducing the number of threads in this way saves some memory which is important for more constrained NAS devices.
  • Around rules, we found a bug where if the missing information rule was enabled for album-level tags like genre or year, and an album had inconsistent values for those fields, we’d report the inconsistent values as “incorrect”. Now, we’ve changed that to only mark the missing values as… well… missing. The suggested value is the most common value in the other files.
  • We got a report that when using the top level Tags page, changing album or artist names would mean the album wasn’t rescanned after the change. We’ve fixed that.
  • Finally, we found that in certain rare circumstances data would not be committed to our database when some of the information about an album changed - we fixed that. This only became apparent if bliss was stopped immediately after the update.

New in bliss 20200821 (Aug 28, 2020)

  • This is a small update - with the only major change being an improvement to scanning which prevents the scan ending abruptly in certain circumstances.
  • Before, there were some classes of problem occurring when we were adding albums into the bliss database. These generally related to a more thorough interrogation of the files. For example, if we looked for a tag field that wasn’t supported, the error wasn’t properly handled and the entire scan could be aborted.
  • Instead, we now weather (almost) all problems and continue with the next album.

New in bliss 20200602 (Jun 8, 2020)

  • Scanning:
  • Make sure directory “streams” are closed after they are traversed (avoids leaving too many files open on Linux based installations).
  • Consolidate scanning onto the same thread to avoid backpressure building, if updating compliancy take a long time.
  • Drop albums when/if backpressure does occur, to make sure we keep the scan running.
  • Other stuff:
  • When a UNC path is used to specify the current music library, make sure current artwork can be displayed in the UI.

New in bliss 20200526 (May 29, 2020)

  • We had a number of reports of problems in the file scan since the past few releases; this release fixes those, plus includes a bunch of other improvements.
  • This release continues the work to port bliss’s scanning to a new, third party, framework. As we’ve been working on this, we have introduced a few problems here and there. In the last release, some users were seeing a lot of missing albums after a scan.
  • It turned out that the new code was “dropping” some of these albums. This new release fixes that.
  • Scanning:
  • We cope much better with folders with a lot of music files inside.
  • We now update the compliancy database with the new scanning code.
  • Outside of scanning improvements, there’s more:
  • Longer timeout when clicking “Fix” album to avoid long queries curtailing the execution of downstream fixes.
  • Don’t allow “delete duplicate” responses to be included in a fix-all batch, or in the grouped fixes on the album detail page.
  • Don’t continually re-open, and not close, the ui configuration file.
  • Close handles to directories when looking for cover art image files.
  • Don’t perform fingerprinting inside the database update thread.
  • Make the Inbox more efficient on startup when there are a lot of Activity records.

New in bliss 20200506 (May 12, 2020)

  • The key problems fixed in this release are:
  • The file watcher wasn’t being correctly started when the Listen for file changes checkbox was ticked, and applied.
  • The image format compliance filter wasn’t working.
  • When Delete and rescan album folders was clicked we were actually rescanning all folders!
  • When the file watcher notifies updated/deleted files, we now also cache information about the file which makes subsequent work faster.

New in bliss 20200423 (Apr 29, 2020)

  • The first important fix relates to rescanning albums from the album page. We introduced a bug a couple of versions ago where rescanning one album rescanned them all! That’s now fixed.
  • Also on the album detail page, we found that duplicate fixes weren’t appearing, so now made sure these show up.
  • Still on the album detail page, we had an unseen bug which would happen behind-the-scenes when an album was deleted. This has been fixed, although in most cases it caused no obvious problems.

New in bliss 20200331 (Apr 6, 2020)

  • After we found some fundamental issues with 20200311 we pulled it - this new release contains the original good stuff in 20200311, but with music file scanning fixed.
  • We moved to RxJava as a way of standardising the event processing in bliss. That is, the code that gets run when a music file has been changed, or it is being scanned.
  • This is great because it means we benefit from the reliability and performance of RxJava, which is a project used in many different apps. As importantly, it gives us a better foundation on which to improve usability and build new features.
  • Unfortunately, in our previous implementation, we had found a number of bugs (which we have now fixed). In many cases the fixes have also made the re-implementation even faster, which is great news.
  • These fixes took a bit longer than expected to release, but that’s because we wanted to do everything right - building up our automated regression testing so we make sure these particular issues don’t happen again, and also making sure all platforms were equally supported (we’ve noticed that platforms with different characteristics, e.g. slower embedded or NAS devices, can test event processing in different ways).

New in bliss 20200311 (Mar 17, 2020)

  • There are some small improvements on the surface of this release, but underneath a revolution is taking place in the way bliss reads and flows information through its platform…
  • The “bus” of information that runs through bliss, from file, to tag indexing, to storage of album and compliance details has always been hand-rolled. The “bus” is basically the code that opens a file, stores its contents, informs other bits of code about the file, and so on.
  • However, that codebase was showing its age; a number of improvements were needed, and the code was overly complicated.
  • Instead, I’ve selected a third party framework for constructing and building these flows (RxJava for those interested) which will hopefully improve reliability, performance and most importantly give a solid bedrock for future development.
  • This shouldn’t really be apparent; it’s all under the covers.
  • For now, it’s just the part of the codebase that opens files and reacts to changes in files, and then passes these changes to the tag indexer that has changed. In the future we’ll complete the porting of the platform to the entire platform.
  • New Inbox
  • There are some more improvements for the Inbox, and an important bug fix for memory use:
  • Display one line per group of duplicates.
  • If fix-all means an album is deleted, cope with that for the rest of the fixes.
  • Release memory when browsing away from the Inbox.
  • Change the “blank slate” messages (e.g. “You haven’t selected a music library yet”) to operate independently and react to platform events.
  • Make sure the overall fix count doesn’t show the placeholder amount when a blank slate is displaying.
  • Other stuff
  • And there’s more:
  • Don’t stop the file scan when we hit “unmappable” characters.
  • Make sure the activity re-entrant lock is always unlocked after use.

New in bliss 2020212 (Feb 17, 2020)

  • New Inbox:
  • If an album has been deleted during fix-all, don’t try to look it up for more fixes later.
  • Don’t listen for scroll events in the Inbox for rows we don’t care about regarding the back/forward button.
  • Change the page title to just “Inbox”.
  • If there are no problems, grey out the fix-all buttons.
  • Remove the “Recently fixed albums” collapse chevron.
  • Some work to make it less likely that “scanning” blank slates are not replaced with others such as “everything is fixed” too early.
  • Setup:
  • Avoid chat widget overlaying the “skip” link.
  • Disable double clicks on the “Scan library” button.
  • Other stuff:
  • A few other small improvements…
  • Add version numbers to the Mac build.
  • System tray “albums” shortcut should take you to “Albums” - changed “Inbox” to “Home”.
  • Discs should follow natural numeric ordering (rather than alphabetic ordering - 1, 10, 11, 2 etc).
  • Avoid out-of-memory errors when dumping the lookup data.
  • The new licence popup shows the correct icon for success.
  • The licence popup shows for errors, with details of the error.
  • The licence popup colours are now more in keeping with the rest of the app.
  • When manually updating, remove file metadata (e.g. last modified, size) between versions.

New in bliss 2020128 (Feb 4, 2020)

  • The New Inbox:
  • We’ve had an “Inbox” for a while - a list of all (well, most…) outstanding fixes, and with batch fix buttons.
  • We’ve had a lot of feedback about communicating what bliss will do, how much this will cost and what it has done already.
  • We’ve also had a lot of feedback about the existing Inbox, asking why can’t all fixes be run, rather than just those visible . There’s also the absence of fixing missing cover art on the existing Inbox.
  • We’ve put all this feedback into the new Inbox. I really hope you like the new UI but, as with everything in software, nothing’s ever finished! We’re ready for any more feedback you have on this.
  • New inbox:
  • (The new Inbox is also now the top-level home-page for the app - we thought this appropriate because it becomes the center of your fixing and auditing tasks).
  • Setup and live chat
  • We’ve made some other improvements in these areas:
  • The link to skip setup should be less prominent.
  • The chat widget has been moved to stop overlaying other elements.
  • Fixed the widget’s CSP violations in the browser.
  • The setup now consumes the full height of the browser, making it a bit more usable on less-tall displays.
  • There’s more:
  • The new license popup shows the correct icon for success.
  • The license popup shows for errors, with details of the error.
  • The license popup colors are now more in keeping with the rest of the app.
  • When manually updating, remove file metadata (e.g. last modified, size) between versions.

New in bliss 20200117 (Jan 22, 2020)

  • This is a bug-fix-and-small-UI-improvements kind-of release. There are some important fixes for users of the duplicate tracks rules, and as an experiment I’ve moved in-app chat into the main app.
  • In-app chat:
  • As an experiment I’ve moved a chat widget into the main app (before it was just on the setup page). When I’m running office hours you can chat to me (Dan!) live - the rest of the time there’s an option to send an email.
  • I thought this would be a good way of gathering more feedback about how people use bliss.
  • New inbox improvements:
  • The beta for the “New Inbox” continues - we’ve received lots of good feedback, and so in this release:
  • No more horizontal scrolling; problems with lots of alternative fixes are now a collapsible panel
  • Don’t show the old Inbox when the New Inbox is enabled.
  • Make sure Total fixes updates as categories are chosen.
  • The Fix all button has been renamed to make it clearer clicking it doesn’t immediately fix anything.
  • More improvements:
  • Other stuff includes:
  • The macOS version now ships with Java 11 and is fully notarized.
  • Don’t allow double clicks on Apply rules.
  • Add a rule is now clickable on narrow screens on the setup page, when rules are already added.
  • Make sure the setup page looks nice under 1024x width screen.
  • Show a better message when a renewal licence is installed without an existing licence.
  • Fixed LinearSeqLike duplicates problem.
  • Fixed provide URL/upload file features.
  • When assessing correctness for names that are wholly punctuation (e.g. Billie Eilish’s !!!!!!!) never ignore the punctuation.

New in bliss 20191220 (Jan 7, 2020)

  • A new setup page:
  • We’ve overhauled the first page you see when you first run bliss, in the next stage of improving the first-run user experience.
  • Before, the first page was the standard rules settings page. We’ve now changed this so you get a dedicated setup page with two steps: first, select the music library, second, set your rules.
  • Cover art improvements:
  • A few improvements in this release around cover art:
  • When embedded artwork should be removed, but is present, and a separate image file is missing, use the embedded art.
  • The Provide URL button is disabled until a URL is entered.
  • When the data size rule is enabled show the data size on the album detail and change artwork pages.
  • Artwork from previously fixed albums shouldn’t show on the change cover art page.
  • NAS improvements:
  • We implemented a few improvements specifically for NAS devices in this release:
  • Include package logs for Syno and QNAP in a debug archive.
  • On QNAP, don’t hang showing “Starting”.
  • Ignore @Recently-Snapshot folders on QNAP.
  • Other stuff:
  • Add icons next to each issue in the “Fix all” report.
  • Show the licence thank-you on the new Inbox.
  • When calculating size for the tag cache, include artwork.
  • When changing album name on album detail page make sure any subsequent updates to the album from compliance re-assessment (e.g. those from automated policies) are returned as the updates from the response.
  • On Windows, only memory map the indexes for MapDB. Allow memory mapping to be disabled altogether.
  • Only show distinct error messages when multiple errors are the same.
  • Don’t show a blank slate for the activity page.
  • Always log full exceptions to the browser.
  • “Fixed” shouldn’t show if the album is non-compliant.
  • Blank slate on the albums page should disappear when albums come in.
  • Fixed Windows batch file to discover its Java installation.

New in bliss 20191210 (Dec 17, 2019)

  • New Inbox beta:
  • The New Inbox is intended to replace the existing Inbox and will become bliss’s home page. It shows current available fixes for problems on the left, and a list of recently fixed albums on the right. In addition it also allows for the fixing of all problems via the Fix all button:
  • The new inbox:
  • If you’re an existing customer you should see an alert in the notification button to enable the Inbox. There’s a feedback form on the page - let us know how you get on!
  • Rules:
  • Some more improvements in this release:
  • Don’t allow genres to be suggested that are not in the permitted set if the incorrect genre and consolidate genre rules are enabled.
  • Avoid a race condition when the UI is updated after compliance updates.
  • Add some extra compliance icons to the compliance notification alerts.
  • If a track has a missing track number but the fix can’t be found, mark the track as non compliant anyway.
  • Handle different results in the change cover art and cover art alternatives page.
  • The <tag field> file path token should now look for fields with the parameter verbatim, falling back to converting to upper case with underscores.
  • The non-compliance notification “bell” should be updated after clear and rescan.
  • The non-compliant filters should be coloured red.
  • When a DISCNUMBER should be removed offer a fix.
  • Avoid cached open file mappings from taking too much memory.

New in bliss 20191129 (Nov 29, 2019)

  • A new notification box:
  • After some more rounds of usability testing it seemed one thing people found difficult was finding the albums which had problems.
  • I added a global (accessible from any page) notification icon with quick links to show albums with specific problems. Here’s an example:
  • Non-compliance notification:
  • A little red box appears to the top-right of the “bell” giving the current total number of non-compliant albums. Hopefully that makes it quick and easy to both see how many problems you currently have, and an easy way of getting to them so you can fix them!
  • The “New Inbox” - work in progress
  • I thought now would be a good time to show a screenshot of the “New Inbox”. The goals for the New Inbox (which will replace the existing Inbox) are:
  • Given non-compliance, what the user should do next.
  • Provide more control over the first-run use case.
  • Show the value that bliss is providing.
  • Show how many more fixes are required to fix everything.

New in bliss 20190913 (Sep 20, 2019)

  • Rules:
  • The missing art rule is now more specified, e.g. it will say Missing cover.jpg rather than Missing art.
  • The Enforce singular embedded art rule has been fixed - it wasn't correctly reading embedded art when the missing art rule was set to Ignore.
  • Fixed an issue converting to ID3v2.2 tags.
  • Don't split file path issues in the Inbox.
  • Improved the help text for custom file patterns.
  • Some more:
  • Show the artwork thumbnails from embedded artwork even when there's no separate image file.
  • Changing album information doesn't always reflect in the album detail page.
  • Internationalise the compliance and settings text (still only English supported!)
  • Fixed some rule descriptions - some blank, some with extraneous curly brackets.
  • Changed image rendering for Safari and some versions of Firefox to make image thumbnails less blocky.
  • Other stuff:
  • When calculating if the licence should work for the current release, take into account that the release itself may be much older than the current one.

New in bliss 20190709 (Jul 18, 2019)

  • Fixed the height of the album thumbnail when there is no thumbnail.
  • Make sure the album "Fix" button doesn't work when there are contradictory responses.

New in bliss 20190625 (Jun 26, 2019)

  • This release contains a fix for existing users and a couple of other improvements.
  • Last week's release had a nasty bug which affected existing users only. Between versions of bliss we store lookup results for cover art and metadata. This means bliss runs faster when you upgrade, because existing metadata lookups don't need to be re-run.
  • In the previous version we made a change to the way the data was stored, and we added a check so that existing data was purged and re-queried. Unfortunately this check didn't cover all cases, and many existing users found bliss was unable to correctly assess their albums as a result.
  • If you were affected by this you'd see all albums marked Unknown (meaning Unknown compliance). A workaround was possible - deleting all lookupService.* files from the data folder.
  • In this new version we should have covered all cases, so compliance assessments can start.
  • Other fixes
  • Some more stuff:
  • The fix button in the album overview is now aligned with the rescan button.
  • Album covers are not clipped at the top/bottom.

New in bliss 20190611 (Jun 18, 2019)

  • This release contains some significant refinements to the album list; we're trying to make the album overview list quicker to use and get stuff fixed, faster!
  • There are also a couple of bug fixes and improvements to how some album-level compliance assessments are displayed.
  • We've improved how compliance assessments are shown in this version. We're trying to tidy up the display so that the important information is shown straight away so working with the tool is faster. To reduce confusion, then, the first change is that compliant albums are just shown with a Compliant badge:
  • Compliant album
  • The problems in non-compliant albums are shown straight away (you'll notice there's no why? button anymore). In addition, an album-wide Fix button is offered, which fixes every issue in the album. If you want to fix individual items then this can be done from the album page by clicking the album name.
  • Sometimes the Fix button is greyed-out. This can happen if there is no way of deciding a deterministic fix, for example when two or more contradictory suggestions are offered. Examples of this is where there are multiple genres suggested for an album, or with the album track duplicates rule. The button should state why it could not be enabled in a tooltip.
  • Due to these changes we've also been able to fit in more columns of albums to improve the information density.

New in bliss 20190528 (Jun 4, 2019)

  • Support for SCA when paying by Stripe.
  • Don't split track level fixes on the albums page.
  • When adding a library and deleting the original, don't revert to a "blank slate" appearance.
  • Incide instructions inside the macOS DMG for running or installing.
  • Don't hang if files are removed from an untagged folder and the folder is refreshed.
  • Add a popover to "Fixed" to explain how it was fixed.
  • Don't show all fix all visible buttons for duplicates.
  • Fix the sometimes-blank activity page.
  • Fix Show tags not working on the Untagged page.
  • The tags view should show whitespace when not in editing more.

New in bliss 20190429 (May 21, 2019)

  • We're continuing to work on the first-use usability of the product. So for this release we've changed a bunch of things:
  • The folder browser is now a modal pop-up
  • The folder browser doesn't show hidden folders.
  • The next/previous buttons and album count now loads "live".
  • he missing art rule auto-populates when clicking the first-use shortcut button.
  • More improvements:
  • All but one entry in the linked releases panel can be unlinked.
  • Some fixes around removing albums.
  • Handle ID3v1 tags without an album or track name better.
  • Avoid repeated assessments of ID3v1 tags when the missing art rule is enabled.
  • Don't recreate old album names when fixing albums from the "Fix all visible" buttons.
  • Don't accept PDFs as images.

New in bliss 20190326 (Apr 2, 2019)

  • Some small usability improvements in this release are:
  • Rename the in field in the settings page to in folder.
  • Reword the description of the missing art rule to align with the "missing art" button on first-use.
  • Add tooltips to the next/previous buttons.
  • Make the missing art image consistent across all pages.
  • Other stuff includes:
  • Don't fail silently when adding a track number to an ID3v1 tag.
  • Align the layout better in the file organisation help.
  • Show a compliance filter for the singular embedded art rule.
  • Interpret custom field names correctly.
  • Show removal of embedded art in the Activity page.

New in bliss 20190313 (Mar 19, 2019)

  • We've added automation to the tag accuracy rules. We've also made the <tag field> file organisation token even more powerful, and fixed a bunch of other things.
  • Automation, automation, automation:
  • We've added automation to the tag accuracy rule and also the singular embedded artwork rule.
  • As with the other rules that have recently been automated, this has been made possible with the new automation framework, so the control looks the same:
  • Tag correction and singular embedded art automation
  • (Yet) more power to the <tag field> token
  • As hinted in the previous release, we've improved <tag field> token yet more so that now ID3 TXXX frames can be interrogated.
  • If a <tag field> token is parameterised with an arbitrary field name, for example:
  • <tag field:OWNER>
  • This means bliss will now look inside ID3 TXXX frames for a field with the description of OWNER. This means you could now have a user defined TXXX frame for OWNER in your MP3s and a user defined OWNER field in your FLACs, for example, and both will be able to contribute their OWNER value to the file path.
  • Other fixes in this release:
  • Regex rules now allow escaped strings so double-quotes can be specified.
  • Don't show buttons accessing the "change art" page when the artwork rule is disabled.
  • When bliss.ui.contextPath is set, make sure the image paths for the album detail and change cover art pages are correct.
  • If OneMusicAPI returns a candidate track but that doesn't match the track of interest, continue to attempt a best attempt match.

New in bliss 20190301 (Mar 6, 2019)

  • The track number format rule should correctly assess already-padded track numbers which have a length less than or equal to the target length once the padding is removed.
  • When updating genres in ID3, force case when it differs from the standard ID3 mandated capitalisation.
  • Don't show the artwork resolution assessment part if not configured.
  • Support more date formats when parsing for an existing year.
  • Split automation setting for ID3v1/ID3v2 in the tag type rule.
  • Don't assess and then remediate any album more than ten times in one scan.
  • Don't re-apply the same remediation more than once to one album in one scan.
  • Avoid disappearing albums when changing the album name case.
  • Clean up handlers for buttons to avoid OOME.
  • Avoid duplicate queries to OMA when the min resolution rule is enabled.

New in bliss 20190212 (Feb 20, 2019)

  • This release completes the porting of all rules to the automation framework. From this point on, converting rules to be automated will be a lot easier.
  • More fixes
  • Other fixes in this release:
  • Don't show empty thumbnails when an attempt to re-apply existing cover art fails.
  • Don't show a line item for tag correctness if it's not enabled.
  • Have a consistent order for rules in the settings page.
  • Don't accept any string with four digits at the start as valid for year correctness.
  • Don't show a second album when rescanning an album on the album overview.

New in bliss 20190130 (Jan 31, 2019)

  • Phew! It's been a while since the last bliss release. We've been mainly working on a bunch of things to make it easier to implement automatic rules. This release sees the framework implemented for the cover art rule only (other existing rules still have automation as an option).
  • We've also got a bunch of bug fixes to release, so thought now would be a good time to get these out-there.
  • Automate all-the-things:
  • So what's the automation framework? Requests to make rules fully automatic are one of the most common requests we get. Before, automation was implemented for each rule, which meant there was a lot of duplication; not so much of the code itself, but more in the way the code behaved.
  • Furthermore it was clear that the same settings user interface was being created again and again... basically an automate! checkbox.
  • To be clear: we haven't added automation for any rule that didn't have it before. We'll begin to do that later. For now, the existing automatic rules are being ported to the new framework.
  • So, for this release, we have a way of declaring rules that are automatable in a more re-usable way. This makes implementing automation a lot faster in the future. For this release, it's just the cover art rule that's covered, and as it's only the min/max resolution rules that had automation options before, that's the only rule you'll see this on
  • More improvements:
  • Lots more stuff in this release:
  • The active rules list on the settings page is now laid out in a more rigid, table-like fashion.
  • Don't always check tag types.
  • Fix saving of track number padding.
  • Handle blank disc numbers better.
  • Allow more matches to be clicked multiple times to expand/collapse the matches.
  • Don't redirect to an invalid page when changing album artists for an album.
  • Order genres in the allowed genre consolidation rule purely alphabetically.
  • If there are no genres permitted by the genre consolidation rule, don't allow any genre to be set.
  • Handle albums with no tracks better in the file organisation rule.
  • Self host all CSS, JS, fonts and other assets.
  • Don't hardcode the root context for assets (this means we work better behind a reverse proxy).
  • Accept single character literals in custom regex rules.

New in bliss 20181105 (Nov 7, 2018)

  • Something a lot of people spotted was a bug we introduced relating to the genre consolidation rule:
  • Couldn't create policy command from com.elsten.bliss.music.policy.tagsync.TagSyncPolicy
  • java.lang.NullPointerException: use Optional.orNull() instead of Optional.or(null)
  • at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:805)
  • at com.google.common.base.Present.or(Present.java:47)
  • at com.elsten.bliss.music.policy.tagsync.TagPolicyConfigurationParser.withAllowableGenreConfiguration(TagPolicyConfigurationParser.java:121)
  • at com.elsten.bliss.music.policy.tagsync.TagPolicyConfigurationParser.parseForAllowableGenre(TagPolicyConfigurationParser.java:112)
  • This was a problem relating to how we were parsing the genre consolidation settings. That's fixed in the new version.
  • Lots more stuff in this release:
  • Give keyboard focus to the search field when adding a new rule.
  • Show compliance filters for missing tags.
  • Collapse all fixes for case rules for tracks into one fix in the Inbox.
  • Allow genre or year to be changed at the same time as album name/artist name for an album.
  • Work around a false positive for some headless systems.

New in bliss 20181011 (Oct 23, 2018)

  • A couple of useful performance improvements:
  • We now cache fingerprints across scans and versions.
  • We also now store lookup results between versions.
  • Meanwhile, on the album page:
  • The save button on the album detail page now gives instant feedback.
  • When the album rescan button is clicked we also look for new files in the album folders.
  • And other stuff...:
  • The album count for artist albums now works.
  • The genre correction rule now only executes one response when "Fix all visible" is clicked in the Inbox.
  • The Denverton architecture is now supported on Synology.

New in bliss 20180924 (Oct 2, 2018)

  • Adding a new rule doesn't overwrite edited or previously added rules.
  • The image format rule doesn't show "UNKNOWN" from image format descriptions.
  • When the image format rule is enabled we always show it.
  • The cover art filename text field is fixed on Safari.
  • If the default maximum resolution value is accepted, it is now correctly saved.
  • The genre list is fixed to display properly in the add rule dialog.
  • The missing tags and cover art filename rule can co-exist happily.

New in bliss 20180911 (Sep 18, 2018)

  • Fixed an issue adding new rules overwriting edited or previously added rules.
  • Removed "UNKNOWN" from image format descriptions. If the image format rule is enabled always show it.
  • Cover art filename text field not loading properly on Safari.
  • Default maximum resolution value is not correctly saved.
  • Genre list loads behind the add rule dialog.
  • Deleting the missing tags rule opens the cover art filename rule instead (!)

New in bliss 20180828 (Sep 5, 2018)

  • More improvements:
  • The artist album grid is re-aligned when the album name has more than one line.
  • Fixed a bug changing lots of tags in the album page.
  • Added more guidance for the "advanced" actions on the album page.

New in bliss 20180806 (Aug 14, 2018)

  • This release contains some small improvements, while work on the settings page is ongoing.
  • Extra information has been added to the Linked Releases panel. We've added the format of the release, the country and any subtitles the release might have. This helps disambiguate between releases and help you choose the correct releases to link or unlink
  • There's a text field there to leave any feedback you have. Currently the Active rules section is just loaded with your current settings - you can't edit or remove the rules yet. That's incoming!
  • Other improvements
  • Added a "return to top" link for longer pages.
  • When changing album name in the album tag page redirect to the new URL and rescan.

New in bliss 20180720 (Jul 21, 2018)

  • First timer improvements:
  • In addition to the efficiency fix above, we've made a bunch of first-time user interface improvements in this release.
  • First, whenever bliss hasn't been configured there's now a "blank slate" link to the settings screen, so first time users know what to do. In addition, the UI now opens on the settings page the very first time bliss runs.
  • I added a new set of links from the album lists. You can click an album cover and go straight to edit the album or the cover art. In addition, the cover art alternatives page now has links to the upload or provide URL options.
  • ARM fingerprinting:
  • A really nice improvement I've added is a fingerprinter for ARM platforms.
  • This means two things: First, Synology users shouldn't have to install fpcalc separately anymore, and, second, QNAP ARM users should also be able to use fingerprinting too.
  • In addition, other platforms using an ARM architecture should be supported, such as Raspberry Pi.
  • If you have an ARM based QNAP NAS, let me know how you get on!
  • More improvements:
  • Fixed a divide by zero error on the licences page.
  • The file organisation <group:...> token now does not combine latin and non-latin characters in a group.

New in bliss 20180710 (Jul 17, 2018)

  • A really small release this week - a piece of work to make lookups more efficient which unexpectedly took longer than thought to complete!
  • For a while now bliss has been performing eager fingerprint lookups. That is, whenever any kind of query is made for cover art or metadata, fingerprinting is always performed and the fingerprint query is sent.
  • In many cases this is required, but not all. For those queries that can be satisfied with a simple tags-only query, the fingerprinting and extra query is a waste. This can particularly be a problem on more constrained devices like NASes.
  • So from this version, we only perform fingerprint queries lazily, that is: when they are needed. Note that this can still occur pretty often, especially when using the tag accuracy rules!
  • More improvements:
  • More fixes for deadlocks that might occur when changing settings.
  • Don't infer a failure to fingerprint as a duplicate.

New in bliss 20180612 (Jun 21, 2018)

  • Fix deadlocks in the activity stream when updating settings.
  • Don't use memory mapped database files on Java 9/10 on Windows.
  • In the Inbox, "Fix all" buttons should have more representative titles and complete when clicked.
  • Don't ignore folders beginning "...".
  • On the file organisation page, show compliant file paths in green.

New in bliss 20180529 (Jun 5, 2018)

  • Improvements:
  • Changed navigation links at the top of album pages to plain links.
  • Clicking the change art link from the album page then back to the album page no longer loses the current filter.
  • The folder and filename can now be copied/pasted from the tags tables.
  • The splash screen is explicitly closed.
  • Removing tags and setting genres is fixed for WAVs.

New in bliss 20180516 (May 22, 2018)

  • This new release builds on the previous duplicate detection release, and now includes the (manual) removal of duplicate files.
  • We've also added in a bunch of bug fixes!

New in bliss 20180424 (Apr 27, 2018)

  • This release offers up the first iteration of the long asked-for duplicate removal feature. This initial step adds duplicate detection, with removal and further refinements to come in later releases.
  • Duplicate detection:
  • We finally started work on the longest standing, highest ranking idea on our ideas forum - duplicate file removal. This release adds the ability to detect duplicates within an album, but not between albums, and it doesn't allow files to be deleted yet either.
  • This has been packaged inside something we're calling the "album integrity" group of rules.
  • In addition:
  • Fixed a deadlock when rescanning and accessing the Tags or album detail page.
  • The DISCNUMBER column on the Untagged page is now larger and resizable.
  • The re-query button for Linked Releases now always shows it is working when clicked.
  • Allow multiple fields to be set at once in the album tags editor.
  • Fixed a bug when finding replacement genres for "blank synonyms" e.g. "Unknown".
  • Fix a failure to generate card tokens when charging credit cards using Stripe.
  • Make the "per page" count links respect the current per page count for each separate page.

New in bliss 20180410 (Apr 17, 2018)

  • This is a maintenance release with few new features, but a lot of work to move bliss to more recent dependencies to allow future development.
  • bliss uses a number of different re-usable software components to deliver its functionality. The Web UI is written using Lift for example, and various parts of bliss are written using Scala.
  • With the release of Java 9 (which bliss is also dependent on) it turned out that the version of Scala we were using was going to be incompatible going forward. Using a more recent version of Scala also then necessitated updates to Lift too.
  • Perhaps most pertinently, this has also meant we have had to increase the minimum Java version to Java 8. If you are currently using Java 7 you will have to upgrade. For those that can't upgrade, we have had to end support. Please let us know if you need help upgrading.
  • In addition:
  • Send track durations to OMA in seconds, not milliseconds.
  • Changed the scrollbar for Linked Releases back to the default platform one.

New in bliss 20180326 (Apr 3, 2018)

  • the cancel button makes a comeback!

New in bliss 20180313 (Mar 20, 2018)

  • Fixes:
  • Undo works properly.
  • Undo and save are greyed out until changes are made.
  • The last choice between the compliance/tags view is remembered.
  • A badge shows on the compliance view button if there is track level non-compliance.

New in bliss 20180301 (Mar 1, 2018)

  • Album tags view:
  • The Tags page is a useful fallback for when bliss's rules don't cover something you want to change. It's something of a Swiss Army tool inspired by "traditional" taggers such as MP3Tag; basically a grid of files with their fields which can be edited by hand. I don't feel this is a particularly scalable approach to managing a large music library, but I recognise this feature is still useful (and I've used it myself in the past). This hopefully makes for a less cumbersome experience than the Tags page, when just editing the tags for one album.
  • More stuff:
  • Fix a problem adding 250 or 2500 fix licences.
  • Store logs in the bliss working folder, not the Java tmpdir.
  • Fix the placeholder colour in the genre field on album edit page.
  • When updating Synology SPK, preserve settings.
  • Show error messages when changing art on the change art page.
  • Support all abstract "FieldKey" tags in custom rules.
  • Make genre matching from online to whitelist much less lenient. Support the use of custom genres.
  • Fix year checking when a year and month are given for a release.
  • If track name or number is set to autopopulate as well as compare accuracy, don't automate fixes.

New in bliss 20180213 (Feb 20, 2018)

  • Fill in missing track numbers and names

New in bliss 20171212 (Dec 29, 2017)

  • Improvements:
  • Support new x18 Synology devices (Apollo Lake, Broadwell, Grantley, rtd1296)
  • Avoid nesting genres inside square brackets via the capitalisation rules
  • Better error reporting when failing to start
  • Support converting PNGs to JPEGs when the PNG has alpha channels (transparency)
  • On QNAP, ignore @Recycle folders
  • Update to latest version of OneMusicAPI

New in bliss 20171003 (Oct 11, 2017)

  • This week's release is a maintenance one, mainly aimed at honing the QNAP integration. In addition we've made sure bliss will always "trust" its metadata server. The main QNAP work this week has been to perfect the scripts that run the app. We no longer store settings and working data inside the mounted disk volumes to avoid running out of space in the user folder (we found some older versions of the NAS had smaller home file systems). We've also made fewer assumptions about the software installed on the QNAP NAS and made sure data and settings are removed after uninstall.
  • Who can you trust:
  • You might have noticed this error message popping up on your Linked Releases panel: "javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target". What this means is that bliss doesn't "trust" its metadata server. bliss uses a secure connection to encrypt traffic to and from the metadata server, and to do so it must trust the server is who it says it is. The server does this by presenting a certificate, cross signed by a third party or "certificate authority". Older versions of Java, which bliss runs upon, don't trust the certificate authority that we use on the metadata server. This new version overrides this manually. The other workaround is to update Java, which I advise you do anyway!
  • More improvements:
  • Always show fixes left on first run.
  • Fix layout of albums on artists page.
  • Fix how cover art alternatives page works; show updated art and success/failure.
  • Request compressed content from the metadata server.
  • Make the Linked Releases panel shorter.
  • Always show a spinner when recovering from an error in the Linked Releases panel.
  • Undo optimisations to Jetty for the debug app.

New in bliss 20170914 (Oct 8, 2017)

  • Official QNAP support
  • Other improvements:
  • Better tolerance of errors from OneMusicAPI, and show these errors when refreshing the Linked Releases panel.
  • Be careful about using album-level disc numbers when checking tag accuracy.
  • Don't send invalid disc numbers in queries.
  • When there's a discnumber set but bliss doesn't think there should be one, change button to "remove discnumber".
  • Check both 500 fixes topup and unlimited fixes products' links are populated.
  • Make sure alternative art shows on the Cover Art Alternatives page.

New in bliss 20170815 (Aug 27, 2017)

  • The most commonly occurring bug fixed in this version is one relating to multi disc releases. In the previous build, we'd sometimes mix-up tracks from different discs. This fixes that issue. In the same area, we also fixed an issue where tracks have the same name.
  • Other improvements:
  • For Synology, support use of fpcalc installed via Synocommunity.
  • Show track name capitalisation fixes in the track list.
  • If we fail to read the data size for an image, don't stop the rest of the assessment.
  • Don't block indefinitely when calling OneMusicAPI.
  • Handle tracks without a track number better when calling OneMusicAPI.
  • Allow cover art filenames with periods in them.
  • More feedback when bliss fails to start.

New in bliss 20170717 (Aug 4, 2017)

  • One new patch of work I have started for this release is the "offical" Synology SPK. The SPK is now part of the build and will be automatically built with other versions, although it won't be published until fingerprinting and a few other items are fixed.
  • A useful new feature in this release is "Grouped fixes" for tracks. This makes it much faster to execute a bunch of track-level fixes at once without waiting for compliance re-assessment after each fix.
  • Other improvements:
  • Fix auto-population of disc number.
  • Compilation message should be better when an album should be unmarked as a compilation.
  • Allow existing genres which are marked permitted by the genre consolidation rule, which are a sub genre of the genre provided by linked releases (phew!).
  • Re-query for metadata and tag correction after a change is made on an album.
  • Fix issue where tag correction mistakes track 1 for track 10.
  • Fixed Turkish localisation bug when deserialising NONCOMPLIANT enum.
  • Don't show a corruption error when installing the SPK.
  • Don't break the linked releases panel when unlinking a release.

New in bliss 20170620 (Jul 13, 2017)

  • This releases rounds off most of the remaining tag correction work. The important feature introduced in this build is a way of choosing the releases used to judge whether a field is correct or not.
  • We've also implemented some pretty major performance improvements, reducing the amount of I/O (specifically, how many times your music files are read). This should especially benefit use over network attached storage.
  • Choosing linked releases:
  • One of the common issues reported with tag correction has been where the releases chosen by bliss were wrong. These releases are used to assess your library's information.
  • This could be for a few reasons; you might have a classic 1970's album and you don't want a 2010's remaster of the album to be included when assessing your own version, for instance. Or maybe it was a simple case of the wrong version of an album being selected.
  • This new release adds the ability to manually choose which releases are 'linked' to one of your own albums. You can control it using the link/unlink buttons in the Linked Releases panel. Clicking Link against one of the existing grey-ed out releases will link the release to your library's album, so it is considered for assessment of tag correction and completeness.
  • Your choices are saved across versions too, so you won't need to do this every time you update!
  • Other improvements:
  • Use HTTPS when calling OneMusicAPI.
  • Truncate button text on track fix buttons.
  • Show track number padding buttons on the track list.
  • Separate tracks by disc number on the track list.
  • Fix layout of the cover art alternatives page.
  • Improve performance through better caching.
  • Remove duplicates in the Linked Releases list.

New in bliss 20170607 (Jun 14, 2017)

  • As iterations on tag correction begin to come to an end, I'm implementing the final few pieces that allow me to consider this work 'done'. This week: support for discnumber completion and also broader metadata queries...
  • DISCNUMBER completion:
  • The focus of the tag correction work has been on identifying incorrect pieces of metadata in your music library, and providing suggestions on how to correct them. So it might seem strange that filling in missing disc numbers forms part of it.
  • The requirement to fill in disc numbers comes from user feedback. When enabling tag correction for album names, some were finding 'disc number artifacts' (e.g. Disc One or Disc I) were being wiped, which meant multi disc albums would often have their track listings combined in their music player.
  • There's a separate field, DISCNUMBER, which is intended to be used for the numbering and positioning of groups of tracks in an album to reflect the media in a physical release. Canonically, and when your music player(s) support it, I think the best solution to the above issue is to use the "correct" album name, and also complete the DISCNUMBER field. So that's where disc number completion comes from.
  • Broader queries:
  • A common problem with tag correction has been, for albums with many, many releases, sometimes bliss would not match the information in your collection to all of the releases that have been made for an album. For example, a certain year that a release was made may be lost.
  • This has been fixed in a brute force way: by simply getting more data to lessen the chance of a missed match, and therefore a false negative.
  • There's more:
  • Track level case rules and other track level rules now appear in the Tracks list.
  • Lazily fetch images for linked releases.
  • Improved the album not found error message.
  • Linked releases can now be manually re-queried.
  • Files with empty artwork containers can now have their art changed.
  • Ignore "total tracks" information when comparing track numbers.
  • Use the track-tagged media number when sending a query, rather than the album-level media number.

New in bliss 20170524 (Jun 14, 2017)

  • Bug fixes:
  • Don't error when two tracks in the same album have the same track number.
  • Show the Discogs human-readable page in linked releases.
  • Some UI improvements around the tag correction settings.
  • Don't continually re-parse tag config.
  • Fix approxWidth is not an integer message when trying to save rules without cover art rule enabled.
  • Allow all ID3 non-abstracted tags to be editable.
  • Show composer tag as "composer" in the Tags page.

New in bliss 20170510 (May 11, 2017)

  • This release is predominantly a maintenance release following on from the previous work on tag correction. It fixes a number of items, including a regression introduced in the last version
  • The main new feature is strict capitalisation/punctuation checking. Before, when comparing existing data with online data, bliss would highlight all capitalisation and punctuation differences.
  • Fixed occasional licence problems when adding a new licence.
  • Added a link to change the art to the top of the album detail page.
  • Parse correctly when there are multiple rules for the same tag.
  • Handle tracks with no track numbers on the album detail page.
  • When checking full date fields, allow the result as accurate if its a superset of information.
  • If bliss is already running when running the executable open the browser to the bliss page.
  • Don't force into headless mode on Linux.
  • Handle Turkish locale issue with image formats.
  • Allow fpcalc to be placed in a certain location to override the bundled version.

New in bliss 20170502 (May 10, 2017)

  • The main breakthrough in this release is the introduction of data pipelines. Before, the tag correction and all other tag rules worked independently. This caused an issue when the rules disagreed on what the tag should be for a given field. For example, consider the album It Takes a Nation of Millions to Hold Us Back. Imagine this was stored as the truncated title It Takes A Nation Of Millions in your music collection. You have the tag correction rule enabled and also a title case rule enabled for the album name. The tag correction rule suggests changing the album name to It Takes a Nation of Millions to Hold Us Back. If you do this, the title case rule would then resolve as non-compliant, and ask to change it to It Takes A Nation Of Millions To Hold Us Back. If you accepted that, then the tag correction rule would complain again, this time about the capitalisation! So now, suggestions from online data sources are run through a "pipeline" of transformations, supplied by your other rules. In this case, the suggestion will be to change the album name to It Takes A Nation Of Millions To Hold Us Back, and subsequent rescans will assess this album as compliant. As an aside, if you don't have the case rules enabled, support for ignoring capitalisation and punctuation when assessing tag correctness are coming in the next release.
  • Make the album detail page prettier when rescanning.
  • Fix change art page rescanning/refreshing state model.
  • Ensure album data is re-queried when settings are changed.
  • When there's a YEAR and DATE in a FLAC, set both.
  • Show actual album name or artist name when either is non-compliant instead of placeholder text.

New in bliss 20170418 (Apr 25, 2017)

  • Track name accuracy
  • Strict compilation checking
  • More improvements:
  • Fix occasional issues when changing album or artist name.
  • If there's an update problem, failover to the last good version.
  • Disable all fields in settings when a rule is disabled.
  • Make the select fields shorter.
  • Make the album grid boxes the same width, allowing more than three/four on a line.
  • Truncate button text on the album detail page.
  • Show more information about failures on the activity page.
  • Make the album detail page more lined-up.
  • Split tag correction fixes in the Inbox by tag.

New in bliss 20170404 (Apr 12, 2017)

  • This week sees the first release of the new tag correction code. This first release concentrates on album level tag correction; in other words, metadata that exist at an album level, such as album titles and artists, release year and genre. Track level tag correction is coming later...
  • The album overview grid now mandates a regular size for each album.
  • The missing artwork icon looks much nicer!
  • When working out album artist, consider other groups of files with albums of the same name.
  • When changing library, remove old activity records from display.
  • Don't show activity records pulsing anymore.
  • Don't assume bliss.sh has access to bash.

New in bliss 20170307 (Mar 15, 2017)

  • My new focus is on generalising bliss's feature set to cover correctness and completeness of all metadata, not just cover art, genres and years.
  • The first step on this road is to push forward the concept of online release linking. That means the online release data that bliss has identified a given album in your library as being. Once such an album, or albums, are identified, metadata can be synchronised from the online record to your own files.
  • This has always happened in bliss, right since the first release, but until now the list of matched releases was never shown. Now, on each album page, and once a match has been attempted, you can see the list of linked releases
  • You can see for each album a list of linked releases is shown. That includes the cover art, the year or release and the likelihood of being the correct match. Clicking the View button takes you off to the online data for that release.
  • We'll be adding more data to help differentiate albums, like the type of release (album, single, promo etc) and the country of release, soon.
  • If no online lookup has taken place for an album, the box will be unpopulated. This might be because an album is already compliant, in which case no lookup is required. To force a lookup and then review the linked releases, you can view the change art screen. The results are cached, and can subsequently be reviewed in the linked releases panel.
  • The idea is to use this ordered list of releases to help ensure the correctness and completeness of metadata.
  • By "synchronising" an album of files against online records, we can check to see where current data in your files diverges from online records. That covers correctness. Similarly, to cover completeness, where data is missing in your files bliss can suggest remedies to ensure the data is filled in.
  • One could imagine automated synchronisation taking place, so your albums benefit from the same grooming and improvement of metadata that online databases benefit from.

New in bliss 20170220 (Feb 21, 2017)

  • When rescanning, run the resetting of compliance in parallel.
  • When rescanning, make sure albums aren't rescanned twice.
  • When rescanning for new and changed files, don't cancel existing ongoing assessments.
  • Re-arrange cover art alternatives page to use space better.
  • Don't return duplicates in the cover art alternatives nor change art screens.
  • Positive feedback and wider expires fields for Stripe payment form.
  • When albums are over 99 tracks, don't fingerprint them.
  • Set bliss.launcher in Linux version so we restart correctly after update.
  • Fix the use of the pre-packaged genre tree.
  • The popover next to the rescan box shouldn't pop up half off-screen.
  • Fix ClassNotFoundException when storing or reading the bliss database.
  • Some other fixes around data storage.

New in bliss 20170209 (Feb 15, 2017)

  • Rescan for new and updated files tells bliss to go back to the music folders and look for any files that have changed or have been added. These are then passed to bliss, assembled into albums and assessed against your rules.

New in bliss 20161122 (Nov 30, 2016)

  • Updated the bliss.exe launcher to work with more recent JRE versions.
  • When missing art from an image file, don't re-embed artwork as well.
  • Fix problems accessing fields with file organisation tokens.
  • USD and Euro payments are now supported in the app.

New in bliss 20161108 (Nov 15, 2016)

  • A new file organisation token. You can use this in custom file organisation patterns.
  • If a problem occurs when moving files, undo all moved files for that album and move back to the original location.
  • Read MP3 disc numbers with their disc totals.
  • Fix the artist count on the artist page.
  • Fixed a hang when rescanning.
  • Allow multiple trim whitespace rules to be set on the settings page.
  • Only trim COMMENT tags without a sub-id.
  • Fixed singular embedded art rule for AIFF.
  • Fixed race condition which sometimes showed an error when changing settings.
  • Report progress upon scan for new/changed files when starting.
  • Show in progress spinner on buttons after an album's compliance has been updated.
  • Fixed the placeholder for fields in the album detail page; it was always year before.

New in bliss 20161005 (Oct 12, 2016)

  • Updated Stripe payments to the latest, more secure encryption algorithm
  • The whole of the rule name 'box' is now clickable in the Rule settings
  • On Linux, use 1/4 of system RAM, to a maximum of 512MB (it used to be 128MB for all systems)
  • Ship Java 8 on Mac
  • Don't look up ALBUM_ARTIST in ID3v1 tags
  • Fixed another race condition when rescanning
  • When unsetting a tag on the Tags page, make sure the tag index is updated for all tags

New in bliss 20160825 (Aug 25, 2016)

  • Fixes a significant bug affecting users of the Maximum Data Size rule

New in bliss 20160818 (Aug 25, 2016)

  • New genre consolidation control
  • Updated the logos used in the installer, splash screen, System Tray etc.
  • Show the progress indicator when first viewing the change art screen.
  • When editing an album with no year/genre, populates the field correctly.
  • Fix the album page when the tag type rule is enabled.
  • Don't show the page loader indicator when long-polling comet requests are occurring.
  • Truncate long buttons in the Inbox.
  • Show errors in configuration after applying rules.

New in bliss 20160802 (Aug 10, 2016)

  • UI updated.
  • More improvements:
  • Read INFO tags as well as ID3 tags in WAVs.
  • Fixed out of memory issues with memory constrained devices.
  • Handle albums called "the Album" in closed class case rules.
  • In a mixed artist track, don't overwrite different track artists when executing case rules.
  • Allow rescanning to occur when a rescan is already in progress (cancelling the previous rescan).

New in bliss 20160606 (Jun 8, 2016)

  • We've found an important bug in the previous version of bliss which affects writing FLAC files, and means they will appear corrupt to some software. The bug is that, when writing metadata or cover art into the file which is too large for the existing padding in the file to cope, the audio segment is written three bytes too large. This is unlikely to cause problems in music players, or other organisation software, but where software is very strict as to the layout of the file it can cause problems. The problem was discovered by VortexBox users who also use the MP3 mirroring facility in said music server. This new build fixes that problem.

New in bliss 20160525 (Jun 1, 2016)

  • We've fixed a permissions problem when organizing music over a network, added padding to folder and file names, and we can now fingerprint DSF files too!
  • We've had a few reports of file permissions problems from people managing their music library on Windows devices, across the network to a NAS. bliss was reporting false negatives; that it could not write to music files, when the files could be opened in other software and changed just fine.
  • We tracked it down to a change in the tagging library bliss uses. We fixed it in the library and contributed this back to the project while importing these changes to bliss.

New in bliss 20160406 (Apr 12, 2016)

  • DSF tagging and album art:
  • Over the past few months we've slowly been improving our support for audiophile file formats, to make bliss a more useful tool for audiophiles. Following the release of WAV and AIFF support, back in November, I'm pleased to announce DSF support in this new and subsequent builds!
  • These improvements have come from new work on JAudioTagger - the tagging library that bliss uses. As with WAV and AIFF support the support is "total" meaning anything you can do on an MP3, say, in bliss, you can also do to a DSF file. Add album art, fix tags, consolidate genres, it's all there!
  • Bug fixes:
  • WAV scanning has been made much faster for certain WAV files.
  • Parse track numbers in the format 2/0 (meaning "track 2").
  • Fixed year lookup in files with year AND date, and fixed year only lookup in ID3v2.3 files.
  • Simplified new file notification code.
  • Made file scanning much faster on Windows Vista and newer using CIFS (Samba) to a NAS
  • Make sure old directories are not watched anymore when changing music folder
  • The VortexBox v2.4 build is now based on systemd rather than init.d
  • Don't try to set ALBUM_ARTIST on ID3v1 only files.
  • Make bliss.sh arguments overridable from wrapping scripts

New in bliss 20160304 (Mar 8, 2016)

  • Something of an emergency release today; we've had reports of a problem when restarting the latest version of bliss (20160217). In many cases, the restart fails. We've fixed it, and a few other items too!
  • bliss uses some third party code called OSGi to help manage its codebase. This allows us to track versions of all aspects of the code, calculate the dependencies within the code, and therefore provide reliable means by which the code can be updated from version to version.
  • Unfortunately, it appears a bug in the way we use OSGi meant that restarting bliss v20160217 after an apparently successful first-start would not work in many cases.
  • In this new version that's fixed.
  • More improvements:
  • Reduce the number of times we try to load files when tags are missing.
  • Stop using JNotify for file system events. Use Java's own FileWatcher instead.
  • When caching tags, calculate the size of WAV tags more accurately.
  • Add opt-out of Google Analytics into the app.
  • Log when settings are changed (not what the settings are), the version of bliss and the server OS in Google Analytics
  • Fix a race condition when clearing-and-rescanning.

New in bliss 20160217 (Feb 23, 2016)

  • File organization improvements:
  • Bug related to discnumbers greater than one digit long. We were truncating these before; this is now fixed.
  • Custom rules:
  • Some more developments with custom rules. The tag list for custom rules, in the settings UI, is now nicely alphabetically ordered with common tags separated at the top.
  • We also fixed a bug where you couldn't have multiple custom rules associated with the same tag.
  • More improvements:
  • Case rules now assess and update multiple tags in a file (e.g. if there're both ID3v1 AND ID3v2 tags)
  • If a genre is missing in an album and the genre consolidation rule is enabled, all genres in the list are suggested.
  • We've fixed support for VortexBox 2.2 .
  • An error in the logs that "Cannot load com.apple.laf.AquaLookAndFeel" has been fixed.
  • For embedded artwork, empty image bytestreams (either empty or consisting purely of 0x00) are now treated as missing art.
  • The Windows installer is now dual signed with both a SHA1 and SHA2 digest.
  • You can now configure the ports that bliss uses (3220 and 3221 by default)
  • We fixed a bug where rescan could be blocked if another rescan was already running.

New in bliss 20151125 (Nov 26, 2015)

  • A small bug fix release for last week's AIFF and WAV tagging release
  • We found a bug where track numbers were not being tagged properly in WAV files - we've fixed that. We also noticed that the way numeric genres in ID3 tags were treated was wrong; we've fixed that too
  • Away from WAV tagging, a bug in the disc number token within the file organisation rules which meant disc numbers with number/total syntax, e.g. "1/2", weren't correctly assessed, and would sometimes suggest a disc number of the two integers concatenated together! That's fixed now

New in bliss 20151110 (Nov 19, 2015)

  • Support for AIFF and WAV tags and album art:
  • For a long time, bliss's list of supported file formats has stayed pretty static; most of the widely used formats were supported including MP3, MP4, FLAC, WMA and more. But we've also had requests for a long time to add support for AIFF tagging, and also WAV as well.
  • bliss has always used the JaudioTagger project to perform the actual tagging of music files. A few weeks ago support for AIFF and WAV was committed into the JaudioTagger library, and now we have bundled this into bliss!
  • This means bliss can now both scan, recognise and performing tagging of AIFF and WAV albums. As well as setting textual tags on these files, cover art can also be added and removed to WAVs and AIFFs.
  • It also means that untagged WAV and AIFF files (of which there must be many) will appear in the bliss "Untagged" page with suggestions for tagging. So if you have any old untagged WAV or AIFF files laying about, now might be the time to get them tagged!
  • It all helps with getting all of your music library complete, correct and consistent. Now WAVs and AIFFs get the same treatment!
  • Custom rules:
  • Another new feature in this build I think it's worth highlighting is that custom regular expression rules can now be contributed by saving the rule to a file in a well-known location.
  • I'll be posting more on this in the upcoming weeks, but by saving a regular expression rule into a .regexrule file into a regexrulescript folder inside the .bliss folder, bliss will pick up the rule and incorporate it into the settings page and into normal rule processing.
  • More stuff:
  • Tolerate an inability to read a file on a file-by-file basis, rather than folder-by-folder (so some files aren't lost).
  • Don't allow trim rules to be applied to compilations or cover art.
  • When fix all visible is pressed for missing genre/year, make sure the buttons show progress.
  • Bundle Java 8 with the Windows installer.

New in bliss 20151013 (Oct 20, 2015)

  • This release of bliss consists of mainly stability improvements and bug fixes, although we did find the time to include a new feature: disc numbers in the Untagged page!
  • The Untagged page finds tags for albums which are missing their important identification tags; album name, album artist, track numbers and names. This worked fine, but for multi disc albums there was a problem; if the disc number for the tracks was not populated, music players would not be able to distinguish the different tracks in the album.
  • This might mean a music player plays all track 1s first, then track 2s and so on. By populating the DISCNUMBER as well this means the tracks can be properly distinguished. It also allows for a better file organisation structure.
  • The disc number column only appears for releases where either (a) the release has been found and it is one disc from a multi disc set or (b) the release information has not been found. If the release information was not found, and you tag the album yourself, you can leave the disc number column empty if you wish.
  • In addition, for the Untagged page, we also made the tagging process a little more efficient so that only tag values that have actually been set are tagged. This also allows files to be tagged without a track number.

New in bliss 20150921 (Sep 30, 2015)

  • This new release contains primarily stability improvements.
  • In the background, we took another step toward introducing custom rules by factoring out the trim rule introduced last release into its own stand-alone "bundle". In theory, anyone can now contribute their own "bundles" containing custom bliss regular expression rules.
  • For example a new rule to decode HTML encoding or even hard-coding find and replace of genres could be written by anyone using bliss.
  • In addition:
  • More fallbacks for album artist deduction.
  • Use the latest version of OneMusicAPI.
  • When rescanning an album, clear the tag cache for that album.
  • Fix a possible database corruption problem when using the Tags page

New in bliss 20150825 (Sep 1, 2015)

  • Whitespace trimming:
  • The 'trimming' rule is a new rule to trim the whitespace from the beginning and end of tags. Any whitespace: spaces, tabs, carriage returns; can be removed
  • On each scan, bliss will check the tags you have chosen and, if any include whitespace at the start or end, will suggest it be removed with a one-click fix.
  • There's also an undocumented, initially unsupported way of contributing your own regular expression rules.
  • Further improvements:
  • Handle apostrophes in case rules
  • Ignore 'EP' in case rules
  • Add extra tags to the case rules selector

New in bliss 20150811 (Aug 19, 2015)

  • Database engine improvements:
  • The first main bug fix relates to how bliss can sometimes react when changing settings. A few months back I changed bliss's database engine to a different library. This fixed some data corruption issues, but, as often happens, some different problems were introduced.
  • Specifically, the way the new database engine updates files on your computer's storage is a bit different; when bliss interrupts an update, sometimes the database engine gives up and won't write again. This means certain operations like changing rules or rescanning can sometimes lead to a bliss database that can't be used, causing error messages

New in bliss 20150522 (Jun 8, 2015)

  • Here's a new release of bliss, with a new way of executing multiple fixes at once, and some more useful bug fixes.
  • First up, a new feature to make fixing all those non-compliant music files a lot faster and a lot easier.
  • The normal approach to automation in bliss is: create a new rule to manage a music library, and once bliss users are happy with what it does, consider automating it.
  • The trouble is that the gap between rule creation and rule automation is often a long one. Plus, sometimes wholesale rule automation may not be desirable because of the potential for automation-gone-wrong.
  • This release's main new feature is a way of fixing all problems of a specified type. For example, fixing all artwork that is too large by shrinking it, or changing all genres to an "allowed" genre. I've done this by adding a Fix all visible button to the Inbox. By clicking one of the options, all fixes of that type are executed.
  • Only the fixes visible on the Inbox are executed. You can display more fixes, and thus execute more fixes at once, by clicking the Items per page link in the yellow bar to the left of Fix all visible.
  • More improvements:
  • When a cover is picked from the cover art alternatives page, show success/failure and reload the row.
  • Fix an occasional problem in bliss's regular expression rules (affecting case rules).
  • Fix some button alignments on the individual-album change art page.

New in bliss 20150423 (Apr 28, 2015)

  • This new version includes a number of assorted improvements:
  • First up, I've rewritten some of the underlying parts of bliss to use a new database engine. This is due to a few reports I've received of database corruption seemingly occurring after long periods of using bliss. After a couple of weeks testing by those affected, we seem to have fixed these problems, so that's good news.
  • More improvements:
  • Exempt roman numerals and common name prefixes ("La", "De" etc) from case rules
  • Sped up tag lookup
  • Fixed the count of non compliant albums due to non-compliant file paths
  • Fixed the layout of the help and album detail pages
  • Fixed the file organisation token to cope with cases where there's an album artist but no track artist

New in bliss 20150316 (Mar 24, 2015)

  • This is a new release with a number of stability improvements...
  • The main area of work has been in improving the consistency of bliss's internal database, particularly after large scale file renaming. I had a few reports of issues in this area, and I've reworked some fundamental database code to try to avoid said consistency problems.
  • Other improvements in this area are to take positive steps to disallow multiple instances of bliss running, and when a database corruption issue is discovered upon startup make sure bliss is shutdown completely (it sometimes runs in a "zombie" state which makes cleaning up difficult).
  • A nice little improvement is an indicator to how many compliant/non-compliant items there are.
  • More stuff:
  • Updated the OS X JDK
  • Sped up the Inbox
  • Fixed problems working with old cover art rules
  • Don't allow double clicks on fix buttons
  • Don't allow indefinite blocking when calling OneMusicAPI
  • Store fileInfo in a database to avoid issues with overly long file names

New in bliss 20150109 (Jan 10, 2015)

  • A small, earlier than expected release with an important bug fix.
  • The main focus of this release is an important fix to bliss's rule assessment/fix procedure. In the last release we included a fix to ensure that multiple reasons for non-compliance get fixed when those multiple reasons were both found by the same rule. Before it would be a two step process, with you, the user, having to click a manual response or invoke a rescan on the album in question.
  • An example of this is where both art is not saved in a folder.jpg AND the embedded art that does exist is too large. Before the previous release, only the embedded artwork would be shrunk, and the folder.jpg left and marked as the reason for non-compliance. The last release fixed this so that both items were addressed, increasing the automation.
  • So far so good, but after the release I began to get reports of scans that weren't completing. It turns out that there was no check to see if a given fix had already been attempted. If a fix was executed, it failed for some reason, the album was still non-compliant and the same fix was suggested again, the fix would be repeated... ad infinitum!
  • This had the effect of blocking one part of the rule processing engine, potentially leading to a total blockage over time. It also led to very large activityStream database files which could eventually lead to running out of space on your user drive.
  • Because the effects of this bug were quite intrusive I decided to hurry this small release through and release immediately.
  • Further improvements:
  • Further refinements to the Stripe checkout process for EU VAT data gathering
  • Fix the "missing tags" non-compliant filter (it wasn't showing albums that were missing tags before)

New in bliss 20141224 (Dec 27, 2014)

  • Search/filter tags page:
  • The stand-out feature in this release is search/filter on the tags page. A new search field and button allows you to search for any value in any tag in all of your music files.
  • The way it works is that your search term is compared to all tags and if a file has a tag that contains the text you enter, that file is shown on the Tags page. Files without any tags that contain the search term are not shown.
  • It is not possible to constrain the search to certain tags, nor is it possible to perform any placed wildcard ('*' et al) searches. I thought we should see if a simple 'contains' search would be good enough for now.
  • Further improvements:
  • When missing art from a separate cover art file and the embedded artwork is non-compliant, fix both in two steps automatically (the latter first obviously).
  • Added some exceptions for common acronyms in the case rules.
  • Fixed page navigation when switching between compliance filters.
  • Be more restrictive about assigning tracks to the same album when one set of tracks has a compilation flag set.
  • Don't send disc number 'total' number when querying for cover art and tags, if it is in the DISCNUMBER field.
  • The whole file path is now shown in the untagged page.

New in bliss 20141204 (Dec 9, 2014)

  • The big new feature in this release is the ability to filter albums by compliance type; now you can find albums that have non-compliant artwork and ignore those with non-compliant file paths. In addition there are some important fixes for tag lookup and OS X performance.
  • Compliance type filters:
  • As new rules have been added to bliss I've had to think of new ways of displaying the compliance of given albums. If multiple rules are enabled then a simple "non-compliant" filter isn't useful in all situations; you might only be interested in missing cover art, for example, and not errant file paths.
  • As a result, this idea to filter albums by compliance type has gathered great momentum, becoming the top voted idea in the bliss ideas forum. There was a fair bit of background work to do to support it, so it has taken a month or so, on and off, but it's now ready!

New in bliss 20141119 (Nov 25, 2014)

  • The big improvement in this release is support for the latest version of Mac OS X, 10.10, codenamed "Yosemite". Yosemite no longer automatically downloads Java which means, before this release, you would have to select an appropriate version of Java, download and install yourself before running bliss.
  • To make this easier we now bundle a version of Java with bliss.
  • The downside of bundling Java is that the bliss download is a lot bigger! But once you have installed you can use in-app update to get around having to download a new version of Java with each release.

New in bliss 20141027 (Nov 4, 2014)

  • This week: a new release with support for Java 8, background work for filtering by compliance type, some UI fixes and fixing the different artist rules so they can work together!
  • The most important improvement in this version is support for running under Java 8.
  • bliss is a Java application which means the code that executes runs within something called the Java virtual machine. This "virtual machine" gets updated over time with bug fixes and other changes, a little like bliss. Again, like bliss, Java will update itself, and recently the latest major version update, Java 8, has been rolled out.
  • Over the past few weeks we've seen more and more reports of where bliss suddenly won't run. Fact is, the bliss code itself is compatible with Java 8, however one of the software components that is used to run bliss is not, and thus bliss fails to start.
  • This release contains an update of that component, so bliss now runs under Java 8. Importantly, you must install from the installer to get this improvement, in-app update will not work.
  • More improvements:
  • Some background work for supporting filtering by compliant type.
  • Allow albums to be tagged without an album name in the Untagged page, but don't attempt to show them in the Albums list.
  • Fixed "back to list" when viewing album detail via the Artists page.
  • Allow the canonical artist and consistent track artist rules to work together.
  • Clear and rescan should clear the tag cache so files are completely re-read under all circumstances.

New in bliss 20140917 (Sep 23, 2014)

  • This is another bug fix release, with an important fix for the canonical artist rule. The canonical artist rule was broken in the previous release. When assessing albums for canonical artist names, bliss would report something like:
  • Failed to assess whether canonical artist name
  • java.lang.NoSuchMethodException: artist
  • Not pretty! This release fixes the above problem.
  • Here are some more improvements:
  • The untagged tables are now ordered by filename.
  • "Back to list" behaves correctly after fixing something on the album detail page
  • Fixed the layout of the "run out of fixes" page

New in bliss 20140813 (Aug 20, 2014)

  • This new build contains a lot of fine tuning: performance improvements, bug fixes, and adoption of the new 500 fix licence.
  • A major change is the adoption of the 500 fix licence. From now on, the 1000 fix licence will be replaced with the 500 fix licence on the Buy fixes page. Existing 1000 fix licences continue to work as before and are still "worth" 1000 fixes.
  • Performance has been improved by minimising the number of times bliss reads data from music files. Before, bliss would cache data it had read, but there were still improvements to make in the number of times bliss would read from disk. This hopefully especially benefits network mounted libraries.
  • When changing music folders we've made some improvements; results of scans from previous libraries are remembered when you switch back to them, saving time.
  • The track number format rule has been improved to enforce minimum length, not exact length. For example, before, track number 100 would be ruled as non-compliant in a two digits setting because it has three digits. This is now allowed, and the padding only used to achieve the minimum length.
  • Here are some more minor tweaks:
  • A fix to how artist names are assigned to albums.
  • Fixed the layout of the fixes and update pages.
  • The untagged page clears properly when changing library.
  • The tag type rules' responses are now grouped.
  • The file organisation rule, the music folder and the cover art filename rule are now removable from the settings.

New in bliss 20140702 (Jul 8, 2014)

  • Changed the show tags option to display the tags using the same component as is used for the Tags page. Hopefully this familiarity in look and keyboard navigation will be beneficial. As before, the tags can be edited before being tagged into the music files.
  • Now shows that same tagging component when no tags were found for an album. This means if bliss doesn't find metadata for a given album or folder it is still shown in the Untagged page with an option to fill the tags in yourself. \
  • Now we make sure albums that are tagged show immediately in the Albums page, and we also support tagging files without an artist name (this caused an error before).
  • There are some smaller fixes and improvements in this release:
  • Fixed one more capitalisation rule false positive.
  • Some work to improve rule execution concurrency and performance.
  • Fixed a bug with album size dependent track number padding.

New in bliss 20140622 (Jun 18, 2014)

  • Here's a new release with startup performance improvements, cover art lookup improvements and more!
  • The two main areas of improvements in this release are in performance and the cover art rule.
  • We've sped up processing on bliss startup. Before, bliss used to rescan all music files, just taking a look at the tags inside the music files, on each restart. This was to make sure no changes had occurred in the period before the start, and if they had, pass them through to the rules to assess and fix the files if required.
  • We've changed this so that bliss now just looks at the last modified date and the size of the file. If either are different to the last time bliss saw the file, the file is sent through for assessment. This is much faster because the size of the file and its last modified date are metadata provided by the filesystem without even requiring the file be opened for reading. Not having to open the files makes the initial scan much faster.
  • The cover art improvements are in failover when bliss fails to download art from OneMusicAPI. This particularly relates to use of the max data size rule. Before, if the image could not be downloaded, bliss would give up on the album and mark it Unknown. Now, it tries the next suggestion.

New in bliss 20140522 (May 23, 2014)

  • When many albums in separate folders are tagged "Unknown" and just one is tagged, avoid forcing through the untagged files into the Albums page
  • Show simpler errors on the Tags page
  • Fix some more Title case (excluding closed class words) false positives
  • Move to the latest version of OneMusicAPI

New in bliss 20140513 (May 21, 2014)

  • In this new build: performance improvements, fixes for the new case rules and fixes for year and genre lookup.
  • In the area of performance, memory use has been reduced in bliss's internal database, and when audio fingerprinting a lot of files in one directory.
  • There's also some performance improvements when changing libraries and/or rules.
  • Finally, under performance, we changed bliss's in-memory cache of tags so that it scales in size with the amount of memory assigned to bliss. This means more memory assigned allows bliss to store more in memory and so leads to less reason to read from files. This speeds bliss up, especially when reading/writing to files is slow (e.g. across a wireless network).
  • Some fixes for the new case rules feature: we fixed some false positives which meant album, artist or track titles with certain punctuation (e.g. apostrophes) were erroneously marked as non-compliant.
  • Finally a couple of improvements when filling in years and genres. Duplicate suggestions are now removed, as are blank "Set to" suggestions.

New in bliss 20140423 (May 2, 2014)

  • This new release includes case rules - the ability to ensure album, artist and track names comply with a pre-defined case style
  • Case rules:
  • So at long last, this release includes case rules. This first release allows you to set a case rule each for album names, artist names and track names. The case rule itself can be one of a number of case styles
  • bliss applies the style to your tags and, if they don't match, offers a one-click fix.
  • More stuff:
  • Optimised queries to OneMusicAPI a little, making queries faster, more likely to match and also more accurate
  • Fixed album 'tiling' in the album overview page to avoid 'snagging' where tiles are different heights
  • Show progress when clicking a fix in a fix dropdown
  • Allow the maximum image size bliss will process to increase in line with assigned memory
  • Ignore #recycle folders (these are created on Synology when accessed via a Windows CIFS share)
  • Fixed a bug to allow setting track number to a plain or padded integer in an MP3 when there's an existing track number total field

New in bliss 20140318 (Mar 26, 2014)

  • This release speeds up cover art alternatives (the change art and cover art alternatives pages) which has slowed since the work to fix Discogs artwork download.
  • Before, two queries were made for cover art, one with the tag information and one with the audio fingerprints. Despite the fact that the former always returned much faster, the results were not displayed until the fingerprint results had also been returned. So I've changed this such that all results are immediately displayed as they are streamed back to bliss.
  • This means you get cover art alternatives much faster!
  • Carry on browsin':
  • I've also made further improvements to the "Browse" button.
  • Windows users found that only their C: drive was listed, since I made some big improvements to the UI. Now I've made sure that all mapped drives are listed, such as those drives mapped to network locations.
  • In addition the Music library fields, populated with your music folders that contain your music files, were being converted from backslash-separated to slash-separated folder paths. This was confusing for Windows users, so I've fixed it so that it obeys the platform conventions.
  • Other improvements:
  • The automated cover art 'probability' requirement has been relaxed, meaning more matches (it was overly strict since the Discogs change)
  • Some prep work for case rules in tags
  • I upped the size limit on uploaded cover art to 8MB
  • bliss no longer indexes large (>16kb) tag fields
  • I fixed a problem saving data to the bliss internal database
  • The Inbox page loads faster by ensuring a query for cover art alternatives is not made

New in bliss 20140208 (Feb 10, 2014)

  • This release contains our most popular asked-for feature, multiple music libraries! You can now add multiple music folders to bliss, and have bliss scan, assess and fix all of the folders
  • You might notice the release timestamp is the same date as today, whereas normally the timestamps lag by a week. That's because this release has been fast tracked due to an important fix for Discogs cover art lookup. More on this below
  • On multiple music folders:
  • Multiple music folders were first suggested back in 2010. Many of the commenters in the ideas thread suggested it sometimes becomes practical to split up larger music libraries... perhaps where you hit physical limitations of individual hard drives (this can be a problem under Windows, although more modern versions of Windows allow drives to be combined in Libraries bliss doesn't support them)
  • You'll also notice a new look for the Browse button. I've reworked this so it's prettier, it doesn't get stuck on the mouse wheel in OS X and it also pre-loads your currently selected folder. Should be much easier to use now!
  • On Discogs:
  • A week or so ago, Discogs changed their images API. They'd announced this a few months ago, detailing new limits on image access. What they didn't really say (except very implicitly) was that the entire method of looking up images was going to change. I fixed this in the new version, although I think on days where bliss is used most (the weekend) we may hit the limits again.
  • Other stuff:
  • Fixed occasional cases of Cannot assign instance of ImmutableImageInfoSerialisationProxy to field UserResponseCoverArtAssistSerialisationProxy.image of type com.elsten.bliss.policy.coverart.lookup.ImageInfo
  • When album artist is just spaces, use track artist deduction to decide on the artist for a release
  • Avoid cases where missing files means bliss won't start

New in bliss 20140122 (Jan 29, 2014)

  • In the weeks leading up to Christmas I, prompted by some reports by users, discovered bliss was not playing nice with Mavericks. Not only were there some security issues related to app signing but also bliss was being slowed by App Nap.
  • This new release contains fixes for both issues.
  • The bliss application is now signed for Mavericks, so no further security errors should be displayed.
  • The effect of App Nap has been negated by declaring bliss as an OS X agent. App Nap does not work on agents. This is arguably something that should've been done before anyway; it better describes how bliss works so OS X can tailor itself accordingly. This also no means, for example, the extraneous Dock icon shown when bliss starts is no longer visible.
  • There's also some work toward supporting multiple music libraries in this release, although it's not exposed in the UI. Keep your eyes on the idea linked above for updates on this one, but it's looking likely to be completed for the next release!
  • Other stuff
  • There's a clearer way of providing an existing licence rather than using the Buy with Paypal tab. See Re-enter an existing fixes code on the fixes page.
  • Windows services work again (whoops)
  • A few small UI alignment fixes
  • When one type (either embedded or a file) of artwork is missing and the other type is non-compliant, don't auto-install from the Web

New in bliss 20131126 (Dec 4, 2013)

  • This release contains a nice enhancement; the album overview (and other pages) are now drawn in a "fluid" style. This means the more you widen the page, the more that is accommodated. Before, bliss would always show four albums on each row of the album overview. If you have a wider browser this can now grow and grow.
  • This is also adopted on other pages such as the change cover art page. It makes better use of modern high resolution displays, so I hope you like the change.
  • Some more minor changes and tweaks:
  • OneMusicAPI is now used for genre and year lookup
  • Cope with files with spaces at the start of the name
  • Avoid certain memory usage problems in bliss's index of tags

New in bliss 20131108 (Nov 9, 2013)

  • ERP! After releasing the first build for some time on Tuesday I began getting reports of problems when starting bliss. It was only today that I was able to properly identify the problem.
  • I mentioned in the previous release's notes that:
  • The token used in the default file organisation patterns has been changed. Now, we use rather than the "raw" value, to make it more widely applicable and to provide an ordered track list in all players by default. Existing use of the default patterns will remain the same, although your pattern will now be counted as a "custom" pattern in the settings user interface.
  • Well, that was the intention. In reality the code that attempted this conversion had a bug which meant new users couldn't start bliss! So, a frantic few hours of fixing, building and regression testing today have led to this new build.
  • The good news is that as well as this fix, there are a few more useful fixes in this release:
  • Use the new version of OneMusicAPI
  • Better error reporting in popups when fixes don't work
  • Fixed multiple identical entries appearing in genre dropdowns
  • We now support Stripe for payments, so you can just supply your credit card details in the app

New in bliss 20131028 (Nov 8, 2013)

  • Tag editor:
  • The tag editor has been changed to use a different user-interface component. We now use something called SlickGrid. I feel this gives a much snappier experience and implements far more natural keyboard navigation. Furthermore, simply clicking away from a cell now saves the value, rather than having to press [enter], which wasn't obvious before.
  • The new tag editor interface
  • There's also an undo button to reverse previous changes.
  • File organisation:
  • The token used in the default file organisation patterns has been changed. Now, we use rather than the "raw" value, to make it more widely applicable and to provide an ordered track list in all players by default. Existing use of the default patterns will remain the same, although your pattern will now be counted as a "custom" pattern in the settings user interface.
  • I also added an extra piece of work to clean up empty folders after moving. If there's a thumbs.db file in a parent folder, that is removed. This way, old "artist" folders containing multiple albums will also be pruned when there are no child folders anymore.
  • File scanning:
  • First, a couple of changes to the rescan and "play and pause" buttons. If the music folder doesn't currently exist when rescan is pressed (e.g. it's a mounted volume and hasn't been mounted yet), an error is displayed. In addition, if rescan is pressed after the folder has re-appeared, the play and pause buttons are now re-enabled.
  • One for Synology users: on file updates, @eaDir folders are now ignored. They were ignored before on initial scan, but not on update.
  • When scanning music files, the YEAR tag is now parsed to extract the year information, in cases where it's a more detailed timestamp.
  • Finally, I've implemented an improvement to make sure bliss can handle very large folders (with, for example, over 32,000 files in one folder).
  • The album detail page:
  • Errors that occur when editing metadata on the album detail page now appear in a popup. In addition two further bug fixes: a bug which meant the text "unset" were saved into tags; and another bug which meant the album list filter was not re-established correctly on returning to the album list, were both fixed.
  • Genre consolidation:
  • I've made genre consolidation and the missing genre rule work better together. Now, if a genre is missing and the genre consolidation rule is enabled, you'll be given a choice of genres to populate from your allowed list, even if a genre cannot be found online.
  • The genre matching, which chooses an appropriate genre in your 'allowed' list given an input genre, now also performs substring matching to find appropriate genres to replace.
  • Finally I also fixed a UI bug in the settings interface where the 'remove' button on the allowed genre list was incorrectly labelled.
  • Cover art
  • The main change has been a significant improvement to the cover art alternatives page: the existing art and the artist name is now shown:
  • New cover art alternatives page showing alternatives to Suede.
  • A few smaller tweaks in this area: long image URLs are now cached properly on Linux, the singular embedded artwork rule now tolerates corrupt artwork and the pencil icon to change cover art is disabled if the cover art rule is disabled.
  • And now... some more minor changes and tweaks:
  • Don't query OneMusicAPI with empty fingerprints
  • Handle errors querying MusicBrainz in rule scripts
  • Log untagged files that aren't fingerprinted
  • Lower memory usage of the database cache
  • Clean up any record of albums after fixing
  • In the settings UI, make the help popups disappear when clicking elsewhere

New in bliss 20130702 (Jul 10, 2013)

  • A new release containing three new features! The first is the automation of track number format fixing. The other two are new file organisation tokens ( and ) to increase the range of possible names that your music files and folders may take.
  • Automatic track number fixing:
  • The track number format rule ensures each track number in your music collection is of the required length; that is, the number of characters that make up the track number is of a pre-determined length. Where track numbers are too short in length, they are padded with zeroes.
  • However, this change was not performed for you, and you let me know! From this version, you can now pad track numbers automatically. To set this rule, click settings and then in the Music information pane check Change track number padding automatically (this only shows when the track number format rule is enabled) and confirm by clicking Apply rules.
  • and file organisation tokens:
  • These tokens can be used in custom file organisation patterns. They aren't included in any of the defaults.
  • Albums with only and album artist tag and no track artist tags is no longer considered untagged
  • Cover art lookup is a little more accurate for multi disc lookups
  • If a music folder doesn't exist at startup but is subsequently added then a rescan shall find it
  • Removed the 'feedback' tab on the Tags page, as it got in the way
  • Improved UI consistency and fixed a few other things on the Buy fixes page
  • bliss now ignores all trailing null terminators in tags
  • Don't assume a temporary folder exists at startup
  • Recover when initialisation of bliss's secondary indexes fail
  • Only allow one instance to run on Windows (when running through the EXE)
  • When updating, don't try to stop the module containing the code that's currently running

New in bliss 20130617 (Jun 27, 2013)

  • Ignore files and folders beginning with "."
  • In the list exposed by "why?" show non-compliant items on top and make the list scrollable
  • Tolerate Acoustid outages
  • Show error messages if manual file movements fail
  • Fix artwork sizing responses not showing button text
  • Make dropdown buttons more responsive when clicking the default fix

New in bliss 20130522 (Jun 3, 2013)

  • This release contains a number of fixes for the tag editing page, to improve usability and also fix a couple of bugs

New in bliss 20130507 (May 8, 2013)

  • This release contains a number of UI improvements and bug fixes.
  • The forward/backward/back to list links added in a previous version of bliss have now been added to the album detail page and the file organisation detail page. That makes it easier to scroll backwards and forwards through albums.
  • There were a couple of problems on the artist and activity pages where the number of entries per page would be forgotten. These are fixed.
  • There are a number of improvements deep in the bowels of bliss, which probably aren't obvious to the user. There's better protection against duplicate records of the same music file, rules written in bliss's internal rule language are now only parsed once plus there's a guard against overuse of memory during bliss's update process. In addition, bliss's file update mechanism has been improved to avoid sending updates for files subsequently deleted or moved.

New in bliss 20130416 (Apr 24, 2013)

  • fixed Discogs art download

New in bliss 20130408 (Apr 9, 2013)

  • This emergency release fixes connectivity problems with bliss's online data source. Since Sunday our hosted MusicBrainz server has been inaccessible to bliss. This means metadata (except for cover art) lookup has been greatly impaired, as well as the functioning of the genre consolidation and canonical artist rules.
  • So the most important fix in this release is that those connectivity problems are solved.
  • But there's more! The default file organisation rule for VortexBox has been changed to be the same as the default VortexBox file pattern rule that is used by the VortexBox ripper when ripping CDs in the first place.
  • I've made some changes to memory allocation. bliss on Windows and VortexBox now defaults to being limited to 256MB internal memory (bliss will actually use 50MB or so more than that).
  • I also fixed a couple of issues with scrolling through the albums and artists grid. When the albums- per-page was changed, the scroller didn't reflect this change and if you clicked left or right the next page would show the previous number of albums. That's fixed. Also there was a bug preventing all of the albums for an artist being scrolled through under certain circumstances. Again, that's fixed.

New in bliss 20130326 (Apr 9, 2013)

  • This release contains a few small items... UI improvements and bug fixes
  • Most usefully I've added better feedback to fix buttons. Now, after pressing them, they should change colour to indicate success or failure. In the case of failure, more detail about the problem will be shown in a popup attached to the button
  • A couple of improvements for cover art resizing. First, the algorithm used to shrink images has been refined so that cropping is avoided. In some cases, with some resolutions, images would be cropped slightly either on the horizontal or vertical axis. This shouldn't occur anymore. In addition, when you had configured rules for both the maximum resolution and data size for album art the fixes were being combined into one button. This meant when you clicked the button the artwork was resized twice. This no longer occurs
  • I've also cleared up some duplicated items that used to appear in the Inbox

New in bliss 20130227 (Apr 9, 2013)

  • "back to list"

New in bliss 20130213 (Mar 1, 2013)

  • For cover art lookup, the integration with OneMusicAPI has been further improved. bliss now checks the health of OneMusicAPI less often and caches results more aggressively, speeding up overall performance.
  • Music files with the same album and artist name but in different folders are now grouped together if they share the COMPILATION tag. This helps with grouping multi disc compilations in different folders but with the same album name. It also helps with the way the cover art rule saves a co-located image file; now the image file will be saved in all folders containing files for the relevant album.
  • In the file organisation rule, a problem was fixed that was preventing non-music files being moved to new target folders and, as a result, the old folder structure was being left as is, leading to a lot of old folders being kept around. Now, the folders should be cleaned up.
  • Smaller fixes:
  • Support local file paths in the Provide URL change art screen
  • Fix the more matches link on the Untagged page
  • Fix memory problem rendering genre dropdowns

New in bliss 20130131 (Mar 1, 2013)

  • Faster cover art lookup:
  • bliss has been ported to use OneMusicAPI for its cover art lookup. The chief benefit of this is faster cover art lookup, as well as offering slightly better coverage.
  • Genre dropdowns:
  • The other big improvement are genre dropdowns. Now, when bliss suggests a genre and you have the genre consolidation rule enabled, the other genres are also listed.
  • Furthermore, the genre text field on the album detail page is now a dropdown when genre consolidation is enabled, and if you start typing it even auto completes!
  • More fixes:
  • The CSS stylesheet is no longer cached across versions of bliss
  • Fixed the bug on Vortexbox (and Fedora) where bliss appears to lose its stylesheet after a few days/weeks running
  • Don't attempt to fingerprint WAV files
  • Separated the fingerprinter into its own platform specific bundles, making it easier for integrators on other appliances
  • Made upgrading via Vortexbox more reliable by removing the felix-cache
  • Fixed bug where 'year' couldn't be unchecked in the missing information rule
  • Lowered the memory consumption of tag caches making out of memory errors less likely
  • Show the album detail page correctly for albums and artist names with a period in the name
  • Be more strict about only allowing one assessment per album at once
  • Change album detail page to have an edit mode

New in bliss 20121128 (Mar 1, 2013)

  • The main new feature in this release is automatic year and genre tagging. In addition there are bug fixes to in-app update, shutdown on OS X and audio fingerprinting.
  • Year and genre completion has been a feature for a couple of years in bliss. (A couple of years! Wow). The year and genre rule looks up the respective information when no such metadata is present in your music files, and suggests what it finds as a one click fix.
  • Even a one-click fix, however, is pretty onerous for large music libraries. As a result, the feature request to make year and genre tagging automatic soon shot to the top of the ideas forum. This new release contains the functionality to auto-populate year and genre tags.
  • When checking the year or genre checkboxes, a new checkbox appears titled auto-populate. Check this and click Apply rules. bliss now uses whatever it finds as the year or genre for an album and tags that automatically.
  • Wait, there's more...
  • Cope with errors better when fingerprinting music
  • Further improvements to in-app update: new functionality added to bliss is now properly started once the update completes

New in bliss 20121112 (Mar 1, 2013)

  • Changed the system tray popup to load after the bliss UI has fully loaded
  • Fixed the text on the system tray popup on first use
  • Ignore @eaDir directories for DiskStation users
  • The list of currently active policies is included in the debug archive
  • Various small improvements to the speed of cover art and metadata lookup
  • Further fixes to the in-app updater

New in bliss 20121019 (Mar 1, 2013)

  • Most importantly, Discogs album artwork search has been fixed so it brings back more results, and the uninstaller for Windows Vista and later operating systems (Windows 7, Windows 8, Windows Server 2012 et al) has been fixed.
  • Of course, once OneMusicAPI is operational and used by bliss, I won't need to issue updates for Discogs and the like when they update their API. But until then, I'll keep rolling those updates!
  • Other improvements include:
  • More informative error messages when the fingerprinter fails
  • Further improvements to the in-app updater

New in bliss 20111221 (Jan 5, 2012)

  • Over the past few months, the cause of most problems related to running bliss has been database corruption. Strange messages such as double get for block and page header magic for block not OK mean bliss's internal database has become corrupt. It is caused most commonly by an abrupt shutdown of the bliss process, perhaps because the computer hosting it has been switched off or reset without a 'shutdown'.
  • This new build contains multiple ways of alleviating these problems. First, extra care is taken to avoid corruption in the first place, even if the host computer is switched off abruptly. In addition, when bliss detects a corrupted database on startup it deletes it and starts over. Finally, the same delete-and-start-over code is available for invocation manually using the clear and rescan button.
  • The button can be reached by clicking the down pointing triangle next to the existing rescan button. The clear and rescan button will be displayed. Clicking it deletes the existing database and starts from the beginning, re-assessing all of your music against your rules.
  • Improvements to acoustic fingerprinting:
  • The acoustic fingerprinting code introduced in the last build has been polished up a little. As a recap, acoustic fingerprinting is a way of identifying music by the audio within a music file, rather than its tags, which may be incorrect (often subtly) or non-existent. This is useful when looking up information or album art for some music online.
  • For starters there's now a 64 bit version of the Linux acoustic fingerprinter. The existing 32 bit version would still work on a 64 bit Linux box if you had the correct libraries installed, but without them the fingerprinter would fail.
  • The main improvement though is a big increase in the accuracy and coverage of the fingerprinter. On the bliss test machines the fingerprinter now outperforms 'legacy' tag based lookup.
  • More stuff in this release includes:
  • Fixed a memory problem when viewing 100s of album detail pages.
  • Linux start script now uses JAVA_HOME, if set, as a default for the location of 'java'. Otherwise, just 'java' as before. This makes using the start script more hackable as it's possible to point the script to a different version of Java.

New in bliss 20111206 (Dec 15, 2011)

  • Zero padding in file names:
  • Zero padding is the addition of leading zeros to track numbers, in this case applied to file names. Why is this needed? Consider the following three files -
  • 1-Devils Haircut.flac
  • 2-Hotwax.flac
  • 10-Sissyneck.flac
  • Now, in any sane human's head the ordering of files would be as above: 1, 2, then 10. This is called natural ordering. The trouble is, computers aren't sane, and instead they often impose an ordering based on the character codes for the strings. In this case -
  • 1-Devils Haircut.flac
  • 10-Sissyneck.flac
  • 2-Hotwax.flac
  • This is because the first character of 10-Sissyneck.flac is considered before the first character of 2-Hotwax.flac.
  • The workaround is to pad our string with zeros, as follows -
  • 01-Devils Haircut.flac
  • 02-Hotwax.flac
  • 10-Sissyneck.flac
  • By forcing the number of digits for each track number, we can assure that each order of magnitude in the number is compared like with like. Therefore, 0s are ordered before 1s.
  • Acoustic fingerprinting:
  • This release also contains the first batch of code surrounding bliss's mooted support for untagged music files. The enabling technology for this is acoustic fingerprinting, a way of representing a piece of music in a short summary. This fingerprint can then be looked up online and the discovered data used for tagging your music library.
  • There are two broad uses for this. The first, as introduced above, is with untagged music files. The second is in providing corrections for already tagged files. For now, I have introduced the technology into bliss's existing MusicBrainz queries for cover art, year and genre data. They are generally super-accurate and should, with time, provide higher match rates for missing information.
  • Other stuff:
  • I fixed some error messages displayed when cover art is corrupt
  • Any errors when parsing file organisation patterns are now caught and displayed
  • When albums are deferred from assessment the icon in the activity page changes to a completed one

New in bliss 20111125 (Nov 30, 2011)

  • The main new feature this week is a new disc number token in file organisation patterns plus the ability to add conditional statements to file organisation patterns.
  • and file organisation conditionals
  • First up, if you like, you can just use the tag in a basic way:
  • //...
  • In most cases though you probably only want to use when there is a DISCNUMBER tag. So you can use a new feature for file organisation patterns, a conditional:
  • /?|/|...
  • Which means: if is set, evaluate the subsequent pattern within the pipe ‘|’ characters. Meaning you get either All Things Music Pass/1/... or Thriller/...
  • You can put further tokens within the pipe characters if you like:
  • /?|Disc /|...
  • Would give All Things Music Pass/Disc 1/...
  • The conditional can be used with any token, not just . More generally, the conditional is evaluated such that when the preceeding token is set, the subsequent token is output. The tokens within the pipe characters are essentially grouped in one token.
  • Other stuff:
  • When using the track artist consolidation rule, if the track artist is inconsistent offer the album artist (e.g. 'Various') as an optional response
  • Fixed how some responses appeared in the Inbox
  • Fixed memory usage when rescanning
  • Fixed potential memory usage when losing connection to a music library (e.g. network connection lost)
  • Lowered memory use of the activity page UI
  • Fixed a couple of areas in the change art and album detail screen where you could get a 'no responder' error

New in bliss 20111108 (Nov 16, 2011)

  • The principal feature in this new release is the 'Inbox'. This is a new user interface that lists all suggested fixes for non-compliant aspects of your music library.
  • bliss creates one line per album, per thing that is wrong. There's only a line for items that have fixes available.
  • If you happen to have an art size rule enabled in manual mode (not overwriting automatically) you'll see the suggested art that bliss will use. Here's where I'm hoping the Inbox will also form the basis of much faster ways to change cover art. Imagine all alternatives are shown in this list form, with one click choices for each album. This should speed things up a lot.
  • Implemented the long requested idea to remember the setting for albums per page. Now, when you choose an albums/page size a cookie is saved on your computer containing your preference.
  • Also consolidated the choices around overwriting existing art when shrinking art - it was a little confusing as to whether shrinking art would occur automatically. It now works in the same way as when art is too small; there is a checkbox that appears. I've also added a checkbox to take backups when deleting old art.
  • Finally, there are some further fixes in this build regarding how well bliss works when Vortexbox is ripping files. I have made bliss much more circumspect as to when it inspects ripped files. It should now wait until the rip for the entire CD is complete before working with the files.

New in bliss 20111025 (Nov 7, 2011)

  • Now, when a music file is found that is not supported or the file is untagged, bliss logs a message in the activity stream.
  • In addition, I made a fix to the ID3v2 tag type code. Before, when adding an ID3v1 tag using an ID3v2 tag as the source for data, bliss would fail if the source ID3v2 tag contained multiple 'comment' frames. Having multiple comment frames is quite common if you've ripped CDs using iTunes. bliss would display 'Unknown' for the album, and within the album detail screen you would see the following unhelpful message:
  • java.lang.ClassCastException: java.util.ArrayList cannot be cast to org.jaudiotagger.tag.id3.ID3v24Frame [... more stuff besides]
  • I've fixed this problem, so you should now be able to add ID3v1 tags populated with your ID3v2 data, even if they do contain multiple comment frames.

New in bliss 20111005 (Nov 7, 2011)

  • This new release adds a new rule to audit ID3v1/2 tags in MP3 files. You may specify that you require, for instance, ID3v1 or ID3v2 tags and you can also request to add them automatically.
  • MP3 files generally use ID3 tags to store metadata. This metadata includes album name, artist name, track name and so on. However, ID3v1 tags are more limited than ID3v2. They cannot store album art, for instance. This means you may find yourself upgrading your old ID3v1 tags to ID3v2 to make use of embedded album art.
  • The same can be done to add ID3v1 tags automatically. This might be useful if you are using a legacy music player that only understands these types of tags.
  • This works with the cover art rule in the following way: when an MP3 file is encountered with only ID3v1 tags (which don't allow embedded art), two options are given. One is to upgrade that album's files to ID3v2 and install the art. The other option is to turn the rule on to upgrade *all* ID3v1 tags.
  • In addition, the MusicBrainz and Discogs integration has been brought up to date: both now support their latest respective APIs. There should be marginal improvements in the quality and quantity of MusicBrainz results, but other than that there's little functional difference; it was just required to make sure bliss worked from when the two services switch over their APIs in the coming months.
  • Pause now works when pressed after rule changes
  • Incorporated fix for JAUDIOTAGGER-374 which can cause corruption for MP3s on some Linux distros
  • Fixed a couple of bugs when files are moved away from a directory but subsequent files for the same album appear in that same directory

New in bliss 20110928 (Oct 5, 2011)

  • Seems in the last build I introduced a bug into the file organisation rule. This only affects people who have used a custom file organisation pattern with spaces in the literal parts of their paths. Uploaded a new version with this fixed

New in bliss 20110922 (Sep 28, 2011)

  • The all-new platform control buttons:
  • There are now three buttons: 'Play', 'pause' and 'rescan'. Play works like bliss used to. File notifications are turned on and any updates to music files get assessed.
  • Pause turns file notifications off and cancels any ongoing assessments (currently executing assessments finish, so there may be up to five updates after pause is pressed).
  • Rescan can be used as before, whether the system is in play or paused mode
  • Wikipedia search for genre and year:
  • Wikipedia is now used in addition to MusicBrainz for sourcing year and genre information. In fact, in my tests it appears more accurate, so it is now used in preference.
  • You don't have to configure anything for the Wikipedia search to work - it should just work automatically.
  • Other, smaller, items include:
  • For the file organisation rule, leading/trailing spaces in file and folder names are now always stripped
  • Speeded up bliss's startup when blisshq.com happens to be unavailable
  • Platforms without a file notification library are now supported (file notifications are always in paused mode, see above)
  • Lowered memory consumption in the activity stream

New in bliss 20110906 (Sep 24, 2011)

  • The fixes are:
  • Initial and rescan activities are now logged in the activity stream
  • Memory dumps can now be generated on Windows when run via the .exe or Start Menu

New in bliss 20110825 (Sep 24, 2011)

  • This new build allows you to automatically upgrade any artwork that is too small. There's also improvements to the track artist consolidation rule and the ignoring files and folders feature announced previously.

New in bliss 20110809 (Sep 24, 2011)

  • Two main new features this release: the ability to add bliss as a Windows service and the ability to ignore directories during bliss's scan.
  • Adding bliss as a Windows service makes it easy to setup bliss to start automatically when your computer starts . This is useful for server side installations, for instance within Windows Home Server.

New in bliss 20110727 (Sep 24, 2011)

  • This new release contains a number of enhancements to the genre consolidation rule, fixes to some UI quirks and fixes some bugs that caused albums with different track artists to be split.

New in bliss 20110713 (Sep 24, 2011)

  • Two brand new top-level pages in this release. The first, the artist overview, lists all artists in your collection. The second, the activity stream, is a more detailed form of the previous activity stream. Also, this release allows you to add your own genres to the 'allowed' list, rather than relying on the pre-defined list.

New in bliss 20110628 (Sep 24, 2011)

  • I've simplified the genre chooser by changing it from the genre tree into two lists. The first shows the genres you are currently permitting in your music collection. Clicking "Add genres" reveals all of the allowed genres. You can filter the list by typing in the text field at the top.
  • Click the '+' to move genres from the available list to the allowed list.
  • I also added more detail to the activity stream, to show more about what bliss did to fix your music collection. For instance, where art was missing, the activity stream now lists from where art was downloaded.

New in bliss 20110615 (Sep 24, 2011)

  • This new build contains an improvement to how bliss reports what work it has done. This helps, in part, to differentiate between fixed and already compliant albums. It also gives a view as to what bliss is working on, which can be useful for large collections which would require a lot of searching and scrolling to see what is being assessed/fixed.
  • The activity stream can be viewed by clicking in the status indicator area. It also shows automatically whenever rules are changed. To hide it, click the status indicator area again.
  • This release also contains a fix to track number formatting for MP3s. Previously, padding would be lost when applied to ID3 tags.

New in bliss 20110601 (Sep 24, 2011)

  • The track artist consolidation rule ensures all track artists for an album are the same. This is useful for some music players that split albums when the track artists differ, irrelevant to the presence of compilation or album artist tags.
  • The other major new feature is the ability to see more than twelve albums at once, as suggested in the feedback forums. You now have the choice between 12, 48 or 96 albums displayed at once.
  • Some speed improvements have been made to dealing with albums with hundreds of tracks
  • The album detail page is also now a little quicker
  • Album art alternatives from Discogs are now displayed correctly in the change cover art screen

New in bliss 20110517 (Sep 24, 2011)

  • I have changed the cover art alternatives screen so that, rather than showing the results once all the online sources have responded to bliss's queries, queries are made in parallel and displayed as soon as each source has responded. Typically, the MusicBrainz and Discogs queries are a little slower than the Wikipedia and Google queries, so now you should see alternative cover art a lot faster than before.
  • On the topic of cover art results, I also implemented a few improvements to the Discogs search to make it a little more likely to find results.
  • Over on the file organsiation side of things, I added in a new token, , which can be used in file organisation patterns.
  • Finally, I fixed an important bug concerning the location of music libraries. Before, if the music library was in the root of the specified drive, or was a child folder of the root, bliss would not accept nor work against the music library. This has been fixed. In addition, bliss was erroneously using the parent to identify the the music library, so if you changed bliss to a sibling library the same albums as in the sibling would be shown! This has also been fixed.

New in bliss 20110506 (May 12, 2011)

  • This release of bliss contains the new and long-awaited functionality to re-use the results of previous scans. bliss has used an internal database to store the results of scans for your music files for a while; the database stores which albums exist and their compliance. Before, this information was forgotten on each restart, but from this release the previously discovered data is re-used, so long as it was discovered with the same version of bliss. If it's a different version, bliss rescans from the start as before.
  • The effect appears to be a much faster startup when re-starting bliss.
  • Given the faster startup, I decided to simplify the play/pause buttons introduced in the last release to just a simple 'rescan' button from where you can request the music library be rescanned manually. bliss starts listening on startup now, but there is no longer such an effort on the part of the computer because very little will need re-assessment.
  • Another important fix has been to the Discogs search which has not been working for about a week.
  • I also fixed a bug which prevented the upload and provide URL album art features to not work when the override art setting is set to 'manual'.

New in bliss 20101218 (Dec 26, 2010)

  • When no tracknumber exists for a track, but it's required in the file path pattern, use 'no_track_number' instead of a blank string
  • When moving a file to a destination where the file already exists, use a number to separate the two and allow this when assessing compliance later (rather than just failing, as before)
  • Totally literal path segments now work, e.g. /music/[...] stores everything in a /music root folder

New in bliss 20101023 (Oct 31, 2010)

  • The first new feature is the ability to change album names for your albums. You can do this on the album detail screen by clicking the album name. When done, click away and the album name is changed. This changes all the album name tags in the music files for the album. It also re-runs your rules so that album art and/or your file organisation is re-assessed. When you look for alternative art, the lookup will be done with the new name.
  • I improved interoperability with iTunes. A recent change to bliss was to be more explicit about the type of art bliss embeds in files. In many file formats it is possible to save different types of art, for instance a front cover, a back cover, sleeve notes etc. For those that save many different types of art I was careful not to overwrite this with just a changed front cover. Unfortunately, iTunes pays no attention to the art type, and simply displays the first image in a file. Worse, it labels the art it adds as 'other' art type which means the art bliss adds is added after the existing art, and so you won't see it in iTunes! This release semi-fixes this by always adding art as the first in the list. There is also now a rule for enforcing one piece of embedded art per music file, however this isn't configurable via the UI. I'm mentioning it here in case anyone thinks it might be useful - I can tell you about it and help you configure it over email and maybe I'll add it to the UI if it is popular.
  • There are a few changes to make things a little more... robust. For instance:
  • If bliss fails to download album art, it retries the download
  • You can now request a rescan of an album. This re-assesses the album and retries any automatic fixes
  • Use the Java Advanced Imaging API as a fall-back if album art images cannot be processed
  • If a track name is not set for a track, use its filename instead
  • I improved the efficiency of reading/writing music files and in tests the speed of scanning an album on an external or network mounted disk was improved by about 50% (this isn't all bliss does though, so don't expect general 50% improvements in speed! It depends on the speed of your disk, whether you are embedded art into files and more).
  • Logs can now be found at http://[bliss ip]:3221/logs as well as on the filesystem. I thought this might make it easier to gather and view the logs.
  • Fixed a few bugs too:
  • Fixed a Discogs lookup issue which meant completely incorrect art was sometimes downloaded
  • I enlarged the height of the file assessment expected/actual text so that underscores can be seen
  • Fixed an issue with the file system notification listener on the Mac which meant bliss thought a flood of music files were being deleted!

New in bliss 20101009 (Oct 18, 2010)

  • This release takes a further stride toward bliss's rule based music management vision. I've made it easier to enable the file organisation rule plus it is now possible to disable the album art rule. Thus, if you wanted, you could now just use bliss for music file organisation.
  • Now, a couple of changes for the album art rule. Given some user feedback I changed the way album directories are recognised. Before, when deciding whether to save a co-located image (e.g. a cover.jpg or folder.jpg in the album directory) the album name was compared to the parent directory, and if it didn't match enough it did not save the file. This is to ensure such files are not saved in 'miscellaneous' grouping directories of tracks. Now, the album name is compared to the other tracks in the directory instead, and if they are all similar enough then the file is saved.
  • The second change to the album art rule is that the details of why an album was compliant/uncompliant in the overview screen has been trimmed down so you don't get a load of cropped text that is frustrating to read. Instead, whatever was compliant or not, such as "Embedded" or "Size", is listed with a click through to see more detail.
  • I also fixed the Windows installer - before if you reinstalled over the top of a previous installation of bliss you got a nasty 'EOFException' when installing.
  • Finally I spent a little time beginning the help pages for bliss.

New in bliss 20100919 (Sep 27, 2010)

  • This latest release contains large performance improvements when using the bliss UI against large music collections (over five hundred albums, let's say).
  • I also fixed case sensitive file path assessment on Windows. Windows (normally) has a case insensitive filesystem. Before, file paths were incorrectly judged as uncompliant due to case differences. Not any more... Also, in a related area, bliss would attempt to include speech marks -> " in file paths if they were in your tags. This is illegal on some filesystems and the fix fails, so bliss won't try this anymore.
  • Also a beta tester found another WrappedRuntimeException bug related to album art size assessments. That's fixed.

New in bliss 20100909 (Sep 13, 2010)

  • We've made a number of improvements to the UI.
  • The screens in bliss also now reload automatically as bliss works.
  • We also added in the ability to ignore pending questions where there is no suitable cover art.

New in bliss 20100116 (Jan 28, 2010)

  • We've made a number of improvements to the UI.
  • The screens in bliss also now reload automatically as bliss works.
  • We also added in the ability to ignore pending questions where there is no suitable cover art.