Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
988c417
style: replace deprecated delim_whitespace with sep
alexallmont May 24, 2024
7534ddc
style: rename operator& to calc_intersection_with (#22)
alexallmont May 28, 2024
27d341d
refactor: fix Demography warnings (#22)
alexallmont May 28, 2024
b8629a8
fix: more robust validation for std_to_gen (#22)
alexallmont May 28, 2024
e6016bc
refactor: fix ImputationMatcher warnings (#22)
alexallmont May 28, 2024
cdb6359
build: update settings.json defaults (#22)
alexallmont May 28, 2024
a5f9a7a
style: clang format Demography.hpp (#22)
alexallmont May 30, 2024
ae19ee3
refactor: fix HMM.hpp/cpp warnings (#22)
alexallmont May 30, 2024
087617a
refactor: resolve ImpuationMatcher warnings (#22)
alexallmont May 30, 2024
3024e4f
refactor: resolve Matcher warnings (#22)
alexallmont May 30, 2024
48a6afb
style: tidy Node cpp/hpp (#22)
alexallmont May 30, 2024
58ce5ef
refactor: resolve State cpp/hpp warnings (#22)
alexallmont May 30, 2024
71e1843
refactor: resolve TGEN hpp/cpp warnings (#22)
alexallmont May 30, 2024
6971f57
refactor: resolve TgenSegment.hpp warnings (#22)
alexallmont May 30, 2024
ccd49bd
style: clang format threads_arg_pybind.cpp (#22)
alexallmont May 30, 2024
540117b
refactor: resolve ViterbiLowMem hpp/cpp warnings (#22)
alexallmont May 30, 2024
9d95047
refactor: resolve ThreadsLowMem hpp/cpp warnings (#22)
alexallmont May 30, 2024
c50d8a2
refactor: resolve ThreadsFastLS hpp/cpp warnings (#22)
alexallmont May 30, 2024
ec30348
build: enable warnings as errors in build (#22)
alexallmont May 30, 2024
7460238
docs: add GNU v3 license (#22)
alexallmont May 30, 2024
cdf897a
style: change -7 and -9 references with named const vars (#22)
alexallmont May 30, 2024
1480b18
style: #define for genetic position runtime check (#22)
alexallmont May 30, 2024
1028384
style: remove review comment for unsigned short (#22)
alexallmont May 30, 2024
00c48f8
fix: replace use of numeric_limit infinity with max (#22)
alexallmont May 30, 2024
68ef0ec
style: change fastls review point to ticket (#22)
alexallmont May 30, 2024
00afd2d
style: give fastls magic value meaningful name (#22)
alexallmont May 30, 2024
0f10487
style: remove unused fast ls date_segment_sparse arg (#22)
alexallmont May 30, 2024
db8478b
style: remove fastls review comments from review (#22)
alexallmont May 30, 2024
cf4cff6
style: fixup fastls extensible_by doxygen (#22)
alexallmont May 30, 2024
b262a61
style: tidier/faster weights initialisation in fastls (#22)
alexallmont May 30, 2024
15f8e60
style: remove commented out code (#22)
alexallmont May 30, 2024
8da01a3
build: remove eigen (#22)
alexallmont May 30, 2024
58ef72f
docs: add copyright headers (#22)
alexallmont May 31, 2024
0705d9b
style: replace FIXMEs comments with ticket ids (#22)
alexallmont May 31, 2024
2edb770
fix: resolve warnings found by clang (#22)
alexallmont May 31, 2024
5624301
build: update auto-generated file associations (#22)
alexallmont May 31, 2024
6ed287b
fix: GCC found potentially uninitialised variable (#22)
alexallmont May 31, 2024
8141f0c
fix: update demography exception condition (#22)
alexallmont May 31, 2024
5e329a0
fix: ensure vector has valid size (#22)
alexallmont May 31, 2024
8fa0fb2
style: tidy remaining size_t to std::size_t (#22)
alexallmont May 31, 2024
32e4882
fix: throw error on invalid allele (#22)
alexallmont Jun 3, 2024
f8defe7
build: remove h5py from devcontainer deps (#22)
alexallmont Jun 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ RUN apt-get install -y \

# Packages for local testing
RUN pip install --upgrade pip setuptools wheel
RUN pip install pytest h5py numpy
RUN pip install pytest numpy

# Packages for local build
RUN pip install cmake ninja
Expand All @@ -25,5 +25,4 @@ RUN apt-get install -y \
RUN apt-get install -y \
python3-dev \
libboost-dev \
libeigen3-dev \
pybind11-dev
8 changes: 4 additions & 4 deletions .github/workflows/build-cpp-libs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,16 @@ jobs:
include:
- os: ubuntu-22.04
build-type: Debug
system-deps: "sudo apt -y install libboost-dev libboost-math-dev libeigen3-dev"
system-deps: "sudo apt -y install libboost-dev libboost-math-dev"
- os: ubuntu-22.04
build-type: Release
system-deps: "sudo apt -y install libboost-dev libboost-math-dev libeigen3-dev"
system-deps: "sudo apt -y install libboost-dev libboost-math-dev"
- os: macos-14
build-type: Debug
system-deps: "brew install boost eigen"
system-deps: "brew install boost"
- os: macos-14
build-type: Release
system-deps: "brew install boost eigen"
system-deps: "brew install boost"

steps:

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,12 @@ jobs:
- os: macos-13
arch: x86_64
py-vers: cp38-* cp39-* cp310-* cp311-* cp312-*
before-all: brew install cmake ninja boost eigen
before-all: brew install cmake ninja boost
extra-env: CC="$(brew --prefix llvm@15)/bin/clang" CXX="$(brew --prefix llvm@15)/bin/clang++" HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
- os: macos-14
arch: arm64
py-vers: cp39-* cp310-* cp311-* cp312-*
before-all: brew install cmake ninja boost eigen
before-all: brew install cmake ninja boost
extra-env: CC="$(brew --prefix llvm@15)/bin/clang" CXX="$(brew --prefix llvm@15)/bin/clang++" HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1

env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ctest-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
uses: actions/checkout@v2

- name: install system packages
run: brew install boost eigen
run: brew install boost

- name: make build directory
run: mkdir build_dir
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ctest-ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
- name: install system packages
run: |
sudo apt -y update
sudo apt -y install libboost-dev libeigen3-dev
sudo apt -y install libboost-dev

- name: make build directory
run: mkdir build_dir
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pytest-ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
- name: install system packages
run: |
sudo apt -y update
sudo apt -y install libboost-dev libeigen3-dev
sudo apt -y install libboost-dev

- name: install python dependencies
run: |
Expand Down
82 changes: 80 additions & 2 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,85 @@
"cmake.generator": "Ninja",
"cmake.configureOnOpen": false,
"cmake.configureSettings": {
//"ENABLE_TESTING": "ON",
//"WARNINGS_AS_ERRORS": "TRUE",
"ENABLE_TESTING": "ON",
"WARNINGS_AS_ERRORS": "TRUE"
},
"files.associations": {
"iosfwd": "cpp",
"cctype": "cpp",
"clocale": "cpp",
"cmath": "cpp",
"csignal": "cpp",
"cstdarg": "cpp",
"cstddef": "cpp",
"cstdio": "cpp",
"cstdlib": "cpp",
"cstring": "cpp",
"ctime": "cpp",
"cwchar": "cpp",
"cwctype": "cpp",
"array": "cpp",
"atomic": "cpp",
"strstream": "cpp",
"bit": "cpp",
"*.tcc": "cpp",
"bitset": "cpp",
"chrono": "cpp",
"codecvt": "cpp",
"compare": "cpp",
"complex": "cpp",
"concepts": "cpp",
"condition_variable": "cpp",
"cstdint": "cpp",
"deque": "cpp",
"forward_list": "cpp",
"list": "cpp",
"map": "cpp",
"set": "cpp",
"string": "cpp",
"unordered_map": "cpp",
"unordered_set": "cpp",
"vector": "cpp",
"exception": "cpp",
"algorithm": "cpp",
"functional": "cpp",
"iterator": "cpp",
"memory": "cpp",
"memory_resource": "cpp",
"numeric": "cpp",
"optional": "cpp",
"random": "cpp",
"ratio": "cpp",
"regex": "cpp",
"string_view": "cpp",
"system_error": "cpp",
"tuple": "cpp",
"type_traits": "cpp",
"utility": "cpp",
"fstream": "cpp",
"future": "cpp",
"initializer_list": "cpp",
"iomanip": "cpp",
"iostream": "cpp",
"istream": "cpp",
"limits": "cpp",
"mutex": "cpp",
"new": "cpp",
"numbers": "cpp",
"ostream": "cpp",
"semaphore": "cpp",
"sstream": "cpp",
"stdexcept": "cpp",
"stop_token": "cpp",
"streambuf": "cpp",
"thread": "cpp",
"cfenv": "cpp",
"cinttypes": "cpp",
"typeindex": "cpp",
"typeinfo": "cpp",
"valarray": "cpp",
"variant": "cpp",
"core": "cpp",
"geometry": "cpp"
}
}
21 changes: 16 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# This file is part of https://github.com/PalamaraLab/threads which is released under the GPL-3.0 license.
# See accompanying LICENSE and COPYING for copyright notice and full details.
# This file is part of the Threads software suite.
# Copyright (C) 2024 Threads Developers.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.

cmake_minimum_required(VERSION 3.16)
message(STATUS "Using CMake version ${CMAKE_VERSION}")
Expand All @@ -16,9 +29,7 @@ include(cmake/ProjectSettings.cmake)
# Link this 'library' to use the warnings specified in CompilerWarnings.cmake
add_library(project_warnings INTERFACE)
include(cmake/CompilerWarnings.cmake)

# FIXME Uncomment to enable warnings
#set_project_warnings(project_warnings)
set_project_warnings(project_warnings)

# Sanitiser options if supported by compiler
include(cmake/Sanitisers.cmake)
Expand Down
Loading