From 3c726457ebab3b77428c059be10cd5f40d9df6b7 Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Wed, 10 Sep 2025 15:59:57 -0500 Subject: [PATCH] repo(release): merge changes from 2.7.0 to main (#3070) Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com> Co-authored-by: DaneEvans --- .github/workflows/release.yml | 9 ++- app/build.gradle.kts | 70 ++++++++--------- .../main/java/com/geeksville/mesh/ui/Main.kt | 2 +- .../com/geeksville/mesh/util/LanguageUtils.kt | 4 +- app/src/main/res/xml/locales_config.xml | 76 ++++++++++--------- buildSrc/src/main/kotlin/Configs.kt | 2 +- 6 files changed, 84 insertions(+), 79 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 44bfb4dc8..2af132fc6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -230,10 +230,11 @@ jobs: name: Release ${{ github.ref_name }} generate_release_notes: true files: | - ./google/bundle/app-google-release.aab - ./google/apk/app-google-release.apk - ./fdroid/app-fdroid-release.apk - draft: false + ./build-artifacts/google/bundle/app-google-release.aab + ./build-artifacts/google/apk/app-google-release.apk + ./build-artifacts/fdroid/app-fdroid-release.apk + ./version_info.txt + draft: ${{ contains(github.ref_name, '-internal') }} prerelease: ${{ contains(github.ref_name, '-internal') || contains(github.ref_name, '-closed') || contains(github.ref_name, '-open') }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 68261f72a..98628ef53 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -8,7 +8,7 @@ * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * MERCHANTABILITY or FITNESS FOR a PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License @@ -86,43 +86,45 @@ android { @Suppress("UnstableApiUsage") androidResources.localeFilters.addAll( listOf( - "bg", - "ca", - "cs", - "de", - "el", "en", - "es", - "et", - "fi", - "fr", - "fr-rHT", - "ga", - "gl", - "hr", - "hu", - "is", - "it", - "iw", - "ja", - "ko", - "lt", - "nl", - "nb", - "pl", - "pt", + "ar-rSA", + "b+sr+Latn", + "bg-rBG", + "ca-rES", + "cs-rCZ", + "de-rDE", + "el-rGR", + "es-rES", + "et-rEE", + "fi-rFI", + "fr-rFR", + "ga-rIE", + "gl-rES", + "hr-rHR", + "ht-rHT", + "hu-rHU", + "is-rIS", + "it-rIT", + "iw-rIL", + "ja-rJP", + "ko-rKR", + "lt-rLT", + "nl-rNL", + "no-rNO", + "pl-rPL", "pt-rBR", - "ro", - "ru", - "sk", - "sl", - "sq", - "sr", - "sv", - "tr", + "pt-rPT", + "ro-rRO", + "ru-rRU", + "sk-rSK", + "sl-rSI", + "sq-rAL", + "srp", + "sv-rSE", + "tr-rTR", + "uk-rUA", "zh-rCN", "zh-rTW", - "uk", ), ) ndk { abiFilters += listOf("armeabi-v7a", "arm64-v8a", "x86", "x86_64") } diff --git a/app/src/main/java/com/geeksville/mesh/ui/Main.kt b/app/src/main/java/com/geeksville/mesh/ui/Main.kt index 3e8e0f0e8..1b246ed68 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/Main.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/Main.kt @@ -420,7 +420,7 @@ private fun VersionChecks(viewModel: UIViewModel) { LaunchedEffect(connectionState, myNodeInfo) { if (connectionState == ConnectionState.CONNECTED) { myNodeInfo?.let { info -> - val isOld = info.minAppVersion > BuildConfig.VERSION_CODE + val isOld = info.minAppVersion > BuildConfig.VERSION_CODE && BuildConfig.DEBUG.not() if (isOld) { viewModel.showAlert( context.getString(R.string.app_too_old), diff --git a/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt b/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt index 4aeb1af74..bdd9ddb7d 100644 --- a/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt +++ b/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt @@ -57,7 +57,7 @@ object LanguageUtils : Logging { context.resources.getXml(R.xml.locales_config).use { while (it.eventType != XmlPullParser.END_DOCUMENT) { if (it.eventType == XmlPullParser.START_TAG && it.name == "locale") { - languageTags += it.getAttributeValue(0) + it.getAttributeValue(0)?.let { tag -> languageTags += tag } } it.next() } @@ -66,7 +66,7 @@ object LanguageUtils : Logging { errormsg("Error parsing locale_config.xml ${e.message}") } return languageTags.associateBy { tag -> - val loc = Locale(tag) + val loc = Locale.forLanguageTag(tag) when (tag) { SYSTEM_DEFAULT -> context.getString(R.string.preferences_system_default) "fr-HT" -> context.getString(R.string.fr_HT) diff --git a/app/src/main/res/xml/locales_config.xml b/app/src/main/res/xml/locales_config.xml index bdeb05bf1..e64422093 100644 --- a/app/src/main/res/xml/locales_config.xml +++ b/app/src/main/res/xml/locales_config.xml @@ -1,40 +1,42 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/buildSrc/src/main/kotlin/Configs.kt b/buildSrc/src/main/kotlin/Configs.kt index 358819973..6ab790eed 100644 --- a/buildSrc/src/main/kotlin/Configs.kt +++ b/buildSrc/src/main/kotlin/Configs.kt @@ -33,7 +33,7 @@ object Configs { * to reflect the version number of the Git tag that will be created for that release. * @see [RELEASE_PROCESS.md] */ - const val VERSION_NAME_BASE = "2.6.35" + const val VERSION_NAME_BASE = "2.7.0" const val MIN_FW_VERSION = "2.5.14" // Minimum device firmware version supported by this app const val ABS_MIN_FW_VERSION = "2.3.15" // Minimum device firmware version supported by this app }