| 1 |
# Changelog |
| 2 |
|
| 3 |
OxygenHub runs at https://oxygenhub.io; each deploy's build is on the About page and at `/api/v1/version`. |
| 4 |
|
| 5 |
## Unreleased |
| 6 |
|
| 7 |
- **Device sign-in (#67).** An app gets a token without a pasted secret. It asks `/api/v1/device/code` for a code and shows it; you approve the code at `/device`, signed in with your second factor, choosing what the app may do; its next poll gets the token. `oh auth login` signs in this way; `--token` still takes a token. |
| 8 |
- **Review requests (#68).** The author or a writer asks someone to review under Reviewers on the proposal page, or with `POST .../proposals/{number}/reviewers`. The person asked is notified, and their review answers the request. Every review now tells the author. |
| 9 |
- **Runner scopes (#41, part 2).** A runner serves the whole site, one owner's repositories, or one repository, set when its registration token is made or later on Admin → Runners. It never takes another scope's jobs. |
| 10 |
- **Flow says which subrepos a job lacks (#56).** A job's log starts with each pinned subrepo it was not given (the run's actor cannot read it, or it is not on this hub) instead of failing later on missing files. |
| 11 |
|
| 12 |
## 0.1.0 (2026-09-30) |
| 13 |
|
| 14 |
- **`oh` for Linux, macOS and Windows.** The first downloadable builds of `oh`, OxygenHub from the command line, beside Oxygen's own 0.1.0. A prerelease. |
| 15 |
- **The hub moved to oxygenhub.io,** serving on localhost behind the tunnel. |
| 16 |
- **Proposals** take `feature/…` bookmarks, record who landed them and how, and say how to resolve a conflict. Organisation repositories with two or more members require one sealed approval by default. |
| 17 |
- **A Code button** with the clone command and a zip download. |
| 18 |
- **Release assets** up to the configured limit through the API. |