<feed xmlns='http://www.w3.org/2005/Atom'>
<title>GitPython/git/test, branch 1.0.1</title>
<subtitle>Forked from https://github.com/gitpython-developers/GitPython</subtitle>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/'/>
<entry>
<title>fix(config): selective cfg write;fix cfg parser</title>
<updated>2015-04-22T06:56:18+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-22T06:51:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=b9a2ea80aa9970bbd625da4c986d29a36c405629'/>
<id>b9a2ea80aa9970bbd625da4c986d29a36c405629</id>
<content type='text'>
* config parser now handles quoted values correctly. This doesn't hamper
  multi-line support.
* added regression test to travis to assure we will be warned if we
  rewrite and break the user's .gitconfig file
* only rewrite configuration files if we actually called a mutating
  method on the writer. Previously it would always rewrite it.

Fixes #285
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* config parser now handles quoted values correctly. This doesn't hamper
  multi-line support.
* added regression test to travis to assure we will be warned if we
  rewrite and break the user's .gitconfig file
* only rewrite configuration files if we actually called a mutating
  method on the writer. Previously it would always rewrite it.

Fixes #285
</pre>
</div>
</content>
</entry>
<entry>
<title>test: make git-daemon port configurable via env</title>
<updated>2015-04-21T12:44:16+00:00</updated>
<author>
<name>Benedikt Morbach</name>
<email>benedikt.morbach@googlemail.com</email>
</author>
<published>2015-04-21T11:45:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=c1cedc5c417ddf3c2a955514dcca6fe74913259b'/>
<id>c1cedc5c417ddf3c2a955514dcca6fe74913259b</id>
<content type='text'>
add a GIT_PYTHON_TEST_GIT_DAEMON_PORT to set a port other than 9418,
for example for when you already have a daemon running on that port.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
add a GIT_PYTHON_TEST_GIT_DAEMON_PORT to set a port other than 9418,
for example for when you already have a daemon running on that port.
</pre>
</div>
</content>
</entry>
<entry>
<title>test: Make git-daemon only listen on localhost</title>
<updated>2015-04-21T11:28:13+00:00</updated>
<author>
<name>Benedikt Morbach</name>
<email>benedikt.morbach@googlemail.com</email>
</author>
<published>2015-04-21T11:28:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=bccdb483aaa7235b85a49f2c208ee1befd2706dd'/>
<id>bccdb483aaa7235b85a49f2c208ee1befd2706dd</id>
<content type='text'>
No reason to expose a daemon to all interfaces when it is only used for
tests, which connect to localhost anyway.
I'd love to use localhost here instead, but the git-daemon man page points out:

    If IPv6 is not supported, then --listen=hostname is also not
    supported and --listen must be given an IPv4 address.

I don't know of a way to check if git has ipv6 support, but 127.0.0.1
should be around for the foreseeable future
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No reason to expose a daemon to all interfaces when it is only used for
tests, which connect to localhost anyway.
I'd love to use localhost here instead, but the git-daemon man page points out:

    If IPv6 is not supported, then --listen=hostname is also not
    supported and --listen must be given an IPv4 address.

I don't know of a way to check if git has ipv6 support, but 127.0.0.1
should be around for the foreseeable future
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(test_docs): we are at major version 1 now</title>
<updated>2015-04-16T07:12:13+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-16T07:12:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=abd23a37d8b93721c0e58e8c133cef26ed5ba1f0'/>
<id>abd23a37d8b93721c0e58e8c133cef26ed5ba1f0</id>
<content type='text'>
It expected to see major version 0 though.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It expected to see major version 0 though.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'teeberg-master'</title>
<updated>2015-04-08T12:58:53+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-08T12:58:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=d8bf7d416f60f52335d128cf16fbba0344702e49'/>
<id>d8bf7d416f60f52335d128cf16fbba0344702e49</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(test_cmd): handle GitCommandNotFound in test</title>
<updated>2015-04-08T10:08:54+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-08T10:08:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=a08733d76a8254a20a28f4c3875a173dcf0ad129'/>
<id>a08733d76a8254a20a28f4c3875a173dcf0ad129</id>
<content type='text'>
Related to #248
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Related to #248
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(remote): allow to raise during push/fetch</title>
<updated>2015-04-08T09:00:32+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-08T09:00:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=e9f8f159ebad405b2c08aa75f735146bb8e216ef'/>
<id>e9f8f159ebad405b2c08aa75f735146bb8e216ef</id>
<content type='text'>
Do not swallow non-zero exit status during push and fetch unless
we managed to parse head information.

