node.js - npm-modul saknar filer efter publicering
Som referens är repot https://github.com/microsoftly/luis-response-builder.
Node-modulfilerna genereras med tsc och exporteras till dist-mappen. Jag har ett prepublishOnly-steg som tar bort dist-mappen, kör tsc och sedan kör testet mot den transpilerade js. Testen klarar sig när jag publicerar utan problem.
Problemet är att när jag installerar projektet någon annanstans, innehåller dist-mappen endast filen med sökvägen dist/src/index.js.
Jag kan för mitt liv inte lista ut varför filen saknas när den är installerad men inte när den är publicerad.
Svar #1
Citerar från npm-publish-dokumentationen:
Alla filer i paketkatalogen inkluderas om ingen lokal
.gitignoreeller.npmignore-fil finns. Om båda filerna finns och en fil ignoreras av.gitignoremen inte av.npmignorekommer den att inkluderas.
Ditt repositories .gitignore-fil innehåller följande:
node_modules
dist
*.env
yarn-error.log
Eftersom dist ignoreras, committas det inte med npm publish, enligt dokumentationen.
Svar #2
Kolla in dokumentationen för package.json om files.
Eftersom du inte har inkluderat files-nyckeln kommer det endast att inkludera filen som anges i main (tillsammans med några andra standardfiler).
Värdet files är en array så du kan inkludera flera filer och/eller mappar.
t.ex :
files: [
"dist",
"config/somefile.js"
]
