-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCHANGELOG
executable file
·174 lines (148 loc) · 7.48 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
v0.9.0 <May 13, 2016> <dip-var>
Major changes:
- Detect both homozygous and heterozygous variants.
- Detect new alleles at known locations.
- Change calculation of INDEL prob update.
- Detect variants with locations covered by the known DEL.
- Use initial variant prob (taken from input, not the updated variant prob) for performing alignment (testing).
Minor changes:
- Fix a bug of getting wrong prob for known DEL.
- Fix a bug of crashes caused by reading/writing with multiple goroutines.
- Fix some minor bugs and make some code clean. Change default value of some parameters.
v0.8.1 <Dec 9, 2015> <time-mem>
Major changes:
- Do parallel var prob update.
- Add improved FM index code and make it as a sub-package.
- Implement forward search on read (with backward search on reverse reference), so do not need to compute reverse read.
Minor changes:
- Store variant calls in a global variable.
- Fix some bugs, clean code.
v0.8.0 <Nov 19, 2015> <whole-genome>
Major changes:
- Working with whole genome.
Minor changes:
- Fix some bugs (especially overflow problem as constructing bwt), change input format, adapt code to Go1.5.
v0.7.5 <Nov 5, 2015> <fmi-integr>
Major changes:
- Integrate FM-index code into IVC.
Minor changes:
- Clean up code, ignore some debug func calls, fix some minor bugs.
v0.7.4 <Oct 4, 2015> <unknown-del>
Major changes:
- Modify Bayesian formula to call long unknown deletions.
- Still do right-of-seed-extend even if known deletions are longer than read-flank.
- Change score parameters of affine gap alignment algorithm.
- Improve running time and memory usage.
Minor changes:
- Clean code, rename some variables and functions, fix some minor bugs.
- Add more info of aligned reads and called variants to output.
- Put some internal parameters as input parameters.
v0.7.3 <Aug 19, 2015> <long-indel>
Major changes:
- Allow calling longer indels.
- Add mapping quality to variant calls.
- Make alignment bias (w.r.t indels) to be consistent between left- and right- alignment.
- Make some improvements on running time and memory usage.
Minor changes:
- Increase digit precision of variant probability in output files.
- Change indel filtering criteria.
v0.7.2 <Jun 16, 2015> <known-del>
Major changes:
- Call known deletions:
+ Adjust code to capture known deletions.
+ Report all types of variants.
- Reduce running time:
+ Remove redundant computation tasks due to redundant assignment of memory for edit distance matrix initialization.
+ Use slice instead of map when possible.
+ Improve running time and memory usage.
Minor changes:
- Re-organize and clean code.
- Consider base quality for mismatches and known variants only.
- Get longer extended-ref for alignment to capture longer indels.
v0.7.1 <May 24, 2015> <aff-gap>
Major changes:
- Implement affine gap alignment strategy.
Minor changes:
- Do not call homopolymer indels.
- Stop Hamming alignment when reaching the first mismatch.
- Fix a bug of taking quality for deletions.
- Change values for base cases in edit distance calculation.
v0.7.0 <Apr 22, 2015> <gap-aln>
Major changes:
- Implement gap alignment algorithm outside of known variant locations.
Minor changes:
- Correct the positions of aligned bases.
- Fix bugs in forward gap alignment.
- Add test cases for gap alignment trace back.
v0.6.2 <Mar 4, 2015> <para-change>
- Compute alignment probability for mismatches only.
- Change prior probability for Indel calling.
- Change calculation of alignment prob at known variant locations.
v0.6.1 <Feb 22, 2015> <aln-filter>
- Use all paired-seeds if there is no unique paired-seed:
+ Loop through several unique paired-seeds and find the alignment with minimum distance.
+ Stop if finding same ending pos of seeds after 3 iterations (need to be revised).
- Check minimum seed length when finding seeds.
v0.6.0 <Jan 25, 2015> <prob-aln>
- Implement probabilistic alignment strategy:
+ Cost of substitution is calculated based on variant profile at the postion and the bases aligned to that position.
+ Use updated variant profile during alignment process.
v0.5.2 <Jan 4, 2015> <var-filter>
- Apply other filtering techniques to called variants.
+ Filter based on correct alignment probability during alignment process.
+ Filter based on number of variants, edit distance, and chromosomal distance.
v0.5.1 <Dec 16, 2014> <var-filter>
- Apply several filtering techniques to both alignment and variant calling processes:
+ Alignment: check for chromosomal distances of alignments of paired-ends reads and match strands of two ends.
(for Illumina technology, two ends of the reads should include forward and reverse ends).
+ Variant calling: consider a cut-off quality to call variants, which is estimated based on input base quality
and assigned prior probabilities of variant calls.
v0.5.0 <Nov 30, 2014> <new-SNP>
- Call new SNPs (new Indels are not considered at this point).
+ Detect mismatches between reads and multigenomes outside of known variant locations to discover new SNPs.
+ Assign proper prior probabilities for new SNPs.
v0.4.1 <Sep 28, 2014> <update-qual>
- Call variants and calculate variant call quality during alignment phase:
+ Eliminate data structures for storing all possible variants.
+ Eliminate functions for calling variants after the alignment phase.
v0.4.0 <Sep 15, 2014> <Bayesian-var-qual>
- Calculate variant quality for variant calls using Bayesian method:
+ Read allele frequency from reference variant profile (VCF files).
+ Store all possible variants at each position found from read-multigenome alignment.
+ Calculate variant quality based on Bayesian method.
- Improve running time by using goroutines to call variants.
- Improve implementation:
+ Use uint32 for positions of variant calls.
+ Re-organize functions, remove redundant code.
v0.3.1 <Aug 13, 2014> <mem-time>
- Improve memory usage by using a memory-efficient version of fmi module (use uint32 instead of int).
- Improve running time by using goroutines to load index (modify function Load() in fmi package).
- Improve user interface (main/index.go and main/ivc.go).
v0.3.0 <Aug 7, 2014> <multi-thread>
- Use goroutines to process reads simultaneously:
+ One goroutine reads input files and put data to a data channel.
+ Other goroutines take data from the data channel and process them.
- Make some minor changes.
v0.2.5 <Jul 28, 2014> <mem-time>
- Improve memory usage: put read info and alignment info into shared variables.
- Re-organize code: put related parameters and variables together in structs, and put code for initializing memory to functions on structs.)
- Make some minor changes.
v0.2.4 <Jul 14, 2014> <rand-search>
- Use randomized algorithm with one index as the main strategy.
v0.2.3 <Jul 9, 2014> <onde-index>
- Use one index for alignment.
v0.2.2 <Jun 22, 2014> <determ-search>
- Use deterministic search for alignment.
v0.2.1 <Jul 17, 2014> <var-qual>
- Add quality calculation of called variants.
v0.2.0 <Jun 12, 2014> <pair-end, rev-comp>
- Work with pair-end reads, consider reverse complement of reads.
- Add indexing phase to the main program.
- Re-organize and clean code, test modules, test data.
v0.1.0 <May 4, 2014> <single-end, ori-read, known-var>
- Work with single-end reads, reverse complement of reads is not considered yet.
- Allow only known variants (SUB, INS).
- Implement seed-and-extend strategy to align reads to the multi-genome.
- Implement algorithm to calculate distance between reads and the multi-genome.
- Build reference multi-genome.
v0.0.0 <Jan 15, 2014> <initial version>