Codebase list abyss / upstream/2.2.4 ChangeLog
upstream/2.2.4

Tree @upstream/2.2.4 (Download .tar.gz)

ChangeLog @upstream/2.2.4raw · history · blame

   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
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
2020-01-30  Johnathan Wong <jowong@bcgsc.ca>

	* Release version 2.2.4

	General:
	* Refactor deprecated functions in clang-8

	Sealer:
	* Remove unsupported -D option from help page

	abyss-bloom:
	* Add counting Bloom Filter instruction to help page

	abyss-bloom-dbg:
	* Report coverage information of unitigs


2019-09-20  Johnathan Wong <jowong@bcgsc.ca>

	* Release version 2.2.3
	* Revert memory consumption of Bloom filters to pre 2.2.0 behaviour
	ABySS will now share the specified memory among all Bloom filters
	instead of just the counting Bloom filter.
	* Fix gcc-9 compilation warnings

2019-08-16  Johnathan Wong <jowong@bcgsc.ca>

	* Release version 2.2.2
	* Fix abyss-overlap for 32-bit systems

2019-08-12  Johnathan Wong <jowong@bcgsc.ca>

	* Release version 2.2.1
	* Fix abyss-bloom for macOS

2019-08-01  Johnathan Wong <jowong@bcgsc.ca>

	* Release version 2.2.0
	* Construct a counting Bloom filter instead of a cascading Bloom filter.

	abyss-bloom:
	* Add 'counting' as valid argument to '-t' option to build a counting
	bloom filter

2018-12-04  Sauparna Palchowdhury <spchowdhury@bcgsc.ca>

	* Release version 2.1.5
	* Compiler fixes and increse stack size limits to avoid stack overflows.

	abyss-pe:
	* Add 'ulimit' statements to the Makefile to increse a thread's
	stack size to 64MB.

2018-11-09  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.1.4
	* Major improvements to Bloom filter assembly contiguity and
	correctness. Bloom filter assemblies now have equivalent scaffold
	contiguity and better correctness than MPI assemblies of the same
	data, while still requiring less than 1/10th of the memory. On
	human, Bloom filter assembly times are still a few hours longer
	than MPI assemblies (e.g. 17 hours vs. 13 hours, using 48
	threads).

	abyss-pe:
	* Change default value of `m` from 50 => 0, which has the effect
	of disallowing sequence overlaps < k-1 bp. QUAST tests on E. coli /
	C. elegans / H. sapiens showed that both contiguity and
	correctness were improved by allowing only overlaps of k-1 bp
	between sequence ends.

2018-11-05  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.1.3
	* Bug fix release

	abyss-bloom:
	* Added `graph` command for visualizing neighbourhoods of the
	Bloom filter de Bruijn graph (produces GraphViz)

	abyss-fixmate-ssq:
	* Fixed missing tab in SAM output which broke ABySS linked reads
	pipeline (Tigmint/ARCS)

2018-10-24  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.1.2
	* Improved scaffold N50 on human by ~10% by
	implementing a new `DistanceEst --median`
	option (thanks to @lcoombe!)
	* Added a `--max-cost` option to `konnector` and
	`abyss-sealer`. This address a long-standing issue
	with indeterminately long running times, particularly
	for low values of `k`.

	abyss-pe:
	* Use the new `DistanceEst --median` option as the
	default for the scaffolding stage

	Dockerfile:
	* Fix OpenMPI setup

	DistanceEst:
	* Added `--median` option

	konnector:
	* Added `--max-cost` option to bound running time

	sealer:
	* Added `--max-cost` option to bound running time

2018-09-11  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.1.1

	abyss-bloom-dbg:
	* upgrade to most recent version of ntHash to reduce
	some assembly/hashing artifacts. On a human assembly, this
	reduced QUAST major misassemblies by 5% and increased
	scaffold contiguity by 10%
	* `kc` parameter now also applies to MPI assemblies (see below)

	abyss-fac:
	* change N20 and N80 to N25 and N75, respectively

	ABYSS-P:
	* add `--kc` option, with implements a hard minimum k-mer
	multiplicity cutoff

	abyss-pe:
	* fix `zsh: no such option: pipefail` error with
	old versions of `zsh` (fallback to `bash` instead)
	* adding `time=1` now times *all* assembly commands

	abyss-sealer:
	* parallelize gap sealing with OpenMP (thanks to
	@schutzekatze!)
	* add `--gap-file` option (thanks to @schutzekatze!)

	DistanceEst:
	* add support for GFA output

2018-04-13  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.1.0
	* Adds support for misassembly correction and scaffolding
	using linked reads, using Tigmint and ARCS. (Tigmint and
	ARCS must be installed separately.)
	* Support simultaneous optimization of `s` (min sequence length)
	and `n` (min supporting read pairs / Chromium barcodes)
	during scaffolding

	abyss-longseqdist:
	* Fix hang on input SAM containing no alignments with MAPQ > 0

	abyss-pe:
	* New `lr` parameter. Provide linked reads (i.e. 10x Genomics
	Chromium reads) via this parameter to perform misassembly
	correction and scaffolding using Chromium barcode information.
	Requires Tigmint and ARCS tools to be installed in addition
	to ABySS.
	* Fix bug where `j` (threads) was not being correctly passed to
	to `bgzip`/`pigz`
	* Fix bug where `zsh` time/memory profiling was not being used,
	even when `zsh` was available

	abyss-scaffold:
	* Simultaneous optimization of `n` and `s` using line search
	or grid search [default]

	SimpleGraph:
	* add options `-s` and `-n` to filter paired-end paths by
	seed length and edge weight, respectively

