Skip to content

Commit b2b564d

Browse files
authored
Merge pull request #2383 from boutproject/v4.4.0-alpha
Release V4.4.0
2 parents 4673b0e + 45d3877 commit b2b564d

File tree

477 files changed

+11584
-12738
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

477 files changed

+11584
-12738
lines changed

.ci_with_cmake.sh

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/usr/bin/env bash
2+
3+
set -ex
4+
5+
cmake --version
6+
cmake . -B build $@ -DCMAKE_INSTALL_PREFIX=$(pwd)/installed
7+
cmake --build build --target build-check -j 2
8+
cd build
9+
ctest --output-on-failure --timeout 300
10+
11+
# Test bout-config basic functionallity
12+
cd ../examples/make-script
13+
PATH=../../build/bin:$PATH make
14+
./test --help
15+
cd -
16+
make install -j 2
17+
cd -
18+
rm test
19+
PATH=../../installed/bin:$PATH make
20+
./test --help

.github/workflows/clang-tidy-review.yml

+7-3
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,16 @@ jobs:
4242
-DBOUT_USE_HDF5=ON \
4343
-DBOUT_USE_SUNDIALS=ON \
4444
-DBOUT_BUILD_EXAMPLES=ON \
45+
-DBOUT_BUILD_DOCS=OFF \
4546
-DCMAKE_EXPORT_COMPILE_COMMANDS=On
4647
4748
- name: Run clang-tidy
48-
uses: ZedThree/clang-tidy-review@v0.3.0
49+
uses: ZedThree/clang-tidy-review@v0.6.1
4950
id: review
5051
with:
5152
build_dir: build
52-
apt_packages: "libfftw3-dev,libnetcdf-c++4-dev,libhdf5-mpi-dev,libopenmpi-dev,petsc-dev,slepc-dev,liblapack-dev,libparpack2-dev,libsundials-dev"
53-
53+
apt_packages: "libfftw3-dev,libnetcdf-c++4-dev,libopenmpi-dev,petsc-dev,slepc-dev,liblapack-dev,libparpack2-dev,libsundials-dev,uuid-dev"
54+
clang_tidy_checks: '-*,performance-*,readability-*,bugprone-*,clang-analyzer-*,cppcoreguidelines-*,mpi-*,misc-*,-readability-magic-numbers,-cppcoreguidelines-avoid-magic-numbers,-misc-non-private-member-variables-in-classes,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-cppcoreguidelines-pro-type-vararg,-clang-analyzer-optin.mpi*'
55+
# Googletest triggers a _lot_ of clang-tidy warnings, so ignore all
56+
# the unit tests until they're fixed or ignored upstream
57+
exclude: "tests/unit/*cxx"

.github/workflows/tests.yml

+6-11
Original file line numberDiff line numberDiff line change
@@ -74,11 +74,11 @@ jobs:
7474
- name: "CMake, shared, Ubuntu 20.04"
7575
os: ubuntu-20.04
7676
cmake_options: "-DBUILD_SHARED_LIBS=ON
77-
-DENABLE_OPENMP=ON
78-
-DUSE_PETSC=ON
79-
-DUSE_SLEPC=ON
80-
-DUSE_HDF5=ON
81-
-DUSE_SUNDIALS=ON
77+
-DBOUT_ENABLE_OPENMP=ON
78+
-DBOUT_USE_PETSC=ON
79+
-DBOUT_USE_SLEPC=ON
80+
-DBOUT_USE_SUNDIALS=ON
81+
-DBOUT_BUILD_DOCS=OFF
8282
-DSUNDIALS_ROOT=/home/runner/local"
8383
omp_num_threads: 2
8484

@@ -157,12 +157,7 @@ jobs:
157157

158158
- name: Build (CMake)
159159
if: ${{ contains(matrix.config.name, 'CMake') }}
160-
run: |
161-
cmake --version
162-
cmake . -B build ${{ matrix.config.cmake_options }}
163-
cmake --build build -j 2
164-
cd build
165-
ctest --output-on-failure --timeout 300
160+
run: ./.ci_with_cmake.sh ${{ matrix.config.cmake_options }}
166161

167162
- name: Capture coverage
168163
if: ${{ matrix.config.name == 'Coverage' }}

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
autom4te.cache/
2626
aclocal.m4
2727
/bin/bout-config
28+
/src/makefile
2829
/include/pvode
2930
/lib/
3031
/manual/*.pdf
@@ -41,3 +42,6 @@ src/.libfast
4142
.BOUT.pid.*
4243
build/
4344
build*/
45+
/.vs
46+
/CMakeSettings.json
47+
/CppProperties.json

.gitmodules

+6
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,9 @@
77
[submodule "mpark.variant"]
88
path = externalpackages/mpark.variant
99
url = https://github.com/mpark/variant.git
10+
[submodule "externalpackages/boututils"]
11+
path = externalpackages/boututils
12+
url = https://github.com/boutproject/boututils.git
13+
[submodule "externalpackages/boutdata"]
14+
path = externalpackages/boutdata
15+
url = https://github.com/boutproject/boutdata.git

.travis_script.sh

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22

3-
set -e
3+
set -ex
44

55
#Default flags
66
COVERAGE=0
@@ -126,7 +126,6 @@ fi
126126
if [[ ${INTEGRATED} == 1 ]]
127127
then
128128
time make check-integrated-tests
129-
time py.test-3 tools/pylib/
130129
fi
131130

132131
if [[ ${MMS} == 1 ]]

CHANGELOG.md

+70
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,76 @@
1717

1818
See [\#2154](https://github.com/boutproject/BOUT-dev/pull/2154).
1919

20+
## [v4.4.0](https://github.com/boutproject/BOUT-dev/tree/v4.4.0) (2021-07-30)
21+
22+
[Full Changelog](https://github.com/boutproject/BOUT-dev/compare/v4.3.3...v4.4.4)
23+
24+
**Merged pull requests:**
25+
26+
- Add ability to use FieldPerp in Options (v.4.4) [\#2395](https://github.com/boutproject/BOUT-dev/pull/2395) ([ZedThree](https://github.com/users/ZedThree))
27+
- Fix some HDF5 related issues and add Mesh::getLocal{X,Y,Z}Index (v4.4) [\#2394](https://github.com/boutproject/BOUT-dev/pull/2394) ([ZedThree](https://github.com/users/ZedThree))
28+
- Add Mesh::getRegion<T> for use in generic code (v4.4) [\#2393](https://github.com/boutproject/BOUT-dev/pull/2393) ([ZedThree](https://github.com/users/ZedThree))
29+
- Adding an adaptive, arbitrary order, Adams-Bashforth solver (v4.4) [\#2392](https://github.com/boutproject/BOUT-dev/pull/2392) ([ZedThree](https://github.com/users/ZedThree))
30+
- Allow PETSc options to be passed from BOUT.inp (v4.4) [\#2391](https://github.com/boutproject/BOUT-dev/pull/2391) ([ZedThree](https://github.com/users/ZedThree))
31+
- Add new contributors [\#2386](https://github.com/boutproject/BOUT-dev/pull/2386) ([dschwoerer](https://github.com/users/dschwoerer))
32+
- Update locale [\#2385](https://github.com/boutproject/BOUT-dev/pull/2385) ([dschwoerer](https://github.com/users/dschwoerer))
33+
- Fix RTD [\#2384](https://github.com/boutproject/BOUT-dev/pull/2384) ([dschwoerer](https://github.com/users/dschwoerer))
34+
- Rename `max_nonlinear_it` to `max_nonlinear_iterations` [\#2339](https://github.com/boutproject/BOUT-dev/pull/2339) ([johnomotani](https://github.com/users/johnomotani))
35+
- CVODE constraints and max_noinlinear_iterations options (4.4) [\#2304](https://github.com/boutproject/BOUT-dev/pull/2304) ([johnomotani](https://github.com/users/johnomotani))
36+
- Fix some Solvers not always using user preconditioner/Jacobian (v4.4) [\#2284](https://github.com/boutproject/BOUT-dev/pull/2284) ([ZedThree](https://github.com/users/ZedThree))
37+
- Fix formatting strings for pre-fmt in beuler solver [\#2278](https://github.com/boutproject/BOUT-dev/pull/2278) ([bendudson](https://github.com/users/bendudson))
38+
- Backport of Backward Euler solver to v4.4 [\#2265](https://github.com/boutproject/BOUT-dev/pull/2265) ([bendudson](https://github.com/users/bendudson))
39+
- Fix use of uninitialised value in Delp2 (4.4) [\#2263](https://github.com/boutproject/BOUT-dev/pull/2263) ([johnomotani](https://github.com/users/johnomotani))
40+
- Save provenance tracking info from grid file (4.4) [\#2231](https://github.com/boutproject/BOUT-dev/pull/2231) ([johnomotani](https://github.com/users/johnomotani))
41+
- Generate random run ID, track restarts (4.4) [\#2224](https://github.com/boutproject/BOUT-dev/pull/2224) ([johnomotani](https://github.com/users/johnomotani))
42+
- Generate report for Timers (4.4) [\#2216](https://github.com/boutproject/BOUT-dev/pull/2216) ([johnomotani](https://github.com/users/johnomotani))
43+
- Replace boutdata and boututils directories with submodules (v4.4) [\#2198](https://github.com/boutproject/BOUT-dev/pull/2198) ([johnomotani](https://github.com/users/johnomotani))
44+
- Use bout_type="string" for strings in H5Format (4.4) [\#2194](https://github.com/boutproject/BOUT-dev/pull/2194) ([johnomotani](https://github.com/users/johnomotani))
45+
- Write descriptions for std::vector<int> and std::string variables [\#2191](https://github.com/boutproject/BOUT-dev/pull/2191) ([johnomotani](https://github.com/users/johnomotani))
46+
- Fix reading of char* in Ncxx4 (4.4) [\#2189](https://github.com/boutproject/BOUT-dev/pull/2189) ([johnomotani](https://github.com/users/johnomotani))
47+
- Merge master into v4.4.0-alpha [\#2174](https://github.com/boutproject/BOUT-dev/pull/2174) ([ZedThree](https://github.com/users/ZedThree))
48+
- I/O for std::vector<int> and std::string (4.4) [\#2155](https://github.com/boutproject/BOUT-dev/pull/2155) ([johnomotani](https://github.com/users/johnomotani))
49+
- Check DataFile grid sizes match those in existing mesh (v4.4) [\#2148](https://github.com/boutproject/BOUT-dev/pull/2148) ([johnomotani](https://github.com/users/johnomotani))
50+
- Call checkData() before returning result in Laplace inversions (v4.4) [\#2134](https://github.com/boutproject/BOUT-dev/pull/2134) ([johnomotani](https://github.com/users/johnomotani))
51+
- Allow setting FFTW_EXHAUSTIVE (v4.4) [\#2132](https://github.com/boutproject/BOUT-dev/pull/2132) ([johnomotani](https://github.com/users/johnomotani))
52+
- Make example relocatable [\#2127](https://github.com/boutproject/BOUT-dev/pull/2127) ([dschwoerer](https://github.com/users/dschwoerer))
53+
- Merge master into v4.4.0-alpha [\#2121](https://github.com/boutproject/BOUT-dev/pull/2121) ([ZedThree](https://github.com/users/ZedThree))
54+
- Handle FieldPerps in Datafile::varAdded() and Datafile::varPtr() (v4.4.0) [\#2094](https://github.com/boutproject/BOUT-dev/pull/2094) ([johnomotani](https://github.com/users/johnomotani))
55+
- Staggered grids in InvertPar (v4.4.0) [\#2088](https://github.com/boutproject/BOUT-dev/pull/2088) ([johnomotani](https://github.com/users/johnomotani))
56+
- Allow descriptions of output variables; save some diagnostics for solvers (v4.4) [\#2086](https://github.com/boutproject/BOUT-dev/pull/2086) ([johnomotani](https://github.com/users/johnomotani))
57+
- Correct Grad2_par2 implementation in InvertParCR (v4.4.0) [\#2077](https://github.com/boutproject/BOUT-dev/pull/2077) ([johnomotani](https://github.com/users/johnomotani))
58+
- Enable staggered versions of SplitFluxDerivativeType (4.4) [\#2059](https://github.com/boutproject/BOUT-dev/pull/2059) ([johnomotani](https://github.com/users/johnomotani))
59+
- Merge master into v4.4.0-alpha [\#1998](https://github.com/boutproject/BOUT-dev/pull/1998) ([ZedThree](https://github.com/users/ZedThree))
60+
- LaplaceXY: finite difference option (v4.4) [\#1924](https://github.com/boutproject/BOUT-dev/pull/1924) ([johnomotani](https://github.com/users/johnomotani))
61+
- Backport of Laplace performance test [\#1910](https://github.com/boutproject/BOUT-dev/pull/1910) ([JosephThomasParker](https://github.com/users/JosephThomasParker))
62+
- Macro for creating enum classes (v4.4) [\#1895](https://github.com/boutproject/BOUT-dev/pull/1895) ([johnomotani](https://github.com/users/johnomotani))
63+
- Implement toFieldAligned and fromFieldAligned for Vector3D (v4.4) [\#1878](https://github.com/boutproject/BOUT-dev/pull/1878) ([johnomotani](https://github.com/users/johnomotani))
64+
- Remove 3-element list indexers for collect() [\#1862](https://github.com/boutproject/BOUT-dev/pull/1862) ([johnomotani](https://github.com/users/johnomotani))
65+
- Allow user to override library option defaults (v4.4) [\#1849](https://github.com/boutproject/BOUT-dev/pull/1849) ([johnomotani](https://github.com/users/johnomotani))
66+
67+
The following were backported from v5.0.0 in [\#2389](https://github.com/boutproject/BOUT-dev/pull/2389):
68+
69+
- Add remaining integrated tests to CMake build [\#1833](https://github.com/boutproject/BOUT-dev/pull/1833) ([ZedThree](https://github.com/users/ZedThree))
70+
- Fixes for Windows [\#1874](https://github.com/boutproject/BOUT-dev/pull/1874) ([ZedThree](https://github.com/users/ZedThree))
71+
- CMake: fix FindSlepc for non-make generators [\#1881](https://github.com/boutproject/BOUT-dev/pull/1881) ([ZedThree](https://github.com/users/ZedThree))
72+
- CMake: enable using external mpark.variant [\#1900](https://github.com/boutproject/BOUT-dev/pull/1900) ([ZedThree](https://github.com/users/ZedThree))
73+
- Cmake fixes [\#1909](https://github.com/boutproject/BOUT-dev/pull/1909) ([dschwoerer](https://github.com/users/dschwoerer))
74+
- CMake: find package fixes [\#1912](https://github.com/boutproject/BOUT-dev/pull/1912) ([ZedThree](https://github.com/users/ZedThree))
75+
- Fix runtest for non-make generators [\#1952](https://github.com/boutproject/BOUT-dev/pull/1952) ([ZedThree](https://github.com/users/ZedThree))
76+
- CMake: Generate Field arithmetic operators [\#2119](https://github.com/boutproject/BOUT-dev/pull/2119) ([dschwoerer](https://github.com/users/dschwoerer))
77+
- CMake: Add option to download and build netCDF C++ API [\#2138](https://github.com/boutproject/BOUT-dev/pull/2138) ([ZedThree](https://github.com/users/ZedThree))
78+
- Fix CMake config file following change to netCDF cmake module [\#2162](https://github.com/boutproject/BOUT-dev/pull/2162) ([ZedThree](https://github.com/users/ZedThree))
79+
- Make input Options case sensitive and error on unused Options [\#2210](https://github.com/boutproject/BOUT-dev/pull/2210) ([ZedThree](https://github.com/users/ZedThree))
80+
- Next CMake fixes [\#2275](https://github.com/boutproject/BOUT-dev/pull/2275) ([bendudson](https://github.com/users/bendudson))
81+
- Add MMS tests to CMake build [\#2286](https://github.com/boutproject/BOUT-dev/pull/2286) ([ZedThree](https://github.com/users/ZedThree))
82+
- CMake: Build documentation [\#2300](https://github.com/boutproject/BOUT-dev/pull/2300) ([ZedThree](https://github.com/users/ZedThree))
83+
- Fix for FindPETSc not being reentrant if pkg-config used (next) [\#2318](https://github.com/boutproject/BOUT-dev/pull/2318) ([ZedThree](https://github.com/users/ZedThree))
84+
- CMake: Fix a few minor issues, generate `bout-config` [\#2328](https://github.com/boutproject/BOUT-dev/pull/2328) ([ZedThree](https://github.com/users/ZedThree))
85+
- CMake: Add option to download SUNDIALS at configure time [\#2331](https://github.com/boutproject/BOUT-dev/pull/2331) ([ZedThree](https://github.com/users/ZedThree))
86+
- CMake rename PACKAGE_TESTS to BOUT_TESTS [\#2347](https://github.com/boutproject/BOUT-dev/pull/2347) ([bendudson](https://github.com/users/bendudson))
87+
- CMake: Add SOVERSION; fix FindSUNDIALS [\#2358](https://github.com/boutproject/BOUT-dev/pull/2358) ([dschwoerer](https://github.com/users/dschwoerer))
88+
- Faster recompile [\#2294](https://github.com/boutproject/BOUT-dev/pull/2294) ([dschwoerer](https://github.com/users/dschwoerer))
89+
2090
## [v4.3.3](https://github.com/boutproject/BOUT-dev/tree/v4.3.2) (2021-07-28)
2191

2292
[Full Changelog](https://github.com/boutproject/BOUT-dev/compare/v4.3.2...master)

CITATION.cff

+6-3
Original file line numberDiff line numberDiff line change
@@ -158,14 +158,17 @@ authors:
158158
- family-names: Wang
159159
given-names: Zhanhui
160160

161+
- family-names: Ahmed
162+
given-names: Sajidah
163+
161164
- family-names: James
162165
given-names: Toby
163166

164-
version: 4.3.3
165-
date-released: 2021-07-29
167+
version: 4.4.0
168+
date-released: 2020-08-06
166169
repository-code: https://github.com/boutproject/BOUT-dev
167170
url: http://boutproject.github.io/
168-
doi: 10.5281/zenodo.5142504
171+
doi: 10.5281/zenodo.5167527
169172
license: 'LGPL-3.0-or-later'
170173
references:
171174
- type: article

0 commit comments

Comments
 (0)