Skip to content

Commit

Permalink
Merge pull request #42 from Pocket/release-8.28.0
Browse files Browse the repository at this point in the history
Release 8.28.0
  • Loading branch information
marcin-kozinski authored Nov 12, 2024
2 parents befeabe + 1414c23 commit efe4dc2
Show file tree
Hide file tree
Showing 13 changed files with 48 additions and 157 deletions.
5 changes: 5 additions & 0 deletions .github/workflows/on-pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ on:
pull_request:
merge_group:

# Cancel in-progress/pending PR checks if a new commit is pushed to the branch.
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}
cancel-in-progress: true

jobs:
android-lint:
name: Android Lint
Expand Down
2 changes: 1 addition & 1 deletion Pocket/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ plugins {
}

val versionMajor = 8 // Max value of 200
val versionMinor = 27 // Max of two digits
val versionMinor = 28 // Max of two digits
val versionPatch = 0 // Max of two digits
val versionBuild = 0 // Max of three digits

Expand Down
15 changes: 8 additions & 7 deletions Pocket/merged_manifests/playUnsignedRelease/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
package="com.ideashower.readitlater.pro"
android:installLocation="auto"
android:targetSandboxVersion="2"
android:versionCode="82700000"
android:versionName="8.27.0.0" >
android:versionCode="82800000"
android:versionName="8.28.0.0" >

<uses-sdk
android:minSdkVersion="23"
Expand Down Expand Up @@ -656,6 +656,12 @@
<action android:name="androidx.work.diagnostics.REQUEST_DIAGNOSTICS" />
</intent-filter>
</receiver>

<service
android:name="androidx.room.MultiInstanceInvalidationService"
android:directBootAware="true"
android:exported="false" />

<receiver
android:name="com.braze.BrazeFlushPushDeliveryReceiver"
android:exported="false" >
Expand All @@ -680,11 +686,6 @@
android:name="androidx.window.sidecar"
android:required="false" />

<service
android:name="androidx.room.MultiInstanceInvalidationService"
android:directBootAware="true"
android:exported="false" />

<receiver
android:name="androidx.profileinstaller.ProfileInstallReceiver"
android:directBootAware="false"
Expand Down

This file was deleted.

86 changes: 0 additions & 86 deletions Pocket/src/main/java/com/pocket/sdk/util/PocketUrlUtil.java

This file was deleted.

31 changes: 0 additions & 31 deletions Pocket/src/test/java/com/pocket/sdk/util/PocketUrlUtilTest.kt

This file was deleted.

15 changes: 14 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ Use a set of Pocket-wide defaults. See [Pocket/renovate-config](https://github.c
for more details and documentation.
```json
{
"ignorePaths": ["buildSrc/**"]
"ignorePaths": ["buildSrc/src/main/kotlin/Deps.kt"]
}
```
Ignore our legacy dependency definitions in `buildSrc`, while we gradually migrate to version catalog.
Expand Down Expand Up @@ -103,6 +103,19 @@ to let a human decide before merging.
```
Tweak the default commit message a bit to cut a redundant word from already pretty long messages.

```json
{
"packageRules": [
{
"matchDepNames": ["plugin-*"],
"semanticCommitType": "chore"
}
]
}
```
Update semantic commit rules to account for our custom plugin definitions
(because of defining them in `buildSrc`).

### Sync Engine

We have a lot of documentation about the Sync Engine, but you kind of have to know where to look for it.
Expand Down
2 changes: 0 additions & 2 deletions bitrise.yml
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,6 @@ workflows:
git add .
git commit -m "chore(ci): prepare release [skip ci]"
git push origin $BITRISE_GIT_BRANCH
- cache-push: {}
publishAlphaToAppCenter:
steps:
- set-java-version@1:
Expand Down Expand Up @@ -187,4 +186,3 @@ workflows:
- deploy-to-bitrise-io@2:
inputs:
- notify_user_groups: none
- cache-push: {}
2 changes: 1 addition & 1 deletion buildSrc/src/main/kotlin/Configs.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension
import org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension

object AndroidConfigs {
const val CompileSdkVersion = 34
const val CompileSdkVersion = 35
const val MinSdkVersion = 23
const val TargetSdkVersion = 34
}
Expand Down
16 changes: 8 additions & 8 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[versions]
aboutlibraries = "11.2.3"
androidx-activity = "1.9.3"
androidx-fragment = "1.8.4"
androidx-fragment = "1.8.5"
androidx-navigation = "2.8.3"
appcenter = "5.0.5"
dagger = "2.52"
Expand All @@ -16,7 +16,7 @@ adjust = { module = "com.adjust.sdk:adjust-android", version = "4.38.5" }
androidx-activity = { module = "androidx.activity:activity-ktx", version.ref = "androidx-activity" }
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activity" }
androidx-browser = { module = "androidx.browser:browser", version = "1.8.0" }
androidx-compose-bom = { module = "androidx.compose:compose-bom", version = "2024.10.00" }
androidx-compose-bom = { module = "androidx.compose:compose-bom", version = "2024.10.01" }
androidx-compose-material3 = { module = "androidx.compose.material3:material3" }
androidx-compose-material3-adaptive = { module = "androidx.compose.material3.adaptive:adaptive" }
androidx-compose-runtime = { module = "androidx.compose.runtime:runtime" }
Expand All @@ -26,15 +26,15 @@ androidx-compose-ui-test = { module = "androidx.compose.ui:ui-test-junit4" }
androidx-compose-ui-test-manifest = { module = "androidx.compose.ui:ui-test-manifest" }
androidx-compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling" }
androidx-compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview" }
androidx-core = { module = "androidx.core:core-ktx", version = "1.13.1" }
androidx-core = { module = "androidx.core:core-ktx", version = "1.15.0" }
androidx-fragment = { module = "androidx.fragment:fragment-ktx", version.ref = "androidx-fragment" }
androidx-fragment-compose = { module = "androidx.fragment:fragment-compose", version.ref = "androidx-fragment" }
androidx-media = { module = "androidx.media:media", version = "1.7.0" }
androidx-navigation-fragment = { module = "androidx.navigation:navigation-fragment-ktx", version.ref = "androidx-navigation" }
androidx-work = { module = "androidx.work:work-runtime", version = "2.9.1" }
androidx-work = { module = "androidx.work:work-runtime", version = "2.10.0" }
appcenter-distribute = { module = "com.microsoft.appcenter:appcenter-distribute", version.ref = "appcenter" }
appcenter-distribute-play = { module = "com.microsoft.appcenter:appcenter-distribute-play", version.ref = "appcenter" }
braze = { module = "com.braze:android-sdk-ui", version = "33.0.0" }
braze = { module = "com.braze:android-sdk-ui", version = "33.1.0" }
google-play-billing = { module = "com.android.billingclient:billing-ktx", version = "7.1.1" }
dagger-hilt = { module = "com.google.dagger:hilt-android", version.ref = "dagger" }
dagger-hilt-compiler = { module = "com.google.dagger:hilt-compiler", version.ref = "dagger" }
Expand All @@ -54,16 +54,16 @@ okhttp-urlconnection = { module = "com.squareup.okhttp3:okhttp-urlconnection", v
okio = { module = "com.squareup.okio:okio", version.ref = "okio" }
okio-fakefilesystem = { module = "com.squareup.okio:okio-fakefilesystem", version.ref = "okio" }
plugin-aboutlibraries = { module = "com.mikepenz.aboutlibraries.plugin:aboutlibraries-plugin", version.ref = "aboutlibraries" }
plugin-android = { module = "com.android.tools.build:gradle", version = "8.7.1" }
plugin-android = { module = "com.android.tools.build:gradle", version = "8.7.2" }
plugin-androidx-navigation-safeargs = { module = "androidx.navigation:navigation-safe-args-gradle-plugin", version.ref = "androidx-navigation" }
plugin-dagger = { module = "com.google.dagger:hilt-android-gradle-plugin", version.ref = "dagger" }
plugin-kotlin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
plugin-kotlin-compose = { module = "org.jetbrains.kotlin:compose-compiler-gradle-plugin", version.ref = "kotlin" }
plugin-kotlin-serialization = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" }
plugin-licensee = { module = "app.cash.licensee:licensee-gradle-plugin", version = "1.12.0" }
plugin-sentry = { module = "io.sentry:sentry-android-gradle-plugin", version = "4.13.0" }
plugin-versions = { module = "com.github.ben-manes:gradle-versions-plugin", version = "0.39.0" }
r8 = { module = "com.android.tools:r8", version = "8.7.14" }
plugin-versions = { module = "com.github.ben-manes:gradle-versions-plugin", version = "0.51.0" }
r8 = { module = "com.android.tools:r8", version = "8.7.20" }
robolectric = { module = "org.robolectric:robolectric", version = "4.13" }
sentry = { module = "io.sentry:sentry-android" }
sentry-bom = { module = "io.sentry:sentry-bom", version = "7.16.0" }
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11-all.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
6 changes: 5 additions & 1 deletion renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"extends": [
"local>Pocket/renovate-config"
],
"ignorePaths": ["buildSrc/**"],
"ignorePaths": ["buildSrc/src/main/kotlin/Deps.kt"],
"ignorePresets": [":dependencyDashboardApproval"],
"packageRules": [
{
Expand All @@ -13,6 +13,10 @@
{
"matchManagers": ["gradle", "gradle-wrapper"],
"commitMessageTopic": "{{depName}}"
},
{
"matchDepNames": ["plugin-*"],
"semanticCommitType": "chore"
}
]
}
8 changes: 5 additions & 3 deletions scripts/release-pr.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## Prepare the release
* [ ] If modified sync engine schema, double check the usage file only contains the final new definitions.
* [ ] Prepare a pre-release in GitHub releases to generate a changelog.
* [ ] Use this link template, replacing `X.Y.Z` with release version (in 2 places): `https://github.com/Pocket/Android/releases/new?tag=X.Y.Z.0&target=release-X.Y.Z&prerelease=1`. (This will set some defaults, so you don't have to edit by hand.)
* [ ] Use this link template, replacing `X.Y.Z` with release version (in 2 places): `https://github.com/Pocket/pocket-android/releases/new?tag=X.Y.Z&target=release-X.Y.Z&prerelease=1`. (This will set some defaults, so you don't have to edit by hand.)
* [ ] Use the "Generate release notes" button to use an auto-generated changelog.
* [ ] Add a summary to the top of the changelog.
* **Don't publish just yet!**
Expand All @@ -15,21 +15,23 @@
## Release on Google Play
* [ ] Promote beta ([open testing](https://play.google.com/console/u/0/developers/5995605107085635372/app/4974611608118969152/tracks/open-testing)) to production.
* [ ] Always update the release notes, because we don't want to keep the beta copy. If there is no prepared, agreed upon copy to call out new features, copy standard "bug fixes and improvements" notes from a previous **production** release.
* [ ] Set rollout percentage (usually to 100%, in case of bigger/riskier releases to 10%, discuss with the team if you think it should be something else).
* [ ] Release a new beta by promoting the [internal test](https://play.google.com/console/u/0/developers/5995605107085635372/app/4974611608118969152/tracks/internal-testing) build to beta (open testing).
* [ ] Copy previous **beta** release notes.
* [ ] Check "Errors, warnings and messages". Google loves to put stuff in there that isn't really a problem, so there are "warnings" there we consistently ignore with each release. But, please, always check it to see if there isn't anything important this time.
* [ ] Check changes between this and previous APK. (New App Bundles > Details (→ to the right of the new APK) > Changes tab)
* [ ] Set rollout percentage to 100%.
* [ ] Go to [Publishing overview](https://play.google.com/console/u/0/developers/5995605107085635372/app/4974611608118969152/publishing) to send the changes for review.
* [ ] Check the current Managed publishing setting. Keep if **off** to release as soon as it's through the review (e.g. when sending to review on the day of the release). Turn it **on** if preparing the release a day ahead and you want to manually release next morning.

## After the release is live
* Production
* [ ] Post an update to #pocket-releases about the current rollout percentage.
* [ ] Add the release to [Confluence](https://mozilla-hub.atlassian.net/wiki/spaces/PE/pages/665878545/Changelog+Releases+Pocket).
* [ ] Create a PR of `beta` into `prod` using this [template](https://github.com/Pocket/Android/compare/prod...beta?quick_pull=1&title=X.Y.Z.0+Production&body=Updating+`prod`+to+match+the+newly+promoted+build.&labels=ignore-for-release). Merge it (**do not squash!**).
* [ ] Create a PR of `beta` into `prod` using this [template](https://github.com/Pocket/pocket-android/compare/prod...beta?quick_pull=1&title=X.Y.Z.0+Production&body=Updating+`prod`+to+match+the+newly+promoted+build.&labels=ignore-for-release). Merge it (**do not squash!**).
* Beta
* [ ] Edit the GitHub release, uncheck "Set as a pre-release", check "Set as the latest release".
* [ ] Merge the PR into `beta` (**do not squash!**).
* [ ] Merge this PR into `beta` (**do not squash!**).
* [ ] Create a PR of `beta` into `main`. (`beta` is protected, so we can't literally merge it, because it would delete it. Instead create a new branch from `beta`, merge `main` to resolve any conflicts and open a PR to merge this branch to `main`.)
* [ ] Add `ignore-for-release` label.
* [ ] Merge it (**do not squash!**).

0 comments on commit efe4dc2

Please sign in to comment.