Skip to content

chore: bump version 2.5.0 - #740

Open
piotr-iohk wants to merge 1 commit into
masterfrom
release-2.5.0
Open

chore: bump version 2.5.0#740
piotr-iohk wants to merge 1 commit into
masterfrom
release-2.5.0

Conversation

@piotr-iohk

Copy link
Copy Markdown
Collaborator

Release 2.5.0.

Description

  • Bump CURRENT_PROJECT_VERSION to 197 and MARKETING_VERSION to 2.5.0
  • Collect changelog fragments from changelog.d/next/ into CHANGELOG.md under [2.5.0] - 2026-09-10

Linked Issues/Tasks

N/A

Design

N/A — no UI changes.

Screenshot / Video

N/A

@greptile-apps

greptile-apps Bot commented Sep 10, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 4/5

The PR appears safe to merge after an optional changelog whitespace cleanup.

Findings

  1. P2 Surplus Changelog Whitespace

Summary

  • Updates the three shipped targets to marketing version 2.5.0 and build 197 across Debug and Release configurations.
  • Adds the dated 2.5.0 release notes and updates version comparison links.
  • Removes all changelog fragments incorporated into the release.

Reviews (1) · Last reviewed commit: "chore: version 2.5.0"

Comment thread CHANGELOG.md Outdated
Co-authored-by: Cursor <cursoragent@cursor.com>
@piotr-iohk
piotr-iohk force-pushed the release-2.5.0 branch 2 times, most recently from 93253ef to 607f96d Compare September 10, 2026 13:30

@jvsena42 jvsena42 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Release mechanics check out. No findings — safe to ship from my side. Reviewed alongside the android twin (synonymdev/bitkit-android#1246).

Version: all six shipping build configs bumped together (app Debug/Release, notification extension Debug/Release, widget extension Debug/Release) — project.pbxproj:942/:969CURRENT_PROJECT_VERSION = 197, MARKETING_VERSION = 2.5.0, from 196 / 2.4.1 at the v2.4.1 tag.

I checked for a missed target rather than assuming six was the full set: the remaining MARKETING_VERSION = 1.0 / CURRENT_PROJECT_VERSION = 1 blocks (pbxproj ~1038-1108) are to.BitkitTests and to.BitkitUITests, which were also 1.0/1 at v2.4.1 — correct to leave alone. No xcconfig carries versions, and the Info.plists use $(MARKETING_VERSION)/$(CURRENT_PROJECT_VERSION) substitution, so nothing else needed touching.

Changelog consumption — all 27 fragments verified individually: 27 deleted, 27 bullets, each text found exactly once under a filename-matching heading, issue-ID sets identical, preamble unchanged, ## [2.4.1]-and-below byte-identical except the expected link-reference block, and changelog.d/hotfix/ holds only .gitkeep. Zero dropped, zero duplicated.

Stray changes: none — M project.pbxproj (12 insertions / 12 deletions, all version lines), M CHANGELOG.md, 27 fragment deletions.

Parity with android #1246: both ship 2.5.0. Build numbers differ (189 vs 197) but those are independent per-store monotonic counters that have been divergent across prior releases, so that's not a mismatch. Both pin paykit at 0.1.0-rc51. No parity finding.


One thing worth knowing before you publish, not a change request.

2.5.0 ships Paykit as reachable opt-in code rather than dead-but-linked code:

  • FEATURE_PAYKIT_UI_DISABLED appears only at PaykitFeatureFlags.swift:7 and is never defined in any config — Release SWIFT_ACTIVE_COMPILATION_CONDITIONS (project.pbxproj:930) is "CHECK_GEOBLOCK $(inherited)" — so isUIAvailable is true in a Release build.
  • The user flag does default false (PaykitFeatureFlags.swift:15) ✅ and showDevSettings defaults to Env.isDebug (SupportScreen.swift:48).
  • But the 5-tap handler at SupportScreen.swift:168 has no #if DEBUG guard — it just calls showDevSettings.toggle() — so in a stock App Store build: Settings → About → tap version 5× → Advanced → Dev Settings → Enable Paykit UI → confirm, and the Paykit surface is live.

11 of the 27 bullets describe Paykit capability in plain "Bitkit can now…" voice with no gating qualifier. I considered filing that and decided against it — several are Fixed entries on Paykit internals where a gating suffix would be noise, there's no fastlane or store-metadata pipeline here so the blast radius is the GitHub release body, and the fragments were authored upstream in already-merged PRs and consumed mechanically by this one.

Cheapest fix if you want it: one sentence in the GitHub draft release description — "Paykit / subscription features are staged behind Dev Settings and off by default" — covering all 11 bullets with no code and no edits to merged fragments.

Please don't fix it by defining FEATURE_PAYKIT_UI_DISABLED for Release. That flips isUIAvailable false, which triggers enforceBuildAvailability() to tear down published state — clearing publishingEnabledKey/confirmedPreferenceKey, removing publicPaykitBolt11 plus its payment hash and expiry, and raising cleanup-pending flags. Shipping that untested inside a release cut would be worse than the thing it fixes.

@ovitrif ovitrif left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

utAck

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.

3 participants