Skip to content

chore(release): v9.20.0 RC - #14251

Closed
artsyit wants to merge 13 commits into
mainfrom
rc-v9.20.0
Closed

artsyit wants to merge 13 commits into
mainfrom
rc-v9.20.0

Conversation

@artsyit

@artsyit artsyit commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

Release Candidate 9.20.0

This branch was automatically created as the release candidate for version 9.20.0.

⚠️ Do not merge this PR. It is used for tracking the release and 🍒 cherry-picking fixes only.

Changelog

Cross-platform user-facing changes

Android user-facing changes

Dev changes

#nochangelog

@artsyit artsyit self-assigned this Oct 1, 2026
@github-actions

github-actions Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

🎉 Beta Versions Generated (commit: 1640a68)

Android 🤖

  • 9.19.0 (2026100112) - Available on Firebase
  • 9.19.0 (2026100112) - Available on Play Store

iOS 🍏

  • 9.19.0 (2026.10.01.12) - Available on Firebase

@MrSltun MrSltun changed the title chore: open release candidate 9.20.0 chore(release): v9.20.0 RC Oct 2, 2026
artsyit and others added 5 commits October 5, 2026 10:44
…n dark mode (#14255)

The itinerary picker sheet set its titles to a fixed black, so they vanished against the
dark sheet background. They now use mono100, which follows the theme like the sheet's
heading.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0137uZj691UaikQu3p1pfhed

Assisted-by: Claude:Opus-5.5 [claude-code]
Assisted-by: Codex

Co-authored-by: Codex <codex@openai.com>
@github-actions github-actions Bot deleted a comment from claude Bot Oct 5, 2026
renovate Bot added 2 commits October 5, 2026 11:40
)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
#14261)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@github-actions github-actions Bot deleted a comment from claude Bot Oct 5, 2026
@artsyit

artsyit commented Oct 5, 2026 •

Copy link
Copy Markdown
Collaborator Author
Warnings
⚠️

✅ No changelog changes

Generated by 🚫 dangerJS against 87e0adb

@github-actions

github-actions Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

🎉 Beta Versions Generated (commit: a137338)

Android 🤖

  • 9.20.0 (2026100510) - Available on Firebase
  • 9.20.0 (2026100510) - Available on Play Store

iOS 🍏

  • 9.20.0 (2026.10.05.10) - Available on Firebase
  • 9.20.0 (2026.10.05.10) - Available on TestFlight

…age viewer crash (#14264)

react-native-reanimated-zoom (unmaintained since 2022) captures a
Gesture.Native() in a worklet closure, which react-native-worklets 0.10
refuses to copy: "Cannot copy value of type NativeGesture" when tapping
an artwork image on Android.

Switch the Android full-screen viewer to react-native-zoom-reanimated,
using its gallery mode to keep swiping between images while zoomed.
Also size pages from the modal's measured layout, since the edge-to-edge
modal is taller than Dimensions' window and left a gap at the bottom.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

🔒 NPM Audit Results

Vulnerabilities detected at severity critical or higher:

  • shell-quote >=1.8.4 <1.11.0
    • Severity: critical
    • ID: 1241332
    • Title: shell-quote: quote() command injection via a line terminator in a token after a { comment } token
    • URL: GHSA-pqg4-j6r4-53mv

@github-actions github-actions Bot deleted a comment from claude Bot Oct 6, 2026
@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

🎉 Beta Versions Generated (commit: 2550a50)

Android 🤖

  • 9.20.0 (2026100609) - Available on Firebase
  • 9.20.0 (2026100609) - Available on Play Store

iOS 🍏

  • 9.20.0 (2026.10.06.09) - Available on Firebase
  • 9.20.0 (2026.10.06.09) - Available on TestFlight

build(deps): bump proxy-addr to fix critical severity
@github-actions github-actions Bot deleted a comment from claude Bot Oct 6, 2026
Assisted-by: Codex

Co-authored-by: Codex <codex@openai.com>
@github-actions github-actions Bot deleted a comment from claude Bot Oct 6, 2026
…#14285)

* feat: add the first itinerary stop image as fallback image

* feat: add skip when image is already present and replace relay mask by inline
@github-actions github-actions Bot deleted a comment from claude Bot Oct 7, 2026
@github-actions

github-actions Bot commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

🎉 Beta Versions Generated (commit: 411bfe8)

Android 🤖

  • 9.20.0 (2026100711) - Available on Firebase
  • 9.20.0 (2026100711) - Available on Play Store

iOS 🍏

  • 9.20.0 (2026.10.07.11) - Available on Firebase
  • 9.20.0 (2026.10.07.11) - Available on TestFlight

…ting an itinerary (#14291)

feat: enable network fetch to avoid a stale cache when creating an itinerary
@github-actions github-actions Bot deleted a comment from claude Bot Oct 7, 2026
@claude

claude Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

Code Review — RC v9.20.0

Summary

Auto-generated release candidate bundling already-merged, already-reviewed PRs for 9.20.0. Notable code changes: swap the Android full-screen image zoom library (react-native-reanimated-zoom → react-native-zoom-reanimated), rework FeaturedPillGlow to animate only transform (fixing a Fabric freeze), add a first-stop fallback cover for itineraries, gate the Artsy Lens tooltip to launch ≥ 3, and add card-group tracking on the Search discovery cards. This branch only tracks the release and cherry-picks fixes (per its own description, do not merge), so the review below is light.

Issues Found

No blocking issues. The substantive changes are well-structured, carry clear comments, and ship with tests (itinerary fallback image, Artsy Lens launch gating, discovery-card tracking).

Areas Reviewed

Performance — useItineraryFallbackImage fires one network-only query per coverless row
src/app/Scenes/CityGuide/hooks/useItineraryFallbackImage.ts:35 runs a per-row fetchQuery with fetchPolicy: "network-only". ItineraryListItem renders in both the CityItineraries list and CityGuideItinerariesRail, so a list of itineraries that each lack a cover issues N parallel network requests. The skip / stopsCount === 0 guards cut this down, and the comment explains the suspense-boundary tradeoff behind it, so this is a deliberate choice, not a bug. Flagging only so it stays a conscious one if coverless itineraries become common.

Bugs & edge cases — checked, looks correct

  • ImageZoomViewAndroid.tsx:55 now null-checks largeImageURL before FastImage.preload, and the imageIndex.current < images.length - 1 guard keeps + 1 in bounds.
  • ItineraryHeader.tsx fallback/blurhash/aspectRatio branching (isFallback = !localCover && !heroImage?.url && !!fallbackImage) stays consistent across the three sources.
  • itineraryFallbackImage picks the first stop only and returns null when it has no image, matching the tests and the documented "every surface agrees on one image" intent.

Questions for Author

  • FeaturedPillGlow cover uses color("mono0") to hide the comet center while the pill fades on press. Does this hold in dark mode where the pill background differs from mono0? (Can't verify without a device; the two prior city-guide glow/dark-mode fixes in this RC suggest it's been exercised.)

Since several changes here touch UI (pill glow, itinerary covers, discovery-card BETA badges, zoom viewer), confirm the individual source PRs included iOS + Android screenshots/recordings.

@github-actions

github-actions Bot commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

🎉 Beta Versions Generated (commit: 87e0adb)

Android 🤖

  • 9.20.0 (2026100716) - Available on Firebase
  • 9.20.0 (2026100716) - Available on Play Store

iOS 🍏

  • 9.20.0 (2026.10.07.16) - Available on TestFlight
  • 9.20.0 (2026.10.07.16) - Available on Firebase

@gkartalis gkartalis closed this Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants