Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Ahmad Lutfi
    @lutfia95
    Hi, is there any seqan3 function to write IBF to file?
    2 replies
    Joshua Kim
    @joshuak94
    Hello! What's the best way to check if a sam_file_input record has a specific flag (aka unmapped, 0x4)?
    4 replies
    Hannes Hauswedell
    @h-2
    Hey everyone! The table on http://docs.seqan.de/seqan/3-master-user/group__alignment.html seems to indicate that vectorised + banded + local alignment works now! Is that indeed the case? Also for sequences of different length?
    11 replies
    Joshua Kim
    @joshuak94

    Hello, so I want to pass a sam_file_input to a function and have a few questions regarding this:
    I will be passing the variable via reference. This means that if I read two records from the file somewhere else, and then pass the file to another function, those two records will have already been read?

    Secondly, I realized I can't simply do this: void foo(seqan3::sam_file_input & input_file), because the compiler wants the full template types. However, I don't want to give a specific list of fields, in case the function is used with different inputs which have different fields. Can I do the following?:

    template<typename F, typename B>
    void foo(seqan3::sam_file_input<seqan3::sam_file_input_default_traits<>, F, B> & input_file) {}

    I noticed that it does compile and my tests pass, but I want to know what the potential issues would be with this.

    1 reply

    For example, if I have the following code:

    template<typename F, typename B>
    void foo(seqan3::sam_file_input<seqan3::sam_file_input_default_traits<>, F, B> & input_file) 
    {
        for (auto it = input_file.begin(); it != input_file.end(); ++it)
        {
            seqan3::debug_stream << (*it).id() << '\n';
        }
    }

    But the function is called with a

    sam_file_input<seqan3::sam_file_input_default_traits<>, seqan3::fields<seqan3::field::cigar>, seqan3::type_list<seqan3::format_sam>>

    then will the compiler give an error that seqan3::field::id is not present? Or do I have to add the line if ((*it).has_value()) before the printing.

    1 reply
    Ahmad lutfi
    @ah_ol_twitter
    Hi, what is the maximum size for a bin in IBF?
    3 replies
    Ahmad lutfi
    @ah_ol_twitter
    I want to store the whole human reference, one chromosome per bin. So 24 Binโ€™s. The bin size for all chromosomes will be the same for chromosome 1 (because ist the biggest with chr2).
    7 replies
    Hannes Hauswedell
    @h-2
    http://docs.seqan.de/seqan/develop/global_function_localAlignmentScore.html states that the first sequence is the horizontal one and the second is the vertical one. That means that the first band parameter affects the second sequence and the second band parameter affects the first sequence, correct?
    4 replies
    Simon Gene Gottlieb
    @SGSSGene
    Did anyone tried to build the 2fm-index over the human genome? I always get an "std::bad_alloc'" exception. (human genome is roughly 3Billion Base pairs). If I only use the first 2Billion Base pairs, I can do it on my computer with 32GB Ram+swap, but when I use 3Billion (all), it doesn't work at all, even when I change the machine to a 64GB Ram machine+32Gbswap.
    32 replies
    crusoe
    @mr-c:matrix.org
    [m]
    Can a test be crafted to catch a regression of the fix?
    2 replies
    sarahet
    @sarahet

    Has anyone experience with SeqAn3/ranges and gcc 9.1? I tested with a later gcc9 version (also don't have another one installled yet) and had no issues but a reviewer encountered the following problem which seems to come from the ranges library when building

    โ€ฆ/seqan3/submodules/range-v3/include/range/v3/range/concepts.hpp:56:5: internal compiler error: in nothrow_spec_p, at cp/except.c:1247

    Just wondering whether there ever have been issues with a certain compiler version

    5 replies
    Marcel
    @marehr
    clang-14 + gcc9-lib + seqan3 might become a reality: 99% tests passed, 94 tests failed out of 8075 where 22 tests failed to compile, but as always the last 10% are the hardest to get :)
    7 replies
    Simon Gene Gottlieb
    @SGSSGene

    I am trying to use rabema to evaluate my output. I ran razers3 on hg38 with 100'000 queries. This created a out_gold.sam (4.5GB). Using rabema_prepare_sam I converted it to out_gold.prep.sam (15GB). But converting it to a bam file samtools view -Sb out_gold.prep.sam > out_gold.bam fails. I don't really know where to start searching. The error message:

    ...
    [W::sam_hdr_create] Duplicated sequence "" in file "out_gold.prep.sam"
    [W::sam_hdr_create] Duplicated sequence "" in file "out_gold.prep.sam"                                                 
    [W::sam_hdr_create] Duplicated sequence "" in file "out_gold.prep.sam"
    [E::sam_hrecs_update_hashes] Duplicate entry "" in sam header         
    samtools view: failed to add PG line to the header

    The resulting out_gold.bam file is only 28Bytes large.

    I am following the instructions from here: https://github.com/seqan/seqan/tree/develop/apps/rabema

    12 replies
    Simon Gene Gottlieb
    @SGSSGene
    ร–h...I just noticed that the sam file is limited numbers in the range of 2^31. Is there anyway to make it work for the complete human genome? (Assuming it is one sequence)
    3 replies
    Simon Gene Gottlieb
    @SGSSGene
    I made a few adjustments to the seqan.de website, after not being able to find our Reference on it: seqan/www.seqan.de#85
    crusoe
    @mr-c:matrix.org
    [m]
    Any idea when there might be a new release of sdsl-lite?
    Marcel
    @marehr

    Any idea when there might be a new release of sdsl-lite?

    I don't know. I'm unsure who is even maintainer right now.

    crusoe
    @mr-c:matrix.org
    [m]
    ๐Ÿ˜•
    Svenja Mehringer
    @smehringer
    I think Chris and Enrico are repo owners?
    Enrico Seiler
    @eseiler
    I'm not sure what I am, I cannot change repo settings, but I can push and create new releases (which I guess is all we need right now).
    crusoe
    @mr-c:matrix.org
    [m]
    @eseiler: Is there a release process ? Are the tests passing?
    Maybe make a release candidate and see what people say after a week or two..
    crusoe
    @mr-c:matrix.org
    [m]
    ๐Ÿ‘๏ธ
    Enrico Seiler
    @eseiler
    There's no release process for the SDSL, so I guess we could just take some commit
    crusoe
    @mr-c:matrix.org
    [m]

    This branch is 252 commits ahead, 66 commits behind simongog:master.

    Is this fork supposed to be the new primary repo?

    Enrico Seiler
    @eseiler
    I'd rather think this will be the repo for sdsl-3, and the original one will be for 2
    Would be nice to have USCiLab/cereal#712 such that we can pin the release in sdsl and seqan3; in general, the only thing I'd like to do for sdsl before release is to pin all dependencies to some release, as far as possible
    crusoe
    @mr-c:matrix.org
    [m]
    ๐Ÿ‘
    2 replies
    crusoe
    @mr-c:matrix.org
    [m]
    report from @timosachsenberg: the OpenMS argument parsing refactoring is done
    What are the next steps on the Seqan side?
    2 replies
    Remy Schwab
    @remyschwab
    I'm finding the section on minimizers in the seqan3 tutorial pretty confusing. Even if I run the example code I don't think I'm getting the results it's telling me I should. Is there a best person to talk to about this?
    1 reply
    Joshua Kim
    @joshuak94
    Hello, I'm a bit confused about the difference between the master branch and the release-3.1.0 branch... If there are commits in both branches that I need, how can I do this?
    Enrico Seiler
    @eseiler
    release-3.1.0 only has the stuff that we want in the release, master has things that we do not want to have in the release (e.g., first fixes for clang support)
    I think we can do a merge of release into master (we do this regularly)
    8 replies
    Simon Gene Gottlieb
    @SGSSGene
    the CI is stuck on my PR: seqan/seqan3#2869
    how can I request a re-run of the CI?
    Enrico Seiler
    @eseiler
    In this case not really as it didn't trigger, but you changed the base branch, so you need to forcepush or add a new commit; otherwise CI will run on the old base branch anyway
    You can probably just rebase onto current master
    Simon Gene Gottlieb
    @SGSSGene

    You can probably just rebase onto current master

    Thank you, this did the trick :-)

    crusoe
    @mr-c:matrix.org
    [m]
    is this range-v3 bug fixed upstream? https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=997289 If so, can we get a new release?
    Svenja Mehringer
    @smehringer
    SeqAn 3.1.0 is out :tada: for the 10 pages description check out github :D
    2 replies
    crusoe
    @mr-c:matrix.org
    [m]
    However, due to a bug in range-v3 + gcc 10.3.0, it is scheduled to be removed on December 6th โ˜น๏ธ
    https://bugs.debian.org/997289
    1 reply
    crusoe
    @mr-c:matrix.org
    [m]
    Both, from the Debian testing distribution, until the range-v3 bug is fixed
    Svenja Mehringer
    @smehringer
    :(
    Enrico Seiler
    @eseiler
    Is this also reported upstream? Would a patch be enough?
    crusoe
    @mr-c:matrix.org
    [m]
    I am happy to carry a patch to fix this; it won't require a new upstream release for us to fix it
    2 replies
    Yes, it was reported upstream ericniebler/range-v3#1672
    Hannes Hauswedell
    @h-2
    A good reason to move to GCC10 and remove the dependency on range-v3 :wink:
    Marcel
    @marehr

    A good reason to move to GCC10 and remove the dependency on range-v3 :wink:

    We are happy to welcome patches for this :wink:

    1 reply
    Joshua Kim
    @joshuak94

    Hellooooo. I have a question about how to implement something. I have a function which takes a sam_file_input and filters for reads matching a certain criteria. I want to output those reads, either as a vector of records or as a separate sam_file_input. Here's the signature of my function:

    template <typename traits_type, typename fields_type, typename format_type>
    inline void filter_file(seqan3::sam_file_input<traits_type, fields_type, format_type> & input)

    I did the templates this way so that the function takes any sam_file_input regardless of how it was created (e.g. sam_file input my_input{file_path} vs requesting certain fields).

    How can I make it so that I store the records of choice (either in a vector on into a second sam_file_input)? I wasn't sure how to figure out the type of the records, and I wasn't sure how to create a sam_file_input and then push back records into that.