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

clang tidy gh action added #24

Merged
merged 1 commit into from
Feb 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 0 additions & 31 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

154 changes: 154 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,154 @@
# This template is inspired by:
# https://github.com/executablebooks/.github/blob/master/.github/ISSUE_TEMPLATE/bug_report.yml
name: 🐛 Report a problem
description: Problem reports are for when something behaves incorrectly, or differently from how you'd expect.
body:
- type: markdown
attributes:
value: |
# Welcome

Thank you very much for reporting an issue to us, we appreciate that! 🙏
Please fill out the form below, so we can obtain all required information and fix the issue as fast as possible!

- type: markdown
attributes:
value: |
# Problem Report

- type: textarea
id: describe
attributes:
label: Problem Description
description: |
Provide a short description (one or two sentences) about the problem.

If possible, provide screenshots or error messages that you've encountered.
placeholder: |
When I do ___, I expect that ___ would occur.
However, instead ___ happens.
This is a problem for people doing ___ because ___.

---

When compiling an eCAL Application on my ___ device, I encounter the following build issues:
```
my build issues
```

validations:
required: true

- type: textarea
id: reproduce
attributes:
label: How to reproduce
description: |
Provide information that others may use to re-produce this behavior.
For example:

- Step-by-step instructions that others can follow.
- (Minimal) source-code that shows the bug.
- Information about certain conditions that trigger the bug.

placeholder: |
1. Go to '...'
2. Click on '....'

Here is the source code triggering the issue:
```cpp
my { code }
```

This is my CMake command line: `cmake .. -DMY_VAR=ON`
validations:
required: true

- type: dropdown
id: download
attributes:
label: How did you get eCAL?
options:
- I don't know
- Download from Release Page
- Ubuntu PPA (apt-get)
- Custom Build / Built from source
- Other
validations:
required: true

- type: textarea
id: environment
attributes:
label: Environment
description: |
List your

- eCAL Version
- Operating System
- Python Version _(for python related issues)_
- CMake and compiler version _(for build related issues)_
- Versions of any other relevant tools you're using.

placeholder: |
- eCAL:
- OS:
- Python:
- CMake:
- gcc:
- ...

validations:
required: true

- type: textarea
id: ecal_system_information
attributes:
label: eCAL System Information
description: |
If available, paste the eCAL Mon System information here.
You can obtain it from the eCAL Monitor, or by calling `ecal_config` from a terminal.

_If your problem is e.g. build related, just leave this box empty._

render: text
placeholder: |
------------------------- SYSTEM ---------------------------------
Version : v5.10.4 (13.12.2022)
Platform : x64

------------------------- CONFIGURATION --------------------------
Default INI : C:\ProgramData\eCAL\ecal.ini

------------------------- NETWORK --------------------------------
Host name : FRLBJRXW
Network mode : cloud
Network ttl : 2
Network sndbuf : 5 MByte
Network rcvbuf : 5 MByte
Multicast group : 239.0.0.1
Multicast mask : 0.0.0.15
Multicast ports : 14000 - 14010
Bandwidth limit (udp) : not limited

------------------------- TIME -----------------------------------
Synchronization realtime : "ecaltime-localtime"
Synchronization replay :
State : synchronized
Master / Slave : Master
Status (Code) : "everything is fine." (0)

------------------------- PUBLISHER LAYER DEFAULTS ---------------
Layer Mode INPROC : off
Layer Mode SHM : auto
Layer Mode TCP : off
Layer Mode UDP MC : auto

------------------------- SUBSCRIPTION LAYER DEFAULTS ------------
Layer Mode INPROC : on
Layer Mode SHM : on
Layer Mode TCP : on
Layer Mode UDP MC : on
Npcap UDP Reciever : off
validations:
required: false
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Inspired by
# - https://www.backhub.co/blog/best-practices-for-using-github-issues
# - https://medium.com/nyc-planning-digital/writing-a-proper-github-issue-97427d62a20f
# - https://wiredcraft.com/blog/how-we-write-our-github-issues/
name: 💡 Request an enhancement
description: Suggest an idea for this project.
body:
- type: markdown
attributes:
value: |
# Welcome

Thank you very much for providing your enhancement idea, we appreciate that! 🙏
Please describe your idea to us, so we can have a qualified discussion together and make eCAL better!

