Skip to content

Releases: adonisjs/application

Pass RCFileInput to presets

05 Sep 06:11

Choose a tag to compare

Pre-release

9.0.0-next.5 (2025-09-05)

Features

  • setup typedoc (40d52cc)
  • update presets to receive RcFileInput (8f9e633)

Full Changelog: v9.0.0-next.4...v9.0.0-next.5

Add tracing for providers lifecycle and add directories configuration for generated code

27 Aug 16:32

Choose a tag to compare

9.0.0-next.4 (2025-08-27)

Bug Fixes

  • calling terminate multiple times (#37) (b9a73aa)

Features

  • add debug calls to provider boot lifecycle (866a0d9)
  • add generatedClient and generatedServer directories (e44bfda)
  • add tracing channels to track providers lifecycle (add21ea)
  • share provider via message object in tracing channels (6843b56)

Full Changelog: v9.0.0-next.3...v9.0.0-next.4

Avoid terminating app multiple times

19 Aug 01:47

Choose a tag to compare

8.4.2 (2025-08-19)

Bug Fixes

  • calling terminate multiple times (#37) (0bc5f0a)

Use next version of @adonisjs/config

15 Aug 10:43

Choose a tag to compare

Pre-release

9.0.0-next.3 (2025-08-15)

Full Changelog: v9.0.0-next.2...v9.0.0-next.3

Upgrade to latest version of fold

30 Jul 11:45

Choose a tag to compare

Pre-release

9.0.0-next.2 (2025-07-30)

Features

  • add more keywords for singular controllers (9f53194)

Full Changelog: v9.0.0-next.1...v9.0.0-next.2

Add support for presets

29 Jul 12:56

Choose a tag to compare

Pre-release

9.0.0-next.1 (2025-07-29)

Presents are used to combine the configuration within a single function call to cleanup the noise from .adonisrc.ts file. The documentation will cover their usage.

Features

What's Changed

Full Changelog: v9.0.0-next.0...v9.0.0-next.1

Remove assetsBundler and rename assembler hooks

10 Jun 12:20

Choose a tag to compare

9.0.0-next.0 (2025-06-10)

  • Remove unstable_assembler property. Was deprecated a long time back.
  • Remove assetsBundler property. It's not used for a long time because of bundled Vite integration.
  • Rename assembler hooks names. They are now defined within the @adonisjs/assembler package and sourced directly from the package. See https://github.com/adonisjs/assembler/releases/tag/v8.0.0-next.0
  • Remove shutdownInReverseOrder experimental flag. As shutdown hooks are now always executed in reverse order.

Features

  • cleanup assembler hooks related code (a656453)
  • remove shutdownInReverseOrder experimental flag, as it is the default behavior (4e6304c)

BREAKING CHANGES

  • Assembler hooks are now defined inside the assembler package and the application
    package just exposes its types as it is. Also, the hooks have been renamed

Full Changelog: v8.4.1...v9.0.0-next.0

Move Feature flags implementation to its own class

15 May 04:12

Choose a tag to compare

Add support for experimental flags and run shutdown hooks in reverse order

14 May 09:17

Choose a tag to compare

8.4.0 (2025-05-14)

This release introduces the concept of experimental flags at the application level. These flags will serve us in smoothly introduce breaking changes to the current version by letting early adopters use features in the current version of the framework.

Feature flags

The feature flags can be defined within the adonisrc.ts file, under the experimental block. For example:

{
  experimental: {
    shutdownInReverseOrder: true,
  }
}

If you want to author your own flags in a type-safe manner, then you can define them with the ExperimentalFlags interface using declaration merging. For example:

declare module '@adonisjs/core/types/app' {
  export interface ExperimentalFlags {
     myFlag?: boolean
  }
}

Now, the users will get type suggestions for the myFlag inside the adonisrc.ts file.

shutdownInReverseOrder

Ideally the shutdown hooks from the providers and the terminating hooks (defined as callbacks) should be executed in the reverse order so that if two providers rely on each other, then can have desired outcome in both during boot and the shutdown phase. For example:

There are two providers registered in the following order

  • AppMetricsProvider - Defines API for storing certain app metrics
  • AppLifecycleProvider - Stores the duration of the app till it was alive. This provider relies on the AppMetricsProvider and hence must be registered afterwards as well.

However, when calling the shutdown methods on providers, if we will shutdown the AppMetricsProvider first, then the AppLifecycleProvider won't be to store the app lifecycle duration. Instead, they should be shutdown in the reverse order.

Changing the order of the shutdown and the terminating hooks is a breaking change and will be the default behavior in the next major release of AdonisJS. However, for now, you can opt into it using experimental flags. Write the following block of code within the adonisrc.ts file.

{
  experimental: {
    shutdownInReverseOrder: true,
  }
}

Features

  • experimental support for running terminating and shutdown hooks in reverse order (5fa985a)
  • introduce experimental flags (48a964a)

Full Changelog: v8.3.2...v8.4.0

Fix mail generator to not remove similar words when removing suffix

05 May 16:15

Choose a tag to compare

8.3.2 (2025-05-05)

Bug Fixes

  • mail generator to define email as a similar word (85f8c09), closes #34

Full Changelog: v8.3.1...v8.3.2