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

Doc/create all hpp #2841

Merged
merged 3 commits into from
Nov 5, 2021
Merged

Conversation

SGSSGene
Copy link
Contributor

@SGSSGene SGSSGene commented Oct 5, 2021

Part of: seqan/product_backlog#400

Added a script that creates all.hpp file. It also checks already checked scripts.
The structure of an all.hpp files is assumed to be as follow:

<License text>
<Doxygen description of the modules>
#pragma once

#include <xyz/subpath1>
...

This PR has 3 big changes (=commits)

    1. add a script that could generate proper all.hpp files
    1. changing a few snippets that otherwise would break when using the new correct all.hpp files
    1. adjusting all all.hpp by using the script from the first commit.

@vercel
Copy link

vercel bot commented Oct 5, 2021

This pull request is being automatically deployed with Vercel (learn more).
To see the status of your deployment, click below or on the icon next to each commit.

🔍 Inspect: https://vercel.com/seqan/seqan3/BeogHETRhds7NAdvegnCoLBzRWiy
✅ Preview: https://seqan3-git-fork-sgssgene-doc-createallhpp-seqan.vercel.app

@SGSSGene SGSSGene changed the base branch from master to release-3.1.0 October 5, 2021 15:01
@codecov
Copy link

codecov bot commented Oct 5, 2021

Codecov Report

Merging #2841 (5f2392d) into release-3.1.0 (305697e) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@              Coverage Diff               @@
##           release-3.1.0    #2841   +/-   ##
==============================================
  Coverage          98.21%   98.21%           
==============================================
  Files                272      272           
  Lines              10827    10827           
==============================================
  Hits               10634    10634           
  Misses               193      193           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 305697e...5f2392d. Read the comment docs.

@SGSSGene SGSSGene force-pushed the doc/create_all_hpp branch from 62c3f42 to 9bdc2b1 Compare October 6, 2021 07:17
@SGSSGene
Copy link
Contributor Author

SGSSGene commented Oct 6, 2021

Note: The file alignment/matrix/all.hpp changes in a weird/interesting way.
Not sure if that is really what we want:
https://github.com/seqan/seqan3/pull/2841/files#diff-38d35830137a776cb0e96c207990c9ebee6773806ecde07e0c19a6d77a786046

@SGSSGene SGSSGene force-pushed the doc/create_all_hpp branch 2 times, most recently from 9f58d8a to c6d454c Compare October 6, 2021 08:18
@marehr
Copy link
Member

marehr commented Oct 6, 2021

Note: The file alignment/matrix/all.hpp changes in a weird/interesting way. Not sure if that is really what we want: https://github.com/seqan/seqan3/pull/2841/files#diff-38d35830137a776cb0e96c207990c9ebee6773806ecde07e0c19a6d77a786046

If it isn't too complicated, we should not generate and include detail/all.hpp, but I wouldn't be too sad if that can't be excluded.

@SGSSGene SGSSGene force-pushed the doc/create_all_hpp branch from c6d454c to f00db8c Compare October 7, 2021 10:21
@SGSSGene
Copy link
Contributor Author

SGSSGene commented Oct 7, 2021

Note: The file alignment/matrix/all.hpp changes in a weird/interesting way. Not sure if that is really what we want: https://github.com/seqan/seqan3/pull/2841/files#diff-38d35830137a776cb0e96c207990c9ebee6773806ecde07e0c19a6d77a786046

If it isn't too complicated, we should not generate and include detail/all.hpp, but I wouldn't be too sad if that can't be excluded.

