Skip to content
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

I had to revert this commit to compile irmin #677

Closed
aweis opened this issue Apr 24, 2019 · 8 comments
Closed

I had to revert this commit to compile irmin #677

aweis opened this issue Apr 24, 2019 · 8 comments

Comments

@aweis
Copy link

aweis commented Apr 24, 2019

888715f

Otherwise I get this error:

File "src/irmin-git/irmin_git.ml", line 181, characters 26-29:
Error: The function applied to this argument has type
?capacity:int -> (string, Raw.EncoderWithoutHeader.error) result
This argument cannot be applied with label ~raw
ocamlopt src/irmin-git/.irmin_git.objs/native/irmin_git.{cmx,o} (exit 2)

@dinosaure
Copy link
Member

Currently, irmin uses the last version of ocaml-git available in GitHub. So if you want to use last version of irmin, you should pin ocaml-git too with: opam pin add git https://github.com/mirage/ocaml-git.git with OPAM - you should pin git-mirage, git-unix and git-http too.

@avsm
Copy link
Member

avsm commented May 1, 2019

@aweis, thanks for the report. How are you currently installing the development version of Irmin? Did you get it to work with the pinned git versions?

There is a big 2.0 release around the corner when all these development branches will be released -- it is tracked in #658

@aweis
Copy link
Author

aweis commented May 1, 2019

When I filed this bug I was building Irmin from source. I sort of gave up on this approach and started using the packages on opam (1.4 is the last major release there)

I am new to ocaml - is there a way to push irmin 2.0 alpha to opam so users of esy can easily get a 2.0 version to play around with?

@aweis
Copy link
Author

aweis commented May 2, 2019

I was building irmin as a dependency to my esy application. I specified a resolution as follows:

"@opam/irmin": "mirage/irmin:irmin.opam#8c94ce2ecef64921f9c3494f4e4ea312883cca10",

(I needed to do this to get irmin 2.0 to build)

I can confirm that when I also add the resolution
"@opam/irmin-git": "mirage/irmin:irmin-git.opam#8c94ce2ecef64921f9c3494f4e4ea312883cca10",

this bug still persists.

I even tried using master of ocaml-git:

"@opam/ocaml-git": "mirage/ocaml-git:ocaml-git.opam#27640eba56577f1802ef6ea0502b0e0b53079878",

the build error still occurs

@dinosaure
Copy link
Member

@aweis can we have a report of your error? I can not reproduce build error on my side with:

  • encore#master
  • ke#master
  • checkseum#master
  • ocaml-git#master
  • irmin#master

@aweis
Copy link
Author

aweis commented May 2, 2019

FYI @avsm thank you for writing this paper. http://anil.recoil.org/papers/2015-jfla-irmin.pdf

Very helpful!

@aweis
Copy link
Author

aweis commented May 7, 2019

I can close this now since I probably was doing something wrong with the commit hashes I was building irmin against:

https://github.com/aweis/irmin-web/blob/master/package.json#L89-L90

from this you can see the esy resolutions I am using that is able to correctly build irmin.

Thanks for your help for looking into this and answering questions.

@aweis aweis closed this as completed May 7, 2019
@avsm
Copy link
Member

avsm commented May 7, 2019

Thanks @aweis -- none of the development team use esy day-to-day so we're not familiar with how to use it. My understanding is that esy can wrap opam pin, so perhaps @jordwalke could provide some instructions for our README about how that works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants