Skip to content

Releases: mlin/gfabase

v0.6.0

28 Mar 01:55
b33cf5b
Compare
Choose a tag to compare

Adds experimental support for the Walk records proposed in https://github.com/GFA-spec/GFA-spec/pull/106/files

Walks are expected to dominate GFA file size since they present dense multi-sample data. Therefore we store each Walk using a compact JSON representation (with delta-encoding of the segment IDs & orientations), instead of unrolling into an indexed SQL table like we do Paths (which would be space-prohibitive). Each Walk is indexed to a connected component of the graph, so that gfabase sub can quickly include walks (or a subset of the samples thereof) when extracting a connected-component subgraph. However, this scheme cannot quickly answer a query like "which walks traverse a given segment ID."


Linux: for x86-64 distributions of 2015+ vintage (e.g. CentOS 7):

wget -O gfabase https://github.com/mlin/gfabase/releases/download/v0.6.0/gfabase-linux-x86-64
chmod +x gfabase
./gfabase version

macOS: for 10.15/Catalina x86-64:

wget -O gfabase https://github.com/mlin/gfabase/releases/download/v0.6.0/gfabase-macOS-x86-64
chmod +x gfabase
./gfabase version

SHA-256 digests:

767deedefcf632e5c31ea7d87bc01b2de44f933fec3bb43b8850524a207f549b  gfabase-linux-x86-64
03c4c4e9745dcef956ba8836cb3ef4635f3275c10379e730cc6812ad1f3e77b2  gfabase-macOS-x86-64

v0.5.0

15 Feb 04:00
Compare
Choose a tag to compare
  • gfabase view and gfabase sub can access gfab files by http/https URL directly
    • web server must support HTTP GET range requests, and the remote content must be immutable
    • under the hood, uses libcurl with heuristics for HTTP request batching & prefetching (will need tuning over time)
    • inherited from GenomicSQLite v0.8.0
  • gfabase executable no longer depends on an available SQLite3 shared library (it's statically linked in)

Linux: for x86-64 distributions of 2015+ vintage (e.g. CentOS 7):

wget -O gfabase https://github.com/mlin/gfabase/releases/download/v0.5.0/gfabase-linux-x86-64
chmod +x gfabase
./gfabase version

macOS: for 10.15/Catalina x86-64:

wget -O gfabase https://github.com/mlin/gfabase/releases/download/v0.5.0/gfabase-macOS-x86-64
chmod +x gfabase
./gfabase version

SHA-256 digests:

c840cd9062431035b06595a0e590c727a538d49047db9c6535e10cd34f562422  gfabase-linux-x86-64
d185f725a9c0a9bdf151ddb1ff491b88932868b4f827e5bf6a78b9e18a605844  gfabase-macOS-x86-64

v0.4.0

22 Jan 01:04
d6c7c0e
Compare
Choose a tag to compare
  • gfabase add-mappings: imports segment mappings from a PAF file
  • gfabase view / gfabase sub --view:
    • --guess-ranges: tag each segment with a guessed genomic range aggregated from available mappings
    • --bandage: initial integration with Bandage for visualization
    • if no output file is specified and standard output is an interactive terminal, automatically pipe into less -S
  • gfabase sub --cutpoints: fix off-by-one cutpoint accounting
  • make CLI more intuitive, taking -o output_file even where output_file is required

Notice: the .gfab schema isn't yet stable; for now, expect future releases to require regenerating .gfab


Linux: for x86-64 distributions of 2015+ vintage, except a newer version of the SQLite library is required (3.31.0+, found e.g. in Ubuntu 20.04+)

In case it's inconvenient to upgrade the system SQLite, we ship a prebuilt libsqlite3.so.0 that gfabase looks for alongside itself (in the same directory) before the usual library paths.

wget -O gfabase https://github.com/mlin/gfabase/releases/download/v0.4.0/gfabase-linux-x86-64
# if system SQLite <3.31.0 & inconvenient to upgrade:
wget https://github.com/mlin/gfabase/releases/download/v0.4.0/libsqlite3.so.0

chmod +x gfabase
./gfabase version

macOS: for 10.15/Catalina x86-64 using Homebrew SQLite

brew update && (brew install sqlite || brew upgrade sqlite)
wget -O gfabase https://github.com/mlin/gfabase/releases/download/v0.4.0/gfabase-macOS-x86-64

chmod +x gfabase
./gfabase version

The following SHA-256 digests have been inscribed on the Ethereum blockchain (Click to see More, View Input As > UTF-8) using the maintainer's address staked with ≥1.00 ETH.

fb05a4a1f7e64043b76e125561ed537844e18622e3104e5302262cc1ae972251  gfabase-linux-x86-64
87b67feb1218da3c8b4e6978903a59b75c2c63400d70132eaf6b5a15856538e1  gfabase-macOS-x86-64
3873c8aa004a88e27b9029d5d9442b9ae52875cacf9aa339b773154844d27bf2  libsqlite3.so.0

v0.4.0-pre.0

20 Jan 09:02
Compare
Choose a tag to compare
v0.4.0-pre.0 Pre-release
Pre-release
bump GFAB_VERSION_REQ

v0.3.0

06 Jan 06:50
41569e2
Compare
Choose a tag to compare
  • Extends compatibility of prebuilt Linux x86-64 executable back to CentOS 7 and Ivy Bridge CPUs
    • (previously Ubuntu 16.04 and Haswell)

The following SHA-256 digests have been inscribed on the Ethereum blockchain (Click to see More, View Input As > UTF-8) using the maintainer's address staked with ≥1.00 ETH.

c0896dea40a96b808289160e18992ea0858aefa989199f536b6e3fb2a3bcd28c  gfabase
3873c8aa004a88e27b9029d5d9442b9ae52875cacf9aa339b773154844d27bf2  libsqlite3.so.0

v0.2.0

04 Jan 04:54
Compare
Choose a tag to compare
  • gfabase load indexes segment graph connectivity
  • gfabase sub --cutpoints extracts subgraph connected without crossing "cutpoints"

The following SHA-256 digests have been inscribed on the Ethereum blockchain (Click to see More, View Input As > UTF-8) using the maintainer's address staked with ≥1.00 ETH.

62394ff07ef7d3c1a419c2ccea774702cdd7f355b264fb3fb749572eb2264071  gfabase
47ee830253fc17f7e6c5573572e1b6463c24ef5a19408c601a1b94f0cd8f5663  libsqlite3.so.0

v0.1.0

17 Dec 21:32
Compare
Choose a tag to compare

First cut for show & tell