Conversation
# Why Extracted from #44567, created as a new base to cleanly apply final state of all patches and changes from upstream PRs. The on-demand fallback filesystem will be applied separately too from scratch and the linked draft PR. **Note:** This doesn't yet include any of the individual changes we'll be making. # How - Add `metro-file-map` fork ported to TypeScript - Add `metro-file-map` tests (without integration/index tests) ported to memfs - Add ESM unwrapping (won't function without this) - Alter cache target filename in `DiskCacheManager` (add `-expo-` prefix) - Add `__expo` branding to `FileMap` class - Add forking to `@expo/cli`'s `instantiateMetro` and `exportEmbedAsync` - Create `createFileMap` fork omitting `unstable_fileMapCacheManagerFactory` (due to altered `DiskCacheManager` target path and format in future PRs) - Fork via `replaceMetroFileMap` which alters the CJS exports (Dangerous, but there's no API to swap out `metro-file-map` yet) # Test Plan - Added unit tests - CI E2E covers fork itself **Note:** We need to do a publish on `main` once all patches have landed. This can only be done when all other PRs that'll base off of this are approved and by then merging them all in series and publishing right after. # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
…ork (#45378) # Why Stacked on #45373 This ports the open PRs that have been filed to Metro, as referenced in the commit history. The changes are: - Drop `graceful-fs` dependency - Drop native find binary crawler (it's generally just slower, and can be accidentally re-enabled by users modifying the Metro config) - Tweak Node crawler hot-path (generic speed-up refactor) - Lazily stat files and populate symlinks for Node crawled file trees (avoids larger chunks of work for unaccessed files when diffing the file tree) - Pre-resolve symlink targets and store normal posix paths (moves work off of TreeFS to the symlink resolution, where it makes more sense) Additional changes are: - Disable watchman by default — we'd like the Node crawler to be the default now - Refactor worker and plugin file processors to be non-blocking — this is a slight uplift in the file processor during concurrent in-band file processor calls # How - Pick changes from upstream branches and cross-check with #44567 - Disable watchman by default by flipping `useWatchman` default to `false` - Convert worker and file processor `getContent` and return value to be promises # Test Plan - Unit tests updated accordingly - CI should pass unchanged - Tested manually against `apps/router-e2e` - Delete `$TMPDIR/metro-file-map-*` - Start `apps/router-e2e` with `expo start --clear` - Observe that a `$TMPDIR/metro-file-map-expo-*` file gets created # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Why Stacked on #45378 This adds `enableFallback` and `scopeFallback` flags to `@expo/metro-file-map` that control the **on-demand filesystem**. These file map additions decouple the crawling from `watchFolders` and allow the file map to lazily access and crawl more files. When `scopeFallback` is enabled (the default) it's only allowed to access files in the server root, that aren't ignored (extensions / blocklist), to prevent existing projects from pulling in more files than before. This is disabled for our `expo/expo` out-of-tree debugging (CLI in monorepo run against projects outside of monorepo) This has been implmented to: - allow `watchFolders` to be scoped down to watch and crawl fewer files, allowing a trade-off of having fewer watchers (if files are known not to change frequently), for higher startup performance - allow crawling/access outside of the monorepo root (must be implemented separately), for example, to reliably support pnpm/bun global stores without attaching a file watcher to them - allow the crawler to skip sub-folders in the project (e.g. native folders) that may (in very rare cases) still contain JS project source files (must be implmented separately) # How - Implement fallback filesystem changes (Picked from #44567) - Add unit tests for on-demand access logic - Add `experiments.onDemandFilesystem` flag (`boolean | 'UNSTABLE_ALLOW_ALL'`; untyped until JSON schema update) passed onto `resolver.unstable_onDemandFilesystem` - Remove internal `watchFolders` modification meant for CI that adds additional `watchFolders` - **Note:** This means we can't disable the above flag in E2E CI, since E2E relies on the on-demand filesystem instead now - Empty out `watchFolders = [projectRoot]` if we're exporting and the flag is enabled - **Note:** Pre-crawling a full server root is generally never faster for an export. The cost of doing a few blocking IO calls during bundling is negligible compared to doing a full crawl ahead of bundling # Test Plan - Unit tests added for `@expo/metro-file-map` changes - E2E CI should pass unchanged # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md) --------- Co-authored-by: Hassan Khan <hassan@expo.dev>
…nd defer it to the commands table (#45400) # Why Currently, when we run the versions check it blocks `expo start` and unnecessarily slows down the CLI's startup. Instead, we can prefetch it during the startup, and display it in the commands table, if it fetched in time. If it doesn't fetch in time to be displayed in the commands table, we instead rely on the result being cached, which means it'd be displayed on the next `expo start` run or when/if the commands table is re-printed. # How - Refactor version check output to be shorter and tell users to run `npx expo install --check` - Prefetch version check output and display it (if it's available) in the commands table # Test Plan - Tested manually against `apps/router-e2e` # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
…()` helpers (#45401) # Why Writing loaders with the `LoaderFunction` signature is awkward for two common cases: - Static loaders always receive `undefined` as `request`, but the type forces you to accept it and leave it unused - Server loaders need a guaranteed `ImmutableRequest`, but the type allows `undefined`, requiring a manual check # How Added `createStaticLoader()` and `createServerLoader()` in `packages/expo-server/src/loaders/helpers.ts`: - `createStaticLoader(fn)`: the `fn` callback receives only `params`. Safe for both SSG and SSR. - `createServerLoader(fn)`: the `fn` callback receives an `ImmutableRequest` and `params`. Throws with an actionable error if called during SSG where no request is available. Both return `LoaderFunction<T>`, so `useLoaderData<typeof loader>()` type inference works unchanged. Additionally, updated the Data loaders guide documenting both helpers, and regenerated the `expo-server` API reference. # Test Plan - CI # Checklist - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [x] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [x] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Summary **No changes in the actual transitive dependencies. This just bumps us to the release version (just published) and switches the prerelease ranges back.** Changes within range (compared to sdk-55 w/o metro patch releases that were backported): facebook/metro@v0.83.4...v0.84.4 # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
…nd color (#45264) # Why On Android we can allow for controlling toolbar background color to match the app style # How Use `toolbarContentColor` prop # Test Plan 1. Router-e2e <img height="512" alt="Screenshot_1777568026" src="https://github.com/user-attachments/assets/0bf0009f-4df9-4f9c-878d-64999e290505" /> # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Why To allow users to use multiple Expo Apps in one (outer) brownfield app, we must prefix/rename the class names of each internal app so that they won't clash. Potentially, this will also allow users to use two different react-native versions in the same project # How The first implementation was using [cocoapods-mangle](https://github.com/intercom/cocoapods-mangle) to rename classes during pod post install, but we've now migrated to a full custom `mangle` command in the expo-brownfield CLI. Under the hood, it prefixes all necessary classes from Pods folder so that we can safely include two xcframeworks with the class names into a final brownfield app # Test Plan app.json ``` [ "expo-brownfield", { "ios": { "multipleFrameworks": true } } ] ``` and add the frameworks of two different inner apps to brownfiled tester # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Summary Updates snapshots and adds a `resolveModule` cache to make benchmarks a little more stable. # Test Plan - Unit tests should pass # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [x] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
…de (#45397) # Why The metro plugin was using migration guide url placeholder. # How Replace url placeholder with actual url # Test Plan 1. CI 2. Manual tests # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Why `<Stack.Screen.Title` is too verbose and not aligned with other `Stack.*` components. # How Rename `Stack.Screen.Title` to `Stack.Title` # Test Plan CI # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md) --------- Co-authored-by: Expo Bot <34669131+expo-bot@users.noreply.github.com> Co-authored-by: Aman Mittal <amandeepmittal@live.com>
…45350) # Why After react-native-screens upgrade to 4.25.0-beta there is more platform specific implementation. In order to improve maintenance and make the platform specific code more explicit, we need to refactor the code # How Split combined implementation of NativeTabs into platform specific files: - `NativeTabsView.tsx` -> `.ios.tsx`, `.android.tsx`, `.web.tsx`, `.shared.tsx` - shared logic between ios and android (e.g. state management), `NativeTabsView.tsx` - a stub throwing an error. It can only be imported on unsupported platforms. - `appearance.types.ts` -> `.ios.tsx`, `.android.tsx`, `.types.ts`. The non suffixed file contains a stub with noop - Extracted options to icon conversion into platform specific files + shared logic # Test Plan 1. CI 2. Expo router # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Why This is failing in a production build, which cascades into our android build test. # How - Wrap invalid syntax in tests in `__DEV__` # Test Plan <!-- Please describe how you tested this change and how a reviewer could reproduce your test, especially if this PR does not include automated tests! If possible, please also provide terminal output and/or screenshots demonstrating your test/reproduction. --> # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
Co-authored-by: Jakub Tkacz <32908614+Ubax@users.noreply.github.com>
# Why react-native-screens are working on the new implementation of the native stack. In order to give people and ourselves a way to test and experiment with it within expo router, we want to expose new navigator - `ExperimentalStack`. # How Create new navigator - `ExperimentalStack` # Test Plan 1. CI 2. Router e2e # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
# Why close ENG-20792 # How - [docs] add expo ui universal components - [ui] fine tune types to allow apidoc generator correct docs - [tools] add `@docsInline` support to allow api doc generator to inline base props like the `UniversalBaseProps` / `UniversalStyle` in expo ui --------- Co-authored-by: Aman Mittal <amandeepmittal@live.com>
# Why Document the new features we're about to publish. <!-- Please describe the motivation for this PR, and link to relevant GitHub issues, forums posts, or feature requests. --> # How Update the docs with: - custom params in TTI - `enableInDebug` - `sampleRate` <!-- How did you build this feature or fix this bug and why? --> # Test Plan ### custom params in TTI <img width="1148" height="514" alt="Screenshot 2026-04-30 at 14 11 24" src="https://github.com/user-attachments/assets/d9b2a71c-bc24-4c9b-883a-780b2a0a55b1" /> ### `enableInDebug` <img width="1157" height="551" alt="Screenshot 2026-04-30 at 14 10 57" src="https://github.com/user-attachments/assets/31345382-485c-4877-bf0a-f37c739cb815" /> ### `sampleRate` <img width="1141" height="448" alt="Screenshot 2026-04-30 at 14 10 47" src="https://github.com/user-attachments/assets/eabc843f-ce70-4e0a-b8d9-8a05be75f68b" /> <!-- Please describe how you tested this change and how a reviewer could reproduce your test, especially if this PR does not include automated tests! If possible, please also provide terminal output and/or screenshots demonstrating your test/reproduction. --> # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md) --------- Co-authored-by: Aman Mittal <amandeepmittal@live.com> Co-authored-by: Jakub Tkacz <32908614+Ubax@users.noreply.github.com>
# Why docs were missing <!-- Please describe the motivation for this PR, and link to relevant GitHub issues, forums posts, or feature requests. --> # How add docs <!-- How did you build this feature or fix this bug and why? --> # Test Plan read the docs, test the samples <!-- Please describe how you tested this change and how a reviewer could reproduce your test, especially if this PR does not include automated tests! If possible, please also provide terminal output and/or screenshots demonstrating your test/reproduction. --> # Checklist <!-- Please check the appropriate items below if they apply to your diff. --> - [ ] I added a `changelog.md` entry and rebuilt the package sources according to [this short guide](https://github.com/expo/expo/blob/main/CONTRIBUTING.md#-before-submitting) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
uri-scheme@2.0.20 unimodules-app-loader@56.0.0 patch-project@56.0.0 pod-install@1.0.16 jest-expo@56.0.0 install-expo-modules@0.14.19 @expo/html-elements@56.0.0 expo-widgets@56.0.0 expo-web-browser@56.0.0 expo-video-thumbnails@56.0.0 expo-video@56.0.0 expo-updates-interface@56.0.0 expo-updates@56.0.0 @expo/ui@56.0.0 expo-tracking-transparency@56.0.0 expo-test-runner@0.3.13 expo-system-ui@56.0.0 expo-symbols@56.0.0 expo-task-manager@56.0.0 expo-structured-headers@56.0.0 expo-store-review@56.0.0 expo-status-bar@56.0.0 expo-standard-web-crypto@56.0.0 expo-sqlite@56.0.0 expo-splash-screen@56.0.0 expo-speech@56.0.0 expo-sms@56.0.0 expo-sharing@56.0.0 expo-server@56.0.0 expo-sensors@56.0.0 expo-secure-store@56.0.0 expo-screen-orientation@56.0.0 expo-screen-capture@56.0.0 expo-processing@56.0.0 expo-router@56.0.0 expo-print@56.0.0 expo-notifications@56.0.0 expo-network-addons@56.0.0 expo-network@56.0.0 expo-navigation-bar@56.0.0 expo-modules-test-core@56.0.0 expo-modules-jsi@56.0.0 expo-modules-core@56.0.0 expo-modules-autolinking@56.0.0 expo-module-template@56.0.0 expo-mesh-gradient@56.0.0 expo-media-library@56.0.0 expo-maps@56.0.0 expo-manifests@56.0.0 expo-mail-composer@56.0.0 expo-location@56.0.0 expo-localization@56.0.0 expo-local-authentication@56.0.0 expo-linking@56.0.0 expo-live-photo@56.0.0 expo-linear-gradient@56.0.0 expo-keep-awake@56.0.0 expo-json-utils@56.0.0 expo-intent-launcher@56.0.0 expo-insights@56.0.0 expo-image-manipulator@56.0.0 expo-image-picker@56.0.0 expo-image-loader@56.0.0 expo-glass-effect@56.0.0 expo-image@56.0.0 expo-haptics@56.0.0 expo-gl@56.0.0 expo-env-info@2.0.13 expo-file-system@56.0.0 expo-font@56.0.0 expo-eas-client@56.0.0 expo-document-picker@56.0.0 expo-doctor@1.19.0 expo-device@56.0.0 expo-dev-menu-interface@56.0.0 expo-dev-launcher@56.0.0 expo-dev-menu@56.0.0 expo-dev-client@56.0.0 expo-crypto@56.0.0 expo-contacts@56.0.0 expo-constants@56.0.0 expo-codemod@56.0.0 expo-clipboard@56.0.0 expo-checkbox@56.0.0 expo-camera@56.0.0 expo-cellular@56.0.0 expo-calendar@56.0.0 expo-build-properties@56.0.0 expo-brightness@56.0.0 expo-blur@56.0.0 expo-brownfield@56.0.0 expo-blob@56.0.0 expo-battery@56.0.0 expo-background-fetch@56.0.0 expo-background-task@56.0.0 expo-auth-session@56.0.0 expo-audio@56.0.0 expo-asset@56.0.0 expo-application@56.0.0 expo-apple-authentication@56.0.0 @expo/app-integrity@56.0.0 expo-age-range@56.0.0 eslint-plugin-expo@1.0.1 eslint-config-universe@15.1.0 eslint-config-expo@56.0.0 expo@56.0.0-preview.0 create-expo-nightly@0.4.0 create-expo-module@56.0.0 create-expo@3.7.0 babel-preset-expo@56.0.0 @expo/schemer@2.2.0 @expo/schema-utils@56.0.0 @expo/router-server@56.0.0 @expo/require-utils@56.0.0 @expo/prebuild-config@56.0.0 @expo/plist@0.6.0 @expo/pkcs12@0.5.0 @expo/osascript@2.5.0 @expo/package-manager@1.11.0 @expo/metro-runtime@56.0.0 @expo/metro-file-map@56.0.0-0 @expo/metro-config@56.0.0 @expo/log-box@56.0.0 @expo/json-file@10.1.0 @expo/local-build-cache-provider@56.0.0 @expo/image-utils@0.9.0 @expo/env@2.2.0 @expo/devtools@56.0.0 @expo/fingerprint@0.17.0 @expo/dom-webview@56.0.0 @expo/config-types@56.0.0 @expo/config-plugins@56.0.0 @expo/config@56.0.0 @expo/cli@56.0.0 expo-template-tabs@56.0.0 expo-template-default@56.0.0 expo-template-blank-typescript@56.0.0 expo-template-blank@56.0.0 expo-template-bare-minimum@56.0.0 expo-module-scripts@56.0.0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )