[med-svn] [Git][med-team/libucsc][master] 7 commits: routine-update: New upstream version

Andreas Tille gitlab at salsa.debian.org
Thu Apr 2 09:21:27 BST 2020



Andreas Tille pushed to branch master at Debian Med / libucsc


Commits:
c576e44c by Andreas Tille at 2020-04-02T09:57:06+02:00
routine-update: New upstream version

- - - - -
b762fcfc by Andreas Tille at 2020-04-02T09:57:07+02:00
New upstream version 0.0+git20200402.ba6275f6+dfsg
- - - - -
4e6986b5 by Andreas Tille at 2020-04-02T09:57:12+02:00
Update upstream source from tag 'upstream/0.0+git20200402.ba6275f6+dfsg'

Update to upstream version '0.0+git20200402.ba6275f6+dfsg'
with Debian dir 831291fa165897ab26863f453369047deb3c8bf1
- - - - -
d8f9962d by Andreas Tille at 2020-04-02T09:59:13+02:00
routine-update: Add salsa-ci file

- - - - -
d87bc572 by Andreas Tille at 2020-04-02T09:59:13+02:00
routine-update: Rules-Requires-Root: no

- - - - -
e103ed54 by Andreas Tille at 2020-04-02T09:59:14+02:00
Trim trailing whitespace.

Fixes: lintian: file-contains-trailing-whitespace
See-also: https://lintian.debian.org/tags/file-contains-trailing-whitespace.html

- - - - -
8c58cc7b by Andreas Tille at 2020-04-02T10:00:03+02:00
Cleanup changelog from automatic changes

- - - - -


25 changed files:

- debian/changelog
- debian/control
- debian/patches/python2.patch
- debian/patches/use_debian_packaged_htslib.patch
- + debian/salsa-ci.yml
- src/inc/common.h
- src/inc/common.mk
- src/inc/srcVersion.h
- src/inc/vcf.h
- src/lib/cheapcgi.c
- src/lib/common.c
- src/lib/vcf.c
- src/utils/bedFixBlockOverlaps
- src/utils/bedGraphToBigWig/bedGraphToBigWig.c
- src/utils/bedJoinTabOffset/bedJoinTabOffset.c
- src/utils/bedToBigBed/bedToBigBed.c
- src/utils/chromToUcsc/chromToUcsc
- src/utils/cpgIslandExt/cpg_lh.c
- src/utils/doClinvarLift
- src/utils/qa/getRRtableStatus.csh
- src/utils/qa/weeklybld/buildEnv.csh
- src/utils/rmFaDups/rmFaDups.c
- src/utils/sizeof/sizeof.c
- src/utils/userApps/fetchChromSizes
- src/utils/wigToBigWig/wigToBigWig.c


Changes:

=====================================
debian/changelog
=====================================
@@ -1,5 +1,5 @@
-libucsc (0.0+git20200219.22a4ecd9+dfsg-1) UNRELEASED; urgency=medium
+libucsc (0.0+git20200402.ba6275f6+dfsg-1) UNRELEASED; urgency=medium
 
   * Initial release (Closes: #740601)
 
- -- Andreas Tille <tille at debian.org>  Fri, 14 Feb 2020 09:25:31 +0100
+ -- Andreas Tille <tille at debian.org>  Thu, 02 Apr 2020 09:57:06 +0200


=====================================
debian/control
=====================================
@@ -17,6 +17,7 @@ Standards-Version: 4.5.0
 Vcs-Browser: https://salsa.debian.org/med-team/libucsc
 Vcs-Git: https://salsa.debian.org/med-team/libucsc.git
 Homepage: https://genome.ucsc.edu/
+Rules-Requires-Root: no
 
 Package: blat
 Architecture: any
@@ -99,4 +100,3 @@ Description: library used in ucsc genome browser (assembly of tools)
  .
  This package contains some free utilities using the UCSC Genome Browser
  library.
-


=====================================
debian/patches/python2.patch
=====================================
@@ -9,4 +9,4 @@ Description: Force Python3 interpreter
 +#!/usr/bin/env python3
  import logging, optparse, gzip
  from sys import stdin, stdout, stderr, exit, modules
- try:
+ from os.path import basename


=====================================
debian/patches/use_debian_packaged_htslib.patch
=====================================
@@ -27,7 +27,7 @@ Description: Use official htslib in libucsc
  
  # to check for Mac OSX Darwin specifics:
  UNAME_S := $(shell uname -s)
-@@ -290,7 +290,7 @@ ifeq (${ZLIB},)
+@@ -297,7 +297,7 @@ ifeq (${ZLIB},)
  endif
  
  #global external libraries


=====================================
debian/salsa-ci.yml
=====================================
@@ -0,0 +1,4 @@
+---
+include:
+  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
+  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml


=====================================
src/inc/common.h
=====================================
@@ -1555,4 +1555,7 @@ unsigned dayOfYear();
 boolean haplotype(const char *name);
 /* Is this name a haplotype name ?  _hap or _alt in the name */
 
+char *shorterDouble(double value);
+/* Work around a "bug" in %g output that goes into scientific notation too early. */
+
 #endif /* COMMON_H */


=====================================
src/inc/common.mk
=====================================
@@ -82,6 +82,13 @@ ifeq (${IS_HGWDEV},yes)
    L+=${HALLIBS}
 endif
 
+ifeq (${USE_HIC},)
+    USE_HIC=1
+endif
+
+ifeq (${USE_HIC},1)
+    HG_DEFS+=-DUSE_HIC
+endif
 
 # libssl: disabled by default
 ifneq (${SSL_DIR}, "/usr/include/openssl")


=====================================
src/inc/srcVersion.h
=====================================
@@ -1,3 +1,3 @@
 /* Copyright (C) 2014 The Regents of the University of California 
  * See README in this or parent directory for licensing information. */
-#define SRC_VERSION "394"
+#define SRC_VERSION "396"


=====================================
src/inc/vcf.h
=====================================
@@ -309,6 +309,21 @@ struct vcfInfoDef *vcfInfoDefForGtKey(struct vcfFile *vcff, const char *key);
 const struct vcfInfoElement *vcfGenotypeFindInfo(const struct vcfGenotype *gt, char *key);
 /* Find the genotype infoElement for key, or return NULL. */
 
+int vcfGenotypeIndex(int h0Ix, int h1Ix);
+/* Return the index in a linear array of distinct genotypes, given two 0-based allele indexes.
+ * This follows the following convention used by GnomAD (GATK?), that has the advantage that
+ * gt indexes of small numbers don't change as the number of alleles increases, and also matches
+ * the ref/ref, ref/alt, alt/alt convention for biallelic variants:
+ * 0/0,
+ * 0/1, 1/1,
+ * 0/2, 1/2, 2/2,
+ * 0/3, 1/3, 2/3, 3/3,
+ * ... */
+
+void vcfCountGenotypes(struct vcfRecord *rec, int **retGtCounts, int **retAlleleCounts,
+                       int *retPhasedCount, int *retDiploidCount);
+/* Tally genotypes and alleles for summary, adding 1 to rec->alleleCount to represent missing data */
+
 char *vcfFilePooledStr(struct vcfFile *vcff, char *str);
 /* Allocate memory for a string from vcff's shared string pool. */
 


=====================================
src/lib/cheapcgi.c
=====================================
@@ -1964,8 +1964,8 @@ if (width==0)
 if (width < 65)
     width = 65;
 
-printf("<INPUT TYPE=TEXT class='inputBox' name='%s' id='%s' style='width: %dpx' value=%g",
-       varName,varName,width,initialVal);
+printf("<INPUT TYPE=TEXT class='inputBox' name='%s' id='%s' style='width: %dpx' value=%s",
+       varName,varName,width,shorterDouble(initialVal));
 jsOnEventByIdF("change", varName, "return validateFloat(this,%s,%s);",
        (min ? min : "\"null\""),(max ? max : "\"null\""));
 if (title)
@@ -1982,12 +1982,12 @@ char *minStr=NULL;
 char *maxStr=NULL;
 if ((int)min != NO_VALUE)
     {
-    safef(minLimit,sizeof(minLimit),"%g",min);
+    safef(minLimit,sizeof(minLimit),"%s",shorterDouble(min));
     minStr = minLimit;
     }
 if ((int)max != NO_VALUE)
     {
-    safef(maxLimit,sizeof(maxLimit),"%g",max);
+    safef(maxLimit,sizeof(maxLimit),"%s",shorterDouble(max));
     maxStr = maxLimit;
     }
 cgiMakeDoubleVarInRange(varName,initialVal,title,width,minStr,maxStr);


=====================================
src/lib/common.c
=====================================
@@ -3765,3 +3765,12 @@ else
    return FALSE;
 }
 
