Commit 143103ae authored by Andreas Tille's avatar Andreas Tille
Browse files

New upstream version 0.18.0+dfsg

parent a9374dc7
Loading
Loading
Loading
Loading

.clang-format

0 → 100644
+13 −0
Original line number Diff line number Diff line
BasedOnStyle:  Google
BreakBeforeBraces: Mozilla

AllowShortLoopsOnASingleLine: false
AccessModifierOffset: -4
BreakConstructorInitializersBeforeComma: true
ColumnLimit: 100
IndentWidth: 4
PointerAlignment: Left
TabWidth: 4

ReflowComments: false  # protect ASCII art in comments
KeepEmptyLinesAtTheStartOfBlocks: true
+3 −0
Original line number Diff line number Diff line
@@ -14,3 +14,6 @@ tests/bin/test_pbbam
tests/data/test_group_query/group.fofn
tests/src/TestData.h

# Meson WrapDB stuff
subprojects/packagecache/
subprojects/googletest*
+0 −3
Original line number Diff line number Diff line
@@ -34,9 +34,6 @@ before_install:
  # prep zlib
  - sudo apt-get install -y -qq zlib1g-dev

  # prep htslib
  - "cd .. && git clone https://github.com/PacificBiosciences/htslib.git && cd htslib && make && sudo make install; cd $TRAVIS_BUILD_DIR"

  # prep GoogleTest 
  - sudo apt-get install -y -qq libgtest-dev

+115 −0
Original line number Diff line number Diff line
@@ -10,8 +10,123 @@ guarantees will be maintained within each major version series.

## Active

## [0.17.0] - 2018-03-18

### Added
- CompressionLevel/NumThreads parameter implementation to PbiBuilder.
- Dataset ctor to PbiFileQuery.
- TranscriptSet to XML support.
- Auto-enabled "permissive CIGAR mode" for pbbamify tool.
- IndexedBamWriter, for more efficient writing of BAM & PBI simultaneously.

## [0.16.0] - 2018-01-17

### Removed
- Removed the PbiIndex class and its "lookup data"-related helpers. These were 
never as useful as initially intended. PbiRawData and its related classes are the 
recommended interface for working with PBI index data.

## [0.15.0] - 2018-01-12

### Added
- Support for long CIGARs (>64K operations).

## [0.14.0] - 2017-12-12

### Added
- Support for newer style QNAMEs. Recent version of htslib (1.4+) have started
adding extra null terminators to make the subsequent CIGAR section 32-bit aligned.

### Changed
- Requirements for htslib version used. Must now be htslib v1.4+.

## [0.13.2] - 2017-09-25

### Added
- Backward compatibility for C++11 (std::make_unique which is 11/14 agnostic).

## [0.13.1] - 2017-09-25

### Added
- Support for "pe" tag in stitched, virtual reads. 

## [0.13.0] - 2017-09-25

### Changed
- Ran clang-tidy (modernize) over codebase to clean up legacy coding styles.

## [0.12.2] - 2017-09-22

### Added 
- HasPulseExclusion() to BamRecord (& derived types). 

## [0.12.1] - 2017-09-21

### Added
- Pulse exclusion base feature to read group.

## [0.12.0] - 2017-09-19

### Added
- NumReads() for PBI filter-based queries. This allows fetching of the number
of reads that pass the filter, without needing to iterate over the entire 
file(s).

## [0.11.0] - 2017-09-15

### Added
- Support for internal tag: pulse exclusion reason ("pe"). New methods on 
BamRecord, and new enum PulseExclusionReason.

### Changed
- Default PacBioBAM format version now 3.0.5

## [0.10.2] - 2017-09-14

### Changed
- Explicitly trim all whitespace from FASTA input.

## [0.10.1] - 2017-09-11

### Changed
- Frames, add mutex to avoid race condition in InitIpdDownsampling(void)

## [0.10.0] - 2017-09-08

### Changed
- PbiBuilder backend for generating PBI index files "on-the-fly" along with
writing BAM files. The previous implementation's memory usage scaled linearly 
with the number of reads, sometimes reaching huge numbers (several gigs or more).
The new implementation's memory usage remains constant for any number of reads, 
without any runtime hit on files/architectures tested. 

### Removed
- PbiBuilder::Result(). Returned an intermediate snapshot of the index under
construction. This method isn't usable with the new PbiBuilder backend and was 
really only useful for initial debugging/testing. It is no longer used in the 
test framework and is unlikely to be used by client code either. Dropping this 
method from the API, and thus bumping the version number. 

## [0.9.0] - 2017-08-07

### Removed
- Bundled htslib. Now using 'stock' htslib (v1.3.1+).
- Built-in SWIG wrappers. 

## [0.8.0] - 2017-07-24

### Added
- Default DataSet 'Version' attribute if none already present (currently 4.0.0)
- Added whitelist support for filtering ZMWs via DataSetXML.
- Added iterable query over FASTA files & ReferenceSet datasets.
- Added DataSet::AllFiles to access primary resources AND their child files (indices,
scraps, etc).

### Fixed
- Bug in the build system preventing clean rebuilds.

### Removed
- Dropped the bundled, PacBio-forked version of htslib. Now using stock htslib (v1.3.1+). 

## [0.7.4] - 2016-11-18

+8 −15
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@
########################################################################

cmake_policy(SET CMP0048 NEW)  # lets us set version in project()
project(PacBioBAM VERSION 0.7.4 LANGUAGES CXX C)
project(PacBioBAM VERSION 0.17.0 LANGUAGES CXX C)
cmake_minimum_required(VERSION 3.0)

# project name & version
@@ -17,39 +17,32 @@ option(PacBioBAM_build_docs "Build PacBioBAM's API documentation."
option(PacBioBAM_build_tests   "Build PacBioBAM's unit tests."                          ON)
option(PacBioBAM_build_shared  "Build PacBioBAM as shared library as well."             OFF)
option(PacBioBAM_build_tools   "Build PacBioBAM command line utilities (e.g. pbindex)"  ON)
option(PacBioBAM_wrap_csharp   "Build PacBioBAM with SWIG bindings for C#."             OFF)
option(PacBioBAM_wrap_python   "Build PacBioBAM with SWIG bindings for Python."         OFF)
option(PacBioBAM_wrap_r        "Build PacBioBAM with SWIG bindings for R."              OFF)
option(PacBioBAM_use_modbuild  "Build PacBioBAM using Modular Build System."            OFF)
option(PacBioBAM_use_ccache    "Build PacBioBAM using ccache, if available."            ON)
option(PacBioBAM_auto_validate "Build PacBioBAM with auto-validation enabled."          OFF)

if (PacBioBAM_wrap_csharp OR PacBioBAM_wrap_r OR PacBioBAM_wrap_python)
    set(wrapping_swig TRUE)
else()
    set(wrapping_swig FALSE)
endif()

if(PacBioBAM_build_tests)
    enable_testing()
endif()

set(PacBioBAM_permissive_cigar  OFF)
STRING(TOLOWER "${PBBAM_PERMISSIVE_CIGAR}" PBBAM_PERMISSIVE_CIGAR_LOWER)
if (DEFINED PBBAM_PERMISSIVE_CIGAR)
    set(PacBioBAM_permissive_cigar  ON)
    add_definitions(-DPBBAM_PERMISSIVE_CIGAR)
endif()

# project paths
set(PacBioBAM_RootDir       ${CMAKE_CURRENT_LIST_DIR})
set(PacBioBAM_DocsDir       ${PacBioBAM_RootDir}/docs)
set(PacBioBAM_IncludeDir    ${PacBioBAM_RootDir}/include)
set(PacBioBAM_SourceDir     ${PacBioBAM_RootDir}/src)
set(PacBioBAM_SwigSourceDir ${PacBioBAM_RootDir}/src/swig)
set(PacBioBAM_TestsDir      ${PacBioBAM_RootDir}/tests)
set(PacBioBAM_ThirdPartyDir ${PacBioBAM_RootDir}/third-party)
set(PacBioBAM_ToolsDir      ${PacBioBAM_RootDir}/tools)

if(NOT PacBioBAM_OutputDir)
    set(PacBioBAM_OutputDir ${CMAKE_CURRENT_BINARY_DIR})
else()
    if(${wrapping_swig})
        message(FATAL_ERROR "SWIG bindings not currently supported in modular build.")
    endif()
endif()
set(PacBioBAM_BinDir    ${PacBioBAM_OutputDir}/bin)
set(PacBioBAM_LibDir    ${PacBioBAM_OutputDir}/lib)
Loading