2018-03-14  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.0.3
	* Many compiler fixes for GCC >= 6, Boost >= 1.64
	* Read and write GFA 2 assembly graphs with abyss-pe graph=gfa2
	* Support reading CRAM via samtools

	abyss-bloom:
	* New `abyss-bloom build -t rolling-hash` option, to
	pre-build input Bloom filters for `abyss-bloom-dbg`
	* Fix incorrect output of `abyss-bloom kmers -r`
	(thanks to @notestaff!)

	abyss-bloom-dbg:
	* New `-i` option to read Bloom filter files built by
	`abyss-bloom build -t rolling-hash`
	* Improved error branch trimming (reduces number of
	small output sequences)
	* Fix intermittent segfaults caused by non-null-terminated
	strings

	abyss-map:
	* Append BX tag to SAM output (Chromium 10x Genomics data)

	ABYSS-P:
	* Increase default number of sparsehash buckets from
	200,000,000 => 1,000,000,000
	* Benefit: Allows larger datasets to be assembled without
	time-consuming sparsehash resize operations (e.g. H. sapiens)
	* Caveat: Increases minimum memory requirement per
	CPU core from 89 MB to 358 MB

	abyss-pe:
	* Parallelize `gzip` with `pigz`, if available
	* Report time/memory for each program with `zsh`, if available
	* Fix: use `N` instead of `n` for scaffold stage,
	when set by user

	abyss-samtobreak:
	* New `--alignment-length` (`-a`) option to exclude alignments
	shorter than a given length
	* New `--contig-length` (`-l`) option to exclude contigs
	shorter than a given length
	* New `--genome-size` (`-G`) option, for contiguity metrics
	that depend on the reference genome size
	* New `--mapq` (`-q`) option for minimum MAPQ score
	* New `--patch-gaps` (`-g`) option to join alignments
	separated by small gaps
	* New TSV output format with additional contiguity
	stats (e.g. L50, NG50)
	* Fix handling of hard-clipped alignments

	abyss-todot:
	* New `--add-complements` option

	abyss-tofastq:
	* New `--bx` option to copy BX tag from from SAM/BAM
	to FASTQ header comment (Chromium 10x Genomics
	data)

2016-10-21  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.0.2
	* Fix compile errors with gcc 6 and boost 1.62

2016-09-14  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.0.1
	* Resolve licensing issues by switching to standard GPL-3 license

2016-08-30  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 2.0.0
	* New Bloom filter mode for assembly => assemble large genomes
	with minimal memory (e.g. 34G for H. sapiens)
	* Update param defaults for modern Illumina data
	* Make sqlite3 an optional dependency

	abyss-bloom:
	* New 'compare' command for bitwise comparison of Bloom filters
	(thanks to @bschiffthaler!)
	* New 'kmers' command for printing k-mers that match a Bloom filter
	(thanks to @bschiffthaler!)

	abyss-bloom-dbg:
	* New preunitig assembler that uses Bloom filter
	* Add 'B' param (Bloom filter size) to 'abyss-pe' command to enable
	Bloom filter mode
	* See README.md and '--help' for further instructions

	abyss-fatoagp:
	* Mask scaftigs shorter than 50bp with 'N's (short scaftigs
	were causing problems with NCBI submission)

	abyss-pe:
	* Update default parameter values for modern Illumina data
	* Change 'l=k' => 'l=40'
	* Change 's=200' => 's=1000'
	* Change 'S=s' => 'S=1000-10000' (do a param sweep of 'S')
	* Use 'DistanceEst --mean' for scaffolding stage, instead of
	the default '--mle'

	abyss-sealer:
	* New '--max-gap-length' ('-G') option to replace unintuitive
	'--max-frag'; use of '--max-frag' is now deprecated
	* Require user to explicitly specify Bloom filter size (e.g.
	'-b40G')
	* Report false positive rate (FPR) when building/loading Bloom
	filters
	* Don't require input FASTQ files when using pre-built Bloom
	filter files

	konnector:
	* Fix bug causing output read 2 file to be empty
	* New percent sequence identity options ('-x' and '-X')
	* New '--alt-paths-mode' option to output alternate connecting
	paths between read pairs

	README.md:
	* Fixes to documentation of ABYSS and abyss-pe parameters
	(thanks to @nsoranzo!)

2015-05-28  Ben Vandervalk <benv@bcgsc.ca>

	* Release version 1.9.0
	* New paired de Bruijn graph mode for assembly.
	* First official release of Sealer, a tool for closing
	scaffold gaps by navigating a Bloom filter de Bruijn graph.
	* New outward extension feature for Konnector to generate
	long pseudo-reads.
	* Support for the DIDA (Distributed Indexing Dispatched
	Alignment) framework, for computing sequence alignments
	in parallel across multiple machines.
	* Unit tests can now be run easily with 'make check', without
	external dependencies.

	abyss-bloom:
	* abyss-bloom 'build' command now supports -j option for
	multi-threaded Bloom filter construction.

	abyss-map:
	* New --protein option for mapping protein sequences.

	abyss-pe:
	* New paired de Bruijn graph mode for assembly. Enable by
	setting `k` to the k-mer pair span and `K` to size of an
	individual k-mer in a k-mer pair. See README.md for further
	details.
	* New `aligner=dida` option for using the DIDA parallel alignment
	framework. See the DIDA section of the abyss-pe man page
	for usage details.
	* New `graph=gfa` option to use the GFA (Graphical
	Fragment Assembly) format for intermediate graph files.

	abyss-sealer:
	* New tool for closing scaffold gaps by navigating a Bloom
	filter de Bruijn graph
	* See Sealer/README.md or abyss-sealer man page for details
	and examples.

	konnector:
	* New --extend option for extending merged and unmerged
	reads outwards in the de Bruijn graph.

2014-07-09  Anthony Raymond  <traymond@bcgsc.ca>

	* Release version 1.5.2
	* First official release of Konnector and abyss-bloom.
	* More GCC 4.8+ fixes! Modified Boost install instructions.
	* Fixed rare bug when parsing output of BWA.

	ABYSS:
	* New option, --mask-cov, use kmers with lowercased bases, but
	don't count them towards multiplicity.

	abyss-bloom:
	* Construct reusable Bloom filter files for use with Konnector.
	* Perform boolean operations on two or more bloom filters.
	Currently supports union and intersection operations.

	abyss-fixmate:
	* Check for boost 1.43+ when using `unordered_map::quick_erase`.
	* New option, --all, to report all alignments.
	* Set mate unmapped flag for mateless reads.

	abyss-longseqdist:
	* Fixed `error: invalid CIGAR` when reading BWA output.

	configure:
	* Include mpi and boost libraries as system libraries. Silences
	warnings (treated as errors) when compiling with GCC 4.8+.

	konnector:
	* Merge read pairs into a single sequence (pseudoread) by
	building a Bloom filter de Bruijn graph and searching for paths
	between the paired end reads.  Input reads may be
	FASTA/FASTQ/SAM/BAM. The input files must be sorted by read name
	and may not contain orphan reads.

2014-05-07  Anthony Raymond  <traymond@bcgsc.ca>

	* Release version 1.5.1
	* Fix an issue with strand-specific RNA-Seq assembly when running
	`abyss-filtergraph --assemble --SS`.
	* Portability fixes for Fujitsu C Compiler (FCC).

	abyss-filtergraph:
	* Assemble contigs in forward orientation with `--assemble --SS`

	abyss-pe:
	* Fix some cases where abyss-pe uses incorrect executables

	ABYSS-P:
	* Portability fix with FCC

2014-05-01  Anthony Raymond  <traymond@bcgsc.ca>

	* Release version 1.5.0
	* Assemble strand-specific RNA-Seq libraries into strand-specific
	contigs.
	* New parameters, Q and xtip. Improves assembly in high-coverage
	regions by removing recurrent read errors.
	* Portability fixes for Fujitsu C Compiler.

	abyss-pe:
	* New parameter, `Q`, to mask low quality bases to N.
	* New parameter, `xtip=1`, to remove 2-in 0-out tips.
	* New parameter, `ss=1`, to perform strand-specific assembly
	using ssRNA-Seq libraries.
	* New command, `scaftigs`. Breaks scaffold sequences at 'N's and
	produce a scaftigs.fa file.
	* Include long-scaffs.fa in FAC statistics if `long` parameter
	used.

	abyss-fixmate:
	* Performance improvement for GCC-4.6 and older.

	DistanceEst:
	* Report an estimation of duplicate fragments from read pairs
	mapping to different contigs.

	abyss-fixmate:
	* Report number of fragments removed as noise and outliers.

	ABYSS/ABYSS-P:
	* New option, --SS, to support strand-specific assembly.

	abyss-layout:
	* New option, --SS, to support strand-specific assembly.

	abyss-map:
	* New option, --SS, to support strand-specific assembly.

	abyss-overlap:
	* New option, --SS, to support strand-specific assembly.

	abyss-PathOverlap:
	* New option, --SS, to support strand-specific assembly.

	abyss-scaffold:
	* New option, --SS, to support strand-specific assembly.
	* Don't prune xtips when scaffolding.

	AdjList:
	* New option, --SS, to support strand-specific assembly.

	Overlap:
	* New option, --SS, to support strand-specific assembly.

	PopBubbles:
	* New option, --SS, to support strand-specific assembly.

2013-11-20  Anthony Raymond  <traymond@bcgsc.ca>

	* Release version 1.3.7
	* Use long sequences to rescaffold scaffolds. May be run by
	adding libraries to the `long’ parameter. When Scaffolding
	with RNA-Seq contigs from a Trans-ABySS assembly, the genic
	contiguity is greatly improved.
	* Added support gcc 4.8+, and Mac OS X 10.9 Mavericks with clang.
	* Licensed as GPL for non-commercial purposes.

	abyss-fac:
	* Added e-size to contiguity statistics as described in the GAGE
	paper.

	abyss-filtergraph:
	* Bug fix. `--assemble’ will not fail an assertion.
	* New option, --max-length, used to remove contigs over the
	specified threshold.
	* Trim 2-in 0-out tips when removing tips.

	abyss-map:
	* Bug fix. Correctly set mapq=0 for reads that multi map.

	abyss-longseqdist:
	* New program. Generate distance estimates between all contigs a
	single read maps to.

	abyss-mergepairs:
	* Report number of reads chastity filtered.

	abyss-overlap:
	* Bug fix. Handle ambiguity codes.

	abyss-pe:
	* Support BWA-MEM with assembly. Run using parameter
	`aligner=bwamem’.
	* Added another scaffolding stage using long sequences. May be
	run by adding libraries to the `long’ parameter.

	ABYSS-P:
	* Bug fix. Do not use awk to merge fasta files.

	abyss-samtobreak:
	* Building bug fix. Check that ghc modules are installed.

	UnitTest:
	* The Google C++ testing framework has been added to ABySS.

2013-07-15  Anthony Raymond  <traymond@bcgsc.ca>

	* Release version 1.3.6
	* Improved documentation for GitHub devs.
	* ABYSS-P performance improvement.
	* Various portability and bug fixes.

	abyss-mergepairs:
	* Fix program name.

	abyss-fac:
	* New option --exp-size to give the expected genome size needed
	for NG50 calculation.
	* New option --count-ambig include ambiguities in calculations.

	ABYSS/ABYSS-P:
	* Performance improvement. Runtime reduced by ~20%.
	* Fix support for MPICH.

	abyss-map:
	* No longer require POPCNT instruction.
	* New option --order to force output order the same as input.

	abyss-filtergraph:
	* New option --remove to remove specified contigs from graph.

	PopBubbles:
	* Bug fix. Setting branches > 2 will now work.

	abyss-fixmate:
	* Improved error when first and second read IDs do not match.
	* New option --cov to compute and store the physical coverage in
	a Wiggle file.

	AdjIO:
	* Bug fix for non-GCC compilers.

2013-03-04  Anthony Raymond  <traymond@bcgsc.ca>

	* Release version 1.3.5
	* Standardized --help message format.
	* Improve documentation.
	* Merge overlapping read pairs.
	* Layout and merge contigs using sequence overlap graph.
	* Attempt to fill scaffold gap with consensus of all paths between
	contigs.

	abyss-pe:
	* Attempt to fill scaffold gap with consensus of all paths between
	contigs.

	AdjList:
	* Increase the default value of m from 30 to 50.

	abyss-overlap:
	* Increase the default value of m from 30 to 50.
	* New options, --tred and --no-tred. Remove transitive edges.
	Default --tred.

	abyss-mergepairs:
	* New program. Merges overlapping read pairs.

	ABYSS-P:
	* Bug fix. Exit when there is a problem reading a file.
	* Don't store sequences in the rank 0 process when using at least
	1000 cores. Improves memory distribution with large number of
	cores.

	abyss-fac:
	* Increase the default value of t from 200 to 500.

	DistanceEst:
	* Bug fix. Exit with success if there is only one contig. Fixes
	this error:
	DistanceEst: DistanceEst.cpp:534: int main(int, char**): Assertion `in' failed.
	* Bug fix. Fix the bug causing this error:
	DistanceEst: error: The observed fragment of size 128 bp is shorter than 2*l (l=71). Decrease l to 64.
	* Bug fix. Correctly estimate distance using MLE when l=0.

	abyss-layout:
	* New program. Layout contigs using the sequence overlap graph.

	abyss-map:
	* Return helpful error when query ID starts with '@`
	* New options, --chastity and --no-chastity. Ignore chastity
	failed reads. Default --no-chastity.

	abyss-samtobreak:
	* New script. Calculate contig and scaffold contiguity and
	correctness metrics.

	abyss-fixmate:
	* New option, l. Minimum alignment length. Set unmapped flag if
	the CIGAR match length is too small.
	* Print all alignments when the histogram output file not given.
	* Print SAM header to the same file when given.

2012-05-30  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.3.4.
	* Do not extend paths, which can cause misassemblies.
	* Increase the default value of m from 30 to 50.
	* Various portability fixes.

	abyss-pe:
	* Increase the default value of m from 30 to 50 to reduce the
	likelihood of misassemblies.
	* Integrate with SLURM. Thanks to Timothy Carlson.

	ABYSS:
	* Use CityHash64 rather than Bob Jenkins' hashlittle.

	SimpleGraph:
	* Do not extend paths. Closes #8. Extending paths can cause
	misassemblies when the de Bruijn graph is incomplete.

	MergePaths:
	* Bug fix. Closes #6. Fix the bug causing the error:
	Assertion `!m_ambig' failed.

	abyss-fatoagp:
	* New script. Create a FASTA file of scaftigs and an AGP file.

2012-03-13  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.3.3.
	* New parameter, l. Specify the minimum alignment length when
	aligning the reads to the contigs.
	* Improve the scaffolding algorithm that identifies repeats.
	* Improve the documentation.

	abyss-pe:
	* New parameter, l. Specify the minimum alignment length when
	aligning the reads to the contigs. This option may be specified
	per library. The default value is k.
	* New parameter, S. Specify the minimum contig size required for
	building scaffolds.
	* New parameter, N. Specify the minimum number of pairs required
	for building scaffolds.
	* Integrate with Load Sharing Facility (LSF).
	* Calculate the assembly contiguity statistics.

	KAligner, abyss-map:
	* Rename the minimum alignment length option -k to -l.

	DistanceEst:
	* Dual licensed under the GPL and BCCA-Academic licenses.
	* New options, --fr and --rf. Specify the orientation of the
	library. The default behaviour is to detect the orientation.
	* New options, --mind and --maxd. Specify the minimum and maximum
	distances for the maximum likelihood estimator.
	* New option, -l, --min-align. Specify the minimum alignment
	length of the aligner, which can improve distance estimates.
	* Increase the default minimum mapping quality, -q, to 10, was 1.

	MergePaths:
	* Bug fix. Fix the bug causing the error:
	Assertion `count(it2+1, path2.end(), pivot) == 0' failed.

	PathConsensus:
	* Bug fix. Fix the bug causing the error:
	Assertion `fstSol.size() == sndSol.size()' failed.

	MergeContigs:
	* Calculate the assembly contiguity statistics.

	abyss-scaffold:
	* Improve the algorithm that identifies repeats.
	* Remove simple cycles from the scaffold graph.
	* Calculate the assembly contiguity statistics.
	* The option -s may specify a range, such as -s200-10000,
	to find the value of s that maximizes the scaffold N50.

	abyss-fac:
	* New option, -m, --mmd. Output MultiMarkdown format.

	abyss-index:
	* New option, -a, --alphabet. Specify the alphabet.
	* New option, --bwt. Output the Burrows-Wheeler transform.

	abyss-samtoafg:
	* New script. Convert a SAM file to an AMOS AFG file.

	README, README.html, abyss-pe.1:
	* Improve the documentation.

2011-12-13  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.3.2.
	* Enable scaffolding by default.
	* Remove small shim contigs.
	* Improved distance estimates.
	* Reduce sequence duplication.
	* Read compressed files on Mac OS X.

	abyss-pe:
	* Enable scaffolding by default. If the mp parameter is not
	specified, use a default value of ${pe} or ${lib}.
	* Support using bowtie2 to align reads to contigs by specifying
	aligner=bowtie2.
	* The default aligner is abyss-map.
	* Output the scaffold overlap graph, ${name}-scaffolds.dot.
	* Set DYLD_FORCE_FLAT_NAMESPACE to read compressed files on OS X.

	ABYSS:
	* Can read k-mer count data from a Jellyfish file with extension
	.jf for k-mer counts or .jfq for q-mer counts. Jellyfish must be
	installed.
	* Bug fix. Fix the bug causing the error
	bool chomp(std::string&, char): Assertion `s.length() > 1' failed.

	abyss-filtergraph:
	* New program. Remove small shim contigs that add no useful
	sequence to the assembly. Thanks to Tony Raymond (tgr).

	PopBubbles:
	* New option, -a, --branches. Specify the maximum number of
	branches of a bubble that may be popped. Default is 2.
	* Use DIALIGN-TX for multiple sequence alignment. Thanks to tgr.

	DistanceEst:
	* Improved distance estimates.

	abyss-joindist:
	* Remove this program. Use abyss-todot instead.

	MergePaths:
	* Use a non-greedy algorithm that reduces sequence duplication but
	may reduce contiguity. The greedy algorithm may be used by
	specifying the option --greedy.

	abyss-fixmate:
	* Do not output query names by default.

	configure:
	* New option, --enable-samseqqual. Enable SAM sequence and quality
	fields.

