Skip to content

chore: bump version to 0.12.2#20

Merged
AA-EION merged 1 commit into
masterfrom
chore/version-0.12.2
May 21, 2026
Merged

chore: bump version to 0.12.2#20
AA-EION merged 1 commit into
masterfrom
chore/version-0.12.2

Conversation

@AA-EION
Copy link
Copy Markdown
Owner

@AA-EION AA-EION commented May 21, 2026

Patch release covering #19is_done() over-counting + decoder poisoning across retries.

Only Cargo.toml (workspace.package.version) and installer/maxima-setup.nsi (PRODUCT_VERSION) need updating; the five ship-binary crates inherit via version.workspace = true (set up in #17).

Patch release covering:

* fix: is_done() over-counting + decoder poisoning across retries (#19)
  → resolves the silent-hang-after-"Installation finished!" bug a user
  hit during a TF2 install with one CDN-failing file.

The actual fix is already on master via #19. This PR just bumps the
on-disk version strings before tagging v0.12.2. Thanks to the
`[workspace.package] version` inheritance from #17, only the workspace
root Cargo.toml + NSIS `PRODUCT_VERSION` need updating; the five
ship-binary crates inherit automatically via `version.workspace = true`.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the project version to 0.12.2 in the Cargo workspace and the NSIS installer script. Feedback was provided regarding the need to update the Cargo.lock file to prevent CI failures and potential version mismatches in sub-crates. Additionally, there is a recommendation to include version metadata in the installer's resource table to ensure correct display within Windows system tools.

Comment thread Cargo.toml
# `maxima-resources` is a build-time helper crate).
[workspace.package]
version = "0.12.1"
version = "0.12.2"
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

high

Bumping the workspace version without updating Cargo.lock leads to an out-of-sync state that breaks CI builds using --locked. Additionally, since maxima-lib pins its own version (lines 18-21) for FInstall.txt, its version will remain at 0.12.1 unless explicitly bumped, potentially resulting in incorrect version reporting for the fixes mentioned in the PR description.

!define PRODUCT_PUBLISHER "Armchair Developers"
!define PRODUCT_WEB_SITE "https://github.com/ArmchairDevelopers/Maxima"
!define PRODUCT_VERSION "0.12.1"
!define PRODUCT_VERSION "0.12.2"
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

It is recommended to add version metadata to the installer's resource table using VIProductVersion and VIAddVersionKey. This ensures the version information is correctly displayed in Windows File Explorer properties and other system tools.

!define PRODUCT_VERSION "0.12.2"
VIProductVersion "0.12.2.0"
VIAddVersionKey "ProductName" "${PRODUCT_NAME}"
VIAddVersionKey "ProductVersion" "${PRODUCT_VERSION}"
VIAddVersionKey "FileVersion" "${PRODUCT_VERSION}"
VIAddVersionKey "FileDescription" "${PRODUCT_NAME} Installer"
VIAddVersionKey "LegalCopyright" "${PRODUCT_PUBLISHER}"

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the workspace and installer versions to 0.12.2. Feedback suggests also incrementing the maxima-lib crate version to ensure consistent metadata reporting and recommends adding version metadata to the installer executable for better visibility in Windows Explorer.

Comment thread Cargo.toml
# `maxima-resources` is a build-time helper crate).
[workspace.package]
version = "0.12.1"
version = "0.12.2"
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

If the bug fixes for #19 (such as the is_done() logic) are located within the maxima-lib crate, its version should also be incremented. Since maxima-lib opts out of workspace versioning to maintain its own version for the FInstall.txt metadata (as described in lines 18-21), failing to bump it will result in an outdated version being reported by the library despite the workspace-level patch.

!define PRODUCT_PUBLISHER "Armchair Developers"
!define PRODUCT_WEB_SITE "https://github.com/ArmchairDevelopers/Maxima"
!define PRODUCT_VERSION "0.12.1"
!define PRODUCT_VERSION "0.12.2"
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

Consider adding version metadata to the installer executable. This ensures that the file properties (Right-click -> Details) correctly display the version, product name, and publisher information in Windows Explorer. Note that VIProductVersion requires a four-part version string.

!define PRODUCT_VERSION "0.12.2"
VIProductVersion "${PRODUCT_VERSION}.0"
VIAddVersionKey "FileVersion" "${PRODUCT_VERSION}"
VIAddVersionKey "ProductVersion" "${PRODUCT_VERSION}"
VIAddVersionKey "ProductName" "${PRODUCT_NAME}"
VIAddVersionKey "CompanyName" "${PRODUCT_PUBLISHER}"
VIAddVersionKey "FileDescription" "${PRODUCT_NAME} Installer"

@AA-EION AA-EION merged commit a29e403 into master May 21, 2026
4 checks passed
@AA-EION AA-EION deleted the chore/version-0.12.2 branch May 21, 2026 22:54
AA-EION added a commit that referenced this pull request May 22, 2026
…ata (#21)

## fix: maxima-cli `--game-args` rejects hyphen-prefixed values

User-reported: every Draconis launch via Maxima failed with
`error: unexpected argument '-n' found` because the launch command
passes hyphen-prefixed Source-engine flags:

```
maxima-cli launch Origin.OFR.50.0001456 \
    --game-path "...\NorthstarLauncher.exe" \
    --game-args -noOriginStartup \
    --game-args -novid \
    --game-args -vanilla
```

clap, by default, rejects values that look like flags. `-noOriginStartup`
got interpreted as an unknown short-flag-with-arg. Three-flag launches
(the vanilla-with-NS row of Draconis's decision matrix) tripped it
reproducibly; single-flag launches like `--game-args -novid` worked
by accident because clap forgave the first occurrence.

Fix: `#[arg(long, allow_hyphen_values = true)]` on `game_args`. clap
now treats every value as opaque text, regardless of leading `-`.
Bonus rationale dropped into the comment so future contributors don't
re-bikeshed it.

The repeated-flag form (`--game-args X --game-args Y --game-args Z`)
stays — backward compat for any existing script. A cleaner trailing-
args form (`maxima-cli launch SLUG ... -- -foo -bar`) is queued for
v0.13.0 / PR-K alongside the verify+repair work.

## polish: NSIS VIProductVersion + VIAddVersionKey

Caught by Gemini on PR #20 (deferred from v0.12.2). Without these,
right-clicking `MaximaSetup.exe` → Properties → Details shows blank
File Version / Product Version. Now populated with `${PRODUCT_VERSION}`
plus standard fields (ProductName, FileDescription, CompanyName, etc.).

`VIProductVersion` requires a four-part `x.y.z.w` version, so we pad
`PRODUCT_VERSION` with `.0` for the build component.

## chore: bump to v0.12.3

Workspace + NSIS PRODUCT_VERSION 0.12.2 → 0.12.3. With the
`[workspace.package] version` inheritance from #17, the five
ship-binary crates pick it up automatically.

Co-authored-by: AA-EION <contactus@eionstudios.com>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant