Tema: nodejs
-
Módulos ES versus CommonJS no Node.js
O CommonJS usa require síncrono e module.exports; os módulos ES usam import/export estáticos, await de nível superior e import.meta. O Node decide por arquivo, pela extensão e pelo campo type do package.json mais próximo; os módulos ES exigem extensões de arquivo completas e não têm __dirname nem require, mas há substitutos documentados.
-
"ERESOLVE unable to resolve dependency tree" do npm e conflitos de peer dependencies
Desde o npm 7, as peerDependencies são instaladas automaticamente, e uma versão que não consegue satisfazer todos os intervalos de peer ao mesmo tempo falha com 'npm error code ERESOLVE' ('npm ERR! code ERESOLVE' antes do npm 10.6). O artigo mostra como ler as linhas Found/Could not resolve do próprio npm para identificar exatamente os pacotes em conflito e por que --legacy-peer-deps ou --force não devem ser a resposta padrão.
-
"ENOSPC: System limit for number of file watchers reached" e os limites do inotify
Observadores de arquivos baseados na API inotify do Linux falham com 'ENOSPC: System limit for number of file watchers reached' quando o limite do kernel por usuário se esgota, em geral ao monitorar node_modules ou árvores igualmente grandes. O artigo explica os dois parâmetros sysctl relevantes, como aumentá-los de forma persistente e por que os contêineres normalmente compartilham o limite do host.
-
Por que as aplicações ignoram o repositório de confiança do SO: Java cacerts, Python certifi, Node.js e curl
Adicionar uma CA ao repositório de confiança do sistema operacional não faz todas as aplicações passarem a confiar nela. Java, muitas instalações de Python, Node.js e builds do curl podem ter seu próprio bundle de CAs ou keystore, cada um com localização de arquivo e variável de ambiente próprias, então um erro de certificado pode persistir após a correção no nível do SO.
Legível por máquina: JSON