<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/compat, branch jch</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=jch</id>
<link rel='self' href='https://git.shady.money/git/atom?h=jch'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2026-04-09T21:48:24Z</updated>
<entry>
<title>Revert "compat/posix: introduce writev(3p) wrapper"</title>
<updated>2026-04-09T21:48:24Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-04-09T21:48:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7798034171030be0909c56377a4e0e10e6d2df93'/>
<id>urn:sha1:7798034171030be0909c56377a4e0e10e6d2df93</id>
<content type='text'>
This reverts commit 3b9b2c2a29a1d529ca9884fa0a6529f6e2496abe; let's
not use writev() for now.
</content>
</entry>
<entry>
<title>compat/winansi: drop pre-Vista workaround</title>
<updated>2026-04-06T17:06:22Z</updated>
<author>
<name>Matthias Aßhauer</name>
<email>mha1993@live.de</email>
</author>
<published>2026-04-06T05:45:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2f8c3f6a5a6d6a3de205be709e1a598b9d4b0b3e'/>
<id>urn:sha1:2f8c3f6a5a6d6a3de205be709e1a598b9d4b0b3e</id>
<content type='text'>
1edeb9a (Win32: warn if the console font doesn't support Unicode,
2014-06-10) introduced both code to detect the current console font on
Windows Vista and newer and a fallback for older systems to detect the
default console font and issue a warning if that font doesn't support
unicode.

Since we haven't supported any Windows older than Vista in almost a
decade, we don't need to keep the workaround.

Signed-off-by: Matthias Aßhauer &lt;mha1993@live.de&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>unify and bump _WIN32_WINNT definition to Windows 8.1</title>
<updated>2026-04-06T17:06:20Z</updated>
<author>
<name>Matthias Aßhauer</name>
<email>mha1993@live.de</email>
</author>
<published>2026-04-06T05:45:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=66dd13f3f72e8cad1327b6b134dec079936c4b07'/>
<id>urn:sha1:66dd13f3f72e8cad1327b6b134dec079936c4b07</id>
<content type='text'>
Git for Windows doesn't support anything prior to Windows 8.1 since 2.47.0
and Git followed along with commits like ce6ccba (mingw: drop Windows
7-specific work-around, 2025-08-04).

There is no need to pretend to the compiler that we still support Windows
Vista, just to lock us out of easy access to newer APIs. There is also no
need to have conflicting and unused definitions claiming we support some
versions of Windows XP or even Windows NT 4.0.

Bump all definitions of _WIN32_WINNT to a realistic value of Windows 8.1.
This will also simplify code for a followup commit that will improve cpu
core detection on multi-socket systems.

Signed-off-by: Matthias Aßhauer &lt;mha1993@live.de&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: use strftime() directly in UCRT builds</title>
<updated>2026-04-03T17:36:48Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2026-04-03T09:56:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c664ee2001a1ea0ecbc6448b24303687e6caf1cb'/>
<id>urn:sha1:c664ee2001a1ea0ecbc6448b24303687e6caf1cb</id>
<content type='text'>
The `mingw_strftime()` wrapper exists to work around msvcrt.dll's
incomplete `strftime()` implementation by dynamically loading the
version from ucrtbase.dll at runtime via `LoadLibrary()` +
`GetProcAddress()`. When the binary is already linked against UCRT
(i.e. when building in the UCRT64 environment), the linked-in
`strftime()` is the ucrtbase.dll version, making the dynamic loading
needless churn: It's calling the very same code.

Simply guard both the declaration and implementation so that the
unnecessary work-around is skipped in UCRT builds.

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>regexp: leave a pointer to resurrect workaround for Homebrew</title>
<updated>2026-03-25T22:04:30Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-03-23T16:54:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bd66ed316c868aacdb6b5e3a21751c5bab3a4f31'/>
<id>urn:sha1:bd66ed316c868aacdb6b5e3a21751c5bab3a4f31</id>
<content type='text'>
Recently some GitHub CI jobs were broken by update on the platform
side, which was eventually resolved by image rollback, but in the
meantime Dscho invented a workaround patch to sidestep the broken
part of the platform.  Their future image update may contain the
same bug, in which case the workaround may again become needed.

