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

C++20 "standard" conform #49

Closed
27 of 36 tasks
marehr opened this issue Apr 3, 2020 · 1 comment
Closed
27 of 36 tasks

C++20 "standard" conform #49

marehr opened this issue Apr 3, 2020 · 1 comment
Assignees
Labels
Epic release note A story or epic for the release note

Comments

@marehr
Copy link
Member

marehr commented Apr 3, 2020

Description

As a Library we want to be C++20 "standard" conform

From the beginning of seqan3 development, we decided to use the ranges library and the language feature of concepts that we knew that will be part of the C++ standard at one point.

Initially, we expected it to be in the then upcoming C++17 standard but it was postponed to C++20.

During the standardisation process, some names, syntax and paradigms changed within the ranges and concept proposal. Thus, this epic issue will keep track of those changes to make the seqan3 library "standard" conform.

Acceptance Criteria

  • The seqan3 library is C++20 standard conform and
  • compiles on linux with C++20 compatible compilers, e.g. gcc and clang.

Tasks

Definition of Done

  • Implementation and design approved
  • Unit tests pass
  • Test coverage = 100%
  • Microbenchmarks added and/or affected microbenchmarks < 5% performance drop
  • API documentation added
  • Tutorial/teaching material added
  • Test suite compiles in less than 30 seconds (on travis)
  • Changelog entry added
@marehr marehr added the Epic label Apr 3, 2020
marehr added a commit to marehr/seqan3 that referenced this issue Apr 9, 2020
marehr added a commit to marehr/seqan3 that referenced this issue Apr 9, 2020
marehr added a commit to marehr/seqan3 that referenced this issue Apr 9, 2020
@marehr marehr changed the title As a Library we want to be C++20 "standard" conform C++20 "standard" conform Apr 29, 2020
@rrahn rrahn added the release note A story or epic for the release note label Apr 30, 2020
marehr added a commit to marehr/seqan3 that referenced this issue May 19, 2020
With this PR the std headers have the same entities defined for `-std=c++17` as well as `-std=c++2a`.

This is PART of seqan/product_backlog#49
marehr added a commit to marehr/seqan3 that referenced this issue May 19, 2020
With this PR the std headers have the same entities defined for `-std=c++17` as well as `-std=c++2a`.

This is PART of seqan/product_backlog#49
marehr added a commit to marehr/seqan3 that referenced this issue May 25, 2020
With this PR the std headers have the same entities defined for `-std=c++17` as well as `-std=c++2a`.

This is PART of seqan/product_backlog#49
@marehr marehr closed this as completed Jun 30, 2020
@marehr marehr reopened this Jun 30, 2020
@rrahn rrahn mentioned this issue Oct 22, 2020
14 tasks
@marehr
Copy link
Member Author

marehr commented Jun 8, 2021

This is done; since gcc-10 and gcc-11 is C++20 conforming enough for us.

Other compiler do not work yet, because of some major pending bugs. See #127 for example.

@marehr marehr closed this as completed Jun 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Epic release note A story or epic for the release note
Projects
None yet
Development

No branches or pull requests

2 participants