netlify / zip-it-and-ship-it

Intelligently prepare Node.js Lambda functions for deployment
https://www.npmjs.com/package/@netlify/zip-it-and-ship-it
MIT License
316 stars 35 forks source link

feat: infer TypeScript format from `package.json` only #1587

Closed eduardoboucas closed 1 year ago

eduardoboucas commented 1 year ago

Summary

When compiling TypeScript functions, infer the module type only from package.json and not from tsconfig.json.

Also ensures that the entry files we generate for V2 functions have an unambiguous extension depending on their module format (i.e. either .cjs or .mjs).

github-actions[bot] commented 1 year ago

⏱ Benchmark results

Comparing with ad2c55d2db23014e0961a776f860e03d781a8eb1

largeDepsEsbuild: 2.9s

⬆️ 2.18% increase vs. ad2c55d2db23014e0961a776f860e03d781a8eb1

^                                    3s                                                                   
│                                   ┌──┐                                                    2.8s    2.9s  
│                   2.7s    2.6s    |  |    2.6s    2.8s    2.8s    2.8s            2.7s    ┌──┐    ┌──┐  
│ ──────────2.5s────┌──┐────┌──┐────┼──┼────┌──┐────┌──┐────┌──┐────┌──┐────2.6s────┌──┐────┼──┼────|▒▒|──
│   2.5s    ┌──┐    |  |    |  |    |  |    |  |    |  |    |  |    |  |    ┌──┐    |  |    |  |    |▒▒|  
│   ┌──┐    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
└───┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴──>
    T-12    T-11    T-10    T-9     T-8     T-7     T-6     T-5     T-4     T-3     T-2     T-1      T    
Legend - T-30 (38cde6efec37b5d60593c15810f756da8b5177e6): 2.6s - T-29 (2211f39741e1088a7c9cde0af57c9bc27108c606): 2.7s - T-28 (54b79e3c973805ed06c5ec4bc0259a122a880913): 2.7s - T-27 (87886247aa8acabd74cf76f13c3465a22bf63078): 3.5s - T-26 (27155874fa16fb54d0c00f71d1e98e2e856642c4): 2.8s - T-25 (0c76ba5d3ebfd00ce70b3bfd382bed28a6885017): 2.6s - T-24 (3092484b754b25c3635f1fb36bae0eaf8f9db6f0): 2.6s - T-23 (b5b9b1a41e3c40b4d41e625131cd5e2c1d8e5dd1): 2.7s - T-22 (22967a315e6f619bcbb4d01eba839868fca47bed): 3.2s - T-21 (af1c7e0fb3c5f24139307a0c5a3f199ff9a11ccd): 2.5s - T-20 (909382c875d5162ca98ef0111dd8da877dba384e): 2.8s - T-19 (56767675a84e1625759a8ac74011288075046754): 2.6s - T-18 (364c92a78cd9bfc3d922a064c69a1d830ec23662): 2.4s - T-17 (c9978755768e1f7c2e8b3df00b64da3731190228): 3.1s - T-16 (8803f81ff71856192f9a1d523eb8e2f489ecc36d): 3.7s - T-15 (627fed0c14b94377ce05668ef711afdf0aae69b3): 2.6s - T-14 (a3e629996493877ab8fb5ea29b30eb12ae3ed83a): 3.1s - T-13 (6b6f02a3e5b95e15452e4d03023ba58f90a7c896): 2.6s - T-12 (11d452bd8c4ef7a25655a4d3f2c612c68f7625ba): 2.5s - T-11 (8d205cac41e94785f037d2885d0d9257e7ecd4d4): 2.5s - T-10 (0658e287efca9574ab585df4a96d744834935c41): 2.7s - T-9 (9fa3e37f25b1625fdcf7fd90efc0a6a5effd9818): 2.6s - T-8 (7aeed4d678636a4efd8d6e8f0f3314d242a585de): 3s - T-7 (028da3871932b3775006e6b637f6d81f98cfd905): 2.6s - T-6 (60d1ecb24a678806e75d329da23963c51f246d62): 2.8s - T-5 (4778ed749c03eaae2fb36b42db987364c7e0ecf3): 2.8s - T-4 (f5529d7f1e2008db4ef41392571733250e0b2d12): 2.8s - T-3 (d98dd20825b80d78c6ff0e5c4f2b51c7117d6af5): 2.6s - T-2 (6be379e1499d09e146d718af1957275014d10dd4): 2.7s - T-1 (ad2c55d2db23014e0961a776f860e03d781a8eb1): 2.8s - **T (current commit): 2.9s**

