foal icon indicating copy to clipboard operation
foal copied to clipboard

Version 3

Open LoicPoullain opened this issue 3 years ago • 3 comments

  • [x] Drop support for Node 10 (unmaintained), 12 (not maintained from April 2022) and 14 (not maintained in less that a year). Support versions 16 and 18.
  • [x] Upgrade all 3p dependencies doing major upgrades (jwks-rsa, redis, @aws-sdk/client-s3, typescript, graphql, etc). Specify which minimum version of TypeORM is required. Upgrade the peer dependencies.
  • [x] Use latest version of AJV and use its TS integration (maybe related: #988).
  • [x] Remove the functions escape and escapeProp. Modern frontend frameworks (React, Angular, Vue, etc) take care of this.
  • [x] Improve the interface of the Context class to mainly improve type safety.
  • [x] Correct the bad design on the precedence of environment variables. (issue: #1021)
  • [x] Support optional fields in @ValidateMultipartFormDataBody (issue: #1008)
  • [x] Support TypeORM 0.3.0
  • [x] Ignore undefined values in configuration (issue: #1071)
  • [x] Simplify generated CLI files.
  • [x] Make the session and JWT systems a bit simpler.

LoicPoullain avatar Jan 17 '22 07:01 LoicPoullain

Updating AJV will be great - JSONSchemaType/JTDSchemaType/JTDDataType will be a welcome addition to provide type safety with the validation :)

luxaritas avatar Jan 26 '22 02:01 luxaritas

Idea: add overloading to support the official json schema type https://www.npmjs.com/package/@types/json-schema for hooks provided by Foalts. According to Open API spec 3.1, it will be a super set of jsonschema.

kingdun3284 avatar Jul 14 '22 10:07 kingdun3284

Idea2: Wish to support typescript interface for Configfile with hinted path. For example:

Config.get<P extends FoalsDefaultConfigInterface,K extends string=never>(path:AutoPath<P,K>,...others)

kingdun3284 avatar Jul 20 '22 11:07 kingdun3284

Hi @kingdun3284 👋

Version 3 is 10 months late so I decided not to add any new features (except the ones that are already coded) so as to be able to release it after. New features with breaking changes will be studied for the the next major release 👍

LoicPoullain avatar Oct 17 '22 06:10 LoicPoullain

The PR has been merged 💪

LoicPoullain avatar Oct 28 '22 17:10 LoicPoullain