Skip to main content

A package for reading and writing fasta/fastq files

Project description

seqio

A c library for reading and writing sequences in fasta and fastq format.

Inspired by kseq.h, another library for reading fasta and fastq files.

features

  • Read and write fasta and fastq files
  • Support for gzipped files
  • Intuitive API

Quick start

Python

WIP: I'm working on a python wrapper for this library.

os reading writing
Linux
MacOS
Windows

Install

pip install fastseqio
Click to see the example
import os

from fastseqio import seqioFile, Record


def test_read():
    file = seqioFile("test-data/test2.fa")

    records = []
    for record in file:
        records.append(record)

    assert len(records) == 3

    assert records[0].name == "a"
    assert records[1].name == "b"
    assert records[2].name == "c"

    records = []
    for record in file:
        records.append(record)

    assert len(records) == 0

    file.reset()

    records = []
    for record in file:
        records.append(record)

    assert len(records) == 3


def test_write():
    file = seqioFile("out.fa", "w")

    file.writeFasta("test", "ACGGGGGGGTTTT")
    file.writeFasta("test", "ACGGGGGGGTTTT")

    file.close()

    content = ">test\nACGGGGGGGTTTT\n>test\nACGGGGGGGTTTT\n"

    with open("out.fa", "r") as fp:
        data = fp.read()
        assert data == content

    os.remove("out.fa")


def test_write_gz():
    # compress by extension or let `compressed=True`
    file = seqioFile("out.fa.gz", "w")

    file.writeFasta("test", "ACGGGGGGGTTTT")
    file.writeFasta("test", "ACGGGGGGGTTTT")

    file.close()
    import gzip

    content = ">test\nACGGGGGGGTTTT\n>test\nACGGGGGGGTTTT\n"

    with open("out.fa.gz", "rb") as fp:
        data = fp.read()
        data = gzip.decompress(data).decode("utf-8")
        assert data == content

    os.remove("out.fa.gz")


def test_record():
    record = Record("test", "ACGGGGGGGTTTT")

    assert record.name == "test"
    assert record.sequence == "ACGGGGGGGTTTT"

    record.name = "test2"
    record.sequence = "ACGGGGGGGTTTTTTTT"

    assert record.name == "test2"
    assert record.sequence == "ACGGGGGGGTTTTTTTT"

    hpc = record.hpc_commpress()
    assert hpc == "ACGT"

    rev = record.reverse()
    assert rev == "TTTTTTTTGGGGGGGCA"

    length = record.length
    assert length == 17

    length = len(record)
    assert length == 17

    record.sequence += "xxx"
    assert record.length == 20
    assert record.sequence == "ACGGGGGGGTTTTTTTTxxx"
    assert len(record) == 20

    record.sequence = "ACGGGGGGGTTTT"

    sub = record.subseq(2, 5)
    assert sub == "GGGGG"


def test_kmers():
    record = Record("test", "ACGGGG")

    kmers = list(record.kmers(4))
    assert len(kmers) == (len(record) - 4 + 1)
    assert kmers == ["ACGG", "CGGG", "GGGG"]

C

// main.c
#include "seqio.h"
#include <stdio.h>

int
main(int argc, char* argv[])
{
  if (argc == 1) {
    fprintf(stderr, "Usage: %s <in.fasta>\n", argv[0]);
    return 1;
  }
  // Step1: set open options
  seqioOpenOptions openOptions = {
    .filename = argv[1],
    .mode = seqOpenModeRead,
    // optional, valid characters in sequence
    // default: "A-Za-z"
    .validChars = "ACGTNagctn",
  };
  // Step2: open file
  seqioFile* sf = seqioOpen(&openOptions);
  // step3: read records
  seqioRecord* record = NULL;
  // step4: read records one by one
  while ((record = seqioRead(sf, record)) != NULL) {
    // setp5: do something with the record
    printf("name: %s: %lu\n", record->name->data, record->sequence->length);
    // !!! Do not free record, 
    // !!! beacuse it will be freed by seqioRead automatically.
  }
  // step6: close file
  seqioClose(sf);
}
gcc -o main main.c seqio.c -lz
./main test.fasta

API & Structure

seqioOpenOptions

