Skip to content

Commit 9178e70

Browse files
authored
Merge pull request #11 from patdhlk/csharp-iox2-8-workflow-enhancements
Workflow improvement
2 parents bfe237d + 73396b4 commit 9178e70

File tree

7 files changed

+264
-0
lines changed

7 files changed

+264
-0
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: 'bug'
6+
assignees: ''
7+
8+
---
9+
10+
## Required information
11+
12+
**Operating system:**
13+
14+
* OS name, version
15+
* Additionally, on Linux, Mac OS, Unix, output of: `uname -a`
16+
* Additionally, on Windows, output of: `ver`
17+
18+
**.NET version:**
19+
Output of: `dotnet --version`
20+
21+
**iceoryx2-csharp version:**
22+
E.g. `v0.1.0` or `main` branch
23+
24+
**iceoryx2 native library version:**
25+
E.g. `v0.8.0`
26+
27+
**Detailed log output:**
28+
If applicable, add relevant log output or exception stack traces.
29+
30+
**Observed result or behaviour:**
31+
A minimalistic running code example that reproduces the bug or
32+
a clear and precise description of the observed result.
33+
34+
**Expected result or behaviour:**
35+
What do you expect to happen?
36+
37+
**Conditions where it occurred / Performed steps:**
38+
Describe how one can reproduce the bug.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: iceoryx2 Documentation
4+
url: https://github.com/eclipse-iceoryx/iceoryx2
5+
about: Check the main iceoryx2 documentation for general IPC concepts
6+
- name: iceoryx2-csharp Examples
7+
url: https://github.com/eclipse-iceoryx2/iceoryx2-csharp/tree/main/examples
8+
about: Browse examples for common usage patterns
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: 'enhancement'
6+
assignees: ''
7+
8+
---
9+
10+
## Brief feature description
11+
12+
Please describe in a few sentences what should be implemented.
13+
14+
## Detailed information
15+
16+
E.g. a list of pros and cons of different considerations and how iceoryx2-csharp and its users could benefit from it.
17+
18+
## Use case
19+
20+
Describe the use case or scenario where this feature would be helpful.
21+
22+
## Additional context
23+
24+
Add any other context, code examples, or references about the feature request here.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
name: Quality of Life Improvement
3+
about: A cumbersome API/usage that shall be improved
4+
title: ''
5+
labels: 'enhancement'
6+
assignees: ''
7+
8+
---
9+
10+
## (Code) Example Of Cumbersome API
11+
12+
Please take a moment to describe the specific issues you've encountered with
13+
the current API. You can provide details either in a few sentences or with a
14+
code example to highlight the pain points you've identified.
15+
16+
```csharp
17+
// Example code showing the current cumbersome usage
18+
```
19+
20+
## Improvement Suggestion
21+
22+
We value your input! Please offer your proposed improvement, including a code
23+
example if possible, to illustrate what the enhanced API should look like.
24+
Your insights will help us streamline and enhance the iceoryx2-csharp API for a
25+
better development experience.
26+
27+
```csharp
28+
// Example code showing the proposed improved usage
29+
```

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
## Notes for Reviewer
2+
<!-- Items in addition to the checklist below that the reviewer should look for -->
3+
4+
## Pre-Review Checklist for the PR Author
5+
6+
* [ ] Add sensible notes for the reviewer
7+
* [ ] PR title is short, expressive and meaningful
8+
* [ ] Consider switching the PR to a draft (`Convert to draft`)
9+
* as draft PR, the CI will be skipped for pushes
10+
* [ ] Relevant issues are linked in the [References](#references) section
11+
* [ ] Branch follows the naming format (`csharp-iox2-123-short-description`)
12+
* [ ] Commits messages are according to this [guideline][commit-guidelines]
13+
* [ ] Commit messages have the issue ID (`[#123] Add feature description`)
14+
* [ ] Tests have been added/updated for new functionality
15+
* [ ] XML documentation comments added to public APIs
16+
* [ ] Changelog updated [in the unreleased section][changelog] including API breaking changes
17+
* [ ] Assign PR to reviewer
18+
* [ ] All checks have passed
19+
20+
[commit-guidelines]: https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
21+
[changelog]: https://github.com/eclipse-iceoryx/iceoryx2-csharp/blob/main/CHANGELOG.md
22+
23+
## PR Reviewer Reminders
24+
25+
* Commits are properly organized and messages are according to the guideline
26+
* Unit tests have been written for new behavior
27+
* Public API is documented with XML comments
28+
* PR title describes the changes
29+
* Code follows C# conventions (PascalCase for public APIs)
30+
* `dotnet format` has been exectued before submitting
31+
32+
## References
33+
34+
<!-- Use either 'Closes #123' or 'Relates to #123' to reference the corresponding issue. -->
35+
36+
Closes # <!-- Add issue number after '#' -->

CHANGELOG.md

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# Changelog
2+
3+
All notable changes to the iceoryx2-csharp bindings will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
### Features
11+
12+
<!-- New features go here -->
13+
14+
### Bugfixes
15+
16+
<!-- Bug fixes go here -->
17+
18+
### Refactoring
19+
20+
<!-- Code refactoring, internal improvements go here -->
21+
22+
### API Breaking Changes
23+
24+
<!-- Breaking changes that require user action go here -->
25+
26+
---
27+
28+
<!--
29+
30+
## [0.1.0] - Initial Release
31+
32+
Based on iceoryx2 v0.8.0
33+
34+
### Features
35+
36+
- **Core Bindings**
37+
- P/Invoke bindings to iceoryx2 native library (C FFI)
38+
- Support for .NET 8.0 and .NET 9.0
39+
- Cross-platform support (Windows, Linux, macOS)
40+
41+
- **Publish-Subscribe Pattern**
42+
- `Publisher<T>` and `Subscriber<T>` for typed messaging
43+
- Zero-copy message transfer via shared memory
44+
- Support for dynamic payloads
45+
46+
- **Request-Response Pattern**
47+
- `Client<TRequest, TResponse>` and `Server<TRequest, TResponse>` support
48+
- Typed request/response communication
49+
50+
- **Event System**
51+
- `Notifier` and `Listener` for event-based signaling
52+
- `WaitSet` for multiplexed event handling
53+
- `IAsyncEnumerable<T>` support for async event consumption
54+
55+
- **Service Discovery**
56+
- Service discovery APIs for runtime service enumeration
57+
58+
- **Reactive Extensions** (`Iceoryx2.Reactive`)
59+
- `IObservable<T>` integration for reactive programming
60+
- `ObservableWaitSet` for reactive event handling
61+
62+
- **Logging Integration**
63+
- `Microsoft.Extensions.Logging` integration
64+
- Configurable log levels
65+
66+
- **Quality of Service**
67+
- Configurable buffer sizes
68+
- History and subscriber settings
69+
70+
### Examples
71+
72+
- PublishSubscribe - Basic pub/sub pattern
73+
- AsyncPubSub - Async/await pub/sub usage
74+
- Event - Event notification example
75+
- WaitSetMultiplexing - Multiplexed event handling
76+
- WaitSetAsyncEnumerable - Async enumerable events
77+
- ReactiveExample - Reactive extensions usage
78+
- ObservableWaitSet - Observable pattern with WaitSet
79+
- RequestResponse - Request/response pattern
80+
- ServiceDiscovery - Service enumeration
81+
- ComplexDataTypes - Structured data transfer
82+
- Logging - Logging configuration
83+
- QualityOfService - QoS settings
84+
85+
---
86+
87+
[Unreleased]: https://github.com/eclipse-iceoryx2/iceoryx2-csharp/compare/v0.1.0...HEAD
88+
[0.1.0]: https://github.com/eclipse-iceoryx2/iceoryx2-csharp/releases/tag/v0.1.0
89+
90+
-->

SECURITY.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Security Policy
2+
3+
This Eclipse Foundation Project adheres to the
4+
[Eclipse Foundation Vulnerability Reporting Policy](https://www.eclipse.org/security/policy/).
5+
6+
## How To Report a Vulnerability
7+
8+
If you think you have found a vulnerability in this repository,
9+
please report it to us through coordinated disclosure.
10+
11+
**Please do not report security vulnerabilities through public issues,
12+
discussions, or change requests.**
13+
14+
Instead, report it using one of the following ways:
15+
16+
* Contact the [Eclipse Foundation Security Team](mailto:security@eclipse-foundation.org)
17+
via email
18+
* Create a [confidential issue](https://gitlab.eclipse.org/security/vulnerability-reports/-/issues/new?issuable_template=new_vulnerability)
19+
in the Eclipse Foundation Vulnerability Reporting Tracker
20+
* Report a [vulnerability](https://github.com/eclipse-iceoryx/iceoryx2-csharp/security/advisories/new)
21+
directly via private vulnerability reporting on GitHub
22+
23+
You can find more information about reporting and disclosure at the
24+
[Eclipse Foundation Security page](https://www.eclipse.org/security/).
25+
26+
Please include as much of the information listed below as you can to help us
27+
better understand and resolve the issue:
28+
29+
* The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting)
30+
* Affected version(s)
31+
* Impact of the issue, including how an attacker might exploit the issue
32+
* Step-by-step instructions to reproduce the issue
33+
* The location of the affected source code (tag/branch/commit or direct URL)
34+
* Full paths of source file(s) related to the manifestation of the issue
35+
* Configuration required to reproduce the issue
36+
* Log files that are related to this issue (if possible)
37+
* Proof-of-concept or exploit code (if possible)
38+
39+
This information will help us triage your report more quickly.

0 commit comments

Comments
 (0)