Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
The version lives in `versionName` in `android/app/build.gradle` (`v2`) and in
`app/build.gradle` (`basic`). Builds are published only as the
[`latest`](https://github.com/OpenIPC/decoder/releases/tag/latest) release, which holds the
newest `v2` and `basic` builds, and in the OpenIPC Telegram channel; there are no releases
newest `v2` and `basic` builds; each new `v2` version also goes to the OpenIPC Telegram channel as its APK. There are no releases
per version (#194). Since #229 the release is titled `Decoder <v2 version>`, its tag is on the
built `v2` commit, its notes give each branch's version and commit, `SHA256SUMS` covers all its
files, and the Telegram channel gets each new version rather than every build. This file is the change history: one section per `v2` version, newest
built `v2` commit, its notes give each branch's version and commit, and the Telegram channel gets the APK of each new `v2` version rather than every build. This file is the change history: one section per `v2` version, newest
first, then the legacy `basic` line.

Versions after 2.17 are `MAJOR.MINOR.PATCH` (2.17 is followed by 2.17.1 or 2.18.0; see
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ Ready-to-install builds are in the one release, [**latest**](https://github.com/
| `decoder-v2.apk` | **Current version**, recommended | <https://github.com/OpenIPC/decoder/releases/latest/download/decoder-v2.apk> |
| `decoder.apk` | Legacy version from the `basic` branch | <https://github.com/OpenIPC/decoder/releases/latest/download/decoder.apk> |

Every build is replaced in `latest` by the next one. Development is continuous, so there are no releases per version; every new `v2` and `basic` version is also posted with its commit to the OpenIPC Telegram channel ([our channels](https://openipc.org/our-channels)).
Every build is replaced in `latest` by the next one. Development is continuous, so there are no releases per version; every new `v2` version is also posted as its APK, with the commit, to the OpenIPC Telegram channel ([our channels](https://openipc.org/our-channels)).

The change history of every version is in [CHANGELOG.md](CHANGELOG.md).

Expand Down
2 changes: 1 addition & 1 deletion README.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
| `decoder-v2.apk` | **Текущая версия**, рекомендуется | <https://github.com/OpenIPC/decoder/releases/latest/download/decoder-v2.apk> |
| `decoder.apk` | Старая версия из ветки `basic` | <https://github.com/OpenIPC/decoder/releases/latest/download/decoder.apk> |

Каждая новая сборка заменяет предыдущую в `latest`. Разработка идёт непрерывно, поэтому отдельных релизов по версиям нет; каждая новая версия веток `v2` и `basic` с коммитом публикуется в Telegram-канале OpenIPC ([наши каналы](https://openipc.org/our-channels)).
Каждая новая сборка заменяет предыдущую в `latest`. Разработка идёт непрерывно, поэтому отдельных релизов по версиям нет; каждая новая версия ветки `v2` с коммитом публикуется файлом APK в Telegram-канале OpenIPC ([наши каналы](https://openipc.org/our-channels)).

История изменений по версиям — в [CHANGELOG.md](CHANGELOG.md).

Expand Down
2 changes: 1 addition & 1 deletion README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
| `decoder-v2.apk` | **当前版本**,推荐使用 | <https://github.com/OpenIPC/decoder/releases/latest/download/decoder-v2.apk> |
| `decoder.apk` | `basic` 分支的旧版本 | <https://github.com/OpenIPC/decoder/releases/latest/download/decoder.apk> |

每次新构建都会替换 `latest` 中的上一个构建。开发是持续进行的,因此不再按版本单独发布;`v2` 和 `basic` 分支的每个新版本连同提交都会发布到 OpenIPC 的 Telegram 频道([我们的频道](https://openipc.org/our-channels))。
每次新构建都会替换 `latest` 中的上一个构建。开发是持续进行的,因此不再按版本单独发布;`v2` 分支的每个新版本都会以 APK 文件连同提交发布到 OpenIPC 的 Telegram 频道([我们的频道](https://openipc.org/our-channels))。

各版本的变更记录见 [CHANGELOG.md](CHANGELOG.md)。

Expand Down
12 changes: 6 additions & 6 deletions docs/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ Base pull requests on `v2`.

What a `build` run publishes:

| Branch | Output |
|-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `v2` | `decoder-v2.apk` and `decoder-v2-mapping.txt` in the [`latest`](https://github.com/OpenIPC/decoder/releases/tag/latest) release (replaced by every build); a message with the APK, version and commit to the OpenIPC Telegram channel |
| `basic` | `decoder.apk` and its mapping in `latest`; Telegram |
| any other | workflow artifacts `decoder-<branch, / → ->` (APK) and `…-mapping` on the run page |
| Branch | Output |
|-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `v2` | `decoder-v2.apk` and `decoder-v2-mapping.txt` in the [`latest`](https://github.com/OpenIPC/decoder/releases/tag/latest) release (replaced by every build); the APK with its version and commit to the OpenIPC Telegram channel (new versions only) |
| `basic` | `decoder.apk` in `latest`; nothing to Telegram |
| any other | workflow artifacts `decoder-<branch, / → ->` (APK) and `…-mapping` on the run page |

Every run, `v2` and `basic` included, also keeps its mapping as the artifact `…-mapping`. Artifacts expire after 90 days.

Expand All @@ -50,7 +50,7 @@ CI is the reference: the project does not depend on local builds.
- Versions are **`MAJOR.MINOR.PATCH`** (`versionName` in `android/app/build.gradle`): PATCH for fixes and small changes, MINOR for a new feature, MAJOR for an incompatible change or a large update, only when the maintainer decides. Every pull request that changes the app or its build (`android/`, except the unit tests and Markdown files, and `.github/workflows/build.yml`, which holds build steps) bumps the version as its last commit before the merge: `versionName` by that rule and `versionCode` +1. Docs-only and test-only pull requests do not. A pull request that changes the app or the build but not the APKs (a test or publication step in the workflow, a comment) takes the `no-release` label instead and keeps the version. Numbers are not reserved for open pull requests: each one takes the next number when it is merged. CI checks this on every pull request (`.github/check-version.sh`): a new number must be canonical (no leading zeros), greater than the base one, and come with its own `CHANGELOG.md` section.
- Until 2.17 `v2` counted **2.xx** (+0.01 per pull request); 2.17 is followed by 2.17.1 or 2.18.0. `basic` keeps its 1.7.x line (1.07.1 is 1.7.1).
- **`CHANGELOG.md`** is the change history: the version bump commit of a pull request that changes the app adds the version's section (`## <version> — <date>`, newest first) in the same pull request.
- Development is continuous, so there is **no release per version** (#194). The one release, [`latest`](https://github.com/OpenIPC/decoder/releases/latest), holds the newest `v2` and `basic` builds and is updated in place by both (`.github/publish-latest.sh`, #229): each branch replaces only its own files; a `v2` build moves the `latest` tag to the commit it built and sets the title `Decoder <version>`; the notes have one line per branch with its version and commit. Every **new version** (not every build) of `v2` and `basic` is posted to the OpenIPC Telegram channel, where the older builds can be found. Builds of other branches are only workflow artifacts of their runs (90 days).
- Development is continuous, so there is **no release per version** (#194). The one release, [`latest`](https://github.com/OpenIPC/decoder/releases/latest), holds the newest `v2` and `basic` builds and is updated in place by both (`.github/publish-latest.sh`, #229): each branch replaces only its own files; a `v2` build moves the `latest` tag to the commit it built and sets the title `Decoder <version>`; the notes have one line per branch with its version and commit. The APK of every **new `v2` version** (not every build) is posted to the OpenIPC Telegram channel, where the older builds can be found; `basic` posts nothing there. Builds of other branches are only workflow artifacts of their runs (90 days).
- **Test pre-releases**: to let a reporter test a branch, a pre-release named after the issue is made by hand from the branch's CI artifact (never from a local build), e.g. [`toys-187-test2`](https://github.com/OpenIPC/decoder/releases/tag/toys-187-test2) for #187. It is deleted when the test is over, or replaced by the next one.

```sh
Expand Down
Loading