Vitaly Slobodin, le principal développeur du populaire framework de test Phantom.js a décidé de jeter l'éponge, laissant le projet face à un futur incertain.
Dans un poste, Slobodin indique qu'il ne voyait aucune raison de continuer à développer Phantom.js, compte tenu de l'arrivée du navigateur sans interface dans Chrome 59.
Phantom.js est souvent utilisé dans les suites de tests automatisés de site web, principalement pour sa capacité à fonctionner sans interface graphique. Il est basé sur WebKit et peut effectuer de nombreuses tâches comme la manipulation du DOM ou la prise de capture d'écran.
Avec Chrome 59, Google propose un produit similaire qui a de fortes chances d'être adopté par les développeurs. Paul Irish a contacté l'équipe de Phantom.js pour voir s'ils seraient intéressés pour utiliser Chromium comme cible d'exécution. Mais Slobodin a fait remarquer que "PhantomJS s'appuie beaucoup sur Qt et QtWebKit. Ce n'est pas si simple d'adopter Chrome comme nouveau moteur d'exécution." Et ajoute : "Nous n'avons pas les ressources pour cela. La base de code de Chromium est nettement plus importante et compliquée que ce que nous avons actuellement dans le projet."
Ariya Hidayat, le créateur de PhantomJS semble quant à lui avoir des espoirs pour PhantomJS sur Chromium:
Je crois que ce pourrait être un très bon moteur pour PhantomJS. Il serait intéressant de voir PhantomJS revenir à sa philosophie initiale (au début du projet, c'était simplement une application utilisant QtWebKit) plutôt que d'embarquer son propre moteur. Ce serait même encore mieux si d'autres moteurs (i.e Gecko, Edge) se mettaient à proposer le même genre de fonctionnalités, permettant aux utilisateurs de PhantomJS de changer facilement de moteur.
Si on se fie aux contributions GitHub, Slobodin semble être le principal développeur sur le projet depuis mi 2015 alors que les contributions d'Hidayat datent majoritairement d'avant. Pour que PhantomJS continue, le projet aura besoin de trouver un nouveau développeur motivé pour reprendre activement les développements. De son coté, Hidayat est optimiste. En réponse à InfoQ, il précise que le projet continuera :
Vitaly a fait un travail incroyable ces dernières années. Nous devons juste nous adapter à la situation. Espérons que l'un de nous reprendra le flambeau ou qu'un nouveau contributeur se manifestera pour reprendre le travail de Vitaly.
Quel que soit le repreneur, le challenge sera important. A l'heure de la rédaction de cet article, PhantomJS compte plus de 1 800 tickets ouverts.
Un début de repository GitHub semble indiquer la suite des évènements concernant Slobodin : Phantomium ; qui est décrit comme une réimplémentation de PhantomJS "comme un nouveau projet (mais avec la même API) qui utilisera Chrome".