Tsd: Obsoletar TSD

Criado em 26 jan. 2016  ·  15Comentários  ·  Fonte: DefinitelyTyped/tsd

O projeto Typings (https://github.com/typings/typings) evoluiu e pode atualmente consumir DefinitelyTyped como um subconjunto do ecossistema. Essa melhoria efetivamente tornou a manutenção do TSD redundante e, ao longo do tempo, as definições devem ser escritas como módulos externos com typings.json ou convertidos em linha com bibliotecas para o compilador TypeScript consumir diretamente.

Este problema será resolvido quando um site oficial para Typings for criado e a documentação aprimorada puder ser vinculada. Atualmente serve como um aviso para usuários novos ou existentes.

Para continuar instalando as definições de tipo do DefinitelyTyped, lembre-se de usar o sinalizador --ambient (tudo em DefinitelyTyped é essencialmente "global"). Se você pretende publicar uma biblioteca usando dependências sem definições de tipo (por exemplo, você instalou tipificações de DefinitelyTyped / Typings), você precisará certificar-se de que são dependências (e não ambiente). O principal problema com dependências globais é manutenção e conflitos.

typings install node --save --ambient

Os PRs e questões de TSD continuarão a ser respondidos, mas o desenvolvimento é efetivamente EOL. Se outro desenvolvedor quiser pegar manutenção e / ou desenvolvimento, você é bem-vindo para contribuir. Os problemas existentes já devem ser resolvidos com a digitação, mas se você encontrar algo que não funciona - crie um problema com a digitação.

Links: https://github.com/DefinitelyTyped/tsd/issues/150 , https://github.com/typings/discussions/issues/5 e https://github.com/typings/typings/issues/125.

Editar: Typings implementou um comando de atualização para usuários TSD. A atualização apenas converterá o formato de tsd.json em typings.json , pode haver ajustes adicionais que você precisa fazer (como corrigir referências agora eliminadas).

typings init --upgrade
important notice

Comentários muito úteis

: +1:

para referências para atualizar do tsd

webpack + texto datilografado
https://github.com/angular/universal-starter/commit/cfb7b52b12e1da9de7ee7c2a452e7636c93aaa09

gulpjs + texto datilografado
https://github.com/angular/answers-app/pull/27/files

gulpjs com texto datilografado
https://gist.github.com/gdi2290/e544407980e261acc172

comandos

$ npm uninstall tsd
$ rm -rf typings
$ npm install typings
$ typings init --upgrade
$ rm tsd.json
$ typings install

Todos 15 comentários

: +1:

para referências para atualizar do tsd

webpack + texto datilografado
https://github.com/angular/universal-starter/commit/cfb7b52b12e1da9de7ee7c2a452e7636c93aaa09

gulpjs + texto datilografado
https://github.com/angular/answers-app/pull/27/files

gulpjs com texto datilografado
https://gist.github.com/gdi2290/e544407980e261acc172

comandos

$ npm uninstall tsd
$ rm -rf typings
$ npm install typings
$ typings init --upgrade
$ rm tsd.json
$ typings install

Apenas um pequeno acréscimo às etapas de migração @ gdi2290 em relação a algo que acabou de acontecer comigo.
Se alguém o seguir e terminar com centenas de TS2300: duplicate indetifier ... durante a compilação, a solução está aqui https://www.npmjs.com/package/typings#maindts -and-browserdts

Como você faz tsd link com digitações?

Como você faz o vínculo tsd com as tipificações?

Você não. O link TSD tem falhas e não é realmente uma solução sólida de longo prazo - já que depende de módulos de ambiente, causa identificadores duplicados e geralmente força os usuários a reinstalar subdependências. Supondo que você queira exatamente a mesma coisa, você pode fazer typings install npm:<library>/<path-to-d-ts> --ambient . Provavelmente, você deseja uma solução diferente em que as subdependências sejam tratadas de maneira adequada. Nesse caso, publique seu arquivo typings.json com sua biblioteca e faça typings install npm:<library> --save - as dependências em <library>/typings.json serão resolvidas.

Tive um problema ao instalar tipificações de outro repositório. Criado um novo problema: https://github.com/typings/typings/issues/133

Você está apenas imaginando qual é a visão / intenção aqui para DefinitelyTyped / tsd vs Typings? Eu entendo que o Typings é descentralizado e pode falar com o DefinitelyTyped, mas também sei que o Typings também tem repositórios para alguns projetos populares ... daí minha pergunta.

Não faria sentido exigir que todos os typedefs fossem centralizados em instalações de pacotes npm em vez de replicar metade da infraestrutura dentro de nossos projetos locais?

  • não tsd
  • sem digitação
  • sem replicação de esforço
  • sem pegadas de dependência repetidas ...

JSPM é um caso alarmante em questão

A NPM já possui os acessórios para apoiar e processar isso.

Alguém está teorizando sobre o impacto das dependências temporárias?

Eu não mandaria meu filho para uma creche, o que transfere a tarefa para outra creche em outro lugar ... alguma coisa vai eventualmente se desconectar ... muito menos uma única dependência transitória vagando pelo ecossistema.

@nhhockeyplayer idealmente seria o caso, mas para que isso acontecesse, cada autor precisaria incluir e manter as definições de tipo.

Relacionado

Para Angular 2, podemos assumir que cada módulo ng2 incluirá definições de tipo, mas para os outros módulos isso provavelmente não será o caso. Portanto, haverá uma comunidade (ng2) que se beneficiará mais, garantindo que cada módulo em seu ecossistema inclua definições de tipo (o caso ideal).

@blakeembrey, desculpe por esbarrar neste problema. Acabei de notar que o aviso de depreciação adicionado ao leia-me aqui no github não está no npm, o que pode fazer com que as pessoas ainda o usem sem o conhecimento inicial de que o pacote está obsoleto. Provavelmente porque não houve nenhuma nova versão desde que o pacote se tornou obsoleto.

Se você instalar o NPM, ele diz.

Edit: Mas vou dar uma olhada e lançar uma nova versão.

Legal, então está tudo bem 👍

você poderia adicionar um aviso de descontinuação à página npm ?
Torna mais fácil para os retornantes descobrirem sobre as digitações.

Seria legal enviar a versão completa e acabada de typings primeiro e depois descontinuar tsd porque agora typings apenas torna as coisas mais difíceis e confusas com essa bagunça com vários repos IMO. 😠

Existem quatro questões nesta página de questões que datam de meses atrás, apontando que tsd não funciona mais para instalar pacotes básicos como jquery ou react. Desprezar ou interromper o desenvolvimento é uma coisa, mas parece que o tsd foi realmente encerrado (?). Este é um problema real - especialmente porque parece não ter havido nenhum tipo de serviço de anúncio explícito sendo totalmente descontinuado - uma vez que tsd é o tipo de ferramenta que poderia fazer parte da implantação automatizada. Acabei de ver um serviço da web se extinguir porque sua implantação automatizada executa o tsd, que não funciona mais.

Ele diz que está obsoleto na instalação há mais de um ano. Como o TSD é baseado no GitHub, tudo ainda funciona perfeitamente bem. O que você veria são mudanças DefinitelyTyped. A arquitetura TSD não pode lidar com as mudanças, e a mudança foi uma decisão do TypeScript para suportar NPM @types .

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

Diullei picture Diullei  ·  70Comentários

lazlojuly picture lazlojuly  ·  9Comentários

L6Echo picture L6Echo  ·  7Comentários

jarben picture jarben  ·  3Comentários

DanielRosenwasser picture DanielRosenwasser  ·  3Comentários