Skip to content
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

deps: update fastify to 4.19.0 #5726

Merged
merged 1 commit into from
Jul 1, 2023
Merged

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Jun 30, 2023

Motivation

Keep dependencies up to date

Description

This update includes better error response if URI is too long which we had multiple times in the past

@nflaig nflaig requested a review from a team as a code owner June 30, 2023 18:34
export class ApiError extends Error {
statusCode: number;
constructor(statusCode: number, message?: string) {
statusCode: HttpErrorCodes;
Copy link
Member Author

Choose a reason for hiding this comment

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

This change is required due to fastify/fastify#4823, if number type is used only a undefined payload can be passed to send(). Anyhow a good idea to narrow this type here down to only http error codes.

// eslint-disable-next-line import/no-extraneous-dependencies
import type * as fastify from "fastify";
import {ReqGeneric} from "../types.js";

export type ServerInstance = FastifyInstance;

export type RouteConfig = {
export type RouteConfig = FastifyContextConfig & {
Copy link
Member Author

Choose a reason for hiding this comment

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

@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 4d4d082 Previous: 9ea69ef Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 905.93 us/op 490.26 us/op 1.85
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 45.743 us/op 46.214 us/op 0.99
BLS verify - blst-native 1.2047 ms/op 1.2314 ms/op 0.98
BLS verifyMultipleSignatures 3 - blst-native 2.4472 ms/op 2.5078 ms/op 0.98
BLS verifyMultipleSignatures 8 - blst-native 5.2426 ms/op 5.3846 ms/op 0.97
BLS verifyMultipleSignatures 32 - blst-native 18.949 ms/op 19.435 ms/op 0.98
BLS aggregatePubkeys 32 - blst-native 26.143 us/op 26.304 us/op 0.99
BLS aggregatePubkeys 128 - blst-native 99.705 us/op 101.44 us/op 0.98
getAttestationsForBlock 51.529 ms/op 51.511 ms/op 1.00
isKnown best case - 1 super set check 250.00 ns/op 252.00 ns/op 0.99
isKnown normal case - 2 super set checks 240.00 ns/op 250.00 ns/op 0.96
isKnown worse case - 16 super set checks 246.00 ns/op 248.00 ns/op 0.99
CheckpointStateCache - add get delete 4.9090 us/op 5.2310 us/op 0.94
validate gossip signedAggregateAndProof - struct 2.6944 ms/op 2.8307 ms/op 0.95
validate gossip attestation - struct 1.2836 ms/op 1.3488 ms/op 0.95
pickEth1Vote - no votes 1.2437 ms/op 1.2533 ms/op 0.99
pickEth1Vote - max votes 10.225 ms/op 8.5778 ms/op 1.19
pickEth1Vote - Eth1Data hashTreeRoot value x2048 8.5593 ms/op 8.6072 ms/op 0.99
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 14.639 ms/op 13.727 ms/op 1.07
pickEth1Vote - Eth1Data fastSerialize value x2048 667.28 us/op 660.50 us/op 1.01
pickEth1Vote - Eth1Data fastSerialize tree x2048 7.3047 ms/op 4.5497 ms/op 1.61
bytes32 toHexString 486.00 ns/op 501.00 ns/op 0.97
bytes32 Buffer.toString(hex) 339.00 ns/op 355.00 ns/op 0.95
bytes32 Buffer.toString(hex) from Uint8Array 537.00 ns/op 561.00 ns/op 0.96
bytes32 Buffer.toString(hex) + 0x 349.00 ns/op 359.00 ns/op 0.97
Object access 1 prop 0.17200 ns/op 0.16700 ns/op 1.03
Map access 1 prop 0.17000 ns/op 0.15900 ns/op 1.07
Object get x1000 6.6230 ns/op 6.6650 ns/op 0.99
Map get x1000 0.52300 ns/op 0.53800 ns/op 0.97
Object set x1000 52.950 ns/op 54.266 ns/op 0.98
Map set x1000 43.348 ns/op 43.988 ns/op 0.99
Return object 10000 times 0.23660 ns/op 0.25020 ns/op 0.95
Throw Error 10000 times 4.2184 us/op 4.2675 us/op 0.99
fastMsgIdFn sha256 / 200 bytes 3.4460 us/op 3.5760 us/op 0.96
fastMsgIdFn h32 xxhash / 200 bytes 289.00 ns/op 285.00 ns/op 1.01
fastMsgIdFn h64 xxhash / 200 bytes 386.00 ns/op 398.00 ns/op 0.97
fastMsgIdFn sha256 / 1000 bytes 11.642 us/op 11.716 us/op 0.99
fastMsgIdFn h32 xxhash / 1000 bytes 423.00 ns/op 407.00 ns/op 1.04
fastMsgIdFn h64 xxhash / 1000 bytes 461.00 ns/op 440.00 ns/op 1.05
fastMsgIdFn sha256 / 10000 bytes 104.21 us/op 105.29 us/op 0.99
fastMsgIdFn h32 xxhash / 10000 bytes 1.9290 us/op 1.9530 us/op 0.99
fastMsgIdFn h64 xxhash / 10000 bytes 1.3820 us/op 1.3820 us/op 1.00
enrSubnets - fastDeserialize 64 bits 1.2750 us/op 1.2870 us/op 0.99
enrSubnets - ssz BitVector 64 bits 477.00 ns/op 462.00 ns/op 1.03
enrSubnets - fastDeserialize 4 bits 176.00 ns/op 170.00 ns/op 1.04
enrSubnets - ssz BitVector 4 bits 482.00 ns/op 461.00 ns/op 1.05
prioritizePeers score -10:0 att 32-0.1 sync 2-0 105.15 us/op 109.06 us/op 0.96
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 133.57 us/op 138.43 us/op 0.96
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 171.38 us/op 180.73 us/op 0.95
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 305.66 us/op 316.47 us/op 0.97
prioritizePeers score 0:0 att 64-1 sync 4-1 382.48 us/op 416.31 us/op 0.92
array of 16000 items push then shift 1.6896 us/op 1.6613 us/op 1.02
LinkedList of 16000 items push then shift 9.3630 ns/op 8.8240 ns/op 1.06
array of 16000 items push then pop 97.667 ns/op 91.499 ns/op 1.07
LinkedList of 16000 items push then pop 8.7580 ns/op 8.4360 ns/op 1.04
array of 24000 items push then shift 2.3844 us/op 2.4493 us/op 0.97
LinkedList of 24000 items push then shift 9.1120 ns/op 8.9370 ns/op 1.02
array of 24000 items push then pop 77.551 ns/op 76.860 ns/op 1.01
LinkedList of 24000 items push then pop 8.6990 ns/op 8.6630 ns/op 1.00
intersect bitArray bitLen 8 13.555 ns/op 13.291 ns/op 1.02
intersect array and set length 8 80.739 ns/op 78.389 ns/op 1.03
intersect bitArray bitLen 128 44.786 ns/op 44.280 ns/op 1.01
intersect array and set length 128 1.1250 us/op 1.0817 us/op 1.04
Buffer.concat 32 items 2.8990 us/op 2.9000 us/op 1.00
Uint8Array.set 32 items 2.5280 us/op 2.4860 us/op 1.02
transfer serialized Status (84 B) 2.1260 us/op 2.0960 us/op 1.01
copy serialized Status (84 B) 1.8150 us/op 1.6540 us/op 1.10
transfer serialized SignedVoluntaryExit (112 B) 2.2980 us/op 2.0600 us/op 1.12
copy serialized SignedVoluntaryExit (112 B) 1.7370 us/op 1.7030 us/op 1.02
transfer serialized ProposerSlashing (416 B) 2.1560 us/op 3.0900 us/op 0.70
copy serialized ProposerSlashing (416 B) 1.9740 us/op 3.3380 us/op 0.59
transfer serialized Attestation (485 B) 2.2250 us/op 3.3040 us/op 0.67
copy serialized Attestation (485 B) 2.0010 us/op 2.3570 us/op 0.85
transfer serialized AttesterSlashing (33232 B) 2.4190 us/op 2.8820 us/op 0.84
copy serialized AttesterSlashing (33232 B) 5.8720 us/op 6.5850 us/op 0.89
transfer serialized Small SignedBeaconBlock (128000 B) 3.0770 us/op 3.2180 us/op 0.96
copy serialized Small SignedBeaconBlock (128000 B) 14.780 us/op 16.251 us/op 0.91
transfer serialized Avg SignedBeaconBlock (200000 B) 3.3270 us/op 3.9990 us/op 0.83
copy serialized Avg SignedBeaconBlock (200000 B) 21.403 us/op 71.120 us/op 0.30
transfer serialized BlobsSidecar (524380 B) 3.2440 us/op 3.5740 us/op 0.91
copy serialized BlobsSidecar (524380 B) 160.44 us/op 83.002 us/op 1.93
transfer serialized Big SignedBeaconBlock (1000000 B) 3.8330 us/op 3.4050 us/op 1.13
copy serialized Big SignedBeaconBlock (1000000 B) 274.82 us/op 261.74 us/op 1.05
pass gossip attestations to forkchoice per slot 2.6481 ms/op 2.7137 ms/op 0.98
forkChoice updateHead vc 100000 bc 64 eq 0 2.0554 ms/op 2.0905 ms/op 0.98
forkChoice updateHead vc 600000 bc 64 eq 0 11.837 ms/op 11.922 ms/op 0.99
forkChoice updateHead vc 1000000 bc 64 eq 0 22.019 ms/op 22.282 ms/op 0.99
forkChoice updateHead vc 600000 bc 320 eq 0 16.183 ms/op 16.844 ms/op 0.96
forkChoice updateHead vc 600000 bc 1200 eq 0 78.439 ms/op 83.381 ms/op 0.94
forkChoice updateHead vc 600000 bc 64 eq 1000 20.643 ms/op 21.272 ms/op 0.97
forkChoice updateHead vc 600000 bc 64 eq 10000 22.339 ms/op 23.349 ms/op 0.96
forkChoice updateHead vc 600000 bc 64 eq 300000 31.683 ms/op 31.678 ms/op 1.00
computeDeltas 3.3936 ms/op 3.3367 ms/op 1.02
computeProposerBoostScoreFromBalances 1.7893 ms/op 1.7788 ms/op 1.01
altair processAttestation - 250000 vs - 7PWei normalcase 2.4744 ms/op 2.1912 ms/op 1.13
altair processAttestation - 250000 vs - 7PWei worstcase 3.8109 ms/op 3.3322 ms/op 1.14
altair processAttestation - setStatus - 1/6 committees join 141.49 us/op 143.75 us/op 0.98
altair processAttestation - setStatus - 1/3 committees join 278.31 us/op 288.16 us/op 0.97
altair processAttestation - setStatus - 1/2 committees join 366.42 us/op 382.87 us/op 0.96
altair processAttestation - setStatus - 2/3 committees join 469.45 us/op 476.58 us/op 0.99
altair processAttestation - setStatus - 4/5 committees join 659.01 us/op 679.52 us/op 0.97
altair processAttestation - setStatus - 100% committees join 761.07 us/op 790.97 us/op 0.96
altair processBlock - 250000 vs - 7PWei normalcase 17.364 ms/op 18.355 ms/op 0.95
altair processBlock - 250000 vs - 7PWei normalcase hashState 26.494 ms/op 26.957 ms/op 0.98
altair processBlock - 250000 vs - 7PWei worstcase 53.279 ms/op 52.032 ms/op 1.02
altair processBlock - 250000 vs - 7PWei worstcase hashState 68.846 ms/op 67.317 ms/op 1.02
phase0 processBlock - 250000 vs - 7PWei normalcase 1.9917 ms/op 2.2736 ms/op 0.88
phase0 processBlock - 250000 vs - 7PWei worstcase 28.995 ms/op 28.661 ms/op 1.01
altair processEth1Data - 250000 vs - 7PWei normalcase 487.78 us/op 471.81 us/op 1.03
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 8.5820 us/op 7.3650 us/op 1.17
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 24.064 us/op 19.629 us/op 1.23
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 10.784 us/op 8.8440 us/op 1.22
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 8.3140 us/op 6.9910 us/op 1.19
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 78.662 us/op 85.323 us/op 0.92
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 662.92 us/op 645.22 us/op 1.03
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 922.07 us/op 929.65 us/op 0.99
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 935.85 us/op 910.50 us/op 1.03
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.3358 ms/op 2.4004 ms/op 0.97
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.5674 ms/op 1.5767 ms/op 0.99
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.8906 ms/op 3.8840 ms/op 1.00
Tree 40 250000 create 310.69 ms/op 301.94 ms/op 1.03
Tree 40 250000 get(125000) 184.32 ns/op 182.02 ns/op 1.01
Tree 40 250000 set(125000) 931.39 ns/op 962.36 ns/op 0.97
Tree 40 250000 toArray() 20.736 ms/op 18.200 ms/op 1.14
Tree 40 250000 iterate all - toArray() + loop 19.213 ms/op 17.551 ms/op 1.09
Tree 40 250000 iterate all - get(i) 65.772 ms/op 72.597 ms/op 0.91
MutableVector 250000 create 10.503 ms/op 13.013 ms/op 0.81
MutableVector 250000 get(125000) 6.2550 ns/op 6.3830 ns/op 0.98
MutableVector 250000 set(125000) 239.86 ns/op 266.43 ns/op 0.90
MutableVector 250000 toArray() 2.6298 ms/op 2.7215 ms/op 0.97
MutableVector 250000 iterate all - toArray() + loop 2.7371 ms/op 3.0107 ms/op 0.91
MutableVector 250000 iterate all - get(i) 1.5132 ms/op 1.5488 ms/op 0.98
Array 250000 create 2.4507 ms/op 2.5795 ms/op 0.95
Array 250000 clone - spread 1.0852 ms/op 1.3093 ms/op 0.83
Array 250000 get(125000) 0.56000 ns/op 0.65900 ns/op 0.85
Array 250000 set(125000) 0.62100 ns/op 0.74100 ns/op 0.84
Array 250000 iterate all - loop 108.95 us/op 112.38 us/op 0.97
effectiveBalanceIncrements clone Uint8Array 300000 24.720 us/op 32.577 us/op 0.76
effectiveBalanceIncrements clone MutableVector 300000 349.00 ns/op 433.00 ns/op 0.81
effectiveBalanceIncrements rw all Uint8Array 300000 166.53 us/op 170.49 us/op 0.98
effectiveBalanceIncrements rw all MutableVector 300000 79.621 ms/op 85.318 ms/op 0.93
phase0 afterProcessEpoch - 250000 vs - 7PWei 112.29 ms/op 113.89 ms/op 0.99
phase0 beforeProcessEpoch - 250000 vs - 7PWei 41.529 ms/op 34.495 ms/op 1.20
altair processEpoch - mainnet_e81889 333.77 ms/op 328.16 ms/op 1.02
mainnet_e81889 - altair beforeProcessEpoch 69.772 ms/op 70.828 ms/op 0.99
mainnet_e81889 - altair processJustificationAndFinalization 18.469 us/op 17.286 us/op 1.07
mainnet_e81889 - altair processInactivityUpdates 5.5552 ms/op 5.5243 ms/op 1.01
mainnet_e81889 - altair processRewardsAndPenalties 67.916 ms/op 66.588 ms/op 1.02
mainnet_e81889 - altair processRegistryUpdates 3.1590 us/op 2.3660 us/op 1.34
mainnet_e81889 - altair processSlashings 475.00 ns/op 453.00 ns/op 1.05
mainnet_e81889 - altair processEth1DataReset 540.00 ns/op 497.00 ns/op 1.09
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2777 ms/op 2.0455 ms/op 0.62
mainnet_e81889 - altair processSlashingsReset 4.6290 us/op 4.7100 us/op 0.98
mainnet_e81889 - altair processRandaoMixesReset 4.5230 us/op 4.3220 us/op 1.05
mainnet_e81889 - altair processHistoricalRootsUpdate 764.00 ns/op 777.00 ns/op 0.98
mainnet_e81889 - altair processParticipationFlagUpdates 2.4660 us/op 2.7410 us/op 0.90
mainnet_e81889 - altair processSyncCommitteeUpdates 498.00 ns/op 564.00 ns/op 0.88
mainnet_e81889 - altair afterProcessEpoch 127.32 ms/op 128.87 ms/op 0.99
phase0 processEpoch - mainnet_e58758 350.03 ms/op 361.67 ms/op 0.97
mainnet_e58758 - phase0 beforeProcessEpoch 122.27 ms/op 142.92 ms/op 0.86
mainnet_e58758 - phase0 processJustificationAndFinalization 15.474 us/op 17.221 us/op 0.90
mainnet_e58758 - phase0 processRewardsAndPenalties 44.581 ms/op 64.354 ms/op 0.69
mainnet_e58758 - phase0 processRegistryUpdates 7.7620 us/op 9.2430 us/op 0.84
mainnet_e58758 - phase0 processSlashings 790.00 ns/op 505.00 ns/op 1.56
mainnet_e58758 - phase0 processEth1DataReset 566.00 ns/op 503.00 ns/op 1.13
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.0093 ms/op 1.0817 ms/op 0.93
mainnet_e58758 - phase0 processSlashingsReset 3.9590 us/op 4.0030 us/op 0.99
mainnet_e58758 - phase0 processRandaoMixesReset 8.6550 us/op 4.8710 us/op 1.78
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.0240 us/op 714.00 ns/op 1.43
mainnet_e58758 - phase0 processParticipationRecordUpdates 8.1140 us/op 3.7550 us/op 2.16
mainnet_e58758 - phase0 afterProcessEpoch 100.20 ms/op 98.642 ms/op 1.02
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.3192 ms/op 1.2481 ms/op 1.06
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.5605 ms/op 1.5487 ms/op 1.01
altair processInactivityUpdates - 250000 normalcase 26.750 ms/op 24.347 ms/op 1.10
altair processInactivityUpdates - 250000 worstcase 28.719 ms/op 27.526 ms/op 1.04
phase0 processRegistryUpdates - 250000 normalcase 9.4710 us/op 7.1330 us/op 1.33
phase0 processRegistryUpdates - 250000 badcase_full_deposits 342.78 us/op 258.40 us/op 1.33
phase0 processRegistryUpdates - 250000 worstcase 0.5 127.29 ms/op 126.01 ms/op 1.01
altair processRewardsAndPenalties - 250000 normalcase 66.149 ms/op 66.102 ms/op 1.00
altair processRewardsAndPenalties - 250000 worstcase 77.812 ms/op 69.907 ms/op 1.11
phase0 getAttestationDeltas - 250000 normalcase 8.9204 ms/op 7.1279 ms/op 1.25
phase0 getAttestationDeltas - 250000 worstcase 7.2567 ms/op 7.1400 ms/op 1.02
phase0 processSlashings - 250000 worstcase 3.8763 ms/op 3.7850 ms/op 1.02
altair processSyncCommitteeUpdates - 250000 191.61 ms/op 182.23 ms/op 1.05
BeaconState.hashTreeRoot - No change 284.00 ns/op 266.00 ns/op 1.07
BeaconState.hashTreeRoot - 1 full validator 54.786 us/op 53.629 us/op 1.02
BeaconState.hashTreeRoot - 32 full validator 515.13 us/op 497.31 us/op 1.04
BeaconState.hashTreeRoot - 512 full validator 6.9796 ms/op 5.3350 ms/op 1.31
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 72.392 us/op 61.228 us/op 1.18
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.0023 ms/op 881.47 us/op 1.14
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 13.452 ms/op 11.992 ms/op 1.12
BeaconState.hashTreeRoot - 1 balances 53.813 us/op 49.230 us/op 1.09
BeaconState.hashTreeRoot - 32 balances 502.30 us/op 461.34 us/op 1.09
BeaconState.hashTreeRoot - 512 balances 4.8440 ms/op 4.4921 ms/op 1.08
BeaconState.hashTreeRoot - 250000 balances 75.602 ms/op 77.120 ms/op 0.98
aggregationBits - 2048 els - zipIndexesInBitList 19.819 us/op 15.679 us/op 1.26
regular array get 100000 times 45.084 us/op 32.144 us/op 1.40
wrappedArray get 100000 times 34.768 us/op 42.839 us/op 0.81
arrayWithProxy get 100000 times 17.903 ms/op 14.476 ms/op 1.24
ssz.Root.equals 1.2670 us/op 527.00 ns/op 2.40
byteArrayEquals 689.00 ns/op 515.00 ns/op 1.34
shuffle list - 16384 els 7.4700 ms/op 6.6914 ms/op 1.12
shuffle list - 250000 els 109.45 ms/op 98.668 ms/op 1.11
processSlot - 1 slots 10.320 us/op 9.0480 us/op 1.14
processSlot - 32 slots 1.5331 ms/op 1.3286 ms/op 1.15
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 38.544 ms/op 37.088 ms/op 1.04
getCommitteeAssignments - req 1 vs - 250000 vc 3.0342 ms/op 2.9468 ms/op 1.03
getCommitteeAssignments - req 100 vs - 250000 vc 4.3359 ms/op 4.1744 ms/op 1.04
getCommitteeAssignments - req 1000 vs - 250000 vc 4.6092 ms/op 4.3827 ms/op 1.05
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.0500 ns/op 4.5200 ns/op 1.12
state getBlockRootAtSlot - 250000 vs - 7PWei 805.72 ns/op 929.67 ns/op 0.87
computeProposers - vc 250000 11.718 ms/op 11.431 ms/op 1.03
computeEpochShuffling - vc 250000 110.47 ms/op 104.79 ms/op 1.05
getNextSyncCommittee - vc 250000 190.10 ms/op 184.48 ms/op 1.03
computeSigningRoot for AttestationData 15.168 us/op 13.804 us/op 1.10
hash AttestationData serialized data then Buffer.toString(base64) 2.6091 us/op 2.5023 us/op 1.04
toHexString serialized data 1.2966 us/op 1.0849 us/op 1.20
Buffer.toString(base64) 362.46 ns/op 327.80 ns/op 1.11

by benchmarkbot/action

@wemeetagain wemeetagain merged commit 0c11b03 into unstable Jul 1, 2023
12 checks passed
@wemeetagain wemeetagain deleted the nflaig/update-fastify branch July 1, 2023 15:47
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.10.0 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants