Je pense que les versions de packages définitivement typés ne doivent pas correspondre à la version du package réel. Par exemple, au moment où j'écris ce numéro, la dernière version de lodash
est '4.17.2 and the latest version of
@types/lodash is
4.14.43 . This probably means that the typings are for
lodash -v4.14.43`. Il est donc déroutant de modifier un package de typage car il n'y a pas de bon moyen d'incrémenter le package de typage car il est censé être la version réelle du package. Cela interrompra l'installation des packages npm dans de nombreux projets.
Je suggère aux packages de saisies de ne pas suivre les versions exactes des packages réels. Par example:
version lodash : 4.14.43
@types/version lodash : 4.1.1
Mais dans le fichier .d.ts, nous devons écrire explicitement la version compatible du package lodash.
Nous pouvons également avoir @types/lodash-3
etc pour l'ancienne version de lodash
La politique pour les numéros de version est d'essayer de garder les deux premiers numéros en ligne. @types/lodash étant à 4.14.x signifie qu'il devrait fonctionner avec lodash 4.14 et supérieur. Le dernier chiffre reflète les mises à jour de la structure du package (par exemple, quelqu'un a peut-être fait une définition de type plus précise pour les modifications 4.14).
Étant donné que DT est pris en charge par la communauté, il semble que l'un des éléments suivants doit être vrai :
Je suppose que c'est le #2.
Quant à @types/lodash-3, la façon dont les modules sont résolus, vous devez effectuer quelque chose comme import * as _ from "lodash-3"
pour que ces types soient récupérés.
Merci pour votre excellente réponse. Cette question me vient à l'esprit car récemment une mise à jour des typages lodash a cassé mon code (https://github.com/DefinitelyTyped/DefinitelyTyped/commit/34124e057f3f2baf4d1b0f17616a00221c04690c). Apparemment, nous devrions écrire plus de tests pour les typages lodash.
Pour le contexte, cet autre fil donne l'impression que la politique consistant à essayer de synchroniser quelque peu les numéros de version n'est suivie que par certains packages.
Commentaire le plus utile
La politique pour les numéros de version est d'essayer de garder les deux premiers numéros en ligne. @types/lodash étant à 4.14.x signifie qu'il devrait fonctionner avec lodash 4.14 et supérieur. Le dernier chiffre reflète les mises à jour de la structure du package (par exemple, quelqu'un a peut-être fait une définition de type plus précise pour les modifications 4.14).
Étant donné que DT est pris en charge par la communauté, il semble que l'un des éléments suivants doit être vrai :
Je suppose que c'est le #2.
Quant à @types/lodash-3, la façon dont les modules sont résolus, vous devez effectuer quelque chose comme
import * as _ from "lodash-3"
pour que ces types soient récupérés.