# 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

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

| **Update Type**                | **Description**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | **Examples**                                                                                                                             |
| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| **Forced Update**              | <p>We have a new module that became a dependency, a configuration "fix", or a database table alter.</p><p>This is forced and will always be executed through <em>hook\_update</em>.</p>                                                                                                                                                                                                                                                                                                                                                                         | <p>Increasing the "Maximum length" of a field of type "Text"</p><p>Enabling a low-risk module that will become a standard in Varbase</p> |
| **Forced Update if Unchanged** | Mostly a configuration change. Using[ Update Helper](https://www.drupal.org/project/update_helper) module config, in 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.                                                                                                                                                                                                                                    | <p>Changed a checkbox default value.</p><p></p><p>Added a new CKEditor button to the a text format toolbar configuration.</p>            |
| **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. Instead it is communicated through [ Update Helper](https://www.drupal.org/project/update_helper) module checklist integration in Drupal UI. The UI would give instructions to the users on how to apply this update (mostly using a Drush command that reads [Update Helper](https://www.drupal.org/project/update_helper)  config) 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.                                                                                                         |

## Varbase Update Changelog UI

Varbase uses the [Update Helper](https://www.drupal.org/project/update_helper) module (a module made by Thunder team) which provides a UI using the [Checklist API](https://www.drupal.org/project/checklistapi). This is a good tool as it shows the site admin, developer, or maintainer what new updates are available from inside the site itself.

{% hint style="info" %}

### How to Access Varbase Updates Changelog UI

You can navigate to [http://my.varbase-site.local/**admin/config/development/update-helper**](http://my.varbase-site.local/admin**/config/development/update-helper**) *(where my.varbase-site.local is the URL for your website)*\
or go to **Administration** \ **Reports** \ **Checklists** \ ***Varbase Updates*** to learn about the new changes and updates introduced in your Varbase site.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.varbase.vardot.com/9.0.x/developers/updating-varbase/handling-configuration-updates.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
