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

Add macro for consistent sunrealtype formatting #498

Closed
wants to merge 90 commits into from
Closed
Show file tree
Hide file tree
Changes from 51 commits
Commits
Show all changes
90 commits
Select commit Hold shift + click to select a range
cebfaf2
Bugfix: Update HIP_PLATFORM macros in sundials_hip_policies.hpp (#434)
ashesh2512 Mar 12, 2024
efc89cb
Bugfix: HIP_PLATFORM default (#437)
gardner48 Mar 13, 2024
44c26d4
Docs: Fix broken Sphinx links (#440)
Steven-Roberts Mar 17, 2024
d1b35a4
Docs: Add missing version to SUNAdaptController (#442)
Steven-Roberts Mar 19, 2024
e15c196
Docs: Combine RST Changelogs (#441)
gardner48 Mar 21, 2024
4bece5c
Bugfix: Inclusion of manyvector examples (#446)
Steven-Roberts Mar 23, 2024
6bb02f7
Bugfix: CMake config file version compatibility (#445)
balos1 Mar 25, 2024
5d1d8f2
Bugfix: Fix c_null_ptr bug in some Fortran examples (#449)
balos1 Mar 27, 2024
420b343
Docs: Installation procedure for Frontier (#448)
balos1 Mar 28, 2024
4989837
Docs: Updating landing page, remove file tree figure (#450)
gardner48 Mar 28, 2024
6ce388b
Split hashmap into .c and .h file (#451)
Steven-Roberts Mar 29, 2024
61e5e89
Bugfix: Add missing include guards to header files (#452)
Steven-Roberts Mar 31, 2024
36ae768
Bugfix: Add missing frees on error (#453)
Steven-Roberts Mar 31, 2024
8abf000
Feature: sundials addons (#444)
balos1 Apr 17, 2024
aba2689
Bugfix: Make MRI step fail when inner stepper has a recoverable error…
Steven-Roberts Apr 17, 2024
b535435
Add ARKODE unit test for number of mass matrix solves (#458)
Steven-Roberts Apr 19, 2024
1d61bdd
Feature: Support Kokkos Kernels v4 (#460)
balos1 Apr 24, 2024
30eab8a
Bugfix: Truncated error messages (#462)
balos1 Apr 26, 2024
53e28a8
Docs: Fix signature of SUNErrHandlerFn (#465)
Steven-Roberts May 3, 2024
8f53231
Bugfix: Fix error handler memory leak (#467)
Steven-Roberts May 3, 2024
885b7db
Bugfix: C++ MPI linking errors (#469)
balos1 May 7, 2024
31ffc21
Feature: Unify ARKODE UI for common stepper functions (#459)
drreynolds May 7, 2024
bd0a86f
Docs: Add missing SUNContext argument to *NewEmpty docs (#471)
Steven-Roberts May 7, 2024
d10ca84
Maintenance: ARKODE cleanup (#470)
drreynolds May 11, 2024
b060541
Feature: New Low Order Methods (#439)
Steven-Roberts May 12, 2024
6362963
Bugfix: SPRK Table Create (#472)
gardner48 May 12, 2024
fe94036
Bugfix: order condition 6s (#473)
gardner48 May 12, 2024
d0ed8b3
FindKLU.cmake: Avoid detecting MSVC libraries when targeting MinGW (#…
mmuetzel May 15, 2024
e8b7acd
Use `int64_t` for `KLU_INDEXTYPE` if `SUNDIALS_INT64_T` is true. (#477)
mmuetzel May 15, 2024
c031884
CI: Use LC template for gitlab id tokens and limit github actions pus…
balos1 May 15, 2024
f0acc14
Fix promotion of double to sunrealtype identified with -Wdouble-promo…
Steven-Roberts May 16, 2024
8bdca73
Fix casting warnings identified with -Wcast-qual flag (#482)
Steven-Roberts May 16, 2024
9e3b430
CI: Combine actions (#486)
gardner48 May 16, 2024
9ebc406
CI (mingw): Install and build with SuiteSparse library (#432)
mmuetzel May 16, 2024
83c3e66
Disambiguate shared and static libs `.lib` files on Windows using MSV…
adriendelsalle May 16, 2024
2febbc7
CMake: Fix dll install location (#475)
jschueller May 17, 2024
48bbc24
Fix missing statics and dead code identified with -Wmissing-declarati…
Steven-Roberts May 17, 2024
aee81f8
CI: Update Compiler Warnings, Enable Warnings as Errors (#484)
gardner48 May 20, 2024
492e7d8
Updated folder layout for ARKODE stepper usage in docs (#490)
drreynolds May 20, 2024
d6f5352
Use dependabot to periodically check for updated actions. (#489)
mmuetzel May 20, 2024
e4cc92a
Do not cast pointers to arrays of differently sized integers. (#485)
mmuetzel May 21, 2024
cac4dbb
CI: Add runner for 32-bit (MINGW32) (#492)
mmuetzel May 21, 2024
69896d0
Loop over all Butcher tables to test order (#488)
Steven-Roberts May 23, 2024
db65654
Feature: Add option to disable interpolation in ARKODE (#474)
gardner48 May 23, 2024
6ff1a00
Docs: ID to Name (#494)
Steven-Roberts May 24, 2024
8cdbbec
Maintenance: Rename ginkgo dpcpp to sycl (#493)
balos1 May 24, 2024
c076ebb
start output formatting utilities
gardner48 May 29, 2024
623b890
Bugfix: broken doc references (#497)
gardner48 May 29, 2024
b0981b7
CI: Add Fortran Compiler Warnings (#487)
gardner48 May 29, 2024
21d0efe
move fprintf wrappers to utils.h
gardner48 May 29, 2024
f3e7bfa
remove rsym
gardner48 May 29, 2024
b4b109f
simplify formatting
gardner48 May 30, 2024
829a200
update vec and table output formats
gardner48 May 30, 2024
a4d4ebf
fix csv output
gardner48 May 30, 2024
4db696b
fix long double format
gardner48 May 30, 2024
f7abeaf
Maintenance: Add Maybe Unused Macro (#491)
gardner48 May 30, 2024
a995c04
Feature: Remove Implicit RHS Evaluation in Autonomous Problems With t…
gardner48 May 30, 2024
b4739fb
Add macro for consistent sunrealtype formatting
Steven-Roberts May 31, 2024
26c4e34
Add macro for g and e formats
Steven-Roberts Jun 2, 2024
79353ac
Merge branch 'feature/output-format' into feature/real-format
Steven-Roberts Jun 2, 2024
75899ee
Fix compilation errors
Steven-Roberts Jun 2, 2024
063eee0
Apply formatter
Steven-Roberts Jun 2, 2024
9b64e20
Start replacing RSYM
Steven-Roberts Jun 2, 2024
bb638f3
Add missing inline
Steven-Roberts Jun 2, 2024
2512aee
Remove more RSYM
Steven-Roberts Jun 2, 2024
3807ca7
Feature: Add a Python library for log parsing (#499)
balos1 Jun 10, 2024
87b7ab2
Feature: Fortran interface for 32-bit sunindextype (#447)
balos1 Jun 12, 2024
f64d994
CMake: Revert KLU find_package updates (#505)
gardner48 Jun 14, 2024
a876f27
Merge branch 'develop' into feature/real-format
Steven-Roberts Jun 19, 2024
36b4042
Finish removing RSYM
Steven-Roberts Jun 19, 2024
d12aa6d
Rename sunfprintf_long_int to sunfprintf_long
Steven-Roberts Jun 19, 2024
b1842ed
Apply formatter
Steven-Roberts Jun 19, 2024
7ba8366
Finish replacing %g and %e specifiers
Steven-Roberts Jun 19, 2024
060a773
Apply formatter
Steven-Roberts Jun 19, 2024
4140fa4
Apply formatter
Steven-Roberts Jun 19, 2024
a3a4aa1
Update fortran interface
Steven-Roberts Jun 19, 2024
e927ea3
Update fortran interface
Steven-Roberts Jun 19, 2024
f458e59
Bugfix: windows fortran builds (#506)
balos1 Jun 19, 2024
7a29a73
Fix accidental deletion
Steven-Roberts Jun 19, 2024
1c1efa2
Update answers
Steven-Roberts Jun 20, 2024
926e37d
Merge branch 'develop' into feature/real-format
Steven-Roberts Jun 20, 2024
65ee7d0
Update fortran interface
Steven-Roberts Jun 20, 2024
83386fc
Docs: Update CMake version requirement in install guide (#508)
Steven-Roberts Jun 20, 2024
5ac9ace
Remove extra space in format
Steven-Roberts Jun 20, 2024
46c2468
Use long format for method order
Steven-Roberts Jun 20, 2024
9679084
Update fortran interface
Steven-Roberts Jun 20, 2024
bca2ebf
Undo testing edit
Steven-Roberts Jun 20, 2024
381c186
Exclude format from fortran
Steven-Roberts Jun 20, 2024
06d085e
Merge branch 'develop' into feature/real-format
Steven-Roberts Jun 20, 2024
b4d69ef
Update double precision files
Steven-Roberts Jun 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ EmptyLineAfterAccessModifier : Never
EmptyLineBeforeAccessModifier : Always
ExperimentalAutoDetectBinPacking : false
FixNamespaceComments : true
IncludeBlocks : Regroup
IncludeBlocks : Preserve
IncludeCategories :
- Regex : '^(<|"(gtest|gmock|isl|json)/)'
Priority : 1
Expand Down
8 changes: 8 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
version: 2
updates:

- package-ecosystem: "github-actions"
directory: "/"
schedule:
# Check for updates to GitHub Actions every week
interval: "weekly"
12 changes: 6 additions & 6 deletions .github/workflows/check-clang-format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
image: ghcr.io/llnl/sundials_spack_cache:llvm-17.0.4-h4lflucc3v2vage45opbo2didtcuigsn.spack
steps:
- name: Install git
run: |
run: |
apt update
apt install -y git

Expand All @@ -26,18 +26,18 @@ jobs:

- name: Print clang-format version
run: clang-format --version

- name: Run checker on code
run: |
./scripts/format.sh .
./scripts/format.sh benchmarks examples include src test

- name: Run git diff to see if anything changed
run: /usr/bin/git diff --name-only --exit-code

- name: Run git diff if we failed
if: failure()
run: /usr/bin/git diff > diff

- name: Archive diff if we failed
uses: actions/upload-artifact@v3
if: failure()
Expand Down
48 changes: 0 additions & 48 deletions .github/workflows/extended-precision.yml

This file was deleted.

10 changes: 7 additions & 3 deletions .github/workflows/macos-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,13 @@ jobs:
- uses: actions/checkout@v3

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
# Configure CMake in a 'build' subdirectory.
run: |
cmake \
-B ${{github.workspace}}/build \
-D CMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \
-D ENABLE_ALL_WARNINGS=ON \
-D ENABLE_WARNINGS_AS_ERRORS=ON
- name: Build
# Build your program with the given configuration
Expand Down
48 changes: 0 additions & 48 deletions .github/workflows/single-precision.yml

This file was deleted.

31 changes: 23 additions & 8 deletions .github/workflows/ubuntu-clang-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@ jobs:
fail-fast: false
max-parallel: 2
matrix:
# 2 is what all other builds use (its the default), so skip it here
logging_level: [0, 1, 3, 4, 5]
# Level 2 is also used in other builds (it's the default) but include it
# here to ensure it's tested with all warning flags
logging_level: [0, 1, 2, 3, 4, 5]

steps:
- name: Install LLVM and Clang
Expand All @@ -33,9 +34,16 @@ jobs:
- uses: actions/checkout@v3

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_C_COMPILER=$(which clang) -DCMAKE_CXX_COMPILER=$(which clang++) -DSUNDIALS_LOGGING_LEVEL=${{matrix.logging_level}}
# Configure CMake in a 'build' subdirectory.
run: |
cmake \
-B ${{github.workspace}}/build \
-D CMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \
-D CMAKE_C_COMPILER=$(which clang) \
-D CMAKE_CXX_COMPILER=$(which clang++) \
-D SUNDIALS_LOGGING_LEVEL=${{matrix.logging_level}} \
-D ENABLE_ALL_WARNINGS=ON \
-D ENABLE_WARNINGS_AS_ERRORS=ON
- name: Build
# Build your program with the given configuration
Expand All @@ -57,9 +65,16 @@ jobs:
- uses: actions/checkout@v3

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_C_COMPILER=$(which clang) -DCMAKE_CXX_COMPILER=$(which clang++) -DSUNDIALS_BUILD_WITH_PROFILING=${{matrix.profiling}}
# Configure CMake in a 'build' subdirectory.
run: |
cmake \
-B ${{github.workspace}}/build \
-D CMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \
-D CMAKE_C_COMPILER=$(which clang) \
-D CMAKE_CXX_COMPILER=$(which clang++) \
-D SUNDIALS_BUILD_WITH_PROFILING=${{matrix.profiling}} \
-D ENABLE_ALL_WARNINGS=ON \
-D ENABLE_WARNINGS_AS_ERRORS=ON
- name: Build
# Build your program with the given configuration
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
#
name: Build and Test - Ubuntu/gcc double precision (TPLs, no GPUs)
name: Build and Test - Ubuntu/gcc (TPLs, no GPUs)

on:
push:
branches:
- main
- develop
pull_request:
merge_group:
workflow_dispatch:
Expand All @@ -21,8 +24,21 @@ jobs:
max-parallel: 2
matrix:
indexsize: [32, 64]
precision: ['double']
buildtype: ['Debug', 'Release']
# Disable extended tests until compiler warnings are addressed
precision: ['single', 'double']
buildtype: ['Debug', 'Release', 'RelWithDebInfo']
exclude:
- buildtype: Debug
precision: single
# - buildtype: Debug
# precision: extended
- buildtype: Release
precision: single
# - buildtype: Release
# precision: extended
- buildtype: RelWithDebInfo
precision: double

steps:
- name: Checkout repository
uses: actions/checkout@v3
Expand Down
48 changes: 38 additions & 10 deletions .github/workflows/windows-latest-mingw.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,27 +14,55 @@ env:
BUILD_TYPE: Release

jobs:
buil_and_test:
build_and_test:
runs-on: windows-latest

defaults:
run:
# Use MSYS2 as default shell
shell: msys2 {0}

strategy:
matrix:
msystem: [MINGW64, MINGW32]
include:
- msystem: MINGW64
target-prefix: mingw-w64-x86_64
- msystem: MINGW32
target-prefix: mingw-w64-i686

steps:
- uses: actions/checkout@v3

- uses: msys2/setup-msys2@v2
with:
msystem: mingw64
msystem: ${{ matrix.msystem }}
update: true
release: false
install: >-
base-devel
${{ matrix.target-prefix }}-cmake
${{ matrix.target-prefix }}-cc
${{ matrix.target-prefix }}-openblas
${{ matrix.target-prefix }}-suitesparse

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -G "MinGW Makefiles" -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DSUNDIALS_BUILD_WITH_PROFILING=ON -DSUNDIALS_LOGGING_LEVEL=2 -DSUNDIALS_TEST_UNITTESTS=OFF -DEXAMPLES_ENABLE_CXX=ON
# Configure CMake in a 'build' subdirectory
run: |
cmake \
-B ${GITHUB_WORKSPACE}/build \
-DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \
-DSUNDIALS_BUILD_WITH_PROFILING=ON \
-DSUNDIALS_LOGGING_LEVEL=2 \
-DSUNDIALS_TEST_UNITTESTS=OFF \
-DEXAMPLES_ENABLE_CXX=ON \
-DENABLE_KLU=ON

- name: Build
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
# Build program
run: cmake --build ${GITHUB_WORKSPACE}/build

- name: Test
working-directory: ${{github.workspace}}/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}}
# Execute tests
run: ctest
2 changes: 2 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@ stages:

# This is where jobs are included.
include:
- project: 'lc-templates/id_tokens'
file: 'id_tokens.yml'
- local: .gitlab/quartz-templates.yml
- local: .gitlab/quartz-jobs.yml
- local: .gitlab/lassen-templates.yml
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@
[submodule "test/answers"]
path = test/answers
url = https://github.com/sundials-codes/answers.git
[submodule "external/sundials-addon-example"]
path = external/sundials-addon-example
url = https://github.com/sundials-codes/sundials-addon-example.git
1 change: 1 addition & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ build:
- graphviz

# Build documentation in the doc/ directory with Sphinx
# TODO(DJG): Once multiple references are fixed, add fail_on_warning: true
sphinx:
configuration: doc/superbuild/source/conf.py

Expand Down
Loading
Loading