trunk
Upgrade wp-prettier to version 2.8.5 (#74775)
Automattic for Agencies: Update favicons for different devices & meta tags on all A4A environments (#89153)
Remove SCSS prelude feature for better performance - Take II (#111583)
Dev helpers: Use React 18 createRoot API (#98260)
TypeScript 5.6.2 (#101590)
AI Launchpad: integrate ExPlat launchpad-personalization variations (#112953)
Enable theming of components in Akismet logged out views (#100973)
Analytics: preserve explicit blog IDs in super props (#113389)
Environment badge dark mode (#110154)
Plugins: Remove legacy unused components (#60244)
Add dev toolbar helper to override Blackbox test collect keys. (#113335)
Lodash: replace camelCase/snakeCase/kebabCase with @automattic/js-utils (#111773)
Fix more jsdoc/tag-lines ESLint errors (#84148)
Education: restrict free-domain badge to bundled TLDs (.blog, .art) (#112125)
chore(deps): update linters (major) (#80830)
Replace lodash memoize with an @automattic/js-utils helper (#112200)
Checkout: convert lib/checkout/validation to TypeScript and remove dead validation API (#111725)
Agents Manager: Adopt the chat UI design polish and expand the header menu (#113276)
Lodash: replace includes() with native Array/String includes (#111860)
Framework: Refactor libs away from `chai` (#63751)
Fork page.js into calypso-router package, fix issues with deep call stacks (#84096)
Lib: forward-compatible React 19 changes (#111618)
Replace old WPCOM plan names 2 (#86279)
Lodash: replace forEach() with native iteration (#112076)
Analytics: Disable hotjar for e2e (#33803)
Add conditional check and message for updated account email verification (#113238)
Show specific message if the domain state is restricted (#102342)
Lodash: replace map() with native Array.prototype.map (#112102)
Fix Stepper performance bug - Take II (#97451)
Explat-client: add prefetchFlagPayload() to warm the /flags cache (#110815)
update flags lib (#105823)
State: replace immutability-helper with object spread (#112733)
Remove unused components and blocks (#112799)
build(i18n): Drop target support for languages (#56396)
Upgrade wp-prettier to v3.0.3 (#81899)
Fix usage of apiNamespace param for WP.com proxy requests (#100820)
i18n: number-formatters – transform `client` components/files to use `@automattic/number-formatters` (#102510)
Dependencies: Replace classnames with clsx - v2 (#91408)
Lodash: replace filter() with native Array.prototype.filter (#112081)
Janitorial: Remove unused functions (#108174)
Remove lodash `get` in favor of native optional chaining (#112149)
chore: Refactor client/lib to use import/order (#55200)
Framework: Refactor away from _.noop() - take 2 (#50755)
Masterbar: fall back to full page load when page.js router isn't running (#112299)
Dashboard v2: Implement Activity Links (#105978)
Add custom styles for Passport on Login and Checkout pages. (#107226)
Fix jsdoc/tag-lines ESLint errors (#84137)
Unified Connection: signup parity, polish, and cleanup (5/5) (#110585)
Fix payment gateway README typo (#112134)
Remove `CalypsoifyIframe` (#103208)
Fix recovery SMS rejecting valid 350 area code numbers (#109729)
Restart the Visual Split experiment (#105643)
Check if zendeskKey exists before loading script (#101374)
Rename Advertising to Blaze Ads in user-facing strings (#109265)
Purchase Management: Update the purchase listing pages to improve expiring and expired subscription handling (#113243)
UPDATE: Reader urls from /read to /reader (#99038)
Remove the lodash single-use functions (#112170)
React 19 prep: extract type-safe changes that land under React 18 (#112085)
React 19: forward-compatible client/ changes (works on React 18 & 19) (#111727)
Hosting Dashboard v2: Load dev helpers (#105619)
Reader: migrate QueryReaderSite to React Query and remove state.reader.sites (READ-386) (#110594)
Take 2: Some changes to adapt the Reader to be embeddable on LPs (#83318)
User data store: remove createAccount action (#86698)
Remove lodash mapValues, pickBy, and omitBy in favor of @automattic/js-utils (#111739)
Sites: Add the returning user modal and experiment (#113021)
Reader: Clean feature flags (#108552)
Hosting Config: Fix anchor scrolling in site management panel (#91252)
chore: Clean up eslint configuration for packages (#56787)
Plugins per-plugin "Get started": show the plans grid instead of forcing Business (#112368)
Add build-wow Atomic handoff (#112019)
Lodash: replace single-key get() with optional chaining (#111945)
Ensure env badge does not obstruct pagination controls (#111980)
Razorpay Retirement: remove Razorpay checkout flow (SHILL-1968) (#110710)
Reader: Fix previewing of feed items in List (#108223)
Login: brand OAuth2 login screen as Jetpack for the Jetpack app (#112392)
Reader: Add time to read (#97529)
Remove blanket TypeScript exception for client test files (#102783)
chore: fix more ESLint errors and warnings. (#66096)
Add Global sidebar (#87454)
Lodash: replace debounce/throttle with @wordpress/compose (#111775)
Reading settings: correctly update incoming fields based on prevState to avoid race condition (#79509)
Lodash: replace find(), findLast() and has() with native equivalents (#111993)
Storage Add-ons: Release upsell to all onboarding flows (#83771)
Profile Links: Cleanup unused state and components (#110022)
Rename .js to .jsx (try 2) (#110347)
Banner: absolutize root-relative hrefs in wp-admin (Odyssey) (#113168)
Assembler: Update animation in the Pages screen (#84453)
Marketplace: Fixes search bar on the header when scrolling. (#62532)
Checkout: Remove edit button and show only longer term variants (#69643)
Upgrade express-useragent to 2.x (#110398)
Signup flow unusable if user has previously managed subscriptions via email (#112948)
Migrate away from deprecated react types (#78292)
chore: Fix ESlint issues (#56897)
Auto-fix eslint curly errors. (#69021)
lib/wp: remove dev-only offline mode (#110570)
Subscriber Stats: Support paid subscriber stats for Odyssey Stats (#91585)
Gravatar: Allow Gravatar related OAuth2 clients to use the Gravatar login flow (#93133)
Add support for Pocket Cast embed to Reader streams (#85371)
Domain Search Rewrite: Add tests to wpcom-domain-search (#106417)
Site Launch: ship semi-gated flow as default after gating experiment (#111638)
Remove React imports in TypeScript files (#56692)