Definitelytyped: Erro: node_modules/@types/jasmine/index.d.ts (138,47): erro TS1005: ';' esperado.

Criado em 6 nov. 2018  ·  60Comentários  ·  Fonte: DefinitelyTyped/DefinitelyTyped

Se você souber como corrigir o problema, faça uma solicitação de pull.

Eu tenho os seguintes erros

Error: node_modules/@types/jasmine/index.d.ts(138,47): error TS1005: ';' expected.
node_modules/@types/jasmine/index.d.ts(138,90): error TS1005: '(' expected.
node_modules/@types/jasmine/index.d.ts(138,104): error TS1005: ']' expected.
node_modules/@types/jasmine/index.d.ts(138,112): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,113): error TS1136: Property assignment expected.
node_modules/@types/jasmine/index.d.ts(138,121): error TS1005: ')' expected.
node_modules/@types/jasmine/index.d.ts(138,147): error TS1005: '(' expected.
node_modules/@types/jasmine/index.d.ts(138,162): error TS1005: ']' expected.
node_modules/@types/jasmine/index.d.ts(138,163): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,164): error TS1136: Property assignment expected.
node_modules/@types/jasmine/index.d.ts(138,165): error TS1136: Property assignment expected.
node_modules/@types/jasmine/index.d.ts(138,179): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,183): error TS1005: ':' expected.
node_modules/@types/jasmine/index.d.ts(138,208): error TS1005: '{' expected.
node_modules/@types/jasmine/index.d.ts(138,217): error TS1005: ':' expected.
node_modules/@types/jasmine/index.d.ts(138,222): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,227): error TS1005: ':' expected.
node_modules/@types/jasmine/index.d.ts(138,228): error TS1109: Expression expected.
node_modules/@types/jasmine/index.d.ts(138,230): error TS1005: ')' expected.

@ armanio123

Comentários muito úteis

"@ types / jasmine": "2.8.6" & "typescript": "2.7.2" funcionou.
O problema é "@ types / jasmine": "~ 2.8.6" -> ele atualiza para 2.8.11 incompatível com o texto digitado para 2.7.2 (requer 3. +)

Todos 60 comentários

@stefdelec Qual versão do typescript você está usando? Este pacote de tipificações destina-se ao TS 2.8+. Não recebo esses erros no TS mais recente

[email protected]

Não deveria funcionar para esta versão?

Na verdade. O próprio pacote diz que é para TS 2.8+ , e algumas partes da sintaxe usadas na linha 138 foram introduzidas pela primeira vez em TS 2.7 (ou seja , propriedades com nomes constantes ) e TS 2.8 (ou seja, tipos condicionais ).

TS 2.6.2 é muito antigo, com a versão mais recente do TS sendo 3.1.6

Eu também estou tendo o mesmo problema. Mas quando estou tentando usar uma versão superior do texto datilografado está lançando algum outro erro.

@saurabhsharmaui qual versão de TS exatamente você está tentando e que tipo de erro você está recebendo?

Atualmente estou usando "typescript": "~ 2.3.4" e "@ types / jasmine": "~ 2.8.1", e com essa combinação estou recebendo o erro acima, mas a mesma coisa estava funcionando bem até ontem.
Agora, de acordo com seu comentário, tentei usar uma versão superior, mas falhou na instalação do npm.
npm WARN opcional Falha ao ignorar dependência opcional / chokidar / fsevents:

npm WARN notsup Não compatível com seu sistema operacional ou arquitetura: [email protected]

npm WARN opcional Falha ao ignorar dependência opcional / live-server / chokidar / fsevents:

npm WARN notsup Não compatível com seu sistema operacional ou arquitetura: [email protected]

npm WARN opcional Falha ao ignorar dependência opcional / browser-sync / chokidar / fsevents:

npm WARN notsup Não compatível com seu sistema operacional ou arquitetura: [email protected]

npm WARN opcional Falha ao ignorar dependência opcional / gulp-watch / chokidar / fsevents:

npm WARN notsup Não compatível com seu sistema operacional ou arquitetura: [email protected]

npm WARN opcional Falha ao ignorar dependência opcional / karma / chokidar / fsevents:

npm WARN notsup Não compatível com seu sistema operacional ou arquitetura: [email protected]

npm WARN [email protected] requer um par de @ angular / common @ ^ 2.3.0, mas nenhum foi instalado.

npm WARN [email protected] requer um par de @ angular / core @ ^ 2.3.0, mas nenhum foi instalado.

npm WARN @ angular / [email protected] requer um par de zone.js@^0.8.4 mas nenhum foi instalado.

npm ERR! Linux 4.4.121-92.85-default

npm ERR! argv "/opt/JE2A1/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/NodeJS6.5.0/bin/node" "/opt/JE2A1/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSallation6 .5.0 / bin / npm "" instalar "

npm ERR! nó v6.5.0

npm ERR! npm v3.10.3

npm ERR! caminho /home/je2adm/.npm/content-type/1.0.4/package.tgz.1017518879

npm ERR! código ENOENT

npm ERR! errno -2

npm ERR! syscall renomear

npm ERR! enoent ENOENT: nenhum arquivo ou diretório, renomeie '/home/je2adm/.npm/content-type/1.0.4/package.tgz.1017518879' -> '/home/je2adm/.npm/content-type/1.0. 4 / package.tgz '

npm ERR! enoent ENOENT: nenhum arquivo ou diretório, renomeie '/home/je2adm/.npm/content-type/1.0.4/package.tgz.1017518879' -> '/home/je2adm/.npm/content-type/1.0. 4 / package.tgz '

npm ERR! enoent Este provavelmente não é um problema com o próprio npm

npm ERR! enoent e está relacionado ao npm não conseguir localizar um arquivo.

npm ERR! enoent

Parece um problema com a instalação de jenkins do npm, problemas semelhantes foram relatados anteriormente (ou seja, aqui ou aqui ) e pode não estar diretamente conectado ao typescript. Uma das correções sugeridas foi reinstalar completamente o npm.

Você está instalando o TS global ou localmente para o seu projeto? Você já tentou remover node_modules e package-lock.json , limpar o cache npm ( npm cache clean --force ) e reinstalar as dependências?

Olá @burtek . Muito obrigado pelo seu

@saurabhsharmaui fico feliz por ter ajudado

@stefdelec você conseguiu fazê-lo funcionar?

Oi. Eu tenho o mesmo problema. typescript: 2.9.2 e @ types / jasmine: 2.8.9. Não tenho ideia de como consertar isso. Tentei tudo acima, nada ajuda

Eu tenho o mesmo erro no trabalho.
Estou trabalhando em um modelo gerado para o projeto base. Portanto, um novo projeto está surgindo hoje, mas não ontem.

Extrato do meu package.json

...
    "devDependencies": {
        "@angular-devkit/build-angular": "~0.6.8",
        "@angular/cli": "~6.0.8",
        "@angular/compiler-cli": "^6.0.3",
        "@angular/language-service": "^6.0.3",
        "@types/jasmine": "~2.8.6",
        "@types/jasminewd2": "~2.0.3",
        "@types/node": "~8.9.4",
...
        "jasmine-core": "~2.99.1",
        "jasmine-spec-reporter": "~4.2.1",
        "karma": "^3.0.0",
        "karma-chrome-launcher": "~2.2.0",
        "karma-coverage-istanbul-reporter": "~2.0.0",
        "karma-jasmine": "~1.1.1",
        "karma-jasmine-html-reporter": "^0.2.2",
...
        "ts-node": "~5.0.1",
        "tslint": "~5.9.1",
        "typescript": "~2.7.2"
    },
...

@vnazarchukmob é possível que você tenha o typescript instalado globalmente e localmente e um deles esteja abaixo de 2.8?

@mowgliLab como mencionei acima, @types/jasmine é para TS 2.8+, enquanto você ainda está usando TS 2.7.x. Atualize typescript para pelo menos 2.8.0 .

