Rollup-plugin-typescript2: Monorepo: rollup -w con rpt2 da como resultado (complemento rpt2) Error: no se pudo encontrar el archivo fuente

Creado en 11 mar. 2020  ·  2Comentarios  ·  Fuente: ezolenko/rollup-plugin-typescript2

Que pasa y por que esta mal

Una compilación normal de una sola vez funciona bien. Sin embargo, al usar rollup -w , rpt2 parece tener problemas para encontrar archivos fuente si edito una de las dependencias más profundas del módulo en uno de los otros paquetes.

Esto es con un monorepo de Lerna que configura enlaces simbólicos a las dependencias en el repositorio.

Repo de prueba: https://github.com/jrburke/jr-monorepo-rpt2

No quiero usar preserveSymlinks porque en mi proyecto real, da como resultado duplicados de módulos en el proyecto final construido, ya que varios paquetes en el repositorio comparten dependencias comunes. Probé una versión que usa preserveSymlinks , por lo que, como último recurso, podría configurar una configuración de desarrollo que use preserveSymlinks , pero las compilaciones independientes / por primera vez funcionan sin él, y me gustaría seguir la configuración del reloj es la misma que en las versiones normales.

Medio ambiente

Detalles para reproducir en el repositorio de ejemplo anterior.

Versiones

  • mecanografiado: 3.8.3
  • resumen: 1.32.1
  • rollup-plugin-typescript2: 0.26.0

rollup.config.js

import commonjs from '@rollup/plugin-commonjs';
import resolve from '@rollup/plugin-node-resolve';
import typescript from 'rollup-plugin-typescript2';

export default {
  input: 'src/index.ts',
  output: {
    file: 'dist/jr-player.js',
    format: 'iife',
    name: 'jrPlayer',
    exports: 'named'
  },
  watch: {
    include: ['src/**', '../jr-lib/src/**', '../jr-auth/src/**']
  },
  plugins: [
    typescript({
      include: ['src/**/*.ts+(|x)', '../jr-lib/**/*.ts+(|x)', '../jr-auth/**/*.ts+(|x)'],
      verbosity: 3
    }),
    resolve(),
    commonjs()
  ]
};

tsconfig.json

Tsconfig.json de nivel superior:

{
  "compilerOptions": {
    "moduleResolution": "node",
    "module": "es2015",
    "lib": [
      "es2015",
      "es2016",
      "es2017",
      "dom"
    ],
    "strict": true,
    "sourceMap": true,
    "declaration": true,
    "allowSyntheticDefaultImports": true,
    "downlevelIteration": true,
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "noImplicitAny": false,
    "esModuleInterop": true,
    "removeComments": true,
    "resolveJsonModule": true,
    "skipLibCheck": true
  }
}

packages/jr-player/tsconfig.json :

{
  "extends": "../../tsconfig.json",
  "compilerOptions": {
    "target": "es5",
    "declarationDir": "lib",
    "outDir": "lib"
  },
  "include": ["."]
}

package.json

No creo que sea relevante, pero está en el repositorio de prueba.

salida del complemento con verbosidad 3

Adjunto, pero también en repositorio de prueba en verbose-error.txt :

verbose-error.txt

bug

Todos 2 comentarios

Podría estar relacionado con el n. ° 188

Otra solución alternativa es deshabilitar la verificación de tipos con check: false , por supuesto, eso elimina la mayor parte de la funcionalidad ...

Tengo el problema de combinar rollup-plugin-typescript2 y rollup-plugin-postcss . Cuando importo un archivo _css_ (por ejemplo, import * as style from ./mystyle.css ) y habilito la bandera _watch_, me da el mismo error.

Intentaré depurar un poco más, pero de hecho check: false soluciono el problema.

¿Fue útil esta página
0 / 5 - 0 calificaciones