-
Notifications
You must be signed in to change notification settings - Fork 69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mini conduit in Git #428
Mini conduit in Git #428
Conversation
… close to Unix module
bc05e49
to
2aae915
Compare
Ok, this PR reached a state where I'm able to provide a simple unikernel to fetch a Git repository without Irmin. The idea is to fill as long as CLI arguments the $ ./minigit --ssh-seed my-seed -r [email protected]:dinosaure/art
$ ./minigit -r https://github.com/dinosaure/art
$ ./minigit -r git://github.com/dinosaure/art However, a call with an SSH endpoint without an SSH seed does not work.
|
I think we reach a good state where I handle any cases, see the
|
At this stage, the PR is cleaned and tests are added to check the behavior of |
I locally merge this PR and #420 and all seems fine. Go to merge. |
It was an interesting read, and all looks good to me! Two things to note:
|
This new argument is not very useful but in some contexts, it should be interesting to "verify" the status of the Initially, this argument is used to prove that we use an SSH connection when we use However, such situation can be avoided by an other way. Instead to use In this code: ocaml-git/src/git-mirage/git_mirage_ssh.ml Lines 132 to 135 in fff3f58
We can fill the ocaml-git/src/git-mirage/git_mirage_ssh.ml Lines 91 to 128 in fff3f58
with a
We should retake the Conduit's documentation indeed. I'm a bit frustrated to rewrite N times the same documentation. It's not mandatory. |
… git-unix (3.0.0) CHANGES: - Rewrite of `ocaml-git` (@dinosaure, mirage/ocaml-git#395) - Delete useless constraints on digestif's signature (@dinosaure, mirage/ocaml-git#399) - Add support of CoHTTP with UNIX and MirageOS (@ulugbekna, mirage/ocaml-git#400) - Add progress reporting on fetch command (@ulugbekna, mirage/ocaml-git#405) - Lint dependencies on packages (`git-cohttp-unix` and `git-cohttp-mirage`) and update to the last version of CoHTTP (@hannesm, mirage/ocaml-git#407) - Fix internal `Cstruct_append` implementation (@dinosaure, mirage/ocaml-git#401) - Implement shallow commit (@dinosaure, mirage/ocaml-git#402) - Update to `conduit.3.0.0` (@dinosaure, mirage/ocaml-git#408) (deleted by the integration of `mimic`) - Delete use of `ocurl` (@dinosaure, mirage/ocaml-git#410) - Delete the useless **old** `git-mirage` package (@hannesm, mirage/ocaml-git#411) - Fix about unresolved endpoint with `conduit.3.0.0` (@dinosaure, mirage/ocaml-git#412) - Refactors fetch command (@ulugbekna, mirage/ocaml-git#404) - Fix ephemerons about temporary devices (@dinosaure, mirage/ocaml-git#413) - Implementation of `ogit-fetch` as an example (@ulugbekna, mirage/ocaml-git#406) - Rename `nss` to `git-nss` (@dinosaure, mirage/ocaml-git#415) - Refactors `git-nss` (@ulugbekna, mirage/ocaml-git#416) - Update README.md (@ulugbekna, mirage/ocaml-git#417) - Replace deprecated `Fmt` functions (@ulugbekna, mirage/ocaml-git#421) - Delete physical equality (@ulugbekna, mirage/ocaml-git#422) - Rename `prelude` argument by `uses_git_transport` (@ulugbekna, mirage/ocaml-git#423) - Refactors Smart decoder (@ulugbekna, mirage/ocaml-git#424) - Constraint to use `fmt.0.8.7` (@dinosaure, mirage/ocaml-git#425) - Small refactors in `git-nss` (@dinosaure, mirage/ocaml-git#427) - Delete `conduit.3.0.0` and replace it by `mimic` (@dinosaure, mirage/ocaml-git#428) - Delete the useless `verify` function on `fetch` and `push` (@dinosaure, mirage/ocaml-git#429) - Delete `pin-depends` on `awa` (@dinosaure, mirage/ocaml-git#431)
…t-unix and git-mirage (3.0.0) CHANGES: - Rewrite of `ocaml-git` (@dinosaure, mirage/ocaml-git#395) - Delete useless constraints on digestif's signature (@dinosaure, mirage/ocaml-git#399) - Add support of CoHTTP with UNIX and MirageOS (@ulugbekna, mirage/ocaml-git#400) - Add progress reporting on fetch command (@ulugbekna, mirage/ocaml-git#405) - Lint dependencies on packages (`git-cohttp-unix` and `git-cohttp-mirage`) and update to the last version of CoHTTP (@hannesm, mirage/ocaml-git#407) - Fix internal `Cstruct_append` implementation (@dinosaure, mirage/ocaml-git#401) - Implement shallow commit (@dinosaure, mirage/ocaml-git#402) - Update to `conduit.3.0.0` (@dinosaure, mirage/ocaml-git#408) (deleted by the integration of `mimic`) - Delete use of `ocurl` (@dinosaure, mirage/ocaml-git#410) - Delete the useless **old** `git-mirage` package (@hannesm, mirage/ocaml-git#411) - Fix about unresolved endpoint with `conduit.3.0.0` (@dinosaure, mirage/ocaml-git#412) - Refactors fetch command (@ulugbekna, mirage/ocaml-git#404) - Fix ephemerons about temporary devices (@dinosaure, mirage/ocaml-git#413) - Implementation of `ogit-fetch` as an example (@ulugbekna, mirage/ocaml-git#406) - Rename `nss` to `git-nss` (@dinosaure, mirage/ocaml-git#415) - Refactors `git-nss` (@ulugbekna, mirage/ocaml-git#416) - Update README.md (@ulugbekna, mirage/ocaml-git#417) - Replace deprecated `Fmt` functions (@ulugbekna, mirage/ocaml-git#421) - Delete physical equality (@ulugbekna, mirage/ocaml-git#422) - Rename `prelude` argument by `uses_git_transport` (@ulugbekna, mirage/ocaml-git#423) - Refactors Smart decoder (@ulugbekna, mirage/ocaml-git#424) - Constraint to use `fmt.0.8.7` (@dinosaure, mirage/ocaml-git#425) - Small refactors in `git-nss` (@dinosaure, mirage/ocaml-git#427) - Delete `conduit.3.0.0` and replace it by `mimic` (@dinosaure, mirage/ocaml-git#428) - Delete the useless `verify` function on `fetch` and `push` (@dinosaure, mirage/ocaml-git#429) - Delete `pin-depends` on `awa` (@dinosaure, mirage/ocaml-git#431)
…t-unix and git-mirage (3.0.0) CHANGES: - Rewrite of `ocaml-git` (@dinosaure, mirage/ocaml-git#395) - Delete useless constraints on digestif's signature (@dinosaure, mirage/ocaml-git#399) - Add support of CoHTTP with UNIX and MirageOS (@ulugbekna, mirage/ocaml-git#400) - Add progress reporting on fetch command (@ulugbekna, mirage/ocaml-git#405) - Lint dependencies on packages (`git-cohttp-unix` and `git-cohttp-mirage`) and update to the last version of CoHTTP (@hannesm, mirage/ocaml-git#407) - Fix internal `Cstruct_append` implementation (@dinosaure, mirage/ocaml-git#401) - Implement shallow commit (@dinosaure, mirage/ocaml-git#402) - Update to `conduit.3.0.0` (@dinosaure, mirage/ocaml-git#408) (deleted by the integration of `mimic`) - Delete use of `ocurl` (@dinosaure, mirage/ocaml-git#410) - Delete the useless **old** `git-mirage` package (@hannesm, mirage/ocaml-git#411) - Fix about unresolved endpoint with `conduit.3.0.0` (@dinosaure, mirage/ocaml-git#412) - Refactors fetch command (@ulugbekna, mirage/ocaml-git#404) - Fix ephemerons about temporary devices (@dinosaure, mirage/ocaml-git#413) - Implementation of `ogit-fetch` as an example (@ulugbekna, mirage/ocaml-git#406) - Rename `nss` to `git-nss` (@dinosaure, mirage/ocaml-git#415) - Refactors `git-nss` (@ulugbekna, mirage/ocaml-git#416) - Update README.md (@ulugbekna, mirage/ocaml-git#417) - Replace deprecated `Fmt` functions (@ulugbekna, mirage/ocaml-git#421) - Delete physical equality (@ulugbekna, mirage/ocaml-git#422) - Rename `prelude` argument by `uses_git_transport` (@ulugbekna, mirage/ocaml-git#423) - Refactors Smart decoder (@ulugbekna, mirage/ocaml-git#424) - Constraint to use `fmt.0.8.7` (@dinosaure, mirage/ocaml-git#425) - Small refactors in `git-nss` (@dinosaure, mirage/ocaml-git#427) - Delete `conduit.3.0.0` and replace it by `mimic` (@dinosaure, mirage/ocaml-git#428) - Delete the useless `verify` function on `fetch` and `push` (@dinosaure, mirage/ocaml-git#429) - Delete `pin-depends` on `awa` (@dinosaure, mirage/ocaml-git#431)
/cc @hannesm, /cc @ulugbekna