Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-18 Thread Jonathan Tan
On Thu, 18 Jan 2018 09:56:50 +0100
Christian Couder  wrote:

> I am still not very happy with fetch_object() not returning anything.
> I wonder what happens when that function is used to fetch from a repo
> that cannot provide the requested object.

My idea was to save a verification step - the caller of fetch_object()
needs to reattempt the object load anyway (which includes a verification
that the object exists), so I didn't see the need to have fetch_object()
do it too.

> Also I think the "extensions.partialclone = " config option is
> not very future proof. If people start using partial clone, it is
> likely that at some point they will need their repo to talk to more
> than one remote that is partial clone enabled and I don't see how such
> a config option can scale in this case.

In the case that they want to talk to more than one
partial-clone-enabled repo, I think that there still needs to be one
"default" remote from which missing objects are fetched. I can think of
a few reasons for that - for example, (a) we need to support commands
that give a nonexistent-in-repo SHA-1 directly, and (b) existing Git
code relies on the ability to fetch an object given only its SHA-1. (a)
can be overcome by forbidding that (?) and (b) can be overcome by an
overhaul of the object-fetching and object-using code, but I don't think
both (a) and (b) will occur anytime soon.


Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-18 Thread Christian Couder
On Wed, Jan 10, 2018 at 11:03 PM, Jeff Hostetler  wrote:
>
>
> On 1/10/2018 2:57 PM, Junio C Hamano wrote:
>>
>> Jeff Hostetler  writes:
>>
>>> On 1/9/2018 6:33 PM, Junio C Hamano wrote:

 --
 [Cooking]


 * jh/fsck-promisors (2017-12-08) 10 commits
>>>
>>> [...]
>>>
 * jh/partial-clone (2017-12-08) 13 commits
>>>
>>> [...]
>>>
>>> Parts 2 and 3 of partial clone have been simmering
>>> for a while now.  I was wondering if there were any
>>> more comments or questions on them.  I don't recall
>>> any existing issues.
>>
>> Me neither.

I am still not very happy with fetch_object() not returning anything.
I wonder what happens when that function is used to fetch from a repo
that cannot provide the requested object.

Also I think the "extensions.partialclone = " config option is
not very future proof. If people start using partial clone, it is
likely that at some point they will need their repo to talk to more
than one remote that is partial clone enabled and I don't see how such
a config option can scale in this case.

>> I do not mind merging them to 'next' during the feature freeze, but
>> we won't be merging them to 'master' soon anyway, and I'd like to
>> see us concentrate more on finding and fixing regressions on the
>> 'master' front for now.
>
> I didn't want to rush this -- just check to see if there was
> any thing that I should focus on while waiting for 2.16 to ship
> and settle down.

Thanks for already having commented on the patch series I sent to
integrate the external odb with the above work,
Christian.


Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-10 Thread Jeff Hostetler



On 1/10/2018 2:57 PM, Junio C Hamano wrote:

Jeff Hostetler  writes:


On 1/9/2018 6:33 PM, Junio C Hamano wrote:

--
[Cooking]


* jh/fsck-promisors (2017-12-08) 10 commits

[...]


* jh/partial-clone (2017-12-08) 13 commits

[...]

Parts 2 and 3 of partial clone have been simmering
for a while now.  I was wondering if there were any
more comments or questions on them.  I don't recall
any existing issues.


Me neither.

I do not mind merging them to 'next' during the feature freeze, but
we won't be merging them to 'master' soon anyway, and I'd like to
see us concentrate more on finding and fixing regressions on the
'master' front for now.


I didn't want to rush this -- just check to see if there was
any thing that I should focus on while waiting for 2.16 to ship
and settle down.

Leave this where it is now if you want and we can merge it in later.

Thanks
Jeff

 


Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-10 Thread Junio C Hamano
Ævar Arnfjörð Bjarmason  writes:

> On Tue, Jan 09 2018, Junio C. Hamano jotted:
>
>> * ab/wildmatch-tests (2018-01-04) 7 commits
>>   (merged to 'next' on 2018-01-09 at 09f0b84098)
>>  + wildmatch test: create & test files on disk in addition to in-memory
>>  + wildmatch test: perform all tests under all wildmatch() modes
>>  + wildmatch test: remove dead fnmatch() test code
>>  + wildmatch test: use a paranoia pattern from nul_match()
>>  + wildmatch test: don't try to vertically align our output
>>  + wildmatch test: use more standard shell style
>>  + wildmatch test: indent with tabs, not spaces
>>
>>  More tests for wildmatch functions.
>>
>>  Will cook in 'next'.
>
> Please don't merge it down for now.

Oops, the above entry in the "What's cooking" report is totally
bogus.  It is not merged to 'next' yet, and 09f0b84098 does not
exist in the public history of the project.

What happened was that I rewound 'next' after making a trial merge
before pushing the result out.  I updated the "What's cooking" report
while the trial merge was in 'next', which I should have redone.

>> * ab/perf-grep-threads (2018-01-04) 1 commit
>>   (merged to 'next' on 2018-01-09 at 8fe1d71894)
>>  + perf: amend the grep tests to test grep.threads
>>
>>  More perf tests for threaded grep
>>
>>  Will cook in 'next'.
>
> Re: the concern raised in xmqqa7xsaqki@gitster.mtv.corp.google.com I
> think it makes sense to just document (and I can do that if you agree)
> that:
>
> test_expect_success SOME_PREREQ,$SOME_OTHER_PREREQ,$ANOTHER_ONE [...]
>
> Will work as far as prereqs goes even though the variables might be
> empty. It's much less verbose than the proposed alternative, and easy to
> support.

OK.

>>  Will [cook in|merge to] 'next'.
>
> Refresh my memory, that means merge down post-2.16.0 at this point,
> right?

After -rc1, anything merged to 'next' will by default stay there
until the final.  Hotfixes will be merged to 'next' and (unless I
forget) will be marked as "will merge to 'master'" when that
happens, so that we will have them in the final.


Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-10 Thread Junio C Hamano
Jeff Hostetler  writes:

> On 1/9/2018 6:33 PM, Junio C Hamano wrote:
>> --
>> [Cooking]
>>
>>
>> * jh/fsck-promisors (2017-12-08) 10 commits
> [...]
>
>> * jh/partial-clone (2017-12-08) 13 commits
> [...]
>
> Parts 2 and 3 of partial clone have been simmering
> for a while now.  I was wondering if there were any
> more comments or questions on them.  I don't recall
> any existing issues.

Me neither.

I do not mind merging them to 'next' during the feature freeze, but
we won't be merging them to 'master' soon anyway, and I'd like to
see us concentrate more on finding and fixing regressions on the
'master' front for now.


Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-10 Thread Jeff Hostetler



On 1/9/2018 6:33 PM, Junio C Hamano wrote:

--
[Cooking]


* jh/fsck-promisors (2017-12-08) 10 commits

[...]


* jh/partial-clone (2017-12-08) 13 commits

[...]

Parts 2 and 3 of partial clone have been simmering
for a while now.  I was wondering if there were any
more comments or questions on them.  I don't recall
any existing issues.

Thanks
Jeff





Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-09 Thread Ævar Arnfjörð Bjarmason

On Tue, Jan 09 2018, Junio C. Hamano jotted:

> * ab/wildmatch-tests (2018-01-04) 7 commits
>   (merged to 'next' on 2018-01-09 at 09f0b84098)
>  + wildmatch test: create & test files on disk in addition to in-memory
>  + wildmatch test: perform all tests under all wildmatch() modes
>  + wildmatch test: remove dead fnmatch() test code
>  + wildmatch test: use a paranoia pattern from nul_match()
>  + wildmatch test: don't try to vertically align our output
>  + wildmatch test: use more standard shell style
>  + wildmatch test: indent with tabs, not spaces
>
>  More tests for wildmatch functions.
>
>  Will cook in 'next'.

Please don't merge it down for now. I've got a WIP resubmission of this
which rewrites most of the later part of the series & addresses various
issues raised.

> * ab/perf-grep-threads (2018-01-04) 1 commit
>   (merged to 'next' on 2018-01-09 at 8fe1d71894)
>  + perf: amend the grep tests to test grep.threads
>
>  More perf tests for threaded grep
>
>  Will cook in 'next'.

Re: the concern raised in xmqqa7xsaqki@gitster.mtv.corp.google.com I
think it makes sense to just document (and I can do that if you agree)
that:

test_expect_success SOME_PREREQ,$SOME_OTHER_PREREQ,$ANOTHER_ONE [...]

Will work as far as prereqs goes even though the variables might be
empty. It's much less verbose than the proposed alternative, and easy to
support.

>  Will [cook in|merge to] 'next'.

Refresh my memory, that means merge down post-2.16.0 at this point,
right?


What's cooking in git.git (Jan 2018, #02; Tue, 9)

2018-01-09 Thread Junio C Hamano
Here are the topics that have been cooking.  Commits prefixed with
'-' are only in 'pu' (proposed updates) while commits prefixed with
'+' are in 'next'.  The ones marked with '.' do not appear in any of
the integration branches, but I am still holding onto them.

You can find the changes described here in the integration branches
of the repositories listed at

http://git-blame.blogspot.com/p/git-public-repositories.html

--
[Graduated to "master"]

* ab/dc-sha1-loose-ends (2017-12-28) 1 commit
  (merged to 'next' on 2018-01-05 at 7186e81793)
 + Makefile: NO_OPENSSL=1 should no longer imply BLK_SHA1=1

 Tying loose ends for the recent integration work of
 collision-detecting SHA-1 implementation.


* bc/submitting-patches-in-asciidoc (2018-01-03) 1 commit
  (merged to 'next' on 2018-01-05 at 92dd960a56)
 + doc/SubmittingPatches: improve text formatting

 Doc readability update.


* bp/fsmonitor (2017-12-18) 1 commit
  (merged to 'next' on 2017-12-27 at ce216e2978)
 + p7519: improve check for prerequisite WATCHMAN

 Test fix.


* bw/path-doc (2017-12-13) 1 commit
  (merged to 'next' on 2017-12-19 at 2cddee77ca)
 + path: document path functions

 Doc updates.


* bw/protocol-v1 (2018-01-04) 1 commit
  (merged to 'next' on 2018-01-05 at 47a5e0039a)
 + http: fix v1 protocol tests with apache httpd < 2.4

 Test fix for a topic already in 'master'.


* cc/skip-to-optional-val (2017-12-11) 7 commits
  (merged to 'next' on 2017-12-27 at 1b189d8556)
 + t4045: reindent to make helpers readable
 + diff: add tests for --relative without optional prefix value
 + diff: use skip_to_optional_arg_default() in parsing --relative
 + diff: use skip_to_optional_arg_default()
 + diff: use skip_to_optional_arg()
 + index-pack: use skip_to_optional_arg()
 + git-compat-util: introduce skip_to_optional_arg()

 Introduce a helper to simplify code to parse a common pattern that
 expects either "--key" or "--key=".


* db/doc-config-section-names-with-bs (2017-12-22) 1 commit
  (merged to 'next' on 2017-12-28 at e744b99449)
 + config.txt: document behavior of backslashes in subsections

 Doc update.


* ew/svn-crlf (2017-12-14) 2 commits
  (merged to 'next' on 2017-12-27 at 1b81bd634d)
 + Merge branch 'svn-crlf' of git://bogomips.org/git-svn into ew/svn-crlf
 + git-svn: convert CRLF to LF in commit message to SVN

 "git svn" has been updated to strip CRs in the commit messages, as
 recent versions of Subversion rejects them.


* hi/merge-verify-sig-config (2017-12-19) 3 commits
  (merged to 'next' on 2017-12-27 at 34360fb1c1)
 + t5573, t7612: clean up after unexpected success of 'pull' and 'merge'
  (merged to 'next' on 2017-12-14 at cdc511dc36)
 + t: add tests for pull --verify-signatures
 + merge: add config option for verifySignatures

 "git merge" learned to pay attention to merge.verifySignatures
 configuration variable and pretend as if '--verify-signatures'
 option was given from the command line.


* jd/fix-strbuf-add-urlencode-bytes (2017-12-22) 1 commit
  (merged to 'next' on 2017-12-28 at 7f4f291966)
 + strbuf: fix urlencode format string on signed char

 Bytes with high-bit set were encoded incorrectly and made
 credential helper fail.


* jh/memihash-opt (2017-12-22) 1 commit
  (merged to 'next' on 2017-12-28 at bf96e0d849)
 + t/helper/test-lazy-name-hash: fix compilation

 Squelch compiler warning.


* jh/partial-clone-doc (2017-12-14) 1 commit
  (merged to 'next' on 2017-12-27 at 3695847773)
 + partial-clone: design doc


* jk/doc-diff-options (2018-01-04) 1 commit
  (merged to 'next' on 2018-01-05 at 11a42ea807)
 + docs/diff-options: clarify scope of diff-filter types

 Doc update.


* jk/test-suite-tracing (2017-12-08) 4 commits
  (merged to 'next' on 2017-12-27 at 7034a51474)
 + t/Makefile: introduce TEST_SHELL_PATH
 + test-lib: make "-x" work with "--verbose-log"
 + t5615: avoid re-using descriptor 4
 + test-lib: silence "-x" cleanup under bash

 Assorted fixes around running tests with "-x" tracing option.


* js/enhanced-version-info (2017-12-14) 2 commits
  (merged to 'next' on 2017-12-27 at a95dd96a78)
 + version --build-options: report commit, too, if possible
 + version --build-options: also report host CPU

 "git version --build-options" learned to report the host CPU and
 the exact commit object name the binary was built from.


* js/sequencer-cleanups (2017-12-27) 5 commits
  (merged to 'next' on 2017-12-28 at 23c10afb09)
 + sequencer: do not invent whitespace when transforming OIDs
 + sequencer: report when noop has an argument
 + sequencer: remove superfluous conditional
 + sequencer: strip bogus LF at end of error messages
 + rebase: do not continue when the todo list generation failed

 Code cleanup.


* js/test-with-ws-in-path (2018-01-03) 2 commits
  (merged to 'next' on 2018-01-05 at 6438e1c186)
 + t0302 & t3900: add forgotten quotes
 + Allow the test suite to pass in a directory whose name contains spaces

 Test fixes.


* jt/transport-hide-vtable