Upgrade to v3

Help developers to move from v2 to v3. Please read carefully and integrate the following breaking changes to ensure a smooth update.

Breaking changes

Cors configuration

Set CORS credentials: true if you're using custom CORS configuration.

app.js
var express = require('express');
var cors = require('cors');
var app = express();
// ...
app.use(cors({
origin: [/\.forestadmin\.com$/],
allowedHeaders: ['Authorization', 'X-Requested-With', 'Content-Type'],
credentials: true
}));
// ...
module.exports = app;

Global smart action

Smart actions defined as follows global: true will no longer be considered as global.

Please now use type: 'global'.

SQL
Mongodb

Before

/forest/products.js
const Liana = require('forest-express-sequelize');
const models = require('../models');
Liana.collection('products', {
actions: [{
name: 'Import data',
global: true
}],
});

After

/forest/products.js
const Liana = require('forest-express-sequelize');
const models = require('../models');
Liana.collection('products', {
actions: [{
name: 'Import data',
type: 'global'
}],
});

Before

/forest/products.js
const Liana = require('forest-express-mongoose');
const models = require('../models');
Liana.collection('products', {
actions: [{
name: 'Import data',
global: true
}],
});

After

/forest/products.js
const Liana = require('forest-express-mongoose');
const models = require('../models');
Liana.collection('products', {
actions: [{
name: 'Import data',
type: 'global'
}],
});

Schema versioning

On server start - only in development environments - the liana will generate a .forestadmin-schema.json file reflecting your Forest Admin models.

If you change your models, Forest Admin will automatically load a new schema to keep the layout up to date. However, note that changes in your database will not be reflected in your models nor in your UI, unless you use lumber update (for Lumber) or update your models manually otherwise.

Do not edit this file. It will be automatically generated on server start only in development environments.

This file must be deployed for any remote environment (staging, production, etc.), as it will be used to generate your Forest Admin UI.

Version this file. It will give you more visibility on the changes detected by Forest Admin.

In the following example, we have added two fields on the invoices table:

  • emailSent

  • quadernoId

Versioning the.forestadmin-schema.json file allows you to easily visualize the changes.

.forestadmin-schema.json versioning example

Changelogs

This release note covers only the major changes. To learn more, please refer to the changelogs in our different repositories: