Skip to content

Remove-providers#6

Merged
hpractv merged 69 commits into
mainfrom
remove-providers
May 10, 2026
Merged

Remove-providers#6
hpractv merged 69 commits into
mainfrom
remove-providers

Conversation

@hpractv

@hpractv hpractv commented May 6, 2026

Copy link
Copy Markdown
Owner

House keeping and updating of this project.

Ci/CD, Name space and pacakge mgmt, and pckage updates.

hpractv and others added 30 commits May 5, 2026 18:34
Moved analyticsLibrary, analyticsLibraryInstaller, and release files into src/. Updated Analytics Library.sln to reference new project paths and verified the solution builds (dotnet build -c Release). Warnings about some provider packages remain and will be addressed in later epic work.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Moved analyticsLibrary, analyticsLibraryInstaller, and release files into src/ and updated solution paths.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…pace

Move the static dataTypeFromString method from sqlDb into a new
dataTypeHelper class in analyticsLibrary.library so that hadoop.cs
can use it without depending on the SQL Server provider class.
Update hadoop.cs to call dataTypeHelper.dataTypeFromString and
remove the analyticsLibrary.dbObjects using directive.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nalyticsLibrary.library helper

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Removed SQL Server, Oracle, SAS, and Sybase provider implementation files and cleaned csproj/App.config/suppressions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… removal

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ata.Odbc package reference

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…lot <223556219+Copilot@users.noreply.github.com>
…nd related config; update tags and helpers

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Created SDK-style projects under src/*, moved source files into package folders, updated namespaces and usings, added package metadata and project references, and produced 2.0.0 packages.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ering\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… typedIndex to remove dependency on Algorithms

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ows, README and metadata

- Add Directory.Packages.props for centralized package version management
- Remove legacy artifacts (App.config, GlobalSuppressions.cs, packages.config, empty folders) from src/analyticsLibrary metapackage
- Add xUnit test projects for Core (32 tests), Statistics (14 tests), Algorithms (12 tests)
- Add CI workflow (.github/workflows/ci.yml): build, test, pack, beta publish on PRs
- Add release workflow (.github/workflows/release.yml): build, test, pack, deploy via nuget-release environment
- Rewrite README.md with badges, package overview, namespace reference, quick starts, functionality docs, migration guide
- Update NuGet metadata for all packages: Description, PackageTags, PackageReleaseNotes, PackageReadmeFile, Copyright

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Fix duplicate AQ/AP values and adjust enum values to AQ=43..AZ=52
- Rename sheetColumnAttrubte -> sheetColumnAttribute and update references
- Change extensions.rowValue to throw columnNotFoundException for missing fields
- Add tests project tests/analyticsLibrary.Excel.Tests with tests for enum, columnNumber, sheetColumnAttribute, rowValue, EPPlus roundtrip, and getExcelSheetName

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…d-trip and Excel helpers\n\nFixes: ensure Excel enum and attribute regressions are covered in tests\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…t tests for analyticsLibrary.Excel: enum values, extension helpers, sheetColumnAttribute behavior, DataRow rowValue reflection, EPPlus in-memory round-trip, and getExcelSheetName behavior.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…; fix central package references in test csproj\n\n- Add Excel-focused unit tests validating enum, extensions, EPPlus round-trip, and sheet name behavior\n- Remove explicit package Version attributes to align with Directory.Packages.props central package management\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
hpractv and others added 16 commits May 8, 2026 16:32
…o-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…FromNpoiSheet and getWorkbookSheetDatasets stream/file overloads\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ndency in tests csproj

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…pilot <223556219+Copilot@users.noreply.github.com>
…d SetCellReferences call\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…sing source MemoryStream\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…EPPlus from test project

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…xcel 3.0.0 and clarify Excel file operations; refactor Excel reading methods to use FOSS dependencies
…kage-impacting changes

- Updated analyticsLibrary.Excel version to 3.0.1, addressing security advisories by pinning transitive dependencies (System.Security.Cryptography.Xml 8.0.3 and SixLabors.ImageSharp 2.1.11).
- Enhanced CI workflows to include a job for detecting package-impacting changes, improving the build process by conditionally packing only modified projects.
Copilot AI review requested due to automatic review settings May 9, 2026 03:36

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 78 out of 93 changed files in this pull request and generated 7 comments.

Comments suppressed due to low confidence (2)

src/analyticsLibrary.Excel/extensions.cs:20

  • autoSizeColumns(this object workbook) uses dynamic and calls sheet.autoSizeColumns(), but there is no sheet-level implementation in this library. As written this will throw a RuntimeBinderException at runtime for NPOI (and even for EPPlus) sheets; either remove this API (per Excel 3.x breaking changes) or reimplement it against concrete NPOI types.
    src/analyticsLibrary.Excel/extensions.cs:44
  • numberFormatRow/Column (and the plural helpers) are now object+dynamic based and assume an EPPlus-like API surface (Row(...).Style.Numberformat..., Column(...).Style...). Since EPPlus types were removed, these methods will fail at runtime for NPOI sheets; consider removing them or providing NPOI-specific formatting helpers with concrete types.

Comment on lines +558 to +563
private static void AssertXlsxExtension(string fileName)
{
var ext = Path.GetExtension(fileName)?.ToLowerInvariant();
if (ext == ".xlsb")
throw new NotSupportedException("Writing .xlsb is not supported. Use .xlsx instead.");
}
Comment on lines +74 to +82
public static DataTable getSheetData(string fileName, int sheetNumber, int? skipRows = null)
{
var data = getSheetData(fileName);
if (data.Tables.Count < sheetNumber)
{
throw new ApplicationException("Sheet number does not exist for this dataset.");
}
return data.Tables[sheetNumber];
}
Comment on lines +91 to +97
if (skipRows != null)
{
var skip = returnTable.Rows.Cast<DataRow>()
.Take((int)skipRows)
.ToArray();
var header = skip.Last();
for (var i = 0; i < returnTable.Columns.Count; i++)
Comment thread README.md Outdated
- `analytics` — `compress()`, `titleCase()`, `wordReplace()` string extension methods.
- `extensions.fromSasEpochDate()` — parses a SAS datetime string in `ddMMMyyyy:hh:mm:ss.fff` format.

### Excel (`analyticsLibrary.Excel`, Windows)
Comment thread .github/workflows/ci.yml Outdated
Comment on lines +119 to +159
- name: Compute version
id: version
run: |
if [ "${{ github.event_name }}" = "pull_request" ]; then
VERSION="2.0.0-beta.pr-${{ github.event.pull_request.number }}.${{ github.run_number }}"
else
VERSION="2.0.0"
fi
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT

- name: Pack
run: |
mkdir -p ./artifacts
PACKED=0

if [ "${{ needs.changes.outputs.core_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Core/analyticsLibrary.Core.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.algorithms_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Algorithms/analyticsLibrary.Algorithms.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.statistics_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Statistics/analyticsLibrary.Statistics.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.excel_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Excel/analyticsLibrary.Excel.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.access_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Access/analyticsLibrary.Access.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.hadoop_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Hadoop/analyticsLibrary.Hadoop.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.root_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary/analyticsLibrary.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
Comment thread .test-output.txt Outdated
Comment on lines +1 to +61
Determining projects to restore...
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Statistics.Tests/analyticsLibrary.Statistics.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Core.Tests/analyticsLibrary.Core.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Excel/analyticsLibrary.Excel.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Algorithms.Tests/analyticsLibrary.Algorithms.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Statistics/analyticsLibrary.Statistics.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Core/analyticsLibrary.Core.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary/analyticsLibrary.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Hadoop/analyticsLibrary.Hadoop.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Algorithms/analyticsLibrary.Algorithms.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Access/analyticsLibrary.Access.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Excel.Tests/analyticsLibrary.Excel.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices [/Users/hpractv/github/hpractv/analyticsLibrary/Analytics Library.sln]
All projects are up-to-date for restore.
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Core.Tests/analyticsLibrary.Core.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Excel.Tests/analyticsLibrary.Excel.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Algorithms.Tests/analyticsLibrary.Algorithms.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Statistics.Tests/analyticsLibrary.Statistics.Tests.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Core/analyticsLibrary.Core.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Excel/analyticsLibrary.Excel.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Algorithms/analyticsLibrary.Algorithms.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Statistics/analyticsLibrary.Statistics.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
analyticsLibrary.Core -> /Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Core/bin/Release/net8.0/analyticsLibrary.Core.dll
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Core/analyticsLibrary.Core.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
analyticsLibrary.Algorithms -> /Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Algorithms/bin/Release/net8.0/analyticsLibrary.Algorithms.dll
analyticsLibrary.Statistics -> /Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Statistics/bin/Release/net8.0/analyticsLibrary.Statistics.dll
analyticsLibrary.Excel -> /Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Excel/bin/Release/net8.0/analyticsLibrary.Excel.dll
analyticsLibrary.Core.Tests -> /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Core.Tests/bin/Release/net8.0/analyticsLibrary.Core.Tests.dll
Test run for /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Core.Tests/bin/Release/net8.0/analyticsLibrary.Core.Tests.dll (.NETCoreApp,Version=v8.0)
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Algorithms/analyticsLibrary.Algorithms.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Statistics/analyticsLibrary.Statistics.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
/Users/hpractv/github/hpractv/analyticsLibrary/src/analyticsLibrary.Excel/analyticsLibrary.Excel.csproj : warning NU1507: There are 7 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: nuget.org, im-client, im-customer-engagement, im-enrollment, im-funding, im-platform, im-practices
VSTest version 18.0.1 (arm64)

Starting test execution, please wait...
analyticsLibrary.Algorithms.Tests -> /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Algorithms.Tests/bin/Release/net8.0/analyticsLibrary.Algorithms.Tests.dll
A total of 1 test files matched the specified pattern.
Test run for /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Algorithms.Tests/bin/Release/net8.0/analyticsLibrary.Algorithms.Tests.dll (.NETCoreApp,Version=v8.0)
analyticsLibrary.Statistics.Tests -> /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Statistics.Tests/bin/Release/net8.0/analyticsLibrary.Statistics.Tests.dll
Test run for /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Statistics.Tests/bin/Release/net8.0/analyticsLibrary.Statistics.Tests.dll (.NETCoreApp,Version=v8.0)
VSTest version 18.0.1 (arm64)

VSTest version 18.0.1 (arm64)

Starting test execution, please wait...
Starting test execution, please wait...
A total of 1 test files matched the specified pattern.
A total of 1 test files matched the specified pattern.

Passed! - Failed: 0, Passed: 32, Skipped: 0, Total: 32, Duration: 17 ms - analyticsLibrary.Core.Tests.dll (net8.0)


Passed! - Failed: 0, Passed: 14, Skipped: 0, Total: 14, Duration: 16 ms - analyticsLibrary.Statistics.Tests.dll (net8.0)
Passed! - Failed: 0, Passed: 12, Skipped: 0, Total: 12, Duration: 17 ms - analyticsLibrary.Algorithms.Tests.dll (net8.0)
analyticsLibrary.Excel.Tests -> /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Excel.Tests/bin/Release/net8.0/analyticsLibrary.Excel.Tests.dll
Test run for /Users/hpractv/github/hpractv/analyticsLibrary/tests/analyticsLibrary.Excel.Tests/bin/Release/net8.0/analyticsLibrary.Excel.Tests.dll (.NETCoreApp,Version=v8.0)
VSTest version 18.0.1 (arm64)

Starting test execution, please wait...
A total of 1 test files matched the specified pattern.

Passed! - Failed: 0, Passed: 7, Skipped: 0, Total: 7, Duration: 79 ms - analyticsLibrary.Excel.Tests.dll (net8.0)
Comment on lines +137 to +190
- name: Compute release version
id: version
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
VERSION="${{ github.event.inputs.version }}"
else
# Strip the leading 'v' from tag name (e.g. v2.0.0 -> 2.0.0)
VERSION="${GITHUB_REF_NAME#v}"
fi
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
echo "Release version: $VERSION"

- name: Restore
run: dotnet restore

- name: Build
run: dotnet build -c Release --no-restore

- name: Test
run: dotnet test -c Release --no-build --verbosity normal

- name: Pack
run: |
mkdir -p ./artifacts
PACKED=0

if [ "${{ needs.changes.outputs.core_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Core/analyticsLibrary.Core.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.algorithms_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Algorithms/analyticsLibrary.Algorithms.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.statistics_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Statistics/analyticsLibrary.Statistics.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.excel_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Excel/analyticsLibrary.Excel.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.access_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Access/analyticsLibrary.Access.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.hadoop_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary.Hadoop/analyticsLibrary.Hadoop.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
if [ "${{ needs.changes.outputs.root_changed }}" = "true" ]; then
dotnet pack src/analyticsLibrary/analyticsLibrary.csproj -c Release --no-build -p:Version=${{ steps.version.outputs.VERSION }} -o ./artifacts
PACKED=$((PACKED+1))
fi
Copilot AI and others added 2 commits May 9, 2026 05:48
…-warnings

Rename single-letter generic type parameters to clear CS8981 warnings
@hpractv

hpractv commented May 9, 2026

Copy link
Copy Markdown
Owner Author

@copilot apply changes based on the comments in this thread

…unds/skipRows, README, CI/release versioning

Agent-Logs-Url: https://github.com/hpractv/analyticsLibrary/sessions/f706ad15-3c96-4857-86ad-85073bd0dd9a

Co-authored-by: hpractv <13870231+hpractv@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 9, 2026 12:23
@hpractv hpractv removed the request for review from Copilot May 9, 2026 12:23

Copilot AI commented May 9, 2026

Copy link
Copy Markdown
Contributor

@copilot apply changes based on the comments in this thread

Applied all changes from the review thread in commit 1d58088:

  • .test-output.txt — removed from the repo (was a local test log artifact).
  • AssertXlsxExtension — now rejects any extension that is not .xlsx, preventing silent misuse with .xls or other formats.
  • getSheetData(string, int, int?) — fixed bounds check from < to <= (prevented index out-of-range) and now applies skipRows the same way the string-name overload does.
  • getSheetData(string, string, int?) — added skipRows > 0 guard so passing skipRows=0 no longer throws InvalidOperationException via Last().
  • README.md — removed the incorrect "Windows" label from the Excel section (uses cross-platform NPOI/ExcelDataReader).
  • ci.yml — replaced the hard-coded 2.0.0 version override with per-package version read from each .csproj; PR builds append -beta.pr-{N}.{run} per package.
  • release.yml — removed the single -p:Version=... override so each package is packed with its own <Version> (e.g. Excel stays at 3.0.1).

Four new xUnit tests cover the fixed behaviors. All 87 tests pass.

Copilot finished work on behalf of hpractv May 9, 2026 12:25
@hpractv hpractv merged commit 7ab9066 into main May 10, 2026
3 checks passed
@hpractv hpractv deleted the remove-providers branch May 10, 2026 14:33
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.

3 participants