Skip to content

Update libgit2 to 9bbc8f3#965

Merged
nulltoken merged 2 commits into
vNextfrom
ntk/upgrade_binaries
Mar 17, 2015
Merged

Update libgit2 to 9bbc8f3#965
nulltoken merged 2 commits into
vNextfrom
ntk/upgrade_binaries

Conversation

@nulltoken

Copy link
Copy Markdown
Member

@nulltoken

Copy link
Copy Markdown
Member Author

This is an attempt at troubleshooting #961 build issues on Mac Os X

@nulltoken

Copy link
Copy Markdown
Member Author

😿

@carlosmn @Therzok Any idea? Can you reproduce this locally?

@Therzok

Therzok commented Feb 18, 2015

Copy link
Copy Markdown
Member

Nope. Yep.

@nulltoken

Copy link
Copy Markdown
Member Author

I'll work on bisecting this.

nulltoken added a commit to libgit2/libgit2 that referenced this pull request Feb 20, 2015
nulltoken added a commit to libgit2/libgit2 that referenced this pull request Feb 20, 2015
nulltoken added a commit to libgit2/libgit2 that referenced this pull request Feb 20, 2015
nulltoken added a commit to libgit2/libgit2 that referenced this pull request Feb 20, 2015
@nulltoken

Copy link
Copy Markdown
Member Author

Mac Os X build passes against libgit2/libgit2@b23c206
Mac Os X build fails against libgit2/libgit2@a291790

So this issue lies somewhere in libgit2/libgit2@b23c206...a291790

As shown in libgit2/libgit2#2917, the issue is put under the light through the -DCMAKE_OSX_ARCHITECTURES=i386;x86_64 option.

/cc @jeffhostetler @ethomson @carlosmn @Therzok Any idea?

@nulltoken

Copy link
Copy Markdown
Member Author

Updated to target @jeffhostetler 's libgit2/libgit2#2919

@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch from bc176c7 to 0b68179 Compare February 21, 2015 13:53
@nulltoken nulltoken changed the title Update libgit2 to 437ba9a Update libgit2 to 366e53d Feb 21, 2015
@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch from 0b68179 to 43ca2bf Compare March 4, 2015 14:45
@nulltoken

Copy link
Copy Markdown
Member Author

/cc @jamill @ammeep I'm wip-upgrading the libgit2 binaries. I should be done soon-ish

@nulltoken nulltoken changed the title Update libgit2 to 366e53d Update libgit2 to bdf0e73 Mar 4, 2015
Comment thread LibGit2Sharp/Core/GitCheckoutOpts.cs Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ZOMG TABS. :trollface:

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FIXED 😉

@nulltoken

Copy link
Copy Markdown
Member Author

Ok. Now that builds locally. Let's see how many tests are broken now...

@nulltoken

Copy link
Copy Markdown
Member Author

FWIW, there are a ton of breaking changes (and I see no easy way of providing a deprecating path that would actually be useful)...

@nulltoken

Copy link
Copy Markdown
Member Author

Regarding the identity which is going to be used for reflog messages, I was thinking about adding an entry to RepositoryOptions and CloneOptions.

Thoughts?

@nulltoken

Copy link
Copy Markdown
Member Author

Ok. This is ugly. But.. this is the first build that passes!

@carlosmn @ethomson @jamill @Therzok Would you please take a look at this and provide me with an early feedback?

@Therzok

Therzok commented Mar 16, 2015

Copy link
Copy Markdown
Member

o-shi---

Grabbing coffee.

@Therzok

Therzok commented Mar 16, 2015

Copy link
Copy Markdown
Member

I have a few things I want to put in for discussion:

  • Signature should have a constructor that takes an identity and uses DateTimeOffset.Now as time.
  • We should enforce Identity in the RepositoryOptions constructor.

More to come.

@carlosmn

Copy link
Copy Markdown
Member

It looks good to me as far as the delegation to libgit2 goes, though I notice the methods in Proxy do not have the _from_ infix for creating from an annotated commit.

The mess with UpdateHeadTarget() seems to stem from the special-casing you have for "HEAD", allowing it to point to an arbitrary reference, whereas no other symref is allowed to do that. Personally I would favour not checking for the existence of the target. If a caller wants to make sure it exists, they can look it up and pass the Reference themselves (not that this really solves anything, as it's still subject to race conditions on the target existing).

The current scheme may already be broken for allowing a remote-tracking HEAD to point to a branch which you know is coming.

@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch from 46a0c55 to 8979c01 Compare March 16, 2015 19:51
@nulltoken nulltoken changed the title Update libgit2 to bdf0e73 Update libgit2 to 8acf058 Mar 16, 2015
@nulltoken

Copy link
Copy Markdown
Member Author

I've extracted some fixes into #997

A reduced diff can be examined at ntk/deprecate...ntk/upgrade_binaries

@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch 2 times, most recently from 8a837aa to 9e7a993 Compare March 16, 2015 20:26
@nulltoken

Copy link
Copy Markdown
Member Author

Signature should have a constructor that takes an identity and uses DateTimeOffset.Now as time.

@Therzok Fixed

We should enforce Identity in the RepositoryOptions constructor.

Meaning, make it mandatory?

@nulltoken

Copy link
Copy Markdown
Member Author

It looks good to me as far as the delegation to libgit2 goes, though I notice the methods in Proxy do not have the from infix for creating from an annotated commit.

@carlosmn Fixed

@Therzok

Therzok commented Mar 16, 2015

Copy link
Copy Markdown
Member

I'm not sure, but from my experience, not setting an Identity/Signature failed to commit. (even though I had a global config set up)

With this Identity class, we can probably set up just the user/email and make lg2s do the time resolution based on the actual system time.

Just my $0.02. I'm not sure this would actually work every time.

@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch 3 times, most recently from a5d60a5 to f53997c Compare March 17, 2015 07:16
@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch from f53997c to dfaaf40 Compare March 17, 2015 15:41
@nulltoken nulltoken changed the title Update libgit2 to 8acf058 Update libgit2 to 9bbc8f3 Mar 17, 2015
@nulltoken
nulltoken force-pushed the ntk/upgrade_binaries branch from dfaaf40 to d8a04a4 Compare March 17, 2015 18:59
@nulltoken

Copy link
Copy Markdown
Member Author

I'm not sure, but from my experience, not setting an Identity/Signature failed to commit. (even though I had a global config set up)

@Therzok That's really weird. Could you please try to check this against this version?

@nulltoken

Copy link
Copy Markdown
Member Author

FWIW, I've cleaned up the PR and rebased it.

Final comments before merge?

@Therzok

Therzok commented Mar 17, 2015

Copy link
Copy Markdown
Member

When I get back to redoing some bits of the libgit2 port of XS, I'll take a look at it again. Until then, stay tuned.

@nulltoken
nulltoken merged commit d8a04a4 into vNext Mar 17, 2015
@nulltoken
nulltoken deleted the ntk/upgrade_binaries branch March 17, 2015 21:56
@nulltoken nulltoken added this to the v0.22 milestone Mar 18, 2015
@nulltoken

Copy link
Copy Markdown
Member Author

Published as a NuGet pre-relase package LibGit2Sharp 0.22.0-pre20150317225305

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants