Skip to content

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.

Undo stops when the edit session ends. The journal keeps those edits.

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.

  1. 01

    Opening snapshot

    Six fictitious parcels. No difference yet.

  2. 02

    Geometry edited

    Parcel B changes shape. Its status becomes “kept”.

  3. 03

    Deletion

    Parcel D leaves the layer. The journal keeps its last outline.

  4. 04

    Attribute edited

    Parcel C receives a material, and one vertex moves.

  5. 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.

BeforeAfter
Before / after
BeforeAfter
Classstudystudy
Statuspresentpresent
Materialunsetunset

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.”

The write waits until the target is proven.
The snapshot reaches the disk before the commit reaches the source.

Show how a partial failure is reported.

  1. 01Snapshot on disk
  2. 02Commit reaches the source
  3. 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.

  1. SQLite v7Local journal schema
  2. fileAsynchronous write queue
  3. fondTasks off the interface thread
  4. Qt 5 / Qt 6Qt 5 and Qt 6 compatibility
  5. FR / EN568 entries, checked at compile time
  6. 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

  1. 24 Mar 2026

    Start of the counted window

  2. 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