Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to seqan 1.4.2 #105

Closed

Conversation

junaruga
Copy link

@junaruga junaruga commented Feb 28, 2020

This PR is working in progress.

Right now bowtie is using seqan 1.1.
And the seqan 1.X's latest version is 1.4.2 according to the downloading side (GitHub).

And actually in both Debian and Fedora, we need to build bowtie with the system seqan deb or RPM package (both package's versions are 1.4.2) patching the some files.

I would like to suggest to use seqan 1.4.2 for this repository.

Let me explain some commits for this PR.

First 3 commits are for the preparation.

1st commit is same with #102 . I expect the PR is merged at first to verify the bowtie.
2nd commit is a backport from bowtie2, that is related to #95 (comment) . Maybe this issue appears running bowtie with gcc-N high version and non-x86_64 architecture.
3rd commit is to run simple-test on s390x. simple-test works with the number of thread: 1 on s390x.

From 4th commit, I used Deiban's patch files. Thank you, Debian people for that.

seqan-library-1.4.2 directory is created like this steps.

$ wget http://packages.seqan.de/seqan-library/seqan-library-1.4.2.tar.bz2
$ tar xvf seqan-library-1.4.2.tar.bz2
$ mv seqan-library-1.4.2 third_party/
$ rm -rf third_party/seqan-library-1.4.2/share

Right now there is one CPU architecture common error like this.

/bowtie-build  --threads 2 --quiet --sanity  .simple_tests.pl.fa .simple_tests.tmp
./bowtie --debug   --trim3 4 -S --quiet -a .simple_tests.tmp --12 .simple_tests.tab
./third_party/seqan-library-1.4.2/include/seqan/sequence/string_base.h:498 Assertion failed : static_cast<TStringPos>(pos) < static_cast<TStringPos>(length(me)) was: 0 >= 0 (Trying to access an element behind the last one!)
bowtie aborted with exitlevel 134

See https://travis-ci.org/junaruga/bowtie/jobs/656448871#L1388

Maintainers or Debian people, do you have any idea to fix this?
How do you think to update seqan ?

Thank you.

* Update aligning with bowtie2 .travis.yml and Makefile.
* Add osx case, gccN cases.
This is a backport from bowtie2
commit: c619b9ab47ea1da67bee7258353d0791120384f4 .

This causes an error with gcc 10 & aarch64, s390x, ppc64le.

alphabet.cpp:293:1: error: narrowing conversion of ‘-1’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
Running the tests with number of threads: 1 on s390x to pass the tests.
SeqAn 1.3 renamed seqan::fill() to seqan::resize().
SeqAn has a class with the same name and fatal name collision happens.
New version 1.4 of SeQan uses a different name of the class
Required by newer versions of GCC.
@junaruga
Copy link
Author

Maintainers or Debian people, do you have any idea to fix this?

@mr-c do you have any idea for that? Could you invite the maintainer of bowtie here?

@junaruga
Copy link
Author

junaruga commented Feb 29, 2020

Perhaps, it might be better to manage using https://github.com/seqan/seqan/tree/seqan-v1.4.2 as this repository's git submodule rather than using seqan-library-1.4.2.tar.bz2 . It 's like bowtie2 simde.

@junaruga
Copy link
Author

junaruga commented Jul 26, 2020

I would close this PR, as it seems seqan dependency was dropped by the commit: 3945d8c on Bowtie 1.3.0.

@junaruga junaruga closed this Jul 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant