You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Local import as symblink in node_module not added in .dist/node_module #272
I have some import in my project that depends on local commons module shared between my different functions. I don't want to put them on public npm and don't have some kind of nexus.
I import my local common module like this :
Until now I was with plain JS and I had no issue with serverless. My node_module seems to be well imported with the symlink of my local modules.
I now try to integrate TS, and so I added your plugin. But when I deploy, at runtime I've got error as my import to my local module can't be found.
{
"errorType": "Error",
"errorMessage": "Cannot find package 'database' imported from /var/task/src/functions/get-report-detail.js",
"code": "ERR_MODULE_NOT_FOUND",
"stack": [
"Error [ERR_MODULE_NOT_FOUND]: Cannot find package database' imported from /var/task/src/functions/get-report-detail.js",
" at new NodeError (internal/errors.js:322:7)",
" at packageResolve (internal/modules/esm/resolve.js:732:9)",
" at moduleResolve (internal/modules/esm/resolve.js:773:18)",
" at Loader.defaultResolve [as _resolve] (internal/modules/esm/resolve.js:887:11)",
" at Loader.resolve (internal/modules/esm/loader.js:89:40)",
" at Loader.getModuleJob (internal/modules/esm/loader.js:242:28)",
" at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:76:40)",
" at link (internal/modules/esm/module_job.js:75:36)",
" at process.runNextTicks [as _tickCallback] (internal/process/task_queues.js:60:5)",
" at /var/runtime/deasync.js:23:15"
]
}
In S3 where the code is store for my function, I can see that .dist/node_module is missing my local module.
Well not really.
We use the registry of gitlab to push our lib as artifact that get imported via npm. The mecanism is the same as public artifact so their is no problem now for us.
But is still think my issue is a problem for project that can't for some reason, put their package on private/public repository.
Activity
chinanderm commentedon Dec 7, 2022
@MaximeLozach Did you ever get this resolved? I'm running into this same issue. Seems this plugin doesn't work with symlinked node_modules packages.
MaximeLozach commentedon Dec 7, 2022
Well not really.
We use the registry of gitlab to push our lib as artifact that get imported via npm. The mecanism is the same as public artifact so their is no problem now for us.
But is still think my issue is a problem for project that can't for some reason, put their package on private/public repository.
wernc23 commentedon Jan 13, 2023
Same issue. I have a local symlinked package that is not included in the build package.
chinanderm commentedon Jan 13, 2023
I ended up forking the package and using the
dereferencefeature offs.copySyncto copy the symlinked dependencies.Ironically, my forked version ended up being symlinked.
Fix serverless#272: symlink deps are not included in the build