Re: [PATCH 1/5] git-prompt: do not look for refs/stash in $GIT_DIR

2014-08-25 Thread Jeff King
On Sun, Aug 24, 2014 at 08:22:41PM +0700, Gábor Szeder wrote: On Aug 23, 2014 12:26 PM, Jeff King p...@peff.net wrote: Since dd0b72c (bash prompt: use bash builtins to check stash state, 2011-04-01), git-prompt checks whether we have a stash by looking for $GIT_DIR/refs/stash. Generally

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-25 Thread Jeff King
On Sun, Aug 24, 2014 at 04:39:37PM -0700, Junio C Hamano wrote: On Sun, Aug 24, 2014 at 8:10 AM, Stefan Beller stefanbel...@gmail.com wrote: for (p = list, i = 0; i cnt; i++) { - struct name_decoration *r = xmalloc(sizeof(*r) + 100); + char name[100];

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-25 Thread Jeff King
On Sun, Aug 24, 2014 at 07:47:24PM +0530, Arjun Sreedharan wrote: diff --git a/bisect.c b/bisect.c index d6e851d..c96aab0 100644 --- a/bisect.c +++ b/bisect.c @@ -215,10 +215,13 @@ static struct commit_list *best_bisection_sorted(struct commit_list *list, int n } qsort(array,

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 04:06:52PM +0200, Christian Couder wrote: This allocation should be name_len + 1 for the NUL-terminator, no? I wondered about that too, but as struct name_decoration is defined like this: struct name_decoration { struct name_decoration *next; int

Re: [PATCH v5 2/4] Change GIT_ALLOC_LIMIT check to use git_parse_ulong()

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 05:06:22PM +0200, Steffen Prohaska wrote: I think it's reasonable that GIT_ALLOC_LIMIT=0 means no limit, so that the limit can easily be disabled temporarily. IMHO, GIT_ALLOC_LIMIT= (i.e., the empty string) would be a good way to say that (and I guess that even works

Re: [PATCH 3/5] fast-import: clean up pack_data pointer in end_packfile

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 10:16:52AM -0700, Ronnie Sahlberg wrote: Print an error before returning when pack_data is NULL ? I don't think so. We call end_packfile in some code paths (like the die handler) as close if it's open. So I think it makes sense for it to be a noop if nothing is open.

Re: [PATCH 0/5] fix pack-refs pruning of refs/foo

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 10:38:56AM -0700, Ronnie Sahlberg wrote: [1/5]: git-prompt: do not look for refs/stash in $GIT_DIR [2/5]: pack-refs: prune top-level refs like refs/foo [3/5]: fast-import: clean up pack_data pointer in end_packfile [4/5]: fast-import: fix buffer overflow in

Re: check-ref-format: include refs/ in the argument or to strip it?

2014-08-25 Thread Jeff King
and FETCH_HEAD, which are known to be transient). Signed-off-by: Jeff King p...@peff.net --- Looking over the code, I am not sure that it actually works as advertised with respect to ORIG_HEAD, etc. That would be easy enough to fix, though. Documentation/config.txt | 8 +--- branch.c

Re: [PATCH 2/3] Makefile: use `find` to determine static header dependencies

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 12:30:51PM -0700, Junio C Hamano wrote: Also interestingly, I notice that it is very clear that it is not LIB_H but ANY_H ;-) Yeah, it has been that way for quite a while. I don't know if it is that big a deal, but it would not be unreasonable to do a patch to rename on

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 11:26:39AM -0700, Junio C Hamano wrote: Good digging, and I agree that it should use the FLEX_ARRAY for consistency. I can produce a patch, but I did not want to steal Arjun's thunder. Arjun, did my proposal make sense? Do you want to try implementing that? -Peff --

Re: [PATCH 1/2] Check order when reading index

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 10:21:58AM -0700, Junio C Hamano wrote: + if (ce_stage(ce) = ce_stage(next_ce)) + die(Unordered stage entries for '%s', + ce-name); Not quite. We do allow multiple higher stage entries; having two or more

Re: [PATCH 2/3] Makefile: use `find` to determine static header dependencies

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 12:46:41PM -0700, Jonathan Nieder wrote: Jeff King wrote: -LOCALIZED_C := $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H) +LOCALIZED_C = $(C_OBJ:o=c) $(GENERATED_H) Why is LIB_H dropped here? This would mean that po/git.pot stops including strings from macros and static

Re: [PATCH 2/3] Makefile: use `find` to determine static header dependencies

2014-08-25 Thread Jeff King
On Mon, Aug 25, 2014 at 04:00:42PM -0400, Jeff King wrote: On Mon, Aug 25, 2014 at 12:46:41PM -0700, Jonathan Nieder wrote: Jeff King wrote: -LOCALIZED_C := $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H) +LOCALIZED_C = $(C_OBJ:o=c) $(GENERATED_H) Why is LIB_H dropped here? This would

[PATCH 0/3] name_decoration cleanups

2014-08-26 Thread Jeff King
On Mon, Aug 25, 2014 at 02:11:09PM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: On Mon, Aug 25, 2014 at 11:26:39AM -0700, Junio C Hamano wrote: Good digging, and I agree that it should use the FLEX_ARRAY for consistency. I can produce a patch, but I did not want

[PATCH 3/3] log-tree: use FLEX_ARRAY in name_decoration

2014-08-26 Thread Jeff King
one byte for the NUL terminator of the string we putting into the flex-array (it did not need to before, because the struct itself was over-allocated by one byte). Signed-off-by: Jeff King p...@peff.net --- This could come first in the series, but doing it last means we only have to update one spot

[PATCH 1/3] log-tree: make add_name_decoration a public function

2014-08-26 Thread Jeff King
not supply enough information). As a bonus, this also means that the decoration hashes created by the bisect code will use less memory (previously we over-allocated space for the distance integer, but not we format it into a temporary buffer and copy it to the final flex-array). Signed-off-by: Jeff

[PATCH 2/3] log-tree: make name_decoration hash static

2014-08-26 Thread Jeff King
to log-tree, as well. However, it's unlikely to cause any maintainability harm making the actual data public, and this interface is more flexible if we need to look at decorations from other parts of the code in the future. Signed-off-by: Jeff King p...@peff.net --- commit.h | 2 +- log-tree.c | 11

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-26 Thread Jeff King
On Mon, Aug 25, 2014 at 02:36:02PM -0700, Junio C Hamano wrote: I think you are right, and the patch is the right direction (assuming we want to do this; I question whether there are enough elements in the list for us to care about the size, and if there are, we are probably better off

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 12:57:21PM +0100, Ramsay Jones wrote: + ret = xcalloc(1, base + extra); + va_start(ap, fmt); + vsnprintf(ret + offset, extra, fmt, ap); What is the relationship between 'base' and 'offset'? Let me assume that base is always, depending on your compiler,

Re: [PATCH 1/3] log-tree: make add_name_decoration a public function

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 12:48:24PM +0100, Ramsay Jones wrote: We can fix this by making name_decoration's adding function public. If all callers use it, then any changes to structi s/structi/struct/ I blame vi finger-cruft. initialization only need to happen in one place (and because

Re: [PATCH 1/2] Check order when reading index

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 02:08:35PM +0200, Jaime Soriano Pastor wrote: That is how we natively (read: not with the funky virtual stuff merge-recursive does) express a merge with multiple merge bases. You also should be able to read this in the way how git merge invokes merge strategies

Re: [PATCH 2/3] Makefile: use `find` to determine static header dependencies

2014-08-26 Thread Jeff King
On Mon, Aug 25, 2014 at 03:08:50PM -0700, Junio C Hamano wrote: Jonathan Nieder jrnie...@gmail.com writes: Wouldn't it be sufficient to start digging not from * but from ??*? Gah, the * was supposed to be . in my examples (though it doesn't hurt). find ??* \( -name

Re: Improving the git remote command

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 11:29:32AM +0200, Rémy Hubscher wrote: I'd like to add a list parameter to the `git remote` command. We already have: - `git remote add` - `git remote rename` - `git remote delete` I often write `git remote list` before finaly using `git remote -v` but it

Re: [PATCH] bisect: save heap memory. allocate only the required amount

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 01:37:44PM +0100, Ramsay Jones wrote: On my 64-bit system using gcc, sizeof() returns 16; it has to pad the whole thing to 64-bit alignment in case I put two of them in an array. But offsetof(name) is 12, since the array of char does not need the same alignment; it

Re: Bug report: Author/Commit date in ISO 8601 format

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 09:29:44AM +0200, Oliver Busch wrote: I encountered the following problem: When using the date formatting option ISO (either by setting --date=iso or using format:%ci for the committer date), the output is formatted like this: 2014-08-25 17:49:43 +0200 But

Re: Bug report: Author/Commit date in ISO 8601 format

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 03:19:11PM +0200, Oliver Busch wrote: PS: As far as I understand it, there is no optionality of the T as an indicator for the start of the time part. The standard says (and I am quoting from Wikipedia here, as I do not have it myself): 4.3.2 NOTE: By mutual agreement

Re: Bug report: Author/Commit date in ISO 8601 format

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 10:10:33AM -0400, Jason Pyeron wrote: But I am not sure that omitted means can be replaced with a space. And while you can define by mutual agreement as git defines the format, so any consumers agree to it that is not necessarily useful to somebody who wants to

Re: Improving the git remote command

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 06:19:20PM +0200, Philippe Vaucher wrote: Perhaps -v should have been the default all along. I do not use git remote myself, so I don't know if -v is what most people use. But changing the output of git remote now is probably a bad thing (I expect some people may

Re: [PATCH 2/3] Makefile: use `find` to determine static header dependencies

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 09:54:19AM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: Actually as you are not excluding CVS, RCS, etc., and using ??* as the starting point will exclude .git, .hg, etc. at the top, I think we can shorten it even further and say find

Re: Improving the git remote command

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 10:24:35AM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: ... But we are left with three options: 1. Add git remote list with verbose output. This is bad because it differs gratuitously from git remote. 2. Add git remote list with non

Re: [PATCH 2/3] log-tree: make name_decoration hash static

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 10:40:10AM -0700, Junio C Hamano wrote: I may have called it lookup_name_decoration() to match, though, if I were doing this patch ;-) Hmph. I called it get because that was the opposite of add to me, and I was matching add_name_decoration. Of course, in the regular

Re: [PATCH v5 4/4] convert: Stream from fd to required clean filter instead of mmap

2014-08-26 Thread Jeff King
On Mon, Aug 25, 2014 at 06:55:51PM +0200, Steffen Prohaska wrote: It could be handled that way, but we would be back to the original problem that 32-bit git fails for large files. The convert code path currently assumes that all data is available in a single buffer at some point to apply

Re: [PATCH v5 4/4] convert: Stream from fd to required clean filter instead of mmap

2014-08-26 Thread Jeff King
On Mon, Aug 25, 2014 at 11:35:45AM -0700, Junio C Hamano wrote: Steffen Prohaska proha...@zib.de writes: Couldn't we do that with an lseek (or even an mmap with offset 0)? That obviously would not work for non-file inputs, but I think we address that already in index_fd: we push

Re: [PATCH v6 2/6] Add git_env_ulong() to parse environment variable

2014-08-26 Thread Jeff King
, this is a good time to make the switch (before any other variables are added). Signed-off-by: Jeff King p...@peff.net --- config.c| 2 +- t/t5551-http-fetch-smart.sh | 7 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/config.c b/config.c index 058505c

Re: [PATCH v6 5/6] Change copy_fd() to not close input fd

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 05:23:24PM +0200, Steffen Prohaska wrote: The caller opened the fd, so it should be responsible for closing it. Signed-off-by: Steffen Prohaska proha...@zib.de --- copy.c | 5 + lockfile.c | 3 +++ 2 files changed, 4 insertions(+), 4 deletions(-) diff

Re: [PATCH v6 2/6] Add git_env_ulong() to parse environment variable

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 01:20:53PM -0700, Junio C Hamano wrote: I think different people have different confusion criteria. To me, these two are very different operations: $ VAR= $ unset VAR I think it boils down to that I see that the distance between unset vs set to empty is

Re: [PATCH v6 2/6] Add git_env_ulong() to parse environment variable

2014-08-26 Thread Jeff King
On Tue, Aug 26, 2014 at 02:54:11PM -0700, Junio C Hamano wrote: A worse position is to have git_env_bool() that says empty is false and add a new git_env_ulong() that says empty is unset. We should pick one or the other and use it for both. Yeah, I agree they should probably behave the

Re: mktree: multiple same-named objects

2014-08-26 Thread Jeff King
On Wed, Aug 27, 2014 at 12:41:57AM -0400, David Turner wrote: git mktree seems to allow the creation of a tree object with multiple objects of the same name but different SHAs. Yeah, I don't think we do many quality checks there. Ditto for git hash-object. The latter goes through index_mem,

[PATCH v2 1/6] commit: provide a function to find a header in a buffer

2014-08-27 Thread Jeff King
commits, but that's OK. This shouldn't happen in practice, and even if it does, there's no particular reason that this function needs to complain about it. It either finds the header it was asked for, or it doesn't (and in the latter case, the caller will typically complain). Signed-off-by: Jeff King p

