<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src, branch cmn/commit-create-safe</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/'/>
<entry>
<title>commit: safer commit creation with reference update</title>
<updated>2014-04-29T22:41:37+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-04-09T12:08:22+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=217c029b54e8f1574ae6bc71c4b25533ecff3b6a'/>
<id>217c029b54e8f1574ae6bc71c4b25533ecff3b6a</id>
<content type='text'>
The current version of the commit creation and amend function are unsafe
to use when passing the update_ref parameter, as they do not check that
the reference at the moment of update points to what the user expects.

Make sure that we're moving history forward when we ask the library to
update the reference for us by checking that the first parent of the new
commit is the current value of the reference. We also make sure that the
ref we're updating hasn't moved between the read and the write.

Similarly, when amending a commit, make sure that the current tip of the
branch is the commit we're amending.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The current version of the commit creation and amend function are unsafe
to use when passing the update_ref parameter, as they do not check that
the reference at the moment of update points to what the user expects.

Make sure that we're moving history forward when we ask the library to
update the reference for us by checking that the first parent of the new
commit is the current value of the reference. We also make sure that the
ref we're updating hasn't moved between the read and the write.

Similarly, when amending a commit, make sure that the current tip of the
branch is the commit we're amending.
</pre>
</div>
</content>
</entry>
<entry>
<title>pack-objects: always write out the status in write_one()</title>
<updated>2014-04-26T16:15:39+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-04-26T16:15:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=38d338b2b85f280fe54057375fc3ccd6d2877e26'/>
<id>38d338b2b85f280fe54057375fc3ccd6d2877e26</id>
<content type='text'>
Make sure we set the output parameter to a value.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make sure we set the output parameter to a value.
</pre>
</div>
</content>
</entry>
<entry>
<title>zstream: grow based on used memory rather than allocated</title>
<updated>2014-04-26T16:04:43+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-04-26T16:04:43+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=c7f86efb13815554d5b5e7c58bf19769e99c1357'/>
<id>c7f86efb13815554d5b5e7c58bf19769e99c1357</id>
<content type='text'>
When deflating data, we might need to grow the buffer. Currently we
add a guess on top of the currently-allocated buffer size.

When we re-use the buffer, it already has some memory allocated; adding
to that means that we always grow the buffer regardless of how much we
need to use.

Instead, increase on top of the currently-used size. This still leaves
us with the allocated size of the largest object we compress, but it's a
minor pain compared to unbounded growth.

This fixes #2285.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When deflating data, we might need to grow the buffer. Currently we
add a guess on top of the currently-allocated buffer size.

When we re-use the buffer, it already has some memory allocated; adding
to that means that we always grow the buffer regardless of how much we
need to use.

Instead, increase on top of the currently-used size. This still leaves
us with the allocated size of the largest object we compress, but it's a
minor pain compared to unbounded growth.

This fixes #2285.
</pre>
</div>
</content>
</entry>
<entry>
<title>refdb: fix typo and wording</title>
<updated>2014-04-26T12:29:18+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-04-26T12:29:18+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=4f9d54146d569fffb679386fd3057e571afacd1f'/>
<id>4f9d54146d569fffb679386fd3057e571afacd1f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Filter: Make sure to release local on error</title>
<updated>2014-04-25T13:49:26+00:00</updated>
<author>
<name>Jiri Pospisil</name>
<email>mekishizufu@gmail.com</email>
</author>
<published>2014-04-25T13:49:26+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=424222f4157b050fd6417b8805796f7183a38e03'/>
<id>424222f4157b050fd6417b8805796f7183a38e03</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 #2284 from jacquesg/push-progress-callback</title>
<updated>2014-04-25T09:10:19+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>vicent@github.com</email>
</author>
<published>2014-04-25T09:10:19+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=8443ed6c1d1237e203474a772fb4281c382df6ac'/>
<id>8443ed6c1d1237e203474a772fb4281c382df6ac</id>
<content type='text'>
Fire progress and update tips callbacks also for pushes.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fire progress and update tips callbacks also for pushes.</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #2241 from libgit2/rb/stash-skip-submodules</title>
<updated>2014-04-25T09:04:12+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>vicent@github.com</email>
</author>
<published>2014-04-25T09:04:12+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=2ad51b81d2d735c50549f16c308d61c0a5ed990c'/>
<id>2ad51b81d2d735c50549f16c308d61c0a5ed990c</id>
<content type='text'>
Improve stash and checkout for ignored + untracked items</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Improve stash and checkout for ignored + untracked items</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #2294 from ethomson/merge_checkout_strategy</title>
<updated>2014-04-24T23:20:08+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-24T23:20:08+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=af9eeac93929bdf10c30e60f34717959d83b6bd3'/>
<id>af9eeac93929bdf10c30e60f34717959d83b6bd3</id>
<content type='text'>
Merge checkout strategy</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Merge checkout strategy</pre>
</div>
</content>
</entry>
<entry>
<title>Handle explicitly ignored dir slightly differently</title>
<updated>2014-04-24T18:59:50+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-24T18:59:50+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=a409acefbbadeb607e4d6dde681bff5aed6ae9fc'/>
<id>a409acefbbadeb607e4d6dde681bff5aed6ae9fc</id>
<content type='text'>
When considering status of untracked directories, if we find an
explicitly ignored item, even if it is a directory, treat the
parent as an IGNORED item.  It was accidentally being treated as
an EMPTY item because we were not looking into the ignored subdir.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When considering status of untracked directories, if we find an
explicitly ignored item, even if it is a directory, treat the
parent as an IGNORED item.  It was accidentally being treated as
an EMPTY item because we were not looking into the ignored subdir.
</pre>
</div>
</content>
</entry>
<entry>
<title>fetchhead: deal with quotes in branch names</title>
<updated>2014-04-24T12:08:29+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-04-24T12:08:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=bdc82e1c00776229b19688abaf08d6701f2dc41f'/>
<id>bdc82e1c00776229b19688abaf08d6701f2dc41f</id>
<content type='text'>
The current FETCH_HEAD parsing code assumes that a quote must end the
branch name. Git however allows for quotes as part of a branch name,
which causes us to consider the FETCH_HEAD file as invalid.

Instead of searching for a single quote char, search for a quote char
followed by SP, which is not a valid part of a ref name.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The current FETCH_HEAD parsing code assumes that a quote must end the
branch name. Git however allows for quotes as part of a branch name,
which causes us to consider the FETCH_HEAD file as invalid.

Instead of searching for a single quote char, search for a quote char
followed by SP, which is not a valid part of a ref name.
</pre>
</div>
</content>
</entry>
</feed>
