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
2 changes: 1 addition & 1 deletion Installer/Installer.iss
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#define MyAppPublisher "ThreadPilot"
#define MyAppURL "https://github.com/"
#define MyAppExeName "ThreadPilot.exe"
#define MyAppVersion "1.2.0"
#define MyAppVersion "1.3.0"

#ifndef MyWizardStyle
#define MyWizardStyle "modern dynamic windows11"
Expand Down
2 changes: 1 addition & 1 deletion Installer/ThreadPilot.wxs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<Package
Name="ThreadPilot"
Manufacturer="Prime Build"
Version="1.2.0.0"
Version="1.3.0.0"
UpgradeCode="PUT-GENERATED-UPGRADE-CODE-HERE"
Language="1033">
<SummaryInformation Description="ThreadPilot MSI template" />
Expand Down
2 changes: 1 addition & 1 deletion Installer/setup.iss
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#endif

#ifndef MyAppVersion
#define MyAppVersion "1.2.0"
#define MyAppVersion "1.3.0"
#endif

#ifndef MyAppSourceDir
Expand Down
8 changes: 4 additions & 4 deletions ThreadPilot.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@
<TrimMode>link</TrimMode>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<NoWarn>CS1998;CS0067;CS0414;WFAC010;IL3000;MVVMTK0034</NoWarn>
<Version>1.2.0</Version>
<AssemblyVersion>1.2.0.0</AssemblyVersion>
<FileVersion>1.2.0.0</FileVersion>
<InformationalVersion>1.2.0</InformationalVersion>
<Version>1.3.0</Version>
<AssemblyVersion>1.3.0.0</AssemblyVersion>
<FileVersion>1.3.0.0</FileVersion>
<InformationalVersion>1.3.0</InformationalVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion app.manifest
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="1.2.0.0" name="ThreadPilot.app"/>
<assemblyIdentity version="1.3.0.0" name="ThreadPilot.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
Expand Down
2 changes: 1 addition & 1 deletion build/build-installer.ps1
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
param(
[string]$Version = "1.2.0",
[string]$Version = "1.3.0",
[string]$Configuration = "Release",
[switch]$SkipPublish
)
Expand Down
2 changes: 1 addition & 1 deletion build/build-release.ps1
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
param(
[string]$Version = "1.2.0",
[string]$Version = "1.3.0",
[string]$Configuration = "Release",
[string]$Runtime = "win-x64"
)
Expand Down
2 changes: 1 addition & 1 deletion build/package-release-zips.ps1
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
param(
[string]$Version = "1.2.0"
[string]$Version = "1.3.0"
)

$ErrorActionPreference = "Stop"
Expand Down
4 changes: 2 additions & 2 deletions chocolatey/threadpilot.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd">
<metadata>
<id>threadpilot</id>
<version>1.2.0</version>
<version>1.3.0</version>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update Chocolatey installer payload for 1.3.0

When the checked-in Chocolatey package is packed from this nuspec, it now advertises version 1.3.0, but chocolatey/tools/chocolateyInstall.ps1 is still part of the package payload and still downloads the v1.1.2 installer with the v1.1.2 checksum. In that direct packaging path, users installing threadpilot 1.3.0 would actually receive the old binary, so the installer URL/checksum need to be updated alongside the nuspec metadata.

Useful? React with 👍 / 👎.

<title>ThreadPilot</title>
<authors>Prime Build</authors>
<projectUrl>https://github.com/PrimeBuild-pc/ThreadPilot</projectUrl>
Expand All @@ -15,7 +15,7 @@
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Advanced Windows process and power plan manager with rules automation and performance controls.</description>
<summary>ThreadPilot process and power plan manager.</summary>
<releaseNotes>https://github.com/PrimeBuild-pc/ThreadPilot/releases/tag/v1.2.0</releaseNotes>
<releaseNotes>https://github.com/PrimeBuild-pc/ThreadPilot/releases/tag/v1.3.0</releaseNotes>
<tags>threadpilot process powerplan performance windows</tags>
</metadata>
<files>
Expand Down
22 changes: 22 additions & 0 deletions docs/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,28 @@

