Dernier correctif couvert ici : v4.0.1 (publié le 30/05/2026).
Prérequis
- Node.js 20.0.0 ou plus récent (la v3 supportait Node 18)
Résumé des ruptures de compatibilité
| v3.x | v4.x |
|---|---|
client.users.* | client.user.* |
app.backup / app.backups | app.snapshots |
Export Backup | Export Snapshot |
app.deploys.list() renvoie un Deployment[] plat | Renvoie un Deployment[][] (appelez .flat() pour l’ancienne forme) |
Deployment.id formaté comme `git-${string}` | SHA-1 de commit brut (40 caractères hexadécimaux) |
app.network.dns() renvoie un tableau | Renvoie { ownership, ssl } |
app.network.analytics() ne prend aucun argument | Requiert { start, end } (chaîne ISO ou Date) |
app.network.purgeCache(paths?) | purgeCache() — argument supprimé en v4.0.1, purge toujours l’intégralité du cache |
app.custom === undefined | app.custom === null |
workspace.members / .applications contenaient des tableaux de données | Renommés en workspace.memberList / .applicationList ; les noms d’origine sont désormais des modules |
app.commit(file, name, restart) | app.commit(file, name) — troisième argument supprimé |
app.files.create(content, fullPath) | app.files.create(content, fileName, path) |
Renommages
client.users → client.user
api.users est toujours exporté sous forme d’accesseur déprécié qui redirige vers api.user, mais il affiche un avertissement à l’exécution.
Backups → Snapshots
Backup est désormais un alias déprécié de Snapshot.
Application
Application.custom
app.custom vaut désormais null (au lieu de undefined en v3) lorsqu’aucun domaine personnalisé n’est associé.
app.commit(file, fileName, restart)
Le troisième argument restart a été supprimé. Redémarrez manuellement après le commit :
app.files.create(content, path)
La signature est désormais create(content, fileName, path = "/"). Migration :
Deploys
Forme de app.deploys.list()
Deployment.id
Désormais un SHA-1 de commit brut (40 caractères hexadécimaux) au lieu d’une chaîne formatée `git-…`.
Network
app.network.dns()
app.network.analytics()
app.network.purgeCache()
Workspaces
Nouveautés de la v4
Au-delà des renommages et changements de signature ci-dessus, la v4 ajoute un ensemble substantiel de fonctionnalités :- Databases — cycle de vie complet, identifiants, snapshots et métriques (Databases)
- Workspaces — collaboration d’équipe avec codes d’invitation et rôles (Workspaces)
- Variables d’environnement — lister / définir / remplacer / supprimer (Variables d’environnement)
- Métriques d’application — échantillons CPU/RAM/réseau sur 24 h (Gérer les applications)
- Flux SSE en temps réel —
app.realtime()(Realtime) - Analytics edge — analytics, erreurs, logs et percentiles de latence (Network)
- Intégration GitHub App —
app.deploys.linkGithubApp({ ... })(Deploys) - Restauration de snapshot —
app.snapshots.restore({ snapshotId, versionId })etdb.snapshots.restore(snapshotId, versionId) - Endpoints status-all —
api.applications.statusAll(),api.databases.statusAll() - Statut du service —
api.service.status() - Snapshots au niveau utilisateur —
api.user.snapshots(scope) - Nouveaux champs User —
User.locale,User.createdAt,User.databases - Nouveaux champs BaseApplication —
domain,custom,createdAt SquareCloudAPIError.code— public pour la gestion des erreurs parswitch

