Skip to content

Commit 9ba9ca1

Browse files
committed
Preparation for .Nuget publishing
1 parent c4c9623 commit 9ba9ca1

File tree

19 files changed

+123
-36
lines changed

19 files changed

+123
-36
lines changed

.assets/logo/gradient_128x128.png

795 Bytes
Loading

.github/workflows/ci.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,12 @@ jobs:
2323
run: ./Build.ps1
2424
shell: pwsh
2525
- name: Push to MyGet
26-
if: false
2726
env:
2827
NUGET_URL: https://www.myget.org/F/TODO/api/v3/index.json
2928
NUGET_API_KEY: ${{ secrets.MYGET_FRAKTALIO_CI_API_KEY }}
3029
run: ./Push.ps1
3130
shell: pwsh
3231
- name: Artifacts
33-
if: false
3432
uses: actions/upload-artifact@v2
3533
with:
3634
name: artifacts

Directory.Build.props

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,39 @@
11
<Project>
22

33
<PropertyGroup>
4-
<Copyright>Copyright © 2023 Fraktalio. All rights reserved.</Copyright>
4+
<Authors>Ivan Dugalić, Srđan Živojinović</Authors>
5+
<Copyright>Copyright © 2024 Fraktalio. All rights reserved.</Copyright>
56
<Company>Fraktalio</Company>
6-
<Authors>Ivan Dugalić</Authors>
7+
78
<TargetFramework>net8.0</TargetFramework>
89
<ImplicitUsings>enable</ImplicitUsings>
910
<Nullable>enable</Nullable>
10-
<TreatWarningsAsErrors>True</TreatWarningsAsErrors>
1111
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
12+
13+
<TreatWarningsAsErrors>True</TreatWarningsAsErrors>
14+
<CodeAnalysisTreatWarningsAsErrors>true</CodeAnalysisTreatWarningsAsErrors>
15+
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
16+
<EnableNETAnalyzers>true</EnableNETAnalyzers>
1217
<Features>strict</Features>
1318
<AnalysisLevel>latest</AnalysisLevel>
1419
<WarningLevel>9999</WarningLevel>
20+
21+
<PackageTags>domain-modeling;event-sourcing;eventsourcing;cqrs</PackageTags>
22+
<PackageIcon>gradient_128x128.png</PackageIcon>
23+
<PublishRepositoryUrl>true</PublishRepositoryUrl>
24+
<PackageProjectUrl>https://github.com/fraktalio/fmodel-csharp</PackageProjectUrl>
25+
<RepositoryType>git</RepositoryType>
26+
<PackageReadmeFile>README.md</PackageReadmeFile>
27+
<MinVerTagPrefix>v</MinVerTagPrefix>
28+
<IncludeSymbols>true</IncludeSymbols>
29+
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
30+
<EmbedUntrackedSources>true</EmbedUntrackedSources>
31+
<Deterministic>true</Deterministic>
32+
<ContinuousIntegrationBuild Condition="'$(GITHUB_ACTIONS)' == 'true'">true</ContinuousIntegrationBuild>
1533
</PropertyGroup>
1634

35+
<ItemGroup>
36+
<None Include="..\..\.assets\logo\gradient_128x128.png" Pack="true" PackagePath="\"/>
37+
</ItemGroup>
38+
1739
</Project>

