taiki-e / install-action

GitHub Action for installing development tools (mainly from GitHub Releases).
Apache License 2.0
257 stars 32 forks source link

Generate Markdown table of tools #473

Closed jayvdb closed 3 months ago

jayvdb commented 4 months ago

Closes https://github.com/taiki-e/install-action/issues/440

This is still a bit of a mess, and the new logic is in the wrong spot - it is currently designed to easily update the existing manifests rather than supporting creating new manifests.

Key question atm is whether it is OK to add new fields website & license_markdown to both the base info and manifest structs.

Another is whether it is OK to create a lib.rs ? I moved everything to the lib.rs , but would be happy to move the unmodified parts back to main.rs to reduce the size of the change.

taiki-e commented 4 months ago

Thanks!

Key question atm is whether it is OK to add new fields website & license_markdown to both the base info and manifest structs.

I'm okay with adding those as those are small enough information.

Another is whether it is OK to create a lib.rs ? I moved everything to the lib.rs , but would be happy to move the unmodified parts back to main.rs to reduce the size of the change.

I'm okay with either.

jayvdb commented 4 months ago

Great.

Next two questions:

  1. Is it ok to generate as TOOLS.md , and link to it from README.md? IMO the list is already getting long. I dont mind merging it into the README.md . It is only a bit more work to do that.

  2. Should the markdown generator be a separate tool , or run at the end of the existing main.rs ?

taiki-e commented 4 months ago

Is it ok to generate as TOOLS.md , and link to it from README.md? IMO the list is already getting long. I dont mind merging it into the README.md . It is only a bit more work to do that.

The current list is indeed long, so splitting it into separate files is okay.

Should the markdown generator be a separate tool , or run at the end of the existing main.rs ?

I think the latter is better at this time because it eliminates the need for changes to the CI script.

jayvdb commented 4 months ago

IIUC, the CI loops over each tool, in which case putting the markdown generation in the main.rs will mean it does that step many times - once per tool, instead of only once at the end. Anyways, I'll put it in main.rs, but put the logic in lib.rs, so it can become a separate bin later.

taiki-e commented 4 months ago

IIUC, the CI loops over each tool, in which case putting the markdown generation in the main.rs will mean it does that step many times - once per tool, instead of only once at the end.

Oh, you are right. That is indeed inefficient and would be better to separate them.