2011-10-24  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.3.1.
	* Read sequence files in SRA format. The tool fastq-dump from the
	sratoolkit must be installed.
	* Read a contig overlap graph in the ASQG format of SGA.
	* Fix compile errors for Mac OS X.
	* Fix the bug that caused the line number of an error in a FASTQ
	file to be reported incorrectly.

	abyss-pe:
	* Support using BWA-SW to align reads to contigs by specifying
	aligner=bwasw.
	* The parameter ALIGNER_OPTIONS may be used to specify a different
	value for k when aligning using abyss-map.
	* New target, bam, may be used to produce a final BAM file of the
	reads aligned to the scaffolds.

	KAligner:
	* Fix the bug causing the error:
	Assertion `qstep >= 0 && qstep <= m_hashSize' failed.

	abyss-scaffold:
	* The result is independent of the order in which the mate-pair
	libraries are specified.
	* Permit scaffolding contigs that have non-numeric identifiers.
	* The overlap graph is optional.

	abyss-todot:
	* Convert adj, dist or ASQG formatted graph files to dot format.
	* Merge multiple graph files into one.

2011-09-09  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.3.0.
	* Use mate-pair libraries to scaffold contigs.
	* Support CASAVA-formatted FASTQ files.
	* Bug fix. Do not trim quality 41 bases from the ends of reads.
	* Boost C++ Libraries are required to compile ABySS.

	abyss-pe:
	* New parameter, mp, to specify the mate-pair libraries to be used
	for scaffolding.
	* Increase the default value for s from 100 to 200.
	* Set the default value for n to 10.
	* Integrate with PBS.

	abyss-scaffold:
	* New program. Scaffold using mate-pair libraries.

	DistanceEst:
	* Ignore multimapped alignments with a mapping quality of zero.
	* New option, -q, --min-mapq. Ignore alignments with mapping
	quality less than this threshold. Default is 1.
	* Do not use OpenMP 3.0.

	PopBubbles:
	* Scaffold over complex bubbles with the option --scaffold.
	Disabled by default.

	MergePaths:
	* Fix a bug that causes PathOverlap to die with the error:
	Distance get(edge_bundle_t, const Graph&, ContigNode, ContigNode):
	Assertion `e.second' failed.
	* New option, --no-greedy. Use a non-greedy algorithm that reduces
	sequence duplication but reduces contiguity. Disabled by default.

	KAligner:
	* Performance improvements. Thanks to Tony Raymond (tgr).
	* The output is printed in the same order as the input when
	multithreaded. (tgr)

	abyss-map:
	* New program. Use the BWT and FM-index to find the longest common
	substring. To use it, specify the option aligner=map to abyss-pe.

	abyss-index:
	* New program. Build a FM-index of a FASTA file.

	abyss-bowtie:
	* Use abyss-tofastq --interleave to speed up abyss-fixmate.

	abyss-bwa:
	* Use bwa index -a bwtsw by default.
	* Use abyss-tofastq --interleave to speed up abyss-fixmate.

	abyss-fac:
	* Report N80, N50 and N20. Do not report median and mean.
	* Increase the default minimum contig size threshold, option -t,
	from 100 to 200.

	abyss-fixmate:
	* Set the mapping quality of both alignments to the minimum
	mapping quality of the pair of alignments.

	abyss-tofastq:
	* New option, -i, --interleave. Interleave the files.

	configure:
	* New option, --with-boost. Specify the path for Boost.
	* New option, --disable-popcnt. Do not use the popcnt instruction.

2011-04-15  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.7.

	abyss-pe:
	* Support using bwa or bowtie to align reads to contigs.
	Specify aligner=bwa or aligner=bowtie.
	* Integrate with IBM LoadLeveler.

	PopBubbles:
	* Use an affine gap penalty.
	* The default maximum bubble length is 10 kbp.
	* New option, --scaffold. Scaffold over bubbles with insufficient
	sequence identity to be popped.

	SimpleGraph:
	* New parameter d to specify the acceptable error of a distance
	estimate. The default is 6 bp.

	PathConsensus:
	* Use an affine gap penalty.

	MergePaths:
	* Fix a bug that causes PathOverlap to die with the error:
	Distance get(edge_bundle_t, const Graph&, ContigNode, ContigNode):
	Assertion `e.second' failed.

2011-02-07  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.6.
	* Find contigs that overlap by fewer than k-1 bp.
	* Pop bubbles with sufficient sequence identity.
	* Merge paths that overlap unambiguously.

	abyss-pe:
	* New parameter, m, the minimum number of overlapping bases.
	The default is 30.
	* The minimum sequence identity parameter, p, applies to both
	PopBubbles and PathConsensus.

	ABYSS:
	* Support values of k larger than 96. The maximum value of k is
	set when compiling using `configure --enable-maxk´.

	AdjList:
	* Find sequences that overlap by fewer than k-1 bp. The parameter
	m specifies the minimum number of overlapping bases.

	PopBubbles:
	* Align both branches of the bubble and pop bubbles whose sequence
	identity is sufficient, at least 90% by default.
	* New parameter, p, the minimum identity required.
	* The maximum bubble size is unlimited by default. This limit can
	be changed using the parameter b.

	SimpleGraph:
	* Extend each path as long as is unambiguously possible.

	PathOverlap:
	* Merge paths that overlap unambiguously.

	MergeContigs:
	* Perform an alignment of the two sequences when no simple overlap
	is found.

	abyss-fac:
	* New option, -g. Specify the expected genome size.

2010-11-15  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.5.

	AdjList:
	* Fix the colour-space-specific bug causing the error
	Assertion `seq.length() > (unsigned)opt::overlap' failed.

	PathConsensus:
	* Fix the bug causing the error
	Assertion `fstSol.size() == 1' failed.

	abyss-fixmate:
	* Do not output the @RG header record at the end of the output
	that gives the median fragment size. It breaks `samtools view -S`.
	* --no-qname: New option. Set the qname to *.

2010-10-13  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.4.

	ABYSS-P:
	* Fix the bug causing the error
	Unexpected sequence extension message.

	KAligner:
	* Reduce the amount of memory used by KAligner.

	PathConsensus:
	* New program. Replace gaps of Ns that span a region of ambiguous
	sequence with a consensus sequence of the possible sequences that
	fill the gap. By default a minimum 90% identity is required. This
	default can be changed with the parameter, p. The consensus
	sequence uses IUPAC-IUB ambiguity codes. DIALIGN-TX is used for
	the multiple sequence alignment.

	PathOverlap:
	* Fix the bug causing the error
	Assertion `back(paths, u) == front(paths, v)' failed.

2010-09-08  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.3.

	ABYSS-P:
	* Bug fix. Fix the bug causing the error
	Assertion `m_comm.receiveEmpty()' failed.

	PopBubbles:
	* Bug fix. Fix the bug causing the error
	error: unexpected ID

	PathOverlap:
	* Include the single-end contigs in the overlap graph.

	abyss-pe:
	* Output an overlap graph of the paired-end assembly in the file
	${name}-contigs.dot.
	* Do not create the intermediate file ${name}-4.fa.

	abyss-adjtodot:
	* Convert an overlap graph in adj format to Graphviz dot format or
	SAM alignment format.

