Release: Inno Setup installer and automatic version bump #8

Merged
hannah-vernon merged 3 commits from dev into main 2026-06-15 11:23:28 -05:00

What does this PR do?

Promotes the installer and automatic versioning work from dev to main for
release.

Included since the last main release (from PR #7):

  • Inno Setup installer - per-machine, x64, self-contained (.NET 10 bundled);
    optional desktop shortcut, always-on Start Menu entry. installer/*.iss plus
    a parse-validated build-installer.ps1 helper.
  • Automatic versioning - MinVer derives the assembly/installer version from
    git tags; the version-bump.yml Forgejo Actions workflow tags a new version on
    each dev to main merge (minor++, patch = PR number).
  • Docs updated (README Installer + Versioning sections, project layout;
    THIRD-PARTY-NOTICES build-time tooling) and .gitignore/.gitattributes
    adjustments for publish/, dist/, and *.iss.

Merging this PR is expected to trigger the Version Bump workflow and create the
first v{major}.{minor}.{patch} tag.

Fixes #

How was this tested?

  • dotnet build Tayler.slnx - 0 errors, 0 warnings (MinVer resolving the
    version)
  • Ran installer/build-installer.ps1 end-to-end: published the self-contained
    x64 build then compiled dist/TaylerLogTailer-1.0.0.0-setup-x64.exe (44.7 MB)
  • Manually tested tailing against a folder of log files on ___
  • Version Bump workflow tag-push verified on this merge

Checklist

  • I have read the Contributing Guide
  • Changes are focused - one logical change per PR
  • Documentation updated (if user-visible behavior changed)
  • New dependencies are MIT/Apache-2.0 and security-vetted
  • No commented-out code or debug leftovers
## What does this PR do? Promotes the installer and automatic versioning work from `dev` to `main` for release. Included since the last `main` release (from PR #7): - **Inno Setup installer** - per-machine, x64, self-contained (.NET 10 bundled); optional desktop shortcut, always-on Start Menu entry. `installer/*.iss` plus a parse-validated `build-installer.ps1` helper. - **Automatic versioning** - MinVer derives the assembly/installer version from git tags; the `version-bump.yml` Forgejo Actions workflow tags a new version on each `dev` to `main` merge (minor++, patch = PR number). - Docs updated (README Installer + Versioning sections, project layout; THIRD-PARTY-NOTICES build-time tooling) and `.gitignore`/`.gitattributes` adjustments for `publish/`, `dist/`, and `*.iss`. Merging this PR is expected to trigger the Version Bump workflow and create the first `v{major}.{minor}.{patch}` tag. Fixes # ## How was this tested? - [x] `dotnet build Tayler.slnx` - 0 errors, 0 warnings (MinVer resolving the version) - [x] Ran `installer/build-installer.ps1` end-to-end: published the self-contained x64 build then compiled `dist/TaylerLogTailer-1.0.0.0-setup-x64.exe` (44.7 MB) - [ ] Manually tested tailing against a folder of log files on ___ - [ ] Version Bump workflow tag-push verified on this merge ## Checklist - [x] I have read the [Contributing Guide](../CONTRIBUTING.md) - [x] Changes are focused - one logical change per PR - [x] Documentation updated (if user-visible behavior changed) - [x] New dependencies are MIT/Apache-2.0 and security-vetted - [x] No commented-out code or debug leftovers
Add a per-machine Windows installer built with Inno Setup 6.  The installer
bundles the .NET 10 runtime (self-contained), installs to Program Files with
admin elevation, targets x64 only, and offers an optional desktop shortcut
(unchecked by default).

- installer/TaylerLogTailer.iss: Inno Setup script; version read from the
  published exe, which derives from the csproj <Version> property.
- installer/build-installer.ps1: publishes the self-contained x64 build then
  compiles the installer; parse-validated.
- TaylerLogTailer.csproj: add <Version>/<Company>/<Product>/<Copyright>.
- .gitignore: ignore publish/ and dist/ build artifacts.
- .gitattributes: mark *.iss as CRLF.
- README.md: add Installer section and installer/ to the project layout.
- THIRD-PARTY-NOTICES.md: note Inno Setup as a build-time tool.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Mirror the versioning approach from SqlServerAgMonitor so releases are tagged and
versioned automatically.

- Directory.Build.props: add MinVer 6.0.0 (PrivateAssets=All) with tag prefix v
  and MinVerMinimumMajorMinor 1.0, so the assembly/installer version derives from
  git tags.
- TaylerLogTailer.csproj: drop the static <Version> (MinVer now supplies it);
  keep Company/Product/Copyright.
- .github/workflows/version-bump.yml: Forgejo Actions workflow that, on a merged
  PR into main, increments the minor and sets patch to the PR number, then pushes
  a new v{major}.{minor}.{patch} tag. Targets the ubuntu-latest runner.
- README.md: add a Versioning section and list the workflow in the project layout.
- THIRD-PARTY-NOTICES.md: note MinVer alongside Inno Setup as build-time tooling.

The installer reads the published exe's file version, so tagged builds flow
straight into the setup filename and metadata. A Windows runner plus a
release/installer-build workflow are deferred to a follow-up.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Merge pull request 'Add Inno Setup installer and automatic version bump' (#7) from feature/installer into dev
All checks were successful
Version Bump / tag-version (pull_request) Successful in 44s
50b8387882
Reviewed-on: #7
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
hannah-vernon/tayler-log-tailer!8
No description provided.