
MiXCR 2.1.12 (22 Aug 2018)
========================

-- Fixes rare inconsistency in behaviour between paired-end and single-end aligners, clone 
   assembler and partial sequence assembler in respect to target D gene set selection based on the 
   chains on V, J and C genes (#408)


MiXCR 2.1.11 (15 Jun 2018)
========================

-- Major review of affine alignment algorithms
-- minor: Fix for MiXCR script for Java 9
-- minor: Fix for exception with no D hits in `-dIdentityPercent` in `exportAlignments` (#386)
-- minor: Adds warning and fix for performance issue when `assemblePartial` misused for enriched 
   library


MiXCR 2.1.10 (30 Mar 2018)
========================

-- Chain distribution is back in report file
-- V/J chimera detection and elimination mechanism; new parameter `minChimeraDetectionScore` both 
   alignments in R1 and R2 should be greater than this value
-- Smarter second fine alignment step, new parameter `alignmentBoundaryTolerance`, now this 
   mechanism is triggered even if alignment boundary not perfectly matches read boundary in the 
   opposite mate-pair; minor bug fixes
-- Fixed `NPE` in VDJCHit#getIdentity. Commands like `mixcr exportClones ... -cBestIdentityPercent 
   ...` affected
-- New `align` action report line added `No target with both V and J alignments`; fix for 
   inaccurate value for `Alignment failed because of low total score`
-- Enable asserts for non-release builds, increases chance of detecting subtile error conditions, 
   by trading-off some performance; has no effect on release builds


MiXCR 2.1.9 ( 7 Feb 2018)
========================

-- Built-in library upgrade to v1.5, many fixes, new species *Nannospalax galili* (see library 
   release notes for complete list of changes)
-- Fix wrong number of chimeric alignments in report with --write-all option
-- Remove wrong `-v` in text warnings in align action
-- Drpped out-of-the-box support for files produced with repseq.io libraries v1.0 and 1.1


MiXCR 2.1.8 (22 Dec 2017)
========================

-- Fixes possible `IOException` during report output on Lustre file system


MiXCR 2.1.7 ( 6 Dec 2017)
========================

-- Fixes bug leading to IOException if report file not exists. (#295)


MiXCR 2.1.6 (28 Nov 2017)
========================

-- *(beta)* Added JSON-formatted reports. Use `--json-report` option in `align`, 
   `extendAlignments`, `assemblePartial` or `assemble` actions to create JSON report or append it to 
   already existing report file ([jsonl](http://jsonlines.org/)). This feature is intended to simplify 
   batch analysis, and analysis automation. E.g. [jq](https://stedolan.github.io/jq/) util can be used 
   to aggregate information from multi-json-report files.
-- Report file appends are made atomic. Now you can safely specify the same report file name in 
   several invocations of MiXCR, even if you run several instances of MiXCR in parallel. Should also 
   work for NFS and other remote FS, suppporting file locking.
-- Added chains column in export (`-chains` and `-topChains`)
-- minor: Several new counters added to `align` report
-- minor: Added proper filtering for alleles with wildcard symbols in `featureToAlign` region
-- minor: Fixed bug in align report (wrong total count in rare cases) #265
-- minor: Documentation added for `filterAlignments`


MiXCR 2.1.5 (24 Jul 2017)
========================

-- Fixed backward compatibility of `*.vdjca` files produced by MiXCR 2.1.2 and lower with 
   `kaligner2`.


MiXCR 2.1.4 (24 Jul 2017)
========================

-- RepSeq.IO updated to 1.2.9, default built-in library updated to 1.4 (read library changelog 
   [here](https://github.com/repseqio/library/releases/tag/v1.3) and 
   [here](https://github.com/repseqio/library/releases/tag/v1.4)).


MiXCR 2.1.3 ( 7 Jun 2017)
========================

-- Minimal thresholds added for V and J alignments in `extendAlignments`
-- `minimalNOverlap` in `assemblePartial` changed to `7`
-- Information on k-mer diversity added to alignPartial report file
-- Fix: MiXCR now correctly detects `*.fa` files as FASTA formatted
-- Detainls of V/J Extension during extendAlignments are now added to target description, and can 
   be retrieved using `-targetDescriptions` field in `exportAlignments`


MiXCR 2.1.2 (20 Apr 2017)
========================

-- Fixed rear IllegalArgumentException in `extendAlignments` action
-- Fixed rear NPE in `align` action


MiXCR 2.1.1 ( 3 Mar 2017)
========================

-- Additional check for the same V hits in merging sequences in `assemblePartial`
-- Fix: list of C hits limited by `relativeMinScore` in `assemblePartial`
-- Not aligned mates from fully aligned opposite PE reads are now taken into `assemblePartial` 
   procedure (case when V and J parts of the target read are shorter than 12 nt)
-- Additional consistency cehcks in `assemblePartial`, overlaps of non-CDR3-covering mates of PE 
   reads are also taken into account
-- More sophisticated algorithm for alignment-guided merging of paired-end reads in `align`
-- Several anchor point positions in export points changed their meaning.
-- Fixed absent space in `AA. Seq. ...` column name and excessive space in the end of several 
   column names (affects `exportClones` and `exportAlignments` with `-v` option; fixes compatibility 
   with VDJTools v1.1.3 and below).
-- Fixes NPE in `exportClones` in some cases with mmu reference
-- `-p` option in `assemblePartial` enabled by default; deprecated; will be removed in 2.2
-- Added `-d` option in `assemblePartial` to drop non-assembled partial reads to reduce output file 
   size
-- Added `sortAlignments` action. Sort `*.vdjca` files by read id, allows diffing alignments after 
   `assembleParial` and other actions that shuffle records inside file.
-- Fixed incorrect behaviour of `exportClones` and `exportAlignments` in cases like `mixcr 
   exportAlignments -p full -descrR1 ...`
-- minor: Multiple reads in `exportAlignmentsPretty` and `filterAlignments` should be now specified 
   as `-i 123 -i 456` or `-i 123,456` etc.
-- minor: `--reads-ids` in `exportAlignmentsPretty` and `--readsIds` in `filterAlignments` both 
   renamed to `--read-ids`
-- minor: infrastructure for post-build tests in Travis CI


MiXCR 2.1 ( 6 Feb 2017)
========================

-- Major review of all analysis steps for non-enriched libraries (RNA-Seq, etc...). Efficiency of 
   TCR/IG extraction substantially improved (according to our benchmarks, efficiency is highest among 
   all tools available for RNA-Seq repertoire extraction known to date; successfully work even for 
   48+48 RNA-Seq data). Zero false-positive alignments and false-overlaps detected.
-- Additional round of alignment for V gene in paired-end reads aligner (improve efficiency and 
   accuracy for some boundary cases; negligible impact on analysis speed).
-- New action `extendAlignments` to extend TCR alignments with defined V and J genes but not fully 
   covering CDR3 sequence.
-- Scripting-friendly export format now used by default. Use `-v` to return to column names with 
   spaces.
-- Information on the number of deleted nucleotides / size of P-segment for `V`, `D`, and `J` genes 
   now is explicitly exported in `-defaultAnchorPoints` field (see docs for more info).
-- Many small fixes and enhancements.
-- Correct marks for P-segment of J gene in `exportAlignmentsPretty` and `exportClonesPretty`


MiXCR 2.0.4 ( 4 Feb 2017)
========================

-- Fix for NPE in `-nMutations ...` `-aaMutations ...`
-- Correct visualization of D gene P segments in exportAlignmentsPretty
-- minor: Fix for error in export when fields are given in the file


MiXCR 2.0.3 (26 Dec 2016)
========================

-- User-friendly export of mutations in germline sequences: nucleotide, amino-acid and detailed 
   (provides means to link nucleotide mutations with resulting amino-acid mutations; e.g. it allows to 
   easy differentiate between sense and nonsense nucleotide mutations). Mutations can be exported for 
   any gene feature (e.g. FR3) realtive to any gene feature (e.g. VRegion).
-- Fix for NPE in assemble action invoked with `-OmaxBadPointsPercent=0`
-- Support for Linux `free` version 3.3.10 in `mixcr` wrapper script (now MiXCR runs on Centos 7.2, 
   Ubuntu 16.04.1)
-- Unified way for gene feature translation (frame is inferred using closest reference point known 
   to be in-frame)
-- minor: fix for wrong filtering of stop codons in case of featuresToAlign with non-coding regions
-- minor: Backward compatibility option --diff-loci in align action


MiXCR 2.0.2 (10 Nov 2016)
========================

-- Fixes NPE in `exportClones` action


MiXCR 2.0.1 ( 8 Nov 2016)
========================

-- Fixes problem with absent library search folders
-- Added action `exportClonesPretty`, that prints well-formatted alignments for segments and clonal 
   sequence
-- Human readable report for assemblePartial action
-- Additional micro-filtering step for alignment hits to exclude wrong chain hits
-- RepSeq.IO: fixes bug when MIXCR fails to resolve partial library name for files without .gz 
   extension
-- Print warning when using java version <= 7 
-- minor: Statistics about chains usage is added to `align` and `assemble` reports
-- minor: Added chains (`--chains` or `-c` option) filter for `exportAlignments` 
-- minor: Execution time is now printed in reports


MiXCR 2.0 (13 Sep 2016)
========================

-- New JSON-based reference library format (see [RepSeq.IO](https://github.com/repseqio/repseqio))
-- Complete review of V/D/J/C gene library (see [repository](https://github.com/repseqio/library))
-- New simplified method to import IMGT library (see documentation)
-- All `--loci` options replaced with `--chain` (`-l` -> `-c`)
-- Removed option `--diff-loci` at `align` step
-- Added `-OallowChimeras=true` / `false` option at `align` step (better algorithm than was with 
   `--diff-loci`)
-- Removed: option `-u`/`--functional-only` in `align` action
-- Many small fixes
-- minor: Improved report content with absolute values for all rows and additional version info
-- minor: Now report with run statistics is additionally printed to stdout
-- minor: Execution time information added to report


MiXCR 1.8.3 ( 8 Sep 2016)
========================

-- Fix for C alignment now will be performed in R2 only for alignments with V gene in R1 (affects 
   only `align` with `-OallowPartialAlignments=true`)
-- Fix for wrong hits filtration in case of `-OallowPartialAlignments=true`
-- Alignment-to-clone index rewritten from scratch (see `-i` / `--index` option in `assemble`)
-- MapDB dependency removed
-- Fixes occasional NullPointerException during reading of alignemnt-clone index
-- Fixes NullPointerException with -descrR2 in exportAlignments
-- Better wording for command options descriptions in built-in help (printed by `mixcr -h`)
-- minor: Additional fixes for reproducibility of run-to-run results (internal rounding of `float` 
   hit scores, additional reseeding of random seed in mapping).


MiXCR 1.8.2 (31 Jul 2016)
========================

-- Fixed `floatingRightBound=false` for rna-seq alignment parameters
-- Added new action `filterAlignments`
-- Fixed wrong output for *gene family* export columns
-- Several fixes for alignment report
-- Default value for `qualityMergingAlgorithm` for paired-end merger changed to `MaxSubtraction`
-- Fixed `NPE` / `IllegalArgumentException` in case of complex assemblingFeatures


MiXCR 1.8.1 (29 Jun 2016)
========================

-- Revert quality filtering/mapping algorithm to MiXCR 1.7.x
-- Added different quality aggregation algorithms for assemble (Average, Min, Max, MiniMax) option 
   `-OqualityAggregationType=Max`
-- Added `clonesDiff` action to calculate descriptive statistics of differnece between two samples
-- Fixed wrong anchor point positions in Macaca mulatta IGL reference imported from IMGT
-- MiXCR returns exit code 1 if program terminated with error
-- Automatic correction of -OvParameters.geneFeatureToAlign in align in some cases (e.g. IMGT 
   reference and rna-seq paramenters)


MiXCR 1.8 (21 Jun 2016)
========================

-- Assembler of partial reads allows to assemble CDR3s from several short reads: final puzzle piece 
   for high quality repertoire data extraction from RNA-Seq data
-- Added support for P-segments; new gene features `VPSegment`, `DLeftPSegment`, `DRightPSegment`, 
   `JPSegment` now available both in `exportAlignments` and `exportClones`; feature is enabled by 
   default
-- Added new anchor points to encode information about P-segment positions
-- Clone assembler now can separates clones with different V/J/C genes but same clonal sequence 
   (e.g. CDR3); this behaviour is turned off by default (see `-OseparateByV/J/C` in `assemble` action 
   parameters to turn it on)
-- Quality aggregation algorithm in assembler changed (see description of assemble procedure)
-- Added clone filtration step: filter clones with low quality clonal sequence (see 
   -OminimalQuality parameter)
-- Added new action `alignmentsDiff`: run as `mixcr alignmentsDiff file1.vdjca file2.vdjca 
   report.txt` to find difference between two .vdjca files
-- Following export fields added: `-vFamily`, `-vFamilies` (same for D/J/C)
-- Added new options in `align`: `--not-aligned-R1` and `--not-aligned-R2` for exporting not 
   aligned reads at alignment step (useful for troubleshooting of raw data glitches / analysis 
   parameters)
-- Alignment seed is now fixed in order to have completely equal results from run to run on the 
   same dataset
-- Added option `-e`/`--cdr3-equals` to `exportAlignmentsPretty` action
-- Added option `-v`/`--write-all` to align action
-- Action `exportReads` renamed to `exportReadsForClones`
-- Added `exportReads` action to re-export raw reads from `*.vdjca` file; useful to filter TCR/IG 
   containing reads
-- Added new `-l`/`--filter-locus` option in `exportClones` action to limit the list of exported 
   clones by specified locus
-- Added new `-q`/`--minimal-clone-fraction` and `-c`/`--minimal-clone-count` options in 
   `exportClones` action to filter the list of exported clones by their fraction of reads number
-- minor: Refactoring of report in `assemble` action: better descriptions, fixes and new 
   informative lines
-- minor: Human-readable error messages for illegal analysis options with IMGT reference
-- minor: Added new export field: `-vBestIdentityPercent` and `-vIdentityPercents` (-j..., -c... in 
   the same way)
-- minor: Now IMGT import script produces more useful information
-- minor: Added human-readable error message for unknown species
-- minor: Better layout of anchor point marks in `exportAlignmentsPretty`
-- minor: Optional output of read description lines (if present in vdjca file) in 
   `exportAlignmentsPretty`


MiXCR 1.7.4 (20 Jun 2016)
========================

-- Better compatibility with highly-paralelized execution of MiXCR on clusters: "more random" 
   generation of random temp file names
-- Human-readable messages for two wrong input cases
-- NPE fixed in case of align with `VGene`, assemble `VTranscript`
-- Minor fix for documentation


MiXCR 1.7.3 (17 May 2016)
========================

-- Fixed: wrong boundaries of CDR1-CDR3 in Rat IGH/IGK references imported from IMGT
-- Fixed: bug leading to incorrect parsing of input/output file paths with spaces
-- Fixed: bug leading to incorrect parsing of input/output file paths with spaces
-- Automatic adjustment of featureToAlign in assemble action; fixes `NPE` in some use-cases of RNA 
   data analysis with IMGT reference
-- Added support for FreeBSD in mixcr script
-- minor: Human-readable error messages for illegal analysis options with IMGT reference
-- minor: Added human-readable error message for unknown species


MiXCR 1.7.2 ( 5 May 2016)
========================

-- Fixed bug leading to mis-filtering of certain combinations of Alpha-Delta-V genes with Alpha-J 
   or Delta-J genes


MiXCR 1.7.1 ( 9 Mar 2016)
========================

-- Added two new export fields: `-aaFeatureFromLeft` and `-aaFeatureFromRight`
-- Fixed: bug with incorrect translation fo FR4 gene feature in export
-- Fixed: wrong boundaries of FR3 and CDR3 in Mouse TRA/TRD references imported from IMGT
-- Fixed: duplicate-records exception while importing mouse IGLV from IMGT (exception suppressed)


MiXCR 1.7 (29 Dec 2015)
========================

-- New feature (#8 and #36) that allows to extract actual reads that were used in each clone (for 
   more details see documentation)
-- Import of custom gene segment sequences (`mixcr importSegments ...`)
-- Automated import of IMGT refenrence segment sequences (`mixcr importFromIMGT ...`)
-- Beta feature: new aligner with support of big gaps (see "New aligner" section in documentation).
-- Added new action `exportReads` which export initial reads aggregated by each clones to separate 
   .fastq files
-- Added new export options for `exportAlignments`: `-cloneId` (prints clone ID that aggregated 
   corresponding alignment) and `-mapping` (same, with additional info on mapping type)
-- Added new export option for `exportClones`: `-mapping` will pring all alignment IDs that were 
   aggreafated by clone
-- Added option `-n` (print only first n rows) to all `export` commands
-- Added new assembler option: minimal clonal sequence length (`-OminimalClonalSequenceLength=...`)
-- minor: minor improvements and bug fixes
-- minor: version information embedded into jar file (try `mixcr -v`)


MiXCR 1.6 ( 6 Oct 2015)
========================

-- New feature: optional short column names in `export...` action to simplify further data analysis 
   using data table processing libraries like Pandas or R/DataFrames. (`-s` / `--no-spaces` in 
   `exportAlignments` and `exportClones`)
-- New export fields: `-defaultAnchorPoints` outputs positions of default anchor point in aligned 
   reads or clonal sequence (this column is added to default output format), `-positionOf` outputs 
   position of specified anchor point, `-lengthOf` outputs lengt of specified gene feature
-- MiXCR execution script now passes java-specific options directly to JVM (e.g. you can execute 
   `mixcr -Xmx2g align ...`)
-- Added `V5UTRBeginTrimmed` anchor point, `V5UTR` gene feature renamed to `V5UTRGermline`, trimmed 
   `V5UTR` gene feature added
-- Added `--filter-out-of-frames` and `--filter-stops` options in `exportClones`
-- minor: some column names in output tab-delimited files slightly changed
-- minor: NPE in exportAlignmentsPretty fixed
-- minor: New anchor poins added to exportAlignmentsPretty output


MiXCR 1.5 (11 Sep 2015)
========================

-- Analysis mode for RNA-Seq data. Use `-p rna-seq` in `align` action.
-- Possible set of D genes is limited by loci of V and J genes in current rearrangement
-- Default output format for `exportAlignmentsPretty` changed for the new one which is more compact 
   and vivid
-- Two new filtering options in `exportAlignmentsPretty`: `--cdr3-contains` and `--read-contains`
-- Default value for `-OjParameters.parameters.floatingRightBound` changed to `false`
-- New parameters: `-OincludeDScore` and `-OincludeCScore` for `align` action. If set to `true` 
   score of `D` or `C` gene will be added to total alignment score
-- New action: `mergeAlignments` to merge several *.vdjca files into one
-- Minor: Additional micro filtration step for paired-end read aligner (work in very rear cases)
-- Minor: Fixed bug leading to incorrect behaviour if `readsLayout=Unknown`
-- Minor: Correct progress reporting with `-n` option in align action.
-- Minor: Added export options -vHitsWithoutScores (same for J and D genes)
-- Minor: Added support for optional compression of .vdjca and .clns files (when specifying 
   additional `.gz` extension: e.g. `mixcr align inut.fastq output.vdjca.gz` etc.)
-- Minor: Correct handling of quotes in parameters overriding


MiXCR 1.4 (21 Aug 2015)
========================

-- migration to MiLib 1.1
-- new parameter: `vjAlignmentOrder` (possible values `VThenJ` and `JThenV`). Usage `mixcr align 
   -OvjAlignmentOrder=JThenV ...` . Previous behaviour of MiXCR was equivalent to JThenV, while now 
   default value for the parameter is VThenJ. Parameter affects only Single-Read alignments and 
   alignment of overlapped paired-end reads. Non-overlaping paired-end reads are always porcessed in 
   VThenJ mode. JThenV can be used for short reads (~100bp) with full (or nearly full) J gene coverage.


MiXCR 1.3 (13 Aug 2015)
========================

-- new feature: alignments with V and J genes from different loci are dropped (this behaviour can 
   be turned off by adding '--diff-loci' command line option)
-- default parameter value changed: for cloneClusteringParameters.specificMutationProbability value 
   changed from 1E-4 to 1E-3
-- default parameter value changed: for cloneClusteringParameters.searchParameters value changed 
   from `oneMismatch` to `twoMismatchesOrIndels`
-- bug-fix: overlapping of reads now preserves read description
-- bug-fix: `-descrR2` now outputs information from R2 (was from R1)
-- minor bug-fixed: NPE in VDJCAlignerAbstract


MiXCR v1.2 (16 Jun 2015)
========================

-- new feature: added ability to export keep read descrptions in .vdjca file (option
   '--save-description' for align command and options '-descrR1' and '-descrR2' for
   exportAlignments command)
-- fixed crash caused by '-OcloneClusteringParameters=null'
-- bug with clonatype ordering in exportClones fixed (occurred with
   '-OcloneClusteringParameters=null')


MiXCR v1.1 (29 Apr 2015)
========================

-- new feature: `exportAlignmentsPretty` action for exporting BLAST-style alignments
-- adjust D-gene aligner parameters
-- various performance improvements
-- bash script support for OS X and Linux
-- migration to MiLib 1.0


MiXCR v1.0 (1 Jan 2015)
=======================

-- first release