Hi, everyone
I wrote a small follow-up post to talk about the conclusion of my GSoC
project. I believe the main remaining tasks are now finally complete
:) If you would be interested in taking a look, the post is at
https://matheustavares.gitlab.io/posts/gsoc-follow-ups
Thanks,
Matheus
On Tue, Oct 8, 2019 at 3:47 PM Lucas Oshiro wrote:
>
> git tag --edit and --no-edit flags are not currently fully supported.
> This patch fixes the functionality that allows the editor to be opened
> on demand.
>
> Co-authored-by: Bárbara Fernandes
> Signed-off-by: Lucas Oshiro
> Signed-off-by:
authored-by: Bárbara Fernandes
> Helped-by: Matheus Tavares
> Signed-off-by: Lucas Oshiro
> Signed-off-by: Bárbara Fernandes
These tags can be re-ordered as I mentioned in patch 1/3, to follow a
chronological order: probably the Helped-by first followed by the
Co-authored-
ra Fernandes
> Signed-off-by: Bárbara Fernandes
> Signed-off-by: Lucas Oshiro
> Helped-by: Matheus Tavares
These tags usually come in chronological order. So I think the
Helped-by should come first as I helped you, then you and Bárbara
co-authored the patch and then, lastly, you
On Tue, Oct 1, 2019 at 3:29 PM Derrick Stolee wrote:
>
> On 10/1/2019 9:06 AM, Matheus Tavares Bernardino wrote:
> > Hi,
> >
> > During Git Summit it was mentioned that git-grep searches outside
> > sparsity pattern which is not aligned with user expectation. I took
Signed-off-by: Matheus Tavares
---
This is just a small fixup to be squashed into patch 6: with multiple
locks, the locking order must be consistent across all critical sections
to avoid dead-lock. Since grep_attr_lock() is called before
obj_read_lock() in grep_source_load_driver(), it must also
Hi,
During Git Summit it was mentioned that git-grep searches outside
sparsity pattern which is not aligned with user expectation. I took a
quick look at it and it seems the reason is
builtin/grep.c:grep_cache() (which also greps worktree) will grep the
object store when a given index entry has th
racy
with object readings in the superproject. So it must be kept
protected for now. Let's add a "NEEDSWORK" to it, informing why it
cannot be removed from the critical section yet.
- Finally, add_to_alternates_memory() must be kept protected by the same
reason of the above ite
---
Out of critical section | 5.7852s
[1]: Tests performed on an i7-7700HQ with 16GB of RAM and SSD, running
Manjaro Linux.
[2]: chromium’s repo at commit 03ae96f (“Add filters testing at DSF=2”,
04-06-2019), after a 'git gc' execution.
Signed-off-by: Matheus Tavares
---
Again, all paths to it in git-grep
are already protected by obj_read_lock() but it may suffer from the same
problem in the future. So let's also internally protect it with
obj_read_lock() (which is a recursive mutex).
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 8 ++--
packfi
les() adding an 'skip_if_read' which allow both
internal and external callers to access this functionality. This
simplifies a little the code. The added option will also be used in the
following patch.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 2 +-
ons, not being able to perform them in parallel can
cause performance drops. To inform the users about this (and other
threading detais), let's also add a "NOTES ON THREADS" section to
Documentation/git-grep.txt.
[1]: chromium’s repo at commit 03ae96f (“Add filters testin
object reading lock only
works in conjunction with the 'struct raw_object_store's replace_mutex.
Otherwise, there would still be racy spots in object reading
functions.
Signed-off-by: Matheus Tavares
---
object-store.h | 35 +++
packfile.c |
some of them will require additional modifications to be
removed from the critical section, this will be done in its own patch.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 46 --
grep.c | 39 +++
;s not really worthy since the warning
doesn't represent a real problem. Instead, to make sure we don't get
false positives (at ThreadSanitizer, at least) an entry for the
respective function is added to .tsan-suppressions.
Signed-off-by: Matheus Tavares
---
.tsan-suppressions | 6
ow. But we better protect
ourselves against this possibility, anyway. So, to solve these issues,
move both of these function calls into the critical section of
grep_read_mutex.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git
acing grep_read_mutex for an internal object
reading lock and allowing parallel inflation during object reading.
Signed-off-by: Matheus Tavares
---
grep.c | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/grep.c b/grep.c
index cd952ef5d3..b29946def2 100644
--- a/grep.c
+++ b/g
race condition fixes and being able to run --textconv and
--recurse-submodules threaded now.
Matheus Tavares (11):
grep: fix race conditions on userdiff calls
grep: fix race conditions at grep_submodule()
grep: fix racy calls in grep_objects()
replace-object: make replace operations thread
s with the call to gitmodules_config_oid() which also has
parse_object() in its call stack. Fix that protecting both call with the
said grep_read_mutex.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/builtin/grep.c b/builtin/grep.c
index
On Sat, Sep 28, 2019 at 12:24 AM Junio C Hamano wrote:
>
> Matheus Tavares Bernardino writes:
>
> > Right, this would be the best way of doing it. However, I think this
> > is not how it's currently implemented. I if correctly understood the
&
On Fri, Sep 20, 2019 at 1:26 PM Junio C Hamano wrote:
>
> Matheus Tavares Bernardino writes:
>
> > Hmm, I may have gotten a little confused here. Are you talking
> > about the attributes stack (which contains .gitattributes and
> > info/attributes)? If so, isn'
On Wed, Sep 18, 2019 at 4:55 PM Junio C Hamano wrote:
>
> Matheus Tavares writes:
>
[...]
> > - textconv cache is written to the_repository's object database even for
> > submodules. Should it perhaps be written to submodules' odb instead?
>
> You mention &
will also help future patches to re-enable threads in
non-worktree grep as less mutual exclusions will be needed. E.g.
grep_submodule()'s call to parse_object_or_die() won't conflict with
other calls to the same function by worker threads (as they should be
referencing different '
diff_populate_filespec() accepts an struct repository "r" as parameter
but implicitly uses the_repository when calling read_object_file(). To
be more consistent, replace this call with
repo_read_object_file(r, ...).
Signed-off-by: Matheus Tavares
---
diff.c | 2 +-
1 file changed, 1
r the third parameter as it's the default when NULL is given.
This will be used in the following patch, to allow git-grep to parse
submodule's objects.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 4 ++--
builtin/prune.c | 4 ++--
bundle.c| 13 -
objec
_file()? (Again, for paths inside the
submodule, read_object_file() won't be able to find the object as
we won't be adding to alternates anymore.)
Matheus Tavares (3):
diff: use the given repo at diff_populate_filespec()
object: allow parse_object_or_die() to handle any repo
Hi, Junio
On Sat, Sep 7, 2019 at 2:27 PM Junio C Hamano wrote:
>
> * mt/threaded-grep-in-object-store (2019-08-13) 4 commits
> - grep: re-enable threads in some non-worktree cases
> - grep: disable grep_read_mutex when possible
> - grep: allow locks to be enabled individually
> - object-store
added to the "Contributing to Git" section.
> Thanks,
> Pedro
>
>
> Matheus Tavares Bernardino escreveu no dia
> terça, 3/09/2019 à(s) 03:34:
> >
> > Hi, everyone
> >
> > I've been writing a blog post based on what I learned during GSoC to
&
On Tue, Sep 3, 2019 at 4:49 AM Olga Telezhnaya wrote:
>
> вт, 3 сент. 2019 г. в 05:32, Matheus Tavares Bernardino
> :
> >
> > Here is the end result:
> > https://matheustavares.gitlab.io/posts/first-steps-contributing-to-git
> > If you have any comments or sugges
Hi, everyone
I've been writing a blog post based on what I learned during GSoC to
help other students here at FLUSP[1] start contributing as well.
In the meantime `Documentation/MyFirstContribution.txt` was released,
so I've pointed my interested colleagues to it. But since I was
already pretty c
On Thu, Aug 29, 2019 at 11:00 AM Jeff King wrote:
>
> On Thu, Aug 29, 2019 at 04:31:34PM +0700, Duy Nguyen wrote:
>
> > > If so, how could we get R there? I mean, we could pass it through this
> > > chain, but the chain already passes a "struct config_options", which
> > > carries the "commondir"
On Tue, Aug 27, 2019 at 8:46 PM Matheus Tavares Bernardino
wrote:
>
> Hi, Duy
>
> On Tue, Aug 27, 2019 at 6:26 AM Duy Nguyen wrote:
> >
> > On Tue, Aug 27, 2019 at 6:57 AM Matheus Tavares
> > wrote:
> > >
> > > Currently, config_with_options() r
Hi, Duy
On Tue, Aug 27, 2019 at 6:26 AM Duy Nguyen wrote:
>
> On Tue, Aug 27, 2019 at 6:57 AM Matheus Tavares
> wrote:
> >
> > Currently, config_with_options() relies on the global the_repository
> > when it has to configure from a blob.
>
> Not really reading
On Tue, Aug 27, 2019 at 1:27 PM Giuseppe Crino' wrote:
>
> Hello, to debug some issues I built and installed git via
>
> $ make prefix=/usr/local DEVELOPER=1 CFLAGS="-O0 -g"
> $ sudo make install
> $ git --version # git version 2.23.0.40.g4d8aada92f
Hmm, could it be perhaps that CFLAGS is being o
Hi, everyone
Just wanted to share with you the final report on my GSoC project:
https://matheustavares.gitlab.io/posts/gsoc-final-report I plan to
continue the project (as it isn't finished yet) and keep contributing
with whatever I can :) Thank you all for the support during this SoC!
Best,
Mat
ehind
NO_THE_REPOSITORY_COMPATIBILITY_MACROS.
Finally, adjust documentation and add a rule to coccinelle to reflect
the change.
Note: the following patch will take care of actually using the added
function in place of config_with_options() at config_from_gitmodules().
Signed-off-by: Matheus Ta
27;d right after use whereas
the_repository's alternates list doesn't).
While we are here, let's also adjust the comment on top of
config_from_gitmodules() to be explicit that it also handles the case
where .gitmodules is not present at the working tree.
Signed-off-by: Matheus T
This patchset makes more config.c functions handle arbitrary repos and
use that to remove an add_to_alternates_memory() call in
submodule-config.c. This should hopefully benefit performance and
memory.
Matheus Tavares (2):
config: allow config_with_options() to handle any repo
submodule: pass
On Tue, Aug 20, 2019 at 9:16 AM Christian Couder
wrote:
>
> Hi Matheus,
>
> On Tue, Aug 20, 2019 at 1:28 PM Olga Telezhnaya
> wrote:
> >
> > вт, 20 авг. 2019 г. в 07:59, Matheus Tavares Bernardino
> > :
> > >
> > > I just poste
Hi, everyone
I just posted the penultimate report on my project:
https://matheustavares.gitlab.io/posts/going-for-a-too-big-step This
week I’ve been working on a v2 of threaded git-grep w/ parallel
inflation, to allow threads when grepping submodules. I also tried
some more optimizations along the
On Thu, Aug 15, 2019 at 1:57 PM Junio C Hamano wrote:
>
> Carlo Arenas writes:
>
> > On Wed, Aug 14, 2019 at 4:58 PM Matheus Tavares Bernardino
> > wrote:
> >>
> >> On Wed, Aug 14, 2019 at 6:27 PM Junio C Hamano wrote:
> >> >
> >> [
Hi, Junio
On Wed, Aug 14, 2019 at 6:27 PM Junio C Hamano wrote:
>
[...]
> * mt/grep-submodules-working-tree (2019-07-30) 1 commit
> (merged to 'next' on 2019-08-02 at e1a46a195f)
> + grep: fix worktree case in submodules
There is a new version of this patch here[1], addressing the comments
yo
Hi, everyone
I just posted a new update on my project:
https://matheustavares.gitlab.io/posts/simplified-version-of-parallel-inflation
This week I sent a simplified version of the series I was working on
last week (which would still take some time to finish). And I'm
working to improve it with su
.
[1]:
https://matheustavares.gitlab.io/posts/week-6-working-at-zlib-inflation#multithreading-zlib-inflation
[2]: chromium’s repo at commit 03ae96f (“Add filters testing at DSF=2”,
04-06-2019), after a 'git gc' execution.
travis build: https://travis-ci.org/matheustav
ne in
the following patch.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 2 +-
grep.c | 4 ++--
grep.h | 8 ++--
3 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/builtin/grep.c b/builtin/grep.c
index 560051784e..a871bad8ad 100644
--- a/builtin/grep.c
+++ b
git-grep uses 'grep_read_mutex' to protect some object reading
operations. But these have their own internal lock now, which ensure a
better performance (with more parallel regions). So, disable the former
when it's possible to use the latter, with enable_obj_read_lock().
Signed-
]: chromium’s repo at commit 03ae96f (“Add filters testing at DSF=2”,
04-06-2019), after a 'git gc' execution.
Signed-off-by: Matheus Tavares
---
Documentation/git-grep.txt | 12
builtin/grep.c | 3 ++-
2 files changed, 14 insertions(+), 1 deletion(-)
di
, but
now it is since phase I and phase III of unpack_entry() may execute
concurrently.
Signed-off-by: Matheus Tavares
---
object-store.h | 4
packfile.c | 7 ++
sha1-file.c| 61 +-
3 files changed, 67 insertions(+), 5 deletions(-
On Tue, Aug 6, 2019 at 4:16 AM Christian Couder
wrote:
>
> Hi Matheus,
>
> On Tue, Aug 6, 2019 at 4:54 AM Matheus Tavares Bernardino
> wrote:
> >
> > Here's my report from last week:
> > https://matheustavares.gitlab.io/posts/week-11-wip-grep-protecting-tex
Hi,
Here's my report from last week:
https://matheustavares.gitlab.io/posts/week-11-wip-grep-protecting-textconv-and-submodules
I'm working to protect the operations I left behind on the first
version of the patchset[1]. And for that, I used a lot of the code Duy
provided[2] me as an example in th
nside grep_submodule(). Also, add tests to
ensure that the desired behavior is performed.
Reported-by: Daniel Zaoui
Signed-off-by: Matheus Tavares
---
Changes in v3:
- Replaced the "\* ignored *\" comment by a more meaningful note at the
top of grep_submodule()
builtin/grep.c
On Wed, Jul 31, 2019 at 12:57 PM Junio C Hamano wrote:
>
> Christian Couder writes:
>
> > On Tue, Jul 30, 2019 at 10:04 PM Junio C Hamano wrote:
> >>
> >> Matheus Tavares writes:
> >
> >> > @@ -598,7 +599,8 @@ static int grep_tree(struct gre
nside grep_submodule(). Also, add tests to
ensure that the desired behavior is performed.
Reported-by: Daniel Zaoui
Signed-off-by: Matheus Tavares
---
Changes in v2:
- repositioned the '/* ignored */' comment to avoid ambiguity
- joined `git clean` and `git reset` invokations i
On Tue, Jul 30, 2019 at 5:04 PM Junio C Hamano wrote:
>
> Matheus Tavares writes:
>
> > @@ -475,7 +475,7 @@ static int grep_submodule(struct grep_opt *opt,
> > strbuf_release(&base);
> > free(data);
> > } else {
>
Hi, Junio and Randall
On Tue, Jul 30, 2019 at 2:31 PM Junio C Hamano wrote:
>
> "Randall S. Becker" writes:
>
> > t0066: dir-iterator
> >
> > Subtest 4 depends on a non-portable error code. ENOENT is not guaranteed ...
> > Subtest 5 also depends on a non-portable error code. ENOTDIR is not gua..
nside grep_submodule(). Also, add tests to
ensure that the desired behavior is performed.
Reported-by: Daniel Zaoui
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 10 ++
t/t7814-grep-recurse-submodules.sh | 21 +
2 files changed, 27 insertions(
Hi, everyone
I just posted an update about my project here:
https://matheustavares.gitlab.io/posts/week-10-a-bug-in-git-grep-submodules
This one is focused on a patch to correct a bug at git-grep
--recurse-submodules and some tests for the parallel inflation
patchset. Please, feel free to leave an
On Tue, Jul 16, 2019 at 3:09 PM Daniel Zaoui wrote:
>
> Hi Matheus,
Hi, Daniel
I'm sorry, your last message went to my spam folder for some reason :(
> Thank you for your response.
>
> I really hope the change Brandon made is not a project decision. At least, it
> does seem to me like a bug.
>
Hi, everyone
Unfortunately, not quite much to report this week :( I'm attending
DebConf until July 28th but I'm trying to conciliate that with the
work on my project. You can see my brief report of last week here:
https://matheustavares.gitlab.io/posts/week-9-an-rfc-on-parallel-inflation
As alway
s possible as phase I and phase III of unpack_entry() may execute
concurrently.
Signed-off-by: Matheus Tavares
---
object-store.h | 4
packfile.c | 7 +++
sha1-file.c| 56 +-
3 files changed, 62 insertions(+), 5 deletions(-)
diff
git-grep has locks around the object reading operations it performs. But
these have an internal lock now, which can be enabled through
enable_obj_read_lock(). So let's use it and drop git-grep's ones.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 18 +++---
grep.c
after 2 warmup runs. All tests were
executed on a i7-7700HQ with 16GB of RAM and SSD.
[1]: chromium’s repo at commit 03ae96f (“Add filters testing at DSF=2”,
04-06-2019), after a 'git gc' execution.
Signed-off-by: Matheus Tavares
---
builtin/grep.c | 2 +-
1 file changed, 1 ins
lab.io/posts/week-6-working-at-zlib-inflation#multithreading-zlib-inflation
[2]: chromium’s repo at commit 03ae96f (“Add filters testing at DSF=2”,
04-06-2019), after a 'git gc' execution.
travis build: https://travis-ci.org/matheustavares/git/builds/561200398
Matheus Tavares (3):
On Sun, Jul 14, 2019 at 8:00 AM Christian Couder
wrote:
>
> Hi Matheus,
>
> On Sun, Jul 14, 2019 at 9:38 AM Matheus Tavares Bernardino
> wrote:
> >
> > I just posted a new update about my GSoC project here:
> > https://matheustavares.gitlab.io/posts/week-8-a-work
Hi, everyone
I just posted a new update about my GSoC project here:
https://matheustavares.gitlab.io/posts/week-8-a-working-parallel-inflation
Please, feel free to leave any comments. I've finally solved the race
condition problem and now we have a working parallel inflation :) But
there's still s
On Thu, Jul 11, 2019 at 8:56 AM Johannes Schindelin
wrote:
>
> Hi Matheus,
>
> On Wed, 10 Jul 2019, Matheus Tavares wrote:
>
> > - a replacement of explicit recursive dir iteration at
> > copy_or_link_directory for the dir-iterator API;
>
> As far as I can s
On Wed, Jul 10, 2019 at 3:58 PM Junio C Hamano wrote:
>
> Johannes Schindelin writes:
>
> > Hi Junio,
> >
> > On Tue, 9 Jul 2019, Junio C Hamano wrote:
> >
> >> * mt/dir-iterator-updates (2019-06-25) 10 commits
> >> - clone: replace strcmp by fspathcmp
> >> - clone: use dir-iterator to avoid ex
error on readdir or stat inside dir_iterator_advance. Previously it
would just print a warning for errors on stat and ignore errors on
readdir, which isn't nice because a local git clone could succeed even
though the .git/objects copy didn't fully succeed.
Signed-off-by: Matheus Tavares
--
Signed-off-by: Matheus Tavares
---
dir-iterator.c | 56 +
dir-iterator.h | 55 -
refs/files-backend.c | 2 +-
t/helper/test-dir-iterator.c | 34 +++
t/t0066-dir-iterator.sh
' and '..' only but it ended up accidentally skipping all
directories starting with '.'. Besides being more natural, the new
behaviour is more permissive to the user.
Also adjust tests to reflect this behaviour change.
Signed-off-by: Matheus Tavares
Signed-off-by: Ævar Arnf
Replace the use of strcmp by fspathcmp at copy_or_link_directory, which
is more permissive/friendly to case-insensitive file systems.
Suggested-by: Nguyễn Thái Ngọc Duy
Signed-off-by: Matheus Tavares
---
builtin/clone.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a
Extract dir creation code snippet from copy_or_link_directory to its own
function named mkdir_if_missing. This change will help to remove
copy_or_link_directory's explicit recursion, which will be done in a
following patch. Also makes the code more readable.
Signed-off-by: Matheus Ta
) failures.
Original-patch-by: Daniel Ferreira
Signed-off-by: Matheus Tavares
---
dir-iterator.c | 234 ++-
dir-iterator.h | 17 ++-
refs/files-backend.c | 17 ++-
t/helper/test-dir-iterator.c | 5 +
t/t0066-dir-iterator.sh
Change warning(..., strerror(errno)) by warning_errno(...). This helps
to unify warning display besides simplifying a bit the code. Also,
improve warning messages by surrounding paths with quotation marks and
using more meaningful statements.
Signed-off-by: Matheus Tavares
---
dir-iterator.c
Ferreira
[matheus.bernardino: update to use test-tool and some minor aesthetics]
Helped-by: Matheus Tavares
Signed-off-by: Matheus Tavares
---
Makefile | 1 +
t/helper/test-dir-iterator.c | 33 ++
t/helper/test-tool.c | 1 +
t/helper/test-tool.h
int
to dereferenced paths, instead of the symlinks themselves. Also, add
tests for symlinked files at .git/objects/.
Note: Git won't create symlinks at .git/objects itself, but it's better
to handle this case and be friendly with users who manually create them.
Signed-off-by: Matheus
a...@gmail.com/
Signed-off-by: Ævar Arnfjörð Bjarmason
[matheus.bernardino: improved and split tests in more than one patch]
Helped-by: Matheus Tavares
Signed-off-by: Matheus Tavares
---
t/t5604-clone-reference.sh | 111 +
1 file changed, 111 insertions(+)
r.qro.7.76.6.1907041136530...@tvgsbejvaqbjf.bet/
travis build: https://travis-ci.org/matheustavares/git/builds/557047597
Daniel Ferreira (1):
dir-iterator: add tests for dir-iterator API
Matheus Tavares (8):
clone: better handle symlinked files at .git/objects/
dir-iterator: use warning_errno when possible
On Mon, Jul 8, 2019 at 5:22 AM Daniel Zaoui wrote:
>
> Hi guys,
Hi, Daniel
> I work with submodules and use git grep a lot.
>
> I noted that when it is invoked used with --recurse-submodules, the result is
> not as expected for the submodules. I get submodules results as if no files
> were mod
On Fri, Jul 5, 2019 at 3:17 PM Johannes Schindelin
wrote:
>
> Hi Matheus,
>
> On Fri, 5 Jul 2019, Matheus Tavares Bernardino wrote:
> >
> > So, should I send a fixup patch removing find_recursive_symlinks() or
> > reroll the series? There's also the option
Thanks for the review. I'll address those issues in v8.
Best,
Matheus
On Wed, Jul 3, 2019 at 5:57 AM SZEDER Gábor wrote:
>
> > diff --git a/t/t0066-dir-iterator.sh b/t/t0066-dir-iterator.sh
> > index c739ed7911..8f996a31fa 100755
> > --- a/t/t0066-dir-iterator.sh
> > +++ b/t/t0066-dir-iterator.
On Thu, Jul 4, 2019 at 6:30 PM Johannes Schindelin
wrote:
>
> Hi Matheus,
>
> On Thu, 4 Jul 2019, Matheus Tavares Bernardino wrote:
> >
> > I wanted to take a look at the failures to see if I could help, [...]
> > Could you point me to the right place, please?
[.
Hi, Dscho
On Thu, Jul 4, 2019 at 7:02 AM Johannes Schindelin
wrote:
>
> Hi Junio,
>
> On Wed, 3 Jul 2019, Junio C Hamano wrote:
>
> > * mt/dir-iterator-updates (2019-06-25) 10 commits
[...]
> > Is this ready for 'next'?
>
> No. It still breaks many dozens of test cases on Windows (if not more)
>
Hi, everyone
I've been posting about the progress of my GSoC project at
https://matheustavares.gitlab.io/gsoc/ I should have sent the link
earlier but, please, let me know if you have any comments on my
previous posts.
You can read my latest update here:
https://matheustavares.gitlab.io/posts/wee
On Fri, Jun 28, 2019 at 9:50 AM Johannes Schindelin
wrote:
>
> Hi Matheus,
>
> On Thu, 27 Jun 2019, Matheus Tavares Bernardino wrote:
>
> > On Thu, Jun 27, 2019 at 3:47 PM Johannes Schindelin
> > wrote:
> > >
> > > On Thu, 27 Jun 2019, Matheus Tavare
On Thu, Jun 27, 2019 at 3:47 PM Johannes Schindelin
wrote:
>
> Hi Matheus,
>
> On Thu, 27 Jun 2019, Matheus Tavares Bernardino wrote:
>
> > On Wed, Jun 26, 2019 at 3:04 PM Junio C Hamano wrote:
> > >
> > > Johannes Schindelin writes:
> > >
> &g
On Wed, Jun 26, 2019 at 3:04 PM Junio C Hamano wrote:
>
> Johannes Schindelin writes:
>
> > Hi Matheus,
> >
> > On Tue, 18 Jun 2019, Matheus Tavares wrote:
> >
> >>[...]
> >> +/*
> >> + * Look for a recursive symlink at iter->bas
On Tue, Jun 25, 2019 at 3:00 PM Junio C Hamano wrote:
>
> Matheus Tavares writes:
>
> This hunk, which claims to have 25 lines in the postimage ...
>
> > @@ -44,6 +45,25 @@
> > * dir_iterator_advance() again.
> > */
> >
>
On Thu, Jun 20, 2019 at 5:18 PM Junio C Hamano wrote:
>
> Matheus Tavares writes:
>
> > Daniel Ferreira (1):
> > dir-iterator: add tests for dir-iterator API
> >
> > Matheus Tavares (8):
> > clone: better handle symlinked files at .git/objects/
>
On Tue, Jun 18, 2019 at 8:28 PM Matheus Tavares
wrote:
>
> This patchset contains:
> - tests to the dir-iterator API;
> - dir-iterator refactoring to make its state machine simpler
> and feature adding with tests;
> - a replacement of explicit recursiv
Replace the use of strcmp by fspathcmp at copy_or_link_directory, which
is more permissive/friendly to case-insensitive file systems.
Suggested-by: Nguyễn Thái Ngọc Duy
Signed-off-by: Matheus Tavares
---
builtin/clone.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a
' and '..' only but it ended up accidentally skipping all
directories starting with '.'. Besides being more natural, the new
behaviour is more permissive to the user.
Also adjust tests to reflect this behaviour change.
Signed-off-by: Matheus Tavares
Signed-off-by: Ævar Arnf
) failures.
Original-patch-by: Daniel Ferreira
Signed-off-by: Matheus Tavares
---
dir-iterator.c | 234 ++-
dir-iterator.h | 15 ++-
refs/files-backend.c | 17 ++-
t/helper/test-dir-iterator.c | 5 +
t/t0066-dir-iterator.sh
recursive symlinks will be detected and skipped. This
is another behavior improvement, since the current version would
continue to copy the same content over and over until stat() returned an
ELOOP error.
Signed-off-by: Matheus Tavares
---
builtin/cl
Signed-off-by: Matheus Tavares
---
dir-iterator.c | 82 +--
dir-iterator.h | 51 ++-
refs/files-backend.c | 2 +-
t/helper/test-dir-iterator.c | 34 ++---
t/t0066-dir-iterator.sh
Ferreira
[matheus.bernardino: update to use test-tool and some minor aesthetics]
Helped-by: Matheus Tavares
Signed-off-by: Matheus Tavares
---
Makefile | 1 +
t/helper/test-dir-iterator.c | 33 ++
t/helper/test-tool.c | 1 +
t/helper/test-tool.h
Change warning(..., strerror(errno)) by warning_errno(...). This helps
to unify warning display besides simplifying a bit the code. Also,
improve warning messages by surrounding paths with quotation marks and
using more meaningful statements.
Signed-off-by: Matheus Tavares
---
dir-iterator.c
Extract dir creation code snippet from copy_or_link_directory to its own
function named mkdir_if_missing. This change will help to remove
copy_or_link_directory's explicit recursion, which will be done in a
following patch. Also makes the code more readable.
Signed-off-by: Matheus Ta
int
to dereferenced paths, instead of the symlinks themselves. Also, add
tests for symlinked files at .git/objects/.
Note: Git won't create symlinks at .git/objects itself, but it's better
to handle this case and be friendly with users who manually create them.
Signed-off-by: Matheus
a...@gmail.com/
Signed-off-by: Ævar Arnfjörð Bjarmason
[matheus.bernardino: improved and split tests in more than one patch]
Helped-by: Matheus Tavares
Signed-off-by: Matheus Tavares
---
t/t5604-clone-reference.sh | 111 +
1 file changed, 111 insertions(+)
1 - 100 of 198 matches
Mail list logo