[med-svn] [Git][med-team/covtobed][upstream] New upstream version 1.1.4+dfsg
Nilesh Patra
gitlab at salsa.debian.org
Tue Sep 22 14:15:36 BST 2020
Nilesh Patra pushed to branch upstream at Debian Med / covtobed
Commits:
67aa1fbc by Nilesh Patra at 2020-09-22T18:25:28+05:30
New upstream version 1.1.4+dfsg
- - - - -
4 changed files:
- .gitignore
- CONTRIBUTING.md
- base.cpp
- benchmark/disk_file.sh
Changes:
=====================================
.gitignore
=====================================
@@ -18,3 +18,6 @@ pannelli
paper/paper.md~
TE
split_sam_by_flag.pl
+mini_tests
+.vscode
+prova.sh
=====================================
CONTRIBUTING.md
=====================================
@@ -1,4 +1,6 @@
-If you wish to fix a bug or add new features to the software we welcome Pull Requests.
+# Contributing to `covtobed`
+
+If you wish to fix a bug or add new features to the software we welcome **Pull Requests**.
We use [GitHub Flow style development](https://guides.github.com/introduction/flow/).
=====================================
base.cpp
=====================================
@@ -1,4 +1,4 @@
- #include <queue>
+#include <queue>
#include <vector>
#include <iostream>
#include <map>
@@ -16,7 +16,7 @@ using namespace std;
typedef uint32_t DepthType; // type for depth of coverage, kept it small
const char ref_char = '>'; // reference prefix for "counts" output
-const string VERSION = "%prog 1.1.2"
+const string VERSION = "%prog 1.1.4"
"\nCopyright (C) 2014-2019 Giovanni Birolo and Andrea Telatin\n"
"https://github.com/telatin/covtobed - License MIT"
".\n"
@@ -61,11 +61,17 @@ class Input {
bool get_next_alignment(BamAlignment & alignment) {
bool more_alignments, good_alignment;
do {
- debug cerr << "[M] " << alignment.Name << ":" << alignment.Position << " | Is mapped? " << alignment.IsMapped() << endl;
+ debug cerr << "[M] Read on ref#" << alignment.RefID << " pos:" << alignment.Position <<
+ "\n\t| Is mapped? " << alignment.IsMapped() << " | AlignmentFlag:" << alignment.AlignmentFlag << endl;
more_alignments = input_bams.GetNextAlignmentCore(alignment);
if (discard_invalid_alignments) {
good_alignment = alignment.IsMapped() && alignment.MapQuality >= min_mapq
- && !alignment.IsDuplicate() && !alignment.IsFailedQC() && alignment.IsPrimaryAlignment() ;
+ && !alignment.IsDuplicate() && !alignment.IsFailedQC() && alignment.IsPrimaryAlignment();
+
+ // 1.2.0 ProperPair
+ if (alignment.IsPaired() && ! alignment.IsProperPair() ) {
+ good_alignment = false;
+ }
} else {
good_alignment = alignment.IsMapped() && alignment.MapQuality >= min_mapq;
}
@@ -210,6 +216,7 @@ int main(int argc, char *argv[]) {
min_mapq = options.get("min_mapq");
}
+
try {
// open input and output
Input input(parser.args(), min_mapq, only_valid);
@@ -247,6 +254,7 @@ int main(int argc, char *argv[]) {
while (more_alignments_for_ref && next_change == alignment.Position) {
if (physical_coverage) {
if (alignment.InsertSize > 0) {
+ debug cerr << " [phy] pos:" << alignment.Position << " size:" << alignment.InsertSize << endl;
coverage_ends.push({alignment.Position + alignment.InsertSize, alignment.IsReverseStrand()});
coverage.inc(alignment.IsReverseStrand());
}
@@ -266,9 +274,13 @@ int main(int argc, char *argv[]) {
debug cerr << "[<] Coverage is " << coverage << " from " << next_change << endl;
last_pos = next_change;
} while (last_pos != ref.RefLength);
- debug cerr << "[_] Completed at " << ref.RefName << ":" << last_pos << endl;
+ debug cerr << "[_] Completed at " << ref.RefName << ":" << last_pos << " [coverage:" << coverage_ends.size() << "]" << endl;
// reference ended
- assert(coverage_ends.empty());
+ if (!coverage_ends.empty()) {
+ cerr << "Coverage is not zero at the end of " << ref.RefName << endl;
+ cerr << "Try samtools fixmate on the input file" << endl;
+ }
+ // 1.2.0 -- removed: assert(coverage_ends.empty());
}
//assert(!more_alignments);
if (more_alignments) {
=====================================
benchmark/disk_file.sh
=====================================
@@ -20,14 +20,13 @@ if [ ! -e "$FILE" ]; then
exit
fi
- TAG=$(basename $FILE | cut -f1 -d.)
+TAG=$(basename $FILE | cut -f1 -d.)
- echo "$TAG [$FILE]"
- hyperfine --warmup 2 --min-runs 6 --cleanup 'rm *.bed mos?_*.* || true' \
+echo "$TAG [$FILE]"
+hyperfine --warmup 2 --min-runs 6 --cleanup 'rm *.bed mos?_*.* || true' \
--export-markdown disk_$TAG.md \
"mosdepth -F 4 -x -t 4 mos4_ $FILE" \
"mosdepth -F 4 -x mos1_ $FILE" \
"covtobed $FILE > covtobed_$TAG.bed" \
- "sambamba depth base -F 'not unmapped' $FILE > sambamba.txt.bed" \
- "sambamba depth window -F 'not unmapped' -w 1000 $FILE > sambamba2.txt.bed"\
"bedtools genomecov -bga -ibam $FILE > bedtools_$TAG.bed"
+
View it on GitLab: https://salsa.debian.org/med-team/covtobed/-/commit/67aa1fbca9e3e37bd888f184c377867a3ad5a13f
--
View it on GitLab: https://salsa.debian.org/med-team/covtobed/-/commit/67aa1fbca9e3e37bd888f184c377867a3ad5a13f
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20200922/963591b9/attachment-0001.html>
More information about the debian-med-commit
mailing list