fastify 4.26.2 → 4.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.tap/processinfo/029eb7a1-1942-40bc-98e2-cef3b7a14b5e.json +268 -0
- package/.tap/processinfo/03c196c6-01c3-4268-a9b5-298dff18a873.json +269 -0
- package/.tap/processinfo/04bbabba-8611-4908-9092-dfa9fcc13327.json +268 -0
- package/.tap/processinfo/05d8a743-3edf-4e2d-ae5a-dc99d0855ba5.json +272 -0
- package/.tap/processinfo/07718963-36a8-4d87-82ad-366c877a5247.json +268 -0
- package/.tap/processinfo/08fe3bde-5814-4308-9158-cdf1e47391b7.json +268 -0
- package/.tap/processinfo/0a3e3fb0-eabf-4532-ae80-20434da22678.json +268 -0
- package/.tap/processinfo/0caf2a75-4b3a-46c4-9b41-c7e450e5e15f.json +268 -0
- package/.tap/processinfo/0cf35d52-e5b2-4884-bcf0-b0ab3017b689.json +268 -0
- package/.tap/processinfo/0e666134-5013-4ecd-9ee6-59b22716c39c.json +268 -0
- package/.tap/processinfo/1087b811-4ec4-4f91-92b4-a78a51a437de.json +268 -0
- package/.tap/processinfo/13709ed3-b68c-42cf-8472-b0c4b8a89d2b.json +268 -0
- package/.tap/processinfo/13ac2f18-d0e0-439f-bc86-2ff0119af857.json +268 -0
- package/.tap/processinfo/13e47e0e-f6e8-4381-8a42-923b661f4a4f.json +268 -0
- package/.tap/processinfo/143f7d43-b8e8-4666-b482-f28fb37160ee.json +268 -0
- package/.tap/processinfo/14f3801d-03ab-4db3-9df5-c5d47e0a8cf0.json +270 -0
- package/.tap/processinfo/15a07dad-4bcd-442c-95e0-30c31f2b9818.json +273 -0
- package/.tap/processinfo/191ad3ad-04d8-4fb9-b119-ad2811f9b925.json +243 -0
- package/.tap/processinfo/1b25d54b-62d3-44cd-b581-31e705522fae.json +268 -0
- package/.tap/processinfo/1b7cb260-f04b-4135-a4fe-093081c4706f.json +268 -0
- package/.tap/processinfo/1e395d63-4815-4c77-aa47-df3709cc0ef9.json +268 -0
- package/.tap/processinfo/1e7f6a54-3abf-4771-863a-585cba110aec.json +268 -0
- package/.tap/processinfo/21a15e1d-0b41-47d8-b03d-0ba130969034.json +244 -0
- package/.tap/processinfo/21e02016-9ecd-4983-8417-9c74d224644f.json +269 -0
- package/.tap/processinfo/2327d941-d0d5-4762-b386-02a9a27ad28e.json +268 -0
- package/.tap/processinfo/23d39204-eac9-4f57-8db4-ffa996227fbd.json +268 -0
- package/.tap/processinfo/2493875a-0ac6-4d53-993c-f44471fd0678.json +268 -0
- package/.tap/processinfo/2698669f-f1e7-4a12-a687-8d58177be2b0.json +269 -0
- package/.tap/processinfo/2862b053-0a3d-46d7-9381-ffcb06287609.json +268 -0
- package/.tap/processinfo/2ac1b8d6-ac92-40e2-a59a-7681069f487c.json +268 -0
- package/.tap/processinfo/2c75e5f7-c4ef-47e4-a1c4-105eef6c0fab.json +242 -0
- package/.tap/processinfo/2e2c45cd-718b-4e5a-bf88-f801630f2803.json +268 -0
- package/.tap/processinfo/2f9ca478-3e03-4cce-a0bc-fcdc86d7c316.json +268 -0
- package/.tap/processinfo/30e3117f-fb74-456f-8f02-527e9eb9fcc3.json +268 -0
- package/.tap/processinfo/332be679-63c7-4b49-8b87-ef55995ada2d.json +268 -0
- package/.tap/processinfo/37c36f95-07f9-4ef0-8ab4-9e107d51b605.json +269 -0
- package/.tap/processinfo/3874eae2-f3db-44ef-9a9f-c8169d4b2b76.json +268 -0
- package/.tap/processinfo/38a7c3da-a411-41d0-8993-9deefd23500d.json +268 -0
- package/.tap/processinfo/3a7b6dbd-e153-4ce5-b557-21fb82009983.json +269 -0
- package/.tap/processinfo/3c6731ec-936d-470f-b7b0-0c87b54be051.json +268 -0
- package/.tap/processinfo/3c850ea9-4ef0-4044-a3fd-fbadfa9d543e.json +268 -0
- package/.tap/processinfo/3e4e15e0-a325-46f0-be57-5fd374560b7a.json +269 -0
- package/.tap/processinfo/3ed868e0-887c-402a-9f22-b1fdb74b4da0.json +268 -0
- package/.tap/processinfo/405498d7-5854-4ce1-a7dc-06920932f26d.json +268 -0
- package/.tap/processinfo/40b7eb19-ae35-4490-8a11-eb91a573c590.json +268 -0
- package/.tap/processinfo/40bb1260-d856-4248-8939-a0a05e322041.json +268 -0
- package/.tap/processinfo/41252e0b-7f69-44cc-b356-dd94bcbfdb29.json +268 -0
- package/.tap/processinfo/418fa710-e2fd-4508-b533-c179958da464.json +269 -0
- package/.tap/processinfo/433ef009-63aa-48fe-8e5d-c725228fa2fc.json +268 -0
- package/.tap/processinfo/44bf577c-9c01-4197-bd29-2e1ae888c4d4.json +268 -0
- package/.tap/processinfo/458fb7f2-20b9-48a2-8853-403c9851f605.json +268 -0
- package/.tap/processinfo/46b9892b-bb23-4b86-b0fa-9297f08c611a.json +268 -0
- package/.tap/processinfo/46bd9aaf-6cf3-4bd5-b90d-e136a7299a8e.json +268 -0
- package/.tap/processinfo/4779aa5f-e57a-4fcc-87e2-7d0bd4fca27f.json +268 -0
- package/.tap/processinfo/47b73f4b-ab31-49e1-97fd-8436dbe4bdf3.json +269 -0
- package/.tap/processinfo/49dba52e-e0c9-445d-8e9d-6d9ebe3ce6c4.json +268 -0
- package/.tap/processinfo/4b1dbc61-4e65-4c56-9784-2036f369038a.json +268 -0
- package/.tap/processinfo/4b6f0b40-43ef-4668-83a0-e07e28509df5.json +268 -0
- package/.tap/processinfo/4c236f70-f532-460b-8f7a-dd973301d493.json +268 -0
- package/.tap/processinfo/4d92b707-a268-48b8-885b-004d3a288c41.json +269 -0
- package/.tap/processinfo/4ff10bae-7c97-4c0a-b712-6c0d2f8c0e8e.json +270 -0
- package/.tap/processinfo/50f95bd5-ae12-4d83-99f4-ae9b0690c6a8.json +268 -0
- package/.tap/processinfo/557e4a49-d99c-4a63-b2f2-f33d897ab874.json +268 -0
- package/.tap/processinfo/589fd21a-8319-4abf-8cf7-82cb4a463a4b.json +269 -0
- package/.tap/processinfo/5a872f3a-949f-40be-8004-d739d034255c.json +272 -0
- package/.tap/processinfo/5abc301a-23da-424d-891e-3afbaff9156c.json +269 -0
- package/.tap/processinfo/5c31614c-a766-4837-ab59-dd6977166f72.json +253 -0
- package/.tap/processinfo/5d1e90c8-d819-4901-b022-f9ea4cd81978.json +268 -0
- package/.tap/processinfo/5d283e67-f31d-4fa8-a559-a1d8e82ee046.json +269 -0
- package/.tap/processinfo/5df505bc-6a4b-4c41-822f-51e2d7111de8.json +268 -0
- package/.tap/processinfo/5eaf64a2-fbfd-40e7-b391-c30f744b2bf1.json +269 -0
- package/.tap/processinfo/5ef5ede0-6436-4938-8401-d32ad4bffd5d.json +268 -0
- package/.tap/processinfo/606f05c0-8293-41db-bc92-eea82123697f.json +269 -0
- package/.tap/processinfo/6446806d-6cab-4c1d-a9ed-6bccaf3c4ea9.json +268 -0
- package/.tap/processinfo/64da7e08-925d-444d-98de-6568c6115d8d.json +269 -0
- package/.tap/processinfo/6917da6d-d2dc-466a-a893-7fb7412dde96.json +268 -0
- package/.tap/processinfo/69bbeee0-c398-4ccf-98b3-fb625a63bab4.json +268 -0
- package/.tap/processinfo/6da6ea8f-3370-4703-b230-90159531f766.json +268 -0
- package/.tap/processinfo/6ecffe1f-3016-4c11-9294-b488baced99f.json +268 -0
- package/.tap/processinfo/6f23f41f-ccbd-48cb-9ab6-311db0cfb65c.json +270 -0
- package/.tap/processinfo/70168912-9bb2-4334-bb89-041f1764cddf.json +268 -0
- package/.tap/processinfo/713a674e-40e1-46b4-866e-949d57c1a9f9.json +270 -0
- package/.tap/processinfo/730254d4-eacb-4cdf-80f4-8da22341cde5.json +268 -0
- package/.tap/processinfo/7344e559-c546-416f-8f1b-0f9fe12c6f02.json +268 -0
- package/.tap/processinfo/7556217a-0155-448f-b4d4-bec1bb0f6040.json +269 -0
- package/.tap/processinfo/7572079c-166c-4c4c-85ff-89b9430b214f.json +268 -0
- package/.tap/processinfo/7808180f-1974-47cd-bba2-2d6b8b711d65.json +273 -0
- package/.tap/processinfo/796dde83-da66-4db2-8d27-d45a3627c9c7.json +268 -0
- package/.tap/processinfo/7979819f-3723-48be-9f55-be700e689441.json +270 -0
- package/.tap/processinfo/7a664d39-d7f5-42f9-89df-15563048fab6.json +268 -0
- package/.tap/processinfo/7b047b72-01d9-4217-857c-93341651b4b3.json +269 -0
- package/.tap/processinfo/7ce41af6-7961-45ae-8c6f-b6e1c5692a48.json +268 -0
- package/.tap/processinfo/7e1de1c6-127e-463d-9357-081ee33ef5ce.json +269 -0
- package/.tap/processinfo/81ac7a7f-b0c0-4ef6-82cb-c718ea84e152.json +268 -0
- package/.tap/processinfo/851a058f-a497-4b10-a0b7-c9182d9c4d5a.json +268 -0
- package/.tap/processinfo/86502974-c245-4194-ade4-d9c6fdbb757e.json +268 -0
- package/.tap/processinfo/86b9786f-4a98-43b8-882a-5f936b876f08.json +241 -0
- package/.tap/processinfo/8a3fe726-86ab-4300-8d73-7eacbbc02a05.json +268 -0
- package/.tap/processinfo/8adf928b-c963-4ba0-9c35-606fcbd8a2aa.json +272 -0
- package/.tap/processinfo/8b31a6d8-1a33-4a27-93ca-1c5b364be068.json +240 -0
- package/.tap/processinfo/8ec12773-6b18-49a2-8e52-874c797df965.json +833 -0
- package/.tap/processinfo/8edb9502-3420-42fb-a602-e5de93be2df1.json +268 -0
- package/.tap/processinfo/8fc572e6-9828-4f98-a49c-9e081b2193c4.json +242 -0
- package/.tap/processinfo/8fee2d30-c5dd-4fae-9cf2-2ef8dd0f90de.json +834 -0
- package/.tap/processinfo/92cc0496-5f26-4370-8212-18136b972f99.json +268 -0
- package/.tap/processinfo/93a3f064-3f6e-4f49-becb-f7925f2961a9.json +268 -0
- package/.tap/processinfo/967e3697-8310-4a19-8dd5-927ac8bd6c79.json +269 -0
- package/.tap/processinfo/97225e23-9d30-4287-b3f5-72bccebec50b.json +268 -0
- package/.tap/processinfo/9a363bc6-4e65-47e8-94ca-26a9db428fb4.json +268 -0
- package/.tap/processinfo/9d2fe462-57fa-43f1-b02c-d188f15de30b.json +270 -0
- package/.tap/processinfo/a00b6cda-feb7-4b8a-8179-4c43bc29d670.json +269 -0
- package/.tap/processinfo/a017cbd5-4ac7-49e1-8c77-1bf4f6e7f2a6.json +271 -0
- package/.tap/processinfo/a1277309-1984-48f8-b60b-f5e8639736be.json +271 -0
- package/.tap/processinfo/a16bf53e-4337-48ff-88fa-67f55738e0f5.json +268 -0
- package/.tap/processinfo/a3a9848f-440e-41bb-9b0b-568bcfee0ddc.json +268 -0
- package/.tap/processinfo/a468c11f-f2f1-4e92-9ba0-6d28b6569b72.json +268 -0
- package/.tap/processinfo/a5880465-68f1-46b3-84a5-0da389d0bc67.json +268 -0
- package/.tap/processinfo/a666f394-39b4-44ad-8e74-abebf74dde3b.json +270 -0
- package/.tap/processinfo/af09d8ca-7053-4410-b514-b22c47f5979f.json +268 -0
- package/.tap/processinfo/af203309-28aa-459d-a56e-d88833695521.json +268 -0
- package/.tap/processinfo/afa2f7b6-dcd2-4d90-bf3c-54ba8b6800eb.json +268 -0
- package/.tap/processinfo/b231291d-ef14-4ff0-85f9-38a73a5408f8.json +268 -0
- package/.tap/processinfo/b3d3f2a1-a9fc-4d88-b122-fae90248cd59.json +268 -0
- package/.tap/processinfo/b834bf83-26c4-403a-8e91-eb15fe4b0b5d.json +268 -0
- package/.tap/processinfo/b8786fd7-47df-4ac1-8d6f-2d4c7623c681.json +268 -0
- package/.tap/processinfo/b9758f53-7f5a-4b03-8684-8a42ad644e5a.json +268 -0
- package/.tap/processinfo/bd194ea2-a21a-4604-b225-ee48abf1e607.json +242 -0
- package/.tap/processinfo/bd7ced53-3872-43b7-ad73-3352e50b728b.json +268 -0
- package/.tap/processinfo/be50295b-7e50-46cd-8bf1-637bf222699c.json +268 -0
- package/.tap/processinfo/bec61dd9-aa52-4e6c-8e37-5c9c10e935fd.json +268 -0
- package/.tap/processinfo/c015adf9-1d60-447e-87b5-b2031fe55bba.json +268 -0
- package/.tap/processinfo/c0666afa-7f64-45bd-97fb-145df1380157.json +268 -0
- package/.tap/processinfo/c2c0c012-c1c0-4457-84d6-dadba8396c94.json +268 -0
- package/.tap/processinfo/c3dd3ecd-737b-47ce-a917-54341c7bbed3.json +268 -0
- package/.tap/processinfo/c41ac06d-64b8-4bb3-bf56-0551f5a48f4b.json +268 -0
- package/.tap/processinfo/c4235bfb-a2aa-4271-9c6b-3ceb370219b1.json +268 -0
- package/.tap/processinfo/c4e6f24f-288c-493c-b6f0-02924aeb6758.json +270 -0
- package/.tap/processinfo/c54227bb-4a7b-40bb-bfe6-b54fe55078f3.json +268 -0
- package/.tap/processinfo/c699de91-3b0b-4466-9418-6910a3eb640a.json +269 -0
- package/.tap/processinfo/c74e2f37-451a-4577-ac18-e597fbd9a1d4.json +269 -0
- package/.tap/processinfo/c90cccec-5b4b-445f-a935-ac22859675d0.json +252 -0
- package/.tap/processinfo/c9dd6c7d-0d16-45e5-87ae-117388bf2994.json +268 -0
- package/.tap/processinfo/ca2e48fb-58c5-47fc-ad2e-263838aea42c.json +272 -0
- package/.tap/processinfo/ca87351d-c710-45c1-838a-16bccac59874.json +273 -0
- package/.tap/processinfo/cdb4a671-5776-4944-91b9-c456c58841ef.json +268 -0
- package/.tap/processinfo/cf10fdc8-6a87-447a-9e12-45f447af61f3.json +244 -0
- package/.tap/processinfo/cf3f1f08-643e-4f24-82ca-40f7a349c3d1.json +268 -0
- package/.tap/processinfo/d091172a-06a5-469b-82a9-8fefe3dd99da.json +240 -0
- package/.tap/processinfo/d1675431-61d6-45f8-a010-6e654112a00a.json +272 -0
- package/.tap/processinfo/d2d54aa2-c221-4ad4-b6b7-0c58e3c3679c.json +269 -0
- package/.tap/processinfo/d4f3c95a-ddbe-419d-bce0-dd6acceee21f.json +268 -0
- package/.tap/processinfo/d54ed8f1-43c3-478a-90d3-2c8aced723f2.json +269 -0
- package/.tap/processinfo/d6e5a2a6-4647-4d98-916c-aec4ace54a65.json +268 -0
- package/.tap/processinfo/d7280c64-45e6-4b12-affc-3ac9a5d4014a.json +268 -0
- package/.tap/processinfo/d82c8367-d825-4405-88df-07298f6ef840.json +269 -0
- package/.tap/processinfo/d8f97e53-e921-4d33-9c8d-2f7e807a9425.json +268 -0
- package/.tap/processinfo/da546a73-9714-4f8c-bdbb-e42730edbcfa.json +268 -0
- package/.tap/processinfo/da7fb7fb-1da4-49f8-a3ee-d4ea623c01a5.json +268 -0
- package/.tap/processinfo/daa6a016-4f0c-4050-923c-2022e0bb21d8.json +268 -0
- package/.tap/processinfo/db9a251d-8540-4719-b464-e7d5febd97d1.json +240 -0
- package/.tap/processinfo/dc10c603-8e58-4611-baa3-44da2578d07a.json +268 -0
- package/.tap/processinfo/dde56c1a-858c-47cc-b0bb-61279620ac17.json +268 -0
- package/.tap/processinfo/e0d9c4ea-f7c7-4c64-8ced-66dc6f0ac5d2.json +271 -0
- package/.tap/processinfo/e121454f-5dfa-4209-ba15-4c39840871f2.json +831 -0
- package/.tap/processinfo/e1f43e40-c3fe-4eb8-a713-d5910cc6b25a.json +268 -0
- package/.tap/processinfo/e4575e7a-f00e-488b-94e1-8f877b54725e.json +268 -0
- package/.tap/processinfo/e9ad667e-8603-4488-af64-449cc9532803.json +268 -0
- package/.tap/processinfo/eb26a697-e5e2-4730-aeea-bcb9c49afd4d.json +268 -0
- package/.tap/processinfo/eb29d1c3-feaf-4744-9d84-cf257e8269b0.json +268 -0
- package/.tap/processinfo/ee720c0a-ed64-4e7e-8c0a-139c7b9725d2.json +268 -0
- package/.tap/processinfo/ef88c13a-87b2-49e4-a683-7b812505cd6f.json +268 -0
- package/.tap/processinfo/f4ed6948-dac0-4128-9f86-d083b6918ea7.json +268 -0
- package/.tap/processinfo/f7544c01-8ac7-4e42-8ad5-c4d62e094d1f.json +270 -0
- package/.tap/processinfo/f7cee4b3-7bcc-4591-a628-5629b0b41c9e.json +268 -0
- package/.tap/processinfo/f9c0a1f7-c1a4-44d3-ae3f-8c1eb42cd746.json +269 -0
- package/.tap/processinfo/fc46b4da-79db-4201-af7e-34bb17f92d69.json +270 -0
- package/.tap/processinfo/fccc0056-03c4-40cb-9d0b-2db4bbe573c1.json +268 -0
- package/.tap/processinfo/fd2df572-54d7-4ce7-b7aa-a2b4b00d4127.json +254 -0
- package/.tap/processinfo/fea9377f-b473-484d-bee6-ac7f49e50937.json +269 -0
- package/.tap/processinfo/feb516dc-abda-46e6-9b42-d37adfc63366.json +268 -0
- package/.tap/processinfo/ff0fda4c-aa2e-4236-906e-fdfb6bd6632e.json +269 -0
- package/.tap/test-results/test/404s.test.js.tap +623 -0
- package/.tap/test-results/test/500s.test.js.tap +64 -0
- package/.tap/test-results/test/allowUnsafeRegex.test.js.tap +36 -0
- package/.tap/test-results/test/als.test.js.tap +15 -0
- package/.tap/test-results/test/async-await.test.js.tap +184 -0
- package/.tap/test-results/test/async-dispose.test.js.tap +8 -0
- package/.tap/test-results/test/async_hooks.test.js.tap +10 -0
- package/.tap/test-results/test/bodyLimit.test.js.tap +48 -0
- package/.tap/test-results/test/buffer.test.js.tap +20 -0
- package/.tap/test-results/test/build/error-serializer.test.js.tap +8 -0
- package/.tap/test-results/test/build/version.test.js.tap +7 -0
- package/.tap/test-results/test/case-insensitive.test.js.tap +36 -0
- package/.tap/test-results/test/chainable.test.js.tap +17 -0
- package/.tap/test-results/test/check.test.js.tap +10 -0
- package/.tap/test-results/test/childLoggerFactory.test.js.tap +23 -0
- package/.tap/test-results/test/client-timeout.test.js.tap +7 -0
- package/.tap/test-results/test/close-pipelining.test.js.tap +15 -0
- package/.tap/test-results/test/close.test.js.tap +172 -0
- package/.tap/test-results/test/connectionTimeout.test.js.tap +12 -0
- package/.tap/test-results/test/constrained-routes.test.js.tap +173 -0
- package/.tap/test-results/test/content-length.test.js.tap +46 -0
- package/.tap/test-results/test/content-parser.test.js.tap +266 -0
- package/.tap/test-results/test/content-type.test.js.tap +14 -0
- package/.tap/test-results/test/context-config.test.js.tap +41 -0
- package/.tap/test-results/test/copy.test.js.tap +14 -0
- package/.tap/test-results/test/custom-http-server.test.js.tap +30 -0
- package/.tap/test-results/test/custom-parser-async.test.js.tap +21 -0
- package/.tap/test-results/test/custom-parser.0.test.js.tap +199 -0
- package/.tap/test-results/test/custom-parser.1.test.js.tap +90 -0
- package/.tap/test-results/test/custom-parser.2.test.js.tap +22 -0
- package/.tap/test-results/test/custom-parser.3.test.js.tap +53 -0
- package/.tap/test-results/test/custom-parser.4.test.js.tap +45 -0
- package/.tap/test-results/test/custom-parser.5.test.js.tap +41 -0
- package/.tap/test-results/test/custom-querystring-parser.test.js.tap +46 -0
- package/.tap/test-results/test/decorator.test.js.tap +465 -0
- package/.tap/test-results/test/delete.test.js.tap +110 -0
- package/.tap/test-results/test/diagnostics-channel/404.test.js.tap +15 -0
- package/.tap/test-results/test/diagnostics-channel/async-delay-request.test.js.tap +25 -0
- package/.tap/test-results/test/diagnostics-channel/async-request.test.js.tap +24 -0
- package/.tap/test-results/test/diagnostics-channel/error-before-handler.test.js.tap +9 -0
- package/.tap/test-results/test/diagnostics-channel/error-request.test.js.tap +20 -0
- package/.tap/test-results/test/diagnostics-channel/error-status.test.js.tap +10 -0
- package/.tap/test-results/test/diagnostics-channel/init.test.js.tap +14 -0
- package/.tap/test-results/test/diagnostics-channel/sync-delay-request.test.js.tap +16 -0
- package/.tap/test-results/test/diagnostics-channel/sync-request-reply.test.js.tap +16 -0
- package/.tap/test-results/test/diagnostics-channel/sync-request.test.js.tap +19 -0
- package/.tap/test-results/test/encapsulated-child-logger-factory.test.js.tap +18 -0
- package/.tap/test-results/test/encapsulated-error-handler.test.js.tap +243 -0
- package/.tap/test-results/test/esm/errorCodes.test.mjs.tap +9 -0
- package/.tap/test-results/test/esm/esm.test.mjs.tap +8 -0
- package/.tap/test-results/test/esm/index.test.js.tap +8 -0
- package/.tap/test-results/test/fastify-instance.test.js.tap +114 -0
- package/.tap/test-results/test/findRoute.test.js.tap +37 -0
- package/.tap/test-results/test/fluent-schema.test.js.tap +36 -0
- package/.tap/test-results/test/genReqId.test.js.tap +106 -0
- package/.tap/test-results/test/get.test.js.tap +151 -0
- package/.tap/test-results/test/handler-context.test.js.tap +19 -0
- package/.tap/test-results/test/has-route.test.js.tap +30 -0
- package/.tap/test-results/test/head.test.js.tap +130 -0
- package/.tap/test-results/test/header-overflow.test.js.tap +16 -0
- package/.tap/test-results/test/hooks-async.test.js.tap +286 -0
- package/.tap/test-results/test/hooks.on-listen.test.js.tap +311 -0
- package/.tap/test-results/test/hooks.on-ready.test.js.tap +151 -0
- package/.tap/test-results/test/hooks.test.js.tap +966 -0
- package/.tap/test-results/test/http2/closing.test.js.tap +35 -0
- package/.tap/test-results/test/http2/constraint.test.js.tap +32 -0
- package/.tap/test-results/test/http2/head.test.js.tap +9 -0
- package/.tap/test-results/test/http2/missing-http2-module.test.js.tap +8 -0
- package/.tap/test-results/test/http2/plain.test.js.tap +22 -0
- package/.tap/test-results/test/http2/secure-with-fallback.test.js.tap +40 -0
- package/.tap/test-results/test/http2/secure.test.js.tap +27 -0
- package/.tap/test-results/test/http2/unknown-http-method.test.js.tap +9 -0
- package/.tap/test-results/test/https/custom-https-server.test.js.tap +10 -0
- package/.tap/test-results/test/https/https.test.js.tap +45 -0
- package/.tap/test-results/test/imports.test.js.tap +14 -0
- package/.tap/test-results/test/inject.test.js.tap +165 -0
- package/.tap/test-results/test/internals/all.test.js.tap +42 -0
- package/.tap/test-results/test/internals/contentTypeParser.test.js.tap +14 -0
- package/.tap/test-results/test/internals/context.test.js.tap +14 -0
- package/.tap/test-results/test/internals/decorator.test.js.tap +51 -0
- package/.tap/test-results/test/internals/errors.test.js.tap +1212 -0
- package/.tap/test-results/test/internals/handleRequest.test.js.tap +69 -0
- package/.tap/test-results/test/internals/hookRunner.test.js.tap +143 -0
- package/.tap/test-results/test/internals/hooks.test.js.tap +45 -0
- package/.tap/test-results/test/internals/initialConfig.test.js.tap +125 -0
- package/.tap/test-results/test/internals/logger.test.js.tap +71 -0
- package/.tap/test-results/test/internals/plugin.test.js.tap +48 -0
- package/.tap/test-results/test/internals/reply-serialize.test.js.tap +166 -0
- package/.tap/test-results/test/internals/reply.test.js.tap +688 -0
- package/.tap/test-results/test/internals/reqIdGenFactory.test.js.tap +74 -0
- package/.tap/test-results/test/internals/request-validate.test.js.tap +384 -0
- package/.tap/test-results/test/internals/request.test.js.tap +163 -0
- package/.tap/test-results/test/internals/server.test.js.tap +30 -0
- package/.tap/test-results/test/internals/validation.test.js.tap +121 -0
- package/.tap/test-results/test/keepAliveTimeout.test.js.tap +12 -0
- package/.tap/test-results/test/listen.1.test.js.tap +31 -0
- package/.tap/test-results/test/listen.2.test.js.tap +46 -0
- package/.tap/test-results/test/listen.3.test.js.tap +25 -0
- package/.tap/test-results/test/listen.4.test.js.tap +51 -0
- package/.tap/test-results/test/lock.test.js.tap +29 -0
- package/.tap/test-results/test/logger/instantiation.test.js.tap +92 -0
- package/.tap/test-results/test/logger/logging.test.js.tap +117 -0
- package/.tap/test-results/test/logger/options.test.js.tap +165 -0
- package/.tap/test-results/test/logger/request.test.js.tap +82 -0
- package/.tap/test-results/test/logger/response.test.js.tap +38 -0
- package/.tap/test-results/test/maxRequestsPerSocket.test.js.tap +44 -0
- package/.tap/test-results/test/method-missing.test.js.tap +8 -0
- package/.tap/test-results/test/middleware.test.js.tap +17 -0
- package/.tap/test-results/test/mkcalendar.test.js.tap +43 -0
- package/.tap/test-results/test/mkcol.test.js.tap +14 -0
- package/.tap/test-results/test/move.test.js.tap +15 -0
- package/.tap/test-results/test/noop-set.test.js.tap +8 -0
- package/.tap/test-results/test/nullable-validation.test.js.tap +36 -0
- package/.tap/test-results/test/options.error-handler.test.js.tap +186 -0
- package/.tap/test-results/test/options.test.js.tap +174 -0
- package/.tap/test-results/test/output-validation.test.js.tap +66 -0
- package/.tap/test-results/test/patch.error-handler.test.js.tap +206 -0
- package/.tap/test-results/test/patch.test.js.tap +182 -0
- package/.tap/test-results/test/plugin.1.test.js.tap +78 -0
- package/.tap/test-results/test/plugin.2.test.js.tap +102 -0
- package/.tap/test-results/test/plugin.3.test.js.tap +58 -0
- package/.tap/test-results/test/plugin.4.test.js.tap +164 -0
- package/.tap/test-results/test/post-empty-body.test.js.tap +8 -0
- package/.tap/test-results/test/pretty-print.test.js.tap +82 -0
- package/.tap/test-results/test/promises.test.js.tap +46 -0
- package/.tap/test-results/test/propfind.test.js.tap +43 -0
- package/.tap/test-results/test/proppatch.test.js.tap +29 -0
- package/.tap/test-results/test/proto-poisoning.test.js.tap +47 -0
- package/.tap/test-results/test/put.error-handler.test.js.tap +206 -0
- package/.tap/test-results/test/put.test.js.tap +182 -0
- package/.tap/test-results/test/register.test.js.tap +61 -0
- package/.tap/test-results/test/reply-code.test.js.tap +40 -0
- package/.tap/test-results/test/reply-earlyHints.test.js.tap +22 -0
- package/.tap/test-results/test/reply-error.test.js.tap +643 -0
- package/.tap/test-results/test/reply-trailers.test.js.tap +176 -0
- package/.tap/test-results/test/report.test.js.tap +43 -0
- package/.tap/test-results/test/request-error.test.js.tap +98 -0
- package/.tap/test-results/test/request-id.test.js.tap +38 -0
- package/.tap/test-results/test/request.deprecated.test.js.tap +13 -0
- package/.tap/test-results/test/requestTimeout.test.js.tap +21 -0
- package/.tap/test-results/test/route-hooks.test.js.tap +498 -0
- package/.tap/test-results/test/route-prefix.test.js.tap +195 -0
- package/.tap/test-results/test/route-shorthand.test.js.tap +190 -0
- package/.tap/test-results/test/route.1.test.js.tap +93 -0
- package/.tap/test-results/test/route.2.test.js.tap +28 -0
- package/.tap/test-results/test/route.3.test.js.tap +39 -0
- package/.tap/test-results/test/route.4.test.js.tap +32 -0
- package/.tap/test-results/test/route.5.test.js.tap +54 -0
- package/.tap/test-results/test/route.6.test.js.tap +81 -0
- package/.tap/test-results/test/route.7.test.js.tap +93 -0
- package/.tap/test-results/test/route.8.test.js.tap +38 -0
- package/.tap/test-results/test/router-options.test.js.tap +104 -0
- package/.tap/test-results/test/same-shape.test.js.tap +22 -0
- package/.tap/test-results/test/schema-examples.test.js.tap +85 -0
- package/.tap/test-results/test/schema-feature.test.js.tap +445 -0
- package/.tap/test-results/test/schema-serialization.test.js.tap +194 -0
- package/.tap/test-results/test/schema-special-usage.test.js.tap +186 -0
- package/.tap/test-results/test/schema-validation.test.js.tap +199 -0
- package/.tap/test-results/test/search.test.js.tap +77 -0
- package/.tap/test-results/test/serialize-response.test.js.tap +26 -0
- package/.tap/test-results/test/server.test.js.tap +65 -0
- package/.tap/test-results/test/set-error-handler.test.js.tap +7 -0
- package/.tap/test-results/test/skip-reply-send.test.js.tap +272 -0
- package/.tap/test-results/test/stream.1.test.js.tap +36 -0
- package/.tap/test-results/test/stream.2.test.js.tap +20 -0
- package/.tap/test-results/test/stream.3.test.js.tap +34 -0
- package/.tap/test-results/test/stream.4.test.js.tap +40 -0
- package/.tap/test-results/test/stream.5.test.js.tap +37 -0
- package/.tap/test-results/test/sync-routes.test.js.tap +19 -0
- package/.tap/test-results/test/throw.test.js.tap +116 -0
- package/.tap/test-results/test/trace.test.js.tap +7 -0
- package/.tap/test-results/test/trust-proxy.test.js.tap +109 -0
- package/.tap/test-results/test/type-provider.test.js.tap +12 -0
- package/.tap/test-results/test/unlock.test.js.tap +14 -0
- package/.tap/test-results/test/upgrade.test.js.tap +8 -0
- package/.tap/test-results/test/url-rewriting.test.js.tap +39 -0
- package/.tap/test-results/test/useSemicolonDelimiter.test.js.tap +33 -0
- package/.tap/test-results/test/validation-error-handling.test.js.tap +180 -0
- package/.tap/test-results/test/versioned-routes.test.js.tap +151 -0
- package/.tap/test-results/test/web-api.test.js.tap +51 -0
- package/.tap/test-results/test/wrapThenable.test.js.tap +11 -0
- package/.taprc +1 -0
- package/README.md +4 -0
- package/SPONSORS.md +1 -1
- package/docs/Guides/Database.md +2 -2
- package/docs/Guides/Delay-Accepting-Requests.md +1 -1
- package/docs/Guides/Detecting-When-Clients-Abort.md +6 -4
- package/docs/Guides/Ecosystem.md +21 -11
- package/docs/Guides/Getting-Started.md +2 -0
- package/docs/Guides/Plugins-Guide.md +1 -1
- package/docs/Guides/Prototype-Poisoning.md +1 -1
- package/docs/Reference/Errors.md +2 -3
- package/docs/Reference/Hooks.md +5 -3
- package/docs/Reference/LTS.md +32 -20
- package/docs/Reference/Logging.md +1 -1
- package/docs/Reference/Reply.md +8 -8
- package/docs/Reference/Request.md +2 -2
- package/docs/Reference/Routes.md +3 -2
- package/docs/Reference/Server.md +11 -5
- package/docs/Reference/Type-Providers.md +10 -4
- package/docs/Reference/TypeScript.md +25 -24
- package/docs/Reference/Validation-and-Serialization.md +1 -1
- package/docs/Reference/Warnings.md +2 -0
- package/fastify.js +3 -4
- package/lib/error-handler.js +34 -21
- package/lib/error-serializer.js +75 -18
- package/lib/fourOhFour.js +5 -3
- package/lib/handleRequest.js +2 -1
- package/lib/httpMethods.js +3 -1
- package/lib/reply.js +10 -4
- package/lib/route.js +5 -1
- package/lib/warnings.js +6 -0
- package/lib/wrapThenable.js +2 -0
- package/package.json +3 -3
- package/test/404s.test.js +2 -2
- package/test/500s.test.js +32 -0
- package/test/close-pipelining.test.js +11 -4
- package/test/close.test.js +1 -1
- package/test/encapsulated-error-handler.test.js +1 -1
- package/test/esm/errorCodes.test.mjs +10 -0
- package/test/esm/named-exports.mjs +1 -0
- package/test/esm/other.mjs +1 -0
- package/test/esm/plugin.mjs +1 -0
- package/test/has-route.test.js +17 -1
- package/test/hooks.test.js +2 -2
- package/test/internals/handleRequest.test.js +2 -2
- package/test/internals/reply.test.js +33 -3
- package/test/lock.test.js +43 -10
- package/test/logger/instantiation.test.js +1 -1
- package/test/logger/logging.test.js +37 -16
- package/test/logger/options.test.js +1 -1
- package/test/mkcalendar.test.js +165 -0
- package/test/propfind.test.js +40 -8
- package/test/proppatch.test.js +48 -18
- package/test/report.test.js +161 -0
- package/test/schema-examples.test.js +1 -1
- package/test/schema-feature.test.js +6 -6
- package/test/schema-serialization.test.js +2 -2
- package/test/schema-special-usage.test.js +1 -1
- package/test/skip-reply-send.test.js +1 -1
- package/test/stream.5.test.js +2 -2
- package/test/types/instance.test-d.ts +1 -1
- package/test/types/reply.test-d.ts +3 -3
- package/test/types/request.test-d.ts +2 -2
- package/test/types/type-provider.test-d.ts +9 -5
- package/types/reply.d.ts +10 -6
- package/types/request.d.ts +2 -2
- package/types/route.d.ts +26 -26
- package/types/type-provider.d.ts +1 -1
- package/types/utils.d.ts +6 -1
- /package/test/esm/{esm.mjs → esm.test.mjs} +0 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: trust proxy, not add properties to node req
|
|
3
|
+
1..14
|
|
4
|
+
ok 1 - should not error
|
|
5
|
+
ok 2 - ip is defined
|
|
6
|
+
ok 3 - gets ip from x-forwarded-for
|
|
7
|
+
ok 4 - host is defined
|
|
8
|
+
ok 5 - gets host from x-forwarded-host
|
|
9
|
+
ok 6 - should be equal
|
|
10
|
+
ok 7 - gets hostname from x-forwarded-host
|
|
11
|
+
ok 8 - port is defined
|
|
12
|
+
ok 9 - port is taken from x-forwarded-for or host
|
|
13
|
+
ok 10 - ip is defined
|
|
14
|
+
ok 11 - gets ip from x-forwarded-for
|
|
15
|
+
ok 12 - gets ips from x-forwarded-for
|
|
16
|
+
ok 13 - port is defined
|
|
17
|
+
ok 14 - port is taken from x-forwarded-for or host
|
|
18
|
+
ok 1 - trust proxy, not add properties to node req # time=29.578ms
|
|
19
|
+
|
|
20
|
+
# Subtest: trust proxy chain
|
|
21
|
+
1..9
|
|
22
|
+
ok 1 - should not error
|
|
23
|
+
ok 2 - ip is defined
|
|
24
|
+
ok 3 - gets ip from x-forwarded-for
|
|
25
|
+
ok 4 - host is defined
|
|
26
|
+
ok 5 - gets host from x-forwarded-host
|
|
27
|
+
ok 6 - should be equal
|
|
28
|
+
ok 7 - gets hostname from x-forwarded-host
|
|
29
|
+
ok 8 - port is defined
|
|
30
|
+
ok 9 - port is taken from x-forwarded-for or host
|
|
31
|
+
ok 2 - trust proxy chain # time=7.178ms
|
|
32
|
+
|
|
33
|
+
# Subtest: trust proxy function
|
|
34
|
+
1..9
|
|
35
|
+
ok 1 - should not error
|
|
36
|
+
ok 2 - ip is defined
|
|
37
|
+
ok 3 - gets ip from x-forwarded-for
|
|
38
|
+
ok 4 - host is defined
|
|
39
|
+
ok 5 - gets host from x-forwarded-host
|
|
40
|
+
ok 6 - should be equal
|
|
41
|
+
ok 7 - gets hostname from x-forwarded-host
|
|
42
|
+
ok 8 - port is defined
|
|
43
|
+
ok 9 - port is taken from x-forwarded-for or host
|
|
44
|
+
ok 3 - trust proxy function # time=8.164ms
|
|
45
|
+
|
|
46
|
+
# Subtest: trust proxy number
|
|
47
|
+
1..10
|
|
48
|
+
ok 1 - should not error
|
|
49
|
+
ok 2 - ip is defined
|
|
50
|
+
ok 3 - gets ip from x-forwarded-for
|
|
51
|
+
ok 4 - host is defined
|
|
52
|
+
ok 5 - gets host from x-forwarded-host
|
|
53
|
+
ok 6 - should be equal
|
|
54
|
+
ok 7 - gets hostname from x-forwarded-host
|
|
55
|
+
ok 8 - gets ips from x-forwarded-for
|
|
56
|
+
ok 9 - port is defined
|
|
57
|
+
ok 10 - port is taken from x-forwarded-for or host
|
|
58
|
+
ok 4 - trust proxy number # time=5.26ms
|
|
59
|
+
|
|
60
|
+
# Subtest: trust proxy IP addresses
|
|
61
|
+
1..10
|
|
62
|
+
ok 1 - should not error
|
|
63
|
+
ok 2 - ip is defined
|
|
64
|
+
ok 3 - gets ip from x-forwarded-for
|
|
65
|
+
ok 4 - host is defined
|
|
66
|
+
ok 5 - gets host from x-forwarded-host
|
|
67
|
+
ok 6 - should be equal
|
|
68
|
+
ok 7 - gets hostname from x-forwarded-host
|
|
69
|
+
ok 8 - gets ips from x-forwarded-for
|
|
70
|
+
ok 9 - port is defined
|
|
71
|
+
ok 10 - port is taken from x-forwarded-for or host
|
|
72
|
+
ok 5 - trust proxy IP addresses # time=8.978ms
|
|
73
|
+
|
|
74
|
+
# Subtest: trust proxy protocol
|
|
75
|
+
1..31
|
|
76
|
+
ok 1 - should not error
|
|
77
|
+
ok 2 - ip is defined
|
|
78
|
+
ok 3 - gets ip from x-forwarded-for
|
|
79
|
+
ok 4 - host is defined
|
|
80
|
+
ok 5 - gets host from x-forwarded-host
|
|
81
|
+
ok 6 - should be equal
|
|
82
|
+
ok 7 - gets hostname from x-forwarded-host
|
|
83
|
+
ok 8 - protocol is defined
|
|
84
|
+
ok 9 - gets protocol from x-forwarded-proto
|
|
85
|
+
ok 10 - port is defined
|
|
86
|
+
ok 11 - port is taken from x-forwarded-for or host
|
|
87
|
+
ok 12 - ip is defined
|
|
88
|
+
ok 13 - gets ip from x-forwarded-for
|
|
89
|
+
ok 14 - host is defined
|
|
90
|
+
ok 15 - gets host from x-forwarded-host
|
|
91
|
+
ok 16 - should be equal
|
|
92
|
+
ok 17 - gets hostname from x-forwarded-host
|
|
93
|
+
ok 18 - protocol is defined
|
|
94
|
+
ok 19 - gets protocol from x-forwarded-proto
|
|
95
|
+
ok 20 - port is defined
|
|
96
|
+
ok 21 - port is taken from x-forwarded-for or host
|
|
97
|
+
ok 22 - ip is defined
|
|
98
|
+
ok 23 - gets ip from x-forwarded-for
|
|
99
|
+
ok 24 - host is defined
|
|
100
|
+
ok 25 - gets host from x-forwarded-host
|
|
101
|
+
ok 26 - should be equal
|
|
102
|
+
ok 27 - gets hostname from x-forwarded-host
|
|
103
|
+
ok 28 - protocol is defined
|
|
104
|
+
ok 29 - gets protocol from x-forwarded-proto
|
|
105
|
+
ok 30 - port is defined
|
|
106
|
+
ok 31 - port is taken from x-forwarded-for or host
|
|
107
|
+
ok 6 - trust proxy protocol # time=9.601ms
|
|
108
|
+
|
|
109
|
+
1..6
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: Should export withTypeProvider function
|
|
3
|
+
1..1
|
|
4
|
+
ok 1 - (unnamed test)
|
|
5
|
+
ok 1 - Should export withTypeProvider function # time=8.425ms
|
|
6
|
+
|
|
7
|
+
# Subtest: Should return same instance
|
|
8
|
+
1..1
|
|
9
|
+
ok 1 - should be equal
|
|
10
|
+
ok 2 - Should return same instance # time=0.746ms
|
|
11
|
+
|
|
12
|
+
1..2
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: can be created - unlock
|
|
3
|
+
1..1
|
|
4
|
+
ok 1 - (unnamed test)
|
|
5
|
+
ok 1 - can be created - unlock # time=6.734ms
|
|
6
|
+
|
|
7
|
+
ok 2 - should not error
|
|
8
|
+
# Subtest: request - unlock
|
|
9
|
+
1..2
|
|
10
|
+
ok 1 - should not error
|
|
11
|
+
ok 2 - should be equal
|
|
12
|
+
ok 3 - request - unlock # time=9.21ms
|
|
13
|
+
|
|
14
|
+
1..3
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: Should rewrite url
|
|
3
|
+
1..5
|
|
4
|
+
ok 1 - should not error
|
|
5
|
+
ok 2 - should be equal
|
|
6
|
+
ok 3 - should not error
|
|
7
|
+
ok 4 - should be equivalent
|
|
8
|
+
ok 5 - should be equal
|
|
9
|
+
ok 1 - Should rewrite url # time=38.251ms
|
|
10
|
+
|
|
11
|
+
# Subtest: Should not rewrite if the url is the same
|
|
12
|
+
1..4
|
|
13
|
+
ok 1 - should not error
|
|
14
|
+
ok 2 - should be equal
|
|
15
|
+
ok 3 - should not error
|
|
16
|
+
ok 4 - should be equal
|
|
17
|
+
ok 2 - Should not rewrite if the url is the same # time=5.228ms
|
|
18
|
+
|
|
19
|
+
# Subtest: Should throw an error
|
|
20
|
+
1..5
|
|
21
|
+
ok 1 - should not error
|
|
22
|
+
ok 2 - should be equal
|
|
23
|
+
ok 3 - should be equal
|
|
24
|
+
ok 4 - should be equal
|
|
25
|
+
ok 5 - should be equal
|
|
26
|
+
ok 3 - Should throw an error # time=8.587ms
|
|
27
|
+
|
|
28
|
+
# Subtest: Should rewrite url but keep originalUrl unchanged
|
|
29
|
+
1..7
|
|
30
|
+
ok 1 - should not error
|
|
31
|
+
ok 2 - should be equal
|
|
32
|
+
ok 3 - should be equal
|
|
33
|
+
ok 4 - should be equal
|
|
34
|
+
ok 5 - should not error
|
|
35
|
+
ok 6 - should be equivalent
|
|
36
|
+
ok 7 - should be equal
|
|
37
|
+
ok 4 - Should rewrite url but keep originalUrl unchanged # time=4.347ms
|
|
38
|
+
|
|
39
|
+
1..4
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: use semicolon delimiter default false
|
|
3
|
+
1..4
|
|
4
|
+
ok 1 - should not error
|
|
5
|
+
ok 2 - should not error
|
|
6
|
+
ok 3 - should be equal
|
|
7
|
+
ok 4 - should be equivalent
|
|
8
|
+
ok 1 - use semicolon delimiter default false # time=34.406ms
|
|
9
|
+
|
|
10
|
+
# Subtest: use semicolon delimiter set to true
|
|
11
|
+
1..4
|
|
12
|
+
ok 1 - should not error
|
|
13
|
+
ok 2 - should not error
|
|
14
|
+
ok 3 - should be equal
|
|
15
|
+
ok 4 - should be equivalent
|
|
16
|
+
ok 2 - use semicolon delimiter set to true # time=4.572ms
|
|
17
|
+
|
|
18
|
+
# Subtest: use semicolon delimiter set to false
|
|
19
|
+
1..4
|
|
20
|
+
ok 1 - should not error
|
|
21
|
+
ok 2 - should not error
|
|
22
|
+
ok 3 - should be equal
|
|
23
|
+
ok 4 - should be equivalent
|
|
24
|
+
ok 3 - use semicolon delimiter set to false # time=3.693ms
|
|
25
|
+
|
|
26
|
+
# Subtest: use semicolon delimiter set to false return 404
|
|
27
|
+
1..3
|
|
28
|
+
ok 1 - should not error
|
|
29
|
+
ok 2 - should not error
|
|
30
|
+
ok 3 - should be equal
|
|
31
|
+
ok 4 - use semicolon delimiter set to false return 404 # time=10.561ms
|
|
32
|
+
|
|
33
|
+
1..4
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: should work with valid payload
|
|
3
|
+
1..3
|
|
4
|
+
ok 1 - should not error
|
|
5
|
+
ok 2 - should be equivalent
|
|
6
|
+
ok 3 - should be equal
|
|
7
|
+
ok 1 - should work with valid payload # time=42.047ms
|
|
8
|
+
|
|
9
|
+
# Subtest: should fail immediately with invalid payload
|
|
10
|
+
1..3
|
|
11
|
+
ok 1 - should not error
|
|
12
|
+
ok 2 - should be equivalent
|
|
13
|
+
ok 3 - should be equal
|
|
14
|
+
ok 2 - should fail immediately with invalid payload # time=12.976ms
|
|
15
|
+
|
|
16
|
+
# Subtest: should be able to use setErrorHandler specify custom validation error
|
|
17
|
+
1..3
|
|
18
|
+
ok 1 - should not error
|
|
19
|
+
ok 2 - should be equivalent
|
|
20
|
+
ok 3 - should be equal
|
|
21
|
+
ok 3 - should be able to use setErrorHandler specify custom validation error # time=8.806ms
|
|
22
|
+
|
|
23
|
+
# Subtest: validation error has 400 statusCode set
|
|
24
|
+
1..3
|
|
25
|
+
ok 1 - should not error
|
|
26
|
+
ok 2 - should be equivalent
|
|
27
|
+
ok 3 - should be equal
|
|
28
|
+
ok 4 - validation error has 400 statusCode set # time=7.87ms
|
|
29
|
+
|
|
30
|
+
# Subtest: error inside custom error handler should have validationContext
|
|
31
|
+
1..1
|
|
32
|
+
ok 1 - should be equal
|
|
33
|
+
ok 5 - error inside custom error handler should have validationContext # time=1.389ms
|
|
34
|
+
|
|
35
|
+
# Subtest: error inside custom error handler should have validationContext if specified by custom error handler
|
|
36
|
+
1..1
|
|
37
|
+
ok 1 - should be equal
|
|
38
|
+
ok 6 - error inside custom error handler should have validationContext if specified by custom error handler # time=1.284ms
|
|
39
|
+
|
|
40
|
+
# Subtest: should be able to attach validation to request
|
|
41
|
+
1..3
|
|
42
|
+
ok 1 - should not error
|
|
43
|
+
ok 2 - should be equivalent
|
|
44
|
+
ok 3 - should be equal
|
|
45
|
+
ok 7 - should be able to attach validation to request # time=12.039ms
|
|
46
|
+
|
|
47
|
+
# Subtest: should respect when attachValidation is explicitly set to false
|
|
48
|
+
1..3
|
|
49
|
+
ok 1 - should not error
|
|
50
|
+
ok 2 - should be equivalent
|
|
51
|
+
ok 3 - should be equal
|
|
52
|
+
ok 8 - should respect when attachValidation is explicitly set to false # time=6.77ms
|
|
53
|
+
|
|
54
|
+
# Subtest: Attached validation error should take precedence over setErrorHandler
|
|
55
|
+
1..3
|
|
56
|
+
ok 1 - should not error
|
|
57
|
+
ok 2 - should be equivalent
|
|
58
|
+
ok 3 - should be equal
|
|
59
|
+
ok 9 - Attached validation error should take precedence over setErrorHandler # time=6.239ms
|
|
60
|
+
|
|
61
|
+
# Subtest: should handle response validation error
|
|
62
|
+
1..2
|
|
63
|
+
ok 1 - should not error
|
|
64
|
+
ok 2 - should be equal
|
|
65
|
+
ok 10 - should handle response validation error # time=4.118ms
|
|
66
|
+
|
|
67
|
+
# Subtest: should handle response validation error with promises
|
|
68
|
+
1..2
|
|
69
|
+
ok 1 - should not error
|
|
70
|
+
ok 2 - should be equal
|
|
71
|
+
ok 11 - should handle response validation error with promises # time=2.008ms
|
|
72
|
+
|
|
73
|
+
# Subtest: should return a defined output message parsing AJV errors
|
|
74
|
+
1..2
|
|
75
|
+
ok 1 - should not error
|
|
76
|
+
ok 2 - should be equal
|
|
77
|
+
ok 12 - should return a defined output message parsing AJV errors # time=6.6ms
|
|
78
|
+
|
|
79
|
+
# Subtest: should return a defined output message parsing JOI errors
|
|
80
|
+
1..2
|
|
81
|
+
ok 1 - should not error
|
|
82
|
+
ok 2 - should be equal
|
|
83
|
+
ok 13 - should return a defined output message parsing JOI errors # time=5.083ms
|
|
84
|
+
|
|
85
|
+
# Subtest: should return a defined output message parsing JOI error details
|
|
86
|
+
1..2
|
|
87
|
+
ok 1 - should not error
|
|
88
|
+
ok 2 - should be equal
|
|
89
|
+
ok 14 - should return a defined output message parsing JOI error details # time=1.832ms
|
|
90
|
+
|
|
91
|
+
# Subtest: the custom error formatter context must be the server instance
|
|
92
|
+
1..4
|
|
93
|
+
ok 1 - should be equivalent
|
|
94
|
+
ok 2 - should not error
|
|
95
|
+
ok 3 - should be equivalent
|
|
96
|
+
ok 4 - should be equal
|
|
97
|
+
ok 15 - the custom error formatter context must be the server instance # time=6.03ms
|
|
98
|
+
|
|
99
|
+
# Subtest: the custom error formatter context must be the server instance in options
|
|
100
|
+
1..4
|
|
101
|
+
ok 1 - should be equivalent
|
|
102
|
+
ok 2 - should not error
|
|
103
|
+
ok 3 - should be equivalent
|
|
104
|
+
ok 4 - should be equal
|
|
105
|
+
ok 16 - the custom error formatter context must be the server instance in options # time=5.754ms
|
|
106
|
+
|
|
107
|
+
# Subtest: should call custom error formatter
|
|
108
|
+
1..9
|
|
109
|
+
ok 1 - should be equal
|
|
110
|
+
ok 2 - should be equal
|
|
111
|
+
ok 3 - should be equal
|
|
112
|
+
ok 4 - should be equal
|
|
113
|
+
ok 5 - should be equivalent
|
|
114
|
+
ok 6 - should be equal
|
|
115
|
+
ok 7 - should not error
|
|
116
|
+
ok 8 - should be equivalent
|
|
117
|
+
ok 9 - should be equal
|
|
118
|
+
ok 17 - should call custom error formatter # time=6.88ms
|
|
119
|
+
|
|
120
|
+
# Subtest: should catch error inside formatter and return message
|
|
121
|
+
1..3
|
|
122
|
+
ok 1 - should not error
|
|
123
|
+
ok 2 - should be equivalent
|
|
124
|
+
ok 3 - should be equal
|
|
125
|
+
ok 18 - should catch error inside formatter and return message # time=7.526ms
|
|
126
|
+
|
|
127
|
+
# Subtest: cannot create a fastify instance with wrong type of errorFormatter
|
|
128
|
+
1..3
|
|
129
|
+
ok 1 - should be equal
|
|
130
|
+
ok 2 - should be equal
|
|
131
|
+
ok 3 - should be equal
|
|
132
|
+
ok 19 - cannot create a fastify instance with wrong type of errorFormatter # time=1.017ms
|
|
133
|
+
|
|
134
|
+
# Subtest: should register a route based schema error formatter
|
|
135
|
+
1..3
|
|
136
|
+
ok 1 - should not error
|
|
137
|
+
ok 2 - should be equivalent
|
|
138
|
+
ok 3 - should be equal
|
|
139
|
+
ok 20 - should register a route based schema error formatter # time=5.838ms
|
|
140
|
+
|
|
141
|
+
# Subtest: prefer route based error formatter over global one
|
|
142
|
+
1..9
|
|
143
|
+
ok 1 - should not error
|
|
144
|
+
ok 2 - should be equivalent
|
|
145
|
+
ok 3 - should be equal
|
|
146
|
+
ok 4 - should not error
|
|
147
|
+
ok 5 - should be equivalent
|
|
148
|
+
ok 6 - should be equal
|
|
149
|
+
ok 7 - should not error
|
|
150
|
+
ok 8 - should be equivalent
|
|
151
|
+
ok 9 - should be equal
|
|
152
|
+
ok 21 - prefer route based error formatter over global one # time=7.855ms
|
|
153
|
+
|
|
154
|
+
# Subtest: adding schemaErrorFormatter
|
|
155
|
+
1..3
|
|
156
|
+
ok 1 - should not error
|
|
157
|
+
ok 2 - should be equivalent
|
|
158
|
+
ok 3 - should be equal
|
|
159
|
+
ok 22 - adding schemaErrorFormatter # time=6.377ms
|
|
160
|
+
|
|
161
|
+
# Subtest: plugin override
|
|
162
|
+
1..15
|
|
163
|
+
ok 1 - should not error
|
|
164
|
+
ok 2 - should be equivalent
|
|
165
|
+
ok 3 - should be equal
|
|
166
|
+
ok 4 - should not error
|
|
167
|
+
ok 5 - should be equivalent
|
|
168
|
+
ok 6 - should be equal
|
|
169
|
+
ok 7 - should not error
|
|
170
|
+
ok 8 - should be equivalent
|
|
171
|
+
ok 9 - should be equal
|
|
172
|
+
ok 10 - should not error
|
|
173
|
+
ok 11 - should be equivalent
|
|
174
|
+
ok 12 - should be equal
|
|
175
|
+
ok 13 - should not error
|
|
176
|
+
ok 14 - should be equivalent
|
|
177
|
+
ok 15 - should be equal
|
|
178
|
+
ok 23 - plugin override # time=10.139ms
|
|
179
|
+
|
|
180
|
+
1..23
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: Should register a versioned route
|
|
3
|
+
1..11
|
|
4
|
+
ok 1 - should not error
|
|
5
|
+
ok 2 - should be equivalent
|
|
6
|
+
ok 3 - should be equal
|
|
7
|
+
ok 4 - should not error
|
|
8
|
+
ok 5 - should be equivalent
|
|
9
|
+
ok 6 - should be equal
|
|
10
|
+
ok 7 - should not error
|
|
11
|
+
ok 8 - should be equivalent
|
|
12
|
+
ok 9 - should be equal
|
|
13
|
+
ok 10 - should not error
|
|
14
|
+
ok 11 - should be equal
|
|
15
|
+
ok 1 - Should register a versioned route # time=20.923ms
|
|
16
|
+
|
|
17
|
+
# Subtest: Should register a versioned route via route constraints
|
|
18
|
+
1..6
|
|
19
|
+
ok 1 - should not error
|
|
20
|
+
ok 2 - should be equivalent
|
|
21
|
+
ok 3 - should be equal
|
|
22
|
+
ok 4 - should not error
|
|
23
|
+
ok 5 - should be equivalent
|
|
24
|
+
ok 6 - should be equal
|
|
25
|
+
ok 2 - Should register a versioned route via route constraints # time=1.942ms
|
|
26
|
+
|
|
27
|
+
# Subtest: Should register the same route with different versions
|
|
28
|
+
1..8
|
|
29
|
+
ok 1 - should not error
|
|
30
|
+
ok 2 - should be equal
|
|
31
|
+
ok 3 - should be equal
|
|
32
|
+
ok 4 - should not error
|
|
33
|
+
ok 5 - should be equal
|
|
34
|
+
ok 6 - should be equal
|
|
35
|
+
ok 7 - should not error
|
|
36
|
+
ok 8 - should be equal
|
|
37
|
+
ok 3 - Should register the same route with different versions # time=2.04ms
|
|
38
|
+
|
|
39
|
+
# Subtest: The versioned route should take precedence
|
|
40
|
+
1..3
|
|
41
|
+
ok 1 - should not error
|
|
42
|
+
ok 2 - should be equivalent
|
|
43
|
+
ok 3 - should be equal
|
|
44
|
+
ok 4 - The versioned route should take precedence # time=1.453ms
|
|
45
|
+
|
|
46
|
+
# Subtest: Versioned route but not version header should return a 404
|
|
47
|
+
1..2
|
|
48
|
+
ok 1 - should not error
|
|
49
|
+
ok 2 - should be equal
|
|
50
|
+
ok 5 - Versioned route but not version header should return a 404 # time=1.25ms
|
|
51
|
+
|
|
52
|
+
# Subtest: Should register a versioned route
|
|
53
|
+
1..6
|
|
54
|
+
ok 1 - should not error
|
|
55
|
+
ok 2 - should not error
|
|
56
|
+
ok 3 - should be equal
|
|
57
|
+
ok 4 - should be equivalent
|
|
58
|
+
ok 5 - should not error
|
|
59
|
+
ok 6 - should be equal
|
|
60
|
+
ok 6 - Should register a versioned route # time=13.091ms
|
|
61
|
+
|
|
62
|
+
# Subtest: Shorthand route declaration
|
|
63
|
+
1..5
|
|
64
|
+
ok 1 - should not error
|
|
65
|
+
ok 2 - should be equivalent
|
|
66
|
+
ok 3 - should be equal
|
|
67
|
+
ok 4 - should not error
|
|
68
|
+
ok 5 - should be equal
|
|
69
|
+
ok 7 - Shorthand route declaration # time=3.041ms
|
|
70
|
+
|
|
71
|
+
# Subtest: The not found handler should not erase the Accept-Version header
|
|
72
|
+
1..13
|
|
73
|
+
ok 1 - should be equivalent
|
|
74
|
+
ok 2 - should be equivalent
|
|
75
|
+
ok 3 - should be equivalent
|
|
76
|
+
ok 4 - should be equivalent
|
|
77
|
+
ok 5 - should be equivalent
|
|
78
|
+
ok 6 - should be equivalent
|
|
79
|
+
ok 7 - should be equivalent
|
|
80
|
+
ok 8 - should be equivalent
|
|
81
|
+
ok 9 - should be equivalent
|
|
82
|
+
ok 10 - should be equivalent
|
|
83
|
+
ok 11 - should not error
|
|
84
|
+
ok 12 - should be equivalent
|
|
85
|
+
ok 13 - should be equal
|
|
86
|
+
ok 8 - The not found handler should not erase the Accept-Version header # time=2.467ms
|
|
87
|
+
|
|
88
|
+
# Subtest: Bad accept version (inject)
|
|
89
|
+
1..4
|
|
90
|
+
ok 1 - should not error
|
|
91
|
+
ok 2 - should be equal
|
|
92
|
+
ok 3 - should not error
|
|
93
|
+
ok 4 - should be equal
|
|
94
|
+
ok 9 - Bad accept version (inject) # time=1.613ms
|
|
95
|
+
|
|
96
|
+
# Subtest: Bad accept version (server)
|
|
97
|
+
1..5
|
|
98
|
+
ok 1 - should not error
|
|
99
|
+
ok 2 - should not error
|
|
100
|
+
ok 3 - should be equal
|
|
101
|
+
ok 4 - should not error
|
|
102
|
+
ok 5 - should be equal
|
|
103
|
+
ok 10 - Bad accept version (server) # time=4.188ms
|
|
104
|
+
|
|
105
|
+
# Subtest: test log stream
|
|
106
|
+
1..3
|
|
107
|
+
ok 1 - should not error
|
|
108
|
+
ok 2 - should be equal
|
|
109
|
+
ok 3 - should be equal
|
|
110
|
+
ok 11 - test log stream # time=5.422ms
|
|
111
|
+
|
|
112
|
+
# Subtest: Should register a versioned route with custom versioning strategy
|
|
113
|
+
1..8
|
|
114
|
+
ok 1 - should not error
|
|
115
|
+
ok 2 - should be equivalent
|
|
116
|
+
ok 3 - should be equal
|
|
117
|
+
ok 4 - should not error
|
|
118
|
+
ok 5 - should be equivalent
|
|
119
|
+
ok 6 - should be equal
|
|
120
|
+
ok 7 - should not error
|
|
121
|
+
ok 8 - should be equal
|
|
122
|
+
ok 12 - Should register a versioned route with custom versioning strategy # time=3.232ms
|
|
123
|
+
|
|
124
|
+
# Subtest: Should get error using an invalid a versioned route, using default validation (deprecated versioning option)
|
|
125
|
+
1..3
|
|
126
|
+
ok 1 - should be equal
|
|
127
|
+
ok 2 - should not error
|
|
128
|
+
ok 3 - should be equal
|
|
129
|
+
ok 13 - Should get error using an invalid a versioned route, using default validation (deprecated versioning option) # time=1.832ms
|
|
130
|
+
|
|
131
|
+
# Subtest: Vary header check (for documentation example)
|
|
132
|
+
1..8
|
|
133
|
+
ok 1 - should not error
|
|
134
|
+
ok 2 - should be equivalent
|
|
135
|
+
ok 3 - should be equal
|
|
136
|
+
ok 4 - should be equal
|
|
137
|
+
ok 5 - should not error
|
|
138
|
+
ok 6 - should be equivalent
|
|
139
|
+
ok 7 - should be equal
|
|
140
|
+
ok 8 - should be equal
|
|
141
|
+
ok 14 - Vary header check (for documentation example) # time=2.336ms
|
|
142
|
+
|
|
143
|
+
# Subtest: Should trigger a warning when a versioned route is registered via version option
|
|
144
|
+
1..4
|
|
145
|
+
ok 1 - FSTDEP008 has been emitted
|
|
146
|
+
ok 2 - should not error
|
|
147
|
+
ok 3 - should be equivalent
|
|
148
|
+
ok 4 - should be equal
|
|
149
|
+
ok 15 - Should trigger a warning when a versioned route is registered via version option # time=10.462ms
|
|
150
|
+
|
|
151
|
+
1..15
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: should response with a ReadableStream
|
|
3
|
+
1..2
|
|
4
|
+
ok 1 - should be equal
|
|
5
|
+
ok 2 - should be equal
|
|
6
|
+
ok 1 - should response with a ReadableStream # time=22.905ms
|
|
7
|
+
|
|
8
|
+
# Subtest: should response with a Response
|
|
9
|
+
1..3
|
|
10
|
+
ok 1 - should be equal
|
|
11
|
+
ok 2 - should be equal
|
|
12
|
+
ok 3 - should be equal
|
|
13
|
+
ok 2 - should response with a Response # time=14.387ms
|
|
14
|
+
|
|
15
|
+
# Subtest: able to use in onSend hook - ReadableStream
|
|
16
|
+
1..4
|
|
17
|
+
ok 1 - should be equal
|
|
18
|
+
ok 2 - should be equal
|
|
19
|
+
ok 3 - should be equal
|
|
20
|
+
ok 4 - should be equal
|
|
21
|
+
ok 3 - able to use in onSend hook - ReadableStream # time=2.646ms
|
|
22
|
+
|
|
23
|
+
# Subtest: able to use in onSend hook - Response
|
|
24
|
+
1..4
|
|
25
|
+
ok 1 - should be equal
|
|
26
|
+
ok 2 - should be equal
|
|
27
|
+
ok 3 - should be equal
|
|
28
|
+
ok 4 - should be equal
|
|
29
|
+
ok 4 - able to use in onSend hook - Response # time=2.512ms
|
|
30
|
+
|
|
31
|
+
# Subtest: Error when Response.bodyUsed
|
|
32
|
+
1..4
|
|
33
|
+
ok 1 - should be equal
|
|
34
|
+
ok 2 - should be equal
|
|
35
|
+
ok 3 - should be equal
|
|
36
|
+
ok 4 - should be equal
|
|
37
|
+
ok 5 - Error when Response.bodyUsed # time=3.136ms
|
|
38
|
+
|
|
39
|
+
# Subtest: allow to pipe with fetch
|
|
40
|
+
1..2
|
|
41
|
+
ok 1 - should be equal
|
|
42
|
+
ok 2 - should be equivalent
|
|
43
|
+
ok 6 - allow to pipe with fetch # time=22.354ms
|
|
44
|
+
|
|
45
|
+
# Subtest: allow to pipe with undici.fetch
|
|
46
|
+
1..2
|
|
47
|
+
ok 1 - should be equal
|
|
48
|
+
ok 2 - should be equivalent
|
|
49
|
+
ok 7 - allow to pipe with undici.fetch # time=8.49ms
|
|
50
|
+
|
|
51
|
+
1..7
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
TAP version 14
|
|
2
|
+
# Subtest: should resolve immediately when reply[kReplyHijacked] is true
|
|
3
|
+
1..0
|
|
4
|
+
ok 1 - should resolve immediately when reply[kReplyHijacked] is true # time=1.028ms
|
|
5
|
+
|
|
6
|
+
# Subtest: should reject immediately when reply[kReplyHijacked] is true
|
|
7
|
+
1..1
|
|
8
|
+
ok 1 - should be equal
|
|
9
|
+
ok 2 - should reject immediately when reply[kReplyHijacked] is true # time=3.683ms
|
|
10
|
+
|
|
11
|
+
1..2
|
package/.taprc
CHANGED
package/README.md
CHANGED
|
@@ -125,6 +125,7 @@ yarn add fastify
|
|
|
125
125
|
|
|
126
126
|
// ESM
|
|
127
127
|
import Fastify from 'fastify'
|
|
128
|
+
|
|
128
129
|
const fastify = Fastify({
|
|
129
130
|
logger: true
|
|
130
131
|
})
|
|
@@ -150,6 +151,7 @@ with async-await:
|
|
|
150
151
|
```js
|
|
151
152
|
// ESM
|
|
152
153
|
import Fastify from 'fastify'
|
|
154
|
+
|
|
153
155
|
const fastify = Fastify({
|
|
154
156
|
logger: true
|
|
155
157
|
})
|
|
@@ -323,6 +325,8 @@ listed in alphabetical order.
|
|
|
323
325
|
<https://twitter.com/jsumners79>, <https://www.npmjs.com/~jsumners>
|
|
324
326
|
* [__Aras Abbasi__](https://github.com/uzlopak),
|
|
325
327
|
<https://www.npmjs.com/~uzlopak>
|
|
328
|
+
* [__Gürgün Dayıoğlu__](https://github.com/gurgunday),
|
|
329
|
+
<https://www.npmjs.com/~gurgunday>
|
|
326
330
|
|
|
327
331
|
### Fastify Plugins team
|
|
328
332
|
* [__Matteo Collina__](https://github.com/mcollina),
|
package/SPONSORS.md
CHANGED
package/docs/Guides/Database.md
CHANGED
|
@@ -237,14 +237,14 @@ development. Migrations provide a repeatable and testable way to modify a
|
|
|
237
237
|
database's schema and prevent data loss.
|
|
238
238
|
|
|
239
239
|
As stated at the beginning of the guide, Fastify is database agnostic and any
|
|
240
|
-
|
|
240
|
+
Node.js database migration tool can be used with it. We will give an example of
|
|
241
241
|
using [Postgrator](https://www.npmjs.com/package/postgrator) which has support
|
|
242
242
|
for Postgres, MySQL, SQL Server and SQLite. For MongoDB migrations, please check
|
|
243
243
|
[migrate-mongo](https://www.npmjs.com/package/migrate-mongo).
|
|
244
244
|
|
|
245
245
|
#### [Postgrator](https://www.npmjs.com/package/postgrator)
|
|
246
246
|
|
|
247
|
-
Postgrator is
|
|
247
|
+
Postgrator is Node.js SQL migration tool that uses a directory of SQL scripts to
|
|
248
248
|
alter the database schema. Each file an migrations folder need to follow the
|
|
249
249
|
pattern: ` [version].[action].[optional-description].sql`.
|
|
250
250
|
|
|
@@ -49,7 +49,7 @@ That will be achieved by wrapping into a custom plugin two main features:
|
|
|
49
49
|
|
|
50
50
|
1. the mechanism for authenticating with the provider
|
|
51
51
|
[decorating](../Reference/Decorators.md) the `fastify` object with the
|
|
52
|
-
authentication key (`magicKey` from here
|
|
52
|
+
authentication key (`magicKey` from here onward)
|
|
53
53
|
1. the mechanism for denying requests that would, otherwise, fail
|
|
54
54
|
|
|
55
55
|
### Hands-on
|