Mise à jour Apps Script : Migration obligatoire vers V8 avant janvier 2026
L’environnement d’exécution Rhino pour Google Apps Script sera définitivement supprimé à partir du 31 janvier 2026. Cette transition impose aux développeurs de migrer leurs scripts existants vers le moteur V8 afin d’éviter toute interruption de service.
Pourquoi passer à V8 ?
Depuis 2020, V8 est le moteur d’exécution par défaut pour Apps Script. Son adoption présente plusieurs bénéfices majeurs :
- Compatibilité avec les normes modernes de JavaScript : prise en charge des fonctionnalités ES6 et ultérieures (
let
,const
, fonctions fléchées, classes, etc.). - Performances et sécurité améliorées : V8 exécute le code plus rapidement et offre une meilleure gestion des erreurs.
- Pérennité des scripts : le passage à V8 garantit la compatibilité avec les mises à jour futures de Google Apps Script.
Vérifier si vos scripts sont concernés
Google met à disposition des fichiers CSV et PDF listant les scripts encore exécutés sous Rhino. Ces documents permettent d’identifier rapidement les projets à migrer.
Comment effectuer la migration vers V8 ?
1. Activer V8 pour vos scripts
Accédez aux paramètres de votre projet Apps Script et basculez vers le moteur V8.
2. Vérifier et corriger les incompatibilités
Certaines spécificités propres à Rhino ne sont pas compatibles avec V8. Voici les principales corrections à apporter :
- Remplacez
for each(variable in object)
parfor (variable in object)
. - Utilisez
Date.prototype.getFullYear()
à la place deDate.prototype.getYear()
. - Renommez toute variable ou fonction utilisant un mot-clé réservé (
class
,import
,export
). - Assurez-vous de ne pas réassigner une variable déclarée avec
const
. - Supprimez toute utilisation des XML literals et du XML object ; privilégiez
XmlService
. - Modifiez la gestion des erreurs en évitant les
catch(e if condition)
, placez plutôt la condition dans le bloccatch
. - Retirez toute référence à
Object.prototype.toSource()
.
3. Tester et optimiser votre code
- Exécutez votre script avec V8 et identifiez les éventuelles erreurs.
- Ajustez la gestion des dates (
toLocaleDateString()
,toLocaleTimeString()
, etc.). - Vérifiez la sérialisation JSON : les objets
enum
sont désormais retournés sous forme de chaîne ("ENUM_NAME"
) plutôt que{}
. - Contrôlez la gestion des erreurs :
Error.fileName
etError.lineNumber
ne sont plus disponibles, utilisezError.stack
si nécessaire.
4. Publier la nouvelle version
Si votre script est utilisé sous forme d’add-on ou de web app, vous devrez republier une version compatible avec V8.
Points de vigilance supplémentaires
- Problèmes avec
instanceof
en bibliothèques : le moteur V8 utilise un contexte d’exécution distinct pour chaque projet, ce qui peut fausser certaines vérificationsinstanceof
. - Différence de gestion des ressources non partagées : les services comme
PropertiesService
ouCacheService
ne se comportent pas de la même manière selon qu’ils sont appelés depuis le script principal ou une bibliothèque. - Changement du contexte
this
: en V8,this
inclut désormais les services Apps Script et les objets ECMAScript intégrés.
Besoin d’un accompagnement ?
La transition vers V8 peut nécessiter des ajustements techniques importants. Notre agence Apps Script vous accompagne dans la migration et l’optimisation de vos scripts Apps Script. Contactez-nous pour une assistance personnalisée et garantissez la compatibilité de vos automatisations avec les évolutions de Google Apps Script.
Ne tardez pas à entamer cette migration afin d’assurer la continuité de vos scripts avant janvier 2026 !