@mowgliLab O problema é que a versão atual 2.8.11 que requer TS 2.8 satisfaz seu semver de ~2.8.6 , portanto, ao executar npm install em um modelo com dependência ~2.8.6 , a versão 2.8.11 seria instalada. Pode ter funcionado para projetos mais antigos (que tinham uma versão anterior de @types/jasmine instalada), mas criar novos com seu modelo agora está corrompido, já que pegaria a versão 2.8.11, que é incompatível com TS 2.7. 2 Você deve atualizar o modelo que você usa para usar o TS de pelo menos o branch 2.8.x (eu recomendo usar o último TS do branch 3.1.x, pois ele vem com muitos novos recursos, melhorias e correções em comparação com o 2.7.x)

@burtek sim, ele foi instalado globalmente com a versão anterior 2.3.4. Eu atualizei para 3.1.6. mas não ajuda

@vnazarchukmob só para ter certeza: você instalou globalmente o TS 3.1.6, o TS 2.9.2 localmente, o @ types / jasmine de 2.8.9 instalado localmente e está recebendo o erro do primeiro post. Isso é correto?

Ok, vou verificar se está tudo bem para atualizar para novos projetos.
Eu testei com o typescript 3.1.6 e funciona.

Obrigado @burtek

@mowgliLab fico feliz por ter ajudado

@burtek sim

A última coisa que me vem à mente é reinstalar node_modules , mas não tenho certeza se isso vai ajudar. Estou sem ideias 😢

@ armanio123 , tem alguma ideia?

mesmo problema, começou ontem.

@ r3hxn Você leu a conversa? Certifique-se de estar usando TS de pelo menos 2,8

@ r3hxn Você leu a conversa? Certifique-se de estar usando TS de pelo menos 2,8

obrigado, estou trabalhando nisso, o problema parece aparecer apenas em nosso pipeline de Jenkins

@ r3hxn se você não quiser alterar a versão do typescript, apenas altere a versão do @ type / jasmine para 2.8.9. Funcionará bem. Aqui, o problema é com o novo lançamento de @ type / jasmine, que precisa de uma versão superior do typescript.

obrigado @saurabhsharmaui que ajuda

@ r3hxn fico feliz em poder ajudar.

Eu tive o mesmo problema, atualizando o texto datilografado para as ajudas mais recentes.
O problema é Angular 6 usando TS 2.7.2 AFAIK, então todos os novos aplicativos criados por ng new da versão ~ 6.0.0 terão esse problema.

@ r3hxn Você leu a conversa? Certifique-se de estar usando TS de pelo menos 2,8

obrigado, estou trabalhando nisso, o problema parece aparecer apenas em nosso pipeline de Jenkins

Estamos experimentando a mesma coisa: funciona nas máquinas de desenvolvimento, mas não no Jenkins.

Eu entendo seu desejo de mudar para um TS mais recente, mas fazê-lo em uma versão menor atrapalha muitas pessoas.

Como uma observação lateral, atualizar esses tipos para _require_ TS 2.8+ não é uma versão secundária , isso quebrou muitos projetos que agora precisam ser fixados em uma versão mais antiga de tipos / jasmim.
Esta foi uma mudança importante e deveria ser um novo número de versão principal 😢

Fixar em 2.8.3 e deixar TS em um projeto que não poderia ir além de 2.5.3 funcionou.

@ types / jasmine para 2.8.8 e typescript para 2.6.2 funcionaram para mim

"@ types / jasmine": "2.8.3" com o mesmo texto datilografado de antes serviu para mim.
Obrigado @MarkPieszak

"@ types / jasmine": "2.8.6" & "typescript": "2.7.2" funcionou.
O problema é "@ types / jasmine": "~ 2.8.6" -> ele atualiza para 2.8.11 incompatível com o texto digitado para 2.7.2 (requer 3. +)

Depois de atualizar "typescript": "^ 3.1.6" e "@ types / jasmine": "^ 2.8.11" Compilações bem-sucedidas em servidores de compilação tfs

