chore(expo): bump clerk-android to 1.1.1 - #9422
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
🦋 Changeset detectedLatest commit: a017e2f The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
@clerk/astro
@clerk/backend
@clerk/chrome-extension
@clerk/clerk-js
@clerk/electron
@clerk/electron-passkeys
@clerk/eslint-plugin
@clerk/expo
@clerk/expo-google-signin
@clerk/expo-passkeys
@clerk/express
@clerk/fastify
@clerk/hono
@clerk/localizations
@clerk/nextjs
@clerk/nuxt
@clerk/react
@clerk/react-router
@clerk/shared
@clerk/tanstack-react-start
@clerk/testing
@clerk/ui
@clerk/upgrade
@clerk/vue
commit: |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
📝 WalkthroughWalkthroughThe PR updates the Clerk Android API and UI dependencies from Estimated code review effort: 1 (Trivial) | ~2 minutes Mergeability Score: 🟡 Moderate · up to The Expo native test-flow retry behavior can attempt to tap a selector that is no longer visible after navigation, causing the end-to-end flow to fail. This bounded correctness issue remains unresolved, so merge should wait for a fix or explicit owner acceptance. Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
API Changes Report
Summary
No API Changes DetectedAll packages have stable APIs with no detected changes. Report generated by Break Check Last ran on |
Retry the Manage account action until the account details screen appears so transient emulator taps do not fail the flow.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@integration/tests/expo-native/flows/embedded-profile-host-back.yaml`:
- Around line 42-49: Move extendedWaitUntil for EMAIL ADDRESSES|Add email
address outside the retry block, leaving only tapOn Manage account under retry
with maxRetries 3. Preserve the existing timeout and visibility condition.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Pro Plus
Run ID: 730f30bf-4bb0-4d76-a0bc-522c94d79607
📒 Files selected for processing (1)
integration/tests/expo-native/flows/embedded-profile-host-back.yaml
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
clerk/clerk_go(manual)clerk/dashboard(manual)clerk/accounts(manual)clerk/backoffice(manual)clerk/clerk(manual)clerk/clerk-docs(manual)clerk/cloudflare-workers(manual)
| - retry: | ||
| maxRetries: 3 | ||
| commands: | ||
| - tapOn: | ||
| text: 'Manage account' | ||
| - extendedWaitUntil: | ||
| visible: 'EMAIL ADDRESSES|Add email address' | ||
| timeout: 5000 |
There was a problem hiding this comment.
🩺 Stability & Availability | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -eu
printf '%s\n' '--- target file ---'
cat -n integration/tests/expo-native/flows/embedded-profile-host-back.yaml
printf '%s\n' '--- retry usage in Expo flows ---'
rg -n -C 4 'retry:|extendedWaitUntil:|Manage account' integration/tests/expo-native/flows integration/tests/expo-native || trueRepository: clerk/javascript
Length of output: 40781
🌐 Web query:
Maestro CLI retry command semantics retries complete commands block official documentation
💡 Result:
In the Maestro framework, the retry command is designed to handle intermittent or unpredictable behavior by executing a specific set of commands repeatedly until they succeed or the maximum number of attempts is reached [1]. Key semantics and usage details include: * Functionality: The retry command allows you to wrap a sequence of commands (or an external flow file) that may be prone to flakiness [1][2]. If any command within the block fails, Maestro attempts to rerun the entire block until success or the maxRetries limit is met [1][3]. * Parameters: * maxRetries: Specifies the number of times to retry the commands. The value defaults to 1 and is supported up to 3 [1]. * commands: A list of commands to be executed [1]. * file: Alternatively, you can specify a path to a YAML file containing the flow to be retried [1]. * Best Practices: The official documentation classifies wrapping large portions of a flow in a retry block as an anti-pattern, as it can mask genuine application flakiness [1]. It is recommended to use retry specifically for operations outside the application's control, such as unpredictable network latency or intermittent infrastructure issues [1][4]. * Behavior: If the commands succeed on any attempt, the test proceeds immediately to the next step [1]. If all retries are exhausted and the block still fails, the flow will fail [1][3]. Maestro may issue warning insights in the CLI logs when a retry occurs [2][3]. Note: Some external CLI tools or unrelated issue tracking systems may use different commands (e.g., maestro issue retry [5]), but for standard Maestro test flows, the retry YAML command described above is the official mechanism.
Citations:
- 1: https://docs.maestro.dev/reference/commands-available/retry
- 2: feat: add retry functionality mobile-dev-inc/Maestro#2168
- 3: Retry commands prints an error after success mobile-dev-inc/Maestro#2253
- 4: Implement retry strategy mobile-dev-inc/Maestro#1124
- 5: https://maestro.olhapi.com/docs/cli-reference
🏁 Script executed:
#!/bin/bash
set -eu
printf '%s\n' '--- relevant fixture strings and navigation handlers ---'
rg -n -C 5 'EMAIL ADDRESSES|Add email address|Manage account|open-embedded-profile-button|Edit profile' \
integration packages --glob '!**/node_modules/**' --glob '!**/dist/**' || true
printf '%s\n' '--- retry block shape ---'
python3 - <<'PY'
from pathlib import Path
p = Path("integration/tests/expo-native/flows/embedded-profile-host-back.yaml")
lines = p.read_text().splitlines()
for i, line in enumerate(lines):
if line.strip() == "- retry:":
block = lines[i:i+8]
print("\n".join(f"{i+j+1}: {v}" for j, v in enumerate(block)))
print("commands:", [v.strip() for v in block if v.strip().startswith("- ")])
PYRepository: clerk/javascript
Length of output: 50372
🏁 Script executed:
#!/bin/bash
set -eu
python3 - <<'PY'
from pathlib import Path
path = Path("integration/tests/expo-native/flows/embedded-profile-host-back.yaml")
lines = path.read_text().splitlines()
start = next(i for i, line in enumerate(lines) if line.strip() == "- retry:")
end = next(i for i in range(start + 1, len(lines)) if lines[i].startswith(" - tapOn: 'Back'"))
block = lines[start:end]
print(f"retry_start_line={start + 1}")
print(f"retry_end_line={end}")
print(f"contains_manage_account={any('Manage account' in line for line in block)}")
print(f"contains_destination_wait={any('extendedWaitUntil:' in line for line in block)}")
print(f"destination_wait_timeout={next(line.strip() for line in block if line.strip().startswith('timeout:'))}")
print(f"commands={[line.strip() for line in block if line.strip().startswith('- ')]}")
PYRepository: clerk/javascript
Length of output: 349
Keep the navigation wait outside the retry block.
If tapOn: 'Manage account' succeeds but the 5-second extendedWaitUntil times out, Maestro retries the complete block. Retry only tapOn, then wait for EMAIL ADDRESSES|Add email address separately.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@integration/tests/expo-native/flows/embedded-profile-host-back.yaml` around
lines 42 - 49, Move extendedWaitUntil for EMAIL ADDRESSES|Add email address
outside the retry block, leaving only tapOn Manage account under retry with
maxRetries 3. Preserve the existing timeout and visibility condition.
Source: MCP tools
Wait for the native profile layout and tap its clickable account row so Maestro does not queue duplicate navigation taps.
Description
Bumps the bundled
clerk-androidSDK in@clerk/expofrom1.1.0to1.1.1.Release: https://github.com/clerk/clerk-android/releases/tag/v1.1.1
Checklist
Type of change
Refactoring / dependency upgrade / documentation