Skip to content

Releases: mirage/ocaml-git

carton-v0.4.0

15 Mar 14:53
Compare
Choose a tag to compare

CHANGES:

  • Handle trunc argument when we process a thin PACK file
    breaking changes
    An optional argument is added on the record which abstract the file-system.
    It should be correctly handled by underlying implementation of the
    file-system. It appears that, at top, we need to figure out such option,
    specially for Git and Cstruct_append to correctly access to memories.

3.3.1

05 Mar 18:34
Compare
Choose a tag to compare

CHANGES:

carton-v0.3.0

05 Mar 15:21
Compare
Choose a tag to compare

CHANGES:

  • Provides binaries to manipulate PACK files (@dinosaure, #475)
    breaking changes
    A transitive breaking changes from decompress.1.3.0 when
    the compressor expects a De.Lz77.window instead of
    De.window
  • Update to decompress.1.3.0 (@dinosaure, #477)

3.3.0

18 Feb 15:28
Compare
Choose a tag to compare

CHANGES:

  • Fix tests when we push to an empty repository (#462, @dinosaure, @ulugbekna)

  • Fix new smart tests without a global git config (#463, @sternenseemann, @dinosaure)

  • Refactor tests (#464, @ulugbekna, @dinosaure)

  • Refactor find_common.ml (#465, @ulugbekna, @dinosaure)

  • Some preparation about Git protocol v2 (#466, @ulugbekna, @dinosaure)

  • Add HTTP/HTTPS support on the unikernel example (#467, @dinosaure)

  • Fix bug about push and capabilities (#468, @dinosaure, @hannesm, @ulugbekna)

  • Implement HTTP push and handle username & password in the given Uri.t (#469, @dinosaure)

  • breaking changes
    Commit object must have a double LF to separate the header and the body. This format changes
    hashes of commit and invalid old commits generated by ocaml-git. It seems that on the Git
    side, the format is not fully respected - and it's why Git did not complain about that on our
    tests for a long time.

    However, git fsck does this check and an HTTP push to GitHub run git fsck at the end. To
    be able to push (or run our unikernel over HTTP/S), we must generate right commits.

    So, we advise users to make a fake commit with Git (git commit --allow-empty -m.) on
    repositories used by ocaml-git and fetch it with depth:1. Otherwise, this new version
    of ocaml-git will refute older commits - due to the inherent isomorphism between
    decoder/encoder in ocaml-git.

    For Irmin users, this breaking changes does not change anything when irmin reformats correctly
    the message to put the second LF. However, a breaking change exists on the API level when the
    Git commit (and a Git tag) expects a string option now (instead of a simple `string).

    For more details and tests, see #470 (@dinosaure)

3.2.0

06 Feb 11:58
Compare
Choose a tag to compare

CHANGES:

carton-v0.2.0

05 Feb 18:54
Compare
Choose a tag to compare

CHANGES:

  • Unmonad mmap (@dinosaure, #454)
    mmap is a syscall which does not block. The ability to use it outside
    the scheduler monad (like LWT) permits us to detach multiple processes
    to analyze a PACK file.

    With this PR, we take the advantage of Thread or Lwt_preemptive
    (or more acccurately, the concurrency) to analyze a large PACK file and
    speed-up the clone/fetch process.

    The distribution comes with a new binary, carton.verify-pack which is
    git verify-pack.

3.1.1

27 Jan 17:59
Compare
Choose a tag to compare

CHANGES:

3.1.0

13 Jan 19:37
Compare
Choose a tag to compare

CHANGES:

3.0.0

09 Jan 17:36
Compare
Choose a tag to compare

CHANGES:

carton-v0.1.0

09 Jan 15:05
Compare
Choose a tag to compare

CHANGES:

  • First release of carton