So I have changed it as follows:

  • Not generating all.hpp for folders including /detail or `/exposition_only' in their name
  • Only include detail/all.hpp if it already exists. (See include/seqan3/core/range/all.hpp as an example ).
    Or would you rather never have any "#include <detail/all.hpp>" ?

@SGSSGene SGSSGene force-pushed the doc/create_all_hpp branch 3 times, most recently from 3efdda3 to 7b0d32f Compare October 7, 2021 14:04
@SGSSGene
Copy link
Contributor Author

SGSSGene commented Nov 1, 2021

@eseiler Yes, I agree. My first version also worked like this.
The motivation to include it any ways is that some headers like include/seqan3/utility/simd/all.hpp include detail files and code breaks when they are removed:
https://github.com/seqan/seqan3/pull/2841/files#diff-1ef6e14184c93247afa48a4c90935202196a074cdaba8faa73ee2b0d25a2d162L13-L22

@SGSSGene SGSSGene requested a review from smehringer November 1, 2021 13:02
@@ -26,19 +42,3 @@
#include <seqan3/alignment/configuration/align_config_scoring_scheme.hpp>
#include <seqan3/alignment/configuration/align_config_vectorised.hpp>
#include <seqan3/alignment/configuration/detail.hpp>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh spotted a detail here? I guess you just added inlcudes but do not touch existing ones. fine for now in the scope of this PR! This can be a follow up.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mhm, interessting. The issue is, that I didn't plan for detail.hpp only for detail folders....
Nice spot!
Will fix it now otherwise I forget.

@smehringer
Copy link
Member

you need to review approvals to get merged, so I'm assigning team first.
Quick sweep looked good.

@smehringer smehringer requested review from a team and Irallia and removed request for a team November 2, 2021 05:54
include/seqan3/contrib/charconv/all.hpp Outdated Show resolved Hide resolved
@@ -26,19 +42,3 @@
#include <seqan3/alignment/configuration/align_config_scoring_scheme.hpp>
#include <seqan3/alignment/configuration/align_config_vectorised.hpp>
#include <seqan3/alignment/configuration/detail.hpp>
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mhm, interessting. The issue is, that I didn't plan for detail.hpp only for detail folders....
Nice spot!
Will fix it now otherwise I forget.

Copy link
Contributor

@Irallia Irallia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So many missing includes 😮
I have some questions, the most important, what happend to include/seqan3/utility/parallel/all.hpp?

include/seqan3/utility/parallel/all.hpp Outdated Show resolved Hide resolved
@SGSSGene SGSSGene added this to the SeqAn 3.1.0 milestone Nov 4, 2021
@SGSSGene SGSSGene force-pushed the doc/create_all_hpp branch 2 times, most recently from 206d189 to db415f1 Compare November 4, 2021 10:31
@SGSSGene SGSSGene requested a review from Irallia November 4, 2021 10:36
Copy link
Contributor

@Irallia Irallia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGFM, nice work!

@Irallia Irallia requested review from a team and smehringer and removed request for a team November 4, 2021 11:08
@eseiler
Copy link
Member

eseiler commented Nov 4, 2021

You need to add the debug_stream include to some of the SIMD snippets

@SGSSGene
Copy link
Contributor Author

SGSSGene commented Nov 4, 2021

You need to add the debug_stream include to some of the SIMD snippets

Yes, I noticed :-) reverted the change!

{
cat << EOF
// -----------------------------------------------------------------------------------------------------
// Copyright (c) 2006-2021, Knut Reinert & Freie Universität Berlin
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not important at all. But since this is a script anyway. Can we make it "The current year" instead of 2021?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since everyhting else is done. this can be a follow up (if done at all)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea, of course we can make it the current year, this way this script doesn't have to be updated :-)

I just want to point out, that we have also update_copyright.sh which should be used to actually update the copyright year, since it will change it in all files and not just all.hpp files.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah you are right. then I think we do not need it

@smehringer
Copy link
Member

needs a rebase though!

@SGSSGene SGSSGene requested a review from smehringer November 4, 2021 19:25
@smehringer smehringer merged commit a22a18b into seqan:release-3.1.0 Nov 5, 2021
Copy link
Member

@smehringer smehringer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

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.

5 participants