[PATCH v2 2/6] record_author_info: fix memory leak on malformed commit

2014-08-27 Thread Jeff King
If we hit the end-of-header without finding an author line, we just return from the function. We should jump to the fail_exit path to clean up the buffer that we may have allocated. Signed-off-by: Jeff King p...@peff.net --- commit.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff

[PATCH v2 5/6] determine_author_info: reuse parsing functions

2014-08-27 Thread Jeff King
). Signed-off-by: Jeff King p...@peff.net --- builtin/commit.c | 51 ++- 1 file changed, 22 insertions(+), 29 deletions(-) diff --git a/builtin/commit.c b/builtin/commit.c index 8da0a9f..57b046b 100644 --- a/builtin/commit.c +++ b/builtin/commit.c

[PATCH v2 6/6] determine_author_info: copy getenv output

2014-08-27 Thread Jeff King
that the return value from getenv remains valid across multiple calls. 2. We do not know whether to free the values at the end, so we just leak them. We can solve both by duplicating the string returned by getenv(). Signed-off-by: Jeff King p...@peff.net --- builtin/commit.c | 40

[PATCH v2 4/6] use strbufs in date functions

2014-08-27 Thread Jeff King
is not performance critical (and where the use of a strbuf will help later refactoring). Signed-off-by: Jeff King p...@peff.net --- builtin/commit.c | 20 ++-- cache.h | 4 ++-- date.c | 13 +++-- fast-import.c| 20 +--- ident.c

[PATCH v2 3/6] record_author_info: use find_commit_header

2014-08-27 Thread Jeff King
This saves us some manual parsing and makes the code more readable. Signed-off-by: Jeff King p...@peff.net --- commit.c | 22 -- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/commit.c b/commit.c index 4ff8c66..9416d84 100644 --- a/commit.c +++ b/commit.c

Re: What's cooking in git.git (Aug 2014, #04; Tue, 26)

2014-08-27 Thread Jeff King
On Tue, Aug 26, 2014 at 03:09:34PM -0700, Junio C Hamano wrote: -- [New Topics] There are a few misc topics of mine that I'd like to ping on: - jk/contrib-subtree-make-all; you picked up the topic, but it's not in pu or what's cooking.

Re: [RFC] add detached HEAD to --all listing

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 05:18:21PM +0300, Max Kirillov wrote: Could HEAD be added to list of heads while using --all switch? To which command? If you mean git branch, I think the detached HEAD is already mentioned: $ git branch * (detached from 1290ebd) master If you mean git log, I

Re: Git Bug Report: bisect run failed to locate the right commit

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 01:42:45PM +, 李祐棠 wrote: Here is the manual test script I use is manualscript.py: I use git bisect manually, search from 1.2.9(bad) to 1.2.8(good), I locate the commit that fixes this issue. The running log is attached in this file(manual). However if I use

Re: [PATCH v2 0/6] clean up author parsing

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 11:06:27AM +0200, Christian Couder wrote: On Wed, Aug 27, 2014 at 9:55 AM, Jeff King p...@peff.net wrote: [2/6]: record_author_info: fix memory leak on malformed commit [3/6]: record_author_info: use find_commit_header s/record_author_info/record_author_date

Re: mktree: multiple same-named objects

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 08:17:15AM -0700, Junio C Hamano wrote: I am somewhat against outright removing the capability to write out invalid objects deliberately from these low level tools, because we would need a way to easily reproduce bugs in end-user facing tools by other people who claim

Re: What's cooking in git.git (Aug 2014, #04; Tue, 26)

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 08:31:51AM -0700, Junio C Hamano wrote: - jk/send-pack-many-refspecs; this is in pu, but I didn't see it in what's cooking. I'm concerned that the ulimit test gave you trouble and you punted on it. :) It was picked up after the day's edition of What's

Re: What's cooking in git.git (Aug 2014, #04; Tue, 26)

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 09:38:09AM -0700, Junio C Hamano wrote: Makes sense. I think the v2 I sent[1] is OK, and as far as I was planning to take it for now (there were some other possible enhancements discussed, but I think those can happen in-tree if somebody feels like working on it).

Re: [PATCH v2] teach fast-export an --anonymize option

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 09:01:02AM -0700, Junio C Hamano wrote: +# this also covers commit messages +test_expect_success 'stream omits path names' ' + ! fgrep base stream + ! fgrep foo stream + ! fgrep subdir stream + ! fgrep bar stream + ! fgrep xyzzy stream +' I

[PATCH v3] teach fast-export an --anonymize option

2014-08-27 Thread Jeff King
are numbers for git.git: $ time git fast-export --anonymize --all \ --tag-of-filtered-object=drop output real0m2.883s user0m2.828s sys 0m0.052s $ gzip output $ ls -lh output.gz | awk '{print $5}' 2.9M Signed-off-by: Jeff King p...@peff.net --- This has all

Re: [PATCH v2 1/6] commit: provide a function to find a header in a buffer

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 10:30:22AM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: +const char *find_commit_header(const char *msg, const char *key, size_t *out_len) [...] Hmph. Does this have to worry about continuation lines in the header part e.g. mergetag

Re: [PATCH v2 1/6] commit: provide a function to find a header in a buffer

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 02:00:16PM -0400, Jeff King wrote: That may be something some callers want, but they should build it separately around this find_commit_header, so that callers that want a single line (like encoding or author) do not have to pay the price. I didn't bother building

Re: log.decorate=auto not documented

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 10:46:42AM -0400, Peter Eisentraut wrote: The log.decorate=auto value, which is mentioned in the release notes of Git 2.1, is not documented in either git-config.txt or git-log.txt. It should also be documented that auto corresponds to short. Yes, you're right. Care

Re: [PATCH v2 1/6] commit: provide a function to find a header in a buffer

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 12:05:06PM -0700, Junio C Hamano wrote: If you mean including continuation lines in the output, I don't think that's a good idea here. It would mean the function would have to copy the value out (to get rid of the continuation whitespace) rather than point directly

Re: [RFC] improving advice message from git commit during a merge

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 11:23:08AM -0700, Junio C Hamano wrote: When there are unmerged paths, you would often get something like this: [git.git (pu|MERGING]$ git commit U copy.c U wrapper.c error: commit is not possible because you have unmerged files.

Re: problem with def of inet_ntop() in git-compat-util.h as well as other places

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 03:15:05PM -0400, dev wrote: This causes a problem on things like Solaris : * new build flags CC credential-store.o git-compat-util.h, line 516: error: identifier redeclared: inet_ntop current : function(int, pointer to const void, pointer to char,

Re: [PATCH v2 1/6] commit: provide a function to find a header in a buffer

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 12:26:56PM -0700, Junio C Hamano wrote: I don't mind returning -1 in out_len and have the callers check. That way will allow callers to easily diagnose this tree $T author $GIT_AUTHOR_IDENT committer $GIT_COMMITTER_IDENT encoding encoding

Re: What happens when the repository is bigger than gc.autopacklimit * pack.packSizeLimit?

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 03:36:53PM -0400, Dale R. Worley wrote: And it appears from an experiment that this is what happens. I have a repository with pack.packSizeLimit = 99m, and there are 104 pack files, and even when git gc is done, if I do git gc --auto, it will do git-repack again. I

Re: problem with def of inet_ntop() in git-compat-util.h as well as other places

2014-08-27 Thread Jeff King
On Wed, Aug 27, 2014 at 03:48:40PM -0400, dev wrote: $ gzip -dc $SRC/git-2.0.4.tar.gz | tar -xf - $ mv git-2.0.4 git-2.0.4_SunOS5.10_sparcv9.002 $ $ cd git-2.0.4_SunOS5.10_sparcv9.002 $ $ echo $CFLAGS -errfmt=error -erroff=%none -errshort=full -xstrconst -xildoff -m64 -xmemalign=8s

Re: [PATCH v3] teach fast-export an --anonymize option

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 05:30:44PM +0700, Duy Nguyen wrote: On Thu, Aug 28, 2014 at 12:01 AM, Jeff King p...@peff.net wrote: You can get an overview of what will be shared by running a command like: git fast-export --anonymize --all | perl -pe 's/\d+/X/g' | sort -u | less

Re: make install fails because GNU tar needed

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 10:16:48AM -0400, dev wrote: # gmake CFLAGS=$CFLAGS LDFLAGS=$LD_OPTIONS NEEDS_LIBICONV=Yes \ SHELL_PATH=/usr/local/bin/bash \ SANE_TOOL_PATH=/usr/local/bin \ USE_LIBPCRE=1 LIBPCREDIR=/usr/local CURLDIR=/usr/local \ EXPATDIR=/usr/local

Re: [PATCH v3] teach fast-export an --anonymize option

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 05:46:15PM +0100, Ramsay Jones wrote: Dumb question (I have not even read the patch, so please just ignore me if this is indeed dumb!): Is the map of original-name, anonymized-name available to the user while he attempts to confirm that the bug is still present? No,

Re: [PATCH v3] teach fast-export an --anonymize option

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 11:11:47AM -0700, Junio C Hamano wrote: + Anonymize the contents of the repository while still retaining + the shape of the history and stored tree. See the section on + `ANONYMIZING` below. Technically s/tree/trees/, I would think. For a repository with

Re: [BUG] resolved deltas

2014-08-28 Thread Jeff King
On Mon, Aug 25, 2014 at 06:39:45PM +0200, René Scharfe wrote: Thanks, that looks good. But while preparing the patch I noticed that the added test sometimes fails. Helgrind pointed outet a race condition. It is not caused by the patch to turn the asserts into regular ifs, however -- here's

Re: [BUG] resolved deltas

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 06:08:21PM -0400, Jeff King wrote: So we need some kind of mutual exclusion so that only one thread proceeds with resolving the delta. The real_type check sort-of functions in that way (except of course it is not actually thread safe). Here's a patch which implements

Re: [BUG] resolved deltas

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 06:08:21PM -0400, Jeff King wrote: Interesting. I couldn't convince Helgrind to catch such a case... Ugh. It helps if you actually helgrind the git binary, and not the shell-script from bin-wrappers. I can easily replicate the problem now. The patch I just posted seems

Re: [BUG] resolved deltas

2014-08-28 Thread Jeff King
On Thu, Aug 28, 2014 at 06:15:18PM -0400, Jeff King wrote: As I implemented, I realized that even with the mutex, I really was just implementing compare_and_swap (and I wrote it that way to make it more obvious). So if we wanted to, it would be trivial to replace the claim_delta function

Re: git fsck exit code?

2014-08-29 Thread Jeff King
On Wed, Aug 27, 2014 at 06:10:12PM -0400, David Turner wrote: It looks like git fsck exits with 0 status even if there are some errors. The only case where there's a non-zero exit code is if verify_pack reports errors -- but not e.g. fsck_object_dir. It will also bail non-zero with _certain_

Re: [PATCH 2/2] index-pack: handle duplicate base objects gracefully

2014-08-31 Thread Jeff King
On Sat, Aug 30, 2014 at 06:00:59PM +0200, René Scharfe wrote: My only nit with patch 2: Petr Stodulka pstod...@redhat.com and Martin von Gagern martin.vgag...@gmx.net should be mentioned as bug reporters. Yeah, I agree with that. And actually, you should get a Reported-by: on the first patch.

Re: [PATCH] reachable.c: add HEAD to reachability starting commits

2014-08-31 Thread Jeff King
On Sat, Aug 30, 2014 at 11:58:35PM +0300, Max Kirillov wrote: HEAD is not explicitly used as a starting commit for calculating reachability, so if it's detached and reflogs are disabled it may be pruned. Eek, you're right. I think nobody noticed because the HEAD reflog usually picks it up

Re: [PATCH v2] use a hashmap to make remotes faster

2014-09-05 Thread Jeff King
On Fri, Sep 05, 2014 at 11:55:06AM +0200, Stefan Beller wrote: struct remote { + struct hashmap_entry ent; /* must be first */ + I stumbled about this comment /* must be first */ when reading the changelog. Why does it need to be first? Is it a common reason I'm just not aware

Re: [RFC PATCH 1/2] Makefile: add check-headers target

2014-09-06 Thread Jeff King
On Sat, Sep 06, 2014 at 03:57:39PM -0700, David Aguilar wrote: This checks all .h files in the top directory. Would it be better to check all files in LIB_H instead? Or even all .h files in the tree (using git ls-files '*.h')? The latter might be difficult because some of the files in

Re: Check out git-author

2014-09-07 Thread Jeff King
On Sun, Sep 07, 2014 at 06:05:13PM -0500, xmeng wrote: The problem with git-blame is that it only reports the last author/commit that changed the line, regardless of the magnitude of the change. Sometimes, the last author may only change a tiny part of the code and should not be blamed. I

Re: [PATCH] pretty-format: add append line-feed format specifier

2014-09-09 Thread Jeff King
On Tue, Sep 09, 2014 at 12:37:48PM -0700, Junio C Hamano wrote: Harry Jeffery ha...@exec64.co.uk writes: On 09/09/14 20:15, Junio C Hamano wrote: Is this different from %n%-d? Yes. %n%-d will place the newline before the expansion, not after. Maybe %[-+ ] needs to be rethought,

Re: [PATCH] fsck: exit with non-zero status upon error from fsck_obj()

2014-09-09 Thread Jeff King
On Tue, Sep 09, 2014 at 03:03:33PM -0700, Junio C Hamano wrote: From: Jeff King p...@peff.net Date: Fri, 29 Aug 2014 16:31:46 -0400 Upon finding a corrupt loose object, we forgot to note the error to signal it with the exit status of the entire process. [jc: adjusted t1450 and added

Re: git fsck exit code?

2014-09-09 Thread Jeff King
On Mon, Sep 01, 2014 at 02:17:43PM -0400, David Turner wrote: I don't think git fsck should return !0 in this case. Yes, it's an inconsistency in the repo, but it's sometimes due to erroneous conversions from another SCM or some other (non-standard) implementation of the git client. I've

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

2014-09-09 Thread Jeff King
On Tue, Sep 09, 2014 at 02:26:22PM -0700, Junio C Hamano wrote: * jk/command-line-config-empty-string (2014-08-05) 1 commit (merged to 'next' on 2014-08-29 at 74f04af) + config: teach git -c to recognize an empty string git -c section.var command and git -c section.var= command should

Re: [PATCH] pretty-format: add append line-feed format specifier

2014-09-09 Thread Jeff King
On Tue, Sep 09, 2014 at 11:17:20PM +0100, Harry Jeffery wrote: I definitely prefer your more general solution to my bare-minimum-to-scratch-itch patch. I'd certainly be willing to take your patch and expand upon it (pun unintended) once Junio has weighed in on your suggestions. Thanks. I am

Re: git 2.1.0: make fails

2014-09-09 Thread Jeff King
On Tue, Sep 09, 2014 at 04:34:02PM -0400, Gerry Reno wrote: Downloaded the git-2.1.0.tar.gz tarball. Cannot build git 2.1.0: Weird. It works fine for me on Debian unstable. What platform are you on? cc -g -O2 -Wall -I. -DHAVE_ALLOCA_H -DHAVE_PATHS_H -DHAVE_DEV_TTY

Re: [PATCH v4 19/32] commit_lock_file(): rollback lock file on failure to rename

2014-09-10 Thread Jeff King
On Sat, Sep 06, 2014 at 09:50:33AM +0200, Michael Haggerty wrote: If rename() fails, call rollback_lock_file() to delete the lock file (in case it is still present) and reset the filename field to the empty string so that the lockfile object is left in a valid state. Unlike the previous

Re: [PATCH v4 00/32] Lockfile correctness and refactoring

2014-09-10 Thread Jeff King
On Sat, Sep 06, 2014 at 09:50:14AM +0200, Michael Haggerty wrote: Sorry for the long delay since v3. This version mostly cleans up a couple more places where the lockfile object was left in an ill-defined state. Thanks to Johannes Sixt and Torsten Bögershausen for their review of v3. I

[PATCH] refs: write packed_refs file using stdio

2014-09-10 Thread Jeff King
-off-by: Jeff King p...@peff.net --- Obviously that repo is ridiculous (but a sad reality for me). However, I think the benefits extend to smaller files, too. And it's pretty easy to do (and I actually think the resulting write_packed_entry is a lot easier to read, as well as lifting some arbitrary

[PATCH] refs: speed up is_refname_available

2014-09-10 Thread Jeff King
the reflogs will hit D/F conflicts in the filesystem. To get a true test, we must turn off reflogs (but we don't want to do so for the entire script, because the point of turning them on was to cover some other cases). Signed-off-by: Jeff King p...@peff.net --- The diff's a bit hard to read, because

Re: [PATCH v4 00/32] Lockfile correctness and refactoring

2014-09-10 Thread Jeff King
On Wed, Sep 10, 2014 at 05:25:36PM +0700, Duy Nguyen wrote: On Wed, Sep 10, 2014 at 3:13 PM, Jeff King p...@peff.net wrote: I was running pack-refs on a repository with a very large number of loose refs (about 1.8 million). Needless to say, this ran very slowly and thrashed the disk

[PATCH v2] refs: speed up is_refname_available

2014-09-10 Thread Jeff King
the reflogs will hit D/F conflicts in the filesystem. To get a true test, we must turn off reflogs (but we don't want to do so for the entire script, because the point of turning them on was to cover some other cases). Reviewed-by: Michael Haggerty mhag...@alum.mit.edu Signed-off-by: Jeff King p

Re: [PATCH] refs: write packed_refs file using stdio

2014-09-10 Thread Jeff King
On Wed, Sep 10, 2014 at 01:21:27PM +0200, Michael Haggerty wrote: + if (fclose(out)) + die_errno(write error); + packed_ref_cache-lock-fd = -1; It might be a minuscule bit safer to set `lock-fd = -1` *before* calling `fclose()`. Yeah, I considered that. The worst case is

Re: [PATCH v4 00/32] Lockfile correctness and refactoring

2014-09-10 Thread Jeff King
On Wed, Sep 10, 2014 at 09:51:03AM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: Yes, we don't let normal fetchers see these repos. They're only for holding shared objects and the ref tips to keep them reachable. Are these individual refs have relations to the real world

Re: [PATCH] refs: write packed_refs file using stdio

2014-09-10 Thread Jeff King
On Wed, Sep 10, 2014 at 07:32:17AM -0700, Ronnie Sahlberg wrote: Even better could be to build an iovec for all the data and use writev() ? (now without gmail adding formatting) I'm not sure that would make anything easier. We're literally sprintf-ing (and calling sha1_to_hex) into a buffer so

Re: Next Git conference or meeting

2014-09-10 Thread Jeff King
On Tue, Sep 09, 2014 at 05:49:06PM +0200, Christian Couder wrote: Christian mentioned that he talked to some GitHub folks at LinuxCon. Those folks have also started thinking about things. :) Things are still very tentative at this point, but I think they are considering something like

Re: [PATCH v2] refs: speed up is_refname_available

2014-09-10 Thread Jeff King
On Wed, Sep 10, 2014 at 03:21:39PM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: ... Reviewed-by: Michael Haggerty mhag...@alum.mit.edu Signed-off-by: Jeff King p...@peff.net --- Sorry for the quick v2; Michael and I crossed emails off-list, and I missed some of his

Re: [PATCH] refs: speed up is_refname_available

2014-09-11 Thread Jeff King
On Thu, Sep 11, 2014 at 10:07:28AM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: This has a fairly straightforward conflict with the ref-transaction stuff in pu. The oldrefname parameter to is_refname_available became a list of items; Hmph, the trouble I had while

Re: Is the a way to get a log with files that were changed

2014-09-11 Thread Jeff King
On Fri, Sep 12, 2014 at 07:16:26AM +0530, Stephen Smith wrote: Is there a way to get a log of first parent commits and with each commit a entry a list of the files that were changed? How about: git log --first-parent -m --name-only The --first-parent restricts the traversal. The -m tells

Re: [PATCH] make config --add behave correctly for empty and NULL values

2014-09-11 Thread Jeff King
On Thu, Sep 11, 2014 at 04:35:33PM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: Here is the patch I wrote, for reference (I also think breaking the matches function into a series of conditionals, as you showed, is way more readable): OK, while reviewing the today's

[PATCH] fsck: return non-zero status on missing ref tips

2014-09-11 Thread Jeff King
this by using for_each_rawref and noting the error ourselves. In addition to adding tests for this case, we add tests for all types of missing-object links (all of which worked, but which we were not testing). Signed-off-by: Jeff King p...@peff.net --- Just below here we check that refs/heads

Re: [PATCH] fsck: return non-zero status on missing ref tips

2014-09-11 Thread Jeff King
[+cc mhagger for packed-refs wisdom] On Thu, Sep 11, 2014 at 11:38:30PM -0400, Jeff King wrote: Fsck tries hard to detect missing objects, and will complain (and exit non-zero) about any inter-object links that are missing. However, it will not exit non-zero for any missing ref tips, meaning

Re: [PATCH] fsck: return non-zero status on missing ref tips

2014-09-11 Thread Jeff King
On Fri, Sep 12, 2014 at 12:29:39AM -0400, Jeff King wrote: Dropping curate_packed_ref_fn (as below) fixes the test above. And miraculously does not even seem to conflict with ref patches in pu. :) Of course I spoke too soon. The patch I sent is actually based on pu. It is easy to make

Re: [PATCH] pretty-format: add append line-feed format specifier

2014-09-11 Thread Jeff King
On Wed, Sep 10, 2014 at 10:19:21AM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: Something like the patch below might work, but I didn't test it very thoroughly (and note the comments, which might need dealing with). Maybe it would make a sensible base for Harry to build

<    4   5   6   7   8   9   10   11   12   13   >