From 9857b23149e2d3a2a5c209c2ef53e475b1bdda60 Mon Sep 17 00:00:00 2001 From: devlooped-bot Date: Tue, 14 Oct 2025 00:18:43 +0000 Subject: [PATCH] =?UTF-8?q?=E2=AC=86=EF=B8=8F=20Bump=20files=20with=20dotn?= =?UTF-8?q?et-file=20sync=20=EF=BB=BF#=20devlooped/oss?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix error message quotes in includes.yml https://github.com/devlooped/oss/commit/26e8cb7 - Use GH_TOKEN if available for PR https://github.com/devlooped/oss/commit/77e83f2 - Ensure lf for Scriban templates always https://github.com/devlooped/oss/commit/4a9aa32 - Add Company MSBuild property by default https://github.com/devlooped/oss/commit/c509be4 - Group MEAI packages together https://github.com/devlooped/oss/commit/e733294 - Ignore .env files recursively https://github.com/devlooped/oss/commit/3776526 - Revert indent size for project files https://github.com/devlooped/oss/commit/a62c459 - Improve default Product metadata, remove .git from user-facing URLs https://github.com/devlooped/oss/commit/4339749 --- .editorconfig | 5 ++++ .gitattributes | 1 + .github/dependabot.yml | 5 ++++ .github/workflows/dotnet-env.yml | 44 ++++++++++++++++++++++++++++++++ .github/workflows/includes.yml | 24 +++++++++++++++-- .gitignore | 2 ++ .netconfig | 33 ++++++++++++++---------- readme.md | 27 +++++++++++--------- src/Directory.Build.props | 3 +++ src/Directory.Build.targets | 7 +++-- 10 files changed, 121 insertions(+), 30 deletions(-) create mode 100644 .github/workflows/dotnet-env.yml diff --git a/.editorconfig b/.editorconfig index 4cab270..3ba6837 100644 --- a/.editorconfig +++ b/.editorconfig @@ -30,6 +30,8 @@ indent_size = 2 # Dotnet code style settings: [*.{cs,vb}] +tab_width = 4 + # Sort using and Import directives with System.* appearing first dotnet_sort_system_directives_first = true # Avoid "this." and "Me." if not necessary @@ -57,6 +59,9 @@ dotnet_style_require_accessibility_modifiers = omit_if_default:error # IDE0040: Add accessibility modifiers dotnet_diagnostic.IDE0040.severity = error +# IDE1100: Error reading content of source file 'Project.TargetFrameworkMoniker' (i.e. from ThisAssembly) +dotnet_diagnostic.IDE1100.severity = none + [*.cs] # Top-level files are definitely OK csharp_using_directive_placement = outside_namespace:silent diff --git a/.gitattributes b/.gitattributes index 4f89148..3095556 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,6 +1,7 @@ # normalize by default * text=auto encoding=UTF-8 *.sh text eol=lf +*.sbn eol=lf # These are windows specific files which we may as well ensure are # always crlf on checkout diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 949c432..11c5d7d 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -24,6 +24,11 @@ updates: Extensions: patterns: - "Microsoft.Extensions*" + exclude-patterns: + - "Microsoft.Extensions.AI*" + ExtensionsAI: + patterns: + - "Microsoft.Extensions.AI*" Web: patterns: - "Microsoft.AspNetCore*" diff --git a/.github/workflows/dotnet-env.yml b/.github/workflows/dotnet-env.yml new file mode 100644 index 0000000..a76d0fd --- /dev/null +++ b/.github/workflows/dotnet-env.yml @@ -0,0 +1,44 @@ +name: dotnet-env +on: + workflow_dispatch: + push: + branches: + - main + paths: + - '**/*.*proj' + +jobs: + which-dotnet: + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + + steps: + - name: 🤖 defaults + uses: devlooped/actions-bot@v1 + with: + name: ${{ secrets.BOT_NAME }} + email: ${{ secrets.BOT_EMAIL }} + gh_token: ${{ secrets.GH_TOKEN }} + github_token: ${{ secrets.GITHUB_TOKEN }} + + - name: 🤘 checkout + uses: actions/checkout@v4 + with: + token: ${{ env.GH_TOKEN }} + + - name: 🤌 dotnet + uses: devlooped/actions-which-dotnet@v1 + + - name: ✍ pull request + uses: peter-evans/create-pull-request@v7 + with: + base: main + branch: which-dotnet + delete-branch: true + labels: dependencies + title: "⚙ Update dotnet versions" + body: "Update dotnet versions" + commit-message: "Update dotnet versions" + token: ${{ env.GH_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/includes.yml b/.github/workflows/includes.yml index d787ccb..fe77668 100644 --- a/.github/workflows/includes.yml +++ b/.github/workflows/includes.yml @@ -5,8 +5,9 @@ on: branches: - 'main' paths: - - '**.md' + - '**.md' - '!changelog.md' + - 'osmfeula.txt' jobs: includes: @@ -31,10 +32,29 @@ jobs: - name: +Mᐁ includes uses: devlooped/actions-includes@v1 + - name: 📝 OSMF EULA + shell: pwsh + run: | + $file = "osmfeula.txt" + $props = "src/Directory.Build.props" + if (-not (test-path $file) -or -not (test-path $props)) { + exit 0 + } + + $product = dotnet msbuild $props -getproperty:Product + if (-not $product) { + write-error 'To use OSMF EULA, ensure the $(Product) property is set in Directory.props' + exit 1 + } + + ((get-content -raw $file) -replace '\$product\$',$product).trim() | set-content $file + - name: ✍ pull request uses: peter-evans/create-pull-request@v6 with: - add-paths: '**.md' + add-paths: | + **.md + osmfeula.txt base: main branch: markdown-includes delete-branch: true diff --git a/.gitignore b/.gitignore index 6930b87..0fe79fb 100644 --- a/.gitignore +++ b/.gitignore @@ -4,12 +4,14 @@ artifacts pack TestResults results +BenchmarkDotNet.Artifacts /app .vs .vscode .genaiscript .idea local.settings.json +.env *.suo *.sdf diff --git a/.netconfig b/.netconfig index 5ce4f66..7de698a 100644 --- a/.netconfig +++ b/.netconfig @@ -14,18 +14,18 @@ skip [file ".editorconfig"] url = https://github.com/devlooped/oss/blob/main/.editorconfig - sha = e81ab754b366d52d92bd69b24bef1d5b1c610634 - etag = 7298c6450967975a8782b5c74f3071e1910fc59686e48f9c9d5cd7c68213cf59 + sha = a62c45934ac2952f2f5d54d8aea4a7ebc1babaff + etag = b5e919b472a52d4b522f86494f0f2c0ba74a6d9601454e20e4cbaf744317ff62 weak [file ".gitattributes"] url = https://github.com/devlooped/oss/blob/main/.gitattributes - sha = 5f92a68e302bae675b394ef343114139c075993e - etag = 338ba6d92c8d1774363396739c2be4257bfc58026f4b0fe92cb0ae4460e1eff7 + sha = 4a9aa321c4982b83c185cf8dffed181ff84667d5 + etag = 09cad18280ed04b67f7f87591e5481510df04d44c3403231b8af885664d8fd58 weak [file ".github/dependabot.yml"] url = https://github.com/devlooped/oss/blob/main/.github/dependabot.yml - sha = 917ff5486e25bec90038e7ab6d146fd82c61f846 - etag = 50bf50df5a6eeb1705baea50f4c6e06d167a89cb5a590887ff939bd4120bd442 + sha = e733294084fb3e75d517a2e961e87df8faae7dc6 + etag = 3bf8d9214a15c049ca5cfe80d212a8cbe4753b8a638a9804ef73d34c7def9618 weak [file ".github/release.yml"] url = https://github.com/devlooped/oss/blob/main/.github/release.yml @@ -46,8 +46,8 @@ weak [file ".github/workflows/includes.yml"] url = https://github.com/devlooped/oss/blob/main/.github/workflows/includes.yml - sha = 85829f2510f335f4a411867f3dbaaa116c3ab3de - etag = 086f6b6316cc6ea7089c0dcc6980be519e6ed6e6201e65042ef41b82634ec0ee + sha = 26e8cb798ce72dec7072db826cc9694d456797bd + etag = df06492eeb2daaae4168d71bbb643f5da2693b67cdd58c42ffa44a191ee99b69 weak [file ".github/workflows/publish.yml"] url = https://github.com/devlooped/oss/blob/main/.github/workflows/publish.yml @@ -57,8 +57,8 @@ skip [file ".gitignore"] url = https://github.com/devlooped/oss/blob/main/.gitignore - sha = e0be248fff1d39133345283b8227372b36574b75 - etag = c449ec6f76803e1891357ca2b8b4fcb5b2e5deeff8311622fd92ca9fbf1e6575 + sha = 3776526342afb3f57da7e80f2095e5fdca3c31c9 + etag = 11767f73556aa4c6c8bcc153b77ee8e8114f99fa3b885b0a7d66d082f91e77b3 weak [file "Directory.Build.rsp"] url = https://github.com/devlooped/oss/blob/main/Directory.Build.rsp @@ -77,13 +77,13 @@ weak [file "src/Directory.Build.props"] url = https://github.com/devlooped/oss/blob/main/src/Directory.Build.props - sha = 2fff747a9673b499c99f2da183cdd5263fdc9333 - etag = 0fccddf04f282fe98122ab2610dc2972c205a521254559bf013655c6271b0017 + sha = c509be4378ff6789df4f66338cb88119453c0975 + etag = cbbdc1a4d3030f353f3e5306a6c380238dd4ed0945aad2d56ba87b49fcfcd66d weak [file "src/Directory.Build.targets"] url = https://github.com/devlooped/oss/blob/main/src/Directory.Build.targets - sha = a8b208093599263b7f2d1fe3854634c588ea5199 - etag = 19087699f05396205e6b050d999a43b175bd242f6e8fac86f6df936310178b03 + sha = 4339749ef4b8f66def75931df09ef99c149f8421 + etag = 8b4492765755c030c4c351e058a92f53ab493cab440c1c0ef431f6635c4dae0e weak [file ".github/workflows/dotnet-file-core.yml"] url = https://github.com/devlooped/oss/blob/main/.github/workflows/dotnet-file-core.yml @@ -104,3 +104,8 @@ sha = f2b690ce307acb76c5b8d7faec1a5b971a93653e etag = 27ea11baa2397b3ec9e643a935832da97719c4e44215cfd135c49cad4c29373f weak +[file ".github/workflows/dotnet-env.yml"] + url = https://github.com/devlooped/oss/blob/main/.github/workflows/dotnet-env.yml + sha = 77e83f238196d2723640abef0c7b6f43994f9747 + etag = fcb9759a96966df40dcd24906fd328ddec05953b7e747a6bb8d0d1e4c3865274 + weak diff --git a/readme.md b/readme.md index 77e9605..2aee3cf 100644 --- a/readme.md +++ b/readme.md @@ -28,22 +28,25 @@ Results: ``` -BenchmarkDotNet v0.14.0, Windows 11 (10.0.22631.4890/23H2/2023Update/SunValley3) +BenchmarkDotNet v0.14.0, Windows 11 (10.0.26100.3775) Intel Core i9-10900T CPU 1.90GHz, 1 CPU, 20 logical and 10 physical cores -.NET SDK 9.0.200 - [Host] : .NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2 - DefaultJob : .NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2 +.NET SDK 9.0.201 + [Host] : .NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2 + DefaultJob : .NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2 ``` -| Method | Client | Provider | Model | Mean | Error | StdDev | Median | -|------- |---------------- |--------- |------------ |---------:|---------:|----------:|---------:| -| **Chat** | **aai-gpt-4o** | **Azure AI** | **gpt-4o** | **20.170 s** | **6.4958 s** | **19.1529 s** | **13.888 s** | -| **Chat** | **aai-gpt-4o-mini** | **Azure AI** | **gpt-4o-mini** | **20.221 s** | **5.3235 s** | **15.6966 s** | **18.061 s** | -| **Chat** | **oai-gpt-4o** | **OpenAI** | **gpt-4o** | **2.387 s** | **0.1910 s** | **0.5540 s** | **2.269 s** | -| **Chat** | **oai-gpt-4o-mini** | **OpenAI** | **gpt-4o-mini** | **2.620 s** | **0.1723 s** | **0.4859 s** | **2.573 s** | -| **Chat** | **xai-grok-2** | **xAI** | **grok-2** | **1.876 s** | **0.1525 s** | **0.4447 s** | **1.770 s** | -| **Chat** | **xai-grok-beta** | **xAI** | **grok-beta** | **1.661 s** | **0.1001 s** | **0.2919 s** | **1.655 s** | +| Method | Client | Provider | Model | Mean | Error | StdDev | Median | +|------- |--------------------- |--------- |----------------- |---------:|---------:|----------:|--------:| +| **Chat** | **aai-gpt-4o** | **Azure AI** | **gpt-4o** | **20.181 s** | **7.8701 s** | **23.2052 s** | **5.630 s** | +| **Chat** | **aai-gpt-4o-mini** | **Azure AI** | **gpt-4o-mini** | **20.171 s** | **6.6035 s** | **19.4707 s** | **9.726 s** | +| **Chat** | **oai-gpt-4o** | **OpenAI** | **gpt-4o** | **2.013 s** | **0.1394 s** | **0.4000 s** | **1.937 s** | +| **Chat** | **oai-gpt-4o-mini** | **OpenAI** | **gpt-4o-mini** | **2.930 s** | **0.1641 s** | **0.4736 s** | **2.916 s** | +| **Chat** | **xai-grok-3-beta** | **xAI** | **grok-3-beta** | **NA** | **NA** | **NA** | **NA** | +| **Chat** | **xai-grok-3-mini-beta** | **xAI** | **grok-3-mini-beta** | **5.666 s** | **0.2034 s** | **0.5964 s** | **5.699 s** | + +Benchmarks with issues: + ModelPerformance.Chat: DefaultJob [Client=xai-grok-3-beta] diff --git a/src/Directory.Build.props b/src/Directory.Build.props index b0b9d94..352da32 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -20,6 +20,7 @@ Daniel Cazzulino + Devlooped Copyright (C) Daniel Cazzulino and Contributors. All rights reserved. false MIT @@ -126,6 +127,8 @@ <_VersionLabel>$(_VersionLabel.Replace('/merge', '')) <_VersionLabel>$(_VersionLabel.Replace('/', '-')) + + <_VersionLabel>$(_VersionLabel.Replace('_', '-')) $(_VersionLabel) diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 6232750..083afa6 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -165,6 +165,9 @@ @(_GitSourceRoot) + + $([System.IO.Path]::GetFileNameWithoutExtension($(PrivateRepositoryUrl))) + $(ProductFromUrl) @@ -175,9 +178,9 @@ Condition="'$(SourceControlInformationFeatureSupported)' == 'true' And '$(IsPackable)' == 'true'"> - $(RepositoryUrl) + $(RepositoryUrl.Replace('.git', '')) $(Description) - $(RepositoryUrl)/blob/main/changelog.md + $(RepositoryUrl.Replace('.git', ''))/blob/main/changelog.md