Changelog
Version 2.1.0 (2024-02-28)
Added support for Python 3.12
Fixed fasta sequence composition error
Fixed fastq continuous reading error
Version 2.0.2 (2023-11-25)
Fixed subsequence return None error
Version 2.0.1 (2023-09-18)
Speedup the gzip index writing to index file
Version 2.0.0 (2023-09-05)
Added support for file name with wide char
Added support for specifying index file path
Added support for more characters in DNA sequence
Added reverse complement function for DNA conversion
Improved the performance of kseq library
Optimized gzip index importing and saving without temp file
Fixed segmentation fault when using sequence composition
Fixed memory leak in Fastq read quality integer
Fixed zlib download url broken error when building
Version 1.1.0 (2023-04-19)
Fixed unicode error when reading fastq file
Version 1.0.1 (2023-03-28)
Fixed invalid uppercase when iterating fastx
Version 1.0.0 (2023-03-24)
Added support for fasta header without space
Fixed some files missing in pypi tar.gz file
Version 0.9.1 (2022-12-31)
Fixed unicode decode error when parsing large fasta/q file
Fixed sequence retrival error when using sequence object from loop after break
Version 0.9.0 (2022-12-30)
Added support for Python3.10, 3.11
Added support for aarch64 and musllinux
Added using tab as fasta sequence name splitter
Fixed repeat sequence comment error
Fixed the quality score parsing error from fastq
Fixed the reference of sequence returned from function
Older versions
Version 0.8.4 (2021-06-30)
Added slice feature to FastaKeys
Fixed FastaKeys and FastqKeys iteration memory leak
Optimized FastaKeys and FastqKeys creation
Version 0.8.3 (2021-04-25)
Fixed Fastx iteration for next function
Fixed Fastx uppercase for reading fasta
Version 0.8.2 (2021-01-02)
Fixed sample segfault error caused by fastq iteration error
Fixed gzip index import error in multiple processes
Fixed fastq iteration segfault error with full_name=True
Fixed all objects iteration to support built-in next function
Version 0.8.1 (2020-12-16)
Fixed pip install error from source code
Removed support for python39 32bit due to dll load error
Version 0.8.0 (2020-12-15)
Added Fastx object as a simple sequence iterator
Added FastqKeys object to obtain read names
Added full_name option to Fastq object
Added support for Python 3.9
Fixed Fasta object error identifier order
Optimized speed of containing test and iteration
Changed Identifier object to FastaKeys object
Version 0.7.0 (2020-09-20)
Added support for extracting flank sequences
Added support for indexing super large gzip file
Reduced memory consumption when building gzip index
Improved the speed of random access to reads from fastq
Fixed sequence dealloc error cuasing no fasta delloc trigger
Fixed fastq max and min quality score return value
Version 0.6.17 (2020-08-31)
Fixed gzip index loading error when no write permission
Version 0.6.16 (2020-08-27)
Increased the buff size of kseq to speedup sequence iteration
Removed warning message from fasta.c when building full index
Version 0.6.15 (2020-08-25)
Fixed key_func error caused by free operation
Fixed full name error when reading sequence without whitespace in names
Fixed a hidden bug in fasta/q iteration when reading attributes (not seq)
Fixed fasta/fastq size and sequence count error on Windows when parsing large file
Fixed zlib 2gb and 4gb limit on windows x64 to support large file
Reduced seek point span size to speedup random access from gzip file
Version 0.6.14 (2020-07-31)
Added support for using full header as identifier without building index
Improved the speed of fasta sequence iteration
Improved the speed of gzipped fastq read iteration
Fixed a bug in fastq read reader
Version 0.6.13 (2020-07-09)
Fixed fastq read iteration error
Fixed fastq cache buffer reader
Added cache for mean, median and N50 length
Speedup fasta iteration by reduced seeks
Version 0.6.12 (2020-06-14)
Fixed DeprecationWarning on py38 caused by ‘#’ formats args
Fixed some memory leak bugs
Cached sequence name to speedup fetch method
Used random string as gzip index temp file to support multiple processes
Version 0.6.11 (2020-05-18)
Fixed iteration error on Windows
Fixed test error on Windows
Fixed fastq composition error on 32bit OS
Improved the speed of fasta identifier sort and filter
Version 0.6.10 (2020-04-22)
Improved the speed of sequence reading
Improved the speed of sequence line iteration
Added avglen, minlen, maxlen, minqual and maxqual to Fastq object
Fixed read retrieval error
Fixed some hidden memory leaks
Changed fastq index file structure to save more information
Version 0.6.9 (2020-04-12)
Added buffreader to improve speed for reading from gzipped file
Added extract subcommand to extract sequences from fasta/q file
Added build subcommand to just build index
Changed info subcommand output to a tab seperated table
Changed Fastq object composition parameter to full_index
Version 0.6.8 (2020-03-14)
Fixed large offset seek error on windows
Fixed PyUnicode_AsUTF8 const char type warning
Changed sequence read line by line function
Changed gzread to fread for fastq information
Version 0.6.7 (2020-03-03)
Added check for fasta/q format when open file
Added benchmark scripts for evaluating performance
Speed up the fasta/q object iteration
Optimzed str length warning caused by strlen
Version 0.6.6 (2020-02-15)
Fixed incorrect sliced sequence name
Fixed seq,identifier,read object memory dealloc
Changed description text into description length in index file
Version 0.6.5 (2020-01-31)
Reduced memory usage when building index for large fasta
Removed rebuild_index method from Fasta object due to segmentation fault
Optimized compatibility between sqlite3 and python GIL
Version 0.6.4 (2020-01-14)
Fixed last sequence fetching error caused by missing n
Improved fasta/q object key error message to make it more human
Version 0.6.3 (2020-01-08)
Added .raw attribute to sequence object to get seq raw string
Added .raw attribute to read object to get read raw string
Added .description to read object to get full header line
Added iteration for sequence object from FASTA object
Added iteration for tuple from FASTQ object
Changed FASTA class parameter composition to full_index
Version 0.6.2 (2020-01-04)
Fixed sample sequence index error
Fixed ci deploy error
Version 0.6.1 (2020-01-03)
Added sample sequences command line
Added get subsequence command line
Version 0.6.0 (2020-01-02)
Fixed FASTA object parameter error
Fixed identifier sprintf warning
Fixed fasta description end r retained
Fixed error byte length when slice sequence
Removed support for python2.7 and python3.4
Removed python2 compat
Disabled export gzip index when building memory index
Version 0.5.10 (2019-11-20)
Added identifier filter function
Remove tp_new for Read, Sequence and Identifier
Fixed module method error
Version 0.5.9 (2019-11-17)
Added get longest and shortest sequence object
Added composition argument to speedup getting GC content
Added memory index to keep index in memory rather than local file
Fixed command line error
Changed sqlite to higher version
Removed journal_mode OFF
Speedup index building
Version 0.5.8 (2019-11-10)
Fixed fasta NL function parameter check
Fixed read id error when fastq iteration
Version 0.5.7 (2019-11-09)
Fixed SystemError caused caused by Python 2.7 seperated int and long type
Fixed String type check on Python 2.7
Fixed objects memory deallocation
Version 0.5.6 (2019-11-08)
Optimized random access from plain file
Reduced memory consumption
Version 0.5.5 (2019-11-07)
Added Support for IUPAC code complement
Speedup reverse complement
Speedup space removing and uppercase
Version 0.5.4 (2019-11-04)
Added guess fasta type (DNA, RNA, protein)
Added support for calculating protein sequence composition
Optimized the speed of index building
Calculate sequence composition when get gc content or composition
Fixed char return in python 2.7
Version 0.5.3 (2019-10-23)
Added support for coverting fastq to fasta
Updated command line interface docs
Fixed command line entry points
Version 0.5.2 (2019-10-18)
Fixed command line interface running error
Version 0.5.1 (2019-10-17)
Added key function for custom sequence identifier
Optimized speed of fasta indexing
Fixed bool args parsing error in py2.7
Version 0.5.0 (2019-10-13)
Added support for python 2.7 and 3.4
Added command line tool to manipulate fasta and fastq file
Added gzip attribute to fasta and fastq object to check whether compressed
Added sort function for identifier object
Fixed python bool argument parsing error caused by uint16_t
Fixed identifier sort key initialization
Version 0.4.1 (2019-10-05)
Fixed fastq quality encoding system guesser
Fixed gzip index insertion error
Version 0.4.0 (2019-09-29)
Added support for parsing FASTQ
Added random access to reads from FASTQ
Version 0.3.10 (2019-09-27)
Fixed GC skew exception caused by mixing unsigned with signed for division
Version 0.3.9 (2019-09-26)
Fixed sequence read line by line error
Fixed last sequence build index error when fasta file ended without n
Fixed GC skew error
Version 0.3.8 (2019-09-25)
Fixed large offset became negative error
Fixed slice step
Fixed uncorrect median length
Fixed strand compare error
Added GC skew calculation
Updated test script
Version 0.3.7 (2019-09-24)
Changed int type to standard type
Added support for processing large fasta file
Added id number for each sequence
Fixed SQL fetch error
Used 50 as default value of nl to calculate N50 and L50
Version 0.3.6 (2019-09-20)
Added support for searching subsequence from a sequence
Added support for checking subsequence weather in a sequence
Fixed gzip index import error
Fixed subsequence parent length for full sequence extraction
Version 0.3.5 (2019-09-08)
Fixed unicode error caused by sqlite3_finalize
Version 0.3.4 (2019-09-07)
Fixed seq description unicode string error
Version 0.3.3 (2019-09-07)
Fixed sequence description encoding error
Version 0.3.2 (2019-09-07)
Deleted
Version 0.3.1 (2019-09-07)
Added support for geting sequence description
Version 0.3.0 (2019-09-07)
Added read sequence from fasta file line by line
Added support for calculating assembly N50 and L50
Added support for calculating median and average length
Added support for getting longest and shortest sequence
Added support for calculating counts of sequence
removed support for Python34
Version 0.2.11 (2019-08-31)
Support for Python 3.4
Version 0.2.10 (2019-08-28)
Changed fseek and fread into gzseek and gzread
Fixed sequence cache name comparision
Fixed last sequence read error without line end
Fixed subsequence slice error in normal FASTA file
Version 0.2.9 (2019-08-27)
Fixed bad line calculate error
Changed rewind to fseek for subsequence extraction
Version 0.2.8 (2019-08-26)
Changed kseq.h library from li to attractivechaos
Improved fasta parser
Version 0.2.7 (2019-08-26)
Fixed no gzip index wrote to sqlite index file
Version 0.2.6 (2019-08-26)
Optimized speed of gzip random access
Version 0.2.5 (2019-08-25)
Fixed segmentation fault raised when loading gzip index
Changed fasta object method get_seq to fetch
Version 0.2.4 (2019-08-25)
Fixed fasta iter error after building new index
Version 0.2.3 (2019-08-24)
Fixed fasta iter error when end of file is not n
Version 0.2.2 (2019-07-19)
Fixed identifier contain error
Version 0.2.1 (2019-07-15)
Fixed sequence name always end with 0
Fixed fasta iterable for flat fasta
Version 0.2.0 (2019-07-09)
First release to PyPI