Skip to content

Commit efc900e

Browse files
committed
Merge branch 'handle-neighbor-and-ghost' into handle_element-data
2 parents 7d79e3f + dc77ae3 commit efc900e

File tree

57 files changed

+1700
-319
lines changed

Some content is hidden

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

57 files changed

+1700
-319
lines changed

.github/workflows/check_doxygen.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "Check Doxygen Documentation"
1+
name: Check Doxygen Documentation
22

33
# This file is part of t8code.
44
# t8code is a C library to manage a collection (a forest) of multiple
@@ -32,12 +32,12 @@ on:
3232
workflow_dispatch:
3333

3434
jobs:
35-
update_dev_doc:
35+
check_documentation:
3636
runs-on: ubuntu-latest
3737
container: dlramr/t8code-ubuntu:t8-dependencies
3838
timeout-minutes: 10
3939
steps:
40-
- uses: actions/checkout@v6
40+
- uses: actions/checkout@v6
4141
with:
4242
repository: ${{ github.event.pull_request.head.repo.full_name }}
4343
ref: ${{ github.event.pull_request.head.ref }}
@@ -59,17 +59,17 @@ jobs:
5959
texlive-font-utils \
6060
ghostscript
6161
- name: Which epstopdf
62-
run: which epstopdf
62+
run: which epstopdf
6363
- name: Download precompiled doxygen version 1.13.2 from official website
6464
run: wget https://www.doxygen.nl/files/doxygen-1.13.2.linux.bin.tar.gz
6565
- name: Unpack doxygen tar file
6666
run: |
67-
tar xf doxygen-1.13.2.linux.bin.tar.gz
67+
tar xf doxygen-1.13.2.linux.bin.tar.gz
6868
mv doxygen-1.13.2/bin/doxygen ./doxygen
6969
chmod +x ./doxygen
7070
echo "$PWD" >> $GITHUB_PATH
7171
- name: Echo doxygen executable and version
72-
run: |
72+
run: |
7373
which doxygen
7474
doxygen --version
7575
- name: build config variables
@@ -85,7 +85,7 @@ jobs:
8585
path: build/config.log
8686
- name: check doxygen for errors / warnings
8787
run: |
88-
cd build && cd doc
88+
cd build && cd doc
8989
doxygen Doxyfile >> doxygen.out 2> doxygen.err
9090
- name: Upload doxygen log
9191
if: failure()
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/tests_cmake_preparation.yml renamed to .github/workflows/test_preparation.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests preparation
1+
name: test preparation
22

33

44
# This file is part of t8code.
@@ -61,7 +61,7 @@ jobs:
6161
# Setup
6262
#
6363
- uses: actions/checkout@v6
64-
with:
64+
with:
6565
fetch-depth: 0
6666
- name: Update packages
6767
run: sudo apt-get update && sudo apt-get upgrade -y
@@ -158,7 +158,7 @@ jobs:
158158
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
159159
- name: if ignore cache, delete folders
160160
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
161-
# The true at the end is to ignore errors that i.e. occur when the folders do not exist
161+
# The true at the end is to ignore errors that i.e. occur when the folders do not exist
162162
run: rm -r $P4EST_BUILD || true
163163
- name: make folders
164164
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
@@ -177,12 +177,12 @@ jobs:
177177
- name: p4est build release
178178
run: cd $P4EST_RELEASE && ninja $MAKEFLAGS && ninja $MAKEFLAGS install
179179
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
180-
180+
181181
## output cache info
182182
- name: output cache info
183183
id: used_cache
184184
run: echo "USED_CACHE=$USED_CACHE" >> $GITHUB_OUTPUT
185-
185+
186186
## tar artifact to keep permissions: https://github.com/actions/upload-artifact?tab=readme-ov-file#permission-loss
187187
- name: Tar files
188188
run: tar -cvf artifact.tar .

.github/workflows/tests_cmake_sc_p4est.yml renamed to .github/workflows/test_sc_p4est.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests sc and p4est
1+
name: test sc and p4est
22

33

44
# This file is part of t8code.
@@ -70,7 +70,7 @@ jobs:
7070
#
7171
# SC tests
7272
#
73-
## save variables
73+
## save variables
7474
- name: Save variables
7575
run: export SC_DEBUG=$PWD/sc/build/Debug
7676
&& export SC_RELEASE=$PWD/sc/build/Release
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code
1+
name: test t8code
22

33

44
# This file is part of t8code.
@@ -44,8 +44,8 @@ on:
4444
type: string
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
47-
48-
jobs:
47+
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest

.github/workflows/tests_cmake_t8code_api.yml renamed to .github/workflows/test_t8code_api.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code api
1+
name: test t8code api
22

33

44
# This file is part of t8code.
@@ -45,7 +45,7 @@ on:
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
4747

48-
jobs:
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest
@@ -89,7 +89,7 @@ jobs:
8989
&& echo CONFIG_OPTIONS="$CONFIG_OPTIONS" >> $GITHUB_ENV
9090
# cmake and test with api options
9191
- name: echo cmake line
92-
run: echo cmake ../ $CONFIG_OPTIONS
92+
run: echo cmake ../ $CONFIG_OPTIONS
9393
- name: cmake
9494
run: mkdir build_api && cd build_api && cmake ../ $CONFIG_OPTIONS
9595
- name: OnFailUploadLog

.github/workflows/tests_cmake_t8code_linkage.yml renamed to .github/workflows/test_t8code_linkage.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code linkage
1+
name: test t8code linkage
22

33

44
# This file is part of t8code.
@@ -45,7 +45,7 @@ on:
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
4747

48-
jobs:
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest

.github/workflows/tests_cmake_t8code_w_shipped_submodules.yml renamed to .github/workflows/test_t8code_w_shipped_submodules.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake tests t8code with shipped submodules
1+
name: test t8code with shipped submodules
22

33

44
# This file is part of t8code.
@@ -45,7 +45,7 @@ on:
4545
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4646
default: 'T8_TEST_LEVEL_FULL'
4747

48-
jobs:
48+
jobs:
4949
t8code_cmake_tests:
5050
timeout-minutes: 60
5151
runs-on: ubuntu-latest
@@ -55,7 +55,7 @@ jobs:
5555
# Setup
5656
#
5757
- uses: actions/checkout@v6
58-
with:
58+
with:
5959
fetch-depth: 0
6060
- name: Update packages
6161
run: sudo apt-get update && sudo apt-get upgrade -y
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CMake Tarball
1+
name: test tarball
22

33
# This file is part of t8code.
44
# t8code is a C library to manage a collection (a forest) of multiple
@@ -39,7 +39,7 @@ on:
3939
default: 'T8_TEST_LEVEL_FULL'
4040

4141
jobs:
42-
build:
42+
build_tarball:
4343

4444
if: (github.event_name == 'schedule' && github.repository == 'DLR-AMR/t8code') || (github.event_name != 'schedule')
4545
runs-on: ubuntu-latest
@@ -91,8 +91,8 @@ jobs:
9191
name: tarballs
9292
path: build/tarballs
9393

94-
test-tarball:
95-
needs: build
94+
test_tarball:
95+
needs: build_tarball
9696
runs-on: ubuntu-latest
9797
container: dlramr/t8code-ubuntu:t8-dependencies
9898
timeout-minutes: 90

.github/workflows/tests_cmake_valgrind.yml renamed to .github/workflows/test_valgrind.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Valgrind check
1+
name: valgrind check
22

33
# This file is part of t8code.
44
# t8code is a C library to manage a collection (a forest) of multiple
@@ -41,7 +41,7 @@ on:
4141
description: 'Test level used for configuring (T8_TEST_LEVEL_FULL, T8_TEST_LEVEL_MEDIUM, or T8_TEST_LEVEL_BASIC)'
4242
default: 'T8_TEST_LEVEL_FULL'
4343

44-
jobs:
44+
jobs:
4545
valgrind_check:
4646
timeout-minutes: 95
4747
runs-on: ubuntu-latest
@@ -103,8 +103,7 @@ jobs:
103103
run: cd build && ninja $MAKEFLAGS
104104
- name: ninja install
105105
run: cd build && ninja install $MAKEFLAGS
106-
# Execute script that runs a Valgrind check for all test binaries.
106+
# Execute script that runs a Valgrind check for all test binaries.
107107
# We use 3 parallel processes to run the binaries in parallel with MPI.
108108
- name: Valgrind check
109109
run: cd scripts && bash ./check_all_test_binaries_valgrind.sh --ntasks=3
110-

0 commit comments

Comments
 (0)