Bonjour ! Je lutte avec ça depuis quelques jours, donc toute aide est appréciée !
Je développe un fork d’un plugin qui nécessite le gem ruby discordrb. Pour une raison quelconque, la version la plus à jour sur discordrb | RubyGems.org | your community gem host est la 3.4.0, qui date d’environ deux ans et est boguée.
Il est toujours en développement actif. En parlant récemment aux développeurs, la prochaine version sortira « quand elle sera prête ». Entre autres choses, ils travaillent sur le support du multithreading.
Ce sont la même chose. C’est juste que le document gem ne revendique que 3.4.0 comme dernière version. L’autre est le dépôt officiel. Si vous cliquez sur le lien Homepage de votre premier lien, il vous mène à votre deuxième lien Je n’ai aucune idée pourquoi le document gem ne liste pas 3.4.1.
Oui ! Je suis à peu près sûr que notre plugin est un fork d’un fork de celui-ci. Nous avons besoin d’une logique spécifique dans notre cas, il est donc logique de développer notre propre version.
À quoi cela ressemblerait-il dans le contexte de Discourse ? J’ai l’impression d’avoir essayé toutes les méthodes pour déclarer la dépendance via GitHub dans plugin.rb (vérifiez l’historique de nos commits :smile:)
Notre build échoue avec toutes les syntaxes de gem que j’ai essayées pour pointer vers la source GitHub. Je suis à peu près sûr que cela a à voir avec la façon dont discourse/lib/plugin_gem.rb at main · discourse/discourse · GitHub essaie de trouver le fichier .gemspec pour les gems de plugin. Pourriez-vous me donner les étapes pour une solution de contournement ?
Salut @FerrariFlunker
Voici un exemple de plugin officiel qui utilise une copie locale de la gem holidays. Je pense que vous pouvez utiliser un schéma similaire dans votre cas.
Une version locale du dépôt git (note : ne peut pas être un sous-module, doit être une vraie copie locale) et les lignes d’inclusion libdir ont parfaitement fonctionné ! Merci beaucoup pour votre aide, c’est incroyablement apprécié @fzngagan et @merefield
J’espère que ce sujet aidera d’autres personnes à trouver cette réponse, cela a été tout un voyage pour comprendre cela