Skip to content

use esm2017 builds by default #5539

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 6 commits into from
Sep 24, 2021
Merged

use esm2017 builds by default #5539

merged 6 commits into from
Sep 24, 2021

Conversation

Feiyang1
Copy link
Member

Esm2017 is the default build for v9 libraries. Changing util libraries to use esm2017 by default.

@changeset-bot
Copy link

changeset-bot bot commented Sep 23, 2021

🦋 Changeset detected

Latest commit: 4cd11cf

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 30 packages
Name Type
@firebase/logger Minor
@firebase/util Minor
@firebase/webchannel-wrapper Minor
@firebase/firestore Patch
@firebase/analytics Patch
@firebase/app-check-compat Patch
@firebase/app-check Patch
@firebase/app-compat Patch
@firebase/app Patch
@firebase/auth Patch
@firebase/database-compat Patch
@firebase/database Patch
@firebase/performance-compat Patch
@firebase/performance Patch
@firebase/remote-config-compat Patch
@firebase/remote-config Patch
@firebase/analytics-compat Patch
@firebase/auth-compat Patch
@firebase/component Patch
@firebase/database-types Patch
firebase Patch
@firebase/firestore-compat Patch
@firebase/functions-compat Patch
@firebase/functions Patch
@firebase/installations-compat Patch
@firebase/installations Patch
@firebase/messaging-compat Patch
@firebase/messaging Patch
@firebase/storage-compat Patch
@firebase/storage Patch

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

@google-cla google-cla bot added the cla: yes label Sep 23, 2021
@Feiyang1 Feiyang1 requested a review from egilmorez as a code owner September 23, 2021 23:00
@github-actions
Copy link
Contributor

github-actions bot commented Sep 23, 2021

Changeset File Check ✅

  • No modified packages are missing from the changeset file.
  • No changeset formatting errors detected.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Sep 23, 2021

Binary Size Report

Affected SDKs

  • @firebase/database-compat

    Type Base (1261137) Head (14e8c7e) Diff
    browser 18.0 kB 17.9 kB -109 B (-0.6%)
    esm5 21.1 kB 21.0 kB -109 B (-0.5%)
    main 22.9 kB 21.7 kB -1.14 kB (-5.0%)
    module 18.0 kB 17.9 kB -109 B (-0.6%)
  • @firebase/database-compat/standalone

    Type Base (1261137) Head (14e8c7e) Diff
    main ? 369 kB ? (?)
  • @firebase/firestore

    Type Base (1261137) Head (14e8c7e) Diff
    browser 225 kB 225 kB -71 B (-0.0%)
    esm5 282 kB 282 kB -79 B (-0.0%)
    main 512 kB 512 kB -126 B (-0.0%)
    module 225 kB 225 kB -71 B (-0.0%)
    react-native 225 kB 225 kB -71 B (-0.0%)
  • @firebase/firestore-lite

    Type Base (1261137) Head (14e8c7e) Diff
    browser 71.6 kB 71.6 kB -71 B (-0.1%)
    esm5 84.8 kB 84.7 kB -79 B (-0.1%)
    main 147 kB 147 kB -126 B (-0.1%)
    module 71.6 kB 71.6 kB -71 B (-0.1%)
    react-native 71.8 kB 71.8 kB -71 B (-0.1%)
  • @firebase/logger

    Type Base (1261137) Head (14e8c7e) Diff
    esm5 ? 4.65 kB ? (?)
    module 4.65 kB 3.25 kB -1.40 kB (-30.1%)
  • @firebase/util

    Type Base (1261137) Head (14e8c7e) Diff
    browser 21.9 kB 20.5 kB -1.31 kB (-6.0%)
    esm5 ? 21.9 kB ? (?)
    module 21.9 kB 20.5 kB -1.31 kB (-6.0%)
  • @firebase/webchannel-wrapper

    Type Base (1261137) Head (14e8c7e) Diff
    esm5 ? 44.7 kB ? (?)
    module 44.7 kB 43.2 kB -1.53 kB (-3.4%)
  • firebase

    Click to show 28 binary size changes.
    Type Base (1261137) Head (14e8c7e) Diff
    firebase-analytics-compat.js 27.6 kB 25.9 kB -1.64 kB (-6.0%)
    firebase-analytics.js 109 kB 107 kB -2.58 kB (-2.4%)
    firebase-app-check-compat.js 21.5 kB 19.8 kB -1.65 kB (-7.7%)
    firebase-app-check.js 80.1 kB 77.6 kB -2.50 kB (-3.1%)
    firebase-app-compat.js 23.1 kB 21.2 kB -1.87 kB (-8.1%)
    firebase-app.js 60.8 kB 59.0 kB -1.81 kB (-3.0%)
    firebase-auth-compat.js 124 kB 122 kB -1.90 kB (-1.5%)
    firebase-auth-cordova.js 460 kB 459 kB -1.36 kB (-0.3%)
    firebase-auth-react-native.js 433 kB 430 kB -2.93 kB (-0.7%)
    firebase-auth.js 411 kB 409 kB -2.39 kB (-0.6%)
    firebase-compat.js 751 kB 748 kB -3.34 kB (-0.4%)
    firebase-database-compat.js 170 kB 168 kB -2.21 kB (-1.3%)
    firebase-database.js 610 kB 603 kB -7.26 kB (-1.2%)
    firebase-firestore-compat.js 281 kB 277 kB -3.45 kB (-1.2%)
    firebase-firestore-lite.js 250 kB 244 kB -6.31 kB (-2.5%)
    firebase-firestore.js 793 kB 762 kB -30.7 kB (-3.9%)
    firebase-functions-compat.js 8.43 kB 7.90 kB -531 B (-6.3%)
    firebase-functions.js 30.6 kB 30.5 kB -185 B (-0.6%)
    firebase-messaging-compat.js 38.4 kB 37.8 kB -552 B (-1.4%)
    firebase-messaging-sw.js 102 kB 102 kB -230 B (-0.2%)
    firebase-messaging.js 101 kB 100 kB -230 B (-0.2%)
    firebase-performance-compat.js 32.4 kB 30.7 kB -1.62 kB (-5.0%)
    firebase-performance-standalone-compat.es2017.js 84.1 kB 82.4 kB -1.71 kB (-2.0%)
    firebase-performance.js 121 kB 118 kB -2.48 kB (-2.1%)
    firebase-remote-config-compat.js 29.1 kB 27.5 kB -1.65 kB (-5.7%)
    firebase-remote-config.js 111 kB 108 kB -2.45 kB (-2.2%)
    firebase-storage-compat.js 38.9 kB 38.1 kB -755 B (-1.9%)
    firebase-storage.js 141 kB 141 kB -519 B (-0.4%)

