Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
01df4f8
Initial version
GillesTourreau Feb 18, 2025
e958d10
Add the Icon / Logo
GillesTourreau Feb 18, 2025
4ac76e3
Add the installer setup project
GillesTourreau Feb 18, 2025
dee3036
Add GitHub actions.
GillesTourreau Feb 18, 2025
fb8cb3e
Fix CI
GillesTourreau Feb 18, 2025
e1cbc99
Fix release
GillesTourreau Feb 18, 2025
2786543
Use devenv
GillesTourreau Feb 18, 2025
e185d1b
Fix release build
GillesTourreau Feb 19, 2025
ccf1b18
Fix release
GillesTourreau Feb 19, 2025
98b7155
Fix
GillesTourreau Feb 19, 2025
34dd2e0
Fix
GillesTourreau Feb 19, 2025
c97a68e
Test
GillesTourreau Feb 19, 2025
58a8b42
Use the setup-vsdevenv
GillesTourreau Feb 19, 2025
3b8955d
Set the version and the artifacts
GillesTourreau Feb 19, 2025
4b3fad4
Upload v4
GillesTourreau Feb 19, 2025
776dc7b
Fix
GillesTourreau Feb 19, 2025
e31a0a7
Fix the build
GillesTourreau Feb 19, 2025
909b4d5
Fix artifact name
GillesTourreau Feb 19, 2025
3afee34
Use informational version
GillesTourreau Feb 19, 2025
3bef91a
Change the ProductCode
GillesTourreau Feb 19, 2025
5cc3ae0
Remove the build of WinForms project.
GillesTourreau Feb 19, 2025
1ce893c
Change to internal for the helpers
GillesTourreau Feb 19, 2025
34c4fc6
Update the README
GillesTourreau Feb 19, 2025
55d6b5d
Fix the name of the steps.
GillesTourreau Feb 19, 2025
476adcf
Extract the version correctly from the InformationalVersion information.
GillesTourreau Feb 19, 2025
51761db
Fix build
GillesTourreau Feb 19, 2025
fb8b4d5
Fix the name of the steps
GillesTourreau Feb 19, 2025
1b4990a
Fix Releases URLs
GillesTourreau Feb 19, 2025
21c2aa9
Fix csproj
GillesTourreau Feb 19, 2025
a7287c4
Set the assembly title
GillesTourreau Feb 19, 2025
54eba34
Fix the messages
GillesTourreau Feb 19, 2025
a1d6c3d
Add the exit button.
GillesTourreau Feb 19, 2025
8ee5758
Fix the hyperlink title.
GillesTourreau Feb 19, 2025
398bee2
Fix warnings.
GillesTourreau Feb 19, 2025
400f3b8
Fix the build
GillesTourreau Feb 19, 2025
25601d8
Use env variables for the version
GillesTourreau Feb 19, 2025
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
16 changes: 16 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
[*.yaml]
indent_size = 2
tab_width = 2

[*.cs]

# StyleCop

# SA1600: Elements should be documented
dotnet_diagnostic.SA1600.severity = none

# SA1601: Partial elements should be documented
dotnet_diagnostic.SA1601.severity = none

# SA1602: Enumeration items should be documented
dotnet_diagnostic.SA1602.severity = none
21 changes: 21 additions & 0 deletions .github/workflows/github-actions-ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Continuous Integration

on:
pull_request:
branches: [ "main" ]
push:
branches: [ "releases/**" ]

jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4

- name: Setup .NET 8.x
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.x'

- name: Build
run: dotnet build --property:Configuration=Debug "PosInformatique.Pdf.PasswordRemover.sln"
61 changes: 61 additions & 0 deletions .github/workflows/github-actions-release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Release

on:
workflow_dispatch:
inputs:
VersionPrefix:
type: string
description: The version of the library
required: true
default: 0.9.0
VersionSuffix:
type: string
description: The version suffix of the library (for example rc.1)

run-name: ${{ inputs.VersionPrefix }}${{ inputs.VersionSuffix && '-' || '' }}${{ inputs.VersionSuffix }}

jobs:
build:
env:
SETUP_PROJECT_FILE: "./src/Pdf.PasswordRemover.WinForms.Setup/Pdf.PasswordRemover.WinForms.Setup.vdproj"
VERSION: ${{ inputs.VersionPrefix }}${{ inputs.VersionSuffix && '-' || '' }}${{ inputs.VersionSuffix }}
runs-on: windows-latest
steps:
- uses: actions/checkout@v4

- name: Setup .NET 8.x SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.x'

- name: Build executable application
run: dotnet build --property:Configuration=Release --property:AssemblyVersion=${{ inputs.VersionPrefix }} --property:FileVersion=${{ inputs.VersionPrefix }} --property:InformationalVersion=${{ env.VERSION }} "./src/Pdf.PasswordRemover.WinForms/Pdf.PasswordRemover.WinForms.csproj"

- name: Setup Visual Studio environment
uses: seanmiddleditch/gha-setup-vsdevenv@v4

- name: Update the .vdproj file
shell: pwsh
run: |
$newProductCode = [System.Guid]::NewGuid().ToString("B").ToUpper()
$content = Get-Content -Path $env:SETUP_PROJECT_FILE -Raw

$content = $content -replace '"ProductVersion" = "8:.*?"', '"ProductVersion" = "8:${{ inputs.VersionPrefix }}"'
$content = $content -replace '"OutputFilename" = "8:Release\\\\PdfPasswordRemover.msi"', '"OutputFilename" = "8:Release\\PdfPasswordRemover_${{ env.VERSION }}.msi"'
$content = $content -replace '"ProductCode" = "8:{CB215E38-E864-48E0-851B-6B2B67958B42}"', ('"ProductCode" = "8:' + $newProductCode + '"')

Set-Content -Path $env:SETUP_PROJECT_FILE -Value $content

Write-Host "Version updated to '${{ inputs.VersionPrefix }}' in '$env:SETUP_PROJECT_FILE'"
Write-Host "OutputFilename property updated to 'Release\\PdfPasswordRemover_${{ env.VERSION }}.msi' in '$env:SETUP_PROJECT_FILE'"
Write-Host "ProductCode property updated to '$newProductCode' in '$env:SETUP_PROJECT_FILE'"

- name: Build MSI package
run: devenv "${{ env.SETUP_PROJECT_FILE }}" /Build "Release"

- name: Upload MSI package
uses: actions/upload-artifact@v4
with:
name: installer
path: |
./src/Pdf.PasswordRemover.WinForms.Setup/Release/
Loading