Development
===========
Please use the `PyVCF repository `_.
Pull requests gladly accepted.
Issues should be reported at the github issue tracker.
Running tests
-------------
Please check the tests by running them with::
python setup.py test
New features should have test code sent with them.
Changes
=======
0.5.0 Release
-------------
VCF 4.1 support:
* support missing genotype #28 (thanks @martijnvermaat)
* parseALT for svs #42, #48 (thanks @dzerbino)
* `trim_common_suffix` method #22 (thanks @martijnvermaat)
* Multiple metadata with the same key is stored (#52)
Writer improvements
* A/G in Number INFO fields #53 (thanks @lennax)
* Better output #55 (thanks @cmclean)
* Allow malformed INFO fields #49 (thanks @ilyaminkin)
* Added bayes factor error bias VCF filter
* Added docs on vcf_melt
* filters from @libor-m (SNP only, depth per sample, avg depth per sample)
* change to the filter API, use docstring for filter description
0.4.6 Release
-------------
* Performance improvements (#47)
* Preserve order of INFO column (#46)
0.4.5 Release
-------------
* Support exponent syntax qual values (#43, #44) (thanks @martijnvermaat)
* Preserve order of header lines (#45)
0.4.4 Release
-------------
* Support whitespace in sample names
* SV work (thanks @arq5x)
* Python 3 support via 2to3 (thanks @marcelm)
* Improved filtering script, capable of importing local files
0.4.3 Release
-------------
* Single floats in Reader._sample_parser not being converted to float #35
* Handle String INFO values when Number=1 in header #34
0.4.2 Release
-------------
* Installation problems
0.4.1 Release
-------------
* Installation problems
0.4.0 Release
-------------
* Package structure
* add ``vcf.utils`` module with ``walk_together`` method
* samtools tests
* support Freebayes' non standard '.' for no call
* fix vcf_melt
* support monomorphic sites, add ``is_monomorphic`` method, handle null QUALs
* filter support for files with monomorphic calls
* Values declared as single are no-longer returned in lists
* several performance improvements
0.3.0 Release
-------------
* Fix setup.py for python < 2.7
* Add ``__eq__`` to ``_Record`` and ``_Call``
* Add ``is_het`` and ``is_variant`` to ``_Call``
* Drop aggressive parse mode: we're always aggressive.
* Add tabix fetch for single calls, fix one->zero based indexing
* add prepend_chr mode for ``Reader`` to add `chr` to CHROM attributes
0.2.2 Release
-------------
Documentation release
0.2.1 Release
-------------
* Add shebang to vcf_filter.py
0.2 Release
-----------
* Replace genotype dictionary with a ``Call`` object
* Methods on ``Record`` and ``Call`` (thanks @arq5x)
* Shortcut parse_sample when genotype is None
0.1 Release
-----------
* Added test code
* Added Writer class
* Allow negative number in ``INFO`` and ``FORMAT`` fields (thanks @martijnvermaat)
* Prefer ``vcf.Reader`` to ``vcf.VCFReader``
* Support compressed files with guessing where filename is available on fsock
* Allow opening by filename as well as filesocket
* Support fetching rows for tabixed indexed files
* Performance improvements (see ``test/prof.py``)
* Added extensible filter script (see FILTERS.md), vcf_filter.py
Contributions
=============
Project started by @jdoughertyii and taken over by @jamescasbon on 12th January 2011.
Contributions from @arq5x, @brentp, @martijnvermaat, @ian1roberts, @marcelm.
This project was supported by `Population Genetics `_.