<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/http.c, branch v2.21.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://www.git.shady.money/git/atom?h=v2.21.2</id>
<link rel='self' href='https://www.git.shady.money/git/atom?h=v2.21.2'/>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/'/>
<updated>2019-02-07T06:05:27Z</updated>
<entry>
<title>Merge branch 'jk/loose-object-cache-oid'</title>
<updated>2019-02-07T06:05:27Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-02-07T06:05:27Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=cba595ab1a7764aecfde2e8e59994f89b2cd2f2e'/>
<id>urn:sha1:cba595ab1a7764aecfde2e8e59994f89b2cd2f2e</id>
<content type='text'>
Code clean-up.

* jk/loose-object-cache-oid:
  prefer "hash mismatch" to "sha1 mismatch"
  sha1-file: avoid "sha1 file" for generic use in messages
  sha1-file: prefer "loose object file" to "sha1 file" in messages
  sha1-file: drop has_sha1_file()
  convert has_sha1_file() callers to has_object_file()
  sha1-file: convert pass-through functions to object_id
  sha1-file: modernize loose header/stream functions
  sha1-file: modernize loose object file functions
  http: use struct object_id instead of bare sha1
  update comment references to sha1_object_info()
  sha1-file: fix outdated sha1 comment references
</content>
</entry>
<entry>
<title>Merge branch 'ms/http-no-more-failonerror'</title>
<updated>2019-01-29T20:47:55Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-01-29T20:47:55Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=99c0bdd09de2b04b7a4464e14fe9b65e2152b3d1'/>
<id>urn:sha1:99c0bdd09de2b04b7a4464e14fe9b65e2152b3d1</id>
<content type='text'>
Debugging help for http transport.

* ms/http-no-more-failonerror:
  test: test GIT_CURL_VERBOSE=1 shows an error
  remote-curl: unset CURLOPT_FAILONERROR
  remote-curl: define struct for CURLOPT_WRITEFUNCTION
  http: enable keep_error for HTTP requests
  http: support file handles for HTTP_KEEP_ERROR
</content>
</entry>
<entry>
<title>http: enable keep_error for HTTP requests</title>
<updated>2019-01-10T23:00:56Z</updated>
<author>
<name>Masaya Suzuki</name>
<email>masayasuzuki@google.com</email>
</author>
<published>2019-01-10T19:33:47Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=e6cf87b12d3b85b31637c865bbfaed62c3e59e94'/>
<id>urn:sha1:e6cf87b12d3b85b31637c865bbfaed62c3e59e94</id>
<content type='text'>
curl stops parsing a response when it sees a bad HTTP status code and it
has CURLOPT_FAILONERROR set. This prevents GIT_CURL_VERBOSE to show HTTP
headers on error.

keep_error is an option to receive the HTTP response body for those
error responses. By enabling this option, curl will process the HTTP
response headers, and they're shown if GIT_CURL_VERBOSE is set.

Signed-off-by: Masaya Suzuki &lt;masayasuzuki@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http: support file handles for HTTP_KEEP_ERROR</title>
<updated>2019-01-10T23:00:56Z</updated>
<author>
<name>Masaya Suzuki</name>
<email>masayasuzuki@google.com</email>
</author>
<published>2019-01-10T19:33:46Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=8dd2e88a923bd24775182f0a507c993e06a0aacb'/>
<id>urn:sha1:8dd2e88a923bd24775182f0a507c993e06a0aacb</id>
<content type='text'>
HTTP_KEEP_ERROR makes it easy to debug HTTP transport errors. In order
to make HTTP_KEEP_ERROR enabled for all requests, file handles need to
be supported.

Signed-off-by: Masaya Suzuki &lt;masayasuzuki@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>sha1-file: modernize loose object file functions</title>
<updated>2019-01-08T17:40:19Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2019-01-07T08:35:42Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=514c5fdd03b914c72a91bb420e46bdc8886940cf'/>
<id>urn:sha1:514c5fdd03b914c72a91bb420e46bdc8886940cf</id>
<content type='text'>
The loose object access code in sha1-file.c is some of the oldest in
Git, and could use some modernizing. It mostly uses "unsigned char *"
for object ids, which these days should be "struct object_id".

It also uses the term "sha1_file" in many functions, which is confusing.
The term "loose_objects" is much better. It clearly distinguishes
them from packed objects (which didn't even exist back when the name
"sha1_file" came into being). And it also distinguishes it from the
checksummed-file concept in csum-file.c (which until recently was
actually called "struct sha1file"!).

This patch converts the functions {open,close,map,stat}_sha1_file() into
open_loose_object(), etc, and switches their sha1 arguments for
object_id structs. Similarly, path functions like fill_sha1_path()
become fill_loose_path() and use object_ids.

The function sha1_loose_object_info() already says "loose", so we can
just drop the "sha1" (and teach it to use object_id).

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http: use struct object_id instead of bare sha1</title>
<updated>2019-01-08T17:40:19Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2019-01-07T08:34:40Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=f0be0db13dbd2d96d2240374e0e9cb106bf6a614'/>
<id>urn:sha1:f0be0db13dbd2d96d2240374e0e9cb106bf6a614</id>
<content type='text'>
The dumb-http walker code still passes around and stores object ids as
"unsigned char *sha1". Let's modernize it.

There's probably still more work to be done to handle dumb-http fetches
with a new, larger hash. But that can wait; this is enough that we can
now convert some of the low-level object routines that we call into from
here (and in fact, some of the "oid.hash" references added here will be
further improved in the next patch).

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/loose-object-cache'</title>
<updated>2019-01-04T21:33:32Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-01-04T21:33:32Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=3b2f8a02fa9a9e68d5215828e1d97bb4f6996976'/>
<id>urn:sha1:3b2f8a02fa9a9e68d5215828e1d97bb4f6996976</id>
<content type='text'>
Code clean-up with optimization for the codepath that checks
(non-)existence of loose objects.

* jk/loose-object-cache:
  odb_load_loose_cache: fix strbuf leak
  fetch-pack: drop custom loose object cache
  sha1-file: use loose object cache for quick existence check
  object-store: provide helpers for loose_objects_cache
  sha1-file: use an object_directory for the main object dir
  handle alternates paths the same as the main object dir
  sha1_file_name(): overwrite buffer instead of appending
  rename "alternate_object_database" to "object_directory"
  submodule--helper: prefer strip_suffix() to ends_with()
  fsck: do not reuse child_process structs
</content>
</entry>
<entry>
<title>Merge branch 'fc/http-version'</title>
<updated>2019-01-04T21:33:32Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-01-04T21:33:32Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=13d991929810ebfdf6b75d91cdc72561213d548a'/>
<id>urn:sha1:13d991929810ebfdf6b75d91cdc72561213d548a</id>
<content type='text'>
The "http.version" configuration variable can be used with recent
enough cURL library to force the version of HTTP used to talk when
fetching and pushing.

* fc/http-version:
  http: add support selecting http version
</content>
</entry>
<entry>
<title>i18n: fix small typos</title>
<updated>2018-11-29T06:45:31Z</updated>
<author>
<name>Jean-Noël Avila</name>
<email>jn.avila@free.fr</email>
</author>
<published>2018-11-28T21:43:09Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=d355e46a15943554b917f3198f2c6dc78011dd4c'/>
<id>urn:sha1:d355e46a15943554b917f3198f2c6dc78011dd4c</id>
<content type='text'>
Translating the new strings introduced for v2.20 showed some typos.

Signed-off-by: Jean-Noël Avila &lt;jn.avila@free.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>sha1_file_name(): overwrite buffer instead of appending</title>
<updated>2018-11-13T05:22:02Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2018-11-12T14:48:56Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=b69fb867b4bb9e30e705d2176fe8a0a90b208325'/>
<id>urn:sha1:b69fb867b4bb9e30e705d2176fe8a0a90b208325</id>
<content type='text'>
The sha1_file_name() function is used to generate the path to a loose
object in the object directory. It doesn't make much sense for it to
append, since the the path we write may be absolute (i.e., you cannot
reliably build up a path with it). Because many callers use it with a
static buffer, they have to strbuf_reset() manually before each call
(and the other callers always use an empty buffer, so they don't care
either way). Let's handle this automatically.

Since we're changing the semantics, let's take the opportunity to give
it a more hash-neutral name (which will also catch any callers from
topics in flight).

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
