Skip to content
Commits on Source (8)
libucsc (0.0+git20181204.8fcb9fa0+dfsg-1) UNRELEASED; urgency=medium
libucsc (0.0+git20200121.ba14f430+dfsg-1) UNRELEASED; urgency=medium
* Initial release (Closes: #xxxxxx)
-- Andreas Tille <tille@debian.org> Wed, 05 Dec 2018 11:38:35 +0100
-- Andreas Tille <tille@debian.org> Tue, 21 Jan 2020 22:01:46 +0100
......@@ -3,16 +3,16 @@ Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.
Uploaders: Andreas Tille <tille@debian.org>
Section: science
Priority: optional
Build-Depends: debhelper (>= 11~),
Build-Depends: debhelper-compat (= 12),
libhts-dev,
libssl-dev,
libpng-dev,
libmariadb-java,
uuid-dev
Standards-Version: 4.2.1
Standards-Version: 4.4.1
Vcs-Browser: https://salsa.debian.org/med-team/libucsc
Vcs-Git: https://salsa.debian.org/med-team/libucsc.git
Homepage: http://genome.ucsc.edu/
Homepage: https://genome.ucsc.edu/
Package: libucsc0
Architecture: any
......
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: ucsc
Upstream-Contact: Jim Kent <jim_kent@pacbell.net>
Source: git://genome-source.soe.ucsc.edu/kent.git
......
Bug-Database: https://github.com/ucscGenomeBrowser/kent/issues
Bug-Submit: https://github.com/ucscGenomeBrowser/kent/issues/new
......@@ -2,6 +2,8 @@
o (in 36x1) Fixed problem with -fastMap option that made it put in gaps in the
allignment sometimes when a short mismatch would be a better choice.
o (in 36x2) Fixed problem with -maxIntron set to non-default value on protein query.
o (in 36x3) Added ipv6 support.
o (in 36x4) Added _alt support.
36:
o (in 35x1) added repMatch default values for tileSizes 16 to 18 in genoFind.c
......
......@@ -20,7 +20,8 @@
int port = bzpDefaultPort;
int cpuCount = 2;
char *host = "localhost";
unsigned char subnet[4] = {255,255,255,255};
struct cidr *subnet = NULL;
void usage()
/* Explain usage and exit. */
......@@ -38,7 +39,8 @@ printf("Options: (defaults are shown for numerical parameters)\n");
bzpServerOptionsHelp(bzp);
bzpClientOptionsHelp(bzp);
printf(" -debug Writes diagnostic output to console and no daemon fork\n");
printf(" -subnet=255.255.255.255 Restrict access to subnet\n");
printf(" -subnet=255.255.255.255 Restrict access to subnet. \n");
printf(" Supports comma-separated list of IPv4 or IPv6 subnets in CIDR notation, e.g. 255.255.255.255/24\n");
printf(" -port=%d Use specified TCP/IP port\n", bzpDefaultPort);
printf(" -host=%s Query specified host\n", host);
printf(" -cpu=%d Use specified number of CPUs (processes)\n", cpuCount);
......@@ -314,7 +316,7 @@ setMaxAlloc(2LL*1024LL*1024LL*1024LL);
optionInit(&argc, argv, options);
port = optionInt("port", port);
host = optionVal("host", host);
netParseSubnet(optionVal("subnet", NULL), subnet);
subnet = internetParseSubnetCidr(optionVal("subnet", NULL));
cpuCount = optionInt("cpu", cpuCount);
if (argc < 2)
usage();
......
......@@ -198,6 +198,11 @@ static SOCKET socket_connect(const char *host, const char *port)
server.sin_port = htons(atoi(port));
if (connect(fd, (struct sockaddr*)&server, sizeof(server)) != 0) __err_connect("connect");
// freehostent(hp); // strangely in MSDN, hp is NOT freed (memory leak?!)
/* FOR CODE TO CONNECT SUPPORTING IPV6 and IPV4 using our net.c:
fd = netConnect(host, port);
*/
return fd;
}
#endif
......
......@@ -2099,7 +2099,9 @@ int vcf_format(const bcf_hdr_t *h, const bcf1_t *v, kstring_t *s)
for (i = 0; i < v->n_info; ++i) {
bcf_info_t *z = &v->d.info[i];
if ( !z->vptr ) continue;
if ( !first ) kputc(';', s); first = 0;
if ( !first )
kputc(';', s);
first = 0;
kputs(h->id[BCF_DT_ID][z->key].key, s);
if (z->len <= 0) continue;
kputc('=', s);
......@@ -2146,7 +2148,9 @@ int vcf_format(const bcf_hdr_t *h, const bcf1_t *v, kstring_t *s)
for (i = 0; i < (int)v->n_fmt; ++i) {
bcf_fmt_t *f = &fmt[i];
if ( !f->p ) continue;
if (!first) kputc(':', s); first = 0;
if (!first)
kputc(':', s);
first = 0;
if (gt_i == i)
bcf_format_gt(f,j,s);
else
......
......@@ -50,6 +50,13 @@ samfile_t *bamMustOpenLocal(char *fileName, char *mode, void *extraHeader);
* The implementation is just a wrapper around samopen from the samtools library
* that aborts with error message if there's a problem with the open. */
long long bamFileItemCount(char *fileOrUrl, char *baiFileOrUrl);
/* Return the total number of mapped items across all sequences in fileOrUrl, using index file.
* If baiFileOrUrl is NULL, the index file is assumed to be fileOrUrl.bai.
* NOTE: not all bam index files include mapped item counts, so this may return 0 even for large
* bam. As of May 2019, our copy of hts_idx_get_stat does not support cram indexes
* (perhaps they never include counts?), so this always returns 0 for cram. */
void bamFetchAlreadyOpen(samfile_t *samfile, bam_hdr_t *header, bam_index_t *idx, char *bamFileName,
char *position, bam_fetch_f callbackFunc, void *callbackData);
/* With the open bam file, return items the same way with the callbacks as with bamFetch() */
......
......@@ -321,4 +321,6 @@ boolean asCompareObjAgainstStandardBed(struct asObject *asYours, int numColumnsT
void loadAndValidateBed(char *row[], int wordCount, int fieldCount, struct lineFile *lf, struct bed * bed, struct asObject *as, boolean isCt);
/* Convert a row of strings to a bed and validate the contents. Abort with message if invalid data. Optionally validate bedPlus via asObject. */
int itemRgbColumn(char *column9);
/* Convert color specification to internal format. */
#endif /* BASICBED_H */
......@@ -143,5 +143,7 @@ struct slName *bigBedListExtraIndexes(struct bbiFile *bbi);
int bbExtraFieldIndex(struct bbiFile *bbi, char* fieldName);
/* return the index of a given extra field */
int bbFieldIndex(struct bbiFile *bbi, char* fieldName);
/* return the index of a given field. Return -1 if not found. */
#endif /* BIGBED_H */
......@@ -81,7 +81,7 @@ double bigWigSingleSummary(struct bbiFile *bwf, char *chrom, int start, int end,
enum bbiSummaryType summaryType, double defaultVal);
/* Return the summarized single value for a range. */
boolean isBigWig(char *fileName);
boolean isBigWigFile(char *fileName);
/* Peak at a file to see if it's bigWig */
boolean bigWigFileCheckSigs(char *fileName);
......
......@@ -265,6 +265,12 @@ void cgiEncodeHash(struct hash *hash, struct dyString *dy);
/* Put a cgi-encoding of a string valued hash into dy. Tags are always
* alphabetical to make it easier to compare if two hashes are same. */
void cgiMakeSubmitButtonMaybePressed(char *name, char *value, char *msg,
char *onClick, boolean pressed);
/* Make 'submit' type button, with optional messsage and onclick javascript, boolean pressed.
Set styling to indicate whether button has been pressed (for buttons that change browser mode).
*/
void cgiMakeButtonWithMsg(char *name, char *value, char *msg);
/* Make 'submit' type button. Display msg on mouseover, if present*/
......
......@@ -176,6 +176,9 @@
#define uglyAbort errAbort /* debugging error abort. */
#define uglyOut stdout /* debugging fprintf target. */
unsigned long memCheckPoint();
/* Return the amount of memory allocated since last called. */
void *needMem(size_t size);
/* Need mem calls abort if the memory allocation fails. The memory
* is initialized to zero. */
......@@ -979,6 +982,9 @@ int chopByWhiteRespectDoubleQuotes(char *in, char *outArray[], int outSize);
* Fred "and Ethyl" results in word [Fred "and Ethyl"]
* Special note "" is a valid, though empty word. */
int chopByCharRespectDoubleQuotes(char *in, char sep, char *outArray[], int outSize);
/* Chop a string into sep delimited strings but honor double quotes */
int chopByChar(char *in, char chopper, char *outArray[], int outSize);
/* Chop based on a single character. */
......@@ -993,10 +999,10 @@ char *skipBeyondDelimit(char *s,char delimit);
/* Returns NULL or pointer to first char beyond one (or more contiguous) delimit char.
If delimit is ' ' then skips beyond first patch of whitespace. */
char *skipLeadingSpaces(char *s);
char *skipLeadingSpaces(const char *s);
/* Return first white space or NULL if none.. */
char *skipToSpaces(char *s);
char *skipToSpaces(const char *s);
/* Return first white space. */
int eraseTrailingSpaces(char *s);
......@@ -1253,12 +1259,12 @@ int intAbs(int a);
#define roundll(a) ((long long)((a)+0.5))
/* Round floating point val to nearest long long. */
#ifndef min
#if !(defined(min) || defined(__cplusplus))
#define min(a,b) ( (a) < (b) ? (a) : (b) )
/* Return min of a and b. */
#endif
#ifndef max
#if !(defined(max) || defined(__cplusplus))
#define max(a,b) ( (a) > (b) ? (a) : (b) )
/* Return max of a and b. */
#endif
......
......@@ -43,9 +43,18 @@ ifeq (${PTHREADLIB},)
PTHREADLIB=-lpthread
endif
# required extra library on Mac OSX
ICONVLIB=
# pthreads is required
ifneq ($(UNAME_S),Darwin)
L+=${PTHREADLIB}
else
ifneq ($(wildcard /opt/local/lib/libiconv.a),)
ICONVLIB=/opt/local/lib/libiconv.a
else
ICONVLIB=-liconv
endif
endif
# autodetect if openssl is installed
......@@ -55,7 +64,7 @@ endif
# autodetect UCSC installation of hal:
ifeq (${HALDIR},)
HALDIR = /hive/groups/browser/hal/halRelease
HALDIR = /hive/groups/browser/hal/halRelease/hal.2015-11-11
ifneq ($(wildcard ${HALDIR}),)
ifeq (${USE_HAL},)
USE_HAL=1
......@@ -68,6 +77,10 @@ ifeq (${USE_HAL},1)
HG_DEFS+=-DUSE_HAL
HG_INC+=-I${HALDIR}/inc
endif
# on hgwdev, include HAL by defaults
ifeq (${IS_HGWDEV},yes)
L+=${HALLIBS}
endif
# libssl: disabled by default
......@@ -83,7 +96,20 @@ endif
ifeq (${IS_HGWDEV},yes)
L+=/usr/lib64/libssl.a /usr/lib64/libcrypto.a -lkrb5 -lk5crypto -ldl
else
L+=-lssl -lcrypto
ifneq ($(wildcard /opt/local/lib/libssl.a),)
L+=/opt/local/lib/libssl.a
else
ifneq ($(wildcard /usr/lib/x86_64-linux-gnu/libssl.a),)
L+=/usr/lib/x86_64-linux-gnu/libssl.a
else
L+=-lssl
endif
endif
ifneq ($(wildcard /opt/local/lib/libcrypto.a),)
L+=/opt/local/lib/libcrypto.a
else
L+=-lcrypto
endif
endif
# autodetect where libm is installed
......@@ -140,6 +166,11 @@ ifneq ($(MAKECMDGOALS),clean)
MYSQLINC=/usr/include/mysql
MYSQLLIBS=/usr/lib64/libmysqlclient.a /usr/lib64/libssl.a /usr/lib64/libcrypto.a -lkrb5 -ldl -lz
endif
ifeq (${MYSQLLIBS},)
ifneq ($(wildcard /usr/lib/x86_64-linux-gnu/libmysqlclient.a),)
MYSQLLIBS=/usr/lib/x86_64-linux-gnu/libmysqlclient.a -ldl
endif
endif
# this does *not* work on Mac OSX with the dynamic libraries
ifneq ($(UNAME_S),Darwin)
ifeq (${MYSQLLIBS},)
......@@ -261,7 +292,7 @@ endif
#global external libraries
L += $(kentSrc)/htslib/libhts.a
L+=${PNGLIB} ${MLIB} ${ZLIB}
L+=${PNGLIB} ${MLIB} ${ZLIB} ${ICONVLIB}
HG_INC+=${PNGINCL}
# pass through COREDUMP
......
......@@ -275,4 +275,8 @@ void aaToAbbr(char aa, char *abbrBuf, size_t abbrBufSize);
void trimRefAlt(char *ref, char *alt, uint *pStart, uint *pEnd, int *pRefLen, int *pAltLen);
/* If ref and alt have identical bases at beginning and/or end, trim those & update all params. */
void trimRefAltLeft(char *ref, char *alt, uint *pStart, uint *pEnd, int *pRefLen, int *pAltLen);
/* If ref and alt have identical bases at beginning and/or end, trim those starting on the right
* so we get the leftmost representation & update all params. */
#endif /* DNAUTIL_H */
......@@ -14,11 +14,11 @@ struct dyString
{
struct dyString *next; /* Next in list. */
char *string; /* Current buffer. */
int bufSize; /* Size of buffer. */
int stringSize; /* Size of string. */
long bufSize; /* Size of buffer. */
long stringSize; /* Size of string. */
};
struct dyString *newDyString(int initialBufSize);
struct dyString *newDyString(long initialBufSize);
/* Allocate dynamic string with initial buffer size. (Pass zero for default) */
#define dyStringNew newDyString
......@@ -36,7 +36,7 @@ void freeDyStringList(struct dyString **pDs);
void dyStringAppend(struct dyString *ds, char *string);
/* Append zero terminated string to end of dyString. */
void dyStringAppendN(struct dyString *ds, char *string, int stringSize);
void dyStringAppendN(struct dyString *ds, char *string, long stringSize);
/* Append string of given size to end of string. */
char dyStringAppendC(struct dyString *ds, char c);
......@@ -77,7 +77,7 @@ struct dyString * dyStringSub(char *orig, char *in, char *out);
/* Make up a duplicate of orig with all occurences of in substituted
* with out. */
void dyStringBumpBufSize(struct dyString *ds, int size);
void dyStringBumpBufSize(struct dyString *ds, long size);
/* Force dyString buffer to be at least given size. */
char *dyStringCannibalize(struct dyString **pDy);
......@@ -97,7 +97,7 @@ char *dyStringCannibalize(struct dyString **pDy);
#define dyStringIsNotEmpty(ds) (ds->stringSize > 0)
/* Return TRUE if dyString is not empty. */
void dyStringResize(struct dyString *ds, int newSize);
void dyStringResize(struct dyString *ds, long newSize);
/* resize a string, if the string expands, blanks are appended */
void dyStringQuoteString(struct dyString *dy, char quotChar, char *text);
......
......@@ -36,6 +36,9 @@ void fieldedTableFree(struct fieldedTable **pTable);
struct fieldedRow *fieldedTableAdd(struct fieldedTable *table, char **row, int rowSize, int id);
/* Create a new row and add it to table. Return row. */
struct fieldedRow *fieldedTableAddHead(struct fieldedTable *table, char **row, int rowSize, int id);
/* Create a new row and add it to start of table. Return row. */
struct fieldedTable *fieldedTableFromTabFile(char *fileName, char *url, char *requiredFields[], int requiredCount);
/* Read table from tab-separated file with a #header line that defines the fields. Ensures
* all requiredFields (if any) are present. The url is just used for error reporting and
......@@ -45,6 +48,11 @@ struct fieldedTable *fieldedTableFromTabFile(char *fileName, char *url, char *re
void fieldedTableToTabFile(struct fieldedTable *table, char *fileName);
/* Write out a fielded table back to file */
void fieldedTableToTabFileWithId(struct fieldedTable *table, char *fileName,
char *idField, int startId);
/* Write out a fielded table back to file. If idField is non-NULL it will be added
* to the start of each output line as a steadily incrementing integer starting with startId. */
boolean fieldedTableColumnIsNumeric(struct fieldedTable *table, int fieldIx);
/* Return TRUE if field has numeric values wherever non-null */
......@@ -57,6 +65,9 @@ void fieldedTableSortOnField(struct fieldedTable *table, char *field, boolean do
int fieldedTableMustFindFieldIx(struct fieldedTable *table, char *field);
/* Find index of field in table's row. Abort if field not found. */
int fieldedTableFindFieldIx(struct fieldedTable *table, char *field);
/* Return index of field in a table's row or -1 if not found */
struct hash *fieldedTableIndex(struct fieldedTable *table, char *field);
/* Return hash of fieldedRows keyed by values of given field */
......
......@@ -382,7 +382,7 @@ struct gfClump *gfPcrClumps(struct genoFind *gf,
#define MAXSINGLEPIECESIZE 5000 /* maximum size of a single piece */
#define gfVersion "36x2" /* Current BLAT version number */
#define gfVersion "36x4" /* Current BLAT version number */
#endif /* GENOFIND_H */