code: def _bgzip_and_clean(bcf_file, items):
      
      out_file = "%s.vcf.gz" % (utils.splitext_plus(bcf_file)[0])
      if not utils.file_exists(out_file):
          with file_transaction(items[0], out_file) as tx_out_file:
              if not utils.file_exists(bcf_file):
                  vcfutils.write_empty_vcf(tx_out_file, samples=[dd.get_sample_name(d) for d in items])
              else:
                  cmd = ("bcftools view {bcf_file} | sed 's/\.,\.,\././' | bgzip -c > {tx_out_file}")
                  do.run(cmd.format(**locals()), "Convert and clean delly output")
      return vcfutils.bgzip_and_index(out_file, items[0]["config"])
docs: Create a clean bgzipped VCF output file from bcf for downstream processing.
  
      Also corrects problems with missing likelihoods: https://github.com/dellytools/delly/issues/37
      GATK does not like missing GLs like '.,.,.'. This converts them to the recognized '.'