April 17, 2018
Premium Security - Add IP Whitelist feature.
April 12, 2018
Smart Relationships - Make the Smart BelongsTo work when it references a Smart Collection record.
March 30, 2018
Integration - Prevent client console error on Close.io leads failed retrieval.
March 29, 2018
Smart Actions - "Single" type Smart Action forms can now be prefilled with contextual values.
March 27, 2018
Authentication - Fix the missing email/name/teams information set in the token for user using Google SSO.
March 26, 2018
Collections - Allow collection customization before liana initialization.
March 21, 2018
Smart Fields - Boolean Smart Fields that return a "false" value are now properly sent though the API.
March 13, 2018
Smart Elements - Fix error swallowing on load and clean some useless code.
March 13, 2018
MongoDB HasMany - Allow documents embedded to an array to be editable.
Security - Fix low impact vulnerabilities.
Technical - Use local packages for npm scripts.
March 12, 2018
Smart Actions - Developers can define Smart Actions that can send their request to a different endpoint than the current environment endpoint.
March 8, 2018
Close.io Integration - Send a "No Content" (204) status code if not customer lead has been found instead of an "Internal Server Error" (500).
March 7, 2018
Smart Fields - Display a warning if an error occurs during Smart Field value computations.
March 5, 2018
Live Query - Fix charts generation for values equal to 0 or null.
March 1, 2018
Smart Actions - Users can define Smart Actions only available in a record detail.
February 28, 2018
Apimap - Catch potential failure during the apimap sorting.
Smart Actions - Display the Smart Actions form fields in the declaration order. [Regression introduced in 2.4.0]
February 7, 2018
Apimap - Prevent random sorting collections and useless updates.
Search - Prevent the records search to crash if no fields parameter is sent by the client.
Tests - Fix Google session creation test.
February 2, 2018
Smart Fields - Compute only the necessary Smart Fields values for list views and CSV exports.
February 1, 2018
Smart Fields - Fix concurrency between Smart Fields setters and enable multiple setters to work properly on a record update.
February 1, 2018
CORS - Re-authorize forestadmin.com in the CORS configuration. [regression introduced in 2.0.6]
January 26, 2018
Charts - Users can create charts using raw database queries with the Live Query option.
January 11, 2018
Authentication - Users can connect to their project using Google Single Sign-On.
December 27, 2017
Performance - Reduce drastically the number of CORS preflight requests send by the API clients.
Authentication - Developers whom want to extend the Admin API can now use the authentication for the overridden routes.
December 22, 2017
Smart BelongsTo - Developers can now implement Smart BelongsTo values updates.
Smart Fields - Add a "isFilterable" option to let them appear in the filters selection.
Security - Remove a vulnerability by upgrading Moment.js library.
December 12, 2017
Smart Fields - Prevent Smart Fields promise values injection errors on related data retrieval.
December 12, 2017
TypeScript Support - Forest can now load TypeScript modules.
Smart Fields - Prevent Smart Fields values injection errors on related data retrieval.
December 6, 2017
Summary View - Fix potential Summary View freeze on records having "Point" type fields (if some related data are displayed).
November 30, 2017
Collection Names - Improve the lianas versions transition from V1 to V2.
November 29, 2017
Collections Names - Collection names are now based on the model name whatever the ORM is.
November 27, 2017
Stripe Integration - Allow users to display Stripe records in the Details view.
November 8, 2017
Custom Domains - Make the feature usable natively with the CORS_ORIGINS variable.
November 6, 2017
Security - Remove all detected vulnerabilities upgrading some dependencies (nsp check --output summary).
October 30, 2017
Smart Fields - Do the Smart Fields values injection in the Serializer to simplify Smart Relationships implementation.
October 26, 2017
Types Support - Support Point field type.
Smart Relationships - Add a warning if a Smart Collection does not define the "idField" attribute necessary for Smart Relationships.
Smart Fields - Prevent the Smart Fields computation errors to generate a crash and handle it letting the value empty.
October 11, 2017
Sessions - Display a clean error message if the renderingId and envSecret are missing or inconsistent.
Initialisation - Prevent bad "import" syntax error detections on initialisation.
October 6, 2017
Stripe - Fix the 'mapping' collection name on Express/Mongoose.
Integrations - Ensure all the models are loading before integrations setup.
October 4, 2017
Initialisation - Do not try to require file that don't have the js extension.
October 3, 2017
Intercom - Make the conversation details accessible.
October 2, 2017
Initialisation - Prevent bad ES2017 syntax error detections on initialisation.
October 2, 2017
Intercom Integration - Prefer Intercom accessToken configuration to old fashioned appId/apiKey.
Intercom Integration - Remove support for old configuration parameter use "userCollection" (use mapping instead).
September 20, 2017
Smart Fields - Add a parameter to specify if the sorting is allowed on this field.
Initialisation - Ignore directories while loading models.
September 10, 2017
Initialisation - Display an explicit error log if a model cannot be loaded properly.
September 7, 2017
Export - Fix datetime formatting regression introduced by liana version 1.2.3.
August 30, 2017
Integrations - Catch an error if the user is not found by the Layer API.
Integrations - Catch an error if Mixpanel API does not responds data.
August 30, 2017
Resources Route - Allow users to call a ResourcesRoute from their app.
August 29, 2017
Onboarding - Display an error message if the envSecret option is missing.
Exports - Escape special characters for the string fields.
Integrations - Display models "mapping" errors if any.
August 24, 2017
Integrations - Change the Layer integration to be based on the Server API.
Code Inspection - Fix Forest customization code inspection to be recursive through directories.
August 23, 2017
Installation - Fix installation errors due to express-cors package using Yarn.
Exports - Fix bad initial implementation for exports authentication.
August 21, 2017
Exports - Forest can now handle large data exports.
August 9, 2017
Integrations - Add a first version of Layer integration.
August 8, 2017
Validations - Start the support of forms validations (with 9 first validations).
July 12, 2017
Records Update - Prevent a crash on record updates for records that have no attributes.
July 5, 2017
Search - Developers can configure in which fields the search will be executed.
July 5, 2017
Warnings - Remove a potential console deprecation warning.
June 28, 2017
Serializer - Log an error in the console if the association doesn't exist.
June 23, 2017
Collections - Correctly serialize collections that begin with an underscore.
June 23, 2017
Apimap - Send database type and orm version in apimap.
June 13, 2017
Error Messages - Display the stack trace on unexpected errors.
Error Messages - Display an explicit warning if Forest servers are in maintenance.
June 5, 2017
Records Serialization - Fix the object types case (kebab case) to prevent potential JSON api adapter errors on client side.
June 1, 2017
HasMany Smart Fields - Fix routes conflicts between hasMany Smart Fields and other associations.
May 29, 2017
Smart Collections - Add a new isSearchable property to display the search bar for Smart Collections.
May 24, 2017
Resources Updater - Pass the params.recordId to the ResourceUpdater.
Smart Fields - Serialize Smart Fields values for hasMany associations.
May 16, 2017
Smart Fields - Fix some bad Smart Fields getter calls on records list and detail display.
May 11, 2017
Customization Errors - Do not send the apimap when users create Forest customization with syntax errors in code.
Customization Errors - Add errors in the console when users create Forest customization with syntax errors in code.
Smart Fields - Serialize Smart Fields values for belongsTo association.
April 27, 2017
Smart Fields - Developers can now define Smart Fields setters.
Smart Fields - Replace the Smart Fields value method by get.
April 21, 2017
Smart Fields - Smart fields are sent in the detail view request
April 14, 2017
Setup Guide - Add integration field to the collections to distinguish Smart Collections and Collections from integrations.
Performances - Make the password comparison asynchronous on session creation.
Error Handling - Fix missing error code 500 in case of internal error.
April 6, 2017
Types Support - Support Dateonly field type.
Version Warning - Display a warning message if the liana version used is too old.
Technical - Promisify only the necessary method on apimap generation.
Console logs - Fix a bad error log display if the smart implementation directory does not exist.
March 28, 2017
Smart Actions - Users don't have to select records to use a smart action through the global option.
March 16, 2017
Logs - Log error messages for unexpected errors only.
Errors - Unexpected liana error now return a 500 status code.
Errors Handling - Improve the error message if the Forest "sequelize" option is misconfigured.
Intercom - Remove duplicate routes (the old ones).
Mixpanel - Fix the "user events" result display if there is no event.
March 10, 2017
Configuration - Display an error message if the Smart Action "fields" option is not an Array.
February 10, 2017
Configuration - Catch the error if the modelsDir configured does not exist.
February 6, 2016
Smart Actions - Support file download.
January 4, 2016
Configurations - Users can specify the directory for Forest Smart Implementation.
Configuration - Fix bad authentication when a custom path is configured.
December 14, 2016
Close.io - Add the field of the Lead status_label on the mapped tables.
December 12, 2016
Segments - Smart Segments can be created to define specific records subsets.
Integrations - Create a light Mixpanel integration to retrieve Mixpanel active users in Forest.
Package - Add contributors, keywords, homepage...
Package - Remove an unused package (logger).
Dependencies - Freeze the dependencies versions to reduce packages versions changes between projects/environments.
Configuration - Rename secret values to envSecret and authSecret.
Integrations - Remove some unnecessary routes.
Integrations - Fix a serialization issue.
December 5, 2016
Configuration - Catch a missing auth_key in the configuration and send an explicit error message on liana authentication.
Errors - Display the explicit error if a request error is catched.
Packages - Update the node-uuid package to the new version named uuid.
November 24, 2016
Errors - Catch potential validation error and send a response with the first retrieved error.
Record Creation - Allow false boolean values on record creation.
Allowed Users - Remove a space in the allowed users retrieval URL.
November 17, 2016
Deserializer - Expose Deserializer module to API.
Errors Tracking - Catch errors on app launch / apimap generation / liana session creation.
Session Token - Replace the old outline notion by the rendering in the generated token.
Custom Actions - Fix missing actions for Smart Collections.
October 28, 2016
Custom Actions - Fix the bad endpoints if some actions have the same name.
Resources Index - Fix lists with null smart field values.
October 14, 2016
Deserialization - Fix the deserialization if the payload has no attributes.
Fields - Serialize the "isVirtual" property in the apimap.
October 11, 2016
ES5 - Secure the ES5 compatibility with a git hook.
Record Create - Fix empty relationships on record creation.
September 30, 2016
hasMany - Fix the hasMany fetch when an integration is set.
September 30, 2016
Record Update - Fix the potential relationship dissociations on record update.
September 29, 2016
Pagination - fix the hasMany number of records.
September 27, 2016
Close.io - accept an array for mapping option.
September 28, 2016
Integration - Add the Close.io integration
Authentication - Users want to have an option to mount Forest Liana as a subapp.