+char *shorterDouble(double value)
+/* Work around a "bug" in %g output that goes into scientific notation too early. */
+{
+static char g15buffer[4096];
+
+sprintf(g15buffer, "%.15g", value);
+
+return cloneString(g15buffer);
+}


=====================================
src/lib/vcf.c
=====================================
@@ -1475,6 +1475,74 @@ for (i = 0;  i < gt->infoCount;  i++)
 return NULL;
 }
 
+int vcfGenotypeIndex(int h0Ix, int h1Ix)
+/* Return the index in a linear array of distinct genotypes, given two 0-based allele indexes.
+ * This follows the following convention used by GnomAD (GATK?), that has the advantage that
+ * gt indexes of small numbers don't change as the number of alleles increases, and also matches
+ * the ref/ref, ref/alt, alt/alt convention for biallelic variants:
+ * 0/0,
+ * 0/1, 1/1,
+ * 0/2, 1/2, 2/2,
+ * 0/3, 1/3, 2/3, 3/3,
+ * ... */
+{
+// Note that in that scheme, h0Ix <= h1Ix; if h0Ix > h1Ix, swap them.
+if (h0Ix > h1Ix)
+    {
+    int tmp = h0Ix;
+    h0Ix = h1Ix;
+    h1Ix = tmp;
+    }
+return (h1Ix * (h1Ix+1) / 2) + h0Ix;
+}
+
+static int genotypeArraySize(int alleleCount)
+/* Return the number of distinct genotypes given the number of alleles.  That is the same as the
+ * array index of the first genotype that would follow for alleleCount+1. */
+{
+return vcfGenotypeIndex(0, alleleCount + 1);
+}
+
+void vcfCountGenotypes(struct vcfRecord *rec, int **retGtCounts, int **retAlleleCounts,
+                       int *retPhasedCount, int *retDiploidCount)
+/* Tally genotypes and alleles for summary, adding 1 to rec->alleleCount to represent missing data */
+{
+vcfParseGenotypes(rec);
+int *alCounts;
+AllocArray(alCounts, rec->alleleCount + 1);
+int *gtCounts;
+AllocArray(gtCounts, genotypeArraySize(rec->alleleCount + 1));
+int phasedGts = 0, diploidCount = 0;
+int i;
+for (i = 0;  i < rec->file->genotypeCount;  i++)
+    {
+    struct vcfGenotype *gt = &(rec->genotypes[i]);
+    if (gt->isPhased)
+	phasedGts++;
+    int hapIxA = gt->hapIxA;
+    if (hapIxA < 0)
+        hapIxA = rec->alleleCount;
+    alCounts[hapIxA]++;
+    if (!gt->isHaploid)
+	{
+        diploidCount++;
+        int hapIxB = gt->hapIxB;
+        if (hapIxB < 0)
+            hapIxB = rec->alleleCount;
+        alCounts[hapIxB]++;
+        gtCounts[vcfGenotypeIndex(hapIxA, hapIxB)]++;
+        }
+    }
+if (retGtCounts)
+    *retGtCounts = gtCounts;
+if (retAlleleCounts)
+    *retAlleleCounts = alCounts;
+if (retPhasedCount)
+    *retPhasedCount = phasedGts;
+if (retDiploidCount)
+    *retDiploidCount = diploidCount;
+}
+
 static char *vcfDataLineAutoSqlString =
         "table vcfDataLine"
         "\"The fields of a Variant Call Format data line\""


