Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .github/workflows/PublishToNuGet.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Publish to NuGet

on:
workflow_dispatch:

jobs:
publish:
name: Build, Pack, and Publish
runs-on: windows-2022
permissions:
id-token: write # enable GitHub OIDC token issuance for this job

steps:
- name: Checkout repository
uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6

- name: Build projects
shell: pwsh
run: |
Get-ChildItem ./src -Recurse -Filter *.csproj |
ForEach-Object {
dotnet build $_.FullName -c Release
}

- name: Pack projects
shell: pwsh
run: |
Get-ChildItem ./src -Recurse -Filter *.csproj |
ForEach-Object {
dotnet pack $_.FullName -c Release --no-build -o ./packages
}

- name: NuGet login (OIDC → temp API key)
uses: NuGet/login@v1
id: login
with:
user: ${{ secrets.NUGET_USER }}

- name: Push to NuGet
run: dotnet nuget push "**/packages/*.nupkg" --api-key ${{steps.login.outputs.NUGET_API_KEY}} --source "https://api.nuget.org/v3/index.json" --skip-duplicate
35 changes: 23 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,22 @@ jobs:

- name: Build
run: |
dotnet build ./src/System.Linq.Dynamic.Core/System.Linq.Dynamic.Core.csproj -c Release -p:buildType=azure-pipelines-ci
dotnet build ./src/System.Linq.Dynamic.Core/System.Linq.Dynamic.Core.csproj -c Release

- name: Run Tests EFCore net10.0
run: |
dotnet test ./test/System.Linq.Dynamic.Core.Tests/System.Linq.Dynamic.Core.Tests.csproj -c Release -p:buildType=azure-pipelines-ci
dotnet test ./test/System.Linq.Dynamic.Core.Tests/System.Linq.Dynamic.Core.Tests.csproj -c Release

- name: Build and pack projects
shell: pwsh
run: |
Get-ChildItem ./src -Recurse -Filter *.csproj |
ForEach-Object {
dotnet build $_.FullName -c Release
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
dotnet pack $_.FullName -c Release --no-build -o ./packages
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
}

build_and_test_Linux:
name: "Linux: Build and Tests"
Expand All @@ -51,7 +62,7 @@ jobs:

- uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0.x'
dotnet-version: '10.0.x'

- uses: actions/setup-java@v4
with:
Expand Down Expand Up @@ -81,23 +92,23 @@ jobs:

- name: Build
run: |
dotnet build ./src/System.Linq.Dynamic.Core/System.Linq.Dynamic.Core.csproj -c Debug -p:buildType=azure-pipelines-ci
dotnet build ./src/System.Linq.Dynamic.Core/System.Linq.Dynamic.Core.csproj -c Debug

- name: Run Tests EFCore .NET 10 (with Coverage)
run: |
dotnet-coverage collect 'dotnet test ./test/System.Linq.Dynamic.Core.Tests/System.Linq.Dynamic.Core.Tests.csproj --configuration Debug -p:buildType=azure-pipelines-ci' -f xml -o dynamic-coverage-efcore.xml
dotnet-coverage collect 'dotnet test ./test/System.Linq.Dynamic.Core.Tests/System.Linq.Dynamic.Core.Tests.csproj --configuration Debug' -f xml -o dynamic-coverage-efcore.xml

- name: Run Tests EF .NET 10 (with Coverage)
run: |
dotnet-coverage collect 'dotnet test ./test/EntityFramework.DynamicLinq.Tests/EntityFramework.DynamicLinq.Tests.csproj --configuration Debug --framework net10.0 -p:buildType=azure-pipelines-ci' -f xml -o dynamic-coverage-ef.xml
dotnet-coverage collect 'dotnet test ./test/EntityFramework.DynamicLinq.Tests/EntityFramework.DynamicLinq.Tests.csproj --configuration Debug --framework net10.0' -f xml -o dynamic-coverage-ef.xml

- name: Run Tests Newtonsoft.Json .NET 10 (with Coverage)
run: |
dotnet-coverage collect 'dotnet test ./test/System.Linq.Dynamic.Core.NewtonsoftJson.Tests/System.Linq.Dynamic.Core.NewtonsoftJson.Tests.csproj --configuration Debug --framework net10.0 -p:buildType=azure-pipelines-ci' -f xml -o dynamic-coverage-newtonsoftjson.xml
dotnet-coverage collect 'dotnet test ./test/System.Linq.Dynamic.Core.NewtonsoftJson.Tests/System.Linq.Dynamic.Core.NewtonsoftJson.Tests.csproj --configuration Debug --framework net10.0' -f xml -o dynamic-coverage-newtonsoftjson.xml

