From c7492863d4adfe20cb9780054bbd5d9c25056520 Mon Sep 17 00:00:00 2001 From: HadenSmith Date: Wed, 17 Jun 2026 15:37:38 -0600 Subject: [PATCH 1/2] Prepare clean v2.1.1 JOSS release --- .github/workflows/Release.yml | 48 ++++++++++++++++++++++++++++------ .github/workflows/Snapshot.yml | 3 ++- CITATION.cff | 20 +++++++------- Numerics/Numerics.csproj | 11 ++++---- README.md | 6 ++--- codemeta.json | 24 ++++++++++------- 6 files changed, 76 insertions(+), 36 deletions(-) diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml index 70f44c38..872ae7fa 100644 --- a/.github/workflows/Release.yml +++ b/.github/workflows/Release.yml @@ -7,11 +7,43 @@ on: jobs: build: - uses: HydrologicEngineeringCenter/dotnet-workflows/.github/workflows/release.yml@main - with: - dotnet-version: '10.0.x' - project-names: 'Numerics' - run-tests: true - nuget-source: 'https://www.hec.usace.army.mil/nexus/repository/consequences-nuget-public/' - secrets: - NUGET_API_KEY: ${{ secrets.NEXUS_NUGET_APIKEY }} + runs-on: windows-latest + timeout-minutes: 90 + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup .NET SDKs + uses: actions/setup-dotnet@v4 + with: + dotnet-version: | + 8.0.x + 9.0.x + 10.0.x + + - name: Create version number + shell: pwsh + run: | + $TAG = $env:GITHUB_REF -replace 'refs/tags/', '' + $VERSION = $TAG -replace '^v', '' + echo "VERSION=$VERSION" >> $env:GITHUB_ENV + + - name: Build + shell: pwsh + run: dotnet build Numerics/Numerics.csproj -c Release /p:Version=$env:VERSION + + - name: Test + env: + VSTEST_CONNECTION_TIMEOUT: '600' + run: dotnet test -c Release + + - name: Pack + shell: pwsh + run: dotnet pack Numerics/Numerics.csproj --configuration Release /p:Version=$env:VERSION --no-build -o ./packages + + - name: Publish + shell: pwsh + run: dotnet nuget push "**/*.nupkg" --api-key ${{ secrets.NEXUS_NUGET_APIKEY }} --source "https://www.hec.usace.army.mil/nexus/repository/consequences-nuget-public/" --skip-duplicate diff --git a/.github/workflows/Snapshot.yml b/.github/workflows/Snapshot.yml index e2f56de1..f7894141 100644 --- a/.github/workflows/Snapshot.yml +++ b/.github/workflows/Snapshot.yml @@ -10,7 +10,8 @@ jobs: with: dotnet-version: '10.0.x' project-names: 'Numerics' - version: '2.0.0' + # Snapshot workflow appends .-dev, so this tracks the next development patch after v2.1.1. + version: '2.1.2' # PR integration already runs the full multi-target test suite. run-tests: false nuget-source: 'https://www.hec.usace.army.mil/nexus/repository/consequences-nuget-public/' diff --git a/CITATION.cff b/CITATION.cff index 8b4510cb..aecc982d 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -1,11 +1,11 @@ cff-version: 1.2.0 message: "If you use this software, please cite it as below." type: software -title: "Numerics" -version: "2.0.0" -date-released: "2026-03-08" +title: "Numerics: A .NET Library for Numerical Computing, Statistical Analysis, and Risk Assessment" +version: "2.1.1" +date-released: "2026-06-17" license: 0BSD -doi: "10.5281/zenodo.19444369" +doi: "10.5281/zenodo.19444368" repository-code: "https://github.com/USACE-RMC/Numerics" url: "https://github.com/USACE-RMC/Numerics" abstract: >- @@ -27,25 +27,25 @@ authors: - family-names: "Smith" given-names: "C. Haden" email: "cole.h.smith@usace.army.mil" - affiliation: "U.S. Army Corps of Engineers, Risk Management Center" + affiliation: "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" orcid: "https://orcid.org/0000-0002-4651-9890" - family-names: "Fields" given-names: "Woodrow L." - affiliation: "U.S. Army Corps of Engineers, Risk Management Center" + affiliation: "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" orcid: "https://orcid.org/0009-0008-7454-5552" - family-names: "Gonzalez" given-names: "Julian" - affiliation: "U.S. Army Corps of Engineers, Risk Management Center" + affiliation: "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" orcid: "https://orcid.org/0009-0009-9058-7653" - family-names: "Niblett" given-names: "Sadie" - affiliation: "U.S. Army Corps of Engineers, Risk Management Center" + affiliation: "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" orcid: "https://orcid.org/0009-0008-8588-4816" - family-names: "Beam" given-names: "Brennan" - affiliation: "U.S. Army Corps of Engineers, Hydrologic Engineering Center" + affiliation: "U.S. Army Corps of Engineers, Hydrologic Engineering Center, Davis, California, USA" orcid: "https://orcid.org/0009-0003-0515-3727" - family-names: "Skahill" given-names: "Brian" - affiliation: "Fariborz Maseeh Department of Mathematics and Statistics, Portland State University" + affiliation: "Fariborz Maseeh Department of Mathematics and Statistics, Portland State University, Portland, Oregon, USA" orcid: "https://orcid.org/0000-0002-2164-0301" diff --git a/Numerics/Numerics.csproj b/Numerics/Numerics.csproj index f5bdcb18..e7bc64f0 100644 --- a/Numerics/Numerics.csproj +++ b/Numerics/Numerics.csproj @@ -7,7 +7,8 @@ true embedded - Numerics is a free and open-source library for .NET developed by USACE-RMC, providing a comprehensive set of methods and algorithms for numerical computations and statistical analysis. + Numerics is a free and open-source .NET library developed by USACE-RMC, providing numerical methods, probability distributions, statistical analysis, optimization, machine learning, and Bayesian inference tools for quantitative risk assessment in water resources engineering. + C. Haden Smith; Woodrow L. Fields; Julian Gonzalez; Sadie Niblett; Brennan Beam; Brian Skahill https://github.com/USACE-RMC/Numerics https://github.com/USACE-RMC/Numerics git @@ -15,7 +16,7 @@ False USACE-RMC README.md - interpolation; regression; statistics; machine learning; probability distributions; bootstrap analysis; distribution fitting; Bayesian MCMC sampling; optimization; + numerical methods;statistics;probability distributions;hydrology;flood frequency analysis;copulas;L-moments;optimization;machine learning;Bayesian inference;MCMC;risk assessment 0BSD False RMC.Numerics @@ -29,9 +30,9 @@ CS1587 - 2.0.0 - This major update delivers broad improvements across the entire Numerics library, with substantial enhancements to data analysis, statistical modeling, numerical methods, distributions, optimization, machine learning utilities, and overall performance and reliability. The update reflects over a year of incremental development, code modernization, and refinement. - 2.0.0.0 + 2.1.1 + Version 2.1.1 is a metadata and release-process update for the JOSS publication. It refreshes citation, CodeMeta, README, and NuGet package metadata; increases the VSTest connection timeout in the release workflow; and does not change the public API. + 2.1.1.0 diff --git a/README.md b/README.md index 0fa3363f..a2b29182 100644 --- a/README.md +++ b/README.md @@ -2,10 +2,10 @@ [![CI](https://github.com/USACE-RMC/Numerics/actions/workflows/Integration.yml/badge.svg)](https://github.com/USACE-RMC/Numerics/actions/workflows/Integration.yml) [![NuGet](https://img.shields.io/nuget/v/RMC.Numerics)](https://www.nuget.org/packages/RMC.Numerics/) -[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.19444369.svg)](https://doi.org/10.5281/zenodo.19444369) +[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.19444368.svg)](https://doi.org/10.5281/zenodo.19444368) [![License: 0BSD](https://img.shields.io/badge/License-0BSD-blue.svg)](LICENSE) -***Numerics*** is a free and open-source numerical computing library for .NET developed by the U.S. Army Corps of Engineers Risk Management Center (USACE-RMC). It provides methods and algorithms for probability distributions, statistical analysis, numerical methods, optimization, machine learning, and Bayesian MCMC sampling — with a focus on hydrological and risk assessment applications. +***Numerics*** is a free and open-source numerical computing library for .NET developed by the U.S. Army Corps of Engineers Risk Management Center (USACE-RMC). It provides methods and algorithms for probability distributions, statistical analysis, numerical methods, optimization, machine learning, and Bayesian MCMC sampling - with a focus on hydrological and risk assessment applications. ## Supported Frameworks @@ -22,7 +22,7 @@ Or search for [RMC.Numerics](https://www.nuget.org/packages/RMC.Numerics/) in th ## Documentation -**[User Guide and API Documentation](docs/index.md)** — Comprehensive documentation with code examples and mathematical explanations. +**[User Guide and API Documentation](docs/index.md)** - Comprehensive documentation with code examples and mathematical explanations. | Section | Topics | |---------|--------| diff --git a/codemeta.json b/codemeta.json index f6721f2c..7514cb7a 100644 --- a/codemeta.json +++ b/codemeta.json @@ -1,11 +1,13 @@ { "@context": "https://doi.org/10.5063/schema/codemeta-2.0", "@type": "SoftwareSourceCode", - "name": "Numerics", + "name": "Numerics: A .NET Library for Numerical Computing, Statistical Analysis, and Risk Assessment", + "alternateName": "Numerics", "description": "A free and open-source .NET library providing numerical methods, probability distributions, statistical analysis, and Bayesian inference tools for quantitative risk assessment in water resources engineering.", - "version": "2.0.0", + "version": "2.1.1", + "identifier": "https://doi.org/10.5281/zenodo.19444368", "dateCreated": "2023-09-28", - "dateModified": "2026-03-08", + "dateModified": "2026-06-17", "license": "https://spdx.org/licenses/0BSD", "codeRepository": "https://github.com/USACE-RMC/Numerics", "issueTracker": "https://github.com/USACE-RMC/Numerics/issues", @@ -40,43 +42,47 @@ "@id": "https://orcid.org/0000-0002-4651-9890", "affiliation": { "@type": "Organization", - "name": "U.S. Army Corps of Engineers, Risk Management Center" + "name": "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" } }, { "@type": "Person", "givenName": "Woodrow L.", "familyName": "Fields", + "@id": "https://orcid.org/0009-0008-7454-5552", "affiliation": { "@type": "Organization", - "name": "U.S. Army Corps of Engineers, Risk Management Center" + "name": "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" } }, { "@type": "Person", "givenName": "Julian", "familyName": "Gonzalez", + "@id": "https://orcid.org/0009-0009-9058-7653", "affiliation": { "@type": "Organization", - "name": "U.S. Army Corps of Engineers, Risk Management Center" + "name": "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" } }, { "@type": "Person", "givenName": "Sadie", "familyName": "Niblett", + "@id": "https://orcid.org/0009-0008-8588-4816", "affiliation": { "@type": "Organization", - "name": "U.S. Army Corps of Engineers, Risk Management Center" + "name": "U.S. Army Corps of Engineers, Risk Management Center, Lakewood, Colorado, USA" } }, { "@type": "Person", "givenName": "Brennan", "familyName": "Beam", + "@id": "https://orcid.org/0009-0003-0515-3727", "affiliation": { "@type": "Organization", - "name": "U.S. Army Corps of Engineers, Hydrologic Engineering Center" + "name": "U.S. Army Corps of Engineers, Hydrologic Engineering Center, Davis, California, USA" } }, { @@ -86,7 +92,7 @@ "@id": "https://orcid.org/0000-0002-2164-0301", "affiliation": { "@type": "Organization", - "name": "Fariborz Maseeh Department of Mathematics and Statistics, Portland State University" + "name": "Fariborz Maseeh Department of Mathematics and Statistics, Portland State University, Portland, Oregon, USA" } } ], From 1545ad180fa59f58e55c796b3e059c731b3346cb Mon Sep 17 00:00:00 2001 From: HadenSmith Date: Wed, 17 Jun 2026 15:45:33 -0600 Subject: [PATCH 2/2] Avoid hard-coded Zenodo concept DOI --- CITATION.cff | 1 - README.md | 2 +- codemeta.json | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index aecc982d..247e5c19 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -5,7 +5,6 @@ title: "Numerics: A .NET Library for Numerical Computing, Statistical Analysis, version: "2.1.1" date-released: "2026-06-17" license: 0BSD -doi: "10.5281/zenodo.19444368" repository-code: "https://github.com/USACE-RMC/Numerics" url: "https://github.com/USACE-RMC/Numerics" abstract: >- diff --git a/README.md b/README.md index a2b29182..86365569 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![CI](https://github.com/USACE-RMC/Numerics/actions/workflows/Integration.yml/badge.svg)](https://github.com/USACE-RMC/Numerics/actions/workflows/Integration.yml) [![NuGet](https://img.shields.io/nuget/v/RMC.Numerics)](https://www.nuget.org/packages/RMC.Numerics/) -[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.19444368.svg)](https://doi.org/10.5281/zenodo.19444368) +[![DOI](https://zenodo.org/badge/697446868.svg)](https://zenodo.org/badge/latestdoi/697446868) [![License: 0BSD](https://img.shields.io/badge/License-0BSD-blue.svg)](LICENSE) ***Numerics*** is a free and open-source numerical computing library for .NET developed by the U.S. Army Corps of Engineers Risk Management Center (USACE-RMC). It provides methods and algorithms for probability distributions, statistical analysis, numerical methods, optimization, machine learning, and Bayesian MCMC sampling - with a focus on hydrological and risk assessment applications. diff --git a/codemeta.json b/codemeta.json index 7514cb7a..72b1eb33 100644 --- a/codemeta.json +++ b/codemeta.json @@ -5,7 +5,6 @@ "alternateName": "Numerics", "description": "A free and open-source .NET library providing numerical methods, probability distributions, statistical analysis, and Bayesian inference tools for quantitative risk assessment in water resources engineering.", "version": "2.1.1", - "identifier": "https://doi.org/10.5281/zenodo.19444368", "dateCreated": "2023-09-28", "dateModified": "2026-06-17", "license": "https://spdx.org/licenses/0BSD",