Também fomos um pouco prejudicados nos últimos dias.

"@types/jasmine": "^2.8.8",
"typescript": "~2.7.2",

Fica muito confuso quando 2.8.8 e 2.8.9 suportam diferentes versões de TS ... amiright ?!

screen shot 2018-11-08 at 10 22 54 am

Também encontramos esse problema, e devo dizer que confiar em uma nova versão do texto digitado deve ser considerado uma alteração importante, o que significa que a versão do pacote (de acordo com o Semver) deveria ter sido aumentada para 3.XX em vez da versão do patch que recebeu. Isso causa muitos problemas para as pessoas que poderiam ter sido evitados, tornando-se um erro imperdoável.

estamos tendo os mesmos problemas que fiz tudo sugerido acima, mas não está funcionando.
Alguém tem ideia do que fazer ...

Eu me deparei com esse problema começando ontem, e devido a este tópico ser recente, presumi que fosse com algumas alterações de versão, como vários mencionaram acima. Eu tive exatamente os mesmos problemas, no entanto, não atualizei nenhum pacote TS ou Jasmine Types recentemente. Meu problema era com o npm localmente, então executei o seguinte para resolver as coisas e meus erros foram embora:

npm cache verify

Resolvido isso atualizando o texto digitado para 3.1.6 e jasmine para 3.3.0

Na verdade. O próprio pacote diz que é para TS 2.8+ , e algumas partes da sintaxe usadas na linha 138 foram introduzidas pela primeira vez em TS 2.7 (ou seja , propriedades com nomes constantes ) e TS 2.8 (ou seja, tipos condicionais ).

TS 2.6.2 é muito antigo, com a versão mais recente do TS sendo 3.1.6

@burtek Obrigado por

Estou um pouco preocupado que uma alteração significativa como essa tenha sido publicada em uma versão de lançamento de patch. TS 2.5+ não é tão antigo assim e muitos projetos o estão usando. Também não é um caminho válido para muitos projetos "atualizar o texto digitado". Muitas vezes somos limitados por nosso trabalho e algo assim requer testes de regressão pesados. É desconcertante ter uma compilação interrompida repentinamente sem nenhum aviso.

Meu entendimento sobre o semver é que tudo o que quebra a compatibilidade com versões anteriores deve ser tratado como uma versão principal. Por que essa convenção não foi seguida aqui? Devemos esperar que essa convenção não seja seguida por esta biblioteca?

Obrigado novamente por toda a sua ajuda.

@ jeffskelton3 Não fui eu quem trabalhou nessa mudança, nem a

Dito isto, concordo totalmente com tudo o que foi dito neste tópico. Não é apenas minha culpa, nem minha responsabilidade; Tentei ajudar a comunidade JS da melhor maneira que pude

