Skip to content

chore: remove in-app newsletter NSAlert#980

Merged
datlechin merged 1 commit intomainfrom
chore/remove-newsletter-nsalert
May 4, 2026
Merged

chore: remove in-app newsletter NSAlert#980
datlechin merged 1 commit intomainfrom
chore/remove-newsletter-nsalert

Conversation

@datlechin
Copy link
Copy Markdown
Member

Why

The native NSAlert that fired after the third successful connection felt bloaty and was steering users to a popup on the website that has also been removed (license PR #44). Per user feedback, in-app and on-site auto-prompts add friction without enough conversion to justify them.

Removed

  • NewsletterPromptCoordinator (NSAlert + Safari opener)
  • AppDelegate.applicationDidFinishLaunching registration call
  • Notification.Name.successfulConnectionRecorded + its post site in DatabaseManager+Sessions
  • MacAnalyticsProvider:
    • successfulConnectionCount counter
    • newsletterPromptShown latch + markNewsletterPromptShown()
    • Keys.successfulConnectionCount, Keys.newsletterPromptShown
  • Localized strings: "Stay updated on TablePro releases", "Get release notes ...", "Subscribe in Browser", "Maybe later"
  • Two MacAnalyticsProviderTests cases for the removed counter and latch
  • CHANGELOG entry for the prompt (never shipped, dropped per project convention)

What stays

The activation-funnel write-once timestamps (markConnectionAttempted, markConnectionSucceeded, markFirstQueryExecuted) are unchanged. Those drive heartbeat analytics and are unrelated to the in-app prompt.

Test plan

  • Local Xcode build clean (user runs xcodebuild themselves)
  • After build, connect to a database three times in a row → no NSAlert appears
  • xcodebuild test -only-testing:TableProTests/MacAnalyticsProviderTests passes

The native NSAlert that fired after the third successful connection
felt bloaty and was steering users to a popup on the website that has
also been removed. Drop the whole pipeline.

Removed:
- NewsletterPromptCoordinator (NSAlert + Safari opener)
- AppDelegate registration call
- successfulConnectionRecorded notification + the post site in
  DatabaseManager+Sessions
- MacAnalyticsProvider successfulConnectionCount counter,
  newsletterPromptShown latch, markNewsletterPromptShown, and the
  Keys.successfulConnectionCount / Keys.newsletterPromptShown entries
- Localized strings: "Stay updated on TablePro releases", "Get release
  notes ...", "Subscribe in Browser", "Maybe later"
- Two MacAnalyticsProvider tests for the removed counter and latch
- CHANGELOG entry for the prompt (it never shipped, so drop the line
  rather than add a "Removed" entry per project conventions)

What stays:
- markConnectionAttempted / markConnectionSucceeded /
  markFirstQueryExecuted write-once timestamps for the activation
  funnel telemetry remain unchanged.
@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@datlechin datlechin merged commit 0ad604d into main May 4, 2026
2 checks passed
@datlechin datlechin deleted the chore/remove-newsletter-nsalert branch May 4, 2026 06:44
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