You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add shvr update command and migrate oksh to data-driven versions
Introduces three helpers in shvr.sh:
- shvr_update [<shell>...]: dispatches to shvr_update_<shell>; shells
without an updater are skipped with a stderr notice.
- shvr_read_versions <shell> {current|all}: reads versions/<shell>.{current,all},
ignoring blank lines and # comments.
- shvr_merge_versions <shell>: unions existing + discovered, optionally
filters to one entry per series via shvr_series_<shell>, sorts -V -r -u,
and rewrites versions/<shell>.all atomically. Refuses to overwrite if
stdin is empty so a silent upstream failure can't wipe the data file.
Reports added/dropped/no-change to stderr.
Discovery strategies live in common/version_sources/. The first one,
github_releases.sh, uses git ls-remote --tags --refs (no GitHub API rate
limit) and warns to stderr + returns 1 on network failure or zero matches.
oksh is the first migrated shell: heredocs in shvr_current_oksh /
shvr_targets_oksh replaced with shvr_read_versions reads from
versions/oksh.{current,all}; shvr_update_oksh fetches from ibara/oksh and
shvr_series_oksh emits <major>.<minor> so superseded point releases (e.g.
6.7, 6.8) are dropped in favor of the patched final (6.7.1, 6.8.1).
0 commit comments