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

Enhances GitHub Actions workflows by adding a benchmarking workflow for .NET 8 and 9, updating existing workflows, and including a new benchmark project. #78

Merged
merged 1 commit into from
Dec 28, 2024

Conversation

shinji-san
Copy link
Owner

This pull request includes several changes to the GitHub Actions workflows, the solution file, and the addition of benchmarking for the LuhnDotNet project. The most important changes include the addition of a new benchmarking workflow, updates to existing workflows, and the inclusion of a new benchmark project in the solution.

GitHub Actions Workflows:

  • Added a new workflow to run Benchmark.Net for LuhnDotNet, which includes setting up .NET 8 and .NET 9, running the benchmark project, and storing the benchmark results. This workflow is named LuhnDotNet - Benchmark.Net (.github/workflows/benchmarkdotnet.yml).
  • Updated the docfx-build-and-publish.yml workflow to trigger on the completion of the LuhnDotNet - Benchmark.Net workflow, set up .NET 9, update and run docfx, and copy benchmark results to the _site directory for publishing (.github/workflows/docfx-build-and-publish.yml). [1] [2] [3]
  • Renamed existing workflows for better clarity:
    • LuhnDotNet (All supported TFM) to LuhnDotNet - Build and Test All .NET Versions (.github/workflows/dotnetall.yml).
    • LuhnDotNet NuGet to LuhnDotNet - NuGet Publishing (.github/workflows/publishing.yml).
    • CodeQL to LuhnDotNet - CodeQL (.github/workflows/codeql-analysis.yml).

Solution File:

  • Added the LuhnDotNetBenchmark project to the solution file LuhnDotNet.sln to include the new benchmark project (LuhnDotNet.sln). [1] [2]

Benchmark Project:

  • Added a new benchmark project LuhnDotNetBenchmark with benchmarks for computing and validating Luhn numbers using both string and span inputs (benchmark/LuhnDotNetBenchmark.cs, benchmark/LuhnDotNetBenchmark.csproj, benchmark/Program.cs). [1] [2] [3]

Documentation:

  • Updated the table of contents to include a link to the benchmark results (toc.yml).

Introduce a new benchmark project to measure Luhn algorithm performance using BenchmarkDotNet.
Integrated the benchmarking setup into the solution, added GitHub Actions workflow for automated runs, and updated `.gitignore` to include BenchmarkDotNet artifacts.

Resolves: No entry
@shinji-san shinji-san self-assigned this Dec 28, 2024
@shinji-san shinji-san merged commit 545ae03 into develop Dec 28, 2024
8 of 9 checks passed
@shinji-san shinji-san deleted the feature-Benchmark branch December 28, 2024 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant