You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Update swissup/* packages only; -w also updates their 3rd party dependencies
- Move ensureRepositoryEnabled into PackageAbstractCommand to share with update
- Drop disabled modules check: setup:upgrade runs with --safe-mode=1 anyway
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The table stored nothing but the identity key used by the deprecated
subscription-checker module, and keeping db_schema.xml forced a
setup:upgrade run. Dropped the model, resource model, collection and the
Module\{Installer,LicenseValidator,MessageLogger} classes that only
served it, along with setup_version.
swissup:module now reads dependencies from PackageInfo directly and no
longer prints the identity key.
Core replaces swissup/module-subscription-checker in composer.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A metapackage and the module it requires share one module code, since
convertPackageNameToModuleName strips the "module-" prefix. Both
collapsed into a single item, and the metapackage - which sorts first
in the feed - won every field. The remote loader worked around that by
dropping metapackages altogether.
Key the items by package name, which is unique, and let the consumers
that list components hide the metapackages instead.
This fixes latest_version for the packages whose metapackage lags
behind the module: Swissup_BreezeAi reported 1.2.0 instead of 1.8.8,
so no update was ever offered for it.
The synthetic swissup/subscription entry is dropped as well - it
collided with swissup/module-subscription the same way, and the only
field it contributed that anything still reads is a homepage link.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
auth:show prints plain Username/Password lines, auth:check adds
Username column and moves provider into its own column.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The reason will be displayed to describe this comment to others. Learn more.
Copilot review overview
🟡 Changes recommended
There are confirmed runtime/behavior bugs in newly added installer code paths (e.g., uninitialized variables, incorrect translation placeholder usage, and unsafe realpath() handling) that should be fixed before merge.
Get a fresh assessment by requesting another Copilot review.
This PR migrates Swissup’s installer and package/channel management functionality into swissup/module-core, removing the legacy DB-backed “module” model and aligning module listing with the component list loaders.
Changes:
Add a new installer runtime (config reader, helpers, commands) and new CLI commands for channel/auth/package operations.
Refactor module listing to use component list items (and filter out metapackages via getModuleItems()).
Remove legacy module DB schema + models and related marketplace-era license/installer classes.
The reason will be displayed to describe this comment to others. Learn more.
Copilot review overview
🟡 Changes recommended
Confirmed logic/runtime issues were found in newly added installer commands (incorrect attribute default-scope updates, unsafe array access, and type normalization/import hygiene) that should be fixed before approval.
Get a fresh assessment by requesting another Copilot review.
processArray() reads $data['remove'] without checking it exists, which will raise an "Undefined array key" warning when neither 'search' nor 'remove' is provided. Add a safe fallback and early return when no search terms are configured.
Normalize scalar store_id before iterating store IDs
Installer/Request.php:13
Request::getStoreIds() can return a non-array if store_id is set as a scalar, but callers iterate it as an array. Normalizing the value avoids runtime warnings/fatal errors.
Remove unused ScopeConfigInterface and ScopeInterface imports
Installer/Command/Unpack.php:6
Unused imports (ScopeConfigInterface, ScopeInterface) add noise and may fail strict coding standards; they are not referenced in this class.
The reason will be displayed to describe this comment to others. Learn more.
Copilot review overview
🟡 Changes recommended
There are verified runtime issues in the new installer commands (incorrect scope constant usage and getStoreIds() returning non-arrays) that can cause fatal errors/TypeErrors during installation flows.
Get a fresh assessment by requesting another Copilot review.
$search = $data['search'] ?? $data['remove']; will raise an "Undefined index: remove" notice when neither key is present in the installer config. Guard for missing keys and exit early (or throw) with a clear error.
Normalize scalar store_id values to arrays
Installer/Request.php:12
getStoreIds() can return a non-array value when store_id is provided as a scalar (e.g., string/int). Several installer commands iterate and call in_array() on this value, which will throw a TypeError if it isn't an array. Normalize the value to an array and read it via getData() instead of accessing _data directly.
Remove unused scope-related imports
Installer/Command/Unpack.php:8
Unused imports (ScopeConfigInterface, ScopeInterface) should be removed to avoid confusing readers and to keep the file lint-clean.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.