release stuff

This commit is contained in:
EthanShoeDev
2025-10-04 22:48:12 -04:00
parent ae397d4756
commit 349a7575d7
4 changed files with 45 additions and 2 deletions

View File

@@ -0,0 +1,23 @@
{
"npm": false,
"git": {
"requireCleanWorkingDir": true,
"commitMessage": "chore(release): v${version}",
"tagName": "v${version}",
"push": true
},
"github": {
"release": true,
"assets": ["android/app/build/outputs/apk/release/app-release.apk"]
},
"plugins": {
"@release-it/conventional-changelog": {
"preset": "conventionalcommits",
"infile": "CHANGELOG.md"
}
},
"hooks": {
"before:init": ["pnpm run lint:check", "pnpm run typecheck"],
"before:github:release": "pnpm run build:signed:apk"
}
}

View File

@@ -2,6 +2,14 @@ import { type ExpoConfig } from 'expo/config';
import 'tsx/cjs';
import packageJson from './package.json';
function semverToCode(v: string) {
const [maj, min, pat] = v.split('.').map((n) => parseInt(n || '0', 10));
if (maj === undefined || min === undefined || pat === undefined)
throw new Error(`Invalid version: ${v}`);
return maj * 10000 + min * 100 + pat;
}
const versionCode = semverToCode(packageJson.version);
const config: ExpoConfig = {
name: 'Fressh',
slug: 'fressh',
@@ -15,9 +23,11 @@ const config: ExpoConfig = {
supportsTablet: true,
config: { usesNonExemptEncryption: false },
bundleIdentifier: 'dev.fressh.app',
buildNumber: String(versionCode),
},
android: {
package: 'dev.fressh.app',
versionCode,
adaptiveIcon: {
foregroundImage: '../../packages/assets/adaptive-icon.png',
backgroundColor: '#151718',

View File

@@ -23,7 +23,9 @@
"expo:dep:check": "expo install --fix",
"expo:doctor": "pnpm dlx expo-doctor@latest",
"test:e2e": "maestro test test/e2e/",
"adb:logs": "while ! adb logcat --pid=$(adb shell pidof -s dev.fressh.app); do sleep 1; done"
"adb:logs": "while ! adb logcat --pid=$(adb shell pidof -s dev.fressh.app); do sleep 1; done",
"release": "release-it",
"release:dry": "release-it --dry-run"
},
"dependencies": {
"@expo/vector-icons": "^15.0.2",
@@ -77,6 +79,7 @@
"@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
"@eslint-react/eslint-plugin": "^1.53.0",
"@eslint/js": "^9.35.0",
"@release-it/conventional-changelog": "^10.0.1",
"@tanstack/eslint-plugin-query": "^5.86.0",
"@types/react": "~19.1.12",
"@typescript-eslint/parser": "^8.44.0",
@@ -93,6 +96,7 @@
"npm-run-all": "^4.1.5",
"prettier": "^3.6.2",
"prettier-plugin-organize-imports": "^4.2.0",
"release-it": "^19.0.4",
"tsx": "^4.20.5",
"typescript": "~5.9.2",
"typescript-eslint": "^8.44.0"