Quentin
abe8b1e0a8
Improve performance of String.prototype.split uses ( #56746 )
...
This PR adds the optional `limit` parameter on String.prototype.split uses.
> If provided, splits the string at each occurrence of the specified separator, but stops when limit entries have been placed in the array. Any leftover text is not included in the array at all.
[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split#syntax )
While the performance gain may not be significant for small texts, it can be huge for large ones.
I made a benchmark on the following repository : https://github.com/Yovach/benchmark-nodejs
On my machine, I get the following results:
`node index.js`
> normal 1: 570.092ms
> normal 50: 2.284s
> normal 100: 3.543s
`node index-optimized.js`
> optmized 1: 644.301ms
> optmized 50: 929.39ms
> optmized 100: 1.020s
The "benchmarks" numbers are :
- "lorem-1" file contains 1 paragraph of "lorem ipsum"
- "lorem-50" file contains 50 paragraphes of "lorem ipsum"
- "lorem-100" file contains 100 paragraphes of "lorem ipsum"
2023-10-19 00:25:15 +00:00
vercel-release-bot
4c2b34ea7c
v13.5.6-canary.7
2023-10-18 23:24:25 +00:00
vercel-release-bot
2c8606e596
v13.5.6-canary.6
2023-10-18 06:59:43 +00:00
vercel-release-bot
318cbbf9b1
v13.5.6-canary.5
2023-10-17 23:22:33 +00:00
vercel-release-bot
f19dabbc6d
v13.5.6-canary.4
2023-10-17 21:22:19 +00:00
vercel-release-bot
df1d4a16aa
v13.5.6-canary.3
2023-10-17 16:36:35 +00:00
vercel-release-bot
ee9bee96af
v13.5.6-canary.2
2023-10-17 13:26:58 +00:00
vercel-release-bot
24a146680f
v13.5.6-canary.1
2023-10-16 23:24:30 +00:00
vercel-release-bot
3c7d15b992
v13.5.6-canary.0
2023-10-16 22:04:56 +00:00
vercel-release-bot
54145b49f9
v13.5.5
2023-10-16 14:54:10 +00:00
vercel-release-bot
1609da2d95
v13.5.5-canary.19
2023-10-16 13:44:03 +00:00
vercel-release-bot
c1c419fde0
v13.5.5-canary.18
2023-10-16 12:28:32 +00:00
vercel-release-bot
e5ad069c6a
v13.5.5-canary.17
2023-10-15 23:22:55 +00:00
vercel-release-bot
297efa7bc9
v13.5.5-canary.16
2023-10-14 23:22:14 +00:00
vercel-release-bot
46d56c6bca
v13.5.5-canary.15
2023-10-13 23:22:28 +00:00
vercel-release-bot
f3973d84a5
v13.5.5-canary.14
2023-10-13 22:44:36 +00:00
vercel-release-bot
f95a11f804
v13.5.5-canary.13
2023-10-13 16:34:44 +00:00
vercel-release-bot
489a528003
v13.5.5-canary.12
2023-10-13 13:23:54 +00:00
vercel-release-bot
e0cd06531b
v13.5.5-canary.11
2023-10-12 23:23:04 +00:00
vercel-release-bot
f306108b37
v13.5.5-canary.10
2023-10-12 23:09:37 +00:00
vercel-release-bot
8013ef7372
v13.5.5-canary.9
2023-10-12 17:27:01 +00:00
vercel-release-bot
7d8cf1f9f3
v13.5.5-canary.8
2023-10-12 00:58:02 +00:00
vercel-release-bot
ec0a8dac03
v13.5.5-canary.7
2023-10-11 13:05:55 +00:00
vercel-release-bot
e8048b9974
v13.5.5-canary.6
2023-10-11 04:25:10 +00:00
vercel-release-bot
1b7895e0a4
v13.5.5-canary.5
2023-10-10 16:04:34 +00:00
vercel-release-bot
78b91243dd
v13.5.5-canary.4
2023-10-06 15:46:54 +00:00
vercel-release-bot
5aca71cfa6
v13.5.5-canary.3
2023-10-06 12:00:47 +00:00
vercel-release-bot
400c679791
v13.5.5-canary.2
2023-10-04 19:01:01 +00:00
vercel-release-bot
28767ad96a
v13.5.5-canary.1
2023-10-04 13:17:50 +00:00
vercel-release-bot
e34fdf2890
v13.5.5-canary.0
2023-10-03 21:23:02 +00:00
vercel-release-bot
1e8dca4a87
v13.5.4
2023-10-03 01:40:53 +00:00
vercel-release-bot
9e24d6ff3b
v13.5.4-canary.11
2023-10-03 00:36:26 +00:00
vercel-release-bot
db48052a5e
v13.5.4-canary.10
2023-10-02 23:23:48 +00:00
vercel-release-bot
033e8a5c87
v13.5.4-canary.9
2023-10-02 09:02:04 +00:00
vercel-release-bot
489f7fda4b
v13.5.4-canary.8
2023-09-29 22:28:11 +00:00
vercel-release-bot
af3205637d
v13.5.4-canary.7
2023-09-29 12:10:52 +00:00
vercel-release-bot
e18c9dde3f
v13.5.4-canary.6
2023-09-28 15:00:44 +00:00
vercel-release-bot
49f646da14
v13.5.4-canary.5
2023-09-28 13:48:17 +00:00
vercel-release-bot
f5ac079e54
v13.5.4-canary.4
2023-09-27 23:17:38 +00:00
vercel-release-bot
2ff2c0b4b2
v13.5.4-canary.3
2023-09-27 21:43:46 +00:00
vercel-release-bot
778a3c55cf
v13.5.4-canary.2
2023-09-27 17:29:49 +00:00
vercel-release-bot
e3a2805151
v13.5.4-canary.1
2023-09-26 13:31:19 +00:00
vercel-release-bot
df3980da88
v13.5.4-canary.0
2023-09-25 21:03:03 +00:00
Balázs Orbán
37b5cea794
chore: NextJS -> Next.js ( #55961 )
2023-09-25 14:53:11 +00:00
vercel-release-bot
76e06d55a8
v13.5.3
2023-09-25 14:24:47 +00:00
vercel-release-bot
b98ebb2806
v13.5.3-canary.4
2023-09-25 13:16:18 +00:00
vercel-release-bot
ec671bb5f5
v13.5.3-canary.3
2023-09-23 02:02:57 +00:00
vercel-release-bot
c923257c1b
v13.5.3-canary.2
2023-09-22 19:42:08 +00:00
vercel-release-bot
0d6f3ac36b
v13.5.3-canary.1
2023-09-21 23:58:45 +00:00
vercel-release-bot
e9148eda2a
v13.5.3-canary.0
2023-09-21 09:07:13 +00:00
vercel-release-bot
aea80aa53f
v13.5.2
2023-09-20 16:19:18 +00:00
vercel-release-bot
0afffdd024
v13.5.2-canary.2
2023-09-20 15:29:17 +00:00
vercel-release-bot
72434c2737
v13.5.2-canary.1
2023-09-20 12:53:30 +00:00
vercel-release-bot
ac1c062f4f
v13.5.2-canary.0
2023-09-20 10:49:22 +00:00
vercel-release-bot
0c1c7f847e
v13.5.1
2023-09-19 17:20:54 +00:00
vercel-release-bot
974428583e
v13.5.1-canary.1
2023-09-19 16:31:03 +00:00
vercel-release-bot
c652dc8811
v13.5.1-canary.0
2023-09-19 16:10:26 +00:00
vercel-release-bot
ffafad2c35
v13.5.0
2023-09-19 15:36:42 +00:00
vercel-release-bot
4a589ed83d
v13.4.20-canary.41
2023-09-19 13:56:12 +00:00
vercel-release-bot
d01ab6165e
v13.4.20-canary.40
2023-09-18 23:29:58 +00:00
vercel-release-bot
41c89f0cd8
v13.4.20-canary.39
2023-09-18 20:12:27 +00:00
vercel-release-bot
4f98dc6f26
v13.4.20-canary.38
2023-09-18 19:09:41 +00:00
vercel-release-bot
36e12a7415
v13.4.20-canary.37
2023-09-18 14:05:39 +00:00
vercel-release-bot
b2facf5811
v13.4.20-canary.36
2023-09-18 12:03:44 +00:00
vercel-release-bot
096d910423
v13.4.20-canary.35
2023-09-18 09:27:39 +00:00
vercel-release-bot
8fd2ad27b9
v13.4.20-canary.34
2023-09-18 06:25:35 +00:00
vercel-release-bot
981e8fa945
v13.4.20-canary.33
2023-09-16 10:38:10 +00:00
vercel-release-bot
e262627bd9
v13.4.20-canary.32
2023-09-15 19:55:16 +00:00
vercel-release-bot
15292da332
v13.4.20-canary.31
2023-09-15 06:05:22 +00:00
vercel-release-bot
18d703e0b7
v13.4.20-canary.30
2023-09-14 21:50:52 +00:00
vercel-release-bot
be38d02349
v13.4.20-canary.29
2023-09-14 20:56:41 +00:00
vercel-release-bot
800fdc11ae
v13.4.20-canary.28
2023-09-13 22:47:32 +00:00
vercel-release-bot
32e066ff6c
v13.4.20-canary.27
2023-09-13 17:38:35 +00:00
vercel-release-bot
366885f387
v13.4.20-canary.26
2023-09-12 13:20:27 +00:00
vercel-release-bot
8e1626851e
v13.4.20-canary.25
2023-09-12 10:34:24 +00:00
vercel-release-bot
476fe4a1f6
v13.4.20-canary.24
2023-09-11 20:24:23 +00:00
vercel-release-bot
c6ce87f021
v13.4.20-canary.23
2023-09-08 21:41:11 +00:00
vercel-release-bot
d61c6ba4aa
v13.4.20-canary.22
2023-09-08 21:10:48 +00:00
vercel-release-bot
904d8eed39
v13.4.20-canary.21
2023-09-07 23:18:04 +00:00
vercel-release-bot
3062462156
v13.4.20-canary.20
2023-09-07 16:06:41 +00:00
vercel-release-bot
9bb9f07e82
v13.4.20-canary.19
2023-09-07 06:36:23 +00:00
vercel-release-bot
cdfb9de498
v13.4.20-canary.18
2023-09-05 22:49:40 +00:00
vercel-release-bot
1b844600ce
v13.4.20-canary.17
2023-09-05 18:20:51 +00:00
vercel-release-bot
7a1924ed6d
v13.4.20-canary.16
2023-09-04 11:58:51 +00:00
vercel-release-bot
d172e7b72c
v13.4.20-canary.15
2023-08-31 22:23:23 +00:00
vercel-release-bot
e1cc97f3e4
v13.4.20-canary.14
2023-08-31 17:24:11 +00:00
vercel-release-bot
fe191f8e54
v13.4.20-canary.13
2023-08-31 01:53:14 +00:00
vercel-release-bot
928c4c097c
v13.4.20-canary.12
2023-08-29 10:42:17 +00:00
vercel-release-bot
5b62f15586
v13.4.20-canary.11
2023-08-28 14:27:50 +00:00
vercel-release-bot
1491d4c2ed
v13.4.20-canary.10
2023-08-28 13:30:48 +00:00
vercel-release-bot
529a1be6c1
v13.4.20-canary.9
2023-08-25 21:26:50 +00:00
vercel-release-bot
dbfcfd75b7
v13.4.20-canary.8
2023-08-25 14:28:07 +00:00
vercel-release-bot
d8b1ad41a7
v13.4.20-canary.7
2023-08-25 13:43:11 +00:00
vercel-release-bot
96f571218b
v13.4.20-canary.6
2023-08-24 22:34:30 +00:00
vercel-release-bot
9bcd570bc1
v13.4.20-canary.5
2023-08-24 16:38:19 +00:00
vercel-release-bot
80e6f07f01
v13.4.20-canary.4
2023-08-23 23:32:02 +00:00
vercel-release-bot
93e4e6d438
v13.4.20-canary.3
2023-08-23 13:13:36 +00:00
vercel-release-bot
8bbf674a4d
v13.4.20-canary.2
2023-08-22 12:43:03 +00:00
vercel-release-bot
1a56fb9483
v13.4.20-canary.1
2023-08-21 22:41:53 +00:00
Sloane Sturzenegger
ffe2d0400b
Polyfill Array.prototype.at ( #44436 )
...
fixes issue #44141 , discussion #44148
This is missing and has caused me issues in production. Seems like a great polyfill to have, given that Next already polyfills so many adjacent Array methods.
## Bug
- [x] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see [`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md )
## Feature
- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [x] Related issues linked using `fixes #number`
- [ ] [e2e](https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs ) tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see [`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md )
## Documentation / Examples
- [ ] Make sure the linting passes by running `pnpm build && pnpm lint`
- [ ] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md )
Co-authored-by: Eyas Valdez <37156127+spiltbeans@users.noreply.github.com>
Co-authored-by: JJ Kasper <22380829+ijjk@users.noreply.github.com>
2023-08-21 22:09:14 +00:00