<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src/path.h, branch attr-export</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>Add path utilities to resolve relative paths</title>
<updated>2012-07-11T06:19:47+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2012-07-10T22:13:30+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=b0fe11292219f5d63f2159e0b0eb24ff21d66b10'/>
<id>b0fe11292219f5d63f2159e0b0eb24ff21d66b10</id>
<content type='text'>
This makes it easy to take a buffer containing a path with relative
references (i.e. .. or . path segments) and resolve all of those
into a clean path.  This can be applied to URLs as well as file
paths which can be useful.

As part of this, I made the drive-letter detection apply on all
platforms, not just windows.  If you give a path that looks like
"c:/..." on any platform, it seems like we might as well detect
that as a rooted path.  I suppose if you create a directory named
"x:" on another platform and want to use that as the beginning
of a relative path under the root directory of your repo, this
could cause a problem, but then it seems like you're asking for
trouble.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes it easy to take a buffer containing a path with relative
references (i.e. .. or . path segments) and resolve all of those
into a clean path.  This can be applied to URLs as well as file
paths which can be useful.

As part of this, I made the drive-letter detection apply on all
platforms, not just windows.  If you give a path that looks like
"c:/..." on any platform, it seems like we might as well detect
that as a rooted path.  I suppose if you create a directory named
"x:" on another platform and want to use that as the beginning
of a relative path under the root directory of your repo, this
could cause a problem, but then it seems like you're asking for
trouble.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix warnings on 64-bit windows builds</title>
<updated>2012-04-17T17:47:39+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2012-04-13T20:00:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=44ef8b1b300f0cd3d8572fa1b40d257462f28240'/>
<id>44ef8b1b300f0cd3d8572fa1b40d257462f28240</id>
<content type='text'>
This fixes all the warnings on win64 except those in deps, which
come from the regex code.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes all the warnings on win64 except those in deps, which
come from the regex code.
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert attr, ignore, mwindow, status to new errors</title>
<updated>2012-03-16T22:56:01+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>arrbee@arrbee.com</email>
</author>
<published>2012-03-16T22:56:01+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=0d0fa7c3681e4ef3d0452666a9bc97d4b08391c9'/>
<id>0d0fa7c3681e4ef3d0452666a9bc97d4b08391c9</id>
<content type='text'>
Also cleaned up some previously converted code that still had
little things to polish.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also cleaned up some previously converted code that still had
little things to polish.
</pre>
</div>
</content>
</entry>
<entry>
<title>Continue error conversion</title>
<updated>2012-03-15T00:36:15+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>arrbee@arrbee.com</email>
</author>
<published>2012-03-15T00:36:15+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=deafee7bd7a9e2efcdff90627b6094d8c1519319'/>
<id>deafee7bd7a9e2efcdff90627b6094d8c1519319</id>
<content type='text'>
This converts blob.c, fileops.c, and all of the win32 files.
Also, various minor cleanups throughout the code.  Plus, in
testing the win32 build, I cleaned up a bunch (although not
all) of the warnings with the 64-bit build.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This converts blob.c, fileops.c, and all of the win32 files.
Also, various minor cleanups throughout the code.  Plus, in
testing the win32 build, I cleaned up a bunch (although not
all) of the warnings with the 64-bit build.
</pre>
</div>
</content>
</entry>
<entry>
<title>error-handling: References</title>
<updated>2012-03-05T23:43:10+00:00</updated>
<author>
<name>Vicent Martí</name>
<email>tanoku@gmail.com</email>
</author>
<published>2012-02-16T23:13:34+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=1a48112342932e9fcd45a1ff5935f1c9c53b83d1'/>
<id>1a48112342932e9fcd45a1ff5935f1c9c53b83d1</id>
<content type='text'>
Yes, this is error handling solely for `refs.c`, but some of the
abstractions leak all ofer the code base.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Yes, this is error handling solely for `refs.c`, but some of the
abstractions leak all ofer the code base.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update diff to use iterators</title>
<updated>2012-03-02T23:49:29+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>arrbee@arrbee.com</email>
</author>
<published>2012-02-29T00:14:47+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=74fa4bfae37e9d7c9e35550c881b114d7a83c4fa'/>
<id>74fa4bfae37e9d7c9e35550c881b114d7a83c4fa</id>
<content type='text'>
This is a major reorganization of the diff code.  This changes
the diff functions to use the iterators for traversing the
content.  This allowed a lot of code to be simplified.  Also,
this moved the functions relating to outputting a diff into a
new file (diff_output.c).

This includes a number of other changes - adding utility
functions, extending iterators, etc. plus more tests for the
diff code.  This also takes the example diff.c program much
further in terms of emulating git-diff command line options.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a major reorganization of the diff code.  This changes
the diff functions to use the iterators for traversing the
content.  This allowed a lot of code to be simplified.  Also,
this moved the functions relating to outputting a diff into a
new file (diff_output.c).

This includes a number of other changes - adding utility
functions, extending iterators, etc. plus more tests for the
diff code.  This also takes the example diff.c program much
further in terms of emulating git-diff command line options.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix iterators based on pull request feedback</title>
<updated>2012-02-22T23:15:35+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>arrbee@arrbee.com</email>
</author>
<published>2012-02-22T23:15:35+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=0534641dfec001794ae9a83cfd1cfc7acaef97b7'/>
<id>0534641dfec001794ae9a83cfd1cfc7acaef97b7</id>
<content type='text'>
This update addresses all of the feedback in pull request #570.

The biggest change was to create actual linked list stacks for
storing the tree and workdir iterator state.  This cleaned up
the code a ton.  Additionally, all of the static functions had
their 'git_' prefix removed, and a lot of other unnecessary
changes were removed from the original patch.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This update addresses all of the feedback in pull request #570.

The biggest change was to create actual linked list stacks for
storing the tree and workdir iterator state.  This cleaned up
the code a ton.  Additionally, all of the static functions had
their 'git_' prefix removed, and a lot of other unnecessary
changes were removed from the original patch.
</pre>
</div>
</content>
</entry>
<entry>
<title>Uniform iterators for trees, index, and workdir</title>
<updated>2012-02-21T22:46:24+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>arrbee@arrbee.com</email>
</author>
<published>2012-02-21T22:46:24+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=b6c93aef4276051f9c4536ecbed48f4cd093bd1b'/>
<id>b6c93aef4276051f9c4536ecbed48f4cd093bd1b</id>
<content type='text'>
This create a new git_iterator type of object that provides a
uniform interface for iterating over the index, an arbitrary
tree, or the working directory of a repository.

As part of this, git ignore support was extended to support
push and pop of directory-based ignore files as the working
directory is being traversed (so the array of ignores does
not have to be recreated at each directory during traveral).

There are a number of other small utility functions in buffer,
path, vector, and fileops that are included in this patch
that made the iterator implementation cleaner.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This create a new git_iterator type of object that provides a
uniform interface for iterating over the index, an arbitrary
tree, or the working directory of a repository.

As part of this, git ignore support was extended to support
push and pop of directory-based ignore files as the working
directory is being traversed (so the array of ignores does
not have to be recreated at each directory during traveral).

There are a number of other small utility functions in buffer,
path, vector, and fileops that are included in this patch
that made the iterator implementation cleaner.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update Copyright header</title>
<updated>2012-02-13T16:11:09+00:00</updated>
<author>
<name>schu</name>
<email>schu-github@schulog.org</email>
</author>
<published>2012-02-13T16:10:24+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=5e0de328181c6ddb55a58d4aa7c79271c5298789'/>
<id>5e0de328181c6ddb55a58d4aa7c79271c5298789</id>
<content type='text'>
Signed-off-by: schu &lt;schu-github@schulog.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: schu &lt;schu-github@schulog.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Move path related functions from fileops to path</title>
<updated>2012-01-17T23:49:47+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>arrbee@arrbee.com</email>
</author>
<published>2012-01-17T23:49:47+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=1744fafec05d8fa3036a43f5e390c790810b05a5'/>
<id>1744fafec05d8fa3036a43f5e390c790810b05a5</id>
<content type='text'>
This takes all of the functions that look up simple data about
paths (such as `git_futils_isdir`) and moves them over to path.h
(becoming `git_path_isdir`).  This leaves fileops.h just with
functions that actually manipulate the filesystem or look at
the file contents in some way.

As part of this, the dir.h header which is really just for win32
support was moved into win32 (with some minor changes).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This takes all of the functions that look up simple data about
paths (such as `git_futils_isdir`) and moves them over to path.h
(becoming `git_path_isdir`).  This leaves fileops.h just with
functions that actually manipulate the filesystem or look at
the file contents in some way.

As part of this, the dir.h header which is really just for win32
support was moved into win32 (with some minor changes).
</pre>
</div>
</content>
</entry>
</feed>
