<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/gitpython.git/git/test/test_index.py, branch 0.3.7</title>
<subtitle>github.com: gitpython-developers/GitPython.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/'/>
<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='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/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='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/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>
<entry>
<title>Fixed regression in test-suite for IndexFile</title>
<updated>2015-01-21T17:57:34+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-01-21T17:56:29+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=d565a874f29701531ce1fc0779592838040d3edf'/>
<id>d565a874f29701531ce1fc0779592838040d3edf</id>
<content type='text'>
Previously, it checked for AssertionErrors, now we have to implement
need-unbare-repo check ourselves.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, it checked for AssertionErrors, now we have to implement
need-unbare-repo check ourselves.
</pre>
</div>
</content>
</entry>
<entry>
<title>Improved unicode handling when using os.environ or GitConfigParser</title>
<updated>2015-01-19T17:10:16+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-01-19T17:10:16+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=df95149198744c258ed6856044ac5e79e6b81404'/>
<id>df95149198744c258ed6856044ac5e79e6b81404</id>
<content type='text'>
Assured unicode values are supported when reading the configuration,
and when getting author/committer information from the environment.

Fixes #237
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Assured unicode values are supported when reading the configuration,
and when getting author/committer information from the environment.

Fixes #237
</pre>
</div>
</content>
</entry>
<entry>
<title>IndexFile.commit() now runs pre-commit and post-commit hooks.</title>
<updated>2015-01-12T13:55:31+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-01-12T13:55:31+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=e8eae18dcc360e6ab96c2291982bd4306adc01b9'/>
<id>e8eae18dcc360e6ab96c2291982bd4306adc01b9</id>
<content type='text'>
However, it does so only on posix. The test-case will run on posix only
as well.
Please note that in theory, even on windows we will attempt to run hooks,
even though I am not sure that this will actually work.

Fixes #81
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
However, it does so only on posix. The test-case will run on posix only
as well.
Please note that in theory, even on windows we will attempt to run hooks,
even though I am not sure that this will actually work.

Fixes #81
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed os.path.realpath invocations as they are not necessary if paths are used consistently.</title>
<updated>2015-01-12T11:25:53+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-01-12T11:25:53+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=e7671110bc865786ffe61cf9b92bf43c03759229'/>
<id>e7671110bc865786ffe61cf9b92bf43c03759229</id>
<content type='text'>
This will save IOPs, and make the code easier to understand (I suppose).

Related to #224
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This will save IOPs, and make the code easier to understand (I suppose).

Related to #224
</pre>
</div>
</content>
</entry>
<entry>
<title>Made sure commits accept unicode or unicode characters</title>
<updated>2015-01-07T14:35:25+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-01-07T14:22:59+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=c6ee00d0dadcd7b10d60a2985db4fe137ca7cfed'/>
<id>c6ee00d0dadcd7b10d60a2985db4fe137ca7cfed</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix pep8</title>
<updated>2015-01-07T12:51:48+00:00</updated>
<author>
<name>firm1</name>
<email>firm1@github.com</email>
</author>
<published>2015-01-07T12:51:48+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=b6ed8d46c72366e111b9a97a7c238ef4af3bf4dc'/>
<id>b6ed8d46c72366e111b9a97a7c238ef4af3bf4dc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add tests for commit by actor</title>
<updated>2015-01-07T12:09:58+00:00</updated>
<author>
<name>firm1</name>
<email>firm1@users.noreply.github.com</email>
</author>
<published>2015-01-07T10:42:57+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=1dec7a822424bbe58b7b2a7787b1ea32683a9c19'/>
<id>1dec7a822424bbe58b7b2a7787b1ea32683a9c19</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>test_repo works</title>
<updated>2015-01-06T13:05:30+00:00</updated>
<author>
<name>Sebastian Thiel</name>
<email>byronimo@gmail.com</email>
</author>
<published>2015-01-06T13:05:30+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/gitpython.git/commit/?id=a05e49d2419d65c59c65adf5cd8c05f276550e1d'/>
<id>a05e49d2419d65c59c65adf5cd8c05f276550e1d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
