Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge 23.6 code freeze #21911

Merged
merged 19 commits into from
Oct 31, 2023
Merged

Merge 23.6 code freeze #21911

merged 19 commits into from
Oct 31, 2023

Conversation

mokagio
Copy link
Contributor

@mokagio mokagio commented Oct 30, 2023

A bit of extra work to get this one out the door, between the WordPressKit 8.9.1 patch wordpress-mobile/WordPressKit-iOS#639 and a few adjustment to the lanes after recent updates. Refer to individual commits comments.

Release checks

  • Update internal Pods to stable version
  • New version header in RELEASE-NOTE.txt
  • Localizable.strings updated
  • release_notes.txt updated with notes from RELEASE-NOTE.txt for current version
  • Version update in .xcconfig

The release toolkit code depends on an environment variable that is no
longer present.

See
https://github.com/wordpress-mobile/release-toolkit/blob/32e419afa781cf86ca70276f4386671b7fac0784/lib/fastlane/plugin/wpmreleasetoolkit/helper/ios/ios_git_helper.rb#L14-L18
and b1d4142 which removed the env var.

Good riddance. Using a first-party library to DRY the way we commit
version files might have been taking DRY on the wrong direction
Otherwise, `git commit -m`, which Fastlane uses under the hood, would
fail.
Fastlane can do that for us under the hood.
Most of the time, the release/public and internal versions
(`VERSION_LONG`) values are the same. But that's not guaranteed to be
the same. Case in point, during code freeze they are momentarily out of
sync. If we use the public file to read the internal version during code
freeze, we'll end up with the build code set for the following version.

Notice the difference between the internal build code in the header and
the one that's written on disk (last line):

```
[19:13:18]: Cruising back to lane 'ios code_freeze' 🚘
[19:13:18]:       Code Freeze:
      • New release branch from trunk: release/23.6

      • Current release version and build code: 23.5 (23.5.0.3).
      • New release version and build code: 23.6 (23.6.0.0).

      • Current internal release version and build code: 23.5 (23.5.0.20231027)
      • New internal release version and build code: 23.6 (23.6.0.20231030)

[19:13:18]: Do you want to continue? (y/n)
y
[19:13:18]: Creating release branch...
[19:13:18]: $ git branch --list release/23.6
[19:13:19]: $ git checkout trunk
[19:13:19]: ▸ Already on 'trunk'
[19:13:19]: ▸ Your branch is ahead of 'origin/trunk' by 5 commits.
[19:13:19]: ▸ (use "git push" to publish your local commits)
[19:13:19]: $ git checkout -b release/23.6
[19:13:19]: ▸ Switched to a new branch 'release/23.6'
[19:13:19]: ------------------------
[19:13:19]: --- Step: git_branch ---
[19:13:19]: ------------------------
[19:13:19]: Done! New release branch is: release/23.6
[19:13:19]: Bumping release version and build code...
[19:13:19]: Done! New Release Version: 23.6. New Build Code: 23.6.0.0
[19:13:19]: Bumping internal release version and build code...
[19:13:19]: Done! New Internal Release Version: 23.6. New Internal Build Code: 23.7.0.20231030
```
`false` is the desired default value for the `bypass` parameter.

I noticed this when I replied no to the prompt but it did not abort as I
expected. See how the lane moved to `setbranchprotection` even though
the input was `n`

```
[19:13:19]: Ready to push changes to remote to let the automation configure it on GitHub? (y/n)
n
[19:14:13]: Aborting code completion. See you later.
[19:14:13]: ---------------------------------
[19:14:13]: --- Step: setbranchprotection ---
[19:14:13]: ---------------------------------
==========================================
This action (setbranchprotection) is deprecated
```

However, `false` vs `nil` is not the cause of the defective behavior.
That is due to the branch that's meant to abort only printing a message
about it and not calling `next`.
@@ -101,7 +101,7 @@ class ReaderPostCardCell: UITableViewCell {
static let likeButtonHint = NSLocalizedString("reader.post.button.like.accessibility.hint",
value: "Likes the post.",
comment: "Accessibility hint for the like button on the reader post card cell")
static let likedButtonHint = NSLocalizedString("reader.post.button.like.accessibility.hint",
static let likedButtonHint = NSLocalizedString("reader.post.button.liked.accessibility.hint",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Love that our tooling picks these up :)

Next step, fail the build in the PR that introduced them. wordpress-mobile/release-toolkit#446

Comment on lines +467 to +473
def commit_version_bump
git_commit(
path: [PUBLIC_CONFIG_FILE, INTERNAL_CONFIG_FILE],
message: 'Bump version number',
allow_nothing_to_commit: false
)
end
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mokagio mokagio requested a review from a team October 30, 2023 10:03
@mokagio mokagio added this to the 23.6 ❄️ milestone Oct 30, 2023
@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 30, 2023

WordPress Alpha📲 You can test the changes from this Pull Request in WordPress Alpha by scanning the QR code below to install the corresponding build.
App NameWordPress Alpha WordPress Alpha
ConfigurationRelease-Alpha
Build Numberpr21911-5737496
Version23.6
Bundle IDorg.wordpress.alpha
Commit5737496
App Center BuildWPiOS - One-Offs #7595
Automatticians: You can use our internal self-serve MC tool to give yourself access to App Center if needed.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 30, 2023

Jetpack Alpha📲 You can test the changes from this Pull Request in Jetpack Alpha by scanning the QR code below to install the corresponding build.
App NameJetpack Alpha Jetpack Alpha
ConfigurationRelease-Alpha
Build Numberpr21911-5737496
Version23.6
Bundle IDcom.jetpack.alpha
Commit5737496
App Center Buildjetpack-installable-builds #6618
Automatticians: You can use our internal self-serve MC tool to give yourself access to App Center if needed.

@peril-wordpress-mobile
Copy link

Warnings
⚠️ The AppStoreStrings.po file must be updated any time changes are made to release notes
Messages
📖 This PR has the 'Releases' label: some checks will be skipped.

Generated by 🚫 dangerJS

@derekblank derekblank self-requested a review October 31, 2023 03:29
Copy link
Contributor

@derekblank derekblank left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. 👍

@mokagio mokagio merged commit a14350a into trunk Oct 31, 2023
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants