Skip to content
Andrew Klymenko edited this page Feb 15, 2022 · 12 revisions

Welcome to the ngs wiki!

ANNOUNCEMENTS:

This repository is now frozen. The NGS project has moved to https://github.com/ncbi/sra-tools/ngs. See the full anouncement below.

February 10, 2022

NCBI's SRA changed the source build system to use CMake in toolkit release 3.0.0. This change is an important step to improve developers’ productivity as it provides unified cross platform access to support multiple build systems. This change affects developers building NCBI SRA tools from source. Old makefiles and build systems are no longer supported.

This change also includes the structure of GitHub repositories, which underwent consolidation to provide an easier environment for building tools and libraries (NGS libs and dependencies are consolidated). Consolidation of NGS libraries and dependencies provides better usage scope isolation and makes building more straightforward.

Affected repositories

  1. ncbi/ngs (https://github.com/ncbi/ngs)

    This repository will be frozen, and all the code moved to Github repository ncbi/sra-tools, under subdirectory ngs/. All future modifications
    will take place in sra-tools

  2. ncbi/ncbi-vdb (https://github.com/ncbi/ncbi-vdb)

    This project’s build system will be based on CMake. The libraries supporting access to VDB data via NGS API will be moved to Github repository ncbi/sra-tools.

The projects to move are:

Old location (base URL: https://github.com/ncbi/ncbi-vdb) New location (base URL: https://github.com/ncbi/sra-tools)
libs/ngs ngs/ncbi/ngs
libs/ngs-c++ ngs/ncbi/ngs-c++
libs/ngs-jni ngs/ncbi/ngs-jni
libs/ngs-py ngs/ncbi/ngs-py
libs/vdb-sqlite libs/vdb-sqlite
test/ngs-java test/ngs-java
test/ngs-python test/ngs-python
  1. ncbi/sra-tools (https://github.com/ncbi/sra-tools)

    This project’s build system will be based on CMake. The project will acquire some new components:

    3a) NGS SDK (now under ngs/, formerly in Github repository ncbi/ngs)
    
    3b) NGS-related VDB access libraries and their dependents, formerly in Github repository ncbi/ncbi-vdb, as listed in the table above.
    

ATTENTION:

NGS transitioned to all HTTPS access starting with release, 1.3.0. It is critically important that you update all of your binaries and your configuration files.

This is in response to OMB memorandum M-15-13 issued on June 8, 2015, requiring all Federal HTTP servers to stop using (simple) HTTP and switch to HTTPS.

Proxy users take note - this complicates proxy usage somewhat. We will create a Wiki page dedicated to supported proxy configuration and firewall settings to help users during the conversion.


NGS is a new, domain-specific API for accessing reads, alignments and pileups produced from Next Generation Sequencing. The API itself is independent from any particular back-end implementation, and supports use of multiple back-ends simultaneously. It also provides a library for building new back-end "engines". The engine for accessing SRA data is contained within the sister repository ncbi-vdb.

The API is currently expressed in C++, Java and Python languages. The design makes it possible to maintain a high degree of similarity between the code in one language and code in another - especially between C++ and Java.

UPDATE:

Our ngs engine within ncbi-vdb now provides full support for pileup functions as of version 2.4.5. We have also made some modifications to the pileup APIs, and as a result, the new version for NGS is 1.1.