Git Product home page Git Product logo

godot-rust-cli's People

Contributors

ducklin5 avatar robertcorponoi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

godot-rust-cli's Issues

Can't open dynamic library

This issue is caused by the library not being built when it was created. A build should automatically be started when a library is created.

Create a documentation site

We need better documentation than just the readme.

I've come across a few options like mdBook, VuePress, etc but I think I've decided on creating a Gridsome site and host it on Netlify or GitHub pages.

This means that changing documentation will require working in a different repo but it's a better alternative than having an npm library within the cargo package. We could also set up an action to copy the build files of the documentation into a /docs directory in this repo and use it with GitHub pages.

Make the config more friendly

Currently the configuration file is just used internally but it should be able to be edited by the user with confidence. This means that it needs to be heavily documented and probably could use more user configurable properties.

Update build badge

The build badge is still set to Travis CI, it needs to be updated for GitHub actions.

Error messages need work

Errors are currently all caught with except and they're formatted awfully and on top of all that it's hard to tell which errors are user error and which ones are program error.

Possible solutions:

Ability to define targets

This was something in godot-rust-helper but I didn't port it over here because I wanted godot-rust-cli to be more simple. However, I don't think this simplicity helps users and targets should be able to be defined.

Change godot_project_dir property in the JSON configuration file

The property godot_project_dir in the JSON configuration file should be changed to godot_project_dir_name or something similar.

This is more of just a semantic change since that property doesn't hold the path to the Godot project but just the name of the directory of the Godot project.

Update Discord link

The link to the Discord server does not work. Perhaps it wasn't a permalink.

Android support

Hi, thanks for making this library. Is there any possibility to add Android compatibility

Thanks.

The library and Godot project should always be checked against the config

To ensure that things run as smoothly as possible, and in cases where the user might accidentally delete a file, I believe that the cli should always double check the library and Godot project when installing modules.

What this means is that when you create or destroy a module, the library would:

  • Remove the module from the config (normal).
  • "Re-create" the library and Godot structure from the new config. This has additional time associated with it but checks can be performed to prevent too many unnecessary processes.

This could also be split as a separate command. A use case for this is if a user accidentally deletes a module, they can at least just run a simple command and recreate it without having to worry about the errors and trying to resolve them manually to get the project working again.

Create mdBook

More robust documentation should be provided in a mdBook.

Build does not work with the msvc toolchain

The build command can't copy the library dll, if the msvc toolchain is used (Installed via Visual Studio) and not gnu.
This is because the get_platform_toolchain function always assumes gnu and does not consider msvc to be an option.

Watch option exits on error

Title mostly explains it: using godot-rust-cli build --watch will exit if cargo build encounters an error, this might be intentional, however, I save a lot, especially since it is usually required to save to get rust-analyzer to do its thing, at least in my editor, so it would be nice if the error was reported, but the command did not exit, letting you continue editing and building.

Support more targets

Toolchains should be able to be optionally passed to the build command. However, this toolchain needs to be matched with the target in the Godot project somehow.

Update config

The configuration should be updated to be more like a package config. More details will be provided as they are developed.

Create library from existing project

It would be neat to be able to create a library based off an existing non-godot-rust-cli library. I think this might be a good command or an extension of the new command.

Add Linux as a supported cross-compilation platform

This shouldn't be too far off, it just needs the correct Dockerfile created.

The issue that we're currently facing is documented here.

Essentially:

  • We need to extend the default docker file for 64 bit Linux.
  • We need this image to have clang 3.9 or higher.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.