Drupal is a registered trademark of Dries Buytaert
Release: Modeler API 1.1.5 Minor update available for module modeler_api (1.1.5). Release: Admin Audit Trail 1.0.12 Minor update available for module admin_audit_trail (1.0.12). Release: Workflow Modeler 1.0.7 Minor update available for module modeler (1.0.7). Release: Protected Content 10.1.124 Minor update available for module proc (10.1.124). Release: DKAN Dataset Archiver 1.0.9 Minor update available for module dkan_dataset_archiver (1.0.9). Release: DKAN Dataset Archiver 1.1.7 Minor update available for module dkan_dataset_archiver (1.1.7). Release: DKAN Dataset Archiver 0.333.7 Minor update available for module dkan_dataset_archiver (0.333.7). Release: Changelogify 1.6.0 Minor update available for module changelogify (1.6.0). Usage Milestone: Role Theme Switcher Module role_theme_switcher crossed 1,000 active installs. Module Revived: Simple XML sitemap DiWoo 1.0.6 Module simple_sitemap_diwoo updated after 9 months of inactivity (1.0.6).

File_history are a form api element (and a file field wigdet in the 2.x branch)

Ok... what else ?

The main feature of file history are permitting to maintain a "memory" or a collection of "non-used" files and provide an easy switch between them.

A use case ?

The main use case of this field are providing data from processing files. A contributor want to expose an amount of data so huge that the "manual contribution" are not a workable solution.
But, such an amount of data, make the upload and replacement of file for processing a little risky.
File_history permit, by the upload validations from file module, a validation of the new file during upload. After upload, and save of form/entity, the new file is only "load" but not activ. The new file become active only after selection. If after all, data aren't corrects, the old file remain on the field. A simple click on "select/unselect" buttons permit the rollback.

Branches

1.x : The legacy One

The form element propose more customisations than the widget.
The "no_upload", "no_use", "no_download" items in one hand and "create_missing" items in the other hand permit you to create a list of non-drupal generated files (like logs of operations). You can manage donwload, delete there files, maintaining a little history of the operations

2.x : CCK compatibility

- A file field widget based on the form API element
- A "test module" (test_file_history) are present with a preconfigured node type and a test form ( /admin/file_history/exemple_form ).
- The cleaning of the "managing file directly in folder" mecanics, now totaly based on core - file API

3.x : Drupal 10/11 ready

That is the 2.x branch port to Drupal 10/11.
Why a new branch ? because some of Drupal service has changed...

More ?

Documentation ?

Read more in the full documentation

1.x to 2.x/3.x migration

The module ensures backwards compatibility.
For this, it is necessary to add an attribute '#legacy' => TRUE, on the "file_history" form element.

 $form['configurations_files'] = [
      '#type' => 'file_history',
       [...]
      '#legacy' => TRUE,
      '#create_missing' => TRUE,

Activity

Tracked releases
1
Tracked since
Aug 2026
Latest release
6 hours ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Active

Releases

Version Type Release date
3.0.2 Stable Aug 24, 2026