Skip to content

Commit 5e570d0

Browse files
committed
v1.0.2
v1.0.2
1 parent d95d09e commit 5e570d0

File tree

197 files changed

+15952
-1269
lines changed

Some content is hidden

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

197 files changed

+15952
-1269
lines changed

.config/dotnet-tools.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"dotnet-outdated-tool": {
6+
"version": "4.6.8",
7+
"commands": [ "dotnet-outdated" ]
8+
}
9+
}
10+
}

.editorconfig

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,25 @@
11
root = true
22

3-
##########################################################
4-
# 🌐 General Settings
5-
##########################################################
63
[*]
7-
charset = utf-8-bom
4+
charset = utf-8
5+
indent_style = space
6+
indent_size = 4
87
end_of_line = crlf
98
insert_final_newline = true
109
trim_trailing_whitespace = true
11-
indent_style = space
12-
indent_size = 4
13-
1410

15-
##########################################################
16-
# 🔧 C# Specific Settings
17-
##########################################################
1811
[*.cs]
1912

20-
# 🔹 Using Directive Settings
2113
csharp_using_directive_placement = outside_namespace:warning
2214
dotnet_sort_system_directives_first = true
2315
dotnet_separate_import_directive_groups = true
2416
csharp_style_namespace_declarations = file_scoped:suggestion
2517

26-
# 🔹 Qualification Requirements (this. usage)
2718
dotnet_style_qualification_for_field = false:suggestion
2819
dotnet_style_qualification_for_property = false:suggestion
2920
dotnet_style_qualification_for_method = false:suggestion
3021
dotnet_style_qualification_for_event = false:suggestion
3122

32-
# 🔹 New Line and Indentation Rules
3323
csharp_new_line_before_open_brace = all
3424
csharp_indent_block_contents = true
3525
csharp_indent_case_contents = true
@@ -38,7 +28,6 @@ csharp_indent_labels = flush_left
3828
csharp_preserve_single_line_statements = false
3929
csharp_preserve_single_line_blocks = false
4030

41-
# 🔹 Code Style: var, switch, interpolation etc.
4231
csharp_style_var_elsewhere = true:suggestion
4332
csharp_style_var_for_built_in_types = true:suggestion
4433
csharp_style_var_when_type_is_apparent = true:suggestion
@@ -52,17 +41,10 @@ csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
5241
csharp_style_prefer_switch_expression = true:suggestion
5342
csharp_style_prefer_simplified_interpolation = true:suggestion
5443

55-
# 🔹 Diagnostic Warnings and Severity Levels
56-
dotnet_diagnostic.IDE0005.severity = warning # unnecessary using
57-
dotnet_diagnostic.IDE0044.severity = suggestion # suggest readonly field
58-
dotnet_diagnostic.IDE0060.severity = suggestion # unused parameter
44+
dotnet_diagnostic.IDE0005.severity = warning
45+
dotnet_diagnostic.IDE0044.severity = suggestion
46+
dotnet_diagnostic.IDE0060.severity = suggestion
5947

60-
61-
##########################################################
62-
# ✨ Naming Rules (Optional but useful)
63-
##########################################################
64-
65-
# 🟩 Rule: Private readonly fields should be camelCase with "_" prefix
6648
dotnet_naming_rule.private_fields_should_be_camel_case.severity = warning
6749
dotnet_naming_rule.private_fields_should_be_camel_case.symbols = private_fields
6850
dotnet_naming_rule.private_fields_should_be_camel_case.style = camel_case
@@ -74,3 +56,23 @@ dotnet_naming_symbols.private_fields.required_modifiers = readonly
7456
dotnet_naming_style.camel_case.capitalization = camel_case
7557
dotnet_naming_style.camel_case.required_prefix = _
7658
dotnet_naming_style.camel_case.required_suffix =
59+
60+
[*.{cs,vb}]
61+
dotnet_diagnostic.RS0016.severity = none
62+
dotnet_diagnostic.RS0017.severity = none
63+
dotnet_diagnostic.RS0018.severity = none
64+
dotnet_diagnostic.IDE0059.severity = none
65+
dotnet_diagnostic.IDE0079.severity = none
66+
dotnet_diagnostic.CA1707.severity = none
67+
dotnet_diagnostic.RS0022.severity = none
68+
dotnet_diagnostic.IDE0130.severity = none
69+
dotnet_diagnostic.SA1650.severity = none
70+
dotnet_diagnostic.CA1704.severity = none
71+
dotnet_diagnostic.CA2204.severity = none
72+
73+
[*.{cs,cpp,md}]
74+
spelling_languages = en-us,tr-tr
75+
spelling_error_severity = hint
76+
spelling_checkable_types = identifiers,comments,strings
77+
78+
file_header_template = Copyright (c) Norr\nLicensed under the MIT license.\n#nullable enable\n

