QGIS plugin. Local SQLite journal, MIT licence.
RecoverLand
Local journal of committed edits.
After the edit session ends, QGIS does not return to the previous state. RecoverLand records each edit in a SQLite file on the machine.
Without a primary key, the documentation counts the reliable recovery window in days.
Verified from the repository.
192
Commits
34
Active development days
568
Entries in the FR/EN catalogue
Synthetic geometry
Loading the scene
Six fictitious parcels. No difference yet.
- Unchanged
- Edited
- Restored
- Previous outline
Snapshot 1/5
Opening snapshot
The arrow keys change the snapshot when the slider is focused.
01
Undo ends with the session
In QGIS, undo stops when the edit session ends. After commit, the previous state is available only from a full backup. On a Shapefile, a GeoPackage or a shared PostgreSQL table, an attribute or geometry error often shows up days later.
RecoverLand writes the attribute, the geometry and the deletion into a local SQLite journal, with no server and no added dependency. The scene rewinds six fictitious parcels.
02
Reading the journal
The journal filters by layer or by feature. Two states are compared on the map. A feature is restored, or the layer returns to a date.
01
Opening snapshot
Six fictitious parcels. No difference yet.
02
Geometry edited
Parcel B changes shape. Its status becomes “kept”.
03
Deletion
Parcel D leaves the layer. The journal keeps its last outline.
04
Attribute edited
Parcel C receives a material, and one vertex moves.
05
Proposed restore
Parcel D can be restored. The write waits for a proven target.
Before / after, A
Drag the divider. With the keyboard, the arrow keys move it when the field is focused.
| Before | After | |
|---|---|---|
| Class | study | study |
| Status | present | present |
| Material | unset | unset |
Demonstration on fictitious parcels.
03
Checks before and after the write
The snapshot is written to disk before the commit reaches the source. After a crash, it is reconciled at startup.
CommitGuard reads the real provider state after each restore, and compensates a partial failure. Rewind does not write on an unproven target. Dropped fields are named in the report.
“No restore without a proven target.”
Show how a partial failure is reported.
- 01Snapshot on disk
- 02Commit reaches the source
- 03Read the provider back
The provider state was read back. Difference: none.
Demonstration on fictitious parcels.
04
Local engine
The journal is a SQLite database. The interface is in French and in English. The plugin covers QGIS 3.40 LTR through 4.x.
- SQLite v7Local journal schema
- fileAsynchronous write queue
- fondTasks off the interface thread
- Qt 5 / Qt 6Qt 5 and Qt 6 compatibility
- FR / EN568 entries, checked at compile time
- MITPlugin licence
- Files: Shapefile and GeoPackage. Databases: PostgreSQL, MSSQL and Oracle, through saved connections.
- More than 60 execution scenarios run without an interface, in continuous integration.
- Limits are shown. Without a primary key, the reliable window is counted in days.
05
What is verified
Version, QGIS range and repository counts are below. An unpublished internal measurement has no figure here.
192
Commits
From 24 Mar 2026 to 23 Oct 2026.
34
Active development days
568
Entries in the FR/EN catalogue
Checked at compile time.
60+
Headless scenarios
They run in continuous integration. The repository has more than 60.
7.1.3
Current version
On the official QGIS plugin repository. First publication: 4.9.0.
3.40 LTR to 4.99
QGIS, Qt 5 and Qt 6
1,397
Downloads, internal count
As of 23 Oct 2026. Re-check on plugins.qgis.org on publication day.
Not published
No figure is shown for these points until they are confirmed.
Pending confirmation
Time saved on the post-commit check
The changelog cites an internal measurement on dense layers. The figure stays off this page.
Pending confirmation
A real case of recovered data
No case, even an anonymous one, is attached to this page.
Repository window
24 Mar 2026
Start of the counted window
23 Oct 2026
192 commits, 34 active days
The weekly log runs from 24 Mar 2026 to 23 Oct 2026. The highest bar is in May, with another rise in August. September is nearly empty.
The documentation states the reliable window and the writes that are refused. This page uses the same limits.
RecoverLand is published on plugins.qgis.org.
The scope of a custom tool is set in the decision diagnostic.
The other study: VTT