Directory.Packages.props

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,19 @@
33
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
44
</PropertyGroup>
55
<ItemGroup>
6-
<PackageVersion Include="coverlet.collector" Version="6.0.0"/>
7-
<PackageVersion Include="FakeItEasy" Version="8.1.0"/>
8-
<PackageVersion Include="FluentAssertions" Version="6.12.0"/>
9-
<PackageVersion Include="JetBrains.Annotations" Version="2023.3.0"/>
10-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.8.0"/>
11-
<PackageVersion Include="NUnit" Version="3.14.0"/>
12-
<PackageVersion Include="NUnit3TestAdapter" Version="4.5.0"/>
13-
<PackageVersion Include="Verify.NUnit" Version="22.5.0"/>
6+
<PackageVersion Include="coverlet.collector" Version="6.0.0" />
7+
<PackageVersion Include="FakeItEasy" Version="8.1.0" />
8+
<PackageVersion Include="FluentAssertions" Version="6.12.0" />
9+
<PackageVersion Include="JetBrains.Annotations" Version="2023.3.0" />
10+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
11+
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
12+
<PackageVersion Include="MinVer" Version="5.0.0" />
13+
<PackageVersion Include="NUnit" Version="3.14.0" />
14+
<PackageVersion Include="NUnit3TestAdapter" Version="4.5.0" />
15+
<PackageVersion Include="Verify.NUnit" Version="22.5.0" />
1416
<PackageVersion Include="NUnit.Analyzers" Version="4.1.0">
1517
<PrivateAssets>all</PrivateAssets>
1618
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1719
</PackageVersion>
1820
</ItemGroup>
19-
</Project>
21+
</Project>

Fraktalio.FModel.sln

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
1010
CODE_OF_CONDUCT.md = CODE_OF_CONDUCT.md
1111
README.md = README.md
1212
Build.ps1 = Build.ps1
13+
Push.ps1 = Push.ps1
1314
EndProjectSection
1415
EndProject
1516
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{DF314C79-FDC8-4210-98D7-ED7AB13848D2}"

Push.ps1

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
$scriptName = $MyInvocation.MyCommand.Name
2+
$artifacts = "./artifacts"
3+
4+
if ([string]::IsNullOrEmpty($Env:NUGET_API_KEY)) {
5+
Write-Host "${scriptName}: NUGET_API_KEY is empty or not set. Skipped pushing package(s)."
6+
} else {
7+
Get-ChildItem $artifacts -Filter "*.nupkg" | ForEach-Object {
8+
Write-Host "$($scriptName): Pushing $($_.Name)"
9+
dotnet nuget push $_ --source $Env:NUGET_URL --api-key $Env:NUGET_API_KEY
10+
if ($lastexitcode -ne 0) {
11+
throw ("Exec: " + $errorMessage)
12+
}
13+
}
14+
}
Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
5-
<ImplicitUsings>enable</ImplicitUsings>
6-
<Nullable>enable</Nullable>
4+
<Product>Fraktalio.FModel</Product>
5+
<Description>Contracts package for ISaga, IView, IDecider</Description>
6+
<RootNamespace>Fraktalio.FModel</RootNamespace>
77
</PropertyGroup>
88

99
<ItemGroup>
1010
<PackageReference Include="JetBrains.Annotations"/>
11+
<PackageReference Include="Microsoft.SourceLink.GitHub">
12+
<PrivateAssets>all</PrivateAssets>
13+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
14+
</PackageReference>
1115
</ItemGroup>
1216

1317
</Project>

src/Fraktalio.FModel.Contracts/IDecider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace Fraktalio.FModel.Contracts;
1+
namespace Fraktalio.FModel;
22

33
/// <summary>
44
/// Decider Interface

src/Fraktalio.FModel.Contracts/ISaga.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using JetBrains.Annotations;
22

3-
namespace Fraktalio.FModel.Contracts;
3+
namespace Fraktalio.FModel;
44

55
/// <summary>
66
/// An interface of the Saga

src/Fraktalio.FModel.Contracts/IView.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace Fraktalio.FModel.Contracts;
1+
namespace Fraktalio.FModel;
22

33
/// <summary>
44
/// View interface

src/Fraktalio.FModel.Contracts/packages.lock.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,26 @@
77
"requested": "[2023.3.0, )",
88
"resolved": "2023.3.0",
99
"contentHash": "PHfnvdBUdGaTVG9bR/GEfxgTwWM0Z97Y6X3710wiljELBISipSfF5okn/vz+C2gfO+ihoEyVPjaJwn8ZalVukA=="
10+
},
11+
"Microsoft.SourceLink.GitHub": {
12+
"type": "Direct",
13+
"requested": "[8.0.0, )",
14+
"resolved": "8.0.0",
15+
"contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==",
16+
"dependencies": {
17+
"Microsoft.Build.Tasks.Git": "8.0.0",
18+
"Microsoft.SourceLink.Common": "8.0.0"
19+
}
20+
},
21+
"Microsoft.Build.Tasks.Git": {
22+
"type": "Transitive",
23+
"resolved": "8.0.0",
24+
"contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ=="
25+
},
26+
"Microsoft.SourceLink.Common": {
27+
"type": "Transitive",
28+
"resolved": "8.0.0",
29+
"contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw=="
1030
}
1131
}
1232
}

