-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Package system on libgit2 #11196
Package system on libgit2 #11196
Conversation
This is heroic stuff |
@@ -0,0 +1,210 @@ | |||
module GitConst | |||
|
|||
const OBJ_ANY = Cint(-2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wouldn't it make sense to use enums here now that they are supported?
You're doing a kickass job in here, btw. |
This is fantastic. I wonder the likelihood of having this go into 0.4. |
try | ||
LibGit2.GitRepo(cache) # open repo, free it at the end | ||
catch err | ||
rethrow(err) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this catch block do anything?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Exactly. 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Funny answer for a question. :-p
@ViralBShah That was an idea, but it depends on 0.4 release date. At this point, there are few places left to convert. I didn't expect that |
We're still on -dev for a little while longer, but probably not too much. If you can get this fully working on all platforms in the next few weeks, then we should think about switching. I'll need a few days to do some surgery to take command-line git out of the Windows binaries (and similar but not quite as invasive for the Mac binaries), if we're going to be ambitious enough for a complete replacement. We could possibly merge a conservative version of this for 0.4 that leaves both command-line git and libgit2 simultaneously around, and only uses libgit2 for the parts of Pkg where you feel it will work robustly. |
@tkelman I do not have access to OSX. Help appreciated. |
Neither do I. I can help you tweak appveyor to run the pkg test when you think it's ready for that, for now it isn't building this PR since it's apparently un-mergeable, but that's probably for the best at the moment. |
It'll probably still time out, but may as well uncomment this line Line 4 in 713e9e5
|
dd8f3bf
to
c6612f1
Compare
There was some broken homebrew stuff on OSX Travis that I fixed, and it looks like this passes! Worth rebasing, and tweaking appveyor now you think? Also good to add the new license header style on any newly added files |
I am happy to test on OS X, and I am sure so will @StefanKarpinski |
6597b06
to
be39e2c
Compare
be39e2c
to
35cd85f
Compare
Thanks @wildart for being persistent and addressing all our points over these past months! |
Package system on libgit2
this looks truly monumental. i'm excited! |
🍰 |
Oh sweet! This is really exciting. |
Note that we'll probably have to split up any libgit2 tests that rely on internet connectivity, put them either in pkg or a new file that doesn't run by default (since distro buildbots don't have internet connectivity) but we manually add to travis and appveyor. |
What's happened? I was thinking about how to spit Thanks everybody for reviewing. @tkelman You've been a great help. |
Great work, everyone involved! I'm really looking forward to using this! :) |
@wildart How will this be split, technically? Will you put generic function definitions in Base, i.e. |
Definitely |
Is it really monkey business to put generic definitions (which were added late in 0.4) for all the functions? |
You can import |
But then you still have both |
The whole idea of |
Also #5155. |
@wildart did you ever get a chance to structure the Git REPL mode as a package? A few people have expressed interest in using it, would be cool to have available to try out somewhere. |
Package system switch to
libgit2
promises faster and resource efficient package management.This work originated in #11143.
Pending: