Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

DeprecationWarning

Após seguir os passos da aula, tudo funcionou como esperado. Porém surgiram no prompt as seguintes mensagens:

[nodemon] starting `node app`
Servidor rodando
(node:4376) [DEP0096] DeprecationWarning: timers.unenroll() is deprecated. Please use clearTimeout instead.
(node:4376) [DEP0095] DeprecationWarning: timers.enroll() is deprecated. Please use setTimeout instead.

Acredito que seja por conta do uso de algumas funções antigas que a plataforma node talvez não ofereça mais tanto suporte.

A questão é: tem algo que eu possa fazer para melhorar a implementação, usando as funções que estão sendo pedidas pelas mensagens de aviso ou é algo embutido em algum módulo de difícil acesso?

3 respostas

Oi Henrique, tudo bem? Não me parece ser uma coisa no seu código, não é isso? Talvez seja alguma biblioteca que ainda está desatualizada. Não há problema em usar coisas que estão depreciadas, pelo menos não por enquanto.

Pra mim verificar umas coisas, você pode colar seu package.json aqui?

Já conferi meu código, está tudo certo, conforme as aulas.

Segue meu package.json:

{
  "name": "casadocodigo",
  "version": "1.0.0",
  "description": "Site da casa do codigo",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Henrique",
  "license": "ISC",
  "dependencies": {
    "ejs": "^2.6.1",
    "express": "^4.16.3",
    "express-load": "^1.1.16",
    "mysql": "^2.15.0"
  }
}
solução!

Então Henrique, muito provavel que o problema seja o pacote do MySQL que não suporta algumas coisas do Node 10 ainda. Então, não há nada que você possa fazer pra resolver isso.

Caso você soubesse muito bem o que fazer, poderia contribuir com o desenvolvimento do pacote lá no github.

Link para descrição do problema de suporte: https://github.com/mysqljs/mysql/issues/2003

No caso, podemos esperar que uma versão seja lançada com essa melhoria ou usar uma versão do Node anterior a 10.

Como são warnings. Eu continuaria como está, afinal, é só um aviso de que futuramente isso pode não funcionar mais, mas nada muito previsível de quando irá parar, mas vai demorar bastante ainda na minha visão.