largeDepsNft: 8.7s

⬆️ 4.00% increase vs. ad2c55d2db23014e0961a776f860e03d781a8eb1

^                                   9.4s                                                                  
│                                   ┌──┐                                                                  
│                                   |  |    8.7s            8.3s    8.7s            8.5s    8.3s    8.7s  
│ ──────────────────8.2s────8.1s────┼──┼────┌──┐────8.2s────┌──┐────┌──┐────────────┌──┐────┌──┐────┌──┐──
│   7.5s    7.6s    ┌──┐    ┌──┐    |  |    |  |    ┌──┐    |  |    |  |    7.6s    |  |    |  |    |▒▒|  
│   ┌──┐    ┌──┐    |  |    |  |    |  |    |  |    |  |    |  |    |  |    ┌──┐    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
└───┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴──>
    T-12    T-11    T-10    T-9     T-8     T-7     T-6     T-5     T-4     T-3     T-2     T-1      T    
Legend - T-30 (38cde6efec37b5d60593c15810f756da8b5177e6): 8.2s - T-29 (2211f39741e1088a7c9cde0af57c9bc27108c606): 8.4s - T-28 (54b79e3c973805ed06c5ec4bc0259a122a880913): 8.4s - T-27 (87886247aa8acabd74cf76f13c3465a22bf63078): 11.2s - T-26 (27155874fa16fb54d0c00f71d1e98e2e856642c4): 8.7s - T-25 (0c76ba5d3ebfd00ce70b3bfd382bed28a6885017): 8.2s - T-24 (3092484b754b25c3635f1fb36bae0eaf8f9db6f0): 8.3s - T-23 (b5b9b1a41e3c40b4d41e625131cd5e2c1d8e5dd1): 8.2s - T-22 (22967a315e6f619bcbb4d01eba839868fca47bed): 9.9s - T-21 (af1c7e0fb3c5f24139307a0c5a3f199ff9a11ccd): 7.5s - T-20 (909382c875d5162ca98ef0111dd8da877dba384e): 8.5s - T-19 (56767675a84e1625759a8ac74011288075046754): 7.8s - T-18 (364c92a78cd9bfc3d922a064c69a1d830ec23662): 7.5s - T-17 (c9978755768e1f7c2e8b3df00b64da3731190228): 9.8s - T-16 (8803f81ff71856192f9a1d523eb8e2f489ecc36d): 11.7s - T-15 (627fed0c14b94377ce05668ef711afdf0aae69b3): 8.2s - T-14 (a3e629996493877ab8fb5ea29b30eb12ae3ed83a): 9.7s - T-13 (6b6f02a3e5b95e15452e4d03023ba58f90a7c896): 7.9s - T-12 (11d452bd8c4ef7a25655a4d3f2c612c68f7625ba): 7.5s - T-11 (8d205cac41e94785f037d2885d0d9257e7ecd4d4): 7.6s - T-10 (0658e287efca9574ab585df4a96d744834935c41): 8.2s - T-9 (9fa3e37f25b1625fdcf7fd90efc0a6a5effd9818): 8.1s - T-8 (7aeed4d678636a4efd8d6e8f0f3314d242a585de): 9.4s - T-7 (028da3871932b3775006e6b637f6d81f98cfd905): 8.7s - T-6 (60d1ecb24a678806e75d329da23963c51f246d62): 8.2s - T-5 (4778ed749c03eaae2fb36b42db987364c7e0ecf3): 8.3s - T-4 (f5529d7f1e2008db4ef41392571733250e0b2d12): 8.7s - T-3 (d98dd20825b80d78c6ff0e5c4f2b51c7117d6af5): 7.6s - T-2 (6be379e1499d09e146d718af1957275014d10dd4): 8.5s - T-1 (ad2c55d2db23014e0961a776f860e03d781a8eb1): 8.3s - **T (current commit): 8.7s**

largeDepsZisi: 16.6s

⬆️ 4.73% increase vs. ad2c55d2db23014e0961a776f860e03d781a8eb1

^                                   18s                                                                   
│                                   ┌──┐                                                           16.6s  
│                   16s             |  |   15.8s   15.8s   16.1s   16.4s           16.1s   15.9s    ┌──┐  
│ ─────────14.9s────┌──┐───15.3s────┼──┼────┌──┐────┌──┐────┌──┐────┌──┐────────────┌──┐────┌──┐────|▒▒|──
│  14.4s    ┌──┐    |  |    ┌──┐    |  |    |  |    |  |    |  |    |  |   14.8s    |  |    |  |    |▒▒|  
│   ┌──┐    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    ┌──┐    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
└───┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴──>
    T-12    T-11    T-10    T-9     T-8     T-7     T-6     T-5     T-4     T-3     T-2     T-1      T    
Legend - T-30 (38cde6efec37b5d60593c15810f756da8b5177e6): 15.8s - T-29 (2211f39741e1088a7c9cde0af57c9bc27108c606): 15.6s - T-28 (54b79e3c973805ed06c5ec4bc0259a122a880913): 16.4s - T-27 (87886247aa8acabd74cf76f13c3465a22bf63078): 21s - T-26 (27155874fa16fb54d0c00f71d1e98e2e856642c4): 16.9s - T-25 (0c76ba5d3ebfd00ce70b3bfd382bed28a6885017): 16.2s - T-24 (3092484b754b25c3635f1fb36bae0eaf8f9db6f0): 16.1s - T-23 (b5b9b1a41e3c40b4d41e625131cd5e2c1d8e5dd1): 15.8s - T-22 (22967a315e6f619bcbb4d01eba839868fca47bed): 19.3s - T-21 (af1c7e0fb3c5f24139307a0c5a3f199ff9a11ccd): 15s - T-20 (909382c875d5162ca98ef0111dd8da877dba384e): 16.1s - T-19 (56767675a84e1625759a8ac74011288075046754): 14.6s - T-18 (364c92a78cd9bfc3d922a064c69a1d830ec23662): 14.9s - T-17 (c9978755768e1f7c2e8b3df00b64da3731190228): 19.3s - T-16 (8803f81ff71856192f9a1d523eb8e2f489ecc36d): 22.3s - T-15 (627fed0c14b94377ce05668ef711afdf0aae69b3): 15.4s - T-14 (a3e629996493877ab8fb5ea29b30eb12ae3ed83a): 18.3s - T-13 (6b6f02a3e5b95e15452e4d03023ba58f90a7c896): 15.2s - T-12 (11d452bd8c4ef7a25655a4d3f2c612c68f7625ba): 14.4s - T-11 (8d205cac41e94785f037d2885d0d9257e7ecd4d4): 14.9s - T-10 (0658e287efca9574ab585df4a96d744834935c41): 16s - T-9 (9fa3e37f25b1625fdcf7fd90efc0a6a5effd9818): 15.3s - T-8 (7aeed4d678636a4efd8d6e8f0f3314d242a585de): 18s - T-7 (028da3871932b3775006e6b637f6d81f98cfd905): 15.8s - T-6 (60d1ecb24a678806e75d329da23963c51f246d62): 15.8s - T-5 (4778ed749c03eaae2fb36b42db987364c7e0ecf3): 16.1s - T-4 (f5529d7f1e2008db4ef41392571733250e0b2d12): 16.4s - T-3 (d98dd20825b80d78c6ff0e5c4f2b51c7117d6af5): 14.8s - T-2 (6be379e1499d09e146d718af1957275014d10dd4): 16.1s - T-1 (ad2c55d2db23014e0961a776f860e03d781a8eb1): 15.9s - **T (current commit): 16.6s**