<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/compat, branch v2.6.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.6.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.6.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2015-09-14T19:53:48Z</updated>
<entry>
<title>poll: honor the timeout on Win32</title>
<updated>2015-09-14T19:53:48Z</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2015-09-12T17:50:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ef8b53e78c534d732fe58a46da8dbd922287a56b'/>
<id>urn:sha1:ef8b53e78c534d732fe58a46da8dbd922287a56b</id>
<content type='text'>
Ensure that when passing a pipe, the gnulib poll replacement will not
return 0 before the timeout has passed.

Not obeying the timeout (and merely returning 0) causes pathological
behavior when preparing a packfile for a repository and taking a
long time to do so.  If poll were to return 0 immediately, this would
cause keep-alives to get sent as quickly as possible until the packfile
was created.  Such deviance from the standard would cause megabytes (or
more) of keep-alive packets to be sent.

GetTickCount is used as it is efficient, stable and monotonically
increasing.  (Neither GetSystemTime nor QueryPerformanceCounter have
all three of these properties.)

Signed-off-by: Edward Thomson &lt;ethomson@microsoft.com&gt;
Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Mingw: verify both ends of the pipe () call</title>
<updated>2015-08-28T18:11:50Z</updated>
<author>
<name>Jose F. Morales</name>
<email>jfmcjf@gmail.com</email>
</author>
<published>2015-08-28T09:43:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c3cb7b6fecd4fe00b002e5a90a7a91f148c50248'/>
<id>urn:sha1:c3cb7b6fecd4fe00b002e5a90a7a91f148c50248</id>
<content type='text'>
The code to open and test the second end of the pipe clearly imitates
the code for the first end. A little too closely, though... Let's fix
the obvious copy-edit bug.

Signed-off-by: Jose F. Morales &lt;jfmcjf@gmail.com&gt;
Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Reviewed-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Acked-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'nd/untracked-cache'</title>
<updated>2015-05-26T20:24:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-05-26T20:24:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=38ccaf93bbf5a99dbff908068292ffaa5bafe25e'/>
<id>urn:sha1:38ccaf93bbf5a99dbff908068292ffaa5bafe25e</id>
<content type='text'>
Teach the index to optionally remember already seen untracked files
to speed up "git status" in a working tree with tons of cruft.

* nd/untracked-cache: (24 commits)
  git-status.txt: advertisement for untracked cache
  untracked cache: guard and disable on system changes
  mingw32: add uname()
  t7063: tests for untracked cache
  update-index: test the system before enabling untracked cache
  update-index: manually enable or disable untracked cache
  status: enable untracked cache
  untracked-cache: temporarily disable with $GIT_DISABLE_UNTRACKED_CACHE
  untracked cache: mark index dirty if untracked cache is updated
  untracked cache: print stats with $GIT_TRACE_UNTRACKED_STATS
  untracked cache: avoid racy timestamps
  read-cache.c: split racy stat test to a separate function
  untracked cache: invalidate at index addition or removal
  untracked cache: load from UNTR index extension
  untracked cache: save to an index extension
  ewah: add convenient wrapper ewah_serialize_strbuf()
  untracked cache: don't open non-existent .gitignore
  untracked cache: mark what dirs should be recursed/saved
  untracked cache: record/validate dir mtime and reuse cached output
  untracked cache: make a wrapper around {open,read,close}dir()
  ...
</content>
</entry>
<entry>
<title>Merge branch 'lm/squelch-bg-progress'</title>
<updated>2015-05-11T21:23:42Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-05-11T21:23:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=66ff763ebb35e5fc379f73c2769656cd61fe6b33'/>
<id>urn:sha1:66ff763ebb35e5fc379f73c2769656cd61fe6b33</id>
<content type='text'>
Many long-running operations show progress eye-candy, even when
they are later backgrounded.  Hide the eye-candy when the process
is sent to the background instead.

* lm/squelch-bg-progress:
  compat/mingw: stubs for getpgid() and tcgetpgrp()
  progress: no progress in background
</content>
</entry>
<entry>
<title>compat/mingw: stubs for getpgid() and tcgetpgrp()</title>
<updated>2015-04-15T18:50:34Z</updated>
<author>
<name>Johannes Sixt</name>
<email>j6t@kdbg.org</email>
</author>
<published>2015-04-15T18:29:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9a9a41db83052b674b89c084e4ac8c1458f7b11e'/>
<id>urn:sha1:9a9a41db83052b674b89c084e4ac8c1458f7b11e</id>
<content type='text'>
Windows does not have process groups. It is, therefore, the simplest
to pretend that each process is in its own process group.

While here, move the getppid() stub from its old location (between
two sync related functions) next to the two new functions.

Signed-off-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>mingw32: add uname()</title>
<updated>2015-03-12T20:45:18Z</updated>
<author>
<name>Nguyễn Thái Ngọc Duy</name>
<email>pclouds@gmail.com</email>
</author>
<published>2015-03-08T10:12:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7b6aff0655c965959a59cc7fa3ed51c2a1fbcd44'/>
<id>urn:sha1:7b6aff0655c965959a59cc7fa3ed51c2a1fbcd44</id>
<content type='text'>
Helped-by: Eric Sunshine &lt;sunshine@sunshineco.com&gt;
Signed-off-by: Nguyễn Thái Ngọc Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'dm/compat-s-ifmt-for-zos'</title>
<updated>2014-12-22T20:27:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-12-22T20:27:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2f17ecbd8d58c79e76767da82cf824840dfd367f'/>
<id>urn:sha1:2f17ecbd8d58c79e76767da82cf824840dfd367f</id>
<content type='text'>
Long overdue departure from the assumption that S_IFMT is shared by
everybody made in 2005.

* dm/compat-s-ifmt-for-zos:
  compat: convert modes to use portable file type values
</content>
</entry>
<entry>
<title>Merge branch 'js/windows-open-eisdir-error'</title>
<updated>2014-12-05T19:42:35Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-12-05T19:42:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2528ff079c9dd8a47483d841f53cd93ec1044a72'/>
<id>urn:sha1:2528ff079c9dd8a47483d841f53cd93ec1044a72</id>
<content type='text'>
* js/windows-open-eisdir-error:
  Windows: correct detection of EISDIR in mingw_open()
</content>
</entry>
<entry>
<title>compat: convert modes to use portable file type values</title>
<updated>2014-12-04T19:58:36Z</updated>
<author>
<name>David Michael</name>
<email>fedora.dm0@gmail.com</email>
</author>
<published>2014-12-04T02:24:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d543d9c0f44a89f30ec1670f16c698b5da801476'/>
<id>urn:sha1:d543d9c0f44a89f30ec1670f16c698b5da801476</id>
<content type='text'>
This adds simple wrapper functions around calls to stat(), fstat(),
and lstat() that translate the operating system's native file type
bits to those used by most operating systems.  It also rewrites the
S_IF* macros to the common values, so all file type processing is
performed using the translated modes.  This makes projects portable
across operating systems that use different file type definitions.

Only the file type bits may be affected by these compatibility
functions; the file permission bits are assumed to be 07777 and are
passed through unchanged.

Signed-off-by: David Michael &lt;fedora.dm0@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Windows: correct detection of EISDIR in mingw_open()</title>
<updated>2014-11-17T16:45:50Z</updated>
<author>
<name>Johannes Sixt</name>
<email>j6t@kdbg.org</email>
</author>
<published>2014-11-16T21:06:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ba6fad02b6cbbfbf5acf3303b4d8ddfd8624fdb2'/>
<id>urn:sha1:ba6fad02b6cbbfbf5acf3303b4d8ddfd8624fdb2</id>
<content type='text'>
According to the Linux open(2) man page, open() must return EISDIR
if a directory was attempted to be opened for writing. Our emulation
in mingw_open() does not get this right: it checks only for O_CREAT.

Fix it to check for a write request.

This fixes a failure in reflog handling, which opens files with
O_APPEND|O_WRONLY, but without O_CREAT, and expects EISDIR when the
named file happens to be a directory.

Signed-off-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