@burtek pede desculpas por direcionar a questão para a pessoa errada (eu devo ter

@ jeffskelton3 não se preocupe

Eu tenho o mesmo problema há dois dias. Nada mudou no meu projeto package.json, de repente, ele falha ao empacotar com o erro.

A propriedade 'toContainEqual' não existe no tipo 'ArrayLikeMatchers
A propriedade 'toContainEqual' não existe no tipo 'ArrayLikeMatchers

pesquisei dois dias, depois venho aqui, mas ainda não resolveu.

Como outro ponto de referência, NativeScript atualmente tem como alvo TypeScript ~ 2.7.2. Configurar um projeto usando os padrões NativeScript-CLI para Jasmine como a estrutura de teste padrão. Portanto, apenas mais uma votação para garantir que as atualizações de versões secundárias não exijam atualizações de outros pacotes. Obrigado!

Eu tive esse problema apenas no ambiente travis e mudar para 2.5.38 funcionou!

https://travis-ci.org/mariohmol/ng-gantt/builds/459888259

Tive o mesmo problema ao executar o "teste de ng". Foi para node_modules/@types/jasmine/index.d.ts.
Na linha 11, ele diz "// TypeScript Version: 2.8"

Então eu
C: \ my-project-directory> npm install [email protected]
e isso resolveu o problema.

Também estou encontrando os mesmos erros acima. Aqui está o resultado do CI:

Está funcionando bem localmente (como algumas mensagens acima mencionam), mas no GitLab CI, está definitivamente quebrado ... 🤕

06 12 2018 15:34:42.681:ERROR [karma]: Error: node_modules/@types/jasmine/index.d.ts(138,47): error TS1005: ';' expected.
node_modules/@types/jasmine/index.d.ts(138,90): error TS1005: '(' expected.
node_modules/@types/jasmine/index.d.ts(138,104): error TS1005: ']' expected.
node_modules/@types/jasmine/index.d.ts(138,112): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,113): error TS1136: Property assignment expected.
node_modules/@types/jasmine/index.d.ts(138,121): error TS1005: ')' expected.
node_modules/@types/jasmine/index.d.ts(138,147): error TS1005: '(' expected.
node_modules/@types/jasmine/index.d.ts(138,162): error TS1005: ']' expected.
node_modules/@types/jasmine/index.d.ts(138,163): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,164): error TS1136: Property assignment expected.
node_modules/@types/jasmine/index.d.ts(138,165): error TS1136: Property assignment expected.
node_modules/@types/jasmine/index.d.ts(138,179): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,183): error TS1005: ':' expected.
node_modules/@types/jasmine/index.d.ts(138,208): error TS1005: '{' expected.
node_modules/@types/jasmine/index.d.ts(138,217): error TS1005: ':' expected.
node_modules/@types/jasmine/index.d.ts(138,222): error TS1005: ',' expected.
node_modules/@types/jasmine/index.d.ts(138,227): error TS1005: ':' expected.
node_modules/@types/jasmine/index.d.ts(138,228): error TS1109: Expression expected.
node_modules/@types/jasmine/index.d.ts(138,230): error TS1005: ')' expected.

    at Compiler.compiler.plugin (/var/www/cadi-front/node_modules/@angular/cli/plugins/karma-webpack-throw-error.js:10:23)
    at Compiler.applyPlugins (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:61:14)
    at Watching._done (/var/www/cadi-front/node_modules/webpack/lib/Compiler.js:105:17)
    at onCompiled (/var/www/cadi-front/node_modules/webpack/lib/Compiler.js:55:18)
    at applyPluginsAsync.err (/var/www/cadi-front/node_modules/webpack/lib/Compiler.js:510:14)
    at next (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:202:11)
    at Compiler.<anonymous> (/var/www/cadi-front/node_modules/webpack/lib/CachePlugin.js:78:5)
    at Compiler.applyPluginsAsyncSeries (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:206:13)
    at compilation.seal.err (/var/www/cadi-front/node_modules/webpack/lib/Compiler.js:507:11)
    at Compilation.applyPluginsAsyncSeries (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:195:46)
    at applyPluginsAsync.err (/var/www/cadi-front/node_modules/webpack/lib/Compilation.js:677:19)
    at Compilation.applyPluginsAsyncSeries (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:195:46)
    at applyPluginsAsync.err (/var/www/cadi-front/node_modules/webpack/lib/Compilation.js:668:11)
    at Compilation.applyPluginsAsyncSeries (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:195:46)
    at applyPluginsAsync.err (/var/www/cadi-front/node_modules/webpack/lib/Compilation.js:663:10)
    at Compilation.applyPluginsAsyncSeries (/var/www/cadi-front/node_modules/tapable/lib/Tapable.js:195:46)
(node:88) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 1.

EDITAR:
Eu bloqueei a versão @types/jasmine em 2.8.4 e tudo parece estar bem. 👌 Não consegui atualizar a versão do texto datilografado.

"@ types / jasmine": "2.8.6" & "typescript": "2.7.2" funcionou.
O problema é "@ types / jasmine": "~ 2.8.6" -> ele atualiza para 2.8.11 incompatível com o texto digitado para 2.7.2 (requer 3. +)

