# Handling Configuration Updates

Varbase utilizes [Drupal's configuration management](https://www.drupal.org/docs/8/configuration-management) which made it extremely resilient to manage update paths for configuration changes in Varbase versions.

### Change or Update Types <a href="#change-or-update-types" id="change-or-update-types"></a>

In Varbase, we categorize configuration changes and updates into 4 types:

| **Update Type**                | **Description**                                                                                                                                                                                                                                                                                    | **Examples**                                                                                                               |
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| **Forced Update**              | We have a new module that became a dependency, a configuration "fix", or a database table alter.This is forced and will always be executed through *hook\_update*.                                                                                                                                 | Increasing the "Maximum length" of a field of type "Text"Enabling a low-risk module that will become a standard in Varbase |
| **Forced Update if Unchanged** | Mostly a configuration change. The *hook\_update* we check if this setting remained the same before we do the update, so we don’t override user’s setting. If the user has overridden it, it becomes an “Optional Update” - see below.                                                             | Changed a checkbox default value.​Added a new CKEditor button to the a text format toolbar configuration.                  |
| **Optional Update**            | A nice enhancement that we recommend users to use or an update that failed to apply - see "Forced Update if Unchanged" above. There’s no *hook\_update* for this. The UI would give instructions to the users on how to apply this update or manually by liking to release notes or help articles. | Introduced an updated view with more exposed filters for admins to manage content.                                         |
| **No Update**                  | Only new installs would get this change.                                                                                                                                                                                                                                                           | A new theme has been introduced.                                                                                           |