All notable changes to this project are documented in this file.

## v1.3.0 - Localization support

### Added

- Added localization infrastructure.
- Added English and Simplified Chinese resource dictionaries.
- Added language selector in Settings.
- Added localized notification support for selected user-facing messages.
- Added tests for localization fallback, language persistence, Settings language selection, and localized notifications.

### Changed

- English remains the default application language.
- Simplified Chinese is available as an optional display language.
- Project version updated to 1.3.0.

### Safety

- Unsupported or invalid language settings now fall back to English.
- Missing translation keys fall back safely to English or the key.
- No changes to elevation, system tweaks, affinity, or privileged operation behavior.

## v1.2.0 - CPU topology, persistent rules, and process control update

### Added
Expand Down
19 changes: 9 additions & 10 deletions docs/release/PACKAGING.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,9 +178,9 @@ Generate manifests locally with:

```powershell
./build/generate-winget-manifests.ps1 `
-Version "1.2.0" `
-Tag "v1.2.0" `
-InstallerUrl "https://github.com/PrimeBuild-pc/ThreadPilot/releases/download/v1.2.0/ThreadPilot_v1.2.0_Setup.exe" `
-Version "1.3.0" `
-Tag "v1.3.0" `
-InstallerUrl "https://github.com/PrimeBuild-pc/ThreadPilot/releases/download/v1.3.0/ThreadPilot_v1.3.0_Setup.exe" `
-InstallerSha256 "<sha256>" `
-OutputRoot "winget-manifests"
```
Expand Down Expand Up @@ -224,9 +224,9 @@ Local packaging-only validation:

```powershell
./build/publish-chocolatey.ps1 `
-Version "1.2.0" `
-Tag "v1.2.0" `
-InstallerPath ".\artifacts\release\installer\ThreadPilot_v1.2.0_Setup.exe" `
-Version "1.3.0" `
-Tag "v1.3.0" `
-InstallerPath ".\artifacts\release\installer\ThreadPilot_v1.3.0_Setup.exe" `
-DryRun `
-PackageOutputDirectory ".\artifacts\choco-dryrun" `
-MetadataOutputPath ".\artifacts\choco-dryrun\chocolatey-package-metadata.json"
Expand All @@ -250,9 +250,9 @@ Public publish path:

