-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from whitemech/setup
Set up project.
- Loading branch information
Showing
83 changed files
with
7,229 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
--- | ||
Language: Cpp | ||
# BasedOnStyle: LLVM | ||
AccessModifierOffset: -2 | ||
AlignAfterOpenBracket: Align | ||
AlignConsecutiveMacros: false | ||
AlignConsecutiveAssignments: false | ||
AlignConsecutiveDeclarations: false | ||
AlignEscapedNewlines: Right | ||
AlignOperands: true | ||
AlignTrailingComments: true | ||
AllowAllArgumentsOnNextLine: true | ||
AllowAllConstructorInitializersOnNextLine: true | ||
AllowAllParametersOfDeclarationOnNextLine: true | ||
AllowShortBlocksOnASingleLine: false | ||
AllowShortCaseLabelsOnASingleLine: false | ||
AllowShortFunctionsOnASingleLine: All | ||
AllowShortLambdasOnASingleLine: All | ||
AllowShortIfStatementsOnASingleLine: Never | ||
AllowShortLoopsOnASingleLine: false | ||
AlwaysBreakAfterDefinitionReturnType: None | ||
AlwaysBreakAfterReturnType: None | ||
AlwaysBreakBeforeMultilineStrings: false | ||
AlwaysBreakTemplateDeclarations: MultiLine | ||
BinPackArguments: true | ||
BinPackParameters: true | ||
BraceWrapping: | ||
AfterCaseLabel: false | ||
AfterClass: false | ||
AfterControlStatement: false | ||
AfterEnum: false | ||
AfterFunction: false | ||
AfterNamespace: false | ||
AfterObjCDeclaration: false | ||
AfterStruct: false | ||
AfterUnion: false | ||
AfterExternBlock: false | ||
BeforeCatch: false | ||
BeforeElse: false | ||
IndentBraces: false | ||
SplitEmptyFunction: true | ||
SplitEmptyRecord: true | ||
SplitEmptyNamespace: true | ||
BreakBeforeBinaryOperators: None | ||
BreakBeforeBraces: Attach | ||
BreakBeforeInheritanceComma: false | ||
BreakInheritanceList: BeforeColon | ||
BreakBeforeTernaryOperators: true | ||
BreakConstructorInitializersBeforeComma: false | ||
BreakConstructorInitializers: BeforeColon | ||
BreakAfterJavaFieldAnnotations: false | ||
BreakStringLiterals: true | ||
ColumnLimit: 80 | ||
CommentPragmas: '^ IWYU pragma:' | ||
CompactNamespaces: false | ||
ConstructorInitializerAllOnOneLineOrOnePerLine: false | ||
ConstructorInitializerIndentWidth: 4 | ||
ContinuationIndentWidth: 4 | ||
Cpp11BracedListStyle: true | ||
DerivePointerAlignment: false | ||
DisableFormat: false | ||
ExperimentalAutoDetectBinPacking: false | ||
FixNamespaceComments: true | ||
ForEachMacros: | ||
- foreach | ||
- Q_FOREACH | ||
- BOOST_FOREACH | ||
IncludeBlocks: Preserve | ||
IncludeCategories: | ||
- Regex: '^"(llvm|llvm-c|clang|clang-c)/' | ||
Priority: 2 | ||
- Regex: '^(<|"(gtest|gmock|isl|json)/)' | ||
Priority: 3 | ||
- Regex: '.*' | ||
Priority: 1 | ||
IncludeIsMainRegex: '(Test)?$' | ||
IndentCaseLabels: false | ||
IndentPPDirectives: None | ||
IndentWidth: 2 | ||
IndentWrappedFunctionNames: false | ||
JavaScriptQuotes: Leave | ||
JavaScriptWrapImports: true | ||
KeepEmptyLinesAtTheStartOfBlocks: true | ||
MacroBlockBegin: '' | ||
MacroBlockEnd: '' | ||
MaxEmptyLinesToKeep: 1 | ||
NamespaceIndentation: None | ||
ObjCBinPackProtocolList: Auto | ||
ObjCBlockIndentWidth: 2 | ||
ObjCSpaceAfterProperty: false | ||
ObjCSpaceBeforeProtocolList: true | ||
PenaltyBreakAssignment: 2 | ||
PenaltyBreakBeforeFirstCallParameter: 19 | ||
PenaltyBreakComment: 300 | ||
PenaltyBreakFirstLessLess: 120 | ||
PenaltyBreakString: 1000 | ||
PenaltyBreakTemplateDeclaration: 10 | ||
PenaltyExcessCharacter: 1000000 | ||
PenaltyReturnTypeOnItsOwnLine: 60 | ||
PointerAlignment: Left | ||
ReflowComments: true | ||
SortIncludes: true | ||
SortUsingDeclarations: true | ||
SpaceAfterCStyleCast: false | ||
SpaceAfterLogicalNot: false | ||
SpaceAfterTemplateKeyword: true | ||
SpaceBeforeAssignmentOperators: true | ||
SpaceBeforeCpp11BracedList: false | ||
SpaceBeforeCtorInitializerColon: true | ||
SpaceBeforeInheritanceColon: true | ||
SpaceBeforeParens: ControlStatements | ||
SpaceBeforeRangeBasedForLoopColon: true | ||
SpaceInEmptyParentheses: false | ||
SpacesBeforeTrailingComments: 1 | ||
SpacesInAngles: false | ||
SpacesInContainerLiterals: true | ||
SpacesInCStyleCastParentheses: false | ||
SpacesInParentheses: false | ||
SpacesInSquareBrackets: false | ||
Standard: Cpp11 | ||
StatementMacros: | ||
- Q_UNUSED | ||
- QT_REQUIRE_VERSION | ||
TabWidth: 8 | ||
UseTab: Never | ||
... | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
# ignore third_party code from clang-format checks | ||
vendor/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
--- | ||
name: Bug report | ||
about: Create a report to help us improve | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Describe the bug** | ||
A clear and concise description of what the bug is. | ||
|
||
**To Reproduce** | ||
Steps to reproduce the behavior: | ||
1. Go to '...' | ||
2. Click on '....' | ||
3. Scroll down to '....' | ||
4. See error | ||
|
||
**Expected behavior** | ||
A clear and concise description of what you expected to happen. | ||
|
||
**Screenshots** | ||
If applicable, add screenshots to help explain your problem. | ||
|
||
**Desktop (please complete the following information):** | ||
- OS: [e.g. iOS] | ||
- Browser [e.g. chrome, safari] | ||
- Version [e.g. 22] | ||
|
||
**Smartphone (please complete the following information):** | ||
- Device: [e.g. iPhone6] | ||
- OS: [e.g. iOS8.1] | ||
- Browser [e.g. stock browser, safari] | ||
- Version [e.g. 22] | ||
|
||
**Additional context** | ||
Add any other context about the problem here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
--- | ||
name: Custom issue template | ||
about: Describe this issue template's purpose here. | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for this project | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Is your feature request related to a problem? Please describe.** | ||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] | ||
|
||
**Describe the solution you'd like** | ||
A clear and concise description of what you want to happen. | ||
|
||
**Describe alternatives you've considered** | ||
A clear and concise description of any alternative solutions or features you've considered. | ||
|
||
**Additional context** | ||
Add any other context or screenshots about the feature request here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
## Types of changes | ||
|
||
What types of changes does your code introduce? Put an `x` in all the boxes that apply: | ||
- [ ] Bug fix (non-breaking change which fixes an issue) | ||
- [ ] New feature (non-breaking change which adds functionality) | ||
- [ ] Breaking change (fix or feature that would cause existing functionality to change) | ||
- [ ] I have read the **CONTRIBUTING** document. | ||
- [ ] My code follows the code style of this project. | ||
- [ ] My change requires a change to the documentation. | ||
- [ ] I have updated the documentation accordingly. | ||
- [ ] I have added tests to cover my changes. | ||
- [ ] All new and existing tests passed. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
## Release summary | ||
|
||
Version number: [e.g. 1.0.1] | ||
|
||
## Release details | ||
|
||
Describe in short the main changes with the new release. | ||
|
||
## Checklist | ||
|
||
_Put an `x` in the boxes that apply._ | ||
|
||
- [ ] I have read the [CONTRIBUTING](../main/CONTRIBUTING.md) doc | ||
- [ ] I am making a pull request against the `main` branch (left side), from `develop` | ||
- [ ] I've updated the dependencies versions to the latest, wherever is possible. | ||
- [ ] Lint and unit tests pass locally. | ||
- [ ] I built the documentation and updated it with the latest changes | ||
- [ ] I've added an item in `HISTORY.md` for this release | ||
- [ ] I bumped the version number in the `CMakeLists.txt` file. | ||
- [ ] I updated the Docker images and published on Docker Hub. | ||
- [ ] After merging the PR, I'll tag the repo with `v${VERSION_NUMVER}` (e.g. `v0.1.2`) | ||
|
||
|
||
## Further comments | ||
|
||
Write here any other comment about the release, if any. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
# | ||
# Three jobs: | ||
# - lint: check linting | ||
# - build: make a build for all the targets | ||
# - test: run tests | ||
|
||
name: Cynthia CI pipeline | ||
|
||
on: | ||
push: | ||
branches: | ||
- develop | ||
- main | ||
pull_request: | ||
|
||
jobs: | ||
lint: | ||
continue-on-error: false | ||
runs-on: ubuntu-20.04 | ||
timeout-minutes: 10 | ||
env: | ||
DEBIAN_FRONTEND: noninteractive | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
- name: Install dependencies | ||
run: | | ||
sudo apt-get install -y clang-format-9 | ||
- name: Check File Headers | ||
run: python3 ./scripts/check_copyright_notice.py | ||
- name: Check clang-format | ||
run: ./scripts/check-clang-format.sh | ||
|
||
# Test that the build of all the targets works. | ||
build: | ||
strategy: | ||
matrix: | ||
os: [ubuntu-20.04] # TODO include macos-latest, windows-latest | ||
compiler: [g++-9] | ||
|
||
continue-on-error: true | ||
needs: lint | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 60 | ||
env: | ||
DEBIAN_FRONTEND: noninteractive | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
- name: Install tools | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install -y clang-tidy-9 | ||
sudo apt-get install -y wget | ||
# install flex/bison | ||
sudo apt-get purge -y flex | ||
sudo apt-get purge -y bison | ||
sudo apt-get install -y flex bison | ||
sudo apt-get autoremove | ||
sudo python3 -m pip install gcovr | ||
# - name: Check clang-tidy | ||
# run: ./scripts/check-clang-tidy.sh | ||
# - name: Install dependencies | ||
# run: sudo ./scripts/_ci-install-dependencies-ubuntu.sh | ||
- name: Configure CMake | ||
env: | ||
CXX: ${{ matrix.compiler }} | ||
run: ./scripts/_ci-configure.sh | ||
- name: Build all | ||
run: cd build && VERBOSE=1 make -j | ||
# - name: Build app | ||
# run: cd build && VERBOSE=1 make cynthia-app -j | ||
# - name: Build benchmarks | ||
# run: cd build && VERBOSE=1 make lydiaBench -j | ||
|
||
# Build and run the tests. | ||
test: | ||
strategy: | ||
matrix: | ||
os: [ ubuntu-20.04 ] # TODO include macos-latest, windows-latest | ||
compiler: [ g++-9 ] | ||
|
||
continue-on-error: false | ||
needs: lint | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 60 | ||
env: | ||
DEBIAN_FRONTEND: noninteractive | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
- name: Install tools | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install -y clang-tidy-9 | ||
sudo apt-get install -y wget git cmake | ||
# install flex/bison | ||
sudo apt-get purge -y flex | ||
sudo apt-get purge -y bison | ||
sudo apt-get install -y flex bison | ||
sudo apt-get autoremove | ||
sudo apt-get install -y graphviz libgraphviz-dev | ||
sudo python3 -m pip install gcovr | ||
# download Codecov uploader script | ||
curl -Os https://uploader.codecov.io/latest/linux/codecov | ||
chmod +x codecov | ||
./codecov -t ${{ secrets.CODECOV_TOKEN }} | ||
# - name: Install dependencies | ||
# run: sudo ./scripts/_ci-install-dependencies-ubuntu.sh | ||
- name: Configure CMake | ||
env: | ||
CXX: ${{ matrix.compiler }} | ||
run: | | ||
echo "Configuring tests" | ||
./scripts/_ci-configure.sh | ||
- name: Run tests for module "utils" | ||
run: ./scripts/_ci-test.sh utils "${{ secrets.CODECOV_TOKEN }}" | ||
- name: Run tests for module "logic" | ||
run: ./scripts/_ci-test.sh logic "${{ secrets.CODECOV_TOKEN }}" | ||
- name: Run tests for module "parser" | ||
run: ./scripts/_ci-test.sh parser "${{ secrets.CODECOV_TOKEN }}" | ||
- name: Run tests for module "core" | ||
run: ./scripts/_ci-test.sh core "${{ secrets.CODECOV_TOKEN }}" |
Oops, something went wrong.