Open
Description
A concern of the current approach (if I'm understanding it correctly) in #796 is that it relies on the programmer's diligence to rev the filename whenever they modify the formula.
I would suggest either:
- Using a SHA of the build formula file so if anything is changed (even if it doesn't affect the final outcome) will generate a different version. The upside is that there's a single point of truth (DRY SPOT) for changes. The downside is that it would require changes with how the "latest" version is picked (from the docs, currently it's the highest number). I chose to do something vaguely like this in Generate Inventory & Sha7 appended filenames for binaries docker-heroku-ruby-builder#51.
Or alternatively
- Adding a CI task like the
skip-changelog
check that checks if a file is modified without being renamed. This allows a developer to still "skip" the failing check if modifications shouldn't affect the outcome, but would help prevent careless errors. This would be much easier, but also prone to human errors. Perhaps they make one modification that's okay and flag the PR "No Modified Build Formulae," but then, due to feedback, they end up making a breaking/changing modification, and everyone forgets to un-check the box.
Timing and priority-wise, it's not urgent (it would not have been a blocker), but I think it is important that we guard/guide maintainers/contributors towards doing the right thing. Implementation-wise, I would lean towards simpler being better.
Metadata
Metadata
Assignees
Labels
No labels