2010-08-25  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.2.
	* Merge contigs after popping bubbles.
	* Handle multi-line FASTA sequences.
	* Report the amount of memory used.
	* Most tools can output their results in SAM format, including
	AdjList, KAligner, ParseAligns and PathOverlap.

	abyss-pe:
	* New command, se-dot. Output a Graphviz dot file of the
	single-end assembly.

	ABYSS:
	* Handle multi-line FASTA sequences.
	* Report the amount of memory used.
	* Improve error messages for incorrectly-formatted FASTA files.
	* Bug fix. Improved handling of palindromes.

	PopBubbles:
	* Merge contigs after popping bubbles.
	* Bug fix. Do not pop bubbles resulting from palindromes.

	KAligner:
	* Report the amount of memory used.
	* New option, --sam. Output the alignments in SAM format.

	ParseAligns, DistanceEst:
	* Bug fix. The CIGAR string was oriented with respect to the
	query rather than with respect to the target, which is standard.

	AdjList, PathOverlap:
	* New option, --sam. Output the adjacency graph in SAM format.

	abyss-fixmate:
	* New program. Similar to samtools fixmate, but does not require
	that the input be sorted by query ID, although it is faster if it
	is sorted.

2010-07-12  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.1.
	* Handle reverse-forward oriented mate pair libraries.
	* Improved distance estimates, particularly with large fragment
	libraries.

	abyss-pe:
	* New commands:
	se-contigs: Assemble single-end contigs.
	pe-contigs: Assemble paired-end contigs (default).
	se-sam: Output a gzipped SAM file of the single-end assembly.
	se-bam: Ouptut a BAM file of the single-end assembly.
	pe-dot: Output a Graphviz dot file of the paired-end assembly.
	all: Sam as se-bam pe-contigs pe-dot.
	* Options for one particular library may be specified:
	lib='lib1 lib2' lib2_s=1000 lib2_n=25
	* Input sequence may come from an arbitrary command, which is
	useful to assemble a region of an aligned BAM file:
	in='<(samtools view genome.bam chr10)'

	ABYSS:
	* Bug fix. When reading SAM/BAM files, the quality format
	incorrectly defaulted to ASCII-64, when it should be ASCII-33.

	ABYSS-P:
	* May use the Intel MPI library.

	ParseAligns:
	* Count the number of forward-reverse, reverse-forward and
	forward-forward oriented alignments.

	DistanceEst:
	* Handle reverse-forward oriented mate pair libraries.
	* Improved distance estimates, particularly with large fragment
	libraries.
	* Remove duplicate mate pairs.
	* Print a pretty UTF-8 bar plot of the fragment-size distribution.
	* Multithreaded using OpenMP. The -j, --threads option specifies
	the number of threads to use.
	* Performance improvment.

	Overlap:
	* Handle cases when more than one gap occurs within the mate pair
	fragment size.

	SimpleGraph:
	* Performance improvment.

	MergePaths:
	* Handle the case when a circular sequence is assmembled into a
	single contig.

	abyss-tofastq:
	* New program. Convert qseq, export, SAM and BAM files to FASTA or
	FASTQ format. The files may be compressed with gz, bz2 or xz and
	may be tarred.

2010-05-25  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.2.0.
	* Scaffold over gaps in coverage and unresolved repetitive
	sequence using Ns.
	* Read sequence from SAM and BAM files.

	abyss-pe:
	* Set q=3 by default. Trim bases from the ends of reads whose
	quality is less than 3.
	* Do not store the .pair.gz file.
	* Generate a BAM file of the mate pairs that align to
	different contigs of the single-end assembly. Disabled by default.
	* Output a Graphviz dot file of the paired-end assembly.
	Disabled by default.
	* Store the bubbles in ${name}-bubbles.fa rather than bubbles.fa.
	* Store the indel bubbles in ${name}-indel.fa.
	* Bug fix for mawk.

	ABYSS:
	* Set -E0 when coverage is low (<2).

	ABYSS-P:
	* Remove the temporary files contigs-*.fa and snp-*.fa.

	PopBubbles:
	* Output in Graphviz dot format using --dot.

	KAligner:
	* Do not ignore sequences (reads or contigs) containing N.
	* Output SAM headers (but not SAM alignments).

	ParseAligns:
	* Output in SAM format.

	DistanceEst:
	* Input in SAM format.
	* Output in Graphviz dot format using --dot.

	Overlap:
	* Scaffold over gaps in coverage. Scaffolding can be disabled
	using the option --no-scaffold.
	* Merge contigs that overlap at simple repeats. These merges can
	be prevented using the option --no-merge-repeat.

	SimpleGraph:
	* Scaffold over repeats. Scaffolding can be disabled using the
	option --no-scaffold.

	MergePaths:
	* Merge paths containing ambiguous sequence.
	* Multithreaded using OpenMP. The -j, --threads option specifies
	the number of threads to use.

	MergeContigs:
	* Merge paths and contigs containing ambiguous sequence.

	PathOverlap:
	* Output in Graphviz dot format using --dot.

	Consensus:
	* Output the pileup in samtools format.

2010-02-15  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.1.2.

	ABYSS:
	* Read tar files including compressed tar files.
	* New parameter -b, --bubble-length=N. Pop bubbles shorter than
	N bp. The default is b=3*k.

	AdjList:
	* Include the contig coverage in the output.
	* The script abyss-adjtodot converts an ABySS adjacency file to
	GraphViz dot format.

	PopBubbles:
	* Pop bubbles resulting from indels.

	KAligner:
	* Synchronize the threads periodically (every ten thousand
	alignments by default) to ease the computational burden on
	ParseAligns. This synchronization can be disabled using --sync=0.
	* Use two threads by default.

	abyss-pe:
	* New parameter, b.
	* Use two threads by default.
	* The read length argument, l, is deprecated. To emulate the
	behaviour of ABySS 1.0.14 and older, set t=6*(l-k+1). The default
	is t=k.

2010-01-19  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.1.1.

	ABYSS:
	* Pop complex bubbles either completely or not at all. Bubble
	popping now completes in a single round.
	* Choose better (typically lower) default values for the
	parameters -e,--erode and -c,--coverage. The default threshold is
	the square root of the median k-mer coverage.

2009-12-18  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.1.0.
	* The output format of AdjList, DistanceEst and SimpleGraph has
	changed to be more humanly readable.

	ABYSS:
	* New options, -q, --trim-quality. Trim bases from the ends of
	reads whose quality is less than the specified threshold.
	--standard-quality: zero quality is `!' (33)
	default for FASTQ files
	--illumina-quality: zero quality is `@' (64)
	default for qseq and export files
	Thanks to Tony Raymond.

	SimpleGraph:
	* Multithreaded. The -j, --threads option specifies the number of
	threads to use.
	* Expand tandem repeats when it is possible to determine the exact
	number of the repeat.

	MergePaths:
	* Bug fix. A repeat that is larger than the fragment size could
	be misassembled. Thanks to Tony Raymond.

	abyss-pe:
	* Determine the parameter j (number of threads) by finding the
	number of slots allocated on the head node in the PE_HOSTFILE.
	* Store the k-mer coverage histogram in coverage.hist.

2009-11-13  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.16.
	* Improve the performance and memory usage of KAligner and
	AdjList, particularly for very large data sets.

	KAligner:
	* Improve memory usage when maxk is 32 or 96. No change when maxk
	is the default 64.
	* New option, -i, --ignore-multimap. Ignore any duplicate k-mer in
	the target sequence. Thanks to Tony Raymond.

	AdjList:
	* Improve performance for very large data sets.

	ParseAligns:
	* For reads whose ID begins with `SRR', expect that the forward
	and reverse read have identical ID and no suffix, such as
	/1 and /2.

2009-10-19  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.15.

	ABYSS:
	* New options, -e, --erode and -E, --erode-strand.
	The parameter e erodes bases at the ends of blunt contigs with
	coverage less than the specified threshold.
	The parameter E erodes bases at the ends of blunt contigs with
	coverage less than the specified threshold on either strand.
	* New feature. If the parameters e and c are not specified,
	attempt to choose appropriate values based on the observed k-mer
	coverage. This feature will work best for higher coverage data.
	For lower coverage data, setting e=c=2 is reasonable.
	* New option, --trim-masked. Removed masked (lower case) sequence
	at the beginning and end of the read. Disable with
	--no-trim-masked.
	* The read length, l, is an optional parameter. If the read length
	is specified, the trim parameter, t, will default to 6*(l-k+1), as
	before. If the read length is not specified, t will be set to the
	same value as k. For longer reads or when k is less than 85% of l,
	it should not be necessary to specify l. The parameter t may be
	specified directly if desired.

	DistanceEst:
	* Bug fix. The standard deviation could be calculated incorrectly
	for larger numbers, particularly for libraries with large fragment
	sizes. Thanks to Tony Raymond.

	Overlap:
	* Bug fix. If Overlap found mate pairs on the same contig with
	incorrect orientation, it would generate a misassembled contig.
	These misassembled contigs are easily identified in the
	xxx-3-overlap.fa file. The two contigs IDs, in the fourth and
	fifth column, will be identical.
	* New option, --mask-repeat. If two contigs are joined by mate
	pairs and are found to overlap by a simple repeat so that the
	exact number of the repeat is unknown, join the contigs estimating
	the number of the repeat, and mask (lower case) the repeat
	sequence. This feature is disabled by default.

	abyss-pe:
	* Use gunzip -c rather than zcat for portability.

	configure:
	* New option, --enable-mpich. Use the MPICH2 MPI library.

2009-09-08  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.14.
	* Read files compressed with xzip (.xz) and compress (.Z).

	abyss-pe:
	* Assemble multiple libraries with different fragment sizes.
	* New manual page.

	ABYSS:
	* Don't necessarily discard reads that contain an N. Keep those
	k-mer that do not contain an N.

	ABYSS-P:
	* Serially renumber the contigs output by ABYSS-P using awk.

2009-08-26  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.13.
	* Read files compressed with gzip (.gz) or bzip2 (.bz2).

	ABYSS-P:
	* Bug fix. Fix a race condition in the erosion algorithm.

2009-08-18  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.12.

	abyss-pe:
	* Both ABYSS and KAligner are run only once per assembly, which
	speeds up the paired-end assembly by nearly a factor of two.
	* The k-mer coverage information is correct in every contig file.
	* A new parameter, cs, converts colour-space contigs to nucleotide
	contigs using Consensus.
	* A new parameter, ABYSS_OPTIONS, may be used to disable chastity
	filtering by specifying ABYSS_OPTIONS=--no-chastity.

	ABYSS:
	* Read files in export format, which is similar to qseq format.
	* Discard reads that failed the chastity filter. Use the
	--no-chastity option to retain these unchaste reads. Chastity
	filtering affects only qseq- and export formatted-files.
	* Remove low-coverage contigs within ABYSS rather than filtering
	using awk and reassembling.
	* Support big-endian architecture machines.

	KAligner:
	* A new option, -m or --multimap, specifies that a duplicate k-mer
	may be seen in the target sequence. By default, every k-mer in the
	target sequence must be unique.
	* A new option, --seq, prints the read sequence of each alignment.

	Overlap:
	* A new option, --scaffold, fills the gap between two blunt
	contigs with Ns. This feature is disabled by default.

	Consensus:
	* Call the consensus sequence for each contig based on the
	alignment of reads to contigs.
	* Convert colour-space contigs to nucleotide contigs.
	* Written by Tony Raymond.

2009-07-21  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.11.
	* Assemble colour-space reads. Read identifiers must be named with
	the suffixes F3 and R3.
	* Read files in qseq format. Thanks to Tony Raymond (tgr).
	* Prevent misassemblies mediated by tandem segmental duplications.
	A sequence XRRY, where R is a repeat sequence, could have been
	misassembled as XRY. (tgr)

	abyss-pe:
	* Integrate with Sun Grid Engine (SGE). A parallel, paired-end
	assembly can be run with a single qsub command. The parameters
	lib, np and k default to the qsub environment variables JOB_NAME
	(qsub -N), NSLOTS (qsub -pe) and SGE_TASK_ID (qsub -t)
	respectively.
	* The .pair file, the largest intermediate file, is now gzipped.

	ABYSS-P:
	* Bug fix. At k=19, k-mer would be distributed to even-numbered
	processes only.

	KAligner:
	* Multithreaded. The -j, --threads option specifies the number of
	threads to use. The order in which the alignments are output will
	vary from run to run, but the alignments are deterministic and
	will not vary. Each thread reads and aligns one file, so the reads
	must be in more than one file to use this feature. (tgr)

2009-06-18  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.10.

	abyss-pe:
	* Start an MPI ABySS assembly if the np option is specified.

	ABYSS:
	* For a non-parallel assembly, allocate more hash buckets to allow
	for large single-machine jobs.
	* Print the hash load during the loading process.

	KAligner:
	* Output the IDs of reads that do not align.
	* Print a progress report of the number of reads aligned.

	ParseAligns:
	* To reduce memory usage, do not track reads that did not align.
	KAligner and ParseAligns should now be able to handle any number
	of reads in a single run.

	MergePaths:
	* Number paired-end contigs so that their IDs do not overlap with
	the single-end contigs. If a single-end contig is not used in a
	paired-end contig, its ID will not change.
	* Merge overlapping paired-end contigs that were previously
	being missed in some situations.

	configure:
	* Print a warning if Google sparsehash was not found.

2009-05-15  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.9.

	abyss-pe:
	* Allow multiple input files specified by the parameter `in'.
	* Support reading FASTA or FASTQ file formats.

	KAligner:
	* Support using Google sparsehash to reduce memory usage.
	Google sparsehash does not provide a multimap, so KAligner built
	using Google sparsehash cannot handle a duplicate k-mer in the
	reference sequence. It will print an error message and die if a
	duplicate k-mer is encountered. If Google sparsehash is not used,
	the standard STL multimap will be used which does permit duplicate
	k-mer.
	* Support reading the query sequence from standard input.

	ParseAligns:
	* Significantly reduce memory usage if the mate reads are
	encountered one after the next in the same file.

2009-04-02  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.8.
	* Bug fix. Fix the undefined behaviour causing the error
	Assertion `marked == split' failed.

2009-03-31  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.7.
	* Use a mark-and-sweep trimming algorithm to remove errors at the
	ends of blunt contigs.
	* The parallel (ABYSS-P) trimming algorithm is now deterministic;
	it will produce the same result every time. In addition, the
	result of the parallel trimming algorithm is identical to the
	result of the non-parallel trimming algorithm.
	* Start trimming branches at length 1, previously 2.
	* Bug fix in ABYSS-P. Repeat sequences of k-1 bases could
	potentially be misassembled. Use a mark-and-sweep algorithm to
	split ambiguous edges before contig generation. The previous
	algorithm was not deterministic.
	* Reduce memory usage by 200 MB by removing the MPI transmit
	buffer.
	* Bug fix in ABYSS-P. Fix an additional race condition in the
	erosion algorithm.

2009-03-24  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.6.
	* Bug fix. Fix a race condition in the erosion algorithm.
	* For the parallel program (ABYSS-P), after bubble popping perform
	as many trimming rounds as necessary to remove all the tips, as
	the non-parallel program does.
	* New script, abyss2afg, to create an AMOS AFG assembly.

2009-03-11  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.5.
	* Portability fixes. Tested with g++ 4.3.3.

2009-03-04  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.4.

	ABYSS:
	* Remove the need to specify a -e,--erode parameter by improving
	the erosion algorithm to complete in a single pass.
	* Remove the default limit on the maximum number of bubble
	popping rounds. A limit may be specified using -b,--bubbles.
	* Generate a warning if an input file is empty, but do not die.
	* When using a Google sparsehash, allocate room for 100 million
	k-mers.
	* Increase the maximum FASTA line length from 64 kB to 256 kB.
	* Require only one of either -l,--read-length or -t,--trim-length
	to be specified.
	* Allow read pairs to be named `_forward' and `_reverse'.
	* Ensure that exactly k-1 bases of context is given on each side
	of the bubble sequence. Previously, one side would have k bases of
	context, and the other side would have k-1 bases.
	* Add command line options to each of the paired-end programs.

	ABYSS-P:
	* Use Open MPI as the default MPI library.
	* Do not link against the Open MPI C++ library.

	abyss-pe:
	* Use pipes where possible to avoid intermediate files.
	* The semantics of the n argument have changed. See DistanceEst
	-n,--npairs below.

	SimpleGraph:
	* If more than one path is found but only one meets all of the
	constraints, use it.
	* Allow for some constant error in distance estimates that does
	not decrease with the number of samples. The expected fragment
	size seems to vary with genomic coordinate to a certain degree.
	So, the distribution of fragment size spanning two given contigs
	may differ from the empirical distribution by a roughly constant
	offset.

	DistanceEst:
	* The semantics of the -n,--npairs option has changed.
	Require at least NPAIRS pairs between contigs (>= NPAIRS).
	Previously, required strictly more than NPAIRS pairs between
	contigs (> NPAIRS).
	* Give the estimated error to a single decimal place.
	* When counting the number of pairs that join two contigs, only
	count pairs that fit the empirical distribution.
	* When deciding whether the pairs joining two contigs are
	inconsistent in sense, require NPAIRS read pairs joining two
	contigs in each sense before considering the pair data to be
	inconsistent.

	ParseAligns:
	* Measure fragments in total size, not alignment distance.
	* Allow a read that spans two contigs to be used in distance
	estimates.
	* Add the -h,--hist option to produce a histogram.
	* Bug fix. When measuring the empirical fragment size, ensure that
	the sense of the alignments is correct. Output a negative fragment
	size if the reverse read aligns ahead of the forward read.
	* Bug fix. Miscalculated the fragment size estimate between two
	contigs if they did not have the same sense and one contig
	required flipping. It was possible to see one distance estimate
	from contig A to contig B and a differing estimate from contig B
	to contig A. Typically, the distance estimate would be off by
	one.

2009-01-23  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.3.
	* Merge contigs that ended due to a lack of coverage, but which
	are connected by paired-end reads and overlap unambiguously.
	* Track the multiplicity the sense and antisense strand
	separately. Erode the end of a blunt contig until it is
	represented by both strands.
	* Ignore the case of the nucleotide sequence of a FASTA file.
	* Increase the maximum FASTA line length from 1 kB to 64 kB to
	allow loading contigs.
	* Output the path through the single-end contigs in the comment
	field of the paired-end contig.
	* In the paired-end driver script, abyss-pe,
	Implement a coverage cutoff, c.
	Pass the erosion parameter, e, to the single-end assembler.

2008-11-21  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.2.
	* Terminate contig extension at palindromic k-mers.
	* If erosion (-e,--erode) is enabled, remove the tips of blunt
	contigs that are represented only once.

2008-11-07  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.1.
	* Portability improvements to compile for Mac OS X.

2008-08-07  Shaun Jackman  <sjackman@bcgsc.ca>

	* Release version 1.0.