- type: markdown
attributes:
value: |
# Enhancement suggestion

- type: textarea
id: context
attributes:
label: Context
description: |
- Provide background to help others understand this issue.
- Describe the problem or need you'd like to address.
validations:
required: true


- type: textarea
id: proposal
attributes:
label: Proposal
description: |
- A simple and clear description of what you're proposing.
- Ideas or constraints for how to implement this proposal
- Important considerations to think about or discuss
validations:
required: false


- type: textarea
id: tasks
attributes:
label: Tasks and updates
description: |
Use this area to track ongoing work and to-do items.
The more specific the better.

_If you can't think of anything then just leave this blank and we can fill it in later! This can be filled in as we understand more about an issue._

placeholder: |
- [ ] Discuss and decide on what to do...
- [ ] Implement partial feature A...

validations:
required: false
20 changes: 0 additions & 20 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

52 changes: 14 additions & 38 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,14 @@
**Pull request type**

<!-- Please do not submit updates to dependencies unless it fixes an issue. -->

<!-- Please try to limit your pull request to one type, submit multiple pull requests if needed. -->

Please check the type of change your PR introduces:
- [ ] Bugfix
- [ ] Feature
- [ ] Code style update (formatting, renaming)
- [ ] Refactoring (no functional changes, no api changes)
- [ ] Build related changes
- [ ] Documentation content changes
- [ ] Other (please describe):


**What is the current behavior?**
<!-- Please describe the current behavior that you are modifying, or link to a relevant issue. -->

Issue Number: N/A

**What is the new behavior?**
<!-- Please describe the behavior or changes that are being added by this PR. -->

-
-
-

**Does this introduce a breaking change?**

- [ ] Yes
- [ ] No

<!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. -->

**Other information**

<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
### Description
<!-- What does your PR change? -->

### Related issues
<!-- Type "Fixes #123" to automatically close that issue, when this PR is merged -->
-

### Cherry-pick to
<!-- Leave empty, if you don't know. For master-only changes use "none"
- _none_
- master-v5 (master for eCAL 5 feature backporting)
- 5.12 (old stable)
- 5.13 (current stable)
-->
67 changes: 67 additions & 0 deletions .github/workflows/clang-tidy-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: clang-tidy-review

on:
pull_request:
paths:
- '**.cpp'
- '**.cxx'
- '**.cc'
- '**.h'
- '**.hxx'
- '**.c'
- '**.hpp'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
review:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: 'true'
fetch-depth: 0

- name: Run clang-tidy
uses: ZedThree/[email protected]
id: review
with:
build_dir: _build
apt_packages: "cmake,ninja-build,libprotobuf-dev,libprotoc-dev,protobuf-compiler"
config_file: ".clang-tidy"
exclude: "thirdparty/*,_build/*,convert_utf.cpp,convert_utf.h,tests/*"
split_workflow: true
lgtm_comment_body: ""
cmake_command: |
cmake . -B _build \
-G Ninja \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DECAL_CORE_BUILD_SAMPLES=ON \
-DECAL_CORE_BUILD_SAMPLES_PROTOBUF=ON \
-DECAL_CORE_BUILD_TESTS=ON \
-DECAL_CORE_BUILD_TESTS_PROTOBUF=ON \
-DECAL_CORE_CONFIG_INIFILE=ON \
-DECAL_CORE_COMMAND_LINE=ON \
-DECAL_CORE_REGISTRATION=ON \
-DECAL_CORE_REGISTRATION_SHM=ON \
-DECAL_CORE_MONITORING=ON \
-DECAL_CORE_PUBLISHER=ON \
-DECAL_CORE_SUBSCRIBER=ON \
-DECAL_CORE_SERVICE=ON \
-DECAL_CORE_TIMEPLUGIONN=ON \
-DECAL_CORE_TRANSPORT_UDPON=ON \
-DECAL_CORE_TRANSPORT_TCPON=ON \
-DECAL_CORE_TRANSPORT_SHMON=ON \
-DECAL_CORE_NPCAP_SUPPORT=OFF \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LOCALSTATEDONIR=/var \
-DCMAKE_INSTALL_LIBDIR=lib/x86_FF4-linux-gnu
cmake --build _build

- uses: ZedThree/clang-tidy-review/[email protected]