softprops / serverless-rust

⚡ 🦀 a serverless framework plugin for rustlang applications
https://www.npmjs.com/package/serverless-rust
MIT License
548 stars 82 forks source link

as_slice Error #113

Open JimLynchCodes opened 2 years ago

JimLynchCodes commented 2 years ago

After a fresh scaffold of a project that uses the serverless-rust plugin:

serverless install \
  --url https://github.com/softprops/serverless-aws-rust-http \
  --name joke-fetcher-crab-lamb

I have docker running and then try to run this locally with sls invoke local -f hello

But then I get this error:

Running "serverless" from node_modules
Serverless: Deprecation Notice: bin/serverless is deprecated, use bin/serverless.js instead
            More Info: https://www.serverless.com/framework/docs/deprecations/#BIN_SERVERLESS
Serverless: Building Rust hello func...
Serverless: Running containerized build
   Compiling openssl-sys v0.9.72
   Compiling indexmap v1.8.0
   Compiling mio v0.8.0
   Compiling socket2 v0.4.4
   Compiling signal-hook-registry v1.2.0
   Compiling num_cpus v1.13.0
   Compiling socket2 v0.3.12
error[E0658]: use of unstable library feature 'vec_drain_as_slice': recently added
    --> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/indexmap-1.8.0/src/map.rs:1182:30
     |
1182 |         let iter = self.iter.as_slice().iter().map(Bucket::refs);
     |                              ^^^^^^^^
     |
     = note: see issue #58957 <https://github.com/rust-lang/rust/issues/58957> for more information

error[E0658]: `match` is not allowed in a `const fn`
   --> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/socket2-0.4.4/src/lib.rs:165:9
    |
165 | /         match address {
166 | |             SocketAddr::V4(_) => Domain::IPV4,
167 | |             SocketAddr::V6(_) => Domain::IPV6,
168 | |         }
    | |_________^
    |
    = note: see issue #49146 <https://github.com/rust-lang/rust/issues/49146> for more information

error[E0658]: use of unstable library feature 'vec_drain_as_slice': recently added
   --> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/indexmap-1.8.0/src/set.rs:842:30
    |
842 |         let iter = self.iter.as_slice().iter().map(Bucket::key_ref);
    |                              ^^^^^^^^
    |
    = note: see issue #58957 <https://github.com/rust-lang/rust/issues/58957> for more information

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0658`.
error: could not compile `indexmap`.

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: aborting due to previous error

For more information about this error, try `rustc --explain E0658`.
error: could not compile `socket2`.

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed
Serverless: Rust build encountered an error: undefined 1.

  Error --------------------------------------------------

  Error: 
      at /Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/serverless-rust/index.js:289:15
      at Array.forEach (<anonymous>)
      at RustPlugin.build (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/serverless-rust/index.js:269:22)
      at /Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/serverless/lib/classes/PluginManager.js:476:55
      at tryCatcher (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/util.js:16:23)
      at Object.gotValue (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/reduce.js:168:18)
      at Object.gotAccum (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/reduce.js:155:25)
      at Object.tryCatcher (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/util.js:16:23)
      at Promise._settlePromiseFromHandler (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/promise.js:547:31)
      at Promise._settlePromise (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/promise.js:604:18)
      at Promise._settlePromise0 (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/promise.js:649:10)
      at Promise._settlePromises (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/promise.js:729:18)
      at _drainQueueStep (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/async.js:93:12)
      at _drainQueue (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/async.js:86:9)
      at Async._drainQueues (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/async.js:102:5)
      at Immediate.Async.drainQueues [as _onImmediate] (/Users/jim/Git-Projects/joke-fetcher-crab-lamb/node_modules/bluebird/js/release/async.js:15:14)
      at processImmediate (node:internal/timers:464:21)

     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.

  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com

  Your Environment Information ---------------------------
     Operating System:          darwin
     Node Version:              16.13.2
     Framework Version:         1.74.1
     Plugin Version:            3.6.15
     SDK Version:               2.3.1
     Components Version:        2.31.10

🤔