src/Fraktalio.FModel/Decider.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
using Fraktalio.FModel.Contracts;
2-
31
namespace Fraktalio.FModel;
42

53
/// <summary>
Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,25 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
5-
<ImplicitUsings>enable</ImplicitUsings>
6-
<Nullable>enable</Nullable>
4+
<IsPackable>true</IsPackable>
5+
<PackageId>Fraktalio.FModel</PackageId>
6+
<Product>Fraktalio.FModel</Product>
7+
<Description>Functional Domain Modeling with C#</Description>
78
</PropertyGroup>
89

910
<ItemGroup>
1011
<ProjectReference Include="..\Fraktalio.FModel.Contracts\Fraktalio.FModel.Contracts.csproj"/>
1112
</ItemGroup>
1213

14+
<ItemGroup>
15+
<PackageReference Include="Microsoft.SourceLink.GitHub">
16+
<PrivateAssets>all</PrivateAssets>
17+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
18+
</PackageReference>
19+
<PackageReference Include="MinVer">
20+
<PrivateAssets>all</PrivateAssets>
21+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
22+
</PackageReference>
23+
</ItemGroup>
24+
1325
</Project>

src/Fraktalio.FModel/Saga.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
using Fraktalio.FModel.Contracts;
2-
31
namespace Fraktalio.FModel;
42

53
/// <summary>

src/Fraktalio.FModel/View.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
using Fraktalio.FModel.Contracts;
2-
31
namespace Fraktalio.FModel;
42

53
/// <summary>

src/Fraktalio.FModel/packages.lock.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,32 @@
22
"version": 2,
33
"dependencies": {
44
"net8.0": {
5+
"Microsoft.SourceLink.GitHub": {
6+
"type": "Direct",
7+
"requested": "[8.0.0, )",
8+
"resolved": "8.0.0",
9+
"contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==",
10+
"dependencies": {
11+
"Microsoft.Build.Tasks.Git": "8.0.0",
12+
"Microsoft.SourceLink.Common": "8.0.0"
13+
}
14+
},
15+
"MinVer": {
16+
"type": "Direct",
17+
"requested": "[5.0.0, )",
18+
"resolved": "5.0.0",
19+
"contentHash": "ybkgpQMtt0Fo91l5rYtE3TZtD+Nmy5Ko091xvfXXOosQdMi30XO2EZ2+ShZt89gdu7RMmJqZaJ+e1q6d+6+KNw=="
20+
},
21+
"Microsoft.Build.Tasks.Git": {
22+
"type": "Transitive",
23+
"resolved": "8.0.0",
24+
"contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ=="
25+
},
26+
"Microsoft.SourceLink.Common": {
27+
"type": "Transitive",
28+
"resolved": "8.0.0",
29+
"contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw=="
30+
},
531
"fraktalio.fmodel.contracts": {
632
"type": "Project",
733
"dependencies": {

test/Fraktalio.FModel.Tests/Extensions/DeciderExtensions.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
using Fraktalio.FModel.Contracts;
2-
31
namespace Fraktalio.FModel.Tests.Extensions;
42

53
public static class DeciderExtensions

test/Fraktalio.FModel.Tests/Extensions/SagaExtensions.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
using Fraktalio.FModel.Contracts;
2-
3-
namespace Fraktalio.FModel.Tests.Extensions;
1+
namespace Fraktalio.FModel.Tests.Extensions;
42

53
public static class SagaExtensions
64
{

test/Fraktalio.FModel.Tests/Extensions/ViewExtensions.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
using Fraktalio.FModel.Contracts;
2-
31
namespace Fraktalio.FModel.Tests.Extensions;
42

53
internal static class ViewExtensions

0 commit comments

Comments
 (0)