This behaviour will effetively handle cases were no work was done
due to invalid refspecs or insufficient permissions.

Fixes #271
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Do not swallow non-zero exit status during push and fetch unless
we managed to parse head information.

This behaviour will effetively handle cases were no work was done
due to invalid refspecs or insufficient permissions.

Fixes #271
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(docs): be clear about exit code handling</title>
<updated>2015-04-08T08:41:18+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-08T08:41:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=723f100a422577235e06dc024a73285710770fca'/>
<id>723f100a422577235e06dc024a73285710770fca</id>
<content type='text'>
When pushing/pulling, we ignore errors unless it's exit code 128.
The reason for this is now made explicit to make clear that issues
are handled by PushInfo flags accordingly.

Related #271
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When pushing/pulling, we ignore errors unless it's exit code 128.
The reason for this is now made explicit to make clear that issues
are handled by PushInfo flags accordingly.

Related #271
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(index): don't write extension data by default</title>
<updated>2015-04-08T07:50:26+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-08T07:50:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=8f043d8a1d7f4076350ff0c778bfa60f7aa2f7aa'/>
<id>8f043d8a1d7f4076350ff0c778bfa60f7aa2f7aa</id>
<content type='text'>
It turned out that the index is not actually corrupted, which is good
news. What happens is that `git` writes `TREE` extension data into the
index, which causes it to write out the given tree *as is* next time
a `git commit` is executed. When using `git add`, this extension data
is maintained automatically. However, GitPython doesn't do that ... .
Usually this is no problem at all, as you are supposed to use
`IndexFile.commit(...)` along with `IndexFile.add(...)`.

Thanks to a shortcoming in the GitPython API, the index was
automatically written out whenever files have been added, without
providing control over whether or not *extension data* will be
written along with it.

My fix consists of an additional flag in `IndexFile.add(...)`, which
causes extension data not to be written by default, so commits can be
safely done via `git commit` or `IndexFile.commit(...)`.

However, this might introduce new subtle bugs in case someone is
relying on extension data to be written. As this can be controlled
through the said flag though, a fix is easily done in that case.

Fixes #265
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It turned out that the index is not actually corrupted, which is good
news. What happens is that `git` writes `TREE` extension data into the
index, which causes it to write out the given tree *as is* next time
a `git commit` is executed. When using `git add`, this extension data
is maintained automatically. However, GitPython doesn't do that ... .
Usually this is no problem at all, as you are supposed to use
`IndexFile.commit(...)` along with `IndexFile.add(...)`.

Thanks to a shortcoming in the GitPython API, the index was
automatically written out whenever files have been added, without
providing control over whether or not *extension data* will be
written along with it.

My fix consists of an additional flag in `IndexFile.add(...)`, which
causes extension data not to be written by default, so commits can be
safely done via `git commit` or `IndexFile.commit(...)`.

However, this might introduce new subtle bugs in case someone is
relying on extension data to be written. As this can be controlled
through the said flag though, a fix is easily done in that case.

Fixes #265
</pre>
</div>
</content>
</entry>
<entry>
<title>test(index): test for #265</title>
<updated>2015-04-07T16:27:16+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-04-07T16:27:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/GitPython/commit/?id=1fd07a0a7a6300db1db8b300a3f567b31b335570'/>
<id>1fd07a0a7a6300db1db8b300a3f567b31b335570</id>
<content type='text'>
However, it doesn't reproduce on the latest version of GitPython.
Maybe it's on an older one.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
However, it doesn't reproduce on the latest version of GitPython.
Maybe it's on an older one.
</pre>
</div>
</content>
</entry>
</feed>
