Skip to content

Commit bb6f7ca

Browse files
authored
Merge pull request #1 from steve-downey/copier-migration
Migrate to Copier template from steve-downey/exemplar@copier
2 parents 451e0f8 + 643ed6f commit bb6f7ca

45 files changed

Lines changed: 1401 additions & 1215 deletions

Some content is hidden

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

.beman-tidy.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
2+
3+
# This is the config file for beman-tidy, which checks compliance with the Beman Standard (https://github.com/bemanproject/beman/blob/main/docs/beman_standard.md)
4+
# Check documentation for beman-tidy here:
5+
# https://github.com/bemanproject/beman-tidy/blob/main/README.md
6+
7+
disabled_rules:
8+
# None
9+
ignored_paths:
10+
# None

.clang-format

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ IndentCaseBlocks: false
125125
IndentCaseLabels: false
126126
IndentExternBlock: AfterExternBlock
127127
IndentGotoLabels: true
128-
IndentPPDirectives: None
128+
IndentPPDirectives: BeforeHash
129129
IndentRequiresClause: true
130130
IndentWidth: 4
131131
IndentWrappedFunctionNames: false

.copier-answers.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Standard answers and internal state managed by Copier
2+
_commit: 2.0.0-322-gc3c230c
3+
_src_path: https://github.com/steve-downey/exemplar.git
4+
description: Expected Over References
5+
maintainer: steve-downey
6+
minimum_cpp_build_version: '20'
7+
paper: PnnnnRr
8+
project_name: expected
9+
unit_test_library: gtest
10+
# Hidden variables manually tracked because 'when: false' omits them from _copier_answers
11+
generating_exemplar: false
12+
owner: "bemanproject"
13+
ci_tests_cron: "15 12 * * 2"
14+
pre_commit_update_cron: "50 7 * * 4"

.exemplar_version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ec861600898941a5114f352f1efcba57d825b6d0

.gitattributes

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
infra/** linguist-vendored
2-
cookiecutter/** linguist-vendored
2+
template/** linguist-vendored
3+
copier/** linguist-vendored
34
*.bib -linguist-detectable
45
*.tex -linguist-detectable
56
papers/* linguist-documentation

.github/workflows/ci_tests.yml

Lines changed: 70 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@ on:
99
pull_request:
1010
workflow_dispatch:
1111
schedule:
12-
- cron: '30 15 * * *'
12+
- cron: '15 12 * * 2'
13+
14+
concurrency:
15+
group: ${{format('{0}:{1}', github.repository, github.ref)}}
16+
cancel-in-progress: true
1317

1418
jobs:
1519
beman-submodule-check:
@@ -36,20 +40,45 @@ jobs:
3640
matrix_config: >
3741
{
3842
"gcc": [
39-
{ "versions": ["15"],
43+
{ "versions": ["16"],
4044
"tests": [
4145
{ "cxxversions": ["c++26"],
4246
"tests": [
4347
{ "stdlibs": ["libstdc++"],
4448
"tests": [
4549
"Debug.Default", "Release.Default", "Release.TSan",
4650
"Release.MaxSan", "Debug.Werror",
47-
"Debug.Coverage"
51+
"Debug.Coverage", "Debug.-DBEMAN_EXPECTED_USE_MODULES=On"
4852
]
4953
}
5054
]
5155
},
52-
{ "cxxversions": ["c++23", "c++20", "c++17"],
56+
{ "cxxversions": ["c++23"],
57+
"tests": [
58+
{ "stdlibs": ["libstdc++"],
59+
"tests": [
60+
"Release.Default", "Debug.-DBEMAN_EXPECTED_USE_MODULES=On"
61+
]
62+
}
63+
]
64+
},
65+
{ "cxxversions": ["c++20", "c++17"],
66+
"tests": [{ "stdlibs": ["libstdc++"], "tests": ["Release.Default"]}]
67+
}
68+
]
69+
},
70+
{ "versions": ["15"],
71+
"tests": [
72+
{ "cxxversions": ["c++26", "c++23"],
73+
"tests": [
74+
{ "stdlibs": ["libstdc++"],
75+
"tests": [
76+
"Release.Default", "Debug.-DBEMAN_EXPECTED_USE_MODULES=On"
77+
]
78+
}
79+
]
80+
},
81+
{ "cxxversions": ["c++20", "c++17"],
5382
"tests": [{ "stdlibs": ["libstdc++"], "tests": ["Release.Default"]}]
5483
}
5584
]
@@ -78,12 +107,22 @@ jobs:
78107
{ "stdlibs": ["libstdc++", "libc++"],
79108
"tests": [
80109
"Debug.Default", "Release.Default", "Release.TSan",
81-
"Release.MaxSan", "Debug.Werror"
110+
"Release.MaxSan", "Debug.Werror",
111+
"Debug.-DBEMAN_EXPECTED_USE_MODULES=On"
82112
]
83113
}
84114
]
85115
},
86-
{ "cxxversions": ["c++23", "c++20", "c++17"],
116+
{ "cxxversions": ["c++23"],
117+
"tests": [
118+
{ "stdlibs": ["libstdc++", "libc++"],
119+
"tests": [
120+
"Release.Default", "Debug.-DBEMAN_EXPECTED_USE_MODULES=On"
121+
]
122+
}
123+
]
124+
},
125+
{ "cxxversions": ["c++20", "c++17"],
87126
"tests": [
88127
{"stdlibs": ["libstdc++", "libc++"], "tests": ["Release.Default"]}
89128
]
@@ -99,7 +138,17 @@ jobs:
99138
}
100139
]
101140
},
102-
{ "versions": ["18", "17"],
141+
{ "versions": ["18"],
142+
"tests": [
143+
{ "cxxversions": ["c++26", "c++23", "c++20", "c++17"],
144+
"tests": [{"stdlibs": ["libc++"], "tests": ["Release.Default"]}]
145+
},
146+
{ "cxxversions": ["c++23", "c++20", "c++17"],
147+
"tests": [{"stdlibs": ["libstdc++"], "tests": ["Release.Default"]}]
148+
}
149+
]
150+
},
151+
{ "versions": ["17"],
103152
"tests": [
104153
{ "cxxversions": ["c++26", "c++23", "c++20", "c++17"],
105154
"tests": [{"stdlibs": ["libc++"], "tests": ["Release.Default"]}]
@@ -125,7 +174,10 @@ jobs:
125174
{ "cxxversions": ["c++23"],
126175
"tests": [
127176
{ "stdlibs": ["stl"],
128-
"tests": ["Debug.Default", "Release.Default", "Release.MaxSan"]
177+
"tests": [
178+
"Debug.Default", "Release.Default", "Release.MaxSan",
179+
"Debug.-DBEMAN_EXPECTED_USE_MODULES=On"
180+
]
129181
}
130182
]
131183
}
@@ -134,6 +186,16 @@ jobs:
134186
]
135187
}
136188
189+
vcpkg-ci:
190+
uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-vcpkg-ci.yml@1.7.2
191+
with:
192+
port_name: beman-expected
193+
feature_combinations: |
194+
[
195+
{"features": {}},
196+
{"features": {"modules": true}}
197+
]
198+
137199
create-issue-when-fault:
138200
needs: [preset-test, build-and-test]
139201
if: failure() && github.event_name == 'schedule'

.github/workflows/pre-commit-check.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
12
name: Lint Check (pre-commit)
23

34
on:
@@ -8,8 +9,12 @@ on:
89
branches:
910
- main
1011

12+
permissions:
13+
contents: read
14+
checks: write
15+
issues: write
16+
pull-requests: write
17+
1118
jobs:
1219
pre-commit:
13-
permissions:
14-
contents: read
1520
uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-pre-commit.yml@1.7.2

.github/workflows/pre-commit-update.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ name: Weekly pre-commit autoupdate
55
on:
66
workflow_dispatch:
77
schedule:
8-
- cron: "0 16 * * 0"
8+
- cron: "50 7 * * 4"
99

1010
jobs:
1111
auto-update-pre-commit:
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
2+
3+
name: vcpkg registry release
4+
on:
5+
release:
6+
types: [published]
7+
jobs:
8+
vcpkg-release:
9+
permissions: {}
10+
uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-vcpkg-release.yml@1.7.2
11+
with:
12+
port_name: beman-expected
13+
secrets:
14+
VCPKG_REGISTRY_TOKEN: ${{ secrets.VCPKG_REGISTRY_TOKEN }}

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@
1010

1111
# ignore vscode settings
1212
.vscode
13+
14+
# ignore vim swap files
15+
.swp
16+
17+
# ignore merge/patch backup files
18+
.orig
1319
/.build/
1420
/.install/
1521
/.update-submodules

0 commit comments

Comments
 (0)