Test Logs

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Sep 23, 2021

Size Analysis Report

Affected Products

  • @firebase/firestore

    • Transaction

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      40.2 kB
      40.1 kB
      -71 B (-0.2%)
      size-with-ext-deps
      87.6 kB
      87.5 kB
      -71 B (-0.1%)
    • WriteBatch

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      37.0 kB
      36.9 kB
      -71 B (-0.2%)
      size-with-ext-deps
      84.4 kB
      84.3 kB
      -71 B (-0.1%)
    • _cast

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      15.2 kB
      15.1 kB
      -71 B (-0.5%)
      size-with-ext-deps
      62.5 kB
      62.4 kB
      -71 B (-0.1%)
    • addDoc

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      103 kB
      103 kB
      -71 B (-0.1%)
      size-with-ext-deps
      152 kB
      152 kB
      -71 B (-0.0%)
    • arrayRemove

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      26.4 kB
      26.4 kB
      -71 B (-0.3%)
      size-with-ext-deps
      73.8 kB
      73.7 kB
      -71 B (-0.1%)
    • arrayUnion

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      26.4 kB
      26.4 kB
      -71 B (-0.3%)
      size-with-ext-deps
      73.8 kB
      73.7 kB
      -71 B (-0.1%)
    • collectionGroup

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      17.7 kB
      17.7 kB
      -71 B (-0.4%)
      size-with-ext-deps
      65.0 kB
      64.9 kB
      -71 B (-0.1%)
    • connectFirestoreEmulator

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      16.2 kB
      16.2 kB
      -71 B (-0.4%)
      size-with-ext-deps
      67.2 kB
      67.2 kB
      -71 B (-0.1%)
    • deleteDoc

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      94.4 kB
      94.3 kB
      -71 B (-0.1%)
      size-with-ext-deps
      143 kB
      143 kB
      -71 B (-0.0%)
    • disableNetwork

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      83.5 kB
      83.4 kB
      -71 B (-0.1%)
      size-with-ext-deps
      132 kB
      132 kB
      -71 B (-0.1%)
    • enableIndexedDbPersistence

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      139 kB
      139 kB
      -71 B (-0.1%)
      size-with-ext-deps
      188 kB
      188 kB
      -71 B (-0.0%)
    • enableMultiTabIndexedDbPersistence

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      171 kB
      170 kB
      -71 B (-0.0%)
      size-with-ext-deps
      220 kB
      220 kB
      -71 B (-0.0%)
    • enableNetwork

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      83.5 kB
      83.4 kB
      -71 B (-0.1%)
      size-with-ext-deps
      132 kB
      132 kB
      -71 B (-0.1%)
    • endAt

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      32.4 kB
      32.3 kB
      -71 B (-0.2%)
      size-with-ext-deps
      79.8 kB
      79.7 kB
      -71 B (-0.1%)
    • endBefore

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      32.4 kB
      32.3 kB
      -71 B (-0.2%)
      size-with-ext-deps
      79.8 kB
      79.7 kB
      -71 B (-0.1%)
    • getDoc

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      119 kB
      119 kB
      -71 B (-0.1%)
      size-with-ext-deps
      168 kB
      168 kB
      -71 B (-0.0%)
    • getDocFromCache

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      76.9 kB
      76.9 kB
      -71 B (-0.1%)
      size-with-ext-deps
      124 kB
      124 kB
      -71 B (-0.1%)
    • getDocFromServer

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      119 kB
      119 kB
      -71 B (-0.1%)
      size-with-ext-deps
      168 kB
      168 kB
      -71 B (-0.0%)
    • getDocs

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      121 kB
      121 kB
      -71 B (-0.1%)
      size-with-ext-deps
      169 kB
      169 kB
      -71 B (-0.0%)
    • getDocsFromCache

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      84.1 kB
      84.1 kB
      -71 B (-0.1%)
      size-with-ext-deps
      132 kB
      132 kB
      -71 B (-0.1%)
    • getDocsFromServer

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      121 kB
      121 kB
      -71 B (-0.1%)
      size-with-ext-deps
      169 kB
      169 kB
      -71 B (-0.0%)
    • loadBundle

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      92.3 kB
      92.2 kB
      -71 B (-0.1%)
      size-with-ext-deps
      141 kB
      141 kB
      -71 B (-0.1%)
    • namedQuery

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      70.4 kB
      70.3 kB
      -71 B (-0.1%)
      size-with-ext-deps
      118 kB
      118 kB
      -71 B (-0.1%)
    • onSnapshot

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      121 kB
      121 kB
      -71 B (-0.1%)
      size-with-ext-deps
      170 kB
      170 kB
      -71 B (-0.0%)
    • onSnapshotsInSync

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      111 kB
      111 kB
      -71 B (-0.1%)
      size-with-ext-deps
      160 kB
      160 kB
      -71 B (-0.0%)
    • runTransaction

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      104 kB
      104 kB
      -71 B (-0.1%)
      size-with-ext-deps
      153 kB
      153 kB
      -71 B (-0.0%)
    • setDoc

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      103 kB
      102 kB
      -71 B (-0.1%)
      size-with-ext-deps
      151 kB
      151 kB
      -71 B (-0.0%)
    • startAfter

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      32.4 kB
      32.3 kB
      -71 B (-0.2%)
      size-with-ext-deps
      79.8 kB
      79.7 kB
      -71 B (-0.1%)
    • startAt

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      32.4 kB
      32.3 kB
      -71 B (-0.2%)
      size-with-ext-deps
      79.8 kB
      79.7 kB
      -71 B (-0.1%)
    • updateDoc

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      103 kB
      103 kB
      -71 B (-0.1%)
      size-with-ext-deps
      152 kB
      152 kB
      -71 B (-0.0%)
    • waitForPendingWrites

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      83.9 kB
      83.8 kB
      -71 B (-0.1%)
      size-with-ext-deps
      132 kB
      132 kB
      -71 B (-0.1%)
    • where

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      38.4 kB
      38.4 kB
      -71 B (-0.2%)
      size-with-ext-deps
      85.9 kB
      85.8 kB
      -71 B (-0.1%)
    • writeBatch

      Size Table

      TypeBase (1261137)Head (e74927a)Diff
      size
      105 kB
      105 kB
      -71 B (-0.1%)
      size-with-ext-deps
      154 kB
      154 kB
      -71 B (-0.0%)

if (results && results.length > 1) {
return results[1];
}
return input.constructor.name;
Copy link
Member Author

@Feiyang1 Feiyang1 Sep 24, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@schmidt-sebastian I changed the compilation target to es2017 for testing, which preserves class definitions and revealed that this function doesn't work with classes. Changed to use constructor.name which is available everywhere except IE, which we don't need to worry about anymore. - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/name#browser_compatibility

@schmidt-sebastian
Copy link
Contributor

Can we get rid of "es2017ToEs5Plugins" in rollup.shared.js and remove the remaining callsites?

@Feiyang1 Feiyang1 merged commit a99943f into master Sep 24, 2021
@Feiyang1 Feiyang1 deleted the fei-v9-builds branch September 24, 2021 18:54
@google-oss-bot google-oss-bot mentioned this pull request Sep 24, 2021
@firebase firebase locked and limited conversation to collaborators Oct 25, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants