Closed flatsiedatsie closed 6 years ago
After some more fiddling about it boils down to:
sudo apt-get update
Get:1 http://raspbian.raspberrypi.org/raspbian stretch InRelease [15.0 kB]
Hit:2 http://archive.raspberrypi.org/debian stretch InRelease
Ign:3 http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid InRelease
Hit:4 http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid Release
Fetched 15.0 kB in 2s (6868 B/s)
Reading package lists... Done
N: Skipping acquire of configured file 'main/binary-armhf/Packages' as repository 'http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid InRelease' doesn't support architecture 'armhf'
@flatsiedatsie the package is not built for armv7 architecture. I will look into it.
@flatsiedatsie I tried to cross compile for Raspberry pi. But i'm not able to get it working properly. If you would like to investigate it further, go through the build logs in travis
I will! Very much looking forward to try this!
See the thread on the MySensors forum also.
Would it help if I shared the error messages I got on the pi during compiling?
Got a large amount of errors again trying to compile it on the Pi.
Compiling myscontroller-rs v0.5.7 (file:///home/pi/MySController-rs)
error[E0432]: unresolved import `crossbeam_channel`
--> src/lib.rs:19:5
|
19 | use crossbeam_channel as channel;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `crossbeam_channel` in the root
error[E0432]: unresolved import `actix_web`
--> src/api/firmware.rs:1:5
|
1 | use actix_web::{error, multipart, AsyncResponder, Error, FutureResponse, HttpMessage, HttpRequest,
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0432]: unresolved import `futures`
--> src/api/firmware.rs:4:5
|
4 | use futures::future;
| ^^^^^^^ Maybe a missing `extern crate futures;`?
error[E0432]: unresolved import `futures`
--> src/api/firmware.rs:5:5
|
5 | use futures::{Future, Stream};
| ^^^^^^^ Maybe a missing `extern crate futures;`?
error[E0432]: unresolved import `http`
--> src/api/firmware.rs:8:5
|
8 | use http::StatusCode;
| ^^^^ Maybe a missing `extern crate http;`?
error[E0432]: unresolved import `actix`
--> src/api/index.rs:1:5
|
1 | use actix::*;
| ^^^^^ Maybe a missing `extern crate actix;`?
error[E0432]: unresolved import `actix_web`
--> src/api/index.rs:2:5
|
2 | use actix_web::{HttpRequest, Result};
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0432]: unresolved import `actix_web`
--> src/api/node.rs:1:5
|
1 | use actix_web::{AsyncResponder, FutureResponse, HttpRequest, HttpResponse, Json};
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0433]: failed to resolve. Maybe a missing `extern crate futures;`?
--> src/api/node.rs:3:5
|
3 | use futures::future::Future;
| ^^^^^^^ Maybe a missing `extern crate futures;`?
error[E0432]: unresolved import `http`
--> src/api/node.rs:5:5
|
5 | use http::StatusCode;
| ^^^^ Maybe a missing `extern crate http;`?
error[E0432]: unresolved import `actix_web`
--> src/api/sensor.rs:1:5
|
1 | use actix_web::{AsyncResponder, FutureResponse, HttpRequest, HttpResponse, Json};
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0433]: failed to resolve. Maybe a missing `extern crate futures;`?
--> src/api/sensor.rs:3:5
|
3 | use futures::future::Future;
| ^^^^^^^ Maybe a missing `extern crate futures;`?
error[E0432]: unresolved import `http`
--> src/api/sensor.rs:5:5
|
5 | use http::StatusCode;
| ^^^^ Maybe a missing `extern crate http;`?
error[E0432]: unresolved import `serialport`
--> src/core/connection.rs:3:5
|
3 | use serialport;
| ^^^^^^^^^^ no `serialport` in the root
error[E0433]: failed to resolve. Maybe a missing `extern crate serialport;`?
--> src/core/connection.rs:4:5
|
4 | use serialport::prelude::*;
| ^^^^^^^^^^ Maybe a missing `extern crate serialport;`?
error[E0432]: unresolved import `num`
--> src/core/message/presentation.rs:3:5
|
3 | use num::FromPrimitive;
| ^^^ Did you mean `std::num`?
error[E0432]: unresolved import `num`
--> src/core/message/set.rs:3:5
|
3 | use num::FromPrimitive;
| ^^^ Did you mean `std::num`?
error[E0432]: unresolved import `hex`
--> src/core/message/stream.rs:2:5
|
2 | use hex;
| ^^^ no `hex` in the root
error[E0432]: unresolved import `num`
--> src/core/message/stream.rs:4:5
|
4 | use num::FromPrimitive;
| ^^^ Did you mean `std::num`?
error[E0432]: unresolved import `num`
--> src/core/message/mod.rs:7:5
|
7 | use num::FromPrimitive;
| ^^^ Did you mean `std::num`?
error[E0432]: unresolved import `r2d2`
--> src/core/message_handler/internal.rs:7:5
|
7 | use r2d2::*;
| ^^^^ Did you mean `diesel::r2d2`?
error[E0432]: unresolved import `r2d2`
--> src/core/message_handler/presentation.rs:8:5
|
8 | use r2d2::*;
| ^^^^ Did you mean `diesel::r2d2`?
error[E0432]: unresolved import `r2d2`
--> src/core/message_handler/stream.rs:10:5
|
10 | use r2d2::*;
| ^^^^ Did you mean `diesel::r2d2`?
error[E0432]: unresolved import `actix`
--> src/handler/firmware.rs:2:5
|
2 | use actix::*;
| ^^^^^ Maybe a missing `extern crate actix;`?
error[E0432]: unresolved import `actix_web`
--> src/handler/firmware.rs:3:5
|
3 | use actix_web::*;
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0432]: unresolved import `actix`
--> src/handler/node.rs:2:5
|
2 | use actix::*;
| ^^^^^ Maybe a missing `extern crate actix;`?
error[E0432]: unresolved import `actix_web`
--> src/handler/node.rs:3:5
|
3 | use actix_web::*;
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0432]: unresolved import `actix`
--> src/handler/sensor.rs:2:5
|
2 | use actix::*;
| ^^^^^ Maybe a missing `extern crate actix;`?
error[E0432]: unresolved import `actix_web`
--> src/handler/sensor.rs:3:5
|
3 | use actix_web::*;
| ^^^^^^^^^ Maybe a missing `extern crate actix_web;`?
error[E0432]: unresolved import `actix`
--> src/model/db.rs:1:5
|
1 | use actix::*;
| ^^^^^ Maybe a missing `extern crate actix;`?
error[E0432]: unresolved import `crc16`
--> src/model/firmware.rs:1:5
|
1 | use crc16::*;
| ^^^^^ Maybe a missing `extern crate crc16;`?
error[E0433]: failed to resolve. Maybe a missing `extern crate ihex;`?
--> src/model/firmware.rs:2:5
|
2 | use ihex::record::Record;
| ^^^^ Maybe a missing `extern crate ihex;`?
error[E0433]: failed to resolve. Maybe a missing `extern crate webthing;`?
--> src/wot/adapter.rs:6:5
|
6 | use webthing::property::EmptyValueForwarder;
| ^^^^^^^^ Maybe a missing `extern crate webthing;`?
error[E0433]: failed to resolve. Maybe a missing `extern crate webthing;`?
--> src/wot/adapter.rs:7:5
|
7 | use webthing::property::ValueForwarder;
| ^^^^^^^^ Maybe a missing `extern crate webthing;`?
error[E0432]: unresolved import `webthing`
--> src/wot/adapter.rs:8:5
|
8 | use webthing::{BaseProperty, BaseThing, Thing};
| ^^^^^^^^ Maybe a missing `extern crate webthing;`?
error[E0433]: failed to resolve. Maybe a missing `extern crate webthing;`?
--> src/wot/mod.rs:13:5
|
13 | use webthing::server::ActionGenerator;
| ^^^^^^^^ Maybe a missing `extern crate webthing;`?
error[E0432]: unresolved import `webthing`
--> src/wot/mod.rs:14:5
|
14 | use webthing::{Action, Thing, ThingsType, WebThingServer};
| ^^^^^^^^ Maybe a missing `extern crate webthing;`?
error[E0433]: failed to resolve. Use of undeclared type or module `BaudRate`
--> src/core/connection.rs:204:26
|
204 | settings.baud_rate = BaudRate::Baud38400;
| ^^^^^^^^ Use of undeclared type or module `BaudRate`
error[E0433]: failed to resolve. Use of undeclared type or module `error`
--> src/handler/firmware.rs:194:42
|
194 | let conn = &self.0.get().map_err(error::ErrorInternalServerError)?;
| ^^^^^ Use of undeclared type or module `error`
error[E0433]: failed to resolve. Use of undeclared type or module `error`
--> src/handler/firmware.rs:197:22
|
197 | .map_err(error::ErrorInternalServerError)?;
| ^^^^^ Use of undeclared type or module `error`
error[E0433]: failed to resolve. Use of undeclared type or module `error`
--> src/handler/node.rs:53:42
|
53 | let conn = &self.0.get().map_err(error::ErrorInternalServerError)?;
| ^^^^^ Use of undeclared type or module `error`
error[E0433]: failed to resolve. Use of undeclared type or module `error`
--> src/handler/node.rs:56:22
|
56 | .map_err(error::ErrorInternalServerError)?;
| ^^^^^ Use of undeclared type or module `error`
error[E0433]: failed to resolve. Use of undeclared type or module `error`
--> src/handler/sensor.rs:39:42
|
39 | let conn = &self.0.get().map_err(error::ErrorInternalServerError)?;
| ^^^^^ Use of undeclared type or module `error`
error[E0433]: failed to resolve. Use of undeclared type or module `error`
--> src/handler/sensor.rs:42:22
|
42 | .map_err(error::ErrorInternalServerError)?;
| ^^^^^ Use of undeclared type or module `error`
error[E0433]: failed to resolve. Use of undeclared type or module `Record`
--> src/model/firmware.rs:88:14
|
88 | &Record::Data {
| ^^^^^^ Use of undeclared type or module `Record`
error[E0433]: failed to resolve. Use of undeclared type or module `Record`
--> src/model/firmware.rs:102:48
|
102 | Firmware::ihex_to_bin(&Record::from_record_string(&line.unwrap()).unwrap())
| ^^^^^^ Use of undeclared type or module `Record`
error[E0433]: failed to resolve. Use of undeclared type or module `State`
--> src/model/firmware.rs:120:25
|
120 | let mut state = State::<MODBUS>::new();
| ^^^^^ Use of undeclared type or module `State`
error[E0412]: cannot find type `Addr` in this scope
--> src/api/index.rs:7:13
|
7 | pub db: Addr<Syn, ConnDsl>,
| ^^^^ not found in this scope
error[E0412]: cannot find type `Syn` in this scope
--> src/api/index.rs:7:18
|
7 | pub db: Addr<Syn, ConnDsl>,
| ^^^ did you mean `Sync`?
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:48:19
|
48 | receiver: Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:49:24
|
49 | stop_receiver: Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:50:10
|
50 | ) -> Receiver<String> {
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/connection.rs:71:37
|
71 | fn read_loop(&mut self, sender: Sender<String>) -> Sender<String> {
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/connection.rs:71:56
|
71 | fn read_loop(&mut self, sender: Sender<String>) -> Sender<String> {
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/connection.rs:127:17
|
127 | mut sender: Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:128:19
|
128 | mut receiver: Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:151:15
|
151 | receiver: Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:152:28
|
152 | cancel_token_receiver: Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/connection.rs:153:6
|
153 | ) -> Receiver<String> {
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `SerialPortSettings` in this scope
--> src/core/connection.rs:202:23
|
202 | let mut settings: SerialPortSettings = Default::default();
| ^^^^^^^^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/interceptor.rs:5:16
|
5 | receiver: &Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/interceptor.rs:6:21
|
6 | stream_sender: &Sender<StreamMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/interceptor.rs:7:19
|
7 | node_sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/interceptor.rs:8:27
|
8 | presentation_sender: &Sender<PresentationMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/interceptor.rs:9:18
|
9 | set_sender: &Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/interceptor.rs:10:25
|
10 | controller_sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/message_handler/internal.rs:13:16
|
13 | receiver: &Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/internal.rs:14:14
|
14 | sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `PooledConnection` in this scope
--> src/core/message_handler/internal.rs:15:20
|
15 | db_connection: PooledConnection<ConnectionManager<SqliteConnection>>,
| ^^^^^^^^^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use diesel::r2d2::PooledConnection;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/message_handler/presentation.rs:11:16
|
11 | receiver: &Receiver<PresentationMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/presentation.rs:12:14
|
12 | sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `PooledConnection` in this scope
--> src/core/message_handler/presentation.rs:13:20
|
13 | db_connection: PooledConnection<ConnectionManager<SqliteConnection>>,
| ^^^^^^^^^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use diesel::r2d2::PooledConnection;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/message_handler/set.rs:5:28
|
5 | set_message_receiver: &Receiver<SetMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/set.rs:6:26
|
6 | gateway_out_sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/message_handler/set.rs:20:16
|
20 | receiver: &Receiver<SetMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/set.rs:21:30
|
21 | property_notify_sender: &Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/set.rs:22:25
|
22 | controller_sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/message_handler/stream.rs:13:20
|
13 | ota_receiver: &Receiver<StreamMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/stream.rs:14:14
|
14 | sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `PooledConnection` in this scope
--> src/core/message_handler/stream.rs:15:20
|
15 | db_connection: PooledConnection<ConnectionManager<SqliteConnection>>,
| ^^^^^^^^^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use diesel::r2d2::PooledConnection;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/message_handler/stream.rs:26:30
|
26 | stream_response_sender: &Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/server.rs:16:25
|
16 | gateway_out_sender: Sender<String>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/server.rs:17:27
|
17 | gateway_out_receiver: Receiver<String>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/core/server.rs:18:20
|
18 | in_set_sender: Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/core/server.rs:19:27
|
19 | set_message_receiver: Receiver<SetMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Receiver;
|
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/firmware.rs:26:6
|
26 | impl Message for CreateOrUpdate {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/firmware.rs:30:6
|
30 | impl Handler<CreateOrUpdate> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/firmware.rs:185:6
|
185 | impl Message for ListFirmwares {
| ^^^^^^^ not found in this scope
error[E0412]: cannot find type `Error` in this scope
--> src/handler/firmware.rs:186:44
|
186 | type Result = Result<Vec<FirmwareDto>, Error>;
| ^^^^^ not found in this scope
help: possible candidates are found in other modules, you can import them into scope
|
1 | use diesel::r2d2::Error;
|
1 | use diesel::result::Error;
|
1 | use serde_json::Error;
|
1 | use serde_json::error::Error;
|
and 3 other candidates
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/firmware.rs:189:6
|
189 | impl Handler<ListFirmwares> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0412]: cannot find type `Error` in this scope
--> src/handler/firmware.rs:190:44
|
190 | type Result = Result<Vec<FirmwareDto>, Error>;
| ^^^^^ not found in this scope
help: possible candidates are found in other modules, you can import them into scope
|
1 | use diesel::r2d2::Error;
|
1 | use diesel::result::Error;
|
1 | use serde_json::Error;
|
1 | use serde_json::error::Error;
|
and 3 other candidates
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/firmware.rs:211:6
|
211 | impl Message for DeleteFirmware {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/firmware.rs:215:6
|
215 | impl Handler<DeleteFirmware> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/firmware.rs:251:6
|
251 | impl Message for GetFirmware {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/firmware.rs:255:6
|
255 | impl Handler<GetFirmware> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/node.rs:30:6
|
30 | impl Message for GetNode {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/node.rs:34:6
|
34 | impl Message for DeleteNode {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/node.rs:38:6
|
38 | impl Message for NewNode {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/node.rs:44:6
|
44 | impl Message for ListNodes {
| ^^^^^^^ not found in this scope
error[E0412]: cannot find type `Error` in this scope
--> src/handler/node.rs:45:37
|
45 | type Result = Result<Vec<Node>, Error>;
| ^^^^^ not found in this scope
help: possible candidates are found in other modules, you can import them into scope
|
1 | use diesel::r2d2::Error;
|
1 | use diesel::result::Error;
|
1 | use serde_json::Error;
|
1 | use serde_json::error::Error;
|
and 3 other candidates
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/node.rs:48:6
|
48 | impl Handler<ListNodes> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0412]: cannot find type `Error` in this scope
--> src/handler/node.rs:49:37
|
49 | type Result = Result<Vec<Node>, Error>;
| ^^^^^ not found in this scope
help: possible candidates are found in other modules, you can import them into scope
|
1 | use diesel::r2d2::Error;
|
1 | use diesel::result::Error;
|
1 | use serde_json::Error;
|
1 | use serde_json::error::Error;
|
and 3 other candidates
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/node.rs:71:6
|
71 | impl Message for NodeUpdate {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/node.rs:75:6
|
75 | impl Handler<NodeUpdate> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/node.rs:112:6
|
112 | impl Handler<DeleteNode> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/node.rs:142:6
|
142 | impl Handler<NewNode> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/node.rs:182:6
|
182 | impl Handler<GetNode> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/sensor.rs:20:6
|
20 | impl Message for GetSensor {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/sensor.rs:24:6
|
24 | impl Message for DeleteSensor {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Message` in this scope
--> src/handler/sensor.rs:30:6
|
30 | impl Message for ListSensors {
| ^^^^^^^ not found in this scope
error[E0412]: cannot find type `Error` in this scope
--> src/handler/sensor.rs:31:39
|
31 | type Result = Result<Vec<Sensor>, Error>;
| ^^^^^ not found in this scope
help: possible candidates are found in other modules, you can import them into scope
|
1 | use diesel::r2d2::Error;
|
1 | use diesel::result::Error;
|
1 | use serde_json::Error;
|
1 | use serde_json::error::Error;
|
and 3 other candidates
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/sensor.rs:34:6
|
34 | impl Handler<ListSensors> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0412]: cannot find type `Error` in this scope
--> src/handler/sensor.rs:35:39
|
35 | type Result = Result<Vec<Sensor>, Error>;
| ^^^^^ not found in this scope
help: possible candidates are found in other modules, you can import them into scope
|
1 | use diesel::r2d2::Error;
|
1 | use diesel::result::Error;
|
1 | use serde_json::Error;
|
1 | use serde_json::error::Error;
|
and 3 other candidates
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/sensor.rs:47:6
|
47 | impl Handler<DeleteSensor> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Handler` in this scope
--> src/handler/sensor.rs:78:6
|
78 | impl Handler<GetSensor> for ConnDsl {
| ^^^^^^^ not found in this scope
error[E0405]: cannot find trait `Actor` in this scope
--> src/model/db.rs:7:6
|
7 | impl Actor for ConnDsl {
| ^^^^^ not found in this scope
error[E0412]: cannot find type `SyncContext` in this scope
--> src/model/db.rs:8:20
|
8 | type Context = SyncContext<Self>;
| ^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type `Record` in this scope
--> src/model/firmware.rs:86:33
|
86 | pub fn ihex_to_bin(record: &Record) -> Vec<u8> {
| ^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
1 | use log::Record;
|
error[E0412]: cannot find type `MODBUS` in this scope
--> src/model/firmware.rs:120:33
|
120 | let mut state = State::<MODBUS>::new();
| ^^^^^^ not found in this scope
error[E0412]: cannot find type `Sender` in this scope
--> src/wot/adapter.rs:13:25
|
13 | set_message_sender: Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0405]: cannot find trait `ValueForwarder` in this scope
--> src/wot/adapter.rs:27:6
|
27 | impl ValueForwarder for PropertyValueForwarder {
| ^^^^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type `Sender` in this scope
--> src/wot/adapter.rs:44:25
|
44 | set_message_sender: Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/wot/adapter.rs:68:58
|
68 | fn build_properties(sensor: &Sensor, set_message_sender: Sender<SetMessage>) -> Vec<BaseProperty> {
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/wot/adapter.rs:80:25
|
80 | set_message_sender: Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
1 | use std::sync::mpsc::Sender;
|
error[E0405]: cannot find trait `ValueForwarder` in this scope
--> src/wot/adapter.rs:87:41
|
87 | let value_forwarder: Option<Box<dyn ValueForwarder>> = match set_type.is_forwardable() {
| ^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find value `EmptyValueForwarder` in this scope
--> src/wot/adapter.rs:93:32
|
93 | false => Some(Box::new(EmptyValueForwarder)),
| ^^^^^^^^^^^^^^^^^^^ not found in this scope
error[E0405]: cannot find trait `ActionGenerator` in this scope
--> src/wot/mod.rs:18:6
|
18 | impl ActionGenerator for Generator {
| ^^^^^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type `Sender` in this scope
--> src/wot/mod.rs:42:25
|
42 | set_message_sender: Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
3 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/wot/mod.rs:121:22
|
121 | in_set_receiver: Receiver<SetMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
3 | use std::sync::mpsc::Receiver;
|
error[E0412]: cannot find type `Sender` in this scope
--> src/wot/mod.rs:140:25
|
140 | set_message_sender: Sender<SetMessage>,
| ^^^^^^ did you mean `Send`?
help: possible candidate is found in another module, you can import it into scope
|
3 | use std::sync::mpsc::Sender;
|
error[E0412]: cannot find type `Receiver` in this scope
--> src/wot/mod.rs:141:22
|
141 | in_set_receiver: Receiver<SetMessage>,
| ^^^^^^^^ not found in this scope
help: possible candidate is found in another module, you can import it into scope
|
3 | use std::sync::mpsc::Receiver;
|
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/firmware.rs:3:5
|
3 | use crate::api::index::AppState;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/firmware.rs:6:5
|
6 | use crate::handler::firmware::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/firmware.rs:7:5
|
7 | use crate::handler::response::Msgs;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/firmware.rs:9:5
|
9 | use crate::model::firmware::Firmware;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/index.rs:3:5
|
3 | use crate::channel;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/index.rs:4:5
|
4 | use crate::model::db::ConnDsl;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/node.rs:2:5
|
2 | use crate::api::index::AppState;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/node.rs:4:5
|
4 | use crate::handler::node::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/sensor.rs:2:5
|
2 | use crate::api::index::AppState;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/api/sensor.rs:4:5
|
4 | use crate::handler::sensor::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/connection.rs:1:5
|
1 | use crate::channel;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/connection.rs:2:5
|
2 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/interceptor.rs:2:5
|
2 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message/set.rs:2:5
|
2 | use crate::model::sensor::Sensor;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message/stream.rs:3:5
|
3 | use crate::model::firmware::Firmware;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/internal.rs:1:5
|
1 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/internal.rs:5:5
|
5 | use crate::model::node::nodes::dsl;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/internal.rs:6:5
|
6 | use crate::model::node::Node;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/presentation.rs:1:5
|
1 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/presentation.rs:2:5
|
2 | use crate::core::message::presentation::PresentationMessage;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/presentation.rs:6:5
|
6 | use crate::model::sensor::sensors::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/presentation.rs:7:5
|
7 | use crate::model::sensor::Sensor;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/set.rs:1:5
|
1 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/set.rs:2:5
|
2 | use crate::core::message::set::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/stream.rs:1:5
|
1 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/stream.rs:2:5
|
2 | use crate::core::message::stream::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/stream.rs:6:5
|
6 | use crate::model::firmware::firmwares::dsl::firmwares;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/stream.rs:7:5
|
7 | use crate::model::firmware::Firmware;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/stream.rs:8:5
|
8 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/message_handler/stream.rs:9:5
|
9 | use crate::model::node::Node;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/server.rs:5:5
|
5 | use crate::channel;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/core/server.rs:6:5
|
6 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:8:5
|
8 | use crate::model;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:9:5
|
9 | use crate::model::db::ConnDsl;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:10:5
|
10 | use crate::model::firmware::Firmware;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:34:13
|
34 | use crate::model::firmware::firmwares::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:145:9
|
145 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:193:13
|
193 | use crate::model::firmware::firmwares::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:219:13
|
219 | use crate::model::firmware::firmwares::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/firmware.rs:259:13
|
259 | use crate::model::firmware::firmwares::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:8:5
|
8 | use crate::model::db::ConnDsl;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:9:5
|
9 | use crate::model::node::Node;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:52:13
|
52 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:79:13
|
79 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:116:13
|
116 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:146:13
|
146 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/node.rs:186:13
|
186 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/sensor.rs:6:5
|
6 | use crate::model::db::ConnDsl;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/sensor.rs:7:5
|
7 | use crate::model::sensor::Sensor;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/sensor.rs:38:13
|
38 | use crate::model::sensor::sensors::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/sensor.rs:51:13
|
51 | use crate::model::sensor::sensors::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/handler/sensor.rs:82:13
|
82 | use crate::model::sensor::sensors::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/model/sensor.rs:1:5
|
1 | use crate::core::message::presentation::PresentationType;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/model/sensor.rs:6:9
|
6 | use crate::core::message::presentation::PresentationTypeMapping;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/adapter.rs:1:5
|
1 | use crate::channel::Sender;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/adapter.rs:2:5
|
2 | use crate::core::message::set::{SetMessage, SetReqType, Value};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/adapter.rs:3:5
|
3 | use crate::model::sensor::Sensor;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/mod.rs:3:5
|
3 | use crate::channel::{Receiver, Sender};
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/mod.rs:4:5
|
4 | use crate::core::message::set::SetMessage;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/mod.rs:7:5
|
7 | use crate::model::node::Node;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/mod.rs:8:5
|
8 | use crate::model::sensor::Sensor;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/mod.rs:51:21
|
51 | use crate::model::node::nodes::dsl::*;
| ^^^^^
error[E0658]: `crate` in paths is experimental (see issue #45477)
--> src/wot/mod.rs:52:21
|
52 | use crate::model::sensor::sensors::dsl::*;
| ^^^^^
error: aborting due to 194 previous errors
Some errors occurred: E0405, E0412, E0425, E0432, E0433, E0658.
For more information about an error, try `rustc --explain E0405`.
error: Could not compile `myscontroller-rs`.
To learn more, run the command again with --verbose.
pi@gateway:~/MySController-rs $
Please install the beta channel using rustup and try again.
On Fri, Oct 12, 2018, 2:58 AM flatsiedatsie notifications@github.com wrote:
Got a large amount of errors again trying to compile it on the Pi.
Compiling myscontroller-rs v0.5.7 (file:///home/pi/MySController-rs) error[E0432]: unresolved import
crossbeam_channel
--> src/lib.rs:19:5 | 19 | use crossbeam_channel as channel; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ nocrossbeam_channel
in the rooterror[E0432]: unresolved import
actix_web
--> src/api/firmware.rs:1:5 | 1 | use actix_web::{error, multipart, AsyncResponder, Error, FutureResponse, HttpMessage, HttpRequest, | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0432]: unresolved import
futures
--> src/api/firmware.rs:4:5 | 4 | use futures::future; | ^^^^^^^ Maybe a missingextern crate futures;
?error[E0432]: unresolved import
futures
--> src/api/firmware.rs:5:5 | 5 | use futures::{Future, Stream}; | ^^^^^^^ Maybe a missingextern crate futures;
?error[E0432]: unresolved import
http
--> src/api/firmware.rs:8:5 | 8 | use http::StatusCode; | ^^^^ Maybe a missingextern crate http;
?error[E0432]: unresolved import
actix
--> src/api/index.rs:1:5 | 1 | use actix::*; | ^^^^^ Maybe a missingextern crate actix;
?error[E0432]: unresolved import
actix_web
--> src/api/index.rs:2:5 | 2 | use actix_web::{HttpRequest, Result}; | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0432]: unresolved import
actix_web
--> src/api/node.rs:1:5 | 1 | use actix_web::{AsyncResponder, FutureResponse, HttpRequest, HttpResponse, Json}; | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0433]: failed to resolve. Maybe a missing
extern crate futures;
? --> src/api/node.rs:3:5 | 3 | use futures::future::Future; | ^^^^^^^ Maybe a missingextern crate futures;
?error[E0432]: unresolved import
http
--> src/api/node.rs:5:5 | 5 | use http::StatusCode; | ^^^^ Maybe a missingextern crate http;
?error[E0432]: unresolved import
actix_web
--> src/api/sensor.rs:1:5 | 1 | use actix_web::{AsyncResponder, FutureResponse, HttpRequest, HttpResponse, Json}; | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0433]: failed to resolve. Maybe a missing
extern crate futures;
? --> src/api/sensor.rs:3:5 | 3 | use futures::future::Future; | ^^^^^^^ Maybe a missingextern crate futures;
?error[E0432]: unresolved import
http
--> src/api/sensor.rs:5:5 | 5 | use http::StatusCode; | ^^^^ Maybe a missingextern crate http;
?error[E0432]: unresolved import
serialport
--> src/core/connection.rs:3:5 | 3 | use serialport; | ^^^^^^^^^^ noserialport
in the rooterror[E0433]: failed to resolve. Maybe a missing
extern crate serialport;
? --> src/core/connection.rs:4:5 | 4 | use serialport::prelude::*; | ^^^^^^^^^^ Maybe a missingextern crate serialport;
?error[E0432]: unresolved import
num
--> src/core/message/presentation.rs:3:5 | 3 | use num::FromPrimitive; | ^^^ Did you meanstd::num
?error[E0432]: unresolved import
num
--> src/core/message/set.rs:3:5 | 3 | use num::FromPrimitive; | ^^^ Did you meanstd::num
?error[E0432]: unresolved import
hex
--> src/core/message/stream.rs:2:5 | 2 | use hex; | ^^^ nohex
in the rooterror[E0432]: unresolved import
num
--> src/core/message/stream.rs:4:5 | 4 | use num::FromPrimitive; | ^^^ Did you meanstd::num
?error[E0432]: unresolved import
num
--> src/core/message/mod.rs:7:5 | 7 | use num::FromPrimitive; | ^^^ Did you meanstd::num
?error[E0432]: unresolved import
r2d2
--> src/core/message_handler/internal.rs:7:5 | 7 | use r2d2::*; | ^^^^ Did you meandiesel::r2d2
?error[E0432]: unresolved import
r2d2
--> src/core/message_handler/presentation.rs:8:5 | 8 | use r2d2::*; | ^^^^ Did you meandiesel::r2d2
?error[E0432]: unresolved import
r2d2
--> src/core/message_handler/stream.rs:10:5 | 10 | use r2d2::*; | ^^^^ Did you meandiesel::r2d2
?error[E0432]: unresolved import
actix
--> src/handler/firmware.rs:2:5 | 2 | use actix::*; | ^^^^^ Maybe a missingextern crate actix;
?error[E0432]: unresolved import
actix_web
--> src/handler/firmware.rs:3:5 | 3 | use actix_web::*; | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0432]: unresolved import
actix
--> src/handler/node.rs:2:5 | 2 | use actix::*; | ^^^^^ Maybe a missingextern crate actix;
?error[E0432]: unresolved import
actix_web
--> src/handler/node.rs:3:5 | 3 | use actix_web::*; | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0432]: unresolved import
actix
--> src/handler/sensor.rs:2:5 | 2 | use actix::*; | ^^^^^ Maybe a missingextern crate actix;
?error[E0432]: unresolved import
actix_web
--> src/handler/sensor.rs:3:5 | 3 | use actix_web::*; | ^^^^^^^^^ Maybe a missingextern crate actix_web;
?error[E0432]: unresolved import
actix
--> src/model/db.rs:1:5 | 1 | use actix::*; | ^^^^^ Maybe a missingextern crate actix;
?error[E0432]: unresolved import
crc16
--> src/model/firmware.rs:1:5 | 1 | use crc16::*; | ^^^^^ Maybe a missingextern crate crc16;
?error[E0433]: failed to resolve. Maybe a missing
extern crate ihex;
? --> src/model/firmware.rs:2:5 | 2 | use ihex::record::Record; | ^^^^ Maybe a missingextern crate ihex;
?error[E0433]: failed to resolve. Maybe a missing
extern crate webthing;
? --> src/wot/adapter.rs:6:5 | 6 | use webthing::property::EmptyValueForwarder; | ^^^^^^^^ Maybe a missingextern crate webthing;
?error[E0433]: failed to resolve. Maybe a missing
extern crate webthing;
? --> src/wot/adapter.rs:7:5 | 7 | use webthing::property::ValueForwarder; | ^^^^^^^^ Maybe a missingextern crate webthing;
?error[E0432]: unresolved import
webthing
--> src/wot/adapter.rs:8:5 | 8 | use webthing::{BaseProperty, BaseThing, Thing}; | ^^^^^^^^ Maybe a missingextern crate webthing;
?error[E0433]: failed to resolve. Maybe a missing
extern crate webthing;
? --> src/wot/mod.rs:13:5 | 13 | use webthing::server::ActionGenerator; | ^^^^^^^^ Maybe a missingextern crate webthing;
?error[E0432]: unresolved import
webthing
--> src/wot/mod.rs:14:5 | 14 | use webthing::{Action, Thing, ThingsType, WebThingServer}; | ^^^^^^^^ Maybe a missingextern crate webthing;
?error[E0433]: failed to resolve. Use of undeclared type or module
BaudRate
--> src/core/connection.rs:204:26 | 204 | settings.baud_rate = BaudRate::Baud38400; | ^^^^^^^^ Use of undeclared type or moduleBaudRate
error[E0433]: failed to resolve. Use of undeclared type or module
error
--> src/handler/firmware.rs:194:42 | 194 | let conn = &self.0.get().map_err(error::ErrorInternalServerError)?; | ^^^^^ Use of undeclared type or moduleerror
error[E0433]: failed to resolve. Use of undeclared type or module
error
--> src/handler/firmware.rs:197:22 | 197 | .map_err(error::ErrorInternalServerError)?; | ^^^^^ Use of undeclared type or moduleerror
error[E0433]: failed to resolve. Use of undeclared type or module
error
--> src/handler/node.rs:53:42 | 53 | let conn = &self.0.get().map_err(error::ErrorInternalServerError)?; | ^^^^^ Use of undeclared type or moduleerror
error[E0433]: failed to resolve. Use of undeclared type or module
error
--> src/handler/node.rs:56:22 | 56 | .map_err(error::ErrorInternalServerError)?; | ^^^^^ Use of undeclared type or moduleerror
error[E0433]: failed to resolve. Use of undeclared type or module
error
--> src/handler/sensor.rs:39:42 | 39 | let conn = &self.0.get().map_err(error::ErrorInternalServerError)?; | ^^^^^ Use of undeclared type or moduleerror
error[E0433]: failed to resolve. Use of undeclared type or module
error
--> src/handler/sensor.rs:42:22 | 42 | .map_err(error::ErrorInternalServerError)?; | ^^^^^ Use of undeclared type or moduleerror
error[E0433]: failed to resolve. Use of undeclared type or module
Record
--> src/model/firmware.rs:88:14 | 88 | &Record::Data { | ^^^^^^ Use of undeclared type or moduleRecord
error[E0433]: failed to resolve. Use of undeclared type or module
Record
--> src/model/firmware.rs:102:48 | 102 | Firmware::ihex_to_bin(&Record::from_record_string(&line.unwrap()).unwrap()) | ^^^^^^ Use of undeclared type or moduleRecord
error[E0433]: failed to resolve. Use of undeclared type or module
State
--> src/model/firmware.rs:120:25 | 120 | let mut state = State::::new(); | ^^^^^ Use of undeclared type or module State
error[E0412]: cannot find type
Addr
in this scope --> src/api/index.rs:7:13 | 7 | pub db: Addr<Syn, ConnDsl>, | ^^^^ not found in this scopeerror[E0412]: cannot find type
Syn
in this scope --> src/api/index.rs:7:18 | 7 | pub db: Addr<Syn, ConnDsl>, | ^^^ did you meanSync
?
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:48:1948 receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:49:2449 stop_receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:50:1050 ) -> Receiver { ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/connection.rs:71:3771 fn read_loop(&mut self, sender: Sender ) -> Sender { ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/connection.rs:71:5671 fn read_loop(&mut self, sender: Sender ) -> Sender { ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/connection.rs:127:17127 mut sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:128:19128 mut receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:151:15151 receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:152:28152 cancel_token_receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Receiver
in this scope --> src/core/connection.rs:153:6153 ) -> Receiver { ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver; error[E0412]: cannot find type
SerialPortSettings
in this scope --> src/core/connection.rs:202:23 | 202 | let mut settings: SerialPortSettings = Default::default(); | ^^^^^^^^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type Receiver
in this scope --> src/core/interceptor.rs:5:165 receiver: &Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/interceptor.rs:6:216 stream_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/interceptor.rs:7:197 node_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/interceptor.rs:8:278 presentation_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/interceptor.rs:9:189 set_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/interceptor.rs:10:2510 controller_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/core/message_handler/internal.rs:13:1613 receiver: &Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/internal.rs:14:1414 sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type PooledConnection
in this scope --> src/core/message_handler/internal.rs:15:2015 db_connection: PooledConnection<ConnectionManager >, ^^^^^^^^^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use diesel::r2d2::PooledConnection;
error[E0412]: cannot find type Receiver
in this scope --> src/core/message_handler/presentation.rs:11:1611 receiver: &Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/presentation.rs:12:1412 sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type PooledConnection
in this scope --> src/core/message_handler/presentation.rs:13:2013 db_connection: PooledConnection<ConnectionManager >, ^^^^^^^^^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use diesel::r2d2::PooledConnection;
error[E0412]: cannot find type Receiver
in this scope --> src/core/message_handler/set.rs:5:285 set_message_receiver: &Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/set.rs:6:266 gateway_out_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/core/message_handler/set.rs:20:1620 receiver: &Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/set.rs:21:3021 property_notify_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/set.rs:22:2522 controller_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/core/message_handler/stream.rs:13:2013 ota_receiver: &Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/stream.rs:14:1414 sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type PooledConnection
in this scope --> src/core/message_handler/stream.rs:15:2015 db_connection: PooledConnection<ConnectionManager >, ^^^^^^^^^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use diesel::r2d2::PooledConnection;
error[E0412]: cannot find type Sender
in this scope --> src/core/message_handler/stream.rs:26:3026 stream_response_sender: &Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/core/server.rs:16:2516 gateway_out_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/core/server.rs:17:2717 gateway_out_receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/core/server.rs:18:2018 in_set_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/core/server.rs:19:2719 set_message_receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use std::sync::mpsc::Receiver; error[E0405]: cannot find trait
Message
in this scope --> src/handler/firmware.rs:26:6 | 26 | impl Message for CreateOrUpdate { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Handler
in this scope --> src/handler/firmware.rs:30:6 | 30 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Message
in this scope --> src/handler/firmware.rs:185:6 | 185 | impl Message for ListFirmwares { | ^^^^^^^ not found in this scope
error[E0412]: cannot find type Error
in this scope --> src/handler/firmware.rs:186:44186 type Result = Result<Vec , Error>; ^^^^^ not found in this scope help: possible candidates are found in other modules, you can import them into scope 1 use diesel::r2d2::Error; 1 use diesel::result::Error; 1 use serde_json::Error; 1 use serde_json::error::Error; and 3 other candidates
error[E0405]: cannot find trait
Handler
in this scope --> src/handler/firmware.rs:189:6 | 189 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope
error[E0412]: cannot find type Error
in this scope --> src/handler/firmware.rs:190:44190 type Result = Result<Vec , Error>; ^^^^^ not found in this scope help: possible candidates are found in other modules, you can import them into scope 1 use diesel::r2d2::Error; 1 use diesel::result::Error; 1 use serde_json::Error; 1 use serde_json::error::Error; and 3 other candidates
error[E0405]: cannot find trait
Message
in this scope --> src/handler/firmware.rs:211:6 | 211 | impl Message for DeleteFirmware { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Handler
in this scope --> src/handler/firmware.rs:215:6 | 215 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Message
in this scope --> src/handler/firmware.rs:251:6 | 251 | impl Message for GetFirmware { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Handler
in this scope --> src/handler/firmware.rs:255:6 | 255 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Message
in this scope --> src/handler/node.rs:30:6 | 30 | impl Message for GetNode { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Message
in this scope --> src/handler/node.rs:34:6 | 34 | impl Message for DeleteNode { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Message
in this scope --> src/handler/node.rs:38:6 | 38 | impl Message for NewNode { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Message
in this scope --> src/handler/node.rs:44:6 | 44 | impl Message for ListNodes { | ^^^^^^^ not found in this scope
error[E0412]: cannot find type Error
in this scope --> src/handler/node.rs:45:3745 type Result = Result<Vec , Error>; ^^^^^ not found in this scope help: possible candidates are found in other modules, you can import them into scope 1 use diesel::r2d2::Error; 1 use diesel::result::Error; 1 use serde_json::Error; 1 use serde_json::error::Error; and 3 other candidates
error[E0405]: cannot find trait
Handler
in this scope --> src/handler/node.rs:48:6 | 48 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope
error[E0412]: cannot find type Error
in this scope --> src/handler/node.rs:49:3749 type Result = Result<Vec , Error>; ^^^^^ not found in this scope help: possible candidates are found in other modules, you can import them into scope 1 use diesel::r2d2::Error; 1 use diesel::result::Error; 1 use serde_json::Error; 1 use serde_json::error::Error; and 3 other candidates
error[E0405]: cannot find trait
Message
in this scope --> src/handler/node.rs:71:6 | 71 | impl Message for NodeUpdate { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Handler
in this scope --> src/handler/node.rs:75:6 | 75 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Handler
in this scope --> src/handler/node.rs:112:6 | 112 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Handler
in this scope --> src/handler/node.rs:142:6 | 142 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Handler
in this scope --> src/handler/node.rs:182:6 | 182 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Message
in this scope --> src/handler/sensor.rs:20:6 | 20 | impl Message for GetSensor { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Message
in this scope --> src/handler/sensor.rs:24:6 | 24 | impl Message for DeleteSensor { | ^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
Message
in this scope --> src/handler/sensor.rs:30:6 | 30 | impl Message for ListSensors { | ^^^^^^^ not found in this scope
error[E0412]: cannot find type Error
in this scope --> src/handler/sensor.rs:31:3931 type Result = Result<Vec , Error>; ^^^^^ not found in this scope help: possible candidates are found in other modules, you can import them into scope 1 use diesel::r2d2::Error; 1 use diesel::result::Error; 1 use serde_json::Error; 1 use serde_json::error::Error; and 3 other candidates
error[E0405]: cannot find trait
Handler
in this scope --> src/handler/sensor.rs:34:6 | 34 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope
error[E0412]: cannot find type Error
in this scope --> src/handler/sensor.rs:35:3935 type Result = Result<Vec , Error>; ^^^^^ not found in this scope help: possible candidates are found in other modules, you can import them into scope 1 use diesel::r2d2::Error; 1 use diesel::result::Error; 1 use serde_json::Error; 1 use serde_json::error::Error; and 3 other candidates
error[E0405]: cannot find trait
Handler
in this scope --> src/handler/sensor.rs:47:6 | 47 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Handler
in this scope --> src/handler/sensor.rs:78:6 | 78 | impl Handlerfor ConnDsl { | ^^^^^^^ not found in this scope error[E0405]: cannot find trait
Actor
in this scope --> src/model/db.rs:7:6 | 7 | impl Actor for ConnDsl { | ^^^^^ not found in this scopeerror[E0412]: cannot find type
SyncContext
in this scope --> src/model/db.rs:8:20 | 8 | type Context = SyncContext; | ^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type Record
in this scope --> src/model/firmware.rs:86:3386 pub fn ihex_to_bin(record: &Record) -> Vec { ^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 1 use log::Record; error[E0412]: cannot find type
MODBUS
in this scope --> src/model/firmware.rs:120:33 | 120 | let mut state = State::::new(); | ^^^^^^ not found in this scope
error[E0412]: cannot find type Sender
in this scope --> src/wot/adapter.rs:13:2513 set_message_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender; error[E0405]: cannot find trait
ValueForwarder
in this scope --> src/wot/adapter.rs:27:6 | 27 | impl ValueForwarder for PropertyValueForwarder { | ^^^^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type Sender
in this scope --> src/wot/adapter.rs:44:2544 set_message_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/wot/adapter.rs:68:5868 fn build_properties(sensor: &Sensor, set_message_sender: Sender ) -> Vec { ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Sender
in this scope --> src/wot/adapter.rs:80:2580 set_message_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope1 use std::sync::mpsc::Sender; error[E0405]: cannot find trait
ValueForwarder
in this scope --> src/wot/adapter.rs:87:41 | 87 | let value_forwarder: Option<Box> = match set_type.is_forwardable() { | ^^^^^^^^^^^^^^ not found in this scope error[E0425]: cannot find value
EmptyValueForwarder
in this scope --> src/wot/adapter.rs:93:32 | 93 | false => Some(Box::new(EmptyValueForwarder)), | ^^^^^^^^^^^^^^^^^^^ not found in this scopeerror[E0405]: cannot find trait
ActionGenerator
in this scope --> src/wot/mod.rs:18:6 | 18 | impl ActionGenerator for Generator { | ^^^^^^^^^^^^^^^ not found in this scope
error[E0412]: cannot find type Sender
in this scope --> src/wot/mod.rs:42:2542 set_message_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope3 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/wot/mod.rs:121:22121 in_set_receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 3 use std::sync::mpsc::Receiver;
error[E0412]: cannot find type Sender
in this scope --> src/wot/mod.rs:140:25140 set_message_sender: Sender , ^^^^^^ did you mean Send
? help: possible candidate is found in another module, you can import it into scope3 use std::sync::mpsc::Sender;
error[E0412]: cannot find type Receiver
in this scope --> src/wot/mod.rs:141:22141 in_set_receiver: Receiver , ^^^^^^^^ not found in this scope help: possible candidate is found in another module, you can import it into scope 3 use std::sync::mpsc::Receiver; error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/firmware.rs:3:5 | 3 | use crate::api::index::AppState; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/firmware.rs:6:5 | 6 | use crate::handler::firmware::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/firmware.rs:7:5 | 7 | use crate::handler::response::Msgs; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/firmware.rs:9:5 | 9 | use crate::model::firmware::Firmware; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/index.rs:3:5 | 3 | use crate::channel; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/index.rs:4:5 | 4 | use crate::model::db::ConnDsl; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/node.rs:2:5 | 2 | use crate::api::index::AppState; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/node.rs:4:5 | 4 | use crate::handler::node::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/sensor.rs:2:5 | 2 | use crate::api::index::AppState; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/api/sensor.rs:4:5 | 4 | use crate::handler::sensor::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/connection.rs:1:5 | 1 | use crate::channel; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/connection.rs:2:5 | 2 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/interceptor.rs:2:5 | 2 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message/set.rs:2:5 | 2 | use crate::model::sensor::Sensor; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message/stream.rs:3:5 | 3 | use crate::model::firmware::Firmware; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/internal.rs:1:5 | 1 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/internal.rs:5:5 | 5 | use crate::model::node::nodes::dsl; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/internal.rs:6:5 | 6 | use crate::model::node::Node; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/presentation.rs:1:5 | 1 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/presentation.rs:2:5 | 2 | use crate::core::message::presentation::PresentationMessage; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/presentation.rs:6:5 | 6 | use crate::model::sensor::sensors::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/presentation.rs:7:5 | 7 | use crate::model::sensor::Sensor; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/set.rs:1:5 | 1 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/set.rs:2:5 | 2 | use crate::core::message::set::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/stream.rs:1:5 | 1 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/stream.rs:2:5 | 2 | use crate::core::message::stream::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/stream.rs:6:5 | 6 | use crate::model::firmware::firmwares::dsl::firmwares; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/stream.rs:7:5 | 7 | use crate::model::firmware::Firmware; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/stream.rs:8:5 | 8 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/message_handler/stream.rs:9:5 | 9 | use crate::model::node::Node; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/server.rs:5:5 | 5 | use crate::channel; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/core/server.rs:6:5 | 6 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:8:5 | 8 | use crate::model; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:9:5 | 9 | use crate::model::db::ConnDsl; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:10:5 | 10 | use crate::model::firmware::Firmware; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:34:13 | 34 | use crate::model::firmware::firmwares::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:145:9 | 145 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:193:13 | 193 | use crate::model::firmware::firmwares::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:219:13 | 219 | use crate::model::firmware::firmwares::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/firmware.rs:259:13 | 259 | use crate::model::firmware::firmwares::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:8:5 | 8 | use crate::model::db::ConnDsl; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:9:5 | 9 | use crate::model::node::Node; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:52:13 | 52 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:79:13 | 79 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:116:13 | 116 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:146:13 | 146 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/node.rs:186:13 | 186 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/sensor.rs:6:5 | 6 | use crate::model::db::ConnDsl; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/sensor.rs:7:5 | 7 | use crate::model::sensor::Sensor; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/sensor.rs:38:13 | 38 | use crate::model::sensor::sensors::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/sensor.rs:51:13 | 51 | use crate::model::sensor::sensors::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/handler/sensor.rs:82:13 | 82 | use crate::model::sensor::sensors::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/model/sensor.rs:1:5 | 1 | use crate::core::message::presentation::PresentationType; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/model/sensor.rs:6:9 | 6 | use crate::core::message::presentation::PresentationTypeMapping; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/adapter.rs:1:5 | 1 | use crate::channel::Sender; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/adapter.rs:2:5 | 2 | use crate::core::message::set::{SetMessage, SetReqType, Value}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/adapter.rs:3:5 | 3 | use crate::model::sensor::Sensor; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/mod.rs:3:5 | 3 | use crate::channel::{Receiver, Sender}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/mod.rs:4:5 | 4 | use crate::core::message::set::SetMessage; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/mod.rs:7:5 | 7 | use crate::model::node::Node; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/mod.rs:8:5 | 8 | use crate::model::sensor::Sensor; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/mod.rs:51:21 | 51 | use crate::model::node::nodes::dsl::*; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/wot/mod.rs:52:21 | 52 | use crate::model::sensor::sensors::dsl::*; | ^^^^^error: aborting due to 194 previous errors
Some errors occurred: E0405, E0412, E0425, E0432, E0433, E0658. For more information about an error, try
rustc --explain E0405
. error: Could not compilemyscontroller-rs
.To learn more, run the command again with --verbose. pi@gateway:~/MySController-rs $
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/tsathishkumar/MySController-rs/issues/6#issuecomment-429125117, or mute the thread https://github.com/notifications/unsubscribe-auth/ABaM5K_MY2550hz028Fop-RBAPJ9JEyNks5uj7f7gaJpZM4W5kbX .
rustup default beta
I did a fresh install following these steps:
log into SSH
'sudo apt-get update'
'sudo curl https://sh.rustup.rs -sSf | sh'
select option 2 - Customize installation
you will get three questions. a. ignore the first one b. when asked to set a default toolchain, type "beta" c. modify PATH variable: select "yes"
reboot
Then you have to install a few libraries:
sudo apt-get install libssl-dev sudo apt-get install libsqlite3-dev
and then follow the install procedure mentioned here.
This results in 0 errors, but there are lots of warnings:
Compiling myscontroller-rs v0.5.7 (/home/pi/MySController-rs) warning: cannot find type table in this scope--> <::diesel::macros::table_body macros>:165:33 |
165 | derive ( Debug , Clone , Copy , QueryId ) ] /// The actual table struct | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= note: #[warn(proc_macro_derive_resolution_fallback)] on by default
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 <https://github.com/rust-lang/rust/issues/50504>
warning: cannot find type table in this scope--> <::diesel::macros::table_body macros>:165:33 |
165 | derive ( Debug , Clone , Copy , QueryId ) ] /// The actual table struct | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 <https://github.com/rust-lang/rust/issues/50504>
warning: cannot find type firmware_type in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type firmware_version in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type name in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type blocks in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type crc in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type data in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type Firmware in this scope--> src/model/firmware.rs:23:10 |
23 | #[derive(Queryable, Serialize, Deserialize, Insertable, Clone)] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type firmwares in this scope--> src/model/firmware.rs:23:45 |
23 | #[derive(Queryable, Serialize, Deserialize, Insertable, Clone)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type Firmware in this scope--> src/model/firmware.rs:23:45 |
23 | #[derive(Queryable, Serialize, Deserialize, Insertable, Clone)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type node_id in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type node_name in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type desired_firmware_type in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type desired_firmware_version in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type auto_update in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type scheduled in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type Node in this scope--> src/model/node.rs:14:10 |
14 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug)] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type nodes in this scope--> src/model/node.rs:14:45 |
14 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type Node in this scope--> src/model/node.rs:14:45 |
14 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type child_sensor_id in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type sensor_type in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type description in this scope--> <::diesel::macros::__diesel_column macros>:5:33 |
5 | derive ( Debug , Clone , Copy , QueryId , Default ) ] pub struct $ column_name | ^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type PresentationType in this scope--> src/model/sensor.rs:16:10 |
16 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug, PartialEq, Clone)] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type Sensor in this scope--> src/model/sensor.rs:16:10 |
16 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug, PartialEq, Clone)] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type sensors in this scope--> src/model/sensor.rs:16:45 |
16 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug, PartialEq, Clone)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type Sensor in this scope--> src/model/sensor.rs:16:45 |
16 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug, PartialEq, Clone)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
warning: cannot find type PresentationType in this scope--> src/model/sensor.rs:16:45 |
16 | #[derive(Queryable, Serialize, Deserialize, Insertable, Debug, PartialEq, Clone)] | ^^^^^^^^^^ names from parent modules are not accessible without an explicit import |
---|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #50504 https://github.com/rust-lang/rust/issues/50504
Finished dev [unoptimized + debuginfo] target(s) in 10m 26s
Running `target/debug/myscontroller-rs`
thread 'main' panicked at 'called Result::unwrap()
on an Err
value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" }', libcore/result.rs:1009:5
stack backtrace:
0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: std::sys_common::backtrace::print
at libstd/sys_common/backtrace.rs:71
at libstd/sys_common/backtrace.rs:59
2: std::panicking::default_hook::{{closure}}
at libstd/panicking.rs:211
3: std::panicking::default_hook
at libstd/panicking.rs:227
4: std::panicking::rust_panic_with_hook
at libstd/panicking.rs:477
5: std::panicking::continue_panic_fmt
at libstd/panicking.rs:391
6: rust_begin_unwind
at libstd/panicking.rs:326
7: core::panicking::panic_fmt
at libcore/panicking.rs:77
8: core::result::unwrap_failed
at libcore/macros.rs:26
9: <core::result::Result<T, E>>::unwrap
at libcore/result.rs:808
10: myscontroller_rs::server_configs
at src/main.rs:137
11: myscontroller_rs::main
at src/main.rs:44
12: std::rt::lang_start::{{closure}}
at libstd/rt.rs:74
13: std::panicking::try::do_call
at libstd/rt.rs:59
at libstd/panicking.rs:310
14: rust_maybe_catch_panic
at libpanic_unwind/lib.rs:103
15: std::panic::catch_unwind
at libstd/panicking.rs:289
at libstd/panic.rs:392
16: std::rt::lang_start_internal
at libstd/rt.rs:58
17: std::rt::lang_start
at libstd/rt.rs:74
18: main
19: libc_start_main
Ah, there is still an error there.
pi@gateway:~/MySController-rs $ rustup --version rustup 1.14.0 (1e51b07cc 2018-10-04)
@flatsiedatsie the build is successful. While running the server, it is trying to create the sqlite db file, and the permission is denied. Try to run with sudo.
Or you can change the db file location in the conf.ini file to a relative location
database_url=/var/lib/myscontroller-rs/sqlite.db
Success! Well, almost.
I tried running the compiled file with sudo:
pi@gateway:~/MySController-rs/target/debug $ ls build deps examples incremental libmyscontroller_rs.d libmyscontroller_rs.rlib myscontroller-rs myscontroller-rs.d native pi@gateway:~/MySController-rs/target/debug $ pi@gateway:~/MySController-rs/target/debug $ sudo ./myscontroller-rs thread 'main' panicked at 'called
Result::unwrap()on an
Errvalue: Error { line: 0, col: 0, msg: "Unable to open
\"conf.ini\": No such file or directory (os error 2)" }', libcore/result.rs:1009:5 note: Run with
RUST_BACKTRACE=1for a backtrace.
The conf.ini file does seem to exist in the debug folder, it's in the main folder.
if I copy the conf.ini file into the debug folder, then it does run! yay!
pi@gateway:~/MySController-rs/target/debug $ sudo ./myscontroller-rs INFO 2018-10-16T10:01:59Z: actix_web::server::srv: Starting 4 http workers INFO 2018-10-16T10:01:59Z: actix_web::server::srv: Starting server on http://0.0.0.0:8000 Running migration 20180416170858 Running migration 20180425200801 Running migration 20180515193701 Running migration 20180530120000 INFO 2018-10-16T10:02:00Z: myscontroller_rs: Starting proxy server INFO 2018-10-16T10:02:00Z: myscontroller_rs::core::connection: Waiting for server connection -- 0.0.0.0:8080 ... INFO 2018-10-16T10:02:00Z: myscontroller_rs::core::connection: Connected to -- 0.0.0.0:8080 INFO 2018-10-16T10:02:00Z: myscontroller_rs::core::connection: Server listening on -- 0.0.0.0:5003
I found this path in the service file:
/usr/local/bin/myscontroller-rs
Should I move the executive and the conf.ini file into that folder?
And should I change the conf.ini file?
` [Gateway] type=TCP port=0.0.0.0:8080
[Controller] type=TCP port=0.0.0.0:5003 `
The naming is a little confusing to me, as they seem reversed. In MySensors the 'controller' is something like Domoticz, and the gateway is the MySensors gateway software at port 5003.
I should probably change the 0.0.0.0 into 127.0.0.1. But what does the software expect to find at port 8080? The Mozilla software? Doesn't that run on port 80?
Perhaps "Mozilla gateway" and MySensors gateway" would be clearer names?
And when I restart, the server is still running on port 0.0.0.0. Perhaps it would be possible to also change the IP address of the server in the conf.ini?
And will this server then just appear magically inside the Mozilla gateway add-ons list?
@flatsiedatsie very good progress. I will update the document to make it easier for others.
Regarding the naming:
As I mentioned in the readme, I started it as a proxy between MySGateway and an actual Controller (Homeassistant in my case). So, the names in conf.ini refers to them.
If you don't have a controller to which you want to forward the requests to, that's fine, you don't need to worry about that config.
Gateway usually listens at 5003, so configure that.
Regarding the Mozilla gateway - you don't need to configure that in conf.ini.
You would need to add the url of this controller, which starts on port 8888 in Mozilla IoT Gateway.
TL;DR:
Ignore [Controller] config (change port to unused one), configure [Gateway] properly and you are good to go.
Open Mozilla Gateway UI and add things adapter, and configure the url
Sometimes, you need to manually add things with URLs as below,
http://localhost:8888/0 http://localhost:8888/1
etc
I found this path in the service file: /usr/local/bin/myscontroller-rs
If you install the server through apt-get it would install in that location. I think you can run it from the repo itself for now. I'm still fighting with docker images to build for armv7hf
. Once I get that working, I can build debian package, which you can directly install and run.
In Mozilla IoT Gateway follow the below steps to add Web Thing URL:
Settings -> Add-ons -> + -> Web Thing -> Configure -> http://localhost:8888
I got it working! Very cool!
However, it seemed to add one device, and then it stopped adding other new ones.
Sometimes, you need to manually add things with URLs as below, http://localhost:8888/0 http://localhost:8888/1
I suspect I have to try that? Why is it sometimes? And would it be possible to have this be done automatically?
Do you get all the thing listed when you click add?
I got two child-items when I clicked add (temperature sensor and light sensor). They were both part of the same device (smart alarm clock).
Interestingly those sensor-children each have an on-off switch attached to them. I suspect this is a function of the gateway (which would be great, very privacy friendly to be able to switch of the collection of data for a while this way).
After this first scan it's definitely not adding other devices automatically. I tried adding a very simple switch device, but 'scanning for new devices' doesn't do anything. I tried powering it on before and during the 'scanning' phase.
If I try 'add by url' on the 'add device' page, and then enter either of these I get "Web thing not found": http://localhost:8888/2 http://localhost:8888/1 http://localhost:8888/0 http://localhost:8888
Is there a place I can check the logs?
// the sensors also aren't showing any data. I tried turning their switches to on in the interface, but there was no difference.
I am funnily enough able to manually change the sensor value by dragging the slider. This could be another great privacy feature: temporarily override the actual data with fake data. "No mom, we really didn't throw a house party, check the logs!".
Clicking on the 'logs' button in the interface also doesn't show anything. This must be a gateway issue. Or perhaps there's just no data to show yet. Although I did drag the sensor to a manual position. Odd.
I understand the problem. Whenever you add more devices dynamically, the myscontroller-rs server has to be restarted to publish the new device's end point. This because of a limitation with web-thing crate. I will try to make it automated.
On Wed, Oct 17, 2018, 12:40 PM flatsiedatsie notifications@github.com wrote:
it's definitely not adding other devices automatically. I tried a very simple switch device, but 'scanning for new devices' doesn't do anything.
if I try 'add by url' on the 'add device' page, and then enter either of these I get "Web thing not found": http://localhost:8888/2 http://localhost:8888/1 http://localhost:8888/0 http://localhost:8888
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/tsathishkumar/MySController-rs/issues/6#issuecomment-430515330, or mute the thread https://github.com/notifications/unsubscribe-auth/ABaM5NdsftC7Ar2hPZZ-uZI-mBmri1H3ks5ultf-gaJpZM4W5kbX .
Great!
Any idea why I don't see any data on the sensor show up?
By the way, I'd be happy to buy you a Raspberry Pi if that would help with development.
Any idea why I don't see any data on the sensor show up?
I don't quite get the question. You mean the sensor added to Mozilla Gateway via myscontroller-rs is not updated with latest data? If this is the case, could you check the logs of myscontroller-rs to see if you are receiving data from sensor?
By the way, I'd be happy to buy you a Raspberry Pi if that would help with development.
Thanks for the offer, we have a few of them in our office. It's just that I'm working in a remote place this week and don't have pi with me. :) and since we are running the server on a linux box, so didn't face all these issues. Getting feedback from you helps a lot. Thanks again.
You mean the sensor added to Mozilla Gateway via myscontroller-rs is not updated with latest data?
Yes, that's what I mean.
Where is the myscontroller-rs log located?
And my pleasure :-)
By default, the logs are written to the console. You might want to redirect the output to a log file and run the server in background.
./target/debug/myscontroller-rs > /var/log/myscontroller-rs.log &
And use the below steps to build in release mode and run.
cargo build --release
./target/release/myscontroller-rs > /var/log/myscontroller-rs.log &
You mean the browser console?
I'm not quite sure what you mean by running the server in the background. Doesn't myscontroller-rs already run in the background continuously? (I've set it up as a service)
Some more questions:
Will/could myscontroller-rs run on Arm6 too? Specifically the Raspberry Pi Zero W?
Does myscontroller-rs support MySensors goodies like..
Wow, that is quite a bunch of use cases there :)
None of them are being supported as of now. But should be easy to add support for first 2. I'll add them to my immediate TODO list.
Regarding 3rd requirement, I'll check the MySensors protocol, and see how we can implement that.
Will/could myscontroller-rs run on Arm6 too? Specifically the Raspberry Pi Zero W?
This should be possible, as the rust code can be cross compiled to arm6 as well as arm7.
You mean the browser console?
Nope, I was talking about the service log only. So if you have exported as service, then you should be able to see it in the journalctl I think.
I have created issues #8 #9 #10 and #11 to track the feature requests. Closing this issue for now.
I used Mozilla's image and Etcher to create an SD card.
I then enabled SSH in the interface, and connected to it.
Trying to follow your installation instructions fails though. It feels as it it assumes things will be running in a docker container?
pi@gateway:~ $ sudo apt-get update Hit:1 http://archive.raspberrypi.org/debian stretch InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian stretch InRelease Ign:3 http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid InRelease Hit:4 http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid Release Get:5 http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid Release.gpg [821 B] Ign:5 http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid Release.gpg Fetched 821 B in 1s (645 B/s) Reading package lists... Done W: GPG error: http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 379CE192D401AB61 W: The repository 'http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid Release' is not signed. N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use. N: See apt-secure(8) manpage for repository creation and user configuration details. N: Skipping acquire of configured file 'main/binary-armhf/Packages' as repository 'http://dl.bintray.com/tsathishkumar/myscontroller-rs vivid InRelease' doesn't support architecture 'armhf'