aws-amplify / amplify-js

A declarative JavaScript library for application development using cloud services.
https://docs.amplify.aws/lib/q/platform/js
Apache License 2.0
9.44k stars 2.13k forks source link

[ERROR] 24:37.369 CoreStorageUtils - SessionStorage access failed: [Error: sessionStorage is not defined] #14006

Open ChristopherGabba opened 2 days ago

ChristopherGabba commented 2 days ago

Before opening, please confirm:

JavaScript Framework

React Native

Amplify APIs

Storage

Amplify Version

v6

Amplify Categories

storage

Backend

None

Environment information

``` System: OS: macOS 14.6.1 CPU: (10) arm64 Apple M2 Pro Memory: 2.53 GB / 16.00 GB Shell: 5.9 - /bin/zsh Binaries: Node: 22.7.0 - /opt/homebrew/bin/node Yarn: 1.22.22 - /opt/homebrew/bin/yarn npm: 10.9.0 - /opt/homebrew/bin/npm Watchman: 2024.08.12.00 - /opt/homebrew/bin/watchman Browsers: Safari: 17.6 npmPackages: %name%: 0.1.0 @aws-amplify/backend: ^1.7.0 => 1.7.0 @aws-amplify/backend-cli: ^1.4.2 => 1.4.2 @aws-amplify/react-native: ^1.1.6 => 1.1.6 @aws-appsync/utils: ^1.9.0 => 1.9.0 @aws-sdk/client-sso-oidc: ^3.670.0 => 3.670.0 (3.658.1, 3.637.0, 3.624.0, 3.621.0) @aws-sdk/client-sts: ^3.670.0 => 3.670.0 (3.658.1, 3.637.0, 3.624.0, 3.621.0) @aws-sdk/types: ^3.664.0 => 3.664.0 (3.387.0, 3.654.0, 3.667.0, 3.398.0, 3.609.0) @babel/core: ^7.20.0 => 7.25.2 @babel/plugin-proposal-export-namespace-from: ^7.18.9 => 7.18.9 @babel/plugin-proposal-optional-chaining: ^7.0.0 => 7.21.0 @babel/plugin-transform-arrow-functions: ^7.0.0 => 7.24.7 @babel/plugin-transform-nullish-coalescing-operator: ^7.0.0 => 7.24.7 @babel/plugin-transform-shorthand-properties: ^7.0.0 => 7.24.7 @babel/plugin-transform-template-literals: ^7.0.0 => 7.24.7 @babel/preset-env: ^7.20.0 => 7.25.4 @babel/runtime: ^7.20.0 => 7.25.6 @config-plugins/ffmpeg-kit-react-native: ^8.0.0 => 8.0.0 @expo-google-fonts/m-plus-1p: ^0.2.3 => 0.2.3 @expo-google-fonts/montserrat: ^0.2.3 => 0.2.3 @expo/config-plugins: ~8.0.0 => 8.0.9 (8.0.10, 8.0.11) @expo/metro-runtime: ~3.2.3 => 3.2.3 @gorhom/bottom-sheet: ^5.0.1 => 5.0.1 @react-native-async-storage/async-storage: 1.23.1 => 1.23.1 (1.24.0) @react-native-community/netinfo: 11.3.1 => 11.3.1 @react-native-menu/menu: ^1.1.0 => 1.1.3 @react-navigation/bottom-tabs: 6.6.1 => 6.6.1 @react-navigation/native: 6.1.18 => 6.1.18 @react-navigation/native-stack: 6.11.0 => 6.11.0 @sentry/react-native: ^6.0.0 => 6.0.0 @shopify/flash-list: 1.6.4 => 1.6.4 @types/i18n-js: 3.8.2 => 3.8.2 @types/jest: ^29.2.1 => 29.5.13 @types/lodash.filter: ^4.6.9 => 4.6.9 @types/node: ^22.5.0 => 22.7.3 (20.16.9, 18.19.53) @types/react: ~18.2.14 => 18.2.79 (18.3.9) @types/react-test-renderer: ^18.0.0 => 18.3.0 @typescript-eslint/eslint-plugin: ^5.59.0 => 5.62.0 @typescript-eslint/parser: ^5.59.0 => 5.62.0 ContextAPIMixpanel: 0.0.1 HelloWorld: 0.0.1 MixpanelDemo: 0.0.1 SimpleMixpanel: 0.0.1 apisauce: 3.0.1 => 3.0.1 aws-amplify: ^6.8.1 => 6.8.1 aws-amplify/adapter-core: undefined () aws-amplify/analytics: undefined () aws-amplify/analytics/kinesis: undefined () aws-amplify/analytics/kinesis-firehose: undefined () aws-amplify/analytics/personalize: undefined () aws-amplify/analytics/pinpoint: undefined () aws-amplify/api: undefined () aws-amplify/api/server: undefined () aws-amplify/auth: undefined () aws-amplify/auth/cognito: undefined () aws-amplify/auth/cognito/server: undefined () aws-amplify/auth/enable-oauth-listener: undefined () aws-amplify/auth/server: undefined () aws-amplify/data: undefined () aws-amplify/data/server: undefined () aws-amplify/datastore: undefined () aws-amplify/in-app-messaging: undefined () aws-amplify/in-app-messaging/pinpoint: undefined () aws-amplify/push-notifications: undefined () aws-amplify/push-notifications/pinpoint: undefined () aws-amplify/storage: undefined () aws-amplify/storage/s3: undefined () aws-amplify/storage/s3/server: undefined () aws-amplify/storage/server: undefined () aws-amplify/utils: undefined () aws-cdk: ^2.155.0 => 2.160.0 aws-cdk-lib: ^2.155.0 => 2.160.0 babel-jest: ^29.2.1 => 29.7.0 cheerio: 1.0.0-rc.12 => 1.0.0-rc.12 constructs: ^10.3.0 => 10.3.0 date-fns: ^2.30.0 => 2.30.0 esbuild: ^0.21.1 => 0.21.5 (0.23.1) eslint: 8.17.0 => 8.17.0 eslint-config-prettier: 8.5.0 => 8.5.0 eslint-config-standard: 17.0.0 => 17.0.0 eslint-plugin-import: 2.26.0 => 2.26.0 eslint-plugin-n: ^15.0.0 => 15.7.0 eslint-plugin-promise: 6.0.0 => 6.0.0 eslint-plugin-react: 7.30.0 => 7.30.0 eslint-plugin-react-native: 4.0.0 => 4.0.0 eslint-plugin-reactotron: ^0.1.2 => 0.1.5 expo: 51.0.39 => 51.0.39 expo-application: ~5.9.1 => 5.9.1 expo-av: ~14.0.7 => 14.0.7 expo-blur: ~13.0.2 => 13.0.2 expo-build-properties: ~0.12.5 => 0.12.5 expo-clipboard: ~6.0.3 => 6.0.3 expo-constants: ~16.0.2 => 16.0.2 expo-contacts: ~13.0.5 => 13.0.5 expo-dev-client: 4.0.29 => 4.0.29 expo-device: ~6.0.2 => 6.0.2 expo-file-system: ~17.0.1 => 17.0.1 expo-font: ~12.0.10 => 12.0.10 expo-haptics: ~13.0.1 => 13.0.1 expo-image: ~1.13.0 => 1.13.0 expo-image-picker: ~15.0.7 => 15.0.7 expo-linear-gradient: ~13.0.2 => 13.0.2 expo-linking: ~6.3.1 => 6.3.1 expo-localization: ~15.0.3 => 15.0.3 expo-secure-store: ~13.0.2 => 13.0.2 expo-share-intent: 2.5.1 => 2.5.1 expo-splash-screen: 0.27.7 => 0.27.7 expo-status-bar: ~1.12.1 => 1.12.1 expo-store-review: ~7.0.2 => 7.0.2 expo-updates: ~0.25.27 => 0.25.27 expo-video-thumbnails: ~8.0.0 => 8.0.0 ffmpeg-kit-react-native: ^6.0.2 => 6.0.2 i18n-js: 3.9.2 => 3.9.2 jest: ^29.2.1 => 29.7.0 jest-expo: ^51.0.4 => 51.0.4 libphonenumber-js: ^1.11.1 => 1.11.9 (1.9.47) libphonenumber-js-core: undefined (1.0.0) libphonenumber-js-max: undefined (1.0.0) libphonenumber-js-min: undefined (1.0.0) libphonenumber-js-mobile: undefined (1.0.0) libphonenumber-js/build: undefined () libphonenumber-js/core: undefined () libphonenumber-js/max: undefined () libphonenumber-js/max/metadata: undefined () libphonenumber-js/min: undefined () libphonenumber-js/min/metadata: undefined () libphonenumber-js/mobile: undefined () libphonenumber-js/mobile/examples: undefined () libphonenumber-js/mobile/metadata: undefined () lodash: ^4.17.21 => 4.17.21 lodash.filter: ^4.6.0 => 4.6.0 lottie-react-native: 6.7.0 => 6.7.0 mixpanel-react-native: ^3.0.2 => 3.0.7 mixpanelexpo: 1.0.0 mobx: 6.10.2 => 6.10.2 mobx-react-lite: 4.0.5 => 4.0.5 mobx-state-tree: 6.0.1 => 6.0.1 onesignal-expo-plugin: ^2.0.3 => 2.0.3 patch-package: 6.4.7 => 6.4.7 postinstall-prepare: 1.0.1 => 1.0.1 prettier: 2.8.8 => 2.8.8 (1.19.1, 2.3.2) react: 18.2.0 => 18.2.0 react-dom: 18.2.0 => 18.2.0 react-native: 0.74.5 => 0.74.5 react-native-blurhash: ^2.0.2 => 2.0.3 react-native-compressor: ^1.8.24 => 1.9.0 react-native-device-info: ^10.13.2 => 10.14.0 react-native-gesture-handler: ~2.16.1 => 2.16.2 react-native-get-random-values: ^1.11.0 => 1.11.0 react-native-ios-context-menu: ^2.4.5 => 2.5.1 react-native-ios-utilities: ^4.5.0 => 4.5.0 react-native-mime-types: ^2.5.0 => 2.5.0 react-native-mmkv: ^2.12.2 => 2.12.2 react-native-onesignal: ^5.2.5 => 5.2.5 react-native-reanimated: ~3.10.1 => 3.10.1 react-native-safe-area-context: 4.10.5 => 4.10.5 react-native-screens: 3.31.1 => 3.31.1 react-native-static-safe-area-insets: ^2.2.0 => 2.2.0 react-native-url-polyfill: ^2.0.0 => 2.0.0 react-native-vision-camera: 4.5.0 => 4.5.0 react-native-vision-camera-face-detector: ^1.7.1 => 1.7.1 react-native-volume-manager: ^1.10.0 => 1.10.0 react-native-webview: 13.8.6 => 13.8.6 react-native-worklets-core: ^1.3.3 => 1.3.3 react-native-youtube-iframe: ^2.3.0 => 2.3.0 react-test-renderer: 18.2.0 => 18.2.0 reactotron-core-client: ^2.8.13 => 2.9.4 reactotron-mst: ^3.1.7 => 3.1.10 reactotron-react-js: ^3.3.11 => 3.3.15 reactotron-react-native: ^5.0.5 => 5.1.8 ts-jest: ^29.1.1 => 29.2.5 ts-node: ^10.9.2 => 10.9.2 tsx: ^4.9.4 => 4.19.1 typescript: ~5.3.3 => 5.3.3 (4.4.4, 4.9.5) uuid: ^9.0.1 => 9.0.1 (8.3.2, 3.3.2, 7.0.3) zeego: ^1.10.0 => 1.10.0 npmGlobalPackages: eas-cli: 13.1.1 npm: 10.9.0 ```

Describe the bug

I made the following bumps in my amplify package:

    "aws-amplify": "^6.8.1", (from 6.6.7)
    "@aws-amplify/backend-cli": "^1.4.2", (from 1.2.9)
    "@aws-amplify/backend": "^1.7.0", (from 1.3.0). <-- devDependency

Now every time I open my app, I get:

  iOS Bundled 8697ms.  node_modules/expo/AppEntry.js (4225 modules)
  ERROR  [ERROR] 24:37.369 CoreStorageUtils - SessionStorage access failed: [Error: sessionStorage is not defined]

Expected behavior

This error should not appear.

Reproduction steps

Create a react-native expo-managed workflow app with the packages above and I'm guessing you will get this error.

Code Snippet

// Put your code below this line.

Log output

``` // Put your logs below this line ```

aws-exports.js

No response

Manual configuration

No response

Additional configuration

No response

Mobile Device

iPhone 12 Physical

Mobile Operating System

iOS 18.1

Mobile Browser

N/A

Mobile Browser Version

N/A

Additional information and screenshots

No response

cwomack commented 1 day ago

Hello again, @ChristopherGabba 👋 and thanks for opening this issue. We are tracking a fix for this in PR #14009 and will update this once we have it merged/ready for release. For now, you can roll back to v6.8.0 or if this is not a blocking issue for you then await the next release.

yuhengshs commented 1 day ago

Hi @ChristopherGabba , new version of aws-amplify v6.8.2 is released. This should solve the issue you mentioned. Please upgrade to the latest version and let us know if there's any other issues.

olivierhill commented 23 hours ago

I'll be curious to see @ChristopherGabba answer, but we were facing the same error on our side and v6.8.2 fixed it. Thanks!