Skip to content

Commit e43d6c5

Browse files
authored
Merge branch 'main' into fix-warnings
2 parents a2b5cad + 4a06e41 commit e43d6c5

File tree

117 files changed

+2793
-443
lines changed

Some content is hidden

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

117 files changed

+2793
-443
lines changed

.github/workflows/build_cmake_tarball.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
run: mkdir build && cd build && cmake ../ $CONFIG_OPTIONS
7878
- name: OnFailUploadLog
7979
if: failure()
80-
uses: actions/upload-artifact@v5
80+
uses: actions/upload-artifact@v6
8181
with:
8282
name: config.log
8383
path: build/config.log
@@ -86,7 +86,7 @@ jobs:
8686
run: cd build && ninja GenerateVersionFile && ninja package_source && mkdir tarballs && mv package/*Source.tar.gz tarballs
8787
# Upload the tarball
8888
- name: upload tarball
89-
uses: actions/upload-artifact@v5
89+
uses: actions/upload-artifact@v6
9090
with:
9191
name: tarballs
9292
path: build/tarballs
@@ -98,7 +98,7 @@ jobs:
9898
timeout-minutes: 90
9999
steps:
100100
- name: Download tarball
101-
uses: actions/download-artifact@v6
101+
uses: actions/download-artifact@v7
102102
with:
103103
name: tarballs
104104
path: tarballs
@@ -121,7 +121,7 @@ jobs:
121121
run: mkdir build_tar && cd build_tar && cmake $TAR_DIR $CONFIG_OPTIONS
122122
- name: OnFailUploadLog
123123
if: failure()
124-
uses: actions/upload-artifact@v5
124+
uses: actions/upload-artifact@v6
125125
with:
126126
name: build_tar.log
127127
path: build_tar/config.log
@@ -135,7 +135,7 @@ jobs:
135135
run: cd build_tar && ctest -R _parallel
136136
- name: OnFailUploadLog
137137
if: failure()
138-
uses: actions/upload-artifact@v5
138+
uses: actions/upload-artifact@v6
139139
with:
140140
name: build_tar.log
141141
path: build_tar/test-suite.log
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
name: "Check Doxygen Documentation"
2+
3+
# This file is part of t8code.
4+
# t8code is a C library to manage a collection (a forest) of multiple
5+
# connected adaptive space-trees of general element types in parallel.
6+
#
7+
# Copyright (C) 2025 the developers
8+
#
9+
# t8code is free software; you can redistribute it and/or modify
10+
# it under the terms of the GNU General Public License as published by
11+
# the Free Software Foundation; either version 2 of the License, or
12+
# (at your option) any later version.
13+
#
14+
# t8code is distributed in the hope that it will be useful,
15+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
16+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17+
# GNU General Public License for more details.
18+
#
19+
# You should have received a copy of the GNU General Public License
20+
# along with t8code; if not, write to the Free Software Foundation, Inc.,
21+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22+
23+
#
24+
# This github CI script runs on every push on a feature branch and in the merge queue.
25+
# It checks if the doxygen documentation can be built without errors and warnings.
26+
#
27+
28+
on:
29+
workflow_call:
30+
31+
# Allows you to run this workflow manually from the actions tab
32+
workflow_dispatch:
33+
34+
jobs:
35+
update_dev_doc:
36+
runs-on: ubuntu-latest
37+
container: dlramr/t8code-ubuntu:t8-dependencies
38+
timeout-minutes: 10
39+
steps:
40+
- uses: actions/checkout@v6
41+
with:
42+
repository: ${{ github.event.pull_request.head.repo.full_name }}
43+
ref: ${{ github.event.pull_request.head.ref }}
44+
fetch-depth: 0
45+
- name: disable ownership checks
46+
run: git config --global --add safe.directory '*'
47+
- name: init submodules
48+
run: git submodule init
49+
- name: update submodules
50+
run: git submodule update
51+
- name: Install LaTeX dependencies
52+
run: |
53+
sudo apt-get update
54+
sudo apt-get install -y \
55+
texlive-latex-base \
56+
texlive-latex-recommended \
57+
texlive-latex-extra \
58+
texlive-fonts-recommended \
59+
texlive-font-utils \
60+
ghostscript
61+
- name: Which epstopdf
62+
run: which epstopdf
63+
- name: Download precompiled doxygen version 1.13.2 from official website
64+
run: wget https://www.doxygen.nl/files/doxygen-1.13.2.linux.bin.tar.gz
65+
- name: Unpack doxygen tar file
66+
run: |
67+
tar xf doxygen-1.13.2.linux.bin.tar.gz
68+
mv doxygen-1.13.2/bin/doxygen ./doxygen
69+
chmod +x ./doxygen
70+
echo "$PWD" >> $GITHUB_PATH
71+
- name: Echo doxygen executable and version
72+
run: |
73+
which doxygen
74+
doxygen --version
75+
- name: build config variables
76+
run: export CONFIG_OPTIONS="-DT8CODE_BUILD_DOCUMENTATION=ON -DCMAKE_BUILD_TYPE=Debug -DT8CODE_ENABLE_VTK=ON -DVTK_DIR=/usr/local/lib/cmake/vtk-9.1 -DT8CODE_ENABLE_OCC=ON -DT8CODE_ENABLE_NETCDF=ON"
77+
&& echo CONFIG_OPTIONS="$CONFIG_OPTIONS" >> $GITHUB_ENV
78+
- name: Configure for documentation only
79+
run: mkdir build && cd build && cmake ../ $CONFIG_OPTIONS
80+
- name: OnFailUploadLog
81+
if: failure()
82+
uses: actions/upload-artifact@v6
83+
with:
84+
name: cmake_doc_build.log
85+
path: build/config.log
86+
- name: check doxygen for errors / warnings
87+
run: |
88+
cd build && cd doc
89+
doxygen Doxyfile >> doxygen.out 2> doxygen.err
90+
- name: Upload doxygen log
91+
if: failure()
92+
uses: actions/upload-artifact@v6
93+
with:
94+
name: doxygen-log
95+
path: build/doc/doxygen.err
96+

.github/workflows/check_indentation.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ jobs:
5656
# Do this regardless of the result of the previous step.
5757
# We especially want to upload the result when the check fails.
5858
if: always()
59-
uses: actions/upload-artifact@v5
59+
uses: actions/upload-artifact@v6
6060
with:
6161
name: t8code indentation report
6262
path: scripts/indent_script_output.txt

.github/workflows/code_coverage.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ jobs:
5757
# Setup
5858
#
5959
- name: Download artifacts
60-
uses: actions/download-artifact@v6
60+
uses: actions/download-artifact@v7
6161
with:
6262
name: SC_P4EST_MPI_${{ inputs.MPI }}
6363
- name: untar artifact
@@ -100,7 +100,7 @@ jobs:
100100
run: mkdir build && cd build && cmake ../ $CONFIG_OPTIONS
101101
- name: OnFailUploadLog
102102
if: failure()
103-
uses: actions/upload-artifact@v5
103+
uses: actions/upload-artifact@v6
104104
with:
105105
name: cmake_${{ inputs.BUILD_TYPE }}_MPI_${{ inputs.MPI }}.log
106106
path: build/CMakeFiles/CMakeOutput.log
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
name: Create a new version tag
2+
3+
# This file is part of t8code.
4+
# t8code is a C library to manage a collection (a forest) of multiple
5+
# connected adaptive space-trees of general element types in parallel.
6+
#
7+
# Copyright (C) 2025 the developers
8+
#
9+
# t8code is free software; you can redistribute it and/or modify
10+
# it under the terms of the GNU General Public License as published by
11+
# the Free Software Foundation; either version 2 of the License, or
12+
# (at your option) any later version.
13+
#
14+
# t8code is distributed in the hope that it will be useful,
15+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
16+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17+
# GNU General Public License for more details.
18+
#
19+
# You should have received a copy of the GNU General Public License
20+
# along with t8code; if not, write to the Free Software Foundation, Inc.,
21+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22+
23+
on:
24+
workflow_dispatch:
25+
schedule:
26+
# trigger at 0:00 on the first day of each month
27+
- cron: '0 0 1 * *'
28+
29+
jobs:
30+
monthly_release:
31+
runs-on: ubuntu-latest
32+
steps:
33+
#checkout main branch
34+
- name: Checkout code
35+
uses: actions/checkout@v6
36+
with:
37+
fetch-depth: 0
38+
ref: main
39+
persist-credentials: false
40+
# Get the current version from the latest tag
41+
- name: Get latest tag
42+
id: get_latest_tag
43+
run: |
44+
LATEST_TAG=$(git describe --tags `git rev-list --tags --max-count=1`)
45+
echo "LATEST_TAG=$LATEST_TAG" >> $GITHUB_ENV
46+
echo "LATEST_TAG=$LATEST_TAG"
47+
# Get Major, Minor, Patch version numbers
48+
- name: Parse version numbers
49+
id: parse_version
50+
run: |
51+
VERSION_REGEX="v([0-9]+)\\.([0-9]+)\\.([0-9]+)"
52+
if [[ "${{ env.LATEST_TAG }}" =~ $VERSION_REGEX ]]; then
53+
MAJOR="${BASH_REMATCH[1]}"
54+
MINOR="${BASH_REMATCH[2]}"
55+
PATCH="${BASH_REMATCH[3]}"
56+
echo "MAJOR=$MAJOR" >> $GITHUB_ENV
57+
echo "MINOR=$MINOR" >> $GITHUB_ENV
58+
echo "PATCH=$PATCH" >> $GITHUB_ENV
59+
echo "MAJOR=$MAJOR, MINOR=$MINOR, PATCH=$PATCH"
60+
else
61+
echo "No valid tag found, aborting."
62+
exit 1
63+
fi
64+
# Create version name accessible in the following steps
65+
- name: Set version name
66+
run: |
67+
echo "VERSION_NAME=v${{ env.MAJOR }}.${{ env.MINOR }}.${{ env.PATCH }}-$(date +'%Y.%m.%d')" >> $GITHUB_ENV
68+
echo "VERSION_NAME=$VERSION_NAME"
69+
# Create a new version tag
70+
- name: Create version tag
71+
run: |
72+
git config user.email "t8ddy.bot@gmail.com"
73+
git config user.name "t8ddy"
74+
# configure remote to use the secret token for pushing
75+
git remote set-url origin https://x-access-token:${{ secrets.T8DDY_TOKEN }}@github.com/${{ github.repository }}
76+
git tag "${{ env.VERSION_NAME }}"
77+
git push origin --tags

.github/workflows/spell_check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
done
4242
- name: Archive script output
4343
if: failure()
44-
uses: actions/upload-artifact@v5
44+
uses: actions/upload-artifact@v6
4545
with:
4646
name: t8code check macros report
4747
path: check_macros.txt

.github/workflows/tests_cmake_preparation.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ jobs:
9292
run: hash=`git rev-parse HEAD:sc` && echo sc_commit=$hash >> $GITHUB_ENV
9393
- name: Check cache for previous sc installation
9494
id: sc_cmake_cache
95-
uses: actions/cache@v4
95+
uses: actions/cache@v5
9696
with:
9797
path: |
9898
${{ env.SC_DEBUG }}
@@ -140,7 +140,7 @@ jobs:
140140
run: hash=`git rev-parse HEAD:p4est` && echo p4est_commit=$hash >> $GITHUB_ENV
141141
- name: Check cache for previous p4est installation
142142
id: p4est_cmake_cache
143-
uses: actions/cache@v4
143+
uses: actions/cache@v5
144144
with:
145145
path: |
146146
${{ env.P4EST_DEBUG }}
@@ -189,7 +189,7 @@ jobs:
189189

190190
## upload artifacts
191191
- name: Upload build artifacts
192-
uses: actions/upload-artifact@v5
192+
uses: actions/upload-artifact@v6
193193
with:
194194
name: SC_P4EST_MPI_${{ inputs.MPI }}
195195
path: ./artifact.tar

.github/workflows/tests_cmake_sc_p4est.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
# Setup
5353
#
5454
- name: Download artifacts
55-
uses: actions/download-artifact@v6
55+
uses: actions/download-artifact@v7
5656
with:
5757
name: SC_P4EST_MPI_${{ inputs.MPI }}
5858
- name: untar artifact
@@ -85,7 +85,7 @@ jobs:
8585
run: cd $SC_DEBUG && ninja test
8686
- name: OnFailUploadLog
8787
if: failure()
88-
uses: actions/upload-artifact@v5
88+
uses: actions/upload-artifact@v6
8989
with:
9090
name: sc_debug_MPI_${{ inputs.MPI }}.log
9191
path: $SC_DEBUG/Testing/Temporary/LastTest.log
@@ -94,7 +94,7 @@ jobs:
9494
run: cd $SC_RELEASE && ninja test
9595
- name: OnFailUploadLog
9696
if: failure()
97-
uses: actions/upload-artifact@v5
97+
uses: actions/upload-artifact@v6
9898
with:
9999
name: sc_release_MPI_${{ inputs.MPI }}.log
100100
path: $SC_RELEASE/Testing/Temporary/LastTest.log
@@ -106,7 +106,7 @@ jobs:
106106
run: cd $P4EST_DEBUG && ninja test
107107
- name: OnFailUploadLog
108108
if: failure()
109-
uses: actions/upload-artifact@v5
109+
uses: actions/upload-artifact@v6
110110
with:
111111
name: sp4est_debug_MPI_${{ inputs.MPI }}.log
112112
path: $P4EST_DEBUG/Testing/Temporary/LastTest.log
@@ -115,7 +115,7 @@ jobs:
115115
run: cd $P4EST_RELEASE && ninja test
116116
- name: OnFailUploadLog
117117
if: failure()
118-
uses: actions/upload-artifact@v5
118+
uses: actions/upload-artifact@v6
119119
with:
120120
name: sp4est_release_MPI_${{ inputs.MPI }}.log
121121
path: $P4EST_RELEASE/Testing/Temporary/LastTest.log

.github/workflows/tests_cmake_t8code.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
# Setup
5656
#
5757
- name: Download artifacts
58-
uses: actions/download-artifact@v6
58+
uses: actions/download-artifact@v7
5959
with:
6060
name: SC_P4EST_MPI_${{ inputs.MPI }}
6161
- name: untar artifact
@@ -97,7 +97,7 @@ jobs:
9797
run: mkdir build && cd build && cmake ../ $CONFIG_OPTIONS
9898
- name: OnFailUploadLog
9999
if: failure()
100-
uses: actions/upload-artifact@v5
100+
uses: actions/upload-artifact@v6
101101
with:
102102
name: cmake_${{ inputs.BUILD_TYPE }}_MPI_${{ inputs.MPI }}.log
103103
path: build/CMakeFiles/CMakeOutput.log
@@ -116,7 +116,7 @@ jobs:
116116
if: ${{ inputs.MPI == 'OFF' }}
117117
- name: OnFailUploadLog
118118
if: failure()
119-
uses: actions/upload-artifact@v5
119+
uses: actions/upload-artifact@v6
120120
with:
121121
name: test-suite_${{ inputs.BUILD_TYPE }}_MPI_${{ inputs.MPI }}.log
122122
path: build/Testing/Temporary/LastTest.log

.github/workflows/tests_cmake_t8code_api.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
# Setup
5656
#
5757
- name: Download artifacts
58-
uses: actions/download-artifact@v6
58+
uses: actions/download-artifact@v7
5959
with:
6060
name: SC_P4EST_MPI_${{ inputs.MPI }}
6161
- name: untar artifact
@@ -94,7 +94,7 @@ jobs:
9494
run: mkdir build_api && cd build_api && cmake ../ $CONFIG_OPTIONS
9595
- name: OnFailUploadLog
9696
if: failure()
97-
uses: actions/upload-artifact@v5
97+
uses: actions/upload-artifact@v6
9898
with:
9999
name: cmake_${{ inputs.BUILD_TYPE }}_MPI_${{ inputs.MPI }}_api.log
100100
path: build_api/CMakeFiles/CMakeOutput.log
@@ -113,7 +113,7 @@ jobs:
113113
if: ${{ inputs.MPI == 'OFF' }}
114114
- name: OnFailUploadLog
115115
if: failure()
116-
uses: actions/upload-artifact@v5
116+
uses: actions/upload-artifact@v6
117117
with:
118118
name: test-suite_${{ inputs.BUILD_TYPE }}_MPI_${{ inputs.MPI }}_api.log
119119
path: build_api/Testing/Temporary/LastTest.log

0 commit comments

Comments
 (0)