You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have searched existing issues to ensure the bug has not already been reported
Fastify version
4.x.x
Plugin version
4.2.1
Node.js version
18.0
Operating system
Linux
Operating system version (i.e. 20.04, 11.3, 10)
Manjaro 5.10.218 x86
Description
Once you call extend on a schema, the function chain is broken because the extend function returns a plain object rather than an instance of the schema being extended. This breaks the normal usage of the builder pattern implemented by this library.
Can you provide steps to reproduce? We often need a reproducible example, e.g. some code that allows someone else to recreate your problem by just copying and pasting it. If it involves more than a couple of different file, create a new repository on GitHub and add a link to that.
var alternate = extended.without(['one'])
^
TypeError: extended.without is not a function
at Object.<anonymous> (/home/esatterwhite/dev/js/logdna/auth-provider-service/error.js:12:26)
at Module._compile (node:internal/modules/cjs/loader:1369:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1427:10)
at Module.load (node:internal/modules/cjs/loader:1206:32)
at Module._load (node:internal/modules/cjs/loader:1022:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:135:12)
at node:internal/main/run_main_module:28:49
Node.js v20.12.2
Prerequisites
Fastify version
4.x.x
Plugin version
4.2.1
Node.js version
18.0
Operating system
Linux
Operating system version (i.e. 20.04, 11.3, 10)
Manjaro 5.10.218 x86
Description
Once you call
extend
on a schema, the function chain is broken because the extend function returns a plain object rather than an instance of the schema being extended. This breaks the normal usage of the builder pattern implemented by this library.Link to code that reproduces the bug
fluent-json-schema/src/ObjectSchema.js
Line 350 in 6db9f0b
Expected Behavior
One should be able to continue chaining function calls such as
without
oronly
, etc after calling extend.It should be safe to use the schema factory function found on the schema to build out a new instance of the same type.
The text was updated successfully, but these errors were encountered: