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

[PATCH] deprecate core_language.hpp #2351

Merged
merged 6 commits into from
Feb 15, 2021

Conversation

SGSSGene
Copy link
Contributor

@SGSSGene SGSSGene commented Jan 25, 2021

  • Move content of core/concept/core_language.hpp to utility/detail/exposition_only_concept.hpp
  • Added deprecation to core_language.hpp and a forward include to exposition_only_concept.hpp
  • Changed all header files to new include path
  • Changed all unittest to new include path

Resolves part of seqan/product_backlog#160

@SGSSGene
Copy link
Contributor Author

This is solving partly seqan/product_backlog#160

@SGSSGene SGSSGene requested review from a team and Irallia and removed request for a team January 25, 2021 13:35
@codecov
Copy link

codecov bot commented Jan 25, 2021

Codecov Report

Merging #2351 (7b01ba2) into master (94a4e22) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #2351   +/-   ##
=======================================
  Coverage   98.21%   98.21%           
=======================================
  Files         265      265           
  Lines       10806    10806           
=======================================
  Hits        10613    10613           
  Misses        193      193           
Impacted Files Coverage Δ
...lude/seqan3/alignment/matrix/alignment_optimum.hpp 100.00% <ø> (ø)
...qan3/alignment/matrix/detail/affine_cell_proxy.hpp 100.00% <ø> (ø)
...atrix/detail/alignment_score_matrix_one_column.hpp 100.00% <ø> (ø)
.../detail/alignment_score_matrix_one_column_base.hpp 100.00% <ø> (ø)
.../matrix/detail/combined_score_and_trace_matrix.hpp 100.00% <ø> (ø)
...qan3/alignment/matrix/detail/matrix_coordinate.hpp 100.00% <ø> (ø)
...nment/matrix/detail/score_matrix_single_column.hpp 100.00% <ø> (ø)
...qan3/alignment/matrix/detail/trace_matrix_full.hpp 100.00% <ø> (ø)
...ment/pairwise/detail/alignment_algorithm_state.hpp 100.00% <ø> (ø)
...n3/alignment/pairwise/policy/affine_gap_policy.hpp 100.00% <ø> (ø)
... and 17 more

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 94a4e22...7b01ba2. Read the comment docs.

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.

Thank you!
Could you please move the belonging tests aswell?

Comment on lines 10 to 15
#include <random>

#include <seqan3/core/concept/core_language.hpp>
#include <seqan3/utility/detail/exposition_only_concept.hpp>
#include <seqan3/std/iterator>

#include "auxiliary.hpp"
Copy link
Contributor

Choose a reason for hiding this comment

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

Could you also move and rename this test?
test/unit/std/concept/core_language_test.cpp -> test/unit/utility/detail/exposition_only_concept_test.cpp
And double check if there are snipptes or performance tests to move?

include/seqan3/utility/detail/exposition_only_concept.hpp Outdated Show resolved Hide resolved
@marehr
Copy link
Member

marehr commented Feb 1, 2021

2021-02-01 Core Meeting

We talked about documentation inconsistencies.

We found that the documentation of seqan3::detail::template_specialisation_of is wrong

  • Remove addtogroup
  • Fix namespace of seqan3::template_specialisation_of -> seqan3::detail::template_specialisation_of, see here

Move concept group from core to utility. Keep seqan3::implicitly_convertible_to and so on public, but explicitly mark them as \noapi.

@SGSSGene SGSSGene force-pushed the patch/deprecate-core_language branch from 950d403 to e1bdf68 Compare February 5, 2021 13:16
@SGSSGene
Copy link
Contributor Author

SGSSGene commented Feb 5, 2021

Some question came up:

  1. where to put the \defgroup utility_concept Concept. Everywhere else it is inside an all.hpp, but I don't really have one. I have put it for now into utility/all.hpp
  2. core/all.hpp had an unuseful concept description. I for now removed it.

utility_concept

@SGSSGene SGSSGene force-pushed the patch/deprecate-core_language branch from e1bdf68 to fccb332 Compare February 5, 2021 13:24
@marehr marehr requested a review from Irallia February 8, 2021 09:09
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.

Thanks, looks good now!
I think you can remove the include from the all.hpp, but you can do this together with the second review.

@@ -13,14 +13,5 @@
#pragma once

#include <seqan3/core/concept/cereal.hpp>
#include <seqan3/core/concept/core_language.hpp>
#include <seqan3/utility/detail/exposition_only_concept.hpp>
Copy link
Contributor

Choose a reason for hiding this comment

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

So far I know, we don't put detail things into all.hpp files.
@seqan/core is that correct?

Copy link
Contributor

Choose a reason for hiding this comment

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

Some question came up:

1. where to put the `\defgroup utility_concept Concept`. Everywhere else it is inside an all.hpp, but I don't really have one. I have put it for now into `utility/all.hpp`

2. core/all.hpp had an unuseful `concept` description. I for now removed it.

utility_concept

For detail folder there is no all.hpp.
We actually want to establish to never just include 'all.hpp' but only what you need. The 'all.hpp' are for the user, who is not so familiar with the different modules etc.
Things in detail are functionalities that are there for us and not for the user, so there is no 'all.hpp'.

Copy link
Member

Choose a reason for hiding this comment

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

So far I know, we don't put detail things into all.hpp files.
@seqan/core is that correct?

In general, you are right, but I think it is okay in this case. In the long-run we will remove that header.

@Irallia Irallia requested a review from marehr February 8, 2021 11:03
Copy link
Member

@marehr marehr left a comment

Choose a reason for hiding this comment

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

Looks very good; just some (repetetive) remarks :)

include/seqan3/alignment/matrix/alignment_optimum.hpp Outdated Show resolved Hide resolved
test/unit/std/concept/comparison_test.cpp Outdated Show resolved Hide resolved
test/unit/std/concept/object_test.cpp Show resolved Hide resolved
test/unit/std/concept/object_test.cpp Outdated Show resolved Hide resolved
test/unit/utility/detail/exposition_only_concept_test.cpp Outdated Show resolved Hide resolved
@SGSSGene SGSSGene force-pushed the patch/deprecate-core_language branch from e2fac71 to 08d176b Compare February 14, 2021 16:55
SGSSGene and others added 6 commits February 14, 2021 18:36
- Move content of core/concept/core_language.hpp to utility/detail/exposition_only_concept.hpp
- Added deprecation to core_language.hpp and a forward include to exposition_only_concept.hpp
- Changed all header files to new include path
- Changed all unittest to new include path
• remove from `concept` group
• add missing `detail::` namespace scope
Co-authored-by: Marcel <marehr@users.noreply.github.com>
Copy link
Member

@marehr marehr left a comment

Choose a reason for hiding this comment

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

Thank you so much, it seems we are done. :)

@marehr marehr merged commit a1d5d4d into seqan:master Feb 15, 2021
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.

None yet

3 participants