Skip to content

Extension manager: required API changes (2/n)#1548

Merged
cyanzhong merged 1 commit into
mainfrom
develop
Jul 15, 2026
Merged

Extension manager: required API changes (2/n)#1548
cyanzhong merged 1 commit into
mainfrom
develop

Conversation

@cyanzhong

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR refactors extension update checking to decouple index refresh cadence from user-facing update prompt cadence, and adds core extension-management APIs (enable/disable, remove, reorder, uninstall) with corresponding tests.

Changes:

  • Split extension registry behavior into background index revalidation (short TTL) vs. update prompt cadence, and track prompt satisfaction in cache metadata.
  • Add extension-management operations in ExtensionConfig plus ExtensionDownloader.uninstall, and update the app updater flow to use a new downloadUpdate helper.
  • Expand ExtensionCoreTests to cover enable/disable, remove, reorder, and uninstall behaviors; rename ExtensionEntry field screenshotscolorPatterns.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
MarkEditMac/Sources/Extension/ExtensionUpdater.swift Adjusts update-check flow to refresh the registry index first, then gate prompts separately; updates update-application path to preserve user fields via new downloader API.
MarkEditMac/Modules/Tests/ExtensionCoreTests.swift Adds tests for new extension config operations and uninstall behavior; updates entry construction for renamed registry fields.
MarkEditMac/Modules/Sources/ExtensionCore/ExtensionRegistry.swift Introduces separate prompt cadence tracking (lastPrompted) and index revalidation TTL; renames ExtensionEntry field.
MarkEditMac/Modules/Sources/ExtensionCore/ExtensionDownloader.swift Adds downloadUpdate helper and uninstall API to delete script + remove config record.
MarkEditMac/Modules/Sources/ExtensionCore/ExtensionConfig.swift Adds setEnabled, remove, and reorder APIs; adds Installed.settingEnabled.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread MarkEditMac/Sources/Extension/ExtensionUpdater.swift Outdated
Comment thread MarkEditMac/Modules/Sources/ExtensionCore/ExtensionConfig.swift
@cyanzhong
cyanzhong merged commit da7e403 into main Jul 15, 2026
1 check passed
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.

2 participants