Chers développeurs de Discourse,
RE : rake posts:rebake (fonctionnalité future)
rake posts:rebake # Mettre à jour chaque publication avec le dernier markdown
rake posts:rebake_match[pattern,type,delay] # Rebake toutes les publications correspondant à une chaîne/regex et optionnellement retarder la boucle
A. Il serait idéal d’avoir une fonctionnalité de rebake permettant à l’utilisateur de ne rebaker que si l’ID du sujet (ou l’ID de la publication) est supérieur à un certain entier.
rake posts:rebake_incremental['topic_id', 34567] # Rebake si topic_id >= 34567
rake posts:rebake_incremental['post_id', 364123] # Rebake si post_id >= 364123
Raisons :
(1) Lors du rebake, surtout dans le cadre de tâches de migration, les développeurs peuvent déjà avoir migré des sujets/publications ; mais plus tard, lorsqu’ils mettent à jour la migration avec de nouvelles publications (par exemple dans un forum actif, lorsque la migration est mise à jour), il n’existe aucun moyen (à ma connaissance) de spécifier le point de départ dans le processus de bake. La correspondance de motifs n’est pas conçue pour cela (sauf si je mal interprète).
(2) Lors de l’ajustement fin du texte provenant d’anciens forums vers Discourse dans des tâches de migration, par exemple pour adapter des caractères spéciaux d’anciens forums afin qu’ils fonctionnent avec le Markdown dans un forum de programmation, ou pour ajuster des balises BBCode récursives dans des forums hérités, il est utile de rebaker, par exemple, les 1000 dernières publications (plutôt que toute la base de données).
B. Encore plus flexible que A (spécifier un opérateur de comparaison)
rake posts:rebake_incremental['topic_id', '>=',34567] # Rebake si topic_id >= 34567
rake posts:rebake_incremental['post_id','<', 364123] # Rebake si post_id < 364123
Générique :
rake posts:rebake_incremental[cible, opérateur, id]
Où :
- cible est soit topic_id, soit post_id
- opérateur est un opérateur de comparaison arithmétique
- id est un entier, soit topic_id, soit post_id
Remarque : Les tâches de migration nécessitent souvent de nombreuses itérations pour être correctement exécutées, en particulier pour le texte et le codage des publications du forum original vers Discourse. De nombreux caractères utilisés dans des forums non basés sur Markdown peuvent, lors de leur migration vers un forum traité avec Markdown, causer des problèmes. Avoir un meilleur contrôle sur le processus de rebake, comme illustré, serait d’une grande aide.