```powershell
./build/publish-chocolatey.ps1 `
-Version "1.2.0" `
-Tag "v1.2.0" `
-InstallerPath ".\artifacts\release\installer\ThreadPilot_v1.2.0_Setup.exe" `
-Version "1.3.0" `
-Tag "v1.3.0" `
-InstallerPath ".\artifacts\release\installer\ThreadPilot_v1.3.0_Setup.exe" `
-ApiKey "<chocolatey-api-key>"
```

Expand All @@ -278,4 +278,3 @@ The release workflow (`.github/workflows/release.yml`) now builds:
- ReadyToRun build output for internal CI validation only
- SHA-256 checksum manifest for public assets
- Optional signing of EXE artifacts when signing secrets are configured

49 changes: 20 additions & 29 deletions docs/release/RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,48 +1,39 @@
# ThreadPilot v1.2.0 Release Notes Draft
# ThreadPilot v1.3.0 Release Notes Draft

## Highlights

- CPU topology v2 with topology-aware `CpuSelection`, CPU Sets, processor groups, and safer handling above 64 logical processors.
- New safe affinity paths where CPU64 no longer aliases CPU0.
- Intel hybrid handling through topology and `EfficiencyClass`, plus AMD CCD/L3-aware preset generation.
- Memory priority support and persistent process rules.
- Apply saved rules automatically when matching processes start while ThreadPilot is running.
- Process tab context menu actions, Save as rule, Apply now, and selected-process summary.
- Added localization infrastructure with English and Simplified Chinese resources.
- English remains the default language.
- Simplified Chinese is available as an optional display language through Settings.
- Selected user-facing notification messages now use localized resources.
- Localization fallback behavior is covered by expanded tests.

## Added

- CPU topology v2 and `CpuSelection` for topology-aware affinity.
- Group-aware CPU Sets support and processor group safety.
- Memory priority controls.
- Persistent process rules with runtime apply-at-process-start support.
- Process tab context menu actions and selected-process summary.
- Optional Diagnostics view hidden by default.
- Added localization infrastructure.
- Added English and Simplified Chinese resource dictionaries.
- Added language selector in Settings.
- Added localized notification support for selected user-facing messages.
- Added tests for localization fallback, language persistence, Settings language selection, and localized notifications.

## Changed

- Default presets are gaming-oriented and generated from topology rather than hardcoded CPU SKU lists.
- Intel hybrid behavior uses Windows topology and `EfficiencyClass`.
- AMD behavior uses CCD/L3-aware preset generation.
- Project version updated to 1.2.0.

## Fixed

- Startup no longer fails from a read-only selected-process summary binding.
- CPU64 no longer aliases CPU0 in new safe affinity paths.
- Persistent rule auto-apply cancellation does not log shutdown/future cancellation as a warning.
- English remains the default application language.
- Simplified Chinese is available as an optional display language.
- Project version updated to 1.3.0.

## Safety

- High CPU priority shows a warning and Realtime priority remains blocked.
- ThreadPilot does not bypass anti-cheat or protected-process restrictions.
- Administrator rights may help ordinary access-denied cases but do not bypass protected processes.
- Unsupported or invalid language settings now fall back to English.
- Missing translation keys fall back safely to English or the key.
- No changes to elevation, system tweaks, affinity, or privileged operation behavior.

## Compatibility and Upgrade Notes

- Requires Windows 11 build 22000 or newer.
- Existing legacy affinity profiles continue to load.
- New saved rules prefer topology-aware `CpuSelection` when safe topology mapping is available.
- Apply at process start works only while ThreadPilot is running.
- Existing settings continue to load.
- Existing installations without a language setting default to English.
- Existing process, affinity, power plan, and automation behavior is unchanged.

## Known Non-Goals

Expand Down
48 changes: 48 additions & 0 deletions docs/releases/v1.3.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# ThreadPilot v1.3.0 Release Notes Draft

## Highlights

- Added localization infrastructure with English and Simplified Chinese resources.
- English remains the default language.
- Simplified Chinese is available as an optional display language through Settings.
- Selected user-facing notification messages now use localized resources.
- Localization fallback behavior is covered by expanded tests.

## Added

- Added localization infrastructure.
- Added English and Simplified Chinese resource dictionaries.
- Added language selector in Settings.
- Added localized notification support for selected user-facing messages.
- Added tests for localization fallback, language persistence, Settings language selection, and localized notifications.

## Changed

- English remains the default application language.
- Simplified Chinese is available as an optional display language.
- Project version updated to 1.3.0.

## Safety

- Unsupported or invalid language settings now fall back to English.
- Missing translation keys fall back safely to English or the key.
- No changes to elevation, system tweaks, affinity, or privileged operation behavior.

## Compatibility and Upgrade Notes

- Requires Windows 11 build 22000 or newer.
- Existing settings continue to load.
- Existing installations without a language setting default to English.
- Existing process, affinity, power plan, and automation behavior is unchanged.

## Known Non-Goals

- No anti-cheat bypass.
- No Windows Service.
- No registry or IFEO persistence.
- No generated release artifacts yet.
- No GitHub release or tag yet.

## Release Artifact Status

- Installer, portable ZIP, checksums, package metadata verification, and release upload remain pending manual validation.
2 changes: 1 addition & 1 deletion sonar-project.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
sonar.projectKey=threadpilot
sonar.projectName=ThreadPilot
sonar.projectVersion=1.2.0
sonar.projectVersion=1.3.0

sonar.sourceEncoding=UTF-8
sonar.sources=.
Expand Down
Loading