typedef enum {
  seqOpenModeRead,
  seqOpenModeWrite,
} seqOpenMode;

typedef struct {
  char* filename;   // filename
  bool isGzipped;   // it will be detected automatically if mode is seqOpenModeRead
  seqOpenMode mode; // default is seqOpenModeRead
} seqioOpenOptions;

open File

/**
  * @brief open a file
  * @param options open options
  * @return seqioFile* file
 */
seqioFile* seqioOpen(seqioOpenOptions* options);

/**
  * @brief open a file from stdin
  * @return seqioFile* file
 */
seqioFile* seqioStdinOpen();

/**
  * @brief write to stdout
  * @return seqioFile* file
 */
seqioFile* seqioStdoutOpen();

/**
  * @brief close a file
  * @param file
 */
void seqioClose(seqioFile* file);

record

typedef enum {
  seqioRecordTypeFasta,
  seqioRecordTypeFastq,
  seqioRecordTypeUnknown
} seqioRecordType;

typedef struct {
  size_t length;
  size_t capacity;
  char* data;
} seqioString;

typedef struct {
  seqioRecordType type;
  seqioString* name;
  seqioString* comment;
  seqioString* sequence;
  seqioString* quality;
} seqioRecord;

while reading a record, the memory of the record will be allocated automatically, and it will be used repeatedly. So you don't need to free the memory of the record. At the end of the file, the memory of the record will be freed automatically.

A record will be freed when the following conditions are met:

  • All records are read by seqioRead or seqioReadFasta or seqioReadFastq
  • The file is closed by seqioClose

read record

/**
  * @brief read a record
  * @param file
  * @param record
  * @return seqioRecord* record or NULL if the file is end
 */
seqioRecord* seqioRead(seqioFile* file, seqioRecord* record);

/**
  * @brief read a record in fasta format
  * @param file
  * @param record
  * @return seqioRecord* record or NULL if the file is end
 */
seqioRecord* seqioReadFastq(seqioFile* file, seqioRecord* record);

/**
  * @brief read a record in fastq format
  * @param file
  * @param record
  * @return seqioRecord* record or NULL if the file is end
 */
seqioRecord* seqioReadFasta(seqioFile* file, seqioRecord* record);

write record

typedef struct {
  size_t lineWidth;      // fasta file line width (default: 0, no wrap)
  bool includeComment;   // include comment in fasta record (default: true)
  baseCase baseCase;     // base case (default: original)
} seqioWriteOptions;

/**
  * @brief write a fasta record
  * @param file
  * @param record
  * @param options
 */
void seqioWriteFasta(seqioFile* sf, seqioRecord* record, seqioWriteOptions* options);

/**
  * @brief write a fastq record
  * @param file
  * @param record
  * @param options
 */
void seqioWriteFastq(seqioFile* file, seqioRecord* record, seqioWriteOptions* options);

example

more examples can be found in the test/benchmark folder.

memory check

valgrind --leak-check=full --leak-check=full --show-leak-kinds=all --log-file=./1.log --track-origins=yes ./main
==1139682== Memcheck, a memory error detector
==1139682== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==1139682== Using Valgrind-3.19.0 and LibVEX; rerun with -h for copyright info
==1139682== Command: ./main
==1139682== Parent PID: 1107213
==1139682== 
==1139682== 
==1139682== HEAP SUMMARY:
==1139682==     in use at exit: 0 bytes in 0 blocks
==1139682==   total heap usage: 45 allocs, 45 frees, 151,872 bytes allocated
==1139682== 
==1139682== All heap blocks were freed -- no leaks are possible
==1139682== 
==1139682== For lists of detected and suppressed errors, rerun with: -s
==1139682== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)

benchmark

For this benchmark, I re-used sequence files from SeqKit benchmark: seqkit-benchmark-data.tar.gz

file format type num_seqs sum_len min_len avg_len max_len
dataset_A.fa FASTA DNA 67,748 2,807,643,808 56 41,442.5 5,976,145
dataset_B.fa FASTA DNA 194 3,099,750,718 970 15,978,096.5 248,956,422
dataset_C.fq FASTQ DNA 9,186,045 918,604,500 100 100 100
python benchmark.py

Machine info

GCC: gcc version 12.2.0 (Debian 12.2.0-14)
OS: Linux 5.15.133.1-microsoft-standard-WSL2 #1 SMP Thu Oct 5 21:02:42 UTC 2023 x86_64 GNU/Linux
CPU: 11th Gen Intel(R) Core(TM) i5-11500 @ 2.70GHz
RAM: 16G

Result

Read fasta and fastq files with 1 thread.

file seqio kseq
dataset_A.fa 0.791 s 1.052 s
dataset_B.fa 1.467 s 1.925 s
dataset_C.fq 1.404 s 1.162 s

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

fastseqio-0.1.3-cp313-cp313-win_amd64.whl (146.2 kB view details)

Uploaded CPython 3.13Windows x86-64

fastseqio-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

fastseqio-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

fastseqio-0.1.3-cp313-cp313-macosx_11_0_arm64.whl (177.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fastseqio-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl (180.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

fastseqio-0.1.3-cp312-cp312-win_amd64.whl (146.2 kB view details)

Uploaded CPython 3.12Windows x86-64

fastseqio-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

fastseqio-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

fastseqio-0.1.3-cp312-cp312-macosx_11_0_arm64.whl (177.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fastseqio-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl (180.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

fastseqio-0.1.3-cp311-cp311-win_amd64.whl (146.3 kB view details)

Uploaded CPython 3.11Windows x86-64

fastseqio-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

fastseqio-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

fastseqio-0.1.3-cp311-cp311-macosx_11_0_arm64.whl (178.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fastseqio-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl (180.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

fastseqio-0.1.3-cp310-cp310-win_amd64.whl (145.1 kB view details)

Uploaded CPython 3.10Windows x86-64

fastseqio-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

fastseqio-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

fastseqio-0.1.3-cp310-cp310-macosx_11_0_arm64.whl (176.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

fastseqio-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl (178.8 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

fastseqio-0.1.3-cp39-cp39-win_amd64.whl (145.4 kB view details)

Uploaded CPython 3.9Windows x86-64

fastseqio-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

fastseqio-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

fastseqio-0.1.3-cp39-cp39-macosx_11_0_arm64.whl (176.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

fastseqio-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl (178.9 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

fastseqio-0.1.3-cp38-cp38-win_amd64.whl (145.1 kB view details)

Uploaded CPython 3.8Windows x86-64

fastseqio-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

fastseqio-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

fastseqio-0.1.3-cp38-cp38-macosx_11_0_arm64.whl (176.3 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

fastseqio-0.1.3-cp38-cp38-macosx_10_9_x86_64.whl (178.5 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file fastseqio-0.1.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: fastseqio-0.1.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 146.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for fastseqio-0.1.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 10226f04ecde142e178cf6cc7c5cbe7cf8715d44cc7532fb941bf36007697c52
MD5 a6cc6e40c5af280ec140911cbb285635
BLAKE2b-256 c1e19dbeb9cd6a61d3fa1412843ff5c55920d3202110081641c14c09373bc1c9

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 86654a2a2e6957b6d3c81d2c847df535bdd9b998fc7e4e9cdea859860c3348ec
MD5 fcd6b82f4e5a8f9e13c4c8a5e4e5d7e7
BLAKE2b-256 684a3fe7d2b6e5e2adfcc45fab15ae0b4f5c4f32370bb13dfa378cc9cdf8d981

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c4dc2aad8d72836d4c59ac9dab00af2b45596d1ec4318f9e772afda1bff810c6
MD5 79cdecbc9c53f3fb53461704c7b20d90
BLAKE2b-256 95f16c0b872b135dad0c798932f9162d7166782e64f6cfb7c39c126f00f3113a

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6ce4ad9f1be0f3b93cd7d60aa9d0c96e8146a57f99c71a3b3541667e940c9f88
MD5 0df5cc16950bc3a340cb7142a10823a9
BLAKE2b-256 d75b76eebd6d4a0f65da7ef03c03a0bbc9a809d46c2421a3ac4b1c90e9c7f79d

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 fb96b5aa072fd65db60330541c2451681de8e0885cd7619a8c6210ee91f6c059
MD5 5a791f49bef73c9d53bc6b1391775b24
BLAKE2b-256 b857082002e66af994e2b99b7e3d9ae3fd29db09a07850c17b3a44f5411298cc

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: fastseqio-0.1.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 146.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for fastseqio-0.1.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 df7d27d91e479990aeffb80453fab7088472be252bfb990b7818f640ab9079a2
MD5 4006597994560c329bf7c6493ce4a7ab
BLAKE2b-256 575711aaa5a1eafc99ef7c0d5b8767f2d754355ae65599096e9c8b82e6d6024f

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fc4fbd55de83b1d05ec270793ad7f091a684fba988dea51ab6d24367d637f9f3
MD5 edcf919de0ce12af8043624d33057711
BLAKE2b-256 8a0f247c1977a7a24ad475661786d40138e091215cadf02f3128ea142fb62cef

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e15221f192dcfa61e921cdacc095bcb5df7ae352f6234b7cf4da25aed4486b5f
MD5 2e8c17f03da633cdbdbfd98852cee3c3
BLAKE2b-256 c0e7c65838075a07d84d52101c5714549e82daab92ce362dc4745701542af40a

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3e3be9d5367fd78823d265a7a7ad0b89c5f664fe34f1dcde40758b4e1597c45e
MD5 3a73085b068fef7df5614c3c18f07fe0
BLAKE2b-256 5252b6c8edcd8d0b362fbf076fba50e3d14751d14cc9ca1145dc331a78ee5f5e

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8edb32a1aa81308619bbcd3bc5565d2aa51fa122dc61de73927cfd0e02268fcc
MD5 3eb69f95d3390d20e92c93cdac893e9c
BLAKE2b-256 2ccb8ef9fbc8d1e42281c42b7afa6c92c10ca001b1670d8d4cb71e4a35f4dbb3

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: fastseqio-0.1.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 146.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for fastseqio-0.1.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c4c5a04afcb2f2608fe8d9d482f4f420c7cdb356edee4e91b4a37cb3e682cf12
MD5 967cec24aa262dbd3e9b9eec31cb91c2
BLAKE2b-256 e46b0923e451cb9aba62a5126aec4319635928d69e7afb9afdc65b4e34ac4ff2

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f461b30ab3b43929d64d6b4c953a4e92fea74abf97ba819525e9e792455f89e
MD5 33a73f691ed5b1b8c6c174dc11379516
BLAKE2b-256 76301319e40ee5087e698921ea08b6e2c40ad453200bae5f35009090e060e725

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f28e1a44dfd0b7644d357523d3b8ca75ee58e2b1a93e777d12bf47fedc85ccfc
MD5 8402e4e5b70f62f7811256e6fe16b7b5
BLAKE2b-256 b65b5c355b2daf0340ae8a9ba45ddd25ae147571f69b0aa905b5b6b708bde428

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 782bd402be1232f951e8534d7be5c1d48ede90bad4cc7095d6b7a0c29b459e2b
MD5 b45941d4d5b64febe03361dca4595b7e
BLAKE2b-256 6b37aa0db3e9a57964f043106659c2979d7fb990c2a900460410423733cbe88f

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a98d4ff3f4322bee0f7510ae3923b7b6bb86bd87db4fb0588daea1373c832832
MD5 7de8ea88961837fef1cb455dcedfa1a0
BLAKE2b-256 cba3c046eedb4d41fceefc0a9060f28a6ca1e4d1057252c012606b9ce20a55f7

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: fastseqio-0.1.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 145.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for fastseqio-0.1.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 580c569dd27163a6f535b5579f927368df62c9819f0a072c064ea47bdc570172
MD5 49e06aa85e76edcd43c6fe00303c09cb
BLAKE2b-256 a6c2fed88319f173d2ad4a335a7342abf8b025f851eae75daf12b609132be4e4

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e24c9c35d0427e0321802349cabfa5d0ff4e32ecfff506b3b565f420876fa76
MD5 90fac1125fa62169dba71b709989ee16
BLAKE2b-256 5edc0c37715683eb8274ba95a5040a44b941aa22611dd17d7445c88a2973a4b1

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a729d686405a4f04dea8b7831065ed1a3c252ff48c4640e4dd87eb6d7d00d029
MD5 a01797ef221c4d4433623dc56bf8f2e4
BLAKE2b-256 ae2e20b394d385e72887750aa50d2fd2e20dc72102a50ef65f51c185dd2feed2

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2c83166f95867e738aef1f4c024c44526ad49f9eb1fd8b0bb7dec1dc5af92c7e
MD5 ff2d3536f8a8528fb22723490555b9f3
BLAKE2b-256 4e6bf9c77ff1bebd7de68ac22449c22414c151c0598119612d53eb512167b08a

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e16946139a2b161a440edef691be6292eed774efa328ab33042b629c0f97d350
MD5 6c4229a1ae1263841b4897e22eecb76e
BLAKE2b-256 76aaf1571011fc2c1e982bd8b488c6dce36add8079ccc57c386d36a0a2055832

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: fastseqio-0.1.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 145.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for fastseqio-0.1.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 1037fc2636a9348a86a7771c6027325a9908866e91ebc737a4f8c795be2bc5a8
MD5 b043b8ab07b806a905c8a3b572241859
BLAKE2b-256 8d0b68162307d44d14fc076724e088b252c841b66a8664bada040949b3619eb6

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efdf7ebc55a3dc4b97ad48cc9006d0d1cb3cb78180a10fc0881ece3a7b565728
MD5 64fd289bf269a20b38fb5e6fcdd922d9
BLAKE2b-256 fb036c542d2a0d24e06d42aa4d2179cd995566c8509d9213ff124ed7a113c73d

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 729a2f460f7e4a335af4c11bb19e3b43d0971c63e5f4549140ad5d9d29c3c11e
MD5 14506e1992fa7bfecaffae4c2a2395c7
BLAKE2b-256 87ceae34dd42c79cfa368a3e8b01c1b978df0c85775f6cf742a46bdecb3cc4a8

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7cf5a218af84af36d4feaa0842499bf22d4d4550da80ef0396298fde4e93081f
MD5 4befca09b0e029e2dd415a8168aa61be
BLAKE2b-256 a23e11424578fb2c45d70309a3f238917c70ad9b27b9aa3199124d7e874fed4e

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 96c7309c391415895156eee80a4ffaeaf0ebad385dfbbdfde36b078010699b8e
MD5 cd238327cd6a8bca7c906d587a4381dc
BLAKE2b-256 7b37cfc1205e2fd8ae8a072395792590d25a2efbeca6e5242d1cd830af10afbe

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: fastseqio-0.1.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 145.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for fastseqio-0.1.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 67aae71699193000e3eee1ae088c4d08d26ee252cb323ebfd0643187ef44ddfc
MD5 7e91228623fe993ac691bc0fb5365f17
BLAKE2b-256 6402047c8c6fc50bcbebed641f1c79820882e8653f5865bfbd72c689308ef616

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 432e8fd4d9b26fa6eb87c1d59cb74ec9a33b7b4d53e17e6196dbc771ab4b5620
MD5 a3fb3f4e6e27ffe3aea3112ba007d224
BLAKE2b-256 6b04bb7ded93dcf01156e656794c9cb11454a0b57b48b34b18ab5a5768bb502d

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 50876f8f1ca1248c2f30ae6d7a225ed928f8b72439e3a14d21e220b5b6f00e7f
MD5 33dc2f7bca4188e89a4dc0c520ee0950
BLAKE2b-256 d26654a21c860229e8921e98a71285476864e50117e162274d0503e4b91735be

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 729bceb0a36ff2dc53cf483a7540e4091ca0789b607b7f1bcf603807351da376
MD5 b09bcd4a81d5c072cbc55879870b13b0
BLAKE2b-256 e86a142053802616d12d3959b6a99d2a3dc609aef704d98e4f533c67283302ad

See more details on using hashes here.

File details

Details for the file fastseqio-0.1.3-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastseqio-0.1.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e78f9a5d50d9ad143c8c98cda3fb4ebab599f2e2e922d655767c18c7b73fc042
MD5 6b0a244b991814fba548eb0f6dda6cbb
BLAKE2b-256 874514aadcbdf9ddd3c35d0e2296e8887fac1614140c852f7ee74bc14323c1cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page