<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git, branch ethomson/patch_from_diff</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/'/>
<entry>
<title>Teach `git_patch_from_diff` about parsed diffs</title>
<updated>2016-08-24T14:08:57+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@github.com</email>
</author>
<published>2016-08-24T04:38:39+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=b859faa61ce3f1fda5c29ac1e72a3d58fee2ede6'/>
<id>b859faa61ce3f1fda5c29ac1e72a3d58fee2ede6</id>
<content type='text'>
Ensure that `git_patch_from_diff` can return the patch for parsed diffs,
not just generate a patch for a generated diff.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ensure that `git_patch_from_diff` can return the patch for parsed diffs,
not just generate a patch for a generated diff.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #3904 from stinb/filesystem-iterator-double-free</title>
<updated>2016-08-24T06:28:49+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2016-08-24T06:28:49+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=c60210d36780a39db669e52d6d592d339c6a2ed3'/>
<id>c60210d36780a39db669e52d6d592d339c6a2ed3</id>
<content type='text'>
filesystem_iterator: fixed double free on error</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
filesystem_iterator: fixed double free on error</pre>
</div>
</content>
</entry>
<entry>
<title>filesystem_iterator: fixed double free on error</title>
<updated>2016-08-22T15:27:47+00:00</updated>
<author>
<name>Jason Haslam</name>
<email>jason@scitools.com</email>
</author>
<published>2016-08-22T15:27:47+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=7a3f1de500423ed1cdf1d97a273146f2098b672e'/>
<id>7a3f1de500423ed1cdf1d97a273146f2098b672e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #3837 from novalis/dturner/indexv4</title>
<updated>2016-08-17T14:24:44+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@github.com</email>
</author>
<published>2016-08-17T14:24:44+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=c1b370e9313a13df350974e2237997cc651a5d67'/>
<id>c1b370e9313a13df350974e2237997cc651a5d67</id>
<content type='text'>
Support index v4</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Support index v4</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #3895 from pks-t/pks/negate-basename-in-subdirs</title>
<updated>2016-08-17T13:54:48+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@github.com</email>
</author>
<published>2016-08-17T13:54:48+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=635a922274046ee077235b9764d0360e33d735ab'/>
<id>635a922274046ee077235b9764d0360e33d735ab</id>
<content type='text'>
ignore: allow unignoring basenames in subdirectories</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ignore: allow unignoring basenames in subdirectories</pre>
</div>
</content>
</entry>
<entry>
<title>ignore: allow unignoring basenames in subdirectories</title>
<updated>2016-08-12T12:47:54+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2016-08-12T07:06:15+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=fcb2c1c8956200f49263e6e0b3c681d100af4734'/>
<id>fcb2c1c8956200f49263e6e0b3c681d100af4734</id>
<content type='text'>
The .gitignore file allows for patterns which unignore previous
ignore patterns. When unignoring a previous pattern, there are
basically three cases how this is matched when no globbing is
used:

1. when a previous file has been ignored, it can be unignored by
   using its exact name, e.g.

   foo/bar
   !foo/bar

2. when a file in a subdirectory has been ignored, it can be
   unignored by using its basename, e.g.

   foo/bar
   !bar

3. when all files with a basename are ignored, a specific file
   can be unignored again by specifying its path in a
   subdirectory, e.g.

   bar
   !foo/bar

The first problem in libgit2 is that we did not correctly treat
the second case. While we verified that the negative pattern
matches the tail of the positive one, we did not verify if it
only matches the basename of the positive pattern. So e.g. we
would have also negated a pattern like

    foo/fruz_bar
    !bar

Furthermore, we did not check for the third case, where a
basename is being unignored in a certain subdirectory again.

Both issues are fixed with this commit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The .gitignore file allows for patterns which unignore previous
ignore patterns. When unignoring a previous pattern, there are
basically three cases how this is matched when no globbing is
used:

1. when a previous file has been ignored, it can be unignored by
   using its exact name, e.g.

   foo/bar
   !foo/bar

2. when a file in a subdirectory has been ignored, it can be
   unignored by using its basename, e.g.

   foo/bar
   !bar

3. when all files with a basename are ignored, a specific file
   can be unignored again by specifying its path in a
   subdirectory, e.g.

   bar
   !foo/bar

The first problem in libgit2 is that we did not correctly treat
the second case. While we verified that the negative pattern
matches the tail of the positive one, we did not verify if it
only matches the basename of the positive pattern. So e.g. we
would have also negated a pattern like

    foo/fruz_bar
    !bar

Furthermore, we did not check for the third case, where a
basename is being unignored in a certain subdirectory again.

Both issues are fixed with this commit.
</pre>
</div>
</content>
</entry>
<entry>
<title>index: support index v4</title>
<updated>2016-08-10T18:19:30+00:00</updated>
<author>
<name>David Turner</name>
<email>dturner@twopensource.com</email>
</author>
<published>2016-05-17T19:40:32+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=5625d86b994fd81f1b0d887890e8168d7b5f46cc'/>
<id>5625d86b994fd81f1b0d887890e8168d7b5f46cc</id>
<content type='text'>
Support reading and writing index v4.  Index v4 uses a very simple
compression scheme for pathnames, but is otherwise similar to index v3.

Signed-off-by: David Turner &lt;dturner@twitter.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Support reading and writing index v4.  Index v4 uses a very simple
compression scheme for pathnames, but is otherwise similar to index v3.

Signed-off-by: David Turner &lt;dturner@twitter.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>varint: Add varint encoding/decoding</title>
<updated>2016-08-10T18:19:06+00:00</updated>
<author>
<name>David Turner</name>
<email>dturner@twopensource.com</email>
</author>
<published>2016-05-17T19:40:46+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=aeb5ee5ab50a062aac02ca084b02582430669808'/>
<id>aeb5ee5ab50a062aac02ca084b02582430669808</id>
<content type='text'>
This code is ported from git.git

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
Signed-off-by: David Turner &lt;dturner@twopensource.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This code is ported from git.git

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
Signed-off-by: David Turner &lt;dturner@twopensource.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #3891 from pks-t/pks/stransport-memory-management-improvements</title>
<updated>2016-08-09T12:34:55+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>carlosmn@github.com</email>
</author>
<published>2016-08-09T12:34:55+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=26a8617d96ba96875304d56a7ce698a85e559c43'/>
<id>26a8617d96ba96875304d56a7ce698a85e559c43</id>
<content type='text'>
stransport memory management improvements</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
stransport memory management improvements</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #3893 from pks-t/pks/remove-unused-test-cb</title>
<updated>2016-08-09T12:07:10+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@github.com</email>
</author>
<published>2016-08-09T12:07:10+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/libgit2.git/commit/?id=5961face15148dd13fd89ab946a627a466434461'/>
<id>5961face15148dd13fd89ab946a627a466434461</id>
<content type='text'>
tests: blob: remove unused callback function</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
tests: blob: remove unused callback function</pre>
</div>
</content>
</entry>
</feed>
