I am new to node and npm and trying to understand AutoRest.
When I type
autorest --list-available
into powershell ISE I get
AutoRest code generation utility [version: 2.0.4262; node: v10.1.0]
(C) 2018 Microsoft Corporation.
https://aka.ms/autorest
autorest : (node:12580) ExperimentalWarning: The fs.promises API is experimental
At line:1 char:1
+ autorest --list-available
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ((node:12580) Ex...is experimental:String) [], RemoteExc
eption
+ FullyQualifiedErrorId : NativeCommandError
Extension Name Version
@microsoft.azure/autorest-core 2.0.4278
@microsoft.azure/autorest-core 2.0.4277
@microsoft.azure/autorest-core 2.0.4276
@microsoft.azure/autorest-core 2.0.4275
@microsoft.azure/autorest-core 2.0.4274
@microsoft.azure/autorest-core 2.0.4272
@microsoft.azure/autorest-core 2.0.4271
@microsoft.azure/autorest-core 2.0.4269
@microsoft.azure/autorest-core 2.0.4263
@microsoft.azure/autorest-core 2.0.4262
Failure:
TypeError: volume[member].bind is not a function
TypeError: volume[member].bind is not a function
at patchFilesystem
(C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:277:43)
at C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:281:18
at Object.global.staticloader.undo
(C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:163:7)
at process.exit.n [as exit]
(C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:170:27)
at main (C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\app.js:153:21)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:12580) UnhandledPromiseRejectionWarning: Error: EBADF: bad file descriptor, close
at Object.fs.closeSync (fs.js:529:3)
at StaticVolumeFile.shutdown
(C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:352:10)
at StaticFilesystem.shutdown
(C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:406:17)
at process.exit.n [as exit]
(C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\static-loader.js:169:11)
at main (C:\Users\kirst\AppData\Roaming\npm\node_modules\autorest\dist\app.js:239:17)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:12580) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated
either by throwing inside of an async function without a catch block, or by rejecting a promise
which was not handled with .catch(). (rejection id: 1)
(node:12580) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the
future, promise rejections that are not handled will terminate the Node.js process with a non-zero
what is happening? exit code.
Updating to the latest node version (v12.6+) removes the warning.
Yes, you can safely ignore this warning.
If you want to suppress it (and all warnings), run your script with node --no-warnings
instead of node
.
In your example:
node --no-warnings `which autorest`
I was at node@^10.15.1
which is an older version so I update it to 12.16.1
or 12.16.2
and it got fixed.
The module autorest
uses new fs
syntax, that instead of callbacks uses Promises. This is however not yet stable and therefore is the warning. Nothing really to worry about, unless you want to use it in production. But even then, as long as you update autorest with node together no problems should occur.
As for the error, it may be something in your configs. Try to make minimal error sample and post an issue to autorest git.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With