Lux-AI-Challenge / Lux-Design-S1

Home to the design and engine of the @Lux-AI-Challenge Season 1, hosted on @kaggle
https://lux-ai.org/
Apache License 2.0
897 stars 152 forks source link

Add Rust Kit #155

Closed tye-singwa closed 2 years ago

tye-singwa commented 2 years ago

Hi! Added Rust kit support via both Docker & native cargo. Also added documentation in both README.md and using doc comments. Included spec using generic executable, i think it should work, cause Dimensions package doesnt support Rust yet. Please tell me if anything is needed to finalize this PR.

StoneT2000 commented 2 years ago

Thanks! And nice job with making this into an executable!

Ok given the number of new kits coming out suddenly (3 in a week!), i'll provide a test kaggle notebook where you can test your starter kit as ultimately the kit has to work on kaggle server vms (which are the same vms kaggle notebooks run on)

tye-singwa commented 2 years ago

NP! Then this kit is blocked by this notebook, right? Well then will wait till it will be implemented, and try to polish this PR little bit, if I'll have free time. Also can you please tell me, what else I can add regarding this PR?

StoneT2000 commented 2 years ago

Yes this is partially blocked by us now, we will try to streamline this more next time.

Documentation looks great though! Please make sure that any inconsistencies with the general API are documented

Also does this work on windows? If not, please clarify that somewhere. It's fine if it doesn't work on windows, just want people to be aware that they need WSL or something before trying to use it.

tye-singwa commented 2 years ago

Thanks for pointing in right direction. Will test on Windows VM & look through API inconsistencies.

StoneT2000 commented 2 years ago

@tye-singwa Ok done! https://www.kaggle.com/stonet2000/lux-ai-2021-testing-new-non-python-starter-kits?scriptVersionId=76868015

Copy that and try running your rust agent using the notebook

FranciscoGreco commented 2 years ago

I tried running this on windows but I'm getting the following error:

$ sh compile.sh cargo build --release --bin solution
compile.sh: command substitution: line 31: syntax error near unexpected token `('
compile.sh: command substitution: line 31: `docker run -it -d       -u $$(shell id -u):$$(shell id -g)            --name "luxairust_compiler"       -v $(pwd)/build/target/:/root/target/       -v $(pwd):/root       -w /root       --rm "luxairust_compiler" bash)'
Error: No such container: luxairust_compiler
FranciscoGreco commented 2 years ago

Using WSL and making a native build works great though 👍

tye-singwa commented 2 years ago

Hi, @StoneT2000! Sorry for a delay, I've rewrote kit code to match API described in README.md. Also make it work on Kaggle notebook https://www.kaggle.com/valerich/lux-ai-2021-testing-rust-starter-kits.

StoneT2000 commented 2 years ago

Thanks @tye-singwa for the contributions! Looks like everything is working, I'll merge this in and make an announcement to the community about this.

tye-singwa commented 2 years ago

Thanks @FranciscoGreco! Appreciate your help with Windows testing.