- name: Run Tests System.Text.Json .NET 10 (with Coverage)
run: |
dotnet-coverage collect 'dotnet test ./test/System.Linq.Dynamic.Core.SystemTextJson.Tests/System.Linq.Dynamic.Core.SystemTextJson.Tests.csproj --configuration Debug --framework net10.0 -p:buildType=azure-pipelines-ci' -f xml -o dynamic-coverage-systemtextjson.xml
dotnet-coverage collect 'dotnet test ./test/System.Linq.Dynamic.Core.SystemTextJson.Tests/System.Linq.Dynamic.Core.SystemTextJson.Tests.csproj --configuration Debug --framework net10.0' -f xml -o dynamic-coverage-systemtextjson.xml

- name: End analysis on SonarCloud
if: ${{ steps.secret-check.outputs.run_analysis == 'true' && (github.event_name != 'workflow_dispatch' || inputs.SonarScanner) }}
Expand Down
4 changes: 2 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -722,7 +722,7 @@

# 1.0.7.13 (29 November 2017)
- [#117](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/117) - New features contributed by [jogibear9988](https://github.com/jogibear9988)
- [#123](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/123) - appveyor contributed by [StefH](https://github.com/StefH)
- [#123](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/123) - CI configuration contributed by [StefH](https://github.com/StefH)
- [#114](https://github.com/zzzprojects/System.Linq.Dynamic.Core/issues/114) - Dynamic Linq Query not usable with ORM Provider [bug]
- [#120](https://github.com/zzzprojects/System.Linq.Dynamic.Core/issues/120) - Error with parsing
- [#122](https://github.com/zzzprojects/System.Linq.Dynamic.Core/issues/122) - Join with int list
Expand Down Expand Up @@ -755,7 +755,7 @@
- [#85](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/85) - [Fix] Guid? == null comparison contributed by [jogibear9988](https://github.com/jogibear9988)
- [#86](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/86) - [Fix] Fixed null in Parameter and added functionality Binary And and Or with different Types contributed by [jogibear9988](https://github.com/jogibear9988)
- [#92](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/92) - [Feature] Adds support for decimal qualifiers. Resolves #91 contributed by [pferraris](https://github.com/pferraris)
- [#93](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/93) - [Bug] Fix uap10 build in appveyor contributed by [StefH](https://github.com/StefH)
- [#93](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/93) - [Bug] Fix uap10 build in CI contributed by [StefH](https://github.com/StefH)
- [#99](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/99) - Added DynamicEnumerable Async extension methods contributed by [StefH](https://github.com/StefH)
- [#100](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/100) - Feature: NullPropagation operator contributed by [StefH](https://github.com/StefH)
- [#103](https://github.com/zzzprojects/System.Linq.Dynamic.Core/pull/103) - support group by with 2 parameters, add tolist contributed by [jogibear9988](https://github.com/jogibear9988)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>netstandard2.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>netstandard2.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>netstandard2.1;net5.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>net6.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>net6.0;net7.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>net8.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>net9.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<Compile Include="..\System.Linq.Dynamic.Core\Res.cs" />
<Compile Include="..\System.Linq.Dynamic.Core\Compatibility\*.cs" />
Expand Down
4 changes: 2 additions & 2 deletions src/System.Linq.Dynamic.Core/System.Linq.Dynamic.Core.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>

<PropertyGroup Condition=" '$(buildType)' == 'azure-pipelines-ci' ">
<TargetFrameworks>net40;net45;net46;netstandard1.3;netstandard2.0;netcoreapp2.1;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0</TargetFrameworks>
<PropertyGroup Condition=" '$(IsRunningOnGitHubActions)' == 'true' ">
<TargetFrameworks>net35;net40;net45;net452;net46;netstandard1.3;netstandard2.0;netstandard2.1;netcoreapp2.1;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<PropertyGroup Condition=" '$(TargetFramework)' == 'netstandard1.3' ">
Expand Down
Loading