Hi Ivan.
Shearwater's DB format is really a kind of a container format - while
the overall table format stays the same, the content format of the
'data_bytes_...' columns is dependent on what is set in 'format'. Some
of it ('sw-clouddb') is a legacy proprietary format (which is what the
Subsurface importer supports), but newer formats are essentially
identical to what is transferred by the dive computer when downloading
dives, either in the older Predator format or in the newer Petrel
format. Another format is UDDF. Data in the 'data_bytes_...' columns is
gzip stream compressed, with the first four bytes encoding the length -
this part is already implemented in the Subsurface importer.
So all in all I think all of the parts needed to import this are
available in Subsurface, the importer for the container formats, and
decoders for Predator or Petrel in libdivecomputer, plus the UDDF
importer - all one needs to do is to hook them up in the right way. If
you are keen to work on this, an implementing this inside Subsurface
will be a good way to make it accessible to other users.
Ngā mihi
Michael Keller