Update publish release docs (#981)

This commit is contained in:
Leendert de Borst
2025-07-01 14:27:34 +02:00
committed by Leendert de Borst
parent 1ab736fd03
commit 7a5afcac9c
9 changed files with 76 additions and 29 deletions
@@ -1,6 +1,6 @@
---
layout: default
title: Create a new release
title: Publish new release
parent: Release
grand_parent: Miscellaneous
nav_order: 1
@@ -24,36 +24,19 @@ For bumping the version for all projects in one go, you can use the interactive
./scripts/bump_version.sh
```
Alternatively, you can do it manually by following these steps:
> If you prefer to update versions manually instead of using the interactive script, see the [Manual versioning](manual-versioning) page for detailed steps.
### Versioning client and server
- [ ] Update ./apps/server/Shared/AliasVault.Shared.Core/AppInfo.cs and update major/minor/patch to the new version. This version will be shown in the client and admin app footer. This version should be equal to the git release tag.
- [ ] Update ./apps/server/Shared/AliasVault.Shared.Core/AppInfo.cs with the minimum supported client versions.
- Only required if new API output breaks earlier client versions and/or this version of the client/API will upgrade the client vault model to a new major version.
- [ ] Update ./install.sh `@version` in header ONLY if the install script content has changed since the last release. This allows the install script to self-update when running the `./install.sh update` command on default installations.
### Versioning browser extensions
- [ ] Update `./apps/browser-extension/wxt.config.ts` with the new version for the extension. This will be shown in the browser extension web stores. This version should be equal to the git release tag.
- [ ] Update `./apps/browser-extension/safari-xcode/AliasVault/AliasVault.xcodeproj/project.pbxproj` and set the version in `MARKETING_VERSION` and increase the build number in `CURRENT_PROJECT_VERSION`. This is the version that will be shown in the Safari Browser Extension App Store.
- [ ] Update `./apps/browser-extension/src/utils/AppInfo.ts` with the new version for the extension. This version should be equal to the git release tag.
- [ ] Update `./apps/browser-extension/src/utils/AppInfo.ts` with the minimum supported server version (in case of required API breaking changes).
- [ ] Update `./apps/browser-extension/src/utils/AppInfo.ts` with the minimum supported client vault version (in case of required client vault model changes).
### Versioning mobile apps
- [ ] Update `./apps/mobile-app/app.json` with the new version for the mobile app. This version should be equal to the git release tag.
- [ ] Update `./apps/mobile-app/utils/AppInfo.ts` with the new version for the mobile app. This version should be equal to the git release tag.
- [ ] Update `./apps/mobile-app/utils/AppInfo.ts` with the minimum supported server version (in case of required API breaking changes).
- [ ] Update `./apps/mobile-app/utils/AppInfo.ts` with the minimum supported client vault version (in case of required client vault model changes).
- [ ] Update `./apps/mobile-app/ios/AliasVault.xcodeproj/project.pbxproj` and set the version in `MARKETING_VERSION` and increase the build number in `CURRENT_PROJECT_VERSION`. This is the version that will be shown in the iOS App Store.
- [ ] Update `./apps/mobile-app/android/app/build.gradle` and set the version in `versionName` and increase the build number in `versionCode`.
### Install script (docker images)
If docker containers have been added or removed:
- [ ] Verify that `.github/workflows/release.yml` contains references to all docker images that need to be published.
- [ ] Update `install.sh` and verify that the `images=()` array that takes care of pulling the images from the GitHub Container Registry is updated.
## Write changelogs
When a new version of the mobile apps and/or browser extensions is released, write changelogs and commit them to:
- iOS app: `./fastlane/metadata/ios/en-US/changelogs/[versionCode].txt`.
> Filename should equal the `versionCode` in build.gradle.
- Android app: `./fastlane/metadata/android/en-US/changelogs/[versionCode].txt`.
> Filename should equal the `versionCode` in build.gradle.
- Browser extensions: `./fastlane/metadata/browser-extension/en-US/changelogs/[semver].txt`.
> Filename should equal the semver of the release (e.g. `0.20.0`).
## Update documentation
- [ ] Update /docs instructions if any changes have been made to the setup process
- [ ] Update /docs instructions for any relevant changes to functionality or self-host installaton process
- [ ] Update README screenshots if applicable
- [ ] Update README current/upcoming features
@@ -98,4 +81,4 @@ The GitHub Actions workflow `Browser Extension Build` will build the browser ext
```bash
apps/mobile-ap/android/app/build/outputs/bundle/release
```
3. Take this file and upload it to the Google Play Console.
3. Take this file and upload it to the Google Play Console.
@@ -0,0 +1,37 @@
---
layout: default
title: Manual versioning
parent: Publish new release
grand_parent: Release
nav_order: 2
---
# Manual Versioning Steps
Alternatively, you can do it manually by following these steps:
## Versioning client and server
- [ ] Update ./apps/server/Shared/AliasVault.Shared.Core/AppInfo.cs and update major/minor/patch to the new version. This version will be shown in the client and admin app footer. This version should be equal to the git release tag.
- [ ] Update ./apps/server/Shared/AliasVault.Shared.Core/AppInfo.cs with the minimum supported client versions.
- Only required if new API output breaks earlier client versions and/or this version of the client/API will upgrade the client vault model to a new major version.
- [ ] Update ./install.sh `@version` in header ONLY if the install script content has changed since the last release. This allows the install script to self-update when running the `./install.sh update` command on default installations.
## Versioning browser extensions
- [ ] Update `./apps/browser-extension/wxt.config.ts` with the new version for the extension. This will be shown in the browser extension web stores. This version should be equal to the git release tag.
- [ ] Update `./apps/browser-extension/safari-xcode/AliasVault/AliasVault.xcodeproj/project.pbxproj` and set the version in `MARKETING_VERSION` and increase the build number in `CURRENT_PROJECT_VERSION`. This is the version that will be shown in the Safari Browser Extension App Store.
- [ ] Update `./apps/browser-extension/src/utils/AppInfo.ts` with the new version for the extension. This version should be equal to the git release tag.
- [ ] Update `./apps/browser-extension/src/utils/AppInfo.ts` with the minimum supported server version (in case of required API breaking changes).
- [ ] Update `./apps/browser-extension/src/utils/AppInfo.ts` with the minimum supported client vault version (in case of required client vault model changes).
## Versioning mobile apps
- [ ] Update `./apps/mobile-app/app.json` with the new version for the mobile app. This version should be equal to the git release tag.
- [ ] Update `./apps/mobile-app/utils/AppInfo.ts` with the new version for the mobile app. This version should be equal to the git release tag.
- [ ] Update `./apps/mobile-app/utils/AppInfo.ts` with the minimum supported server version (in case of required API breaking changes).
- [ ] Update `./apps/mobile-app/utils/AppInfo.ts` with the minimum supported client vault version (in case of required client vault model changes).
- [ ] Update `./apps/mobile-app/ios/AliasVault.xcodeproj/project.pbxproj` and set the version in `MARKETING_VERSION` and increase the build number in `CURRENT_PROJECT_VERSION`. This is the version that will be shown in the iOS App Store.
- [ ] Update `./apps/mobile-app/android/app/build.gradle` and set the version in `versionName` and increase the build number in `versionCode`.
## Install script (docker images)
If docker containers have been added or removed:
- [ ] Verify that `.github/workflows/release.yml` contains references to all docker images that need to be published.
- [ ] Update `install.sh` and verify that the `images=()` array that takes care of pulling the images from the GitHub Container Registry is updated.
+3
View File
@@ -0,0 +1,3 @@
# Android App Release Metadata
This folder contains release metadata for the Android application. It follows the standard Fastlane directory structure, which is also compatible with F-Droid.
@@ -0,0 +1,8 @@
# Browser Extensions Release Metadata
This folder contains release metadata specifically for the browser extensions.
> **Note:**
> The `fastlane` directory structure does not officially support browser extensions. However, since we already manage the release notes and app information for our iOS and Android apps here, keeping the browser extension release notes in the same location provides a unified overview.
>
> These notes are stored primarily for bookkeeping and historical reference.
@@ -0,0 +1,4 @@
- Full vault management: create, edit, delete credentials directly in the browser extension
- Improved popup behavior and dialogs
- Autofill fixes and UI tweaks
- Version display fix in settings
@@ -0,0 +1,3 @@
- Automatically open last visited page when re-opening the browser extension popup
- Move notes to the bottom of the credential details screen to match the edit screen
- Fixes issue where non-aliasvault emails could throw an error in the recent email display
+6
View File
@@ -0,0 +1,6 @@
# iOS App Release Metadata
This folder contains release metadata for the iOS application. It follows the standard Fastlane directory structure used by Deliver for managing App Store Connect submissions.
> **Note:**
> As of 2025-07-01, we are not yet using Fastlane to publish iOS app updates. However, we maintain the release notes in this format for bookkeeping and historical reference.
@@ -0,0 +1,3 @@
- Move notes to the bottom of the credential details screen to match the edit screen
- Fixes issue where non-aliasvault emails could throw an error in the recent email display
- Fixes issue in iOS autofill where the "view details" long press menu option didn't work