Skip to content
Merged
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
21 changes: 3 additions & 18 deletions .github/workflows/publish-avalonia-to-nuget.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@ name: Publish Avalonia to NuGet

on:
workflow_dispatch:
inputs:
version:
description: "Version number (leave empty to read from csproj)"
required: false

jobs:
publish:
Expand All @@ -23,25 +19,14 @@ jobs:
with:
dotnet-version: 10.0.x

- name: Extract Version from csproj (if not provided)
if: ${{ github.event.inputs.version == '' }}
id: get_version
run: |
version=$(grep '<Version>' ${{ env.Project_Path }} | sed 's/.*<Version>\(.*\)<\/Version>.*/\1/')
echo "version=$version" >> "$GITHUB_OUTPUT"

- name: Set Version Variable
run: |
echo "PACKAGE_VERSION=${{ github.event.inputs.version || steps.get_version.outputs.version }}" >> "$GITHUB_ENV"

- name: Restore Dependencies
run: dotnet restore ${{ env.Project_Path }}

- name: Build Project
run: dotnet build ${{ env.Project_Path }} --configuration Release /p:Version=${{ env.PACKAGE_VERSION }} --no-restore
run: dotnet build ${{ env.Project_Path }} --configuration Release --no-restore

- name: Pack NuGet Package
run: dotnet pack ${{ env.Project_Path }} --configuration Release --no-build --output nupkg /p:Version=${{ env.PACKAGE_VERSION }}
run: dotnet pack ${{ env.Project_Path }} --configuration Release --no-build --output nupkg

- name: Publish to NuGet
run: dotnet nuget push nupkg/WaveformTimeline.Avalonia.${{ env.PACKAGE_VERSION }}.nupkg --source ${{ env.NuGet_Source }} --api-key ${{ secrets.NUGET_API_KEY }} --skip-duplicate
run: dotnet nuget push "nupkg/*.nupkg" --source ${{ env.NuGet_Source }} --api-key ${{ secrets.NUGET_API_KEY }} --skip-duplicate
32 changes: 32 additions & 0 deletions .github/workflows/publish-shared-to-nuget.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Publish Shared to NuGet

on:
workflow_dispatch:

jobs:
publish:
runs-on: ubuntu-latest
env:
Project_Path: WaveformTimeline.Shared/WaveformTimeline.Shared.csproj
NuGet_Source: https://api.nuget.org/v3/index.json

steps:
- name: Checkout Repository
uses: actions/checkout@v4

- name: Install .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 10.0.x

- name: Restore Dependencies
run: dotnet restore ${{ env.Project_Path }}

- name: Build Project
run: dotnet build ${{ env.Project_Path }} --configuration Release --no-restore

- name: Pack NuGet Package
run: dotnet pack ${{ env.Project_Path }} --configuration Release --no-build --output nupkg

- name: Publish to NuGet
run: dotnet nuget push "nupkg/*.nupkg" --source ${{ env.NuGet_Source }} --api-key ${{ secrets.NUGET_API_KEY }} --skip-duplicate
30 changes: 6 additions & 24 deletions .github/workflows/publish-to-nuget.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,51 +2,33 @@ name: Publish to NuGet

on:
workflow_dispatch:
inputs:
version:
description: "Version number (leave empty to read from csproj)"
required: false

jobs:
publish:
runs-on: windows-latest
env:
Solution_Name: WaveformTimeline.sln
Project_Path: WaveformTimeline\WaveformTimeline.csproj
NuGet_Source: https://api.nuget.org/v3/index.json

steps:
- name: Checkout Repository
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: Install .NET Core
uses: actions/setup-dotnet@v1
- name: Install .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 10.0.x

- name: Extract Version from csproj (if not provided)
if: ${{ github.event.inputs.version == '' }}
id: get_version
run: |
$version = Select-String -Path ${{ env.Project_Path }} -Pattern '<Version>(.*)</Version>' | ForEach-Object { $_.Matches.Groups[1].Value }
echo "version=$version" >> $env:GITHUB_OUTPUT
shell: pwsh

- name: Set Version Variable
shell: pwsh
run: |
"PACKAGE_VERSION=${{ github.event.inputs.version || steps.get_version.outputs.version }}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append

- name: Restore Dependencies
run: dotnet restore ${{ env.Project_Path }}

- name: Build Project
run: dotnet build ${{ env.Project_Path }} --configuration Release /p:Version=${{ env.PACKAGE_VERSION }} --no-restore
run: dotnet build ${{ env.Project_Path }} --configuration Release --no-restore

- name: Pack NuGet Package
shell: pwsh
run: dotnet pack ${{ env.Project_Path }} --configuration Release --no-build --output ${{ github.workspace }}\nupkg /p:Version=${{ env.PACKAGE_VERSION }}
run: dotnet pack ${{ env.Project_Path }} --configuration Release --no-build --output ${{ github.workspace }}\nupkg

- name: Publish to NuGet
shell: pwsh
run: dotnet nuget push ${{ github.workspace }}\nupkg\WaveformTimeline.${{ env.PACKAGE_VERSION }}.nupkg --source ${{ env.NuGet_Source }} --api-key ${{ secrets.NUGET_API_KEY }} --skip-duplicate
run: dotnet nuget push ${{ github.workspace }}\nupkg\*.nupkg --source ${{ env.NuGet_Source }} --api-key ${{ secrets.NUGET_API_KEY }} --skip-duplicate
9 changes: 9 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<Project>
<PropertyGroup>
<Authors>Tomáš Kohl</Authors>
<Copyright>Copyright © 2026 Tomáš Kohl</Copyright>
<PackageProjectUrl>https://github.com/teekay/WaveformTimeline</PackageProjectUrl>
<RepositoryUrl>git@github.com:teekay/WaveformTimeline.git</RepositoryUrl>
<RepositoryType>git</RepositoryType>
</PropertyGroup>
</Project>
7 changes: 1 addition & 6 deletions WaveformTimeline.Avalonia/WaveformTimeline.Avalonia.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,8 @@
<AssemblyName>WaveformTimeline.Avalonia</AssemblyName>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageId>WaveformTimeline.Avalonia</PackageId>
<Version>1.0.0</Version>
<Authors>Tomáš Kohl</Authors>
<Version>1.2.1</Version>
<Description>A set of controls that display a stereo waveform, time, and progress information about an audio stream. Avalonia UI port.</Description>
<Copyright>Copyright © 2026 Tomáš Kohl</Copyright>
<PackageProjectUrl>https://github.com/teekay/WaveformTimeline</PackageProjectUrl>
<RepositoryUrl>git@github.com:teekay/WaveformTimeline.git</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageTags>avalonia;waveform;audio</PackageTags>
<PackageLicenseFile>LICENSE</PackageLicenseFile>
<PackageReadmeFile>README.md</PackageReadmeFile>
Expand Down
19 changes: 13 additions & 6 deletions WaveformTimeline.Shared/WaveformTimeline.Shared.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,20 @@
<LangVersion>latest</LangVersion>
<RootNamespace>WaveformTimeline</RootNamespace>
<AssemblyName>WaveformTimeline.Shared</AssemblyName>
<PackageId>WaveformTimeline.Shared</PackageId>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Version>1.0.0</Version>
<Description>Platform-independent core types for WaveformTimeline — the shared models and logic behind the WPF and Avalonia waveform controls.</Description>
<PackageTags>waveform;audio;core</PackageTags>
<PackageLicenseFile>LICENSE</PackageLicenseFile>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="System.Reactive">
<Version>6.1.0</Version>
</PackageReference>
<PackageReference Include="System.Reactive.Linq">
<Version>6.1.0</Version>
</PackageReference>
<None Include="..\README.md" Pack="True" PackagePath="\" />
<None Include="..\LICENSE" Pack="True" PackagePath="\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="System.Reactive" Version="6.1.0" />
<PackageReference Include="System.Reactive.Linq" Version="6.1.0" />
</ItemGroup>
</Project>
7 changes: 1 addition & 6 deletions WaveformTimeline/WaveformTimeline.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,11 @@
<AssemblyName>WaveformTimeline</AssemblyName>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Description>A set of controls that display a stereo waveform, time, and progress information about an audio stream.</Description>
<Copyright>Copyright © 2026 Tomáš Kohl</Copyright>
<PackageProjectUrl>https://github.com/teekay/WaveformTimeline</PackageProjectUrl>
<PackageReadmeFile>README.md</PackageReadmeFile>
<RepositoryUrl>git@github.com:teekay/WaveformTimeline.git</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageTags>wpf;waveform;audio</PackageTags>
<AssemblyVersion>1.0.1</AssemblyVersion>
<PackageLicenseFile>LICENSE</PackageLicenseFile>
<Authors>Tomáš Kohl</Authors>
<Version>1.2.0</Version>
<Version>1.2.1</Version>
</PropertyGroup>
<ItemGroup>
<None Include="..\README.md">
Expand Down
Loading