Skip to content

Releases: mirage/irmin

3.4.3

19 Oct 16:50
Compare
Choose a tag to compare

CHANGES:

Fixed

  • irmin-pack
    • Fix read-only opening flags of mapping for read-only opening of stores that
      do not have read-write rights on the files. (#2121, @Ngoguey42)

3.4.2

07 Oct 09:08
Compare
Choose a tag to compare

CHANGES:

Added

  • irmin

    • Add test_set_and_get* functions to retrieve commit associated with an update to the store (#2075, @patricoferris)
  • irmin-graphql

  • irmin-pack

    • Expose Gc.cancel to abort a running GC (#2101, @art-w)
  • irmin-tezos-utils

    • Add package irmin-tezos-utils containing a graphical tool for manual pack
      files analysis. (#1939, @clecat)

Changed

  • irmin-pack
    • irmin_pack_mem no longer exposes disk specifics functions (#2081,
      @icristescu)
    • Move unix specific details for Pack_key and Pack_value from irmin-pack
      to irmin-pack.unix (#2084, @metanivek)
    • Remove unnecessary files at open_rw and after a failed GC (#2095, @art-w)

Fixed

  • irmin-pack
    • Fix data race in RO instances when reading control file (#2100, @Ngoguey42)
    • Fix bugs in gc related to commits that share the same tree. (#2106,
      @icristescu)
    • Fix the traverse pack files commands in the irmin-tezos CLI to work with
      gced stores. (#1919, @icristescu)

3.4.1

07 Sep 16:09
Compare
Choose a tag to compare

CHANGES:

Added

  • irmin

    • Add Storage module for creating custom storage layers (#2047, @metanivek)
  • irmin-pack

Changed

Fixed

  • irmin-pack
    • Fix the behaviour of irmin-pack regarding hashes and keys to GCed objects.
      It used to not correctly ignore these entries, which could have resulted in
      various bugs. E.g. the impossibility to append an object that used to be
      dead and that has its hash in index. (#2070, @Ngoguey42)

3.4.0

26 Aug 18:22
9b23247
Compare
Choose a tag to compare

CHANGES:

Added

  • irmin

  • irmin-fs

  • irmin-git

  • irmin-graphql

  • irmin-http

  • irmin-cli

  • irmin-pack

    • Add a garbage collection feature, allowing a user to discard commits older
      than a specified commit. This feature is only enabled for stores that use
      Indexing_strategy.minimal. The primary API is Store.Gc.run,
      Store.Gc.wait, and Store.Gc.is_finished. See examples/gc.ml for a
      demonstration of usage.
    • Add a consistency check for the files on disk when opening store (#2004,
      @icristescu)

Changed

  • irmin

    • Replaced Tree.node_fn type with more general Tree.folder type to
      represent the different ways to use Tree.fold (#1918, @metanivek)
  • irmin-unix

    • Removed the irmin-unix package. Unix backends are now subpackages of their
      relevant backend (see irmin-fs.unix and irmin-git.unix). The CLI tool is
      in irmin-cli. For common unix utilities, see irmin.unix. (#1953, @metanivek)
  • irmin-graphql

Fixed

  • irmin
    • Fix a bug in Irmin.LRU.clear that disables the cache completly
      after a clear. This is not used in any production code as only
      the GC is clearing LRU so far (#1998, @samoht)

3.3.2

25 Jul 09:21
c1ce451
Compare
Choose a tag to compare

CHANGES:

Fixed

3.3.1

22 Jun 17:14
Compare
Choose a tag to compare

CHANGES:

Fixed

3.3.0

20 Jun 12:29
Compare
Choose a tag to compare

CHANGES:

Added

  • irmin

    • Add Metrics module to describe metric gathering in irmin.
      (#1817, @maiste)
    • Add Repo.config to access config used to create repo
      (#1886, @zshipko)
  • irmin-unix

    • Add --plugin flag to load Dynlink plugins that can register new
      contents, hash and store types (#1808, @zshipko)
  • irmin-pack

    • Add use_fsync, dict_auto_flush_threshold and
    • suffix_auto_flush_threshold in store configuration. (#1865, @Ngoguey42)
    • Add no_migrate in store configuration. (#1893, @zshipko)

Changed

  • irmin-pack
    • Move Irmin_pack.Pack_store.Indexing_strategy to
      Irmin_pack.Indexing_strategy and the rest of Pack_store
      to Irmin_pack_unix (#1833, @Ngoguey42)
    • Different repos opened using the same store module no longer share caches
      and file descriptors (#1852, @Ngoguey42)
    • Snapshot.Import.close requires a repo as additional argument (#1872,
      @icristescu)
    • Upgraded on-disk format to version 3 to support better synchronisation
      mechanism between readwrite and readonly instances. This change is not
      backwards-compatible with existing stores using irmin-pack.x.x < 3.3.0
      versions. A migration done by the readwrite instance is necessary to open
      older stores with irmin-pack.3.3.0. It is not forwards compatible. (#1865)
    • Rename Store.sync to Store.reload (#1900, @Ngoguey42).
    • Add Pack_error exception that centralizes many error cases alongside
      RO_not_allowed and Unix.Unix_error (#1899, @Ngoguey42)

Fixed

  • irmin-pack

  • irmin

    • Fix Tree.export for nodes exported twice using different repos. (#1795,
      @Ngoguey42)

3.2.2

16 May 14:00
Compare
Choose a tag to compare

CHANGES:

Fixed

  • irmin-pack

3.2.1

07 Apr 15:24
Compare
Choose a tag to compare

CHANGES:

3.2.0

28 Mar 08:53
Compare
Choose a tag to compare

CHANGES:

Added

  • irmin-pack
    • Add forbid_empty_dir_persistence in store configuration. (#1789,
      @Ngoguey42)
    • Add Store.Snapshot to expose the inodes for tezos snapshots (#1757,
      @icristescu).

Changed

  • irmin
    • Add error types in the API or proof verifiers. (#1791, @icristescu)
    • Reduced the memory footprint of Tree.fold ~uniq:`True by a factor of 2.
      (#1770, @craigfe)