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.

Project Versions

Table Of Contents

Previous topic

Filtering VCF files

This Page