=====================================
src/utils/bedFixBlockOverlaps
=====================================
@@ -48,7 +48,7 @@ for line in ifh:
         newStarts.append(str(bs))
     row[10] = ",".join(newLens)
     row[11] = ",".join(newStarts)
-    print "\t".join(row)
+    print("\t".join(row))
 
 
 


=====================================
src/utils/bedGraphToBigWig/bedGraphToBigWig.c
=====================================
@@ -20,6 +20,11 @@
 #include "bigWig.h"
 
 
+char *version = "2.8";   // when changing, change in bedToBigBed, bedGraphToBigWig, and wigToBigWig
+/* Version history from 2.8 on at least -
+ * 2.8  sync up version numbers with bedToBigBed 
+ */
+
 static int blockSize = 256;
 static int itemsPerSlot = 1024;
 static boolean doCompress = FALSE;
@@ -31,7 +36,7 @@ void usage()
 /* Explain usage and exit. */
 {
 errAbort(
-  "bedGraphToBigWig v %d - Convert a bedGraph file to bigWig format.\n"
+  "bedGraphToBigWig v %s - Convert a bedGraph file to bigWig format (bbi version: %d).\n"
   "usage:\n"
   "   bedGraphToBigWig in.bedGraph chrom.sizes out.bw\n"
   "where in.bedGraph is a four column file in the format:\n"
@@ -49,7 +54,7 @@ errAbort(
   "   -blockSize=N - Number of items to bundle in r-tree.  Default %d\n"
   "   -itemsPerSlot=N - Number of data points bundled at lowest level. Default %d\n"
   "   -unc - If set, do not use compression."
-  , bbiCurrentVersion, blockSize, itemsPerSlot
+  , version, bbiCurrentVersion, blockSize, itemsPerSlot
   );
 }
 


=====================================
src/utils/bedJoinTabOffset/bedJoinTabOffset.c
=====================================
@@ -10,7 +10,7 @@
 void usage()
 /* Explain usage and exit. */
 {
-errAbort(
+errAbort("bedJoinTabOffset - Add file offset and length of line in a text file with the same name as the BED name to each row of BED.\n"
   "usage:\n"
   "   bedJoinTabOffset inTabFile inBedFile outBedFile\n"
   "Given a bed file and tab file where each have a column with matching values:\n"


=====================================
src/utils/bedToBigBed/bedToBigBed.c
=====================================
@@ -18,8 +18,9 @@
 #include "bigBed.h"
 #include "twoBit.h"
 
-char *version = "2.7";
+char *version = "2.8";   // when changing, change in bedToBigBed, bedGraphToBigWig, and wigToBigWig
 /* Version history from 2.6 on at least -
+ *   2.8 - Various changes where developer didn't increment version id
  *   2.7 - Added check for duplicate field names in asParse.c
  *   2.6 - Made it not crash on empty input.  
  *   */
@@ -41,7 +42,7 @@ void usage()
 /* Explain usage and exit. */
 {
 errAbort(
-  "bedToBigBed v. %s - Convert bed file to bigBed. (BigBed version: %d)\n"
+  "bedToBigBed v. %s - Convert bed file to bigBed. (bbi version: %d)\n"
   "usage:\n"
   "   bedToBigBed in.bed chrom.sizes out.bb\n"
   "Where in.bed is in one of the ascii bed formats, but not including track lines\n"


=====================================
src/utils/chromToUcsc/chromToUcsc
=====================================
@@ -1,6 +1,8 @@
 #!/usr/bin/env python
 import logging, optparse, gzip
 from sys import stdin, stdout, stderr, exit, modules
+from os.path import basename
+
 try:
     from urllib.request import urlopen # py2
 except ImportError:
@@ -16,9 +18,12 @@ def parseArgs():
     parser = optparse.OptionParser("""usage: %prog [options] filename - change NCBI or Ensembl chromosome names to UCSC names using the chromAlias table of the genome browser.
 
     Examples:
-        %prog -g hg19 --get
+        %prog -g hg19 --get              # download the file hg19.chromAlias.tsv into current directory
         %prog -i test2.bed -o test2.ucsc.bed -a hg19.chromAlias.tsv -g hg19
         cat test.bed | %prog -a mm10.chromAlias.tsv > test.ucsc.bed
+
+    If you do not want to use the --get option to retrieve the mapping tables, you can also download the alias mapping
+    files yourself, e.g. for mm10 with 'wget http://hgdownload.soe.ucsc.edu/goldenPath/mm10/database/chromAlias.txt.gz'
     """)
 
     parser.add_option("", "--get", dest="doDownload", action="store_true", help="download a chrom alias table from UCSC for --genomeDb into the current directory and exit")
@@ -72,12 +77,15 @@ def chromToUcsc(db, aliasFname, ifh, ofh):
     ucscChroms = set(toUcsc.values())
 
     mtSkipCount = 0
+
+    isHg19 = (db=="hg19" or basename(aliasFname).startswith("hg19"))
+
     for lineNo, sep, chrom, rest in splitLines(ifh):
         # just pass through any UCSC chrom names
         if chrom in ucscChroms:
             ucscChrom = chrom
         else:
-            if db=="hg19" and (chrom=="MT" or chrom=="M"):
+            if isHg19 and (chrom=="MT" or chrom=="M"):
                 mtSkipCount += 1
                 continue
 


=====================================
src/utils/cpgIslandExt/cpg_lh.c
=====================================
@@ -60,8 +60,8 @@ void getstats ( int start, int end, char *seq, char *seqname, int *ncpg, int *ng
 
 void usage (void)
 { 
-  fprintf(stderr, "cpglh - calculate CpG Island data for cpgIslandExt tracks\n");
-  fprintf(stderr, "usage:\n    cpglh <sequence.fa>\n") ;
+  fprintf(stderr, "cpg_lh - calculate CpG Island data for cpgIslandExt tracks\n");
+  fprintf(stderr, "usage:\n    cpg_lh <sequence.fa>\n") ;
   fprintf(stderr, "where <sequence.fa> is fasta sequence, must be more than\n");
   fprintf(stderr, "   200 bases of legitimate sequence, not all N's\n");
   fprintf(stderr, "\nTo process the output into the UCSC bed file format:\n\n"


=====================================
src/utils/doClinvarLift
=====================================
@@ -3,8 +3,13 @@
 set -e # stop on error
 set -o pipefail # stop on errors even in pipes
 
+if [ "$1" = "" ] ; then
+        echo usage: doClinvarLift '[db] - create clinvarLift track with human SNVs lifted to db'
+        exit 1
+fi
+
 db=$1
-outDir=/hive/data/genomes/$1/bed/clinvarLift
+outDir=/hive/data/genomes/$db/bed/clinvarLift
 
 echo making directory $outDir
 mkdir -p $outDir
@@ -12,14 +17,14 @@ cd $outDir
 echo Dumping clinvar
 bigBedToBed /hive/data/outside/otto/clinvar/clinvarMain.hg38.bb stdout > clinvar.bed
 # drop the long ones, they are unlikely to be useful
-cat clinvar.bed | tawk '($3-$2<10)' > clinvarShort.bed
+cat clinvar.bed | tawk '($3-$2<10)' > clinvarLift.bed
 
 # need to do this twice so make a function
 function addPosAndSeq () {
         # add the position and sequence to the bed file as fields 13 and 14
         # arguments: inputfile db outputfile
         echo Adding position and sequences to $1, for db $2, output into $3
-        cat $1 | cut -f1-3 | tawk '{$4=$1":"$2"-"$3;print;}'> tmp.bed4
+        cat $1 | cut -f1-3 | tawk '{$4=$1":"($2+1)"-"$3;print;}'> tmp.bed4
         twoBitToFa -bed=tmp.bed4 /hive/data/genomes/$2/$2.2bit tmp.fa
         faToTab tmp.fa stdout | tawk '{$2=toupper($2); print}' > tmp.faTab
         cut -f1-12 $1 > tmp.part1
@@ -28,15 +33,15 @@ function addPosAndSeq () {
         rm -f tmp.part1 tmp.faTab tmp.bed4 tmp.part2
 }
 
-addPosAndSeq clinvarShort.bed hg38 clinvarShort.withPos.bed
+addPosAndSeq clinvarLift.bed hg38 clinvarLift.withPos.bed
 
 # uppercase first letter of db
 dbUp="$(tr '[:lower:]' '[:upper:]' <<< ${db:0:1})${db:1}"
-liftOver clinvarShort.withPos.bed /gbdb/hg38/liftOver/hg38To$dbUp.over.chain.gz clinvarShort.$db.bed /dev/null -bedPlus=12 -tab -multiple
-addPosAndSeq clinvarShort.$db.bed $db clinvarShort.$db.seq.bed
+liftOver clinvarLift.withPos.bed /gbdb/hg38/liftOver/hg38To$dbUp.over.chain.gz clinvarLift.$db.bed /dev/null -bedPlus=12 -tab -multiple
+addPosAndSeq clinvarLift.$db.bed $db clinvarLift.$db.seq.bed
 # remove column 13, the position in $db, as we have that already.
 # also remove features that are too long
-cut clinvarShort.$db.seq.bed -f1-12,14- | tawk '($3-$2<10)' | sort -k1,1 -k2,2n -S10G > clinvarLift.$db.bed 
+cut clinvarLift.$db.seq.bed -f1-12,14- | tawk '($3-$2<10)' | sort -k1,1 -k2,2n -S10G > clinvarLift.$db.bed 
 cp ~/kent/src/hg/lib/clinvarLift.as ./
 sed -i s/DB/$db/g ./clinvarLift.as
 bedToBigBed clinvarLift.$db.bed -tab -as=clinvarLift.as /hive/data/genomes/$db/chrom.sizes clinvarLift.bb -type=bed12+
@@ -44,3 +49,16 @@ if [ ! -e /gbdb/$db/bbi/clinvarLift.bb ]; then
     ln -s `pwd`/clinvarLift.bb /gbdb/$db/bbi/clinvarLift.bb
 fi
 echo clinvarLift job for $db done.
+echo Suggested makeDoc entry:
+echo '##########################################################################'
+echo clinvar lift '('DONE, `date`, $USER')'
+echo featureBits hg38 clinvarLift.bed
+featureBits hg38 clinvarLift.bed
+echo wc -l clinvarLift.bed
+wc -l clinvarLift.bed
+echo featureBits $db clinvarLift.$db.bed
+featureBits $db clinvarLift.$db.bed
+echo wc -l clinvarLift.$db.bed
+wc -l clinvarLift.$db.bed
+echo '##########################################################################'
+


=====================================
src/utils/qa/getRRtableStatus.csh
=====================================
@@ -14,6 +14,12 @@ set machine="rr"
 set table=""
 set field=""
 set dumpfile=""
+set fieldval=0
+set fields = ( 'Name' 'Engine' 'Version' 'Row_format' 'Rows' \
+   'Avg_row_length' 'Data_length' 'Max_data_length' 'Index_length' \
+   'Data_free' 'Auto_increment' 'Create_time' 'Update_time' \
+   'Check_time' 'Create_options' 'Comment' )
+
 
 if ( $#argv < 3 || $#argv > 4 ) then
   echo
@@ -47,6 +53,7 @@ if ( $#argv == 4 ) then
   endif
 endif
 
+# get file for non-real-time queries (used for rr later)
 set dumpfile=`getRRdumpfile.csh $db $machine`
 if ( $status ) then
   echo
@@ -64,23 +71,25 @@ if ( $status ) then
   exit 1
 endif
 
-# check if $field is legit
-head -1 $dumpfile | grep -iw "$field" > /dev/null
-if ( $status ) then
+# set variable to index of field in STATUS dump
+set i=0
+while ( $i < `echo $#fields | awk '{print $1+1}'` )
+  echo $fields[$i] | grep -w $field > /dev/null
+  if ( $status ) then
+    set i=`echo $i | awk '{print $1+1}'`
+  else
+    set fieldval=$i
+    set i=$#fields
+  endif
+end
+
+if ( $fieldval == 0 ) then
   echo
   echo "  $field -- no such field in TABLE STATUS output"
-  echo "  for $db.$table.  try one of the following"
-  echo
-  head -1 $dumpfile | sed -e "s/\t/\n/g" 
   echo
   exit 1
 endif
 
-
-# set variable to index of field in STATUS dump
-set fieldval=`head -1 $dumpfile | sed -e "s/\t/\n/g" | grep -iwn "$field" \
-      | gawk -F":" '{print $1}'`
-
 # print the field for the desired table
 cat $dumpfile | grep -w "^$table" | sed -e "s/\t/\n/g" | sed -n "${fieldval}p" 
 


=====================================
src/utils/qa/weeklybld/buildEnv.csh
=====================================
@@ -1,17 +1,17 @@
 # set for preview 1: move date and vNNN from REVIEWDAY to LASTREVIEWDAY
-setenv REVIEWDAY 2020-02-03             # v394 preview
-setenv LASTREVIEWDAY 2020-01-13             # v393 preview
+setenv REVIEWDAY 2020-03-16             # v396 preview
+setenv LASTREVIEWDAY 2020-02-24             # v395 preview
 setenv previewSubversion       # empty string unless mistake, otherwise .1 etc
 
 # set for preview 2: move date and vNNN from REVIEW2DAY to LASTREVIEW2DAY
-setenv REVIEW2DAY  2020-02-10           # v394 preview2
-setenv LASTREVIEW2DAY  2020-01-20           # v393 preview2
+setenv REVIEW2DAY  2020-03-23           # v396 preview2
+setenv LASTREVIEW2DAY  2020-03-02           # v395 preview2
 setenv preview2Subversion      # empty string unless mistake, otherwise .1 etc
 
 # set these three for final build:  increment NN and copy date from TODAY to LASTWEEK
-setenv BRANCHNN 394                    # increment for new build
-setenv TODAY 2020-02-17                 # v394 final, copy to LASTWEEK
-setenv LASTWEEK 2020-01-27                 # v393 final, copy to LASTWEEK
+setenv BRANCHNN 396                    # increment for new build
+setenv TODAY 2020-03-30                 # v396 final, copy to LASTWEEK
+setenv LASTWEEK 2020-03-09                 # v395 final, copy to LASTWEEK
 setenv baseSubversion                  # empty string unless mistake, otherwise .1 etc (warning: fixed for _base but not _branch)
 
 setenv BUILDHOME /hive/groups/browser/newBuild


=====================================
src/utils/rmFaDups/rmFaDups.c
=====================================
@@ -1,4 +1,4 @@
-/* rmFaDup - remove duplicate records from FA file. */
+/* rmFaDups - remove duplicate records from FA file. */
 
 /* Copyright (C) 2011 The Regents of the University of California 
  * See README in this or parent directory for licensing information. */
@@ -12,9 +12,9 @@ void usage()
 /* Print usage and exit. */
 {
 errAbort(
-  "rmFaDup - remove duplicate records in FA file\n"
+  "rmFaDups - remove duplicate records in FA file\n"
   "usage\n"
-  "   rmFaDup oldName.fa newName.fa\n");
+  "   rmFaDups oldName.fa newName.fa\n");
 }
 
 void rmFaDups(char *inFile, char *outFile)


=====================================
src/utils/sizeof/sizeof.c
=====================================
@@ -12,6 +12,8 @@ int main()
 unsigned int byteOrder = 0x12345678;
 unsigned char *cp = (unsigned char *) &byteOrder;
 
+printf("sizeof - show size of various C types for reference\n\n");
+
 printf("     type   bytes    bits\n");
 printf("     char\t%d\t%d\n", (int)sizeof(char), 8*(int)sizeof(char));
 printf("unsigned char\t%d\t%d\n", (int)sizeof(unsigned char),


=====================================
src/utils/userApps/fetchChromSizes
=====================================
@@ -4,7 +4,7 @@
 #	mysql, wget or ftp
 
 usage() {
-    printf "usage: fetchChromSizes <db> > <db>.chrom.sizes
+    printf "fetchChromSizes - script to grab chrom.sizes from UCSC via either of: mysql, wget or ftp\n\nusage: fetchChromSizes <db> > <db>.chrom.sizes
     used to fetch chrom.sizes information from UCSC for the given <db>
 <db> - name of UCSC database, e.g.: hg38, hg18, mm9, etc ...
 


=====================================
src/utils/wigToBigWig/wigToBigWig.c
=====================================
@@ -12,6 +12,10 @@
 #include "bwgInternal.h"
 #include "zlibFace.h"
 
+char *version = "2.8";   // when changing, change in bedToBigBed, bedGraphToBigWig, and wigToBigWig
+/* Version history from 2.8 on at least -
+ * 2.8  sync up version numbers with bedToBigBed 
+ */
 
 static int blockSize = 256;
 static int itemsPerSlot = 1024;
@@ -24,8 +28,8 @@ void usage()
 /* Explain usage and exit. */
 {
 errAbort(
-  "wigToBigWig v %d - Convert ascii format wig file (in fixedStep, variableStep\n"
-  "or bedGraph format) to binary big wig format.\n"
+  "wigToBigWig v %s - Convert ascii format wig file (in fixedStep, variableStep\n"
+  "or bedGraph format) to binary big wig format (bbi version: %d).\n"
   "usage:\n"
   "   wigToBigWig in.wig chrom.sizes out.bw\n"
   "Where in.wig is in one of the ascii wiggle formats, but not including track lines\n"
@@ -45,7 +49,7 @@ errAbort(
   "   -unc - If set, do not use compression.\n"
   "   -fixedSummaries - If set, use a predefined sequence of summary levels.\n"
   "   -keepAllChromosomes - If set, store all chromosomes in b-tree."
-  , bbiCurrentVersion, blockSize, itemsPerSlot
+  , version, bbiCurrentVersion, blockSize, itemsPerSlot
   );
 }
 



View it on GitLab: https://salsa.debian.org/med-team/libucsc/-/compare/e61607e334c4d37d077442f0bda8a48389941532...8c58cc7b4f45edd8feb5b442c3936e871ce62cc1

-- 
View it on GitLab: https://salsa.debian.org/med-team/libucsc/-/compare/e61607e334c4d37d077442f0bda8a48389941532...8c58cc7b4f45edd8feb5b442c3936e871ce62cc1
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20200402/036e71bc/attachment-0001.html>


More information about the debian-med-commit mailing list