Não ... @ angular / compiler-cli @ 5.2.11 requer um par do typescript @> = 2.4.2 <2.7 mas nenhum está instalado. Você deve instalar dependências de mesmo nível.

Não pode ter texto datilografado superior a 2,7 ...

"@ types / jasmine": "2.8.6" & "typescript": "2.7.2" funcionou.
O problema é "@ types / jasmine": "~ 2.8.6" -> ele atualiza para 2.8.11 incompatível com o texto digitado para 2.7.2 (requer 3. +)

Eu precisei fixar em 2.8.9 para poder ser usado com o texto datilografado 2.6.x, que é necessário para meu projeto angular 5

@vnazarchukmob é possível que você tenha o typescript instalado globalmente e localmente e um deles esteja abaixo de 2.8?

@mowgliLab como mencionei acima, @types/jasmine é para TS 2.8+, enquanto você ainda está usando TS 2.7.x. Atualize typescript para pelo menos 2.8.0 .

LGTM ~

A versão 2.8.8 funciona bem com [email protected] , mas 2.8.12 não.

Estou me perguntando como uma versão de patch pode apresentar uma mudança tão importante 😞

Estou encontrando esse problema com um aplicativo Angular totalmente novo usando "@ types / jasmine": "~ 2.8.6" e "typescript": "^ 2.8.4". Alguém já resolveu isso?

Ainda não há solução? Alguém pode recapitular para uma solução final; o que precisa ser feito em uma nova instalação? Estou um pouco perdida

Descobri que todos os erros desapareceram ao verificar o projeto com este erro no Mac e executar o Yarn como gerenciador de pacotes

@wluijk add

{
  "typeRoots": [
    "./node_modules/@types"
  ],
  "types": ["node"]
}

Em seu compilerOptions e certifique-se de ter @types/node instalado

Como uma observação lateral, atualizar esses tipos para _require_ TS 2.8+ não é um lançamento _minor_, isso quebrou muitos projetos que agora precisam ser fixados em uma versão mais antiga de tipos / jasmim.
Esta foi uma mudança importante e deveria ser um novo número de versão principal 😢

Fixar em 2.8.3 e deixar TS em um projeto que não poderia ir além de 2.5.3 funcionou.

Funcionou como um encanto! Muito obrigado amigo

Como uma observação lateral, atualizar esses tipos para _require_ TS 2.8+ não é um lançamento _minor_, isso quebrou muitos projetos que agora precisam ser fixados em uma versão mais antiga de tipos / jasmim.
Esta foi uma mudança importante e deveria ser um grito de número da nova versão principal

Fixar em 2.8.3 e deixar TS em um projeto que não poderia ir além de 2.5.3 funcionou.

Eu tinha a entrada "@ types / jasmine": "~ 2.8.3" no pacote json e estava gerando um erro.

Eu removi a inclinação e tornei "@ types / jasmine": "2.8.3" e funcionou.

Nota: "~ 2.8.3" estava sendo atualizado para 2.8.11.

@jayvdb

Eu precisei fixar em 2.8.9 para poder ser usado com o texto datilografado 2.6.x, que é necessário para meu projeto angular 5

Sim, funciona, mas agora tenho um aviso em meu console de que:

angular/[email protected] requer typescript @ '> = 2.4.2 <2.5.0' mas 2.6.2 foi encontrado em seu lugar.
Usar esta versão pode resultar em comportamento indefinido e problemas difíceis de depurar.

@mieszczans , descobri que o @types/jasmine em 2.8.4 conforme mencionado em https://github.com/DefinitelyTyped/DefinitelyTyped/issues/30310#issuecomment -444916003

Na verdade, isso deveria ser revertido, como uma violação crassa do SemVer.

Olá a todos,

Você acabou de alterar [email protected] e @ types / [email protected]

Gostar

  1. npm install typescript / 2.8.4 --save-dev
  2. npm install @ types / [email protected] --save-dev

Está funcionando 100%.

Obrigado,

Jasmine 2.8.9 junto com o texto datilografado 2.80 trabalhando para mim

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