be5invis / Iosevka

Versatile typeface for code, from code.
http://be5invis.github.io/Iosevka
SIL Open Font License 1.1
18.94k stars 569 forks source link

Add a way to update private build plans from previous versions #2325

Closed lynzrand closed 1 month ago

lynzrand commented 3 months ago

Is your feature request related to a problem? Please describe.

I have been maintaining a number of Iosevka variants used in my coding and design environments. I update my local repo to catch up with the official one once every few months, and at every rebuild there would be some compilation errors related to using legacy variant names, etc. in the build plan.

The fixing process is somewhat time-consuming, requiring either digging into the changelog (and scanning through the variant lists) to find what variant names have changed, or recompiling multiple times to reveal which variant names are no longer used. This often takes more time than running the compilation itself.

Describe the solution you'd like

Ideally, I would like a script that reads private-build-plans.toml and the corresponding version, and does simple updates (e.g. change legacy variant names into new ones) automatically or interactively. Integration with Iosevka Customizer might also be considered.

A more simple solution might be a machine-readable log containing (breaking) changes that a machine could resolve, and how to apply them to the build plan. I can write the script myself :)

Describe alternatives you've considered

A breaking-change-only changelog should also make the update process easier.

Anyway, if things won't change, I can always go and dig into the raw changelog files like before :)

be5invis commented 3 months ago

Need something to check against the old variant atlas vs the new. Maybe we could compare the description since they are mostly not changed...

lynzrand commented 3 months ago

Maybe we can start with a "check" script, that only verifies the build plan against the current variant atlas and reports errors it found? The rest of the fixing can be done by hand

github-actions[bot] commented 1 month ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 15 days.