cyvcf2
======
Note: cyvcf2 versions < 0.20.0 require htslib < 1.10. cyvcf2 versions >= 0.20.0 require htslib >= 1.10
<!-- ghp-import -p docs/build/html/ -->
The latest documentation for cyvcf2 can be found here:
[![Docs](https://img.shields.io/badge/docs-latest-blue.svg)](http://brentp.github.io/cyvcf2/)
If you use cyvcf2, please cite the [paper](https://academic.oup.com/bioinformatics/article/2971439/cyvcf2)
Fast python **(2 and 3)** parsing of VCF and BCF including region-queries.
[![Build](https://github.com/brentp/cyvcf2/actions/workflows/build.yml/badge.svg)](https://github.com/brentp/cyvcf2/actions/workflows/build.yml)
cyvcf2 is a cython wrapper around [htslib](https://github.com/samtools/htslib) built for fast parsing of [Variant Call Format](https://en.m.wikipedia.org/wiki/Variant_Call_Format) (VCF) files.
Attributes like `variant.gt_ref_depths` work for diploid samples and return a numpy array directly so they are immediately ready for downstream use.
**note** that the array is backed by the underlying C data, so, once `variant` goes out of scope. The array will contain nonsense.
To persist a copy, use: `cpy = np.array(variant.gt_ref_depths)` instead of just `arr = variant.gt_ref_depths`.
Example
=======
The example below shows much of the use of cyvcf2.
```Python
from cyvcf2 import VCF
for variant in VCF('some.vcf.gz'): # or VCF('some.bcf')
variant.REF, variant.ALT # e.g. REF='A', ALT=['C', 'T']
variant.CHROM, variant.start, variant.end, variant.ID, \
variant.FILTER, variant.QUAL
# numpy arrays of specific things we pull from the sample fields.
# gt_types is array of 0,1,2,3==HOM_REF, HET, UNKNOWN, HOM_ALT
variant.gt_types, variant.gt_ref_depths, variant.gt_alt_depths # numpy arrays
variant.gt_phases, variant.gt_quals, variant.gt_bases # numpy array
## INFO Field.
## extract from the info field by it's name:
variant.INFO.get('DP') # int
variant.INFO.get('FS') # float
variant.INFO.get('AC') # float
# convert back to a string.
str(variant)
## sample info...
# Get a numpy array of the depth per sample:
dp = variant.format('DP')
# or of any other format field:
sb = variant.format('SB')
assert sb.shape == (n_samples, 4) # 4-values per
# to do a region-query:
vcf = VCF('some.vcf.gz')
for v in vcf('11:435345-556565'):
if v.INFO["AF"] > 0.1: continue
print(str(v))
```
Installation
============
## pip with bundled htslib
```
pip install cyvcf2
```
## pip with system htslib
Assuming you have already built and installed htslib version 1.12 or higher.
```
CYVCF2_HTSLIB_MODE=EXTERNAL pip install --no-binary cyvcf2 cyvcf2
```
## windows (experimental, only test on MSYS2)
Assuming you have already built and installed htslib.
```
SETUPTOOLS_USE_DISTUTILS=stdlib pip install cyvcf2
```
## github (building htslib and cyvcf2 from source)
```
git clone --recursive https://github.com/brentp/cyvcf2
pip install -r requirements.txt
# sometimes it can be required to remove old files:
# python setup.py clean_ext
CYVCF2_HTSLIB_MODE=BUILTIN CYTHONIZE=1 python setup.py install
# or to use a system htslib.so
CYVCF2_HTSLIB_MODE=EXTERNAL python setup.py install
```
On **OSX**, using brew, you may have to set the following as indicated by the brew install:
```
For compilers to find openssl you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"
For pkg-config to find openssl you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig"
```
Testing
=======
Install `pytest`, then tests can be run with:
```
pytest
```
CLI
=======
Run with `cyvcf2 path_to_vcf`
```
$ cyvcf2 --help
Usage: cyvcf2 [OPTIONS] <vcf_file> or -
fast vcf parsing with cython + htslib
Options:
-c, --chrom TEXT Specify what chromosome to include.
-s, --start INTEGER Specify the start of region.
-e, --end INTEGER Specify the end of the region.
--include TEXT Specify what info field to include.
--exclude TEXT Specify what info field to exclude.
--loglevel [DEBUG|INFO|WARNING|ERROR|CRITICAL]
Set the level of log output. [default:
INFO]
--silent Skip printing of vcf.
--help Show this message and exit.
```
See Also
========
Pysam also [has a cython wrapper to htslib](https://github.com/pysam-developers/pysam/blob/master/pysam/libcbcf.pyx) and one block of code here is taken directly from that library. But, the optimizations that we want for gemini are very specific so we have chosen to create a separate project.
Performance
===========
For the performance comparison in the paper, we used [thousand genomes chromosome 22](ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/release/20130502/ALL.chr22.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz)
With the full comparison runner [here](https://github.com/brentp/cyvcf2/blob/main/scripts/compare.sh).
Raw data
{
"_id": null,
"home_page": "https://github.com/brentp/cyvcf2/",
"name": "cyvcf2",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": null,
"author": "Brent Pedersen",
"author_email": "bpederse@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/93/52/f20ce1965a41eea6015ac489b771a5842db63c1e8cbf402481bf009820f5/cyvcf2-0.31.1.tar.gz",
"platform": null,
"description": "cyvcf2\n======\n\nNote: cyvcf2 versions < 0.20.0 require htslib < 1.10. cyvcf2 versions >= 0.20.0 require htslib >= 1.10\n\n<!-- ghp-import -p docs/build/html/ -->\nThe latest documentation for cyvcf2 can be found here:\n\n[![Docs](https://img.shields.io/badge/docs-latest-blue.svg)](http://brentp.github.io/cyvcf2/)\n\nIf you use cyvcf2, please cite the [paper](https://academic.oup.com/bioinformatics/article/2971439/cyvcf2)\n\n\nFast python **(2 and 3)** parsing of VCF and BCF including region-queries.\n\n\n[![Build](https://github.com/brentp/cyvcf2/actions/workflows/build.yml/badge.svg)](https://github.com/brentp/cyvcf2/actions/workflows/build.yml)\n\ncyvcf2 is a cython wrapper around [htslib](https://github.com/samtools/htslib) built for fast parsing of [Variant Call Format](https://en.m.wikipedia.org/wiki/Variant_Call_Format) (VCF) files.\n\nAttributes like `variant.gt_ref_depths` work for diploid samples and return a numpy array directly so they are immediately ready for downstream use.\n**note** that the array is backed by the underlying C data, so, once `variant` goes out of scope. The array will contain nonsense.\nTo persist a copy, use: `cpy = np.array(variant.gt_ref_depths)` instead of just `arr = variant.gt_ref_depths`.\n\nExample\n=======\n\nThe example below shows much of the use of cyvcf2.\n\n```Python\nfrom cyvcf2 import VCF\n\nfor variant in VCF('some.vcf.gz'): # or VCF('some.bcf')\n variant.REF, variant.ALT # e.g. REF='A', ALT=['C', 'T']\n\n variant.CHROM, variant.start, variant.end, variant.ID, \\\n variant.FILTER, variant.QUAL\n\n # numpy arrays of specific things we pull from the sample fields.\n # gt_types is array of 0,1,2,3==HOM_REF, HET, UNKNOWN, HOM_ALT\n variant.gt_types, variant.gt_ref_depths, variant.gt_alt_depths # numpy arrays\n variant.gt_phases, variant.gt_quals, variant.gt_bases # numpy array\n\n ## INFO Field.\n ## extract from the info field by it's name:\n variant.INFO.get('DP') # int\n variant.INFO.get('FS') # float\n variant.INFO.get('AC') # float\n\n # convert back to a string.\n str(variant)\n\n\n ## sample info...\n\n # Get a numpy array of the depth per sample:\n dp = variant.format('DP')\n # or of any other format field:\n sb = variant.format('SB')\n assert sb.shape == (n_samples, 4) # 4-values per\n\n# to do a region-query:\n\nvcf = VCF('some.vcf.gz')\nfor v in vcf('11:435345-556565'):\n if v.INFO[\"AF\"] > 0.1: continue\n print(str(v))\n```\n\nInstallation\n============\n\n## pip with bundled htslib\n```\npip install cyvcf2\n```\n\n## pip with system htslib\n\nAssuming you have already built and installed htslib version 1.12 or higher.\n```\nCYVCF2_HTSLIB_MODE=EXTERNAL pip install --no-binary cyvcf2 cyvcf2\n```\n\n## windows (experimental, only test on MSYS2)\n\nAssuming you have already built and installed htslib.\n```\nSETUPTOOLS_USE_DISTUTILS=stdlib pip install cyvcf2\n```\n\n## github (building htslib and cyvcf2 from source)\n\n```\ngit clone --recursive https://github.com/brentp/cyvcf2\npip install -r requirements.txt\n# sometimes it can be required to remove old files:\n# python setup.py clean_ext\nCYVCF2_HTSLIB_MODE=BUILTIN CYTHONIZE=1 python setup.py install\n# or to use a system htslib.so\nCYVCF2_HTSLIB_MODE=EXTERNAL python setup.py install\n```\n\nOn **OSX**, using brew, you may have to set the following as indicated by the brew install:\n\n```\nFor compilers to find openssl you may need to set:\n export LDFLAGS=\"-L/usr/local/opt/openssl/lib\"\n export CPPFLAGS=\"-I/usr/local/opt/openssl/include\"\n\nFor pkg-config to find openssl you may need to set:\n export PKG_CONFIG_PATH=\"/usr/local/opt/openssl/lib/pkgconfig\"\n```\n\nTesting\n=======\n\nInstall `pytest`, then tests can be run with:\n\n```\npytest\n```\n\nCLI\n=======\nRun with `cyvcf2 path_to_vcf`\n\n```\n$ cyvcf2 --help\nUsage: cyvcf2 [OPTIONS] <vcf_file> or -\n\n fast vcf parsing with cython + htslib\n\nOptions:\n -c, --chrom TEXT Specify what chromosome to include.\n -s, --start INTEGER Specify the start of region.\n -e, --end INTEGER Specify the end of the region.\n --include TEXT Specify what info field to include.\n --exclude TEXT Specify what info field to exclude.\n --loglevel [DEBUG|INFO|WARNING|ERROR|CRITICAL]\n Set the level of log output. [default:\n INFO]\n --silent Skip printing of vcf.\n --help Show this message and exit.\n```\n\n\nSee Also\n========\n\nPysam also [has a cython wrapper to htslib](https://github.com/pysam-developers/pysam/blob/master/pysam/libcbcf.pyx) and one block of code here is taken directly from that library. But, the optimizations that we want for gemini are very specific so we have chosen to create a separate project.\n\nPerformance\n===========\n\nFor the performance comparison in the paper, we used [thousand genomes chromosome 22](ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/release/20130502/ALL.chr22.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz)\nWith the full comparison runner [here](https://github.com/brentp/cyvcf2/blob/main/scripts/compare.sh).\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "fast vcf parsing with cython + htslib",
"version": "0.31.1",
"project_urls": {
"Homepage": "https://github.com/brentp/cyvcf2/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6fd1132ccbfbfdd159918bfc8eb72dbfd12a028c90682d05d7d58f9c8bc2e01a",
"md5": "61df82cf427685f3480912103c49c326",
"sha256": "5345e952a37a0fc227a81a3b3ecf61449d6f2cbd7f862bcc8d80bda13be683ea"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "61df82cf427685f3480912103c49c326",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 1409793,
"upload_time": "2024-06-18T19:22:21",
"upload_time_iso_8601": "2024-06-18T19:22:21.378909Z",
"url": "https://files.pythonhosted.org/packages/6f/d1/132ccbfbfdd159918bfc8eb72dbfd12a028c90682d05d7d58f9c8bc2e01a/cyvcf2-0.31.1-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "900b59478c54954aedbbbba86d7403e331903fad66a4738061bc757bf94c8044",
"md5": "db7f977c52976cd76f6c27d1ad7cdcf8",
"sha256": "6ac78c7fff3ad173cb6dfa7e394ce14c645c43fa7bb1ef3bd4ddc45fba11d025"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "db7f977c52976cd76f6c27d1ad7cdcf8",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 1302184,
"upload_time": "2024-06-18T19:22:26",
"upload_time_iso_8601": "2024-06-18T19:22:26.945079Z",
"url": "https://files.pythonhosted.org/packages/90/0b/59478c54954aedbbbba86d7403e331903fad66a4738061bc757bf94c8044/cyvcf2-0.31.1-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9d1db8bb63e8de81221e78bd9f1221303f28eaba18f926f0c80296ab0668fa21",
"md5": "a4f04b913cf985bf194b544146871130",
"sha256": "0b37e6ef23965f0efc5f3119ce3eea9d71d0fbfeb3376ef5723dac3aa391f0b4"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a4f04b913cf985bf194b544146871130",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 6796618,
"upload_time": "2024-06-18T19:22:32",
"upload_time_iso_8601": "2024-06-18T19:22:32.268049Z",
"url": "https://files.pythonhosted.org/packages/9d/1d/b8bb63e8de81221e78bd9f1221303f28eaba18f926f0c80296ab0668fa21/cyvcf2-0.31.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "027eacf90ba4a258a6fbc14828a8133eeed218a9f2e35af4d67cefde95bba362",
"md5": "b7662ff63c86db66b6a997d9d4e3d48b",
"sha256": "054ee5fddfac0da12adf5ae5c86d0627615c97a6488ba700d45c46d6c93f9c83"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp310-cp310-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "b7662ff63c86db66b6a997d9d4e3d48b",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 6985697,
"upload_time": "2024-06-18T19:22:38",
"upload_time_iso_8601": "2024-06-18T19:22:38.035600Z",
"url": "https://files.pythonhosted.org/packages/02/7e/acf90ba4a258a6fbc14828a8133eeed218a9f2e35af4d67cefde95bba362/cyvcf2-0.31.1-cp310-cp310-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a60d93de424c7671c24608e9c5a08a0e5cb06c0eec993dcebabb5555bcd62261",
"md5": "62a41b92ea8d3186e7011ffaf86c4119",
"sha256": "f39a37c2358ea7cee996d238b64e957b87ed5d0ccf4a0cec4a34e78efc37c47f"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp310-cp310-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "62a41b92ea8d3186e7011ffaf86c4119",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 6248292,
"upload_time": "2024-06-18T19:22:43",
"upload_time_iso_8601": "2024-06-18T19:22:43.797548Z",
"url": "https://files.pythonhosted.org/packages/a6/0d/93de424c7671c24608e9c5a08a0e5cb06c0eec993dcebabb5555bcd62261/cyvcf2-0.31.1-cp310-cp310-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4055900f70e99caf79d66493c7bf0bfc5d388d1969889099a5ac51176aa4ead0",
"md5": "65eec91ec79f0aeb49e28e0b675e906c",
"sha256": "142eaa5614d984e290ef84accf46b64b6fe15e89aa19a0045a346cb0b45ea1d0"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "65eec91ec79f0aeb49e28e0b675e906c",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 1412511,
"upload_time": "2024-06-18T19:22:47",
"upload_time_iso_8601": "2024-06-18T19:22:47.177248Z",
"url": "https://files.pythonhosted.org/packages/40/55/900f70e99caf79d66493c7bf0bfc5d388d1969889099a5ac51176aa4ead0/cyvcf2-0.31.1-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4c72554e217800ca2acb669a810fa908b590cbaf29c869f12b14ca225103aa3b",
"md5": "0ce722ff5dd097c4aa2ddb89d43c4f51",
"sha256": "cfe331698cf3f844be3a3332f8a5dbcb38330509c1683daa9b0441a9261ed774"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "0ce722ff5dd097c4aa2ddb89d43c4f51",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 1303478,
"upload_time": "2024-06-18T19:23:01",
"upload_time_iso_8601": "2024-06-18T19:23:01.877742Z",
"url": "https://files.pythonhosted.org/packages/4c/72/554e217800ca2acb669a810fa908b590cbaf29c869f12b14ca225103aa3b/cyvcf2-0.31.1-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8e9bf39ecc4089e273ddc765d1ef736b3aac56aed51bde8d021fd6989e2b6b2e",
"md5": "eba6810888bc37c9d0f6bb426129581a",
"sha256": "b06ed66c304f84bb959777859e4065730b067204c7cec3cc29ee3665e884ac4f"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "eba6810888bc37c9d0f6bb426129581a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 6943284,
"upload_time": "2024-06-18T19:23:08",
"upload_time_iso_8601": "2024-06-18T19:23:08.481239Z",
"url": "https://files.pythonhosted.org/packages/8e/9b/f39ecc4089e273ddc765d1ef736b3aac56aed51bde8d021fd6989e2b6b2e/cyvcf2-0.31.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2ab49ddd004ac80bbb6c487df3fdb8e92a700017edf6e543667753e1db6f9e18",
"md5": "57f77a3b4bc0383b9cf323631c0cd634",
"sha256": "ce48c485ecc3391e384ed1f815d8ae0a34ea8867caa1925608fef9bdab6720f5"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp311-cp311-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "57f77a3b4bc0383b9cf323631c0cd634",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 7149535,
"upload_time": "2024-06-18T19:23:11",
"upload_time_iso_8601": "2024-06-18T19:23:11.878682Z",
"url": "https://files.pythonhosted.org/packages/2a/b4/9ddd004ac80bbb6c487df3fdb8e92a700017edf6e543667753e1db6f9e18/cyvcf2-0.31.1-cp311-cp311-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b5136b4d6e3811bf56b07512072ae28a01dc9ffd2aa53152031a157d9b2242fc",
"md5": "dd82367293ae6d200ad1b2a60e6869bc",
"sha256": "fbe63f75854880044e2bfaa06afc92d6e60aa7b1e35013e43fac3c4e930830ed"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp311-cp311-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "dd82367293ae6d200ad1b2a60e6869bc",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 6179703,
"upload_time": "2024-06-18T19:23:19",
"upload_time_iso_8601": "2024-06-18T19:23:19.397755Z",
"url": "https://files.pythonhosted.org/packages/b5/13/6b4d6e3811bf56b07512072ae28a01dc9ffd2aa53152031a157d9b2242fc/cyvcf2-0.31.1-cp311-cp311-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "99931422180d1bac9da9f13e3bd2aa56a4386c5291c3fcf4b88d4f78a44c5eb9",
"md5": "9f374c939aac13d99cb9721d2336b025",
"sha256": "2dd9f8afc80c3204bf69d0f24a8cf45353438a93aa82bbbdac136c3b6e7d318a"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp311-cp311-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "9f374c939aac13d99cb9721d2336b025",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 6413039,
"upload_time": "2024-06-18T19:23:24",
"upload_time_iso_8601": "2024-06-18T19:23:24.904664Z",
"url": "https://files.pythonhosted.org/packages/99/93/1422180d1bac9da9f13e3bd2aa56a4386c5291c3fcf4b88d4f78a44c5eb9/cyvcf2-0.31.1-cp311-cp311-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "20f3cebc8ca1ef789673015c0b256ec351dc305cec46f1cb5d98ede21b5d8645",
"md5": "fa1635efe07b281be5272458098aa776",
"sha256": "75993f0ef2eca17b618c946bf43eb2e0b932b76f4d3e086b5a580a271d13d2d8"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp312-cp312-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "fa1635efe07b281be5272458098aa776",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 1408352,
"upload_time": "2024-06-18T19:23:30",
"upload_time_iso_8601": "2024-06-18T19:23:30.764547Z",
"url": "https://files.pythonhosted.org/packages/20/f3/cebc8ca1ef789673015c0b256ec351dc305cec46f1cb5d98ede21b5d8645/cyvcf2-0.31.1-cp312-cp312-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1890fa7e96e5e2a38cc3a0e80abeef064390fc9b35328ad01f8d936043edff35",
"md5": "8a76ddb100b88da58355675e885e177d",
"sha256": "dda34f22ae7d609355120a39577e0519fb6ec8746ca45d99e78c4b318a0721ea"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8a76ddb100b88da58355675e885e177d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 1305490,
"upload_time": "2024-06-18T19:23:33",
"upload_time_iso_8601": "2024-06-18T19:23:33.773789Z",
"url": "https://files.pythonhosted.org/packages/18/90/fa7e96e5e2a38cc3a0e80abeef064390fc9b35328ad01f8d936043edff35/cyvcf2-0.31.1-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "74c097df3032a348bee991750c1334d66901086070ddc1326d00407e1c3a16c9",
"md5": "92d6382b4673dff952ca12727b8b2888",
"sha256": "bc16c9016581550310d605141550f0aaaca6bd19adec75426c8271da769721e4"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "92d6382b4673dff952ca12727b8b2888",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 6911369,
"upload_time": "2024-06-18T19:23:36",
"upload_time_iso_8601": "2024-06-18T19:23:36.879572Z",
"url": "https://files.pythonhosted.org/packages/74/c0/97df3032a348bee991750c1334d66901086070ddc1326d00407e1c3a16c9/cyvcf2-0.31.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a7bbd8615b7690ad539fb6911f814395973deebc6f27b7d2f513de5de4b08883",
"md5": "14ef0edbbdcfc245103de83aee71b626",
"sha256": "0691c075ee73c8c0fe45144929c3b22a53060c666928444996e4b487233ff948"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp312-cp312-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "14ef0edbbdcfc245103de83aee71b626",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 7096132,
"upload_time": "2024-06-18T19:23:40",
"upload_time_iso_8601": "2024-06-18T19:23:40.221993Z",
"url": "https://files.pythonhosted.org/packages/a7/bb/d8615b7690ad539fb6911f814395973deebc6f27b7d2f513de5de4b08883/cyvcf2-0.31.1-cp312-cp312-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a8bfacc687b334358f839ffac771ab729c22978bc2cb4de744c205c3e23db19",
"md5": "7ea401d0997046acd77259167c207c41",
"sha256": "f0830744b6efb9084230e21a6032cb69836abad80790d7890378db3079a32248"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp312-cp312-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "7ea401d0997046acd77259167c207c41",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 6109651,
"upload_time": "2024-06-18T19:23:46",
"upload_time_iso_8601": "2024-06-18T19:23:46.026431Z",
"url": "https://files.pythonhosted.org/packages/3a/8b/facc687b334358f839ffac771ab729c22978bc2cb4de744c205c3e23db19/cyvcf2-0.31.1-cp312-cp312-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "72a96f6e46575cbf92483416eaf3e201b0c3b8d6758ea89f600b39ad0779199a",
"md5": "c16f2fda15ce5e7f3ca62780932ab4d6",
"sha256": "4c376ac3f54d48537ca3fd93f4bb1be2c9e5688d7aa75cfeefb4ce4c9a6fcf06"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp312-cp312-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "c16f2fda15ce5e7f3ca62780932ab4d6",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 6375226,
"upload_time": "2024-06-18T19:23:49",
"upload_time_iso_8601": "2024-06-18T19:23:49.344413Z",
"url": "https://files.pythonhosted.org/packages/72/a9/6f6e46575cbf92483416eaf3e201b0c3b8d6758ea89f600b39ad0779199a/cyvcf2-0.31.1-cp312-cp312-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1e93b88fc17194a6ef2053db3745efe3dc789eb7d766d6154d21feb11e177583",
"md5": "63defa854a1615953f1af07b2bb6df76",
"sha256": "93acb8d221db3af315defcf2cd8f88b41803afd32b1682252d4969c04a1968b7"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp37-cp37m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "63defa854a1615953f1af07b2bb6df76",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 1399146,
"upload_time": "2024-06-18T19:23:52",
"upload_time_iso_8601": "2024-06-18T19:23:52.630165Z",
"url": "https://files.pythonhosted.org/packages/1e/93/b88fc17194a6ef2053db3745efe3dc789eb7d766d6154d21feb11e177583/cyvcf2-0.31.1-cp37-cp37m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5daf481423147df87a20cd8ce183211fabcdaf43581a3e811f43111d5665f162",
"md5": "0a27c04b920fc449fa452f6ab6973b8a",
"sha256": "517103732f922f15f3f01c009376913922f838e3873c77ab50be7988abcbe959"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "0a27c04b920fc449fa452f6ab6973b8a",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 6628123,
"upload_time": "2024-06-18T19:23:58",
"upload_time_iso_8601": "2024-06-18T19:23:58.089695Z",
"url": "https://files.pythonhosted.org/packages/5d/af/481423147df87a20cd8ce183211fabcdaf43581a3e811f43111d5665f162/cyvcf2-0.31.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ebfd4d63e5c863e5b2e38091e63c998ba661647d3e99df409a8f303fbb9b1085",
"md5": "75b1b36ccfde13f5c7dc13bcb5b7724d",
"sha256": "c34cde3785148907e1143f6df9cb6d77d1f6e5b4fe588ec9760b8168b92e5758"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp37-cp37m-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "75b1b36ccfde13f5c7dc13bcb5b7724d",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 6836575,
"upload_time": "2024-06-18T19:24:01",
"upload_time_iso_8601": "2024-06-18T19:24:01.874681Z",
"url": "https://files.pythonhosted.org/packages/eb/fd/4d63e5c863e5b2e38091e63c998ba661647d3e99df409a8f303fbb9b1085/cyvcf2-0.31.1-cp37-cp37m-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "facb00c434221585df8ff5c7892b55529677d7db68d9cdbb5b82dfc43609f518",
"md5": "8d1157c0d6f32b47744387ee7edbda9b",
"sha256": "7d4a1222ac9ce3c7f726ab8105536d0e6a00ee451e9851e6028448040ea9c567"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "8d1157c0d6f32b47744387ee7edbda9b",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 1404931,
"upload_time": "2024-06-18T19:24:09",
"upload_time_iso_8601": "2024-06-18T19:24:09.454541Z",
"url": "https://files.pythonhosted.org/packages/fa/cb/00c434221585df8ff5c7892b55529677d7db68d9cdbb5b82dfc43609f518/cyvcf2-0.31.1-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b601647c528e6fc6e2100664f007dc02104652fb4d7f71735caed47867fe1e6a",
"md5": "0c134796c46d5874e738cebd759f8a27",
"sha256": "94e82feb4750db1167a0c8a91ca191b8a3fb721c8d8ab48f5836e99399626a3f"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "0c134796c46d5874e738cebd759f8a27",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 6850686,
"upload_time": "2024-06-18T19:24:13",
"upload_time_iso_8601": "2024-06-18T19:24:13.680725Z",
"url": "https://files.pythonhosted.org/packages/b6/01/647c528e6fc6e2100664f007dc02104652fb4d7f71735caed47867fe1e6a/cyvcf2-0.31.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "43fb41400faf34e4db975b0fa901d898539da58c0217f2b49008ea27cf2de70f",
"md5": "e7501383b9210b3f9d4a550b91d7cb59",
"sha256": "851040cd272f6afbaacb3267851597e893e9a75935dca99ff1c08a65c13b79a5"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp38-cp38-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "e7501383b9210b3f9d4a550b91d7cb59",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 7059210,
"upload_time": "2024-06-18T19:24:19",
"upload_time_iso_8601": "2024-06-18T19:24:19.531906Z",
"url": "https://files.pythonhosted.org/packages/43/fb/41400faf34e4db975b0fa901d898539da58c0217f2b49008ea27cf2de70f/cyvcf2-0.31.1-cp38-cp38-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "077a0650813b459c78b18a47dda16ffd44c648ff55cad2def06242d41441f7f0",
"md5": "d06d0f2732273f963add05a9a9ba503f",
"sha256": "55ce92d58cbc18d4bd7e56d62031909bb88cd4262f081d3df04c569048cf0fa9"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "d06d0f2732273f963add05a9a9ba503f",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 1410046,
"upload_time": "2024-06-18T19:24:23",
"upload_time_iso_8601": "2024-06-18T19:24:23.696475Z",
"url": "https://files.pythonhosted.org/packages/07/7a/0650813b459c78b18a47dda16ffd44c648ff55cad2def06242d41441f7f0/cyvcf2-0.31.1-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8f31fcc17b3c132b6464ca7a536cf9b22c8ff904c7af639d51683edaf20f8f19",
"md5": "d051d0f1ddbe74e9532d0280559bb577",
"sha256": "996db8d4c901f7496d9be61786e5a68218d92d26dcdc14c8e0eedf52cce7d459"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "d051d0f1ddbe74e9532d0280559bb577",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 1302453,
"upload_time": "2024-06-18T19:24:26",
"upload_time_iso_8601": "2024-06-18T19:24:26.775746Z",
"url": "https://files.pythonhosted.org/packages/8f/31/fcc17b3c132b6464ca7a536cf9b22c8ff904c7af639d51683edaf20f8f19/cyvcf2-0.31.1-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "904b83c2a4bc73ca1d3ced1b08243f1c0ebd88c38a87c7d252e4f3ce3f43bace",
"md5": "9825d0e205da7fa327ee3e8190193448",
"sha256": "d63c2b29d011303ef7e2c1388950b3a7c94193fa628bbae7a3b4caba1949276c"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "9825d0e205da7fa327ee3e8190193448",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 6794746,
"upload_time": "2024-06-18T19:24:31",
"upload_time_iso_8601": "2024-06-18T19:24:31.280484Z",
"url": "https://files.pythonhosted.org/packages/90/4b/83c2a4bc73ca1d3ced1b08243f1c0ebd88c38a87c7d252e4f3ce3f43bace/cyvcf2-0.31.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "df2ad79ba777fa5c330aa6dac7b14240d5f3eb73f3a304c43ac28e3ab3fe7e9b",
"md5": "5f23c192dc4ecd177563e980841ca13d",
"sha256": "701fe8eb8479dc71f05dfa36eb6b2125357e8b38b52dda4c4eab5c328191b799"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp39-cp39-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "5f23c192dc4ecd177563e980841ca13d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 6986978,
"upload_time": "2024-06-18T19:24:37",
"upload_time_iso_8601": "2024-06-18T19:24:37.983087Z",
"url": "https://files.pythonhosted.org/packages/df/2a/d79ba777fa5c330aa6dac7b14240d5f3eb73f3a304c43ac28e3ab3fe7e9b/cyvcf2-0.31.1-cp39-cp39-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0799364082442475af2ffbb94063a5819d0bf6401c1d1472d7c0c5d1cea7da98",
"md5": "caccd35527d64272b5a874212115b724",
"sha256": "5372665990a7b67f0b39c9a19310900ae58e9b410dc128dc3ee49afca0dd2c5b"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-cp39-cp39-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "caccd35527d64272b5a874212115b724",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 6248529,
"upload_time": "2024-06-18T19:24:41",
"upload_time_iso_8601": "2024-06-18T19:24:41.329530Z",
"url": "https://files.pythonhosted.org/packages/07/99/364082442475af2ffbb94063a5819d0bf6401c1d1472d7c0c5d1cea7da98/cyvcf2-0.31.1-cp39-cp39-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d9192eda2cd9cc2a545bf50b1ef53f94c38a82a62f4ca9de96fe6e568bfbcb03",
"md5": "af2ae20477165a36ef040e65e904e590",
"sha256": "fc0b33b39b2b20b35d61bd49636ac1d3e212835b96d4da5a8e03d4798f3cb7c4"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "af2ae20477165a36ef040e65e904e590",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.7",
"size": 1327287,
"upload_time": "2024-06-18T19:24:47",
"upload_time_iso_8601": "2024-06-18T19:24:47.059689Z",
"url": "https://files.pythonhosted.org/packages/d9/19/2eda2cd9cc2a545bf50b1ef53f94c38a82a62f4ca9de96fe6e568bfbcb03/cyvcf2-0.31.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d9ec2806d106c62582bcb51b866ddb4a021f07d3d459366846b2f0e4ed60a4f9",
"md5": "83201c6fa449f69a70e447b436471505",
"sha256": "6bde2b1b62b46ce332241a1930a4585b11b078e7e2fae556e3e4c65350b5a131"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "83201c6fa449f69a70e447b436471505",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.7",
"size": 5249796,
"upload_time": "2024-06-18T19:24:50",
"upload_time_iso_8601": "2024-06-18T19:24:50.045355Z",
"url": "https://files.pythonhosted.org/packages/d9/ec/2806d106c62582bcb51b866ddb4a021f07d3d459366846b2f0e4ed60a4f9/cyvcf2-0.31.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "30306efa8467317ec6e3dd5229a72b8c9dfd5d49862b07871fecf2546f2b8dfb",
"md5": "1ddf05c0c2e924aa82bd93ce050877d8",
"sha256": "fc2943f5645698eb2a5e0596badf65ef3a5f6907ce6927b0770b1c00aeb148ed"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "1ddf05c0c2e924aa82bd93ce050877d8",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.7",
"size": 5471150,
"upload_time": "2024-06-18T19:24:56",
"upload_time_iso_8601": "2024-06-18T19:24:56.844149Z",
"url": "https://files.pythonhosted.org/packages/30/30/6efa8467317ec6e3dd5229a72b8c9dfd5d49862b07871fecf2546f2b8dfb/cyvcf2-0.31.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9352f20ce1965a41eea6015ac489b771a5842db63c1e8cbf402481bf009820f5",
"md5": "33193a69d2385826a7533f599b3ee308",
"sha256": "00bd0e09a3719d29fbc02bc8a40a690ac2c475e91744648750907d1816558fc5"
},
"downloads": -1,
"filename": "cyvcf2-0.31.1.tar.gz",
"has_sig": false,
"md5_digest": "33193a69d2385826a7533f599b3ee308",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 1334094,
"upload_time": "2024-06-18T19:25:00",
"upload_time_iso_8601": "2024-06-18T19:25:00.337827Z",
"url": "https://files.pythonhosted.org/packages/93/52/f20ce1965a41eea6015ac489b771a5842db63c1e8cbf402481bf009820f5/cyvcf2-0.31.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-18 19:25:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "brentp",
"github_project": "cyvcf2",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "cython",
"specs": [
[
">=",
"0.23.3"
]
]
},
{
"name": "coloredlogs",
"specs": []
},
{
"name": "click",
"specs": []
},
{
"name": "setuptools",
"specs": []
},
{
"name": "oldest-supported-numpy",
"specs": []
},
{
"name": "numpy",
"specs": []
},
{
"name": "numpy",
"specs": [
[
">=",
"2.0.0"
]
]
}
],
"lcname": "cyvcf2"
}