Changes

From Genome Analysis Wiki
Jump to navigationJump to search
7,293 bytes added ,  00:04, 13 November 2017
Line 1: Line 1: −
[[Category:Software]]
+
= General libStatGen Information =
[[Category:C++]]
+
See [[C++ Library: libStatGen]].
[[Category:libStatGen]]
     −
== Download ==
+
= Latest Development Versions =
Click the link to download the tar of the statgen library and tools: [[Media:StatGen.0.1.4.tgz‎|StatGen.0.1.4.tgz‎]] - Released 1/21/2011
+
For information about obtaining the latest Development Versions, see [[C++ Library: libStatGen#Where to Find It|Where to Find libStatGen]]
   −
'''If you use this software, please e-mail me, Mary Kate Trost, at mktrost@umich.edu'''
+
= Official Releases =
 +
If you prefer to run the last official release rather than the latest development version, you can download that here.
   −
This version is recommended for Unix users with access to the GNU C++ compiler.
+
To install an official release, unpack the downloaded file (tar xvf), cd into the libStatGen directory and type <code>make all</code>.  
   −
To install, unpack the downloaded file (tar xvf), cd into the statgen directory and type make.
     −
=== Dependencies ===
+
'''LibStatGen.1.0.14 Release Notes'''
* This software requires the following to be installed:
+
*Version 1.0.14 - Released 7/8/2015
** g++
+
** https://github.com/statgen/libStatGen/archive/v1.0.14.tar.gz
** development version of zlib (zlib1g-dev on ubuntu)
+
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
** openssl and md5 (libssl-dev on ubuntu)
+
*** General Updates:
** curses (libcurses-perl on ubuntu)
+
**** Compiling Updates:
 +
***** PedigreeLoader.cpp - fix bool vs int definition
 +
***** InputFile - add 'const' to isOpen and ifeof methods. Also add comments about usage of 'operator >>'
 +
*** Bam/Tabix Updates:
 +
**** Update how the index is stored in memory to not preallocate the maximum number of bins for each reference as this could use a lot of memory if there are a lot of references
 +
*** BAM Updates:
 +
**** SamFilter
 +
***** Update to clear MapQ and N/A flags when marking as unmapped
 +
***** Fix bug in clipping logic that didn't properly adjust the start position if the read was already clipped
 +
*** VCF Updates:
 +
**** Add missing include for c++11
   −
=== Notes ===
  −
* '''Current Release Notes''' (1/21/2011)
  −
** Added the following programs:
  −
*** glfMerge
  −
*** glfMultiples
  −
** Merged latest set of core library code into lib/general
     −
=== Problems in Current Release ===
+
'''LibStatGen.1.0.13 Release Notes'''
Let me know if you experience any of these problems as we may already have a fix you can use:
+
*Version 1.0.13 - Released 2/20/2015
 +
** https://github.com/statgen/libStatGen/archive/v1.0.13.tar.gz
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
 +
*** General Updates:
 +
**** Added knetfile support to InputFile (only for bgzf files if KNET_ON=1 is set on compile line
 +
**** GzipHeader - fix signed/unsigned comparison compile issue
 +
**** Upgrade bgzf (also allow append mode)
 +
*** Makefiles Updates:
 +
**** Update dependencies to fix/improve some compiling issues
 +
*** PhoneHome Updates:
 +
**** Allow PhoneHome to be a legacy parameter
 +
**** Update new version available message to stand out more
 +
**** Fix bugs in checks for new version since it wasn't finding it.
 +
*** BAM Updates:
 +
**** SamReferenceInfo operator== - fix to not check hash, since hash could be different for same info
 +
**** Pileup - improve error message for buffer overrun
 +
*** VCF Updates:
 +
**** Add option to update GT field
 +
**** Add subset samples parameter to ReadRecord
 +
**** Improve handling of adding CO header
   −
* 1/24/11 - glfMultiples does not have a 'test' target, so 'make test' fails.
+
''' Older Releases'''
** Solution: Add the following at line 89 of statgen/src/glfMultiples/Makefile
+
*[[Media:LibStatGen.1.0.12.tgz‎|LibStatGen.1.0.12.tgz‎]] - Released 5/14/2014
<pre>
+
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
test : all
+
*** General Updates:
if test -d $(TEST_DIR); \
+
**** Improve Makefiles for adding additional libraries/creating external libraries
        then \
+
**** Cleanup compiling for mingw
        $(MAKE) $(PARALLEL_MAKE) -C $(TEST_DIR) OPTFLAG="$(OPTFLAG)" --no-print-directory $@; \
+
**** Cleanup Copyrights
        fi
+
*** BAM Updates:
 +
**** Update rmTags & getTagsString to accept ',' delimiter rather than just ';'
 +
*[[Media:LibStatGen.1.0.11.tgz‎|LibStatGen.1.0.11.tar.gz‎]] - Released 2/28/2014
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
 +
*** General Updates:
 +
**** Cleanup compile warnings - should improve compatibility with Windows, RedHat, and older and newer compilers
 +
**** StringBasics: Improve off-by-one overflow handling (from github user wavexx)
 +
*** BAM Updates:
 +
**** Fix it to properly handle 'B' & 'f' tags
 +
**** Fix handling of duplicate tags
 +
*** PhoneHome Updates:
 +
**** Add parameters names (not values) to PhoneHome URL
 +
*** VCF Updates:
 +
**** Move allele count logic from VcfFileReader into VcfRecord.
 +
*[[Media:LibStatGen.1.0.10.tar.gz‎|LibStatGen.1.0.10.tar.gz‎]] - Released 1/2/2014
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
 +
*** Updates:
 +
**** Add PhoneHome/version checking logic
 +
***General Updates:
 +
**** fix use of strncpy to fix compile problem for some users
 +
**** Fix compile problem on gcc 4.8.1 by adding -Wno-strict-overflow in general/Makefile after -Werror
 +
**** Reduce the default IFILE read buffer size from 1MB to 64KB.
 +
**** Fix ifclose to take a IFILE reference so it can make the pointer 0 after closing
 +
**** StringBasics::AsInteger now returns false if the string is empty.
 +
**** GzipFileType - update to accept -.gz as stdin/stdout
 +
**** Remove unnecssary line from Parameters Status call
 +
**** Fix memory leak on Tabix destructor
 +
*** Vcf Updates:
 +
**** VCF - add class/methods to discard records based on ID
 +
*** Bam Updates:
 +
**** SamFlag - add isSecondary check
 +
**** Fix SamFile so it only allows '-', '-.sam', '-.bam', or '-.ubam' to indicate reading from stdin rather than anything that starts with '-' in order to protect it from misinterpreting another parameter as the stdin filename
 +
**** SamRecord: Add warnings about Duplicate Tags being overwritten
 +
**** SamFile - improve sort order validation error messages and compare using both String::Compare and strcmp to handle various sort mechanisms since neither matches samtools exactly (if either is successful, the sort order is OK)
 +
*** Glf Updates:
 +
**** GlfFile cleanup bugs/handle missind endMarkers & update "get" methods to be const
   −
</pre>
+
*[[Media:LibStatGen.1.0.9.tgz‎|LibStatGen.1.0.9.tgz‎]] - Released 7/7/2013
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
 +
*** Updates:
 +
**** Update Makefile processing to check for a Makefile in the test directory before recursively calling make in there
 +
**** Replace CFLAGS wtih COMPFLAGS
 +
**** Update the Windows WIN32 if statements
 +
***General Updates:
 +
**** Add boundary check to StringBasics memory
 +
**** Added support for new CIGAR characters (X & =)
 +
**** Update bug in PedigreeLoader to specify WHITESPACE
 +
**** add accessors for getting tabix information
 +
*** Vcf Updates:
 +
**** add ability to drop trailing missing Genotype fields
 +
**** check that the tabix index is for VCF file type
 +
**** Fix broken dependency
 +
*** Bam Updates:
 +
**** SamHeaderRecord: add accessor to get the value for the key
 +
**** update some classes to have virtual destructors
   −
=== Troubleshooting ===
  −
If you are having trouble compiling, check [[StatGen Troubleshooting]] for help.  If that does not solve your problem, email me for support.
     −
=== Previous Versions ===
+
*[[Media:LibStatGen.1.0.8.tgz‎|LibStatGen.1.0.8.tgz‎]] - Released 1/29/2013
* [[Media:StatGen.0.1.3.tgz‎|StatGen.0.1.3.tgz‎]] - Released 1/19/2011
+
** Contains classes for general processing (string, reference file, parameters), bam, glf, fastq, and vcf
** Added the following programs:
+
*** Updates:
*** mgpileup
+
**** Added VCF file handling (merged the vcf branch to master)
*** thunderVCF
+
**** Add support for reading Tabix files
*** vcfCooker
+
**** Add ReusableVector class that holds vectors that will remove only the last or be reset & reused without clearing memory.
*** verifyBamID
+
 
** BAM
+
*[[Media:LibStatGen.1.0.7.tgz‎|LibStatGen.1.0.7.tgz‎]] - Released 1/29/2013
*** Fixed bug in SamQuerySeqWithRefIter
+
** Contains classes for general processing (string, reference file, parameters), bam, glf, and fastq
*** Add handling of the reference to the SAM Library to allow the conversion of SAM Record Sequence to/from using '=' or just bases.
+
*** Updates:
**** Add the conversion to/from '=' in the sequence to the bam Convert program.
+
**** Add operator== to StringIntHash
*** Add the ability to read the header when opening a BAM/SAM file.
+
**** Cleanup compiling for files that are just headers with no .cpp
*** Update SetReadSection to reset the data for validating sorting since it can jump around in the file.
+
**** Update Makefile TOOLOBJ to handle fortran
** GLF
+
**** ReferenceSequence.h fix compile problem on upgraded system
*** Fixed bug that incorrectly wrote GLF Records of type 2
+
**** Add Makefile.extlib for compiling libraries that use libStatGen
*** Add capability to consume remaining records when getNextRefSection is called. Also when writing automatically write the End Marker if it was not already written when a new RefSection is written or when the file is closed. 
+
*** BAM Updates:
** FastQ
+
**** Update to allow copying SamHeaderRecords and automatically update the SQ ReferenceInfo
*** Add option to not check for uniqueness of the sequence identifier
+
**** Update SamFileHeader::getReferenceInfo() to return a SamReferenceInfo reference rather than ptr
** OTHER
+
**** Update SamRecord::getStringTag to return a const string pointer instead of just a string pointer
*** removed zlib from being included in the repository.
+
**** Update SamCoordOutput to add flushAll method
* [[Media:StatGen.0.1.2.tgz|StatGen.0.1.2.tgz]] - Released 11/09/2010
+
 
** FASTQ
+
* [[Media:LibStatGen.1.0.6.tgz‎|LibStatGen.1.0.6.tgz‎]] - Released 11/14/2012
*** Add option to disable the unique sequence identifier check since that uses a lot of memory.
+
** Contains classes for general processing (string, reference file, parameters), bam, glf, and fastq
** GLF
+
*** Updates:
*** Automatically write the End Maker record when writing GLF files.
+
**** Fix a bug in the make install command
*** Add capability of consuming records to get to the next reference section.
+
 
*** Fixed bug in writing GLF records of type 2.
+
* [[Media:LibStatGen.1.0.5.tgz‎|LibStatGen.1.0.5.tgz‎]] - Released 10/24/2012
** Other
+
** Contains classes for general processing (string, reference file, parameters), bam, glf, and fastq
*** Remove ZLIB from being contained within the repository (having zlib in the repository may have caused some compile issues in the previous version).
+
*** Updates:
* [[Media:StatGen.0.1.1.tgz|StatGen.0.1.1.tgz]] - Released 11/09/2010
+
**** Cleanup compile warnings
**Added QPLOT to the release
+
**** Support compiling without ZLIB (use: make ZLIB_AVAIL=0)
** Made lib/general/StringBasics.h method IsEmpty const
+
*** BAM Updates:
** Removed an unimplemented method from GlfRecord.h
+
**** Update to add error messages about failing to add a header
* [[Media:StatGen.0.1.0.tgz|StatGen.0.1.0.tgz]] - Released 11/02/2010
+
**** Handle a vtype of 'B' in the TAG field (treats it like a string)
** Original version.
+
 
 +
* LibStatGen.1.0.4.tgz‎ - Released skipped
 +
*[[Media:LibStatGen.1.0.3.tgz‎|LibStatGen.1.0.3.tgz‎]] - Released 09/19/2012
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, and fastq
 +
*** Additions:
 +
**** Fix Makefile COMPILE_ANY_CHANGE logic to actually work
 +
**** Fix compile problems on macs
 +
***** Add #include <cstddef> to GzipFileType.h & #include <unistd.h> to MemoryMapArray.h
 +
*** General Additions:
 +
**** Update DBSNP processing in GenomeSequence to also accept gzipped files
 +
**** Add support of fasta files in GenomeSequence
 +
**** Update GenomeSequence constructor/open to create the umfa version if it doesn't already exist
 +
**** Update StringAlias to add getAliases
 +
**** Update StringHash to have an option to do case sensitive (instead of always case-insensitive)
 +
**** Make library building PHONY so it is always checked for updates and only updated if objects are newer
 +
*** BAM Additions:
 +
**** Update BamIndex hex constant to use ULL
 +
**** Cleanup handling of header errors
 +
**** Update SamFileHeader to use case sensitive hashes
 +
**** Make repeated header line keys a warning, not an error
 +
*** FASTQ Additions:
 +
**** Update to output average qualities
 +
*[[Media:LibStatGen.1.0.2.tgz‎|LibStatGen.1.0.2.tgz‎]] - Released 05/16/2012
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, and fastq
 +
** Additions:
 +
*** Add reverseComplement method to BaseUtilities.h
 +
*[[Media:LibStatGen.1.0.1.tgz‎|LibStatGen.1.0.1.tgz‎]] - Released 05/04/2012
 +
** Contains classes for general processing (string, reference file, parameters), bam, glf, and fastq
 +
** BAM Additions:
 +
*** Ability to use require/exclude flags when reading
 +
*** CigarHelper for soft clipping
 +
*** Fixed bug in BamIndex that wasn't closing the file
 +
*** Additional cleanup/updates, see https://github.com/statgen/libStatGen/commits/master/bam for all changes between 10/10/2011 and 05/04/2012.
 +
** General Additions:
 +
*** Modifications to improve file handling/string processing
 +
*** Fixed some compile warnings
 +
*** Update Parameters class to always print warnings about unknown parameters to stderr
 +
*** Update PedigreePerson to create/delete the strings object
 +
*** Cleanup GenomeSequence to remove code that is also in BaseAsciiMap
 +
** Samtools Modifications:
 +
*** Do not use knetfile and fix compile warning
 +
 
 +
*[[Media:LibStatGen.1.0.0.tgz‎|LibStatGen.1.0.0.tgz‎]] - Released 10/10/2011
 +
** Contains classes for general processiong (string, reference file, parameters), bam, glf, and fastq
 +
** Initial release of libStatGen.  It started from the library found in the deprecated StatGen repository.

Navigation menu