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

[INFRA] Drop gcc9 #2952

Merged
merged 22 commits into from
Mar 31, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
strategy:
fail-fast: false
matrix:
compiler: [9, 10, 11]
compiler: [10, 11]

steps:
- name: Checkout SeqAn3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/avx2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
strategy:
fail-fast: false
matrix:
compiler: [9, 10, 11]
compiler: [10, 11]
build: [unit, snippet, performance, header]

steps:
Expand Down
7 changes: 0 additions & 7 deletions .github/workflows/ci_linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,6 @@ jobs:
build: unit
build_type: Release

- name: "Unit gcc9 (c++2a)"
cxx: "g++-9"
cc: "gcc-9"
build: unit
build_type: Release
cxx_flags: "-std=c++2a"

steps:
- name: Checkout SeqAn3
uses: actions/checkout@v2
Expand Down
8 changes: 0 additions & 8 deletions .github/workflows/ci_macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,6 @@ jobs:
build: unit
build_type: Release

- name: "Unit gcc9 (c++2a)"
os: macos-10.15
cxx: "g++-9"
cc: "gcc-9"
build: unit
build_type: Release
cxx_flags: "-std=c++2a"

steps:
- name: Checkout SeqAn3
uses: actions/checkout@v2
Expand Down
26 changes: 13 additions & 13 deletions .github/workflows/ci_misc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ jobs:
fail-fast: false
matrix:
include:
- name: "Snippet gcc9"
cxx: "g++-9"
cc: "gcc-9"
- name: "Snippet gcc10"
cxx: "g++-10"
cc: "gcc-10"
build: snippet
build_type: Release
build_threads: 2
Expand All @@ -48,9 +48,9 @@ jobs:
skip_run_tests: false
use_include_dependencies: "OFF"

- name: "Performance gcc9"
cxx: "g++-9"
cc: "gcc-9"
- name: "Performance gcc10"
cxx: "g++-10"
cc: "gcc-10"
build: performance
build_type: Release
build_threads: 2
Expand All @@ -77,9 +77,9 @@ jobs:
skip_run_tests: false
use_include_dependencies: "OFF"

- name: "Header gcc9"
cxx: "g++-9"
cc: "gcc-9"
- name: "Header gcc10"
cxx: "g++-10"
cc: "gcc-10"
build: header
build_type: Release
build_threads: 2
Expand All @@ -93,8 +93,8 @@ jobs:
use_include_dependencies: "OFF"

- name: "Non-cyclic tests"
cxx: "g++-9"
cc: "gcc-9"
cxx: "g++-10"
cc: "gcc-10"
build: unit
build_type: Debug
build_threads: 2
Expand All @@ -108,8 +108,8 @@ jobs:
use_include_dependencies: "ON"

- name: "CMake external project"
cxx: "g++-9"
cc: "gcc-9"
cxx: "g++-10"
cc: "gcc-10"
build: external_project
build_type: Debug
build_threads: 1 # output is important to be in sequential order
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/latest_libraries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
strategy:
fail-fast: false
matrix:
compiler: [9, 10, 11]
compiler: [10, 11]
build: [unit, snippet, performance, header]

steps:
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ Please see the [online documentation](https://docs.seqan.de/seqan/3-master-user/

| | requirement | version | comment |
|-------------------|------------------------------------------------------|----------|---------------------------------------------|
|**compiler** | [GCC](https://gcc.gnu.org) | ≥ 7 | no other compiler is currently supported! |
|**compiler** | [GCC](https://gcc.gnu.org) | ≥ 10 | no other compiler is currently supported! |
Copy link
Contributor

Choose a reason for hiding this comment

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

🎉

|**build system** | [CMake](https://cmake.org) | ≥ 3.4 | optional, but recommended |
|**required libs** | [SDSL](https://github.com/xxsds/sdsl-lite) | ≥ 3 | |
| | [Range-V3](https://github.com/ericniebler/range-v3) | ≥ 0.11.0 | |
Expand All @@ -86,18 +86,18 @@ Quick-Setup without CMake:
* Clone the repository with submodules: `git clone --recurse-submodules https://github.com/seqan/seqan3.git`
* Add the following to your compiler invocation:
* the include directories of SeqAn and its dependencies
* C++17 mode with concepts support
* C++20 mode
* Macros indicating the presence of zlib and bzip2 (set only if actually available in your paths!)
* The command could look like this:
```sh
g++-7 -O3 -DNDEBUG -Wall -Wextra \
-std=c++17 -fconcepts \
g++-11 -O3 -DNDEBUG -Wall -Wextra \
-std=c++20 \
-I /path/to/seqan3/include \
-isystem /path/to/seqan3/submodules/range-v3/include \
-isystem /path/to/seqan3/submodules/sdsl-lite/include \
-isystem /path/to/seqan3/submodules/cereal/include \
-DSEQAN3_HAS_ZLIB=1 -DSEQAN3_HAS_BZIP2=1 \
-lz -lbz2 -lstdc++fs -pthread \
-lz -lbz2 -pthread \
your_file.cpp
```

Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/argument_parser/solution3.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ number_type to_number(range_type && range)
{
std::string str;
number_type num;
std::ranges::copy(range, std::cpp20::back_inserter(str));
std::ranges::copy(range, std::back_inserter(str));
auto res = std::from_chars(&str[0], &str[0] + str.size(), num);

if (res.ec != std::errc{})
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/argument_parser/solution4.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ number_type to_number(range_type && range)
{
std::string str;
number_type num;
std::ranges::copy(range, std::cpp20::back_inserter(str));
std::ranges::copy(range, std::back_inserter(str));
auto res = std::from_chars(&str[0], &str[0] + str.size(), num);

if (res.ec != std::errc{})
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/argument_parser/solution5.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ number_type to_number(range_type && range)
{
std::string str;
number_type num;
std::ranges::copy(range, std::cpp20::back_inserter(str));
std::ranges::copy(range, std::back_inserter(str));
auto res = std::from_chars(&str[0], &str[0] + str.size(), num);

if (res.ec != std::errc{})
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/argument_parser/solution6.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ number_type to_number(range_type && range)
{
std::string str;
number_type num;
std::ranges::copy(range, std::cpp20::back_inserter(str));
std::ranges::copy(range, std::back_inserter(str));
auto res = std::from_chars(&str[0], &str[0] + str.size(), num);

if (res.ec != std::errc{})
Expand Down
2 changes: 0 additions & 2 deletions doc/tutorial/concepts/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,6 @@ auto add(std::integral auto const v1, std::integral auto const v2) // one const
}
```

\attention The terse syntax in this form is not yet available in GCC7, GCC8 and GCC9.

Different constraints can be applied to different template parameters and a single template parameter can be constrained
by multiple concepts.
Syntaxes can also be combined:
Expand Down
10 changes: 4 additions & 6 deletions doc/tutorial/concepts/overloading1.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
#include <iostream> // for std::cout

#include <seqan3/std/concepts> // GCC7 - GCC9 or
//#include <concepts> // compilers with full C++20 support
#include <concepts>
#include <iostream> // for std::cout

template <std::integral t>
void print(t const v)
Expand All @@ -14,6 +12,6 @@ int main()
int i{4};
unsigned u{3};

print(i); // prints "integral value: 4"
print(u); // prints "integral value: 3"
print(i); // prints "integral value: 4"
print(u); // prints "integral value: 3"
}
10 changes: 4 additions & 6 deletions doc/tutorial/concepts/overloading2.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
#include <iostream> // for std::cout

#include <seqan3/std/concepts> // GCC7 - GCC9 or
//#include <concepts> // compilers with full C++20 support
#include <concepts>
#include <iostream> // for std::cout

template <std::integral t>
void print(t const v)
Expand All @@ -20,6 +18,6 @@ int main()
int i{4};
unsigned u{3};

print(i); // prints "integral value: 4"
print(u); // prints "Unsigned value: 3"
print(i); // prints "integral value: 4"
print(u); // prints "Unsigned value: 3"
}
4 changes: 2 additions & 2 deletions doc/tutorial/concepts/specialisation.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#include <utility> // for std::pair
#include <seqan3/std/concepts>
#include <concepts>
#include <utility> // for std::pair

template <typename t>
struct square_root_type;
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/read_mapper/read_mapper_step3.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#include <seqan3/io/sequence_file/input.hpp>
#include <seqan3/search/all.hpp>
#include <seqan3/search/fm_index/bi_fm_index.hpp>
#include <seqan3/std/span>
#include <span>

struct reference_storage_t
{
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/read_mapper/read_mapper_step4.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#include <seqan3/io/sequence_file/input.hpp>
#include <seqan3/search/all.hpp>
#include <seqan3/search/fm_index/bi_fm_index.hpp>
#include <seqan3/std/span>
#include <span>

struct reference_storage_t
{
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/sam_file/sam_file_solution2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ r003 2064 chr2 18 10 5M * 0 0 TAGGC *
}; // std::filesystem::current_path() / "mapping.sam" will be deleted after the execution

//![solution]
#include <seqan3/std/algorithm> // std::ranges::count
#include <algorithm> // std::ranges::count
#include <filesystem>
#include <seqan3/std/ranges>
#include <string>
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/search/search_solution3.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include <seqan3/core/debug_stream.hpp>
#include <seqan3/search/search.hpp>
#include <seqan3/search/fm_index/fm_index.hpp>
#include <seqan3/std/span>
#include <span>

int main()
{
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/search/search_solution5.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#include <seqan3/core/debug_stream.hpp>
#include <seqan3/search/search.hpp>
#include <seqan3/search/fm_index/fm_index.hpp>
#include <seqan3/std/span>
#include <span>

using namespace seqan3::literals;

Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/search/search_span.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#include <seqan3/core/debug_stream.hpp>
#include <seqan3/std/span>
#include <span>

int main()
{
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/sequence_file/sequence_file_piping_in_out.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ IIIIHHGIIIIHHGIIIH
seqan3::test::create_temporary_snippet_file output_fastq{"output.fastq", ""};

//![main]
#include <seqan3/std/algorithm>
#include <algorithm>
#include <seqan3/std/ranges>

#include <seqan3/io/sequence_file/all.hpp>
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/sequence_file/sequence_file_solution2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ int main()
}

// But you can also do this:
std::ranges::copy(fin, std::cpp20::back_inserter(records));
std::ranges::copy(fin, std::back_inserter(records));

seqan3::debug_stream << records << '\n';
}
Expand Down
2 changes: 1 addition & 1 deletion doc/tutorial/sequence_file/sequence_file_solution5.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ IIIIIHIIJJIIIII
seqan3::test::create_temporary_snippet_file output{"output.fastq", ""};

//![solution]
#include <seqan3/std/algorithm>
#include <algorithm>
#include <filesystem>
#include <seqan3/std/ranges>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

#pragma once

#include <seqan3/std/algorithm>
#include <algorithm>
#include <seqan3/std/ranges>

#include <seqan3/alignment/exception.hpp>
Expand Down Expand Up @@ -228,13 +228,11 @@ concept writable_aligned_sequence =
requires (t v, detail::unaligned_seq_t<t> unaligned)
{
// global functions for generic usability
SEQAN3_RETURN_TYPE_CONSTRAINT(insert_gap(v, std::ranges::begin(v)), std::same_as, std::ranges::iterator_t<t>);
SEQAN3_RETURN_TYPE_CONSTRAINT(insert_gap(v, std::ranges::begin(v), 2),
std::same_as, std::ranges::iterator_t<t>);
SEQAN3_RETURN_TYPE_CONSTRAINT(erase_gap(v, std::ranges::begin(v)), std::same_as, std::ranges::iterator_t<t>);
SEQAN3_RETURN_TYPE_CONSTRAINT(erase_gap(v, std::ranges::begin(v), std::ranges::end(v)),
std::same_as, std::ranges::iterator_t<t>);
SEQAN3_RETURN_TYPE_CONSTRAINT(assign_unaligned(v, unaligned), std::same_as, void);
{insert_gap(v, std::ranges::begin(v))} -> std::same_as<std::ranges::iterator_t<t>>;
{insert_gap(v, std::ranges::begin(v), 2)} -> std::same_as<std::ranges::iterator_t<t>>;
{erase_gap(v, std::ranges::begin(v))} -> std::same_as<std::ranges::iterator_t<t>>;
{erase_gap(v, std::ranges::begin(v), std::ranges::end(v))} -> std::same_as<std::ranges::iterator_t<t>>;
{assign_unaligned(v, unaligned)} -> std::same_as<void>;
Copy link
Contributor

Choose a reason for hiding this comment

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

This looks so much nicer now!

};
//!\endcond

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
#include <seqan3/alignment/configuration/detail.hpp>
#include <seqan3/alignment/pairwise/alignment_result.hpp>
#include <seqan3/core/configuration/pipeable_config_element.hpp>
#include <seqan3/utility/concept/exposition_only/core_language.hpp>
#include <seqan3/utility/concept.hpp>

namespace seqan3::align_cfg
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

#pragma once

#include <seqan3/std/type_traits>
#include <type_traits>

#include <seqan3/alignment/configuration/detail.hpp>
#include <seqan3/alignment/pairwise/alignment_result.hpp>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

#include <seqan3/alignment/configuration/detail.hpp>
#include <seqan3/core/configuration/pipeable_config_element.hpp>
#include <seqan3/utility/concept/exposition_only/core_language.hpp>
#include <seqan3/utility/concept.hpp>

namespace seqan3::align_cfg
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

#pragma once

#include <seqan3/std/concepts>
#include <concepts>

#include <seqan3/alignment/configuration/detail.hpp>
#include <seqan3/alignment/scoring/scoring_scheme_concept.hpp>
Expand Down
2 changes: 1 addition & 1 deletion include/seqan3/alignment/decorator/gap_decorator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

#pragma once

#include <seqan3/std/algorithm>
#include <algorithm>
#include <limits>
#include <seqan3/std/ranges>
#include <set>
Expand Down