All Versions
11
Latest Version
Avg Release Cycle
54 days
Latest Release
115 days ago

Changelog History
Page 1

  • v5.2.1 Changes

    February 16, 2026

    ๐Ÿ›  Fixes / features

    Dependencies

    • @foal/aws-s3

      • @aws-sdk/client-s3@3.990
      • @aws-sdk/lib-storage@3.990
    • @foal/cli

      • ajv@8.18
    • @foal/core

      • ajv@8.18
    • @foal/graphql

      • ajv@8.18
  • v5.2.0 Changes

    January 23, 2026

    ๐Ÿ”‹ Features

    • โฌ†๏ธ Add PasswordService and allow to auto-upgrade outdated password hashes. (PR: #1338)
    • ๐Ÿ‘ Make TypeORM store support strings as user ID (such as UUID) (PR: #1349)

    How to migrate

    If you use TypeORM store:

    npm run makemigrations
    npm run migrations
    

    Chore

    • [Internal] [CLI] Re-organize CLI directory (PR: #1340)
    • [Internal] [CLI] Divide FileSystem into two services (PR: #1343)
  • v5.1.3 Changes

    January 14, 2026

    ๐Ÿ› Bug fix

    • [CLI] Fix thrown error when running npx foal run with arguments (regression) (issue: #1346) (PR: #1347)
  • v5.1.2 Changes

    January 02, 2026

    Patches

    โฌ†๏ธ This version upgrades the minor version of the express dependency.

    Dependencies

    • @foal/core
      • express@4.22
  • v5.1.1 Changes

    November 09, 2025

    ๐Ÿš€ This patch release upgrades the TypeORM version used in the package.json generated by the CLI.

  • v5.1.0 Changes

    November 09, 2025

    ๐Ÿ”‹ Features

    • ๐Ÿ‘ Support Node v24 (PR: #1325)
    • Allow to create a directory if it does not exist with Disk and LocalDisk (PR: #1334)
    • ๐Ÿ”Š Allow to add a log context only applicable for error-level logs (PR: #1335)
    • Increase password interaction count to 600,000 (PR: #1336)

    โœจ Enhancements

    • ๐Ÿ‘ Better display errors thrown in main() (issue: #1316) (PR: #1317)
    • ๐Ÿ”€ Do not block AsyncService.run on blocking synchronous function (PR: #1328)
    • ๐Ÿ“š Add OpenAPI documentation to PermissionRequired hook (PR: #1329)

    Chores

    • ๐Ÿ‘ท Fix testing issues to make the CI pass (PR: #1322, #1332)
    • Re-organize repository (PR: #1323)
    • ๐Ÿ“š Move documentation tests to a separate directory (PR: #1324)
    • โฌ†๏ธ Upgrade dependencies (PR: #1326)
    • Replace glob dependency with new native Node API (PR: #1331)

    Dependencies

    • @foal/aws-s3

      • @aws-sdk/client-s3@3.926
      • @aws-sdk/lib-storage@3.926
    • @foal/cli

      • commander@14.0
    • @foal/graphql

      • glob (removed)
    • ๐Ÿ’ป @foal/swagger-ui-dist

      • swagger-ui-dist@5.30
  • v5.0.1 Changes

    May 27, 2025

    ๐Ÿ›  Fixes

    • Make create-userscript generated with createapp work with MongoDB (PR: #1314)
  • v5.0.0 Changes

    May 27, 2025

    ๐Ÿ‘Œ Supported versions of Node and TypeScript

    • ๐Ÿ‘Œ Support for Node 18 and Node 20 has been dropped and support for Node 22 has been added. Foal code is now compiled to ES2023.

    • โšก๏ธ The minimum supported version of TypeScript is version 5.5. Update your package.json file accordingly.

    โฌ†๏ธ TypeORM upgrade

    • The minimum required version of TypeORM is v0.3.24.

    ๐Ÿ‘ Better typing

    • 0๏ธโƒฃ The default type of Context.state is now {}. This way, you'll get a compilation error if you forget to specify a type for the state.

    • The return value of the social services getUserInfoFromTokens method is now typed.

    Controller parameters

    To facilitate the typing of the request body, path parameters and request parameters in controllers, the request object is now passed as a second argument to controller methods.

    interfaceMyQuery{// ...}interfaceMyBody{// ...}interfaceMyParams{// ...}// Version 4classMyController{@Get('/foobar')foobar(ctx:Context){constquery=ctx.request.queryasMyQuery;constbody=ctx.request.bodyasMyQuery;constparams=ctx.request.paramsasMyParams;// Do something}// OR@Get('/foobar')foobar(ctx:Context,params:MyParams,body:MyBody){constquery=ctx.request.queryasMyQuery;// Do something}}// Version 5classMyController{@Get('/foobar')foobar(ctx:Context,{query,body,params}:{query:MyQuery,body:MyBody,params:MyParams}){// Do something}}
    

    ๐ŸŒฒ Logging

    • ๐ŸŒฒ The Logger.addLogContext(key, value) method now accepts a record as parameter: Logger.addLogContext(context). This makes the function's signature more consistent with other logging methods (info, warn, etc.) and allows multiple keys/values to be passed at once.

    • ๐Ÿ”ง The deprecated settings.loggerFormat configuration has been removed. If you want to disable HTTP logging, replace configuration settings.loggerFormat: 'none' with settings.logger.logHttpRequests: false.

    Shell scripts

    • The main function of shell scripts now receives an instance of ServiceManager as second argument and the logger as third argument:

    • ๐ŸŒฒ Log context are supported.

    • ๐ŸŒฒ When running a script, the script name as well as a script ID are added to the log context.

    • ๐Ÿ–จ At the end of script execution, as with an HTTP request, a log is printed to indicate whether the execution was successful or unsuccessful.

    • Any error thrown in the main function is now logged with the framework logger.

    ๐Ÿ—„ Removal of deprecated components

    • ๐Ÿšš The deprecated hook @Log has been removed. Use the Logger service in a custom @Hook instead.

    • ๐Ÿšš The command alias npx foal run-script has been removed. Use npx foal run instead.

    • ๐Ÿšš The deprecated method AbstractProvider.redirect has been removed. Use AbstractProvider.createHttpResponseWithConsentPageUrl({ isRedirection: true }) instead.

    Dependencies

    • @foal/cli

      • node-fetch removed
    • @foal/graphql

      • glob@11
    • @foal/social

      • node-fetch removed
    • @foal/typeorm

      • typeorm@0.3.24 (peer dependency)
    • @foal/aws-s3

      • @aws-sdk/client-s3@3.817
      • @aws-sdk/lib-storage@3.817
    • @foal/jwks-rsa

    • @foal/socket.io

      • socket.io@4.8
    • @foal/swagger

    PR

    #1280

  • v4.6.0 Changes

    May 26, 2025

    ๐Ÿ”‹ Features

    • ๐Ÿ”’ Remove deprecated security header X-XSS-Protection (issue: #1305, PR: #1311)
  • v4.5.1 Changes

    September 14, 2024

    ๐Ÿ”‹ Features

    โšก๏ธ Some security vulnerabilities were showing up with npm audit. This version updates Foal's dependencies to get rid of them.

    Dependencies

    • โœ… @foal/acceptance-tests

      • express@4.21
      • redis@4.7
    • @foal/aws-s3

      • @aws-sdk/client-s3@3.651
      • @aws-sdk/lib-storage@3.651
    • @foal/core

      • express@4.21
    • @foal/examples

      • concurrently@9.0
    • @foal/redis

      • redis@4.7