Fin de vie à venir pour le système de rendu de widgets

Bonjour à tous ! Dans le cadre de la dernière étape de notre effort pour abandonner l’ancien système de rendu « widget », nous supprimons progressivement l’utilisation des widgets dans Discourse et allons bientôt le désactiver complètement.

Calendrier

Ce sont des estimations et sont sujettes à changement

Juillet 2025 :

  • :white_check_mark: Ajouter des avertissements de dépréciation dans le cœur et un réglage de site expérimental pour les désactiver
  • :white_check_mark: Publier une annonce sur Meta

Août 2025

  • :white_check_mark: Mettre à niveau les plugins et composants de thème officiels pour utiliser les composants Glimmer.
  • :white_check_mark: Exécuter Meta avec les widgets désactivés.
  • :white_check_mark: Activer les messages de dépréciation avec une bannière d’avertissement pour les administrateurs.

T3 2025 :

  • Les plugins et thèmes tiers doivent être mis à niveau.

T4 2025 :

  • :white_check_mark: Le système de rendu des widgets sera désactivé par défaut en utilisant deactivate_widgets_rendering: true. Il y aura une courte période pendant laquelle il pourra être réactivé manuellement.

  • :white_check_mark: Supprimer l’ancien code et désactiver le système de rendu des widgets

:police_car_light: Les plugins et thèmes non compatibles cesseront de fonctionner correctement après cela.

Qu’est-ce que cela signifie pour vous ?

Si l’un de vos plugins ou thèmes utilise des API de « widget », vous devrez les mettre à jour pour utiliser les nouvelles API ou les composants Glimmer avant la date limite du T4 2025.

J’ai des plugins ou des thèmes personnalisés installés. Dois-je les mettre à jour ?

Vous devrez mettre à jour vos plugins ou thèmes s’ils utilisent l’un des éléments suivants :

  • createWidget
  • decorateWidget, changeWidgetSetting, reopenWidget, ou attachWidgetAction
  • Le composant MountWidget

:bulb: Astuce de pro : Si vous avez des extensions qui utilisent ces personnalisations, vous verrez un avertissement dans la console identifiant quel plugin ou composant doit être mis à jour.

:warning: Important : Si vous utilisez plus d’un thème dans votre instance, assurez-vous de tous les vérifier car les avertissements n’apparaîtront que pour les plugins actifs et les thèmes et composants de thème actuellement utilisés.

L’ID de dépréciation est : discourse.widgets-end-of-life

Quel est le rapport avec la récente modernisation du flux de publication ?

Le flux de publication était la dernière partie majeure de Discourse à utiliser le système de rendu des widgets. Avec sa modernisation, nous pouvons maintenant procéder à la mise à la retraite complète du système de widgets. Consultez le guide de mise à niveau pour plus de détails sur ces changements.

Comment puis-je effectuer la mise à niveau ?

Si vous utilisez un plugin ou un thème tiers : Vérifiez si l’auteur a publié une version mise à niveau compatible avec le nouveau système.

Si vous êtes un auteur de plugin/thème :

  • Remplacez vos widgets personnalisés par des composants Glimmer
  • Utilisez les connecteurs plugin-outlet pour les insérer dans l’interface utilisateur

Consultez nos Guides pour développeurs pour plus d’informations sur la manière d’effectuer ces mises à jour.

8 « J'aime »

Lorsque vous mettrez à jour votre installation Discourse la prochaine fois, le système de rendu des widgets sera désormais désactivé et toute personnalisation basée sur des widgets ne sera plus rendue.

Pour l’instant, sur les sites incompatibles, l’administrateur peut réactiver l’ancien comportement en modifiant les valeurs du paramètre suivant :

  • deactivate_widgets_rendering

C’est la phase finale avant de supprimer l’ancien code de la base de code de Discourse, ce qui est prévu dans environ un mois. Par la suite, il ne sera plus possible de réactiver les widgets.

6 « J'aime »

La PR supprimant le système de widgets de Discourse a été fusionnée hier.

1 « J'aime »