As we do not want to be building with workaround that avoids system
regexp library altogether unless the system is known to be broken,
so short of an automated "detect broken system and apply workaround"
mechanism, let's use the folks who are compiling the code to detect
breakage on their system and cope with the breakage ;-)

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ps/upload-pack-buffer-more-writes'</title>
<updated>2026-03-24T19:31:34Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-03-24T19:31:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8023abc632ea45a9a1b7f78b13db2cf541849775'/>
<id>urn:sha1:8023abc632ea45a9a1b7f78b13db2cf541849775</id>
<content type='text'>
Reduce system overhead "git upload-pack" spends on relaying "git
pack-objects" output to the "git fetch" running on the other end of
the connection.

* ps/upload-pack-buffer-more-writes:
  builtin/pack-objects: reduce lock contention when writing packfile data
  csum-file: drop `hashfd_throughput()`
  csum-file: introduce `hashfd_ext()`
  sideband: use writev(3p) to send pktlines
  wrapper: introduce writev(3p) wrappers
  compat/posix: introduce writev(3p) wrapper
  upload-pack: reduce lock contention when writing packfile data
  upload-pack: prefer flushing data over sending keepalive
  upload-pack: adapt keepalives based on buffering
  upload-pack: fix debug statement when flushing packfile data
</content>
</entry>
<entry>
<title>compat/posix: introduce writev(3p) wrapper</title>
<updated>2026-03-13T15:54:14Z</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2026-03-13T06:45:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3b9b2c2a29a1d529ca9884fa0a6529f6e2496abe'/>
<id>urn:sha1:3b9b2c2a29a1d529ca9884fa0a6529f6e2496abe</id>
<content type='text'>
In a subsequent commit we're going to add the first caller to
writev(3p). Introduce a compatibility wrapper for this syscall that we
can use on systems that don't have this syscall.

The syscall exists on modern Unixes like Linux and macOS, and seemingly
even for NonStop according to [1]. It doesn't seem to exist on Windows
though.

[1]: http://nonstoptools.com/manuals/OSS-SystemCalls.pdf
[2]: https://www.gnu.org/software/gnulib/manual/html_node/writev.html

Signed-off-by: Patrick Steinhardt &lt;ps@pks.im&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'mc/tr2-process-ancestry-cleanup'</title>
<updated>2026-02-25T19:54:18Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-02-25T19:54:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=422cae66878b8152453fe89c179dddbe1413cf56'/>
<id>urn:sha1:422cae66878b8152453fe89c179dddbe1413cf56</id>
<content type='text'>
Add process ancestry data to trace2 on macOS to match what we
already do on Linux and Windows.  Also adjust the way Windows
implementation reports this information to match the other two.

* mc/tr2-process-ancestry-cleanup:
  t0213: add trace2 cmd_ancestry tests
  test-tool: extend trace2 helper with 400ancestry
  trace2: emit cmd_ancestry data for Windows
  trace2: refactor Windows process ancestry trace2 event
  build: include procinfo.c impl for macOS
  trace2: add macOS process ancestry tracing
</content>
</entry>
<entry>
<title>Merge branch 'pc/lockfile-pid'</title>
<updated>2026-02-17T21:30:41Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-02-17T21:30:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5779c47fa0672e73ce35711e38d1a002787396f3'/>
<id>urn:sha1:5779c47fa0672e73ce35711e38d1a002787396f3</id>
<content type='text'>
Allow recording process ID of the process that holds the lock next
to a lockfile for diagnosis.

* pc/lockfile-pid:
  lockfile: add PID file for debugging stale locks
</content>
</entry>
<entry>
<title>trace2: emit cmd_ancestry data for Windows</title>
<updated>2026-02-13T20:18:31Z</updated>
<author>
<name>Matthew John Cheetham</name>
<email>mjcheetham@outlook.com</email>
</author>
<published>2026-02-13T19:54:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d7301487a38766109589b02309dac1be6490fa95'/>
<id>urn:sha1:d7301487a38766109589b02309dac1be6490fa95</id>
<content type='text'>
Since 2f732bf15e (tr2: log parent process name, 2021-07-21) it is now
now possible to emit a specific process ancestry event in TRACE2. We
should emit the Windows process ancestry data with the correct event
type.

To not break existing consumers of the data_json "windows/ancestry"
event, we continue to emit the ancestry data as a JSON event.

Signed-off-by: Matthew John Cheetham &lt;mjcheetham@outlook.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
