-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support different targets #64
Comments
I think as for Comonicon projects, this is quite simple, we can just have an extra field in name = "ion"
target = ["julia/basic", "completion/zsh", "julia/poptart"] however, if we generate an entry for GUI, we might want to have different installation options/paths for target |
I am not sure how If it is in Python, I would import a package that provides the corresponding In Julia, it is not allowed to import a package in a function. It seems to me that this means either packages that provide targets become dependences of Comonicon or users manually import the packages. We certainly do not want the latter one. Is there a better solution other than making all extended packages as dependence? |
Note, this can be a harmful way of writing a package that aims for stable behaviour, there's going to have no way to do version control on the dependency. It can be a bad design in Python and cause a lot version conflicts, unless the developer handles all the version control inside the code at runtime, which is too evil.
IIUC, currently as a result, it conflicts with the interface of This is also the point of multiple dispatch and generic function: a safer way to write runtime overloaded interfaces. |
The first thing I'd do is to try to move whatever is missing in the parse part to |
Currently, configuration (Comonicon.toml) is not loaded if it is not used for a Package. This needs to be changed if target is in the configuration. Is it going to call |
I just realize we probably want to wait for 1.6's new stdlib Preferences.jl (JuliaLang/julia#37595) so that the user can choose whether to use GUI or CLI or both as an external switch for the codegen/build function instead of doing a workaround ourselves. This configuration is likely configured only be the user and as developers, we actually won't be able to know what to install unless things are built into standalone applications. |
I am studying how Pluto works and try making a web-based GUI target. During this, I will try exploring how different GUI targets coexist. |
Add a switch so that Comonicon can generate targeting CLI or GUI.
The text was updated successfully, but these errors were encountered: