MyGit

v0.23.0

novuhq/novu

版本发布时间: 2024-02-10 01:41:49

novuhq/novu最新发布版本:v0.24.0(2024-03-18 17:44:43)

What’s new in Novu 0.23?

TL;DR: All you need to know about the latest Novu 0.23.0 release. Translation management, provider integrations, notification center updates, performance updates, and more!

0.23 Release Updates

We're excited to highlight the newest features introduced in our latest release. Join us as we explore what awaits you!

giphy (7)

Translation Management

💡Note: This feature is only available for Novu Cloud for Business and Enterprise Clients.

The translation management feature allows users to create, upload, and edit translation groups and files from the Novu dashboard.

It’s new and we’re excited for you to start using it in your apps!

With this feature comes a new handlebar helper for translations, {{ i18n ... }}. Novu users can now translate their notification templates to different languages using the i18n handlebar helper and the translation keys in the editor.

image

Support for Non-Root User (UID 1000)

In our continued effort to enhance security and compatibility in enterprise environments, we are proud to announce a significant update aimed at supporting systems with restricted root access.

Key Features:

Getting Started:

No action is required from your side to take advantage of this update. The changes have been seamlessly integrated into Novu, ensuring that your enterprise deployments comply with non-root user policies without any additional configuration needed.

ARM Image Support

We're thrilled to share that Novu has officially introduced support for ARM images, marking a significant step in our dedication to embracing innovation and responsibility within the tech landscape. This development ensures that Novu stays ahead in the realm of notification infrastructure by broadening our platform's accessibility, compatibility, and sustainability.

Key Highlights:

Getting Started with ARM Images:

To use Novu on an ARM-based system, simply pull the ARM-compatible Docker image from our registry. If you are on a not a ARM based system you can use the following command in docker to pull the image.

docker pull --platform linux/arm64 ghcr.io/novuhq/novu:v0.23.0

💡Note: Emulating ARM hardware may be slower then running an ARM image on ARM hardware.

Deprecation of Original Notifire Packages

Novu has evolved so much from when it was originally created. On the release of v0.24.0, we will be deprecating the original Notifire packages hosted on GitHub and any package within the @notifire namespace on NPM.

The following packages hosted on GitHub under the novuhq organization are scheduled for deprecation:

Deprecated Packages

  1. Notifire WebSocket Package (notifire/ws)
  2. Notifire Widget Package (notifire/widget)
  3. Notifire SDK Package (notifire/sdk)
  4. Notifire Web Package (notifire/web)
  5. Notifire API Package (notifire/api)

NPM Namespace Deprecation

All packages within the @notifire namespace on NPM are also scheduled for deprecation. This includes any package prefixed with @notifire/, ensuring a comprehensive and clear transition away from these older offerings.

Users currently relying on these deprecated packages should promptly transition to the official @novu packages.

Field-level Encryption to API Keys

We're security conscious at Novu. The API keys are now encrypted at rest in the database and hashed at rest in the cache.

We added this security feature to prevent direct use of the API key in the event of a database breach or bad actor trying to use the key with bad intentions.

Note: All existing API keys become encrypted through a data migration script for self-hosted users. Running the script more than once does not re-encrypt the api keys.

Bulk Delete Notifications in Notification Center

Users can now remove multiple notifications using an array of message ids (limit of 100) via the Notification center hooks and Headless library.

Notification Center Hook

const onSuccess = (data: IMessage) => {};

const onError = (error: Error) => {};

const { removeNotifications, isLoading, isError, error } = useRemoveNotifications({
  onSuccess,
  onError,
});

Headless Service

headlessService.removeNotifications({
  listener: (
    result: UpdateResult<IMessage, unknown, { messageId: string }>
  ) => {
    console.log(result);
  },
  onSuccess: (message: IMessage) => {
    console.log(message);
  },
  onError: (error: unknown) => {
    console.error(error);
  },
  messageIds: ["message_id_1", "message_id_2" ],
});

Rocket Chat Provider Integration

You can now send Chat messages via the Rocket Chat provider integration:

Brevo (SendInBlue) SMS Provider Integration

You can now send SMS messages via the Brevo SMS provider integration:

iSend SMS Provider Integration

You can now send SMS via the iSend sms provider integration:

CustomData Overrides for SMS

A customData overrides provider for SMS now exists. This property allows us to support provider specific configurations in future for SMS providers.

For now, it only supports DLT (Distributed Ledger Technology) for the Gupshup SMS provider.

Trigger workflow with customData

novu.trigger("gupshup-workflow", {
  to: {
    subscriberId: "1234",
  },
  payload: {
    user: "Viraj",
  },
  overrides: {
    sms: {
      customData: {
        principalEntityId: "principal entity Id",
        dltTemplateId: "dlt template Id",
      },
    },
  },
});

Email Editor Variables Auto-suggestion Dropdown

We've made a little adjustment to the workflow email editor to enhance user experience by including auto-suggestions while adding variables.

This feature greatly minimizes the chance of selecting the wrong variable and having incorrect template content.

Notable changes

What's Changed

New Contributors

Full Changelog: https://github.com/novuhq/novu/compare/v0.22.0...v0.23.0

相关地址:原始地址 下载(tar) 下载(zip)

查看:2024-02-10发行的版本