.gitattributes

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,16 @@
1-
# Auto detect text files and perform LF normalization
2-
* text=auto
1+
* text=auto eol=crlf
2+
3+
*.png binary
4+
*.jpg binary
5+
*.jpeg binary
6+
*.gif binary
7+
*.ico binary
8+
*.nupkg binary
9+
*.snupkg binary
10+
11+
*.sln merge=union
12+
*.csproj merge=union
13+
*.props merge=union
14+
*.targets merge=union
15+
*.vbproj merge=union
16+
*.fsproj merge=union

.github/FUNDING.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
github: [berkayhuz]
2+
patreon: ""
3+
open_collective: ""
4+
ko_fi: ""
5+
custom: []
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: "Bug Report"
2+
description: Report bugs
3+
title: "[Bug]: "
4+
labels: ["bug", "needs-triage"]
5+
assignees: []
6+
body:
7+
- type: markdown
8+
attributes:
9+
value: |
10+
Please do not disclose public security vulnerabilities here. For security issues, read SECURITY.md.
11+
- type: input
12+
id: version
13+
attributes:
14+
label: Affected Version(s)
15+
description: e.g., Norr.PerformanceMonitor 1.2.3, Attribution 1.0.0
16+
placeholder: "Norr.PerformanceMonitor x.y.z"
17+
validations:
18+
required: true
19+
- type: textarea
20+
id: description
21+
attributes:
22+
label: Description
23+
description: Summarize the bug.
24+
placeholder: "Expected behavior / Actual behavior"
25+
validations:
26+
required: true
27+
- type: textarea
28+
id: repro
29+
attributes:
30+
label: Steps to Reproduce
31+
description: Include a minimal reproduction (gist, repo link, or code snippet).
32+
render: shell
33+
placeholder: |
34+
1. ...
35+
2. ...
36+
3. ...
37+
validations:
38+
required: true
39+
- type: textarea
40+
id: logs
41+
attributes:
42+
label: Logs / Exceptions
43+
description: Include relevant logs and stack traces.
44+
render: text
45+
- type: dropdown
46+
id: os
47+
attributes:
48+
label: Operating System
49+
options:
50+
- Windows
51+
- Linux
52+
- macOS
53+
- Other
54+
- type: input
55+
id: dotnet
56+
attributes:
57+
label: .NET SDK/Runtime Version
58+
placeholder: "Output of dotnet --info"
59+
- type: checkboxes
60+
id: checks
61+
attributes:
62+
label: Checklist
63+
options:
64+
- label: I have verified there is no existing issue for the same problem
65+
required: true
66+
- label: I have included a minimal reproducible example
67+
required: true
68+
- label: I have read SECURITY.md and this is not a security vulnerability
69+
required: true
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: "Feature Request"
2+
description: Suggest a new feature
3+
title: "[Feature]: "
4+
labels: ["enhancement", "needs-triage"]
5+
assignees: []
6+
body:
7+
- type: textarea
8+
id: problem
9+
attributes:
10+
label: Related Problem
11+
description: What problem does this feature solve?
12+
- type: textarea
13+
id: solution
14+
attributes:
15+
label: Proposed Solution
16+
description: Describe your proposal in detail (API design, example usage, acceptance criteria).
17+
- type: textarea
18+
id: alternatives
19+
attributes:
20+
label: Alternatives
21+
description: Alternative approaches you have considered
22+
- type: textarea
23+
id: context
24+
attributes:
25+
label: Additional Context
26+
description: References, links, benchmarks, etc.
27+
- type: checkboxes
28+
id: checks
29+
attributes:
30+
label: Checklist
31+
options:
32+
- label: I have verified there is no similar feature request
33+
required: true
34+
- label: I am willing to open a PR if needed
35+
required: false

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Summary
2+
3+
## Related Issue
4+
5+
## Type of Change
6+
- [ ] Bug fix
7+
- [ ] New feature
8+
- [ ] Breaking change
9+
- [ ] Documentation
10+
- [ ] Other
11+
12+
## How Has This Been Tested?
13+
- [ ] Unit tests added/updated
14+
- [ ] Local build and packaging successful
15+
- [ ] Performance/Regression checks performed
16+
17+
## Checklist
18+
- [ ] Followed CONTRIBUTING (if available) and CODE_OF_CONDUCT guidelines
19+
- [ ] XML docs/README updated
20+
- [ ] Public API changes recorded in CHANGELOG
21+
- [ ] License headers and copyright notices preserved
22+
23+
## Screenshots / Logs

.github/dependabot.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "nuget"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"
7+
open-pull-requests-limit: 10
8+
9+
- package-ecosystem: "github-actions"
10+
directory: "/"
11+
schedule:
12+
interval: "weekly"

.github/workflows/ci.yml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: ["main"]
6+
pull_request:
7+
branches: ["main"]
8+
9+
concurrency:
10+
group: ci-${{ github.ref }}
11+
cancel-in-progress: true
12+
13+
jobs:
14+
build-test-pack:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
20+
- name: Setup .NET
21+
uses: actions/setup-dotnet@v4
22+
with:
23+
dotnet-version: |
24+
9.0.x
25+
26+
- name: Cache NuGet
27+
uses: actions/cache@v4
28+
with:
29+
path: ~/.nuget/packages
30+
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }}
31+
restore-keys: |
32+
${{ runner.os }}-nuget-
33+
34+
- name: Restore
35+
run: dotnet restore Norr.sln
36+
37+
- name: Build (Release)
38+
run: dotnet build Norr.sln -c Release --no-restore
39+
40+
- name: Test
41+
run: dotnet test Norr.sln -c Release --no-build --logger "trx;LogFileName=test-results.trx" || echo "No tests found"
42+
43+
- name: Pack (validation)
44+
run: |
45+
dotnet pack ./src/PerformanceMonitor/Norr.PerformanceMonitor/Norr.PerformanceMonitor.csproj -c Release --no-build -o out
46+
dotnet pack ./src/PerformanceMonitor/Norr.PerformanceMonitor.Attribution/Norr.PerformanceMonitor.Attribution.csproj -c Release --no-build -o out
47+
dotnet pack ./src/PerformanceMonitor/Norr.PerformanceMonitor.OpenTelemetry/Norr.PerformanceMonitor.OpenTelemetry.csproj -c Release --no-build -o out
48+
dotnet pack ./src/PerformanceMonitor/Norr.PerformanceMonitor.Analyzer/Norr.PerformanceMonitor.Analyzer.csproj -c Release --no-build -o out
49+
50+
- name: Upload packages (PR only)
51+
if: github.event_name == 'pull_request'
52+
uses: actions/upload-artifact@v4
53+
with:
54+
name: nupkgs
55+
path: out/

.github/workflows/codeql.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: CodeQL
2+
3+
on:
4+
push:
5+
branches: ["main", "master"]
6+
pull_request:
7+
branches: ["main", "master"]
8+
schedule:
9+
- cron: "0 3 * * 2"
10+
11+
jobs:
12+
analyze:
13+
name: Analyze
14+
runs-on: ubuntu-latest
15+
permissions:
16+
actions: read
17+
contents: read
18+
security-events: write
19+
20+
strategy:
21+
fail-fast: false
22+
matrix:
23+
language: ["csharp"]
24+
25+
steps:
26+
- name: Checkout repository
27+
uses: actions/checkout@v4
28+
29+
- name: Setup .NET
30+
uses: actions/setup-dotnet@v4
31+
with:
32+
dotnet-version: |
33+
9.0.x
34+
8.0.x
35+
36+
- name: Initialize CodeQL
37+
uses: github/codeql-action/init@v3
38+
with:
39+
languages: ${{ matrix.language }}
40+
41+
- name: Restore
42+
run: dotnet restore Norr.sln
43+
44+
- name: Build
45+
run: dotnet build Norr.sln -c Release --no-restore
46+
47+
- name: Perform CodeQL Analysis
48+
uses: github/codeql-action/analyze@v3
49+
with:
50+
category: "/language:${{ matrix.language }}"

0 commit comments

Comments
 (0)