Skip to content

Commit 52ed5c6

Browse files
committed
feat: Enhanced grouped package resolution and copy-friendly commands (v2.0.28)
- Automatic solution search for grouped packages - Checks if installed packages need updates to support grouped packages - Automatically searches for compatible versions of conflicting installed packages - Includes compatible versions in grouped commands automatically - Maintainer contact suggestions for grouped packages - Identifies packages needing maintainer updates - Fetches maintainer contact information (email, repository URL) - Provides actionable guidance on contacting maintainers - Copy-friendly command display - Commands displayed with 📋 icon for easy copying - Clickable commands in modern terminals (OSC 8 hyperlink support) - Helpful hint messages for users - Comprehensive help documentation - Added CONFLICT RESOLUTION FEATURES section (8 features) - Added OUTPUT FEATURES section (5 features) - Updated help files in 31 languages All tests passing (140 tests, 689 assertions)
1 parent dc22ba2 commit 52ed5c6

38 files changed

Lines changed: 887 additions & 9 deletions

bin/i18n/ar.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@
1919
'suggested_commands_conflicts' => 'الأوامر المقترحة لحل تعارضات التبعيات:',
2020
'suggested_commands_grouped' => 'الأوامر المقترحة (حاول التثبيت معًا - قد يحل Composer التعارضات بشكل أفضل):',
2121
'grouped_install_explanation' => '(تثبيت عدة حزم معًا يساعد أحيانًا Composer في حل التعارضات)',
22+
'grouped_install_warning' => '(Note: قد يفشل هذا إذا كانت هناك تعارضات مع الحزم المثبتة التي لا يمكن تحديثها)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => '(The following packages need updates from their maintainers)',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
2229
'includes_transitive' => '(يتضمن التبعيات العابرة اللازمة لحل التعارضات)',
2330
'update_transitive_first' => '(قم بتحديث هذه التبعيات العابرة أولاً، ثم أعد محاولة تحديث الحزم المفلترة)',
2431

bin/i18n/bg.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@
1919
'suggested_commands_conflicts' => 'Предложени команди за разрешаване на конфликти на зависимости:',
2020
'suggested_commands_grouped' => 'Предложени команди (опитайте да инсталирате заедно - Composer може по-добре да разреши конфликти):',
2121
'grouped_install_explanation' => '(Инсталирането на няколко пакета заедно понякога помага на Composer да разреши конфликти)',
22+
'grouped_install_warning' => '(Забележка: Това все още може да се провали, ако има конфликти с инсталирани пакети, които не могат да бъдат актуализирани)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => '(The following packages need updates from their maintainers)',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
2229
'includes_transitive' => '(Включва транзитивни зависимости, необходими за разрешаване на конфликти)',
2330
'update_transitive_first' => '(Първо актуализирайте тези транзитивни зависимости, след това опитайте отново да актуализирате филтрираните пакети)',
2431

bin/i18n/cs.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@
1919
'suggested_commands_conflicts' => 'Doporučené příkazy k vyřešení konfliktů závislostí:',
2020
'suggested_commands_grouped' => 'Doporučené příkazy (zkuste nainstalovat společně - Composer může lépe vyřešit konflikty):',
2121
'grouped_install_explanation' => '(Instalace více balíčků společně někdy pomáhá Composeru vyřešit konflikty)',
22+
'grouped_install_warning' => '(Poznámka: To může stále selhat, pokud existují konflikty s nainstalovanými balíčky, které nelze aktualizovat)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => '(The following packages need updates from their maintainers)',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
2229
'includes_transitive' => '(Zahrnuje tranzitivní závislosti potřebné k vyřešení konfliktů)',
2330
'update_transitive_first' => '(Nejprve aktualizujte tyto tranzitivní závislosti, poté zkuste znovu aktualizovat filtrované balíčky)',
2431

bin/i18n/da.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@
1919
'suggested_commands_conflicts' => 'Foreslåede kommandoer til at løse afhængighedskonflikter:',
2020
'suggested_commands_grouped' => 'Foreslåede kommandoer (prøv at installere sammen - Composer kan måske løse konflikter bedre):',
2121
'grouped_install_explanation' => '(At installere flere pakker sammen hjælper nogle gange Composer med at løse konflikter)',
22+
'grouped_install_warning' => '(Bemærk: Dette kan stadig fejle, hvis der er konflikter med installerede pakker, der ikke kan opdateres)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => '(The following packages need updates from their maintainers)',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
2229
'includes_transitive' => '(Inkluderer transitive afhængigheder, der er nødvendige for at løse konflikter)',
2330
'update_transitive_first' => '(Opdater først disse transitive afhængigheder, og prøv derefter igen at opdatere de filtrerede pakker)',
2431

bin/i18n/de.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,17 @@
1919
'suggested_commands_conflicts' => 'Vorgeschlagene Befehle zur Behebung von Abhängigkeitskonflikten:',
2020
'suggested_commands_grouped' => 'Vorgeschlagene Befehle (versuchen Sie, zusammen zu installieren - Composer kann Konflikte besser lösen):',
2121
'grouped_install_explanation' => '(Das gleichzeitige Installieren mehrerer Pakete hilft Composer manchmal, Konflikte zu lösen)',
22+
'grouped_install_warning' => '(Hinweis: Dies kann immer noch fehlschlagen, wenn es Konflikte mit installierten Paketen gibt, die nicht aktualisiert werden können)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => 'Die folgenden Pakete benötigen Updates von ihren Maintainern, um die gruppierte Installation zu unterstützen:',
25+
'package_needs_update_for_grouped' => '%s (installiert: %s) benötigt ein Update zur Unterstützung von: %s (erfordert: %s)',
26+
'suggest_contact_maintainer' => '💡 Erwägen Sie, den Maintainer von %s zu kontaktieren, um Unterstützung für diese Versionen anzufordern',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainer: %s',
29+
'grouped_install_maintainer_needed' => 'Einige installierte Pakete benötigen Updates von ihren Maintainern:',
30+
'package_needs_update' => '%s: Benötigt Update zur Unterstützung von %s (erfordert: %s)',
31+
'grouped_install_warning' => '(Note: This may still fail if there are conflicts with installed packages that cannot be updated)',
32+
'copy_command_hint' => '(Click to copy or select the command)',
2233
'includes_transitive' => '(Enthält transitive Abhängigkeiten, die zur Behebung von Konflikten erforderlich sind)',
2334
'update_transitive_first' => '(Aktualisieren Sie zuerst diese transitiven Abhängigkeiten, dann versuchen Sie erneut, die gefilterten Pakete zu aktualisieren)',
2435

bin/i18n/el.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@
1919
'suggested_commands_conflicts' => 'Προτεινόμενες εντολές για επίλυση συγκρούσεων εξαρτήσεων:',
2020
'suggested_commands_grouped' => 'Προτεινόμενες εντολές (δοκιμάστε να εγκαταστήσετε μαζί - το Composer μπορεί να λύσει καλύτερα τις συγκρούσεις):',
2121
'grouped_install_explanation' => '(Η εγκατάσταση πολλών πακέτων μαζί βοηθά μερικές φορές το Composer να λύσει συγκρούσεις)',
22+
'grouped_install_warning' => '(Σημείωση: Αυτό μπορεί ακόμα να αποτύχει εάν υπάρχουν συγκρούσεις με εγκατεστημένα πακέτα που δεν μπορούν να ενημερωθούν)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => '(The following packages need updates from their maintainers)',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
2229
'includes_transitive' => '(Περιλαμβάνει μεταβατικές εξαρτήσεις απαραίτητες για επίλυση συγκρούσεων)',
2330
'update_transitive_first' => '(Ενημερώστε πρώτα αυτές τις μεταβατικές εξαρτήσεις, στη συνέχεια δοκιμάστε ξανά να ενημερώσετε τα φιλτραρισμένα πακέτα)',
2431

bin/i18n/en.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,15 @@
1919
'suggested_commands_conflicts' => 'Suggested commands to resolve dependency conflicts:',
2020
'suggested_commands_grouped' => 'Suggested commands (try installing together - Composer may resolve conflicts better):',
2121
'grouped_install_explanation' => '(Installing multiple packages together sometimes helps Composer resolve conflicts)',
22+
'grouped_install_warning' => '(Note: This may still fail if there are conflicts with installed packages that cannot be updated)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => 'The following packages need updates from their maintainers to support the grouped installation:',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s to request support for these versions',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
29+
'grouped_install_maintainer_needed' => 'Some installed packages need updates from their maintainers:',
30+
'package_needs_update' => '%s: Needs update to support %s (requires: %s)',
2231
'includes_transitive' => '(Includes transitive dependencies needed to resolve conflicts)',
2332
'update_transitive_first' => '(Update these transitive dependencies first, then retry updating the filtered packages)',
2433

bin/i18n/es.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,15 @@
1919
'suggested_commands_conflicts' => 'Comandos sugeridos para resolver conflictos de dependencias:',
2020
'suggested_commands_grouped' => 'Comandos sugeridos (intenta instalar juntos - Composer puede resolver conflictos mejor):',
2121
'grouped_install_explanation' => '(Instalar múltiples paquetes juntos a veces ayuda a Composer a resolver conflictos)',
22+
'grouped_install_warning' => '(Nota: Esto aún puede fallar si hay conflictos con paquetes instalados que no se pueden actualizar)',
23+
'copy_command_hint' => '(Haz clic para copiar o selecciona el comando)',
24+
'packages_need_maintainer_update' => 'Los siguientes paquetes necesitan actualizaciones de sus mantenedores para soportar la instalación agrupada:',
25+
'package_needs_update_for_grouped' => '%s (instalado: %s) necesita actualización para soportar: %s (requiere: %s)',
26+
'suggest_contact_maintainer' => '💡 Considera contactar al mantenedor de %s para solicitar soporte para estas versiones',
27+
'repository_url' => '📦 Repositorio: %s',
28+
'maintainers' => '👤 Mantenedores: %s',
29+
'grouped_install_maintainer_needed' => 'Algunos paquetes instalados necesitan actualizaciones de sus mantenedores:',
30+
'package_needs_update' => '%s: Necesita actualización para soportar %s (requiere: %s)',
2231
'includes_transitive' => '(Incluye dependencias transitivas necesarias para resolver conflictos)',
2332
'update_transitive_first' => '(Actualiza estas dependencias transitivas primero, luego reintenta actualizar los paquetes filtrados)',
2433

bin/i18n/fi.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@
1919
'suggested_commands_conflicts' => 'Ehdotetut komennot riippuvuuskonfliktien ratkaisemiseksi:',
2020
'suggested_commands_grouped' => 'Ehdotetut komennot (kokeile asentaa yhdessä - Composer voi ratkaista konfliktit paremmin):',
2121
'grouped_install_explanation' => '(Useiden pakettien asentaminen yhdessä auttaa joskus Composeria ratkaisemaan konfliktit)',
22+
'grouped_install_warning' => '(Huom: Tämä voi silti epäonnistua, jos on konflikteja asennettujen pakettien kanssa, joita ei voida päivittää)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => '(The following packages need updates from their maintainers)',
25+
'package_needs_update_for_grouped' => '%s (installed: %s) needs update to support: %s (requires: %s)',
26+
'suggest_contact_maintainer' => '💡 Consider contacting the maintainer of %s',
27+
'repository_url' => '📦 Repository: %s',
28+
'maintainers' => '👤 Maintainers: %s',
2229
'includes_transitive' => '(Sisältää transitiiviset riippuvuudet, joita tarvitaan konfliktien ratkaisemiseksi)',
2330
'update_transitive_first' => '(Päivitä ensin nämä transitiiviset riippuvuudet, yritä sitten päivittää suodatetut paketit)',
2431

bin/i18n/fr.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,17 @@
1919
'suggested_commands_conflicts' => 'Commandes suggérées pour résoudre les conflits de dépendances:',
2020
'suggested_commands_grouped' => 'Commandes suggérées (essayez d\'installer ensemble - Composer peut mieux résoudre les conflits):',
2121
'grouped_install_explanation' => '(Installer plusieurs paquets ensemble aide parfois Composer à résoudre les conflits)',
22+
'grouped_install_warning' => '(Note: Cela peut encore échouer s\'il y a des conflits avec des paquets installés qui ne peuvent pas être mis à jour)',
23+
'copy_command_hint' => '(Click to copy or select the command)',
24+
'packages_need_maintainer_update' => 'Les paquets suivants ont besoin de mises à jour de leurs mainteneurs pour prendre en charge l\'installation groupée:',
25+
'package_needs_update_for_grouped' => '%s (installé: %s) a besoin d\'une mise à jour pour prendre en charge: %s (nécessite: %s)',
26+
'suggest_contact_maintainer' => '💡 Envisagez de contacter le mainteneur de %s pour demander le support de ces versions',
27+
'repository_url' => '📦 Dépôt: %s',
28+
'maintainers' => '👤 Mainteneurs: %s',
29+
'grouped_install_maintainer_needed' => 'Certains paquets installés ont besoin de mises à jour de leurs mainteneurs:',
30+
'package_needs_update' => '%s: Nécessite une mise à jour pour supporter %s (nécessite: %s)',
31+
'grouped_install_warning' => '(Note: This may still fail if there are conflicts with installed packages that cannot be updated)',
32+
'copy_command_hint' => '(Click to copy or select the command)',
2233
'includes_transitive' => '(Inclut les dépendances transitives nécessaires pour résoudre les conflits)',
2334
'update_transitive_first' => '(Mettez à jour ces dépendances transitives d\'abord, puis réessayez de mettre à jour les paquets filtrés)',
2435

0 commit comments

Comments
 (0)