2019-03-01 00:26:09 UTC - Roberto Diaz: @Michele Sciabarra if you need help to keep moving forward the rust runtime do not hesitate to contact me, I'm really glad to help with this :slightly_smiling_face: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551399969010400 ---- 2019-03-01 00:34:16 UTC - Rodric Rabbah: Welcome @Timothy Mondonedo https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551400456010800 ---- 2019-03-01 09:47:21 UTC - Michele Sciabarra: @Roberto Diaz the work in progress is here <https://github.com/sciabarracom/incubator-openwhisk-runtime-rust> +1 : Rob Allen https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551433641011600 ---- 2019-03-01 09:57:10 UTC - Roberto Diaz: awesome!!! https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551434230011800 ---- 2019-03-01 10:36:09 UTC - Michele Sciabarra: how do you launch the cargo build? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551436569012800?thread_ts=1551436569.012800&cid=C3UDXSFA6 ---- 2019-03-01 11:09:41 UTC - Rob Allen: How do you find the time @Michele Sciabarra?! https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551438581013200 ---- 2019-03-01 11:10:03 UTC - Rob Allen: suspects that he needs to lose the day-job so that he can do more OSS https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551438603013300?thread_ts=1551438603.013300&cid=C3UDXSFA6 ---- 2019-03-01 11:13:49 UTC - Roberto Diaz: cargo run -p actionLoop https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551438829013500?thread_ts=1551436569.012800&cid=C3UDXSFA6 ---- 2019-03-01 11:14:05 UTC - Roberto Diaz: ohh sorry that is for run https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551438845013700?thread_ts=1551436569.012800&cid=C3UDXSFA6 ---- 2019-03-01 11:14:17 UTC - Roberto Diaz: to build is just `cargo build` https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551438857013900?thread_ts=1551436569.012800&cid=C3UDXSFA6 ---- 2019-03-01 11:16:40 UTC - Michele Sciabarra: the trick is very easy: sit down in front of TV with a computer on your lap and select a very boring program 100 : Roberto Diaz laughing : Rob Allen, Rodric Rabbah, Carlos Santana https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551439000014700 ---- 2019-03-01 11:42:57 UTC - Rodric Rabbah: @Rob Allen oh no please not the day-job :smile: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551440577015500 ---- 2019-03-01 11:46:27 UTC - Rob Allen: Pesky living costs… https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551440787015900 ---- 2019-03-01 11:55:14 UTC - Michele Sciabarra: hm https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551441314016000?thread_ts=1551436569.012800&cid=C3UDXSFA6 ---- 2019-03-01 11:57:48 UTC - Roberto Diaz: doesn't work for you? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551441468016200?thread_ts=1551436569.012800&cid=C3UDXSFA6 ---- 2019-03-01 11:59:19 UTC - Carlos Santana: <https://twitter.com/csantanapr/status/1101451568765984768?s=21> beers : dubee https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551441559016500 ---- 2019-03-01 15:01:13 UTC - Carlos Santana: <https://azure.microsoft.com/en-gb/blog/announcing-the-general-availability-of-java-support-in-azure-functions/> https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551452473017000 ---- 2019-03-01 15:01:42 UTC - Carlos Santana: @Michele Sciabarra @Rodric Rabbah ^^ https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551452502017500 ---- 2019-03-01 15:02:17 UTC - Michele Sciabarra: Uh https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551452537017700?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:02:43 UTC - Matt Sicker: get a day job working on OSS! :smile: (I work on Jenkins during the day) +1 : Rob Allen https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551452563017800?thread_ts=1551438603.013300&cid=C3UDXSFA6 ---- 2019-03-01 15:14:03 UTC - Carlos Santana: Will the UX for our upcoming java runtime be as good or better than Azure ? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551453243018800?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:52:26 UTC - Michele Sciabarra: better :smile: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455546019000?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:52:32 UTC - Michele Sciabarra: you do not need a special maven https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455552019200?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:52:58 UTC - Michele Sciabarra: I will use maven but an ordinary one https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455578019500?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:52:59 UTC - Carlos Santana: what is maven? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455579019700?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:10 UTC - Carlos Santana: LOL https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455590019900?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:17 UTC - Michele Sciabarra: it is a widely used java build tool https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455597020100?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:29 UTC - Michele Sciabarra: slow like the hell https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455609020300?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:32 UTC - Carlos Santana: I know, it was a joke Michele https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455612020500?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:41 UTC - Carlos Santana: I did a lot of maven https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455621020700?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:48 UTC - Carlos Santana: well before that I did a lot ant for java https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455628020900?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:53:50 UTC - Michele Sciabarra: you will be able to deploy a single file java https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455630021100?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:54:18 UTC - Michele Sciabarra: and a mavenized build https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455658021300?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:54:27 UTC - Carlos Santana: But I tried to convince @Rodric Rabbah I don't know squat about java or scala. and want to keep it that way :shushing_face: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455667021500?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:55:31 UTC - Michele Sciabarra: here the rust gurus are required https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455731021900?thread_ts=1551455731.021900&cid=C3UDXSFA6 ---- 2019-03-01 15:55:57 UTC - Michele Sciabarra: LOL https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455757022100?thread_ts=1551452537.017700&cid=C3UDXSFA6 ---- 2019-03-01 15:57:42 UTC - Roberto Diaz: what's wrong? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455862023600?thread_ts=1551455731.021900&cid=C3UDXSFA6 ---- 2019-03-01 15:57:53 UTC - Carlos Santana: I just finish today this Rust Tutorial :heart: 42 short videos, very good and enjoy it. But I would start by watching video 42 the one about JSON and serde package/cargo <https://www.youtube.com/watch?v=hIi_UlyIPMg&list=PLVvjrrRCBy2JSHf9tGxGKJ-bYAN_uDCUL&index=42> <https://www.youtube.com/watch?v=vOMJlQ5B-M0&list=PLVvjrrRCBy2JSHf9tGxGKJ-bYAN_uDCUL> https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455873023900 ---- 2019-03-01 15:58:59 UTC - Michele Sciabarra: warning: unused `std::result::Result` that must be used --> action_loop/src/main.rs:39:9 https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455939024100 ---- 2019-03-01 15:58:59 UTC - Michele Sciabarra: also the build is a bit too slow ... is there any way to preload the dependencies? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455939024200 ---- 2019-03-01 15:59:21 UTC - Michele Sciabarra: ehm no - I am NOT supposed to learn rust :smile: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455961024600 ---- 2019-03-01 15:59:58 UTC - Roberto Diaz: that warning is acceptable at this point https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551455998025500 ---- 2019-03-01 16:00:20 UTC - Michele Sciabarra: I want to... but in this case I play the game of the guy who does not kow the language it is building the runtime for https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456020026200 ---- 2019-03-01 16:00:20 UTC - Roberto Diaz: is throw by stdout.flush() https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456020026300 ---- 2019-03-01 16:00:24 UTC - Michele Sciabarra: ook https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456024026500 ---- 2019-03-01 16:00:34 UTC - Roberto Diaz: I'll fix it later https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456034026900 ---- 2019-03-01 16:00:50 UTC - Michele Sciabarra: ok because I will handover the build https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456050027300 ---- 2019-03-01 16:01:21 UTC - Roberto Diaz: how is it taking to build? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456081027800 ---- 2019-03-01 16:01:38 UTC - Michele Sciabarra: it is taking time to download dependencies https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456098028100 ---- 2019-03-01 16:01:53 UTC - Michele Sciabarra: that is not just serde as it has a lot of other dependencies https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456113028600 ---- 2019-03-01 16:02:56 UTC - Michele Sciabarra: also I notice it produces a debug build https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456176029100?thread_ts=1551456176.029100&cid=C3UDXSFA6 ---- 2019-03-01 16:04:13 UTC - Roberto Diaz: what about to create a docker images including that dependencies? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456253029700 ---- 2019-03-01 16:04:22 UTC - Michele Sciabarra: yes that is the idea but how? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456262030000 ---- 2019-03-01 16:05:30 UTC - Roberto Diaz: I have a basic idea of docker containers :sweat_smile: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456330030700 ---- 2019-03-01 16:06:19 UTC - Michele Sciabarra: I mean what is the cargo command to preload dependencies https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456379031200 ---- 2019-03-01 16:06:47 UTC - Roberto Diaz: `cargo build` downloads all the dependencies https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456407031600 ---- 2019-03-01 16:07:03 UTC - Roberto Diaz: and the next time you invoke it all the downloaded libraries will be there https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456423032000 ---- 2019-03-01 16:07:17 UTC - Roberto Diaz: so it will not download it again https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456437032400 ---- 2019-03-01 16:07:42 UTC - Michele Sciabarra: uhm https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456462032700 ---- 2019-03-01 16:09:22 UTC - Michele Sciabarra: ok I have an idea https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456562033300 ---- 2019-03-01 16:09:27 UTC - Michele Sciabarra: then https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456567033500 ---- 2019-03-01 16:09:54 UTC - Michele Sciabarra: what about this: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456594033700 ---- 2019-03-01 16:09:56 UTC - Michele Sciabarra: ``` ./action_loop 3>&1 {"value":{"name":"Mike"}} Echo received data: name:"Mike" ``` https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456596033900 ---- 2019-03-01 16:10:18 UTC - Roberto Diaz: to run the release target just run `cargo build --release` https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456618034400?thread_ts=1551456176.029100&cid=C3UDXSFA6 ---- 2019-03-01 16:10:22 UTC - Michele Sciabarra: I was expecting {"hello": "Mike"} or something like this https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456622034700 ---- 2019-03-01 16:10:37 UTC - Michele Sciabarra: oh I see you use https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456637034900 ---- 2019-03-01 16:10:42 UTC - Michele Sciabarra: main(input_data: HashMap<String, Value>) -> String https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456642035100 ---- 2019-03-01 16:11:13 UTC - Michele Sciabarra: you should use something like: ``` main(input_data: HashMap<String, Value>) -> HashMap<String, Value> ``` https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456673035700 ---- 2019-03-01 16:11:18 UTC - Michele Sciabarra: and deserialize back https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456678035900 ---- 2019-03-01 16:11:32 UTC - Michele Sciabarra: to a SINGLE LINE json https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456692036300 ---- 2019-03-01 16:11:58 UTC - Roberto Diaz: that single line should not be managed at user function level? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456718036800 ---- 2019-03-01 16:12:13 UTC - Michele Sciabarra: no https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456733037200 ---- 2019-03-01 16:12:17 UTC - Roberto Diaz: that why I returned a single string https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456737037500 ---- 2019-03-01 16:12:19 UTC - Roberto Diaz: ok! https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456739037700 ---- 2019-03-01 16:12:28 UTC - Roberto Diaz: that's easy to fix https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456748038100 ---- 2019-03-01 16:12:38 UTC - Michele Sciabarra: no your code should manage object in the language and return objects in the language https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456758038300 ---- 2019-03-01 16:12:43 UTC - Michele Sciabarra: the json is an hidden detail https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456763038600 ---- 2019-03-01 16:12:49 UTC - Roberto Diaz: oki https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456769038900 ---- 2019-03-01 16:13:03 UTC - Michele Sciabarra: yes there is the use serde_json::Value; https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456783039200 ---- 2019-03-01 16:13:22 UTC - Michele Sciabarra: I do not know if it is possible to hide that... https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456802039600 ---- 2019-03-01 16:13:38 UTC - Michele Sciabarra: in go I have the interface{} and then I cast... https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456818039900 ---- 2019-03-01 16:13:48 UTC - Michele Sciabarra: you told me I know https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456828040100 ---- 2019-03-01 16:14:21 UTC - Roberto Diaz: the `serde::Value` is the generic object for json keys https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456861040900 ---- 2019-03-01 16:16:21 UTC - Michele Sciabarra: yup but there is not something like the java Object or the go interface{} in Rust? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456981041700 ---- 2019-03-01 16:16:32 UTC - Michele Sciabarra: Ok Java exposes the Gson library so https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456992042000 ---- 2019-03-01 16:16:36 UTC - Michele Sciabarra: it could be fine https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551456996042200 ---- 2019-03-01 16:16:58 UTC - Roberto Diaz: yeah that we talked last week https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457018042900 ---- 2019-03-01 16:16:59 UTC - Michele Sciabarra: but the ideal is that you can write a "pure Rust" action that receive a generic object https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457019043000 ---- 2019-03-01 16:17:14 UTC - Michele Sciabarra: I see the probelm in the dependency to download https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457034043400 ---- 2019-03-01 16:17:26 UTC - Michele Sciabarra: well https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457046043700 ---- 2019-03-01 16:18:14 UTC - Michele Sciabarra: ah another thing https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457094044000 ---- 2019-03-01 16:18:18 UTC - Michele Sciabarra: I see here: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457098044400 ---- 2019-03-01 16:18:22 UTC - Roberto Diaz: what do you mean? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457102044500 ---- 2019-03-01 16:18:39 UTC - Michele Sciabarra: ok forget the dependency from serde we can take it https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457119044900 ---- 2019-03-01 16:18:48 UTC - Michele Sciabarra: we have in Swift and Java https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457128045200 ---- 2019-03-01 16:19:05 UTC - Michele Sciabarra: but I need that you change the signature to soemthing like: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457145045600 ---- 2019-03-01 16:19:27 UTC - Michele Sciabarra: main(input_data: HashMap<String, Value>) -> HashMap<String, Value> https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457167045900 ---- 2019-03-01 16:19:48 UTC - Michele Sciabarra: in the <http://main.rs|main.rs> two changes: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457188046500 ---- 2019-03-01 16:20:14 UTC - Michele Sciabarra: 1. that it will take the returned value and write as a serialized JSON in fd3 https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457214047000 ---- 2019-03-01 16:20:36 UTC - Michele Sciabarra: without newlines -> single line json terminated by newline https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457236047700 ---- 2019-03-01 16:20:50 UTC - Michele Sciabarra: 2. it should accept a JSON with a missing value https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457250048100 ---- 2019-03-01 16:21:00 UTC - Michele Sciabarra: I see here: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457260048500 ---- 2019-03-01 16:21:20 UTC - Michele Sciabarra: match unparsed_payload { Ok(value) => payload = value, Err(_) => eprintln!("Error parsing value json") } https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457280048700?thread_ts=1551457280.048700&cid=C3UDXSFA6 ---- 2019-03-01 16:21:31 UTC - Michele Sciabarra: actually a missing value is a VALID case https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457291049100 ---- 2019-03-01 16:21:52 UTC - Michele Sciabarra: you have to pass an empty hashmap to the function https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457312049600 ---- 2019-03-01 16:21:55 UTC - Markus Thömmes: why don't we return a `Result` in rust? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457315049800 ---- 2019-03-01 16:22:08 UTC - Michele Sciabarra: I do not know rust ... :smile: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457328050300 ---- 2019-03-01 16:22:14 UTC - Markus Thömmes: in Javascript we return a Promise, which can also have a failed case https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457334050600 ---- 2019-03-01 16:22:16 UTC - Michele Sciabarra: you guys let me know https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457336050800 ---- 2019-03-01 16:22:22 UTC - Michele Sciabarra: you guys decide https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457342051100 ---- 2019-03-01 16:23:00 UTC - Markus Thömmes: likewise we can return a `Result` in rust. That makes code more composable in that: The rust code can compose several computations resulting in a Result and "just" return that in the end https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457380051800 ---- 2019-03-01 16:23:10 UTC - Markus Thömmes: imo something worth thinking about https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457390052000 ---- 2019-03-01 16:26:51 UTC - Roberto Diaz: yeah!! return a `Result` could be a good option. In fact I just replicate the behaviour of go and python, and for that reason it was returning a string :stuck_out_tongue: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457611053300 ---- 2019-03-01 16:26:58 UTC - Michele Sciabarra: A PR to this super simple repo I think is the faster way <https://github.com/rdiaz82/openwhisk-runtime-rust> https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457618053500 ---- 2019-03-01 16:27:32 UTC - Michele Sciabarra: just give me something that reads a json and writes a json in fd3 :slightly_smiling_face: https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457652054300 ---- 2019-03-01 16:27:46 UTC - Michele Sciabarra: and accepts '{}' as a valid input https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457666054600 ---- 2019-03-01 16:27:58 UTC - Roberto Diaz: This can be changed and in case of error parsing the `value` just assign an empty hashmap to the `payload` https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457678054700?thread_ts=1551457280.048700&cid=C3UDXSFA6 ---- 2019-03-01 16:30:39 UTC - Roberto Diaz: I'll do the changes this evening/night , I have to go now https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457839055600 ---- 2019-03-01 16:32:21 UTC - Michele Sciabarra: take it easy https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457941057300 ---- 2019-03-01 16:32:23 UTC - Michele Sciabarra: no rush https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551457943057600 ---- 2019-03-01 16:34:25 UTC - Roberto Diaz: I don't really know if my approach is the correct but in my head this worked in the following way: 1) docker container with this code inside <https://github.com/rdiaz82/openwhisk-runtime-rust> 2) Take the code provided by the user and acts in this two options: 2.a) If is a simple <http://main.rs|main.rs> just replace /action/src/main.rs with the provided code (understand here that the user don't need any additional library) 2.b) If the user provides a complete project, replace the content of /action with the provided content 3) execute cargo build -- release 4) extract the compiled `bin` and use it as the launcher for the user action https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458065059800 ---- 2019-03-01 16:34:31 UTC - Roberto Diaz: is it correct? https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458071060000 ---- 2019-03-01 16:34:55 UTC - Michele Sciabarra: mostly yes https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458095060400 ---- 2019-03-01 16:35:30 UTC - Michele Sciabarra: I replaces the action code with actions/src/lib.rs https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458130060900 ---- 2019-03-01 16:35:50 UTC - Michele Sciabarra: <http://main.rs|main.rs> does not work https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458150061500 ---- 2019-03-01 16:36:10 UTC - Michele Sciabarra: if you upload a zip I move everything under actions https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458170062100 ---- 2019-03-01 16:36:13 UTC - Roberto Diaz: yes https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458173062200 ---- 2019-03-01 16:36:14 UTC - Roberto Diaz: sorry https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458174062400 ---- 2019-03-01 16:36:16 UTC - Roberto Diaz: <http://lib.rs|lib.rs> https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458176062600 ---- 2019-03-01 16:37:07 UTC - Michele Sciabarra: now I plan to rebuild with docker an empty project to preload dependencies when building the docker image https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458227063300 ---- 2019-03-01 16:41:16 UTC - Roberto Diaz: that's will be awesome https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458476064000 ---- 2019-03-01 16:41:51 UTC - Roberto Diaz: because if the user uses a <http://lib.rs|lib.rs> there will be no downloading dependencies time https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458511064700 ---- 2019-03-01 16:42:17 UTC - Michele Sciabarra: no https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458537064900 ---- 2019-03-01 16:42:43 UTC - Michele Sciabarra: and probably not even recompiling of standard libraries https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458563065200 ---- 2019-03-01 16:42:51 UTC - Michele Sciabarra: I just run a first build https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458571065600 ---- 2019-03-01 16:48:48 UTC - Roberto Diaz: yeah in that first build you will download all the serde stuff https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551458928066000 ---- 2019-03-01 16:58:11 UTC - Michele Sciabarra: yes I do a sort of "preloading" build https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551459491066500 ---- 2019-03-01 16:58:30 UTC - Michele Sciabarra: there is something like this also in the swift and java runtime https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551459510067000 ---- 2019-03-01 16:58:47 UTC - Michele Sciabarra: but that wil not be strictly necessary because actionloop supports precompilation https://openwhisk-team.slack.com/archives/C3UDXSFA6/p1551459527067500 ----