]> git.ipfire.org Git - thirdparty/git.git/log
thirdparty/git.git
2 years agoci: add address and undefined sanitizer tasks
Junio C Hamano [Thu, 20 Oct 2022 16:20:59 +0000 (09:20 -0700)] 
ci: add address and undefined sanitizer tasks

The current code is clean with these two sanitizers, and we would
like to keep it that way by running the checks for any new code.

The signal of "passed with asan, but not ubsan" (or vice versa) is
not that useful in practice, so it is tempting to run both santizers
in a single task, but it seems to take forever, so tentatively let's
try having two separate ones.

Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoStart 2.39 cycle
Junio C Hamano [Sat, 8 Oct 2022 00:09:21 +0000 (17:09 -0700)] 
Start 2.39 cycle

The version numbers do not mean much, but we may want to call the
first one in 2023 version 3.1 or something, but let's just increment
the second digit from the previous one for this cycle.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'ac/fuzzers'
Junio C Hamano [Sat, 8 Oct 2022 00:19:59 +0000 (17:19 -0700)] 
Merge branch 'ac/fuzzers'

Source file shuffling.

* ac/fuzzers:
  fuzz: reorganise the path for existing oss-fuzz fuzzers

2 years agoMerge branch 'vd/fix-unaligned-read-index-v4'
Junio C Hamano [Sat, 8 Oct 2022 00:19:59 +0000 (17:19 -0700)] 
Merge branch 'vd/fix-unaligned-read-index-v4'

The codepath that reads from the index v4 had unaligned memory
accesses, which has been corrected.

* vd/fix-unaligned-read-index-v4:
  read-cache: avoid misaligned reads in index v4

2 years agoMerge branch 'es/retire-efgrep'
Junio C Hamano [Sat, 8 Oct 2022 00:19:59 +0000 (17:19 -0700)] 
Merge branch 'es/retire-efgrep'

Prepare for GNU [ef]grep that throw warning of their uses.

* es/retire-efgrep:
  check-non-portable-shell: detect obsolescent egrep/fgrep

2 years agoMerge branch 'dd/retire-efgrep'
Junio C Hamano [Sat, 8 Oct 2022 00:19:59 +0000 (17:19 -0700)] 
Merge branch 'dd/retire-efgrep'

Prepare for GNU [ef]grep that throw warning of their uses.

* dd/retire-efgrep:
  t: convert fgrep usage to "grep -F"
  t: convert egrep usage to "grep -E"
  t: remove \{m,n\} from BRE grep usage
  CodingGuidelines: allow grep -E

2 years agoMerge branch 'ds/use-platform-regex-on-macos'
Junio C Hamano [Sat, 8 Oct 2022 00:19:58 +0000 (17:19 -0700)] 
Merge branch 'ds/use-platform-regex-on-macos'

With a bit of header twiddling, use the native regexp library on
macOS instead of the compat/ one.

* ds/use-platform-regex-on-macos:
  grep: fix multibyte regex handling under macOS

2 years agoGit 2.38 v2.38.0
Junio C Hamano [Sun, 2 Oct 2022 15:43:56 +0000 (08:43 -0700)] 
Git 2.38

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge tag 'l10n-2.38.0-rnd3' of https://github.com/git-l10n/git-po
Junio C Hamano [Sun, 2 Oct 2022 15:24:32 +0000 (08:24 -0700)] 
Merge tag 'l10n-2.38.0-rnd3' of https://github.com/git-l10n/git-po

l10n-2.38.0-rnd3

* tag 'l10n-2.38.0-rnd3' of https://github.com/git-l10n/git-po: (25 commits)
  l10n: zh_TW.po: Git 2.38.0, round 3
  l10n: fr: v2.38.0 round 3
  l10n: Update Catalan translation
  l10n: de.po: update German translation
  l10n: zh_CN: 2.38.0 round 3
  l10n: tr: v2.38.0 3rd round
  l10n: bg.po: Updated Bulgarian translation (5484t)
  l10n: po-id for 2.38 (round 3)
  l10n: es: update translation
  l10n: sv.po: Update Swedish translation (5484t0f0u)
  l10n: Update Catalan translation
  l10n: fr: don't say that merge is "the default strategy"
  l10n: zh_CN v2.38.0 rounds 1 & 2
  l10n: po-id for 2.38 (round 2)
  l10n: tr: v2.38.0 round 2
  l10n: bg.po: Updated Bulgarian translation (5484t)
  l10n: fr: v2.38.0 round 2
  l10n: fr: v2.38 round 1
  l10n: fr: The word 'branche' is only feminine
  l10n: Update Catalan translation
  ...

2 years agol10n: zh_TW.po: Git 2.38.0, round 3
Yi-Jyun Pan [Sat, 1 Oct 2022 11:04:42 +0000 (19:04 +0800)] 
l10n: zh_TW.po: Git 2.38.0, round 3

Signed-off-by: Yi-Jyun Pan <pan93412@gmail.com>
2 years agoMerge branch 'po-id' of github.com:bagasme/git-po
Jiang Xin [Sat, 1 Oct 2022 02:02:03 +0000 (10:02 +0800)] 
Merge branch 'po-id' of github.com:bagasme/git-po

* 'po-id' of github.com:bagasme/git-po:
  l10n: po-id for 2.38 (round 3)

2 years agoMerge branch 'l10n-de-2.38-rnd3' of github.com:ralfth/git
Jiang Xin [Thu, 29 Sep 2022 10:54:12 +0000 (18:54 +0800)] 
Merge branch 'l10n-de-2.38-rnd3' of github.com:ralfth/git

* 'l10n-de-2.38-rnd3' of github.com:ralfth/git:
  l10n: de.po: update German translation

2 years agoMerge branch 'fr_2.38_rnd3' of github.com:jnavila/git
Jiang Xin [Thu, 29 Sep 2022 00:00:30 +0000 (08:00 +0800)] 
Merge branch 'fr_2.38_rnd3' of github.com:jnavila/git

* 'fr_2.38_rnd3' of github.com:jnavila/git:
  l10n: fr: v2.38.0 round 3

2 years agoMerge branch 'catalan' of github.com:Softcatala/git-po
Jiang Xin [Wed, 28 Sep 2022 23:59:44 +0000 (07:59 +0800)] 
Merge branch 'catalan' of github.com:Softcatala/git-po

* 'catalan' of github.com:Softcatala/git-po:
  l10n: Update Catalan translation

2 years agol10n: fr: v2.38.0 round 3
Jean-Noël Avila [Wed, 28 Sep 2022 19:46:22 +0000 (21:46 +0200)] 
l10n: fr: v2.38.0 round 3

Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
2 years agoread-cache: avoid misaligned reads in index v4
Victoria Dye [Wed, 28 Sep 2022 17:19:00 +0000 (17:19 +0000)] 
read-cache: avoid misaligned reads in index v4

The process for reading the index into memory from disk is to first read its
contents into a single memory-mapped file buffer (type 'char *'), then
sequentially convert each on-disk index entry into a corresponding incore
'cache_entry'. To access the contents of the on-disk entry for processing, a
moving pointer within the memory-mapped file is cast to type 'struct
ondisk_cache_entry *'.

In index v4, the entries in the on-disk index file are written *without*
aligning their first byte to a 4-byte boundary; entries are a variable
length (depending on the entry name and whether or not extended flags are
used). As a result, casting the 'char *' buffer pointer to 'struct
ondisk_cache_entry *' then accessing its contents in a 'SANITIZE=undefined'
build can trigger the following error:

  read-cache.c:1886:46: runtime error: member access within misaligned
  address <address> for type 'struct ondisk_cache_entry', which requires 4
  byte alignment

Avoid this error by reading fields directly from the 'char *' buffer, using
the 'offsetof' individual fields in 'struct ondisk_cache_entry'.
Additionally, add documentation describing why the new approach avoids the
misaligned address error, as well as advice on how to improve the
implementation in the future.

Reported-by: Jeff King <peff@peff.net>
Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agol10n: Update Catalan translation
Jordi Mas [Wed, 28 Sep 2022 17:05:55 +0000 (19:05 +0200)] 
l10n: Update Catalan translation

Signed-off-by: Jordi Mas <jmas@softcatala.org>
2 years agol10n: de.po: update German translation
Ralf Thielow [Wed, 28 Sep 2022 15:15:53 +0000 (17:15 +0200)] 
l10n: de.po: update German translation

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
2 years agol10n: zh_CN: 2.38.0 round 3
Fangyi Zhou [Wed, 28 Sep 2022 14:50:49 +0000 (15:50 +0100)] 
l10n: zh_CN: 2.38.0 round 3

Signed-off-by: Fangyi Zhou <me@fangyi.io>
2 years agoMerge branch 'turkish' of github.com:bitigchi/git-po
Jiang Xin [Wed, 28 Sep 2022 12:54:29 +0000 (20:54 +0800)] 
Merge branch 'turkish' of github.com:bitigchi/git-po

* 'turkish' of github.com:bitigchi/git-po:
  l10n: tr: v2.38.0 3rd round

2 years agoMerge branch 'master' of github.com:alshopov/git-po
Jiang Xin [Wed, 28 Sep 2022 12:52:34 +0000 (20:52 +0800)] 
Merge branch 'master' of github.com:alshopov/git-po

* 'master' of github.com:alshopov/git-po:
  l10n: bg.po: Updated Bulgarian translation (5484t)

2 years agol10n: tr: v2.38.0 3rd round
Emir SARI [Wed, 28 Sep 2022 09:32:13 +0000 (12:32 +0300)] 
l10n: tr: v2.38.0 3rd round

Signed-off-by: Emir SARI <emir_sari@icloud.com>
2 years agol10n: bg.po: Updated Bulgarian translation (5484t)
Alexander Shopov [Wed, 28 Sep 2022 09:00:59 +0000 (11:00 +0200)] 
l10n: bg.po: Updated Bulgarian translation (5484t)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
2 years agol10n: po-id for 2.38 (round 3)
Bagas Sanjaya [Sun, 25 Sep 2022 07:53:53 +0000 (14:53 +0700)] 
l10n: po-id for 2.38 (round 3)

Update following components:

  * sequencer.c
  * wt-status.c

Translate following new components:

  * compat/compiler.h
  * compat/disk.h
  * compat/fsmonitor/fsm-health-win32.c
  * compat/fsmonitor/fsm-listen-darwin.c
  * compat/fsmonitor/fsm-listen-win32.c
  * compat/fsmonitor/fsm-settings-win32.c
  * compat/mingw.c
  * compat/obstack.c
  * compat/regex/regcomp.c
  * compat/simple-ipc/ipc-unix-socket.c
  * compat/simple-ipc/ipc-win32.c
  * compat/terminal.c
  * convert.c
  * entry.c
  * environment.c
  * exec-cmd.c
  * git-merge-octopus.sh
  * git-sh-setup.sh
  * list-objects-filter-options.c
  * list-objects-filter-options.h
  * list-objects.c
  * lockfile.c
  * ls-refs.c
  * mailinfo.c
  * name-hash.c
  * notes-merge.c
  * notes-utils.c
  * pkt-line.c
  * preload-index.c
  * pretty.c
  * promisor-remote.c
  * protocol-caps.c
  * read-cache.c
  * scalar.c
  * transport-helper.c
  * transport.c
  * tree-walk.c
  * urlmatch.c
  * walker.c
  * wrapper.c

Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2 years agol10n: es: update translation
Alex Henrie [Wed, 28 Sep 2022 04:56:55 +0000 (22:56 -0600)] 
l10n: es: update translation

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2 years agoMerge branch 'main' of github.com:git/git
Jiang Xin [Wed, 28 Sep 2022 00:03:38 +0000 (08:03 +0800)] 
Merge branch 'main' of github.com:git/git

* 'main' of github.com:git/git:
  Git 2.38-rc2
  pack-bitmap: remove trace2 region from hot path

2 years agoGit 2.38-rc2 v2.38.0-rc2
Junio C Hamano [Tue, 27 Sep 2022 18:25:52 +0000 (11:25 -0700)] 
Git 2.38-rc2

We have small updates since -rc1 but none of them is about a new
thing and there is no updates to the release notes.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'ds/bitmap-lookup-remove-tracing'
Junio C Hamano [Tue, 27 Sep 2022 04:46:51 +0000 (21:46 -0700)] 
Merge branch 'ds/bitmap-lookup-remove-tracing'

Perf-fix.

* ds/bitmap-lookup-remove-tracing:
  pack-bitmap: remove trace2 region from hot path

2 years agopack-bitmap: remove trace2 region from hot path
Derrick Stolee [Mon, 26 Sep 2022 13:17:57 +0000 (13:17 +0000)] 
pack-bitmap: remove trace2 region from hot path

The trace2 region around the call to lazy_bitmap_for_commit() in
bitmap_for_commit() was added in 28cd730680d (pack-bitmap: prepare to
read lookup table extension, 2022-08-14). While adding trace2 regions is
typically helpful for tracking performance, this method is called
possibly thousands of times as a commit walk explores commit history
looking for a matching bitmap. When trace2 output is enabled, this
region is emitted many times and performance is throttled by that
output.

For now, remove these regions entirely.

This is a critical path, and it would be valuable to measure that the
time spent in bitmap_for_commit() does not increase when using the
commit lookup table. The best way to do that would be to use a mechanism
that sums the time spent in a region and reports a single value at the
end of the process. This technique was introduced but not merged by [1]
so maybe this example presents some justification to revisit that
approach.

[1] https://lore.kernel.org/git/pull.1099.v2.git.1640720202.gitgitgadget@gmail.com/

To help with the 'git blame' output in this region, add a comment that
warns against adding a trace2 region. Delete a test from t5310 that used
that trace output to check that this lookup optimization was activated.
To create this kind of test again in the future, the stopwatch traces
mentioned earlier could be used as a signal that we activated this code
path.

Helpedy-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Derrick Stolee <derrickstolee@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agol10n: sv.po: Update Swedish translation (5484t0f0u)
Peter Krefting [Mon, 26 Sep 2022 05:36:23 +0000 (06:36 +0100)] 
l10n: sv.po: Update Swedish translation (5484t0f0u)

Also fix a couple of typos.

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
2 years agol10n: Update Catalan translation
Jordi Mas [Sun, 25 Sep 2022 19:04:22 +0000 (21:04 +0200)] 
l10n: Update Catalan translation

Signed-off-by: Jordi Mas <jmas@softcatala.org>
2 years agoMerge branch 'main' of github.com:git/git
Jiang Xin [Sat, 24 Sep 2022 13:51:06 +0000 (21:51 +0800)] 
Merge branch 'main' of github.com:git/git

* 'main' of github.com:git/git:
  cmd-list.perl: fix identifying man sections
  pack-bitmap: improve grammar of "xor chain" error message

2 years agoMerge branch 'fr_quickfix' of github.com:jnavila/git
Jiang Xin [Sat, 24 Sep 2022 13:12:37 +0000 (21:12 +0800)] 
Merge branch 'fr_quickfix' of github.com:jnavila/git

* 'fr_quickfix' of github.com:jnavila/git:
  l10n: fr: don't say that merge is "the default strategy"

2 years agoMerge branch 'po-id' of github.com:bagasme/git-po
Jiang Xin [Sat, 24 Sep 2022 13:09:22 +0000 (21:09 +0800)] 
Merge branch 'po-id' of github.com:bagasme/git-po

* 'po-id' of github.com:bagasme/git-po:
  l10n: po-id for 2.38 (round 2)

2 years agoMerge branch 'turkish' of github.com:bitigchi/git-po
Jiang Xin [Sat, 24 Sep 2022 13:08:11 +0000 (21:08 +0800)] 
Merge branch 'turkish' of github.com:bitigchi/git-po

* 'turkish' of github.com:bitigchi/git-po:
  l10n: tr: v2.38.0 round 2

2 years agol10n: fr: don't say that merge is "the default strategy"
Alex Henrie [Mon, 27 Jun 2022 04:17:24 +0000 (22:17 -0600)] 
l10n: fr: don't say that merge is "the default strategy"

The text of this message was changed in commit
71076d0edde43a7672a9a0f555753ff078602a64 to avoid making any
suggestion about which strategy is better for the situation at hand.
Update the Franch translation to match.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2 years agoMerge branch 'ac/bitmap-lookup-table'
Junio C Hamano [Fri, 23 Sep 2022 18:07:49 +0000 (11:07 -0700)] 
Merge branch 'ac/bitmap-lookup-table'

Grammofix.

* ac/bitmap-lookup-table:
  pack-bitmap: improve grammar of "xor chain" error message

2 years agoMerge branch 'ma/scalar-to-main-fix'
Junio C Hamano [Fri, 23 Sep 2022 18:07:48 +0000 (11:07 -0700)] 
Merge branch 'ma/scalar-to-main-fix'

Fix manpage generation.

* ma/scalar-to-main-fix:
  cmd-list.perl: fix identifying man sections

2 years agocmd-list.perl: fix identifying man sections
Martin Ågren [Fri, 23 Sep 2022 08:07:33 +0000 (10:07 +0200)] 
cmd-list.perl: fix identifying man sections

We attribute each documentation text file to a man section by finding a
line in the file that looks like "gitfoo(<digit>)". Commit cc75e556a9
("scalar: add to 'git help -a' command list", 2022-09-02) updated this
logic to look not only for "gitfoo" but also "scalarfoo". In doing so,
it forgot to account for the fact that after the updated regex has found
a match, the man section is no longer to be found in `$1` but now lives
in `$2`.

This makes our git(1) manpage look as follows:

  Main porcelain commands
       git-add(git)
           Add file contents to the index.

  [...]

       gitk(git)
           The Git repository browser.

       scalar(scalar)
           A tool for managing large Git repositories.

Restore the man sections by not capturing the (git|scalar) part of the
match into `$1`.

As noted by Ævar [1], we could even match any "foo" rather than just
"gitfoo" and "scalarfoo", but that's a larger change. For now, just fix
the regression in cc75e556a9.

[1] https://lore.kernel.org/git/220923.86wn9u4joo.gmgdl@evledraar.gmail.com/#t

Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Martin Ågren <martin.agren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agopack-bitmap: improve grammar of "xor chain" error message
Alex Henrie [Thu, 22 Sep 2022 02:51:58 +0000 (20:51 -0600)] 
pack-bitmap: improve grammar of "xor chain" error message

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agocheck-non-portable-shell: detect obsolescent egrep/fgrep
Eric Sunshine [Thu, 22 Sep 2022 00:18:25 +0000 (00:18 +0000)] 
check-non-portable-shell: detect obsolescent egrep/fgrep

GNU grep deprecated `egrep` and `fgrep` with release 2.5.3 in 2007.
As of release 3.8 in 2022, those commands warn[1] that they are
obsolescent. Now that all the Git test scripts have been scrubbed of
uses of `egrep` and `fgrep`, make `check-non-portable-shell` complain
about them to prevent new instances from creeping back into the project.

[1]: https://lists.gnu.org/archive/html/info-gnu/2022-09/msg00001.html

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'dd/retire-efgrep' into es/retire-efgrep
Junio C Hamano [Fri, 23 Sep 2022 15:31:04 +0000 (08:31 -0700)] 
Merge branch 'dd/retire-efgrep' into es/retire-efgrep

* dd/retire-efgrep:
  t: convert fgrep usage to "grep -F"
  t: convert egrep usage to "grep -E"
  t: remove \{m,n\} from BRE grep usage
  CodingGuidelines: allow grep -E

2 years agol10n: zh_CN v2.38.0 rounds 1 & 2
Fangyi Zhou [Fri, 16 Sep 2022 10:31:26 +0000 (11:31 +0100)] 
l10n: zh_CN v2.38.0 rounds 1 & 2

Reviewed-by: Jiang Xin <worldhello.net@gmail.com>
Reviewed-by: Li Linchao <lilinchao@oschina.cn>
Reviewed-by: 依云 <lilydjwg@gmail.com>
Signed-off-by: Fangyi Zhou <me@fangyi.io>
2 years agol10n: po-id for 2.38 (round 2)
Bagas Sanjaya [Thu, 22 Sep 2022 07:54:56 +0000 (14:54 +0700)] 
l10n: po-id for 2.38 (round 2)

Update following components:

  * branch.c
  * builtin/log.c
  * builtin/rebase.c
  * builtin/remote.c
  * builtin/reset.c
  * builtin/rev-list.c
  * builtin/rev-parse.c
  * builtin/revert.c
  * builtin/sparse-checkout.c
  * builtin/submodule--helper.c
  * command-list.h
  * help.c
  * merge.c

Translate following new components:

  * builtin/check-attr.c
  * builtin/check-ignore.c
  * builtin/check-mailmap.c
  * builtin/column.c
  * builtin/credential-cache--daemon.c
  * builtin/credential-cache.c
  * builtin/credential-store.c
  * builtin/diagnose.c
  * builtin/env--helper.c
  * builtin/fsmonitor--daemon.c
  * builtin/interpret-trailers.c
  * builtin/mailinfo.c
  * builtin/mailsplit.c
  * builtin/mktag.c
  * builtin/mktree.c
  * builtin/pack-redundant.c
  * builtin/replace.c
  * builtin/rerere.c
  * builtin/stripspace.c
  * bulk-checkin.c
  * commit.c
  * credential.c
  * fsmonitor-ipc.c
  * fsmonitor-settings.c
  * http-fetch.c
  * http.c

Also remove unused strings.

Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2 years agol10n: tr: v2.38.0 round 2
Emir SARI [Thu, 22 Sep 2022 13:40:33 +0000 (16:40 +0300)] 
l10n: tr: v2.38.0 round 2

Signed-off-by: Emir SARI <emir_sari@icloud.com>
2 years agol10n: bg.po: Updated Bulgarian translation (5484t)
Alexander Shopov [Fri, 23 Sep 2022 09:18:57 +0000 (11:18 +0200)] 
l10n: bg.po: Updated Bulgarian translation (5484t)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
2 years agoMerge branch 'fr_v2.38_rnd2' of github.com:jnavila/git
Jiang Xin [Fri, 23 Sep 2022 09:06:12 +0000 (17:06 +0800)] 
Merge branch 'fr_v2.38_rnd2' of github.com:jnavila/git

* 'fr_v2.38_rnd2' of github.com:jnavila/git:
  l10n: fr: v2.38.0 round 2
  l10n: fr: v2.38 round 1
  l10n: fr: The word 'branche' is only feminine

2 years agoMerge branch 'catalan' of github.com:Softcatala/git-po
Jiang Xin [Fri, 23 Sep 2022 08:58:14 +0000 (16:58 +0800)] 
Merge branch 'catalan' of github.com:Softcatala/git-po

* 'catalan' of github.com:Softcatala/git-po:
  l10n: Update Catalan translation

2 years agoMerge branch 'l10n-de-2.38' of github.com:ralfth/git
Jiang Xin [Fri, 23 Sep 2022 08:51:23 +0000 (16:51 +0800)] 
Merge branch 'l10n-de-2.38' of github.com:ralfth/git

* 'l10n-de-2.38' of github.com:ralfth/git:
  l10n: de.po: update German translation

2 years agoMerge branch 'main' of github.com:git/git
Jiang Xin [Fri, 23 Sep 2022 08:50:32 +0000 (16:50 +0800)] 
Merge branch 'main' of github.com:git/git

* 'main' of github.com:git/git:
  list-objects-filter: initialize sub-filter structs
  Git 2.38-rc1
  Final batch before -rc1
  builtin/diagnose.c: don't translate the two mode values
  t/Makefile: remove 'test-results' on 'make clean'
  gc: don't translate literal commands
  Documentation: clean up various typos in technical docs
  Documentation: clean up a few misspelled word typos
  version: fix builtin linking & documentation
  diagnose: add to command-list.txt
  Documentation: add ReviewingGuidelines
  commit-graph: Fix missing closedir in expire_commit_graphs
  diagnose.c: refactor to safely use 'd_type'
  help: fix doubled words in explanation for developer interfaces
  api docs: link to html version of api-trace2
  docs: fix a few recently broken links
  reftable: use a pointer for pq_entry param

2 years agoMerge branch 'jk/list-objects-filter-cleanup'
Junio C Hamano [Thu, 22 Sep 2022 22:30:47 +0000 (15:30 -0700)] 
Merge branch 'jk/list-objects-filter-cleanup'

Fix uninitialized memory access in a recent fix-up that is already
in -rc1.

* jk/list-objects-filter-cleanup:
  list-objects-filter: initialize sub-filter structs

2 years agol10n: fr: v2.38.0 round 2
Jean-Noël Avila [Thu, 22 Sep 2022 19:42:36 +0000 (21:42 +0200)] 
l10n: fr: v2.38.0 round 2

Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
2 years agol10n: fr: v2.38 round 1
Jean-Noël Avila [Sat, 17 Sep 2022 14:26:16 +0000 (16:26 +0200)] 
l10n: fr: v2.38 round 1

Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
2 years agol10n: fr: The word 'branche' is only feminine
Hubert Bossot [Sun, 20 Jun 2021 19:40:43 +0000 (21:40 +0200)] 
l10n: fr: The word 'branche' is only feminine

Signed-off-by: hbossot <hbossot@profideo.com>
2 years agolist-objects-filter: initialize sub-filter structs
Jeff King [Thu, 22 Sep 2022 09:35:33 +0000 (05:35 -0400)] 
list-objects-filter: initialize sub-filter structs

Since commit c54980ab83 (list-objects-filter: convert filter_spec to a
strbuf, 2022-09-11), building with SANITIZE=undefined triggers an error
in t5616.

The problem is that we end up with a strbuf that has been
zero-initialized instead of via STRBUF_INIT. Feeding that strbuf to
strbuf_addbuf() in list_objects_filter_copy() means we will call memcpy
like:

   memcpy(some_actual_buffer, NULL, 0);

This works on most systems because we're copying zero bytes, but it is
technically undefined behavior to ever pass NULL to memcpy.

Even though c54980ab83 is where the bug manifests, that is only because
we switched away from a string_list, which is OK with being
zero-initialized (though it may cause other problems by not duplicating
the strings, it happened to be OK in this instance).

The actual bug is caused by the commit before that, 2a01bdedf8
(list-objects-filter: add and use initializers, 2022-09-11). There we
consistently initialize the top-level filter structs, but we forgot the
dynamically allocated ones we stick in filter_options->sub when creating
combined filters.

Note that we need to fix two spots here: where we parse a "combine:"
filter, but also where we transform from a single-filter into a combined
one after seeing multiple "--filter" options. In the second spot, we'll
do some minor refactoring to avoid repeating our very-long array index.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agol10n: Update Catalan translation
Jordi Mas [Thu, 22 Sep 2022 16:30:42 +0000 (18:30 +0200)] 
l10n: Update Catalan translation

Signed-off-by: Jordi Mas <jmas@softcatala.org>
2 years agol10n: de.po: update German translation
Ralf Thielow [Thu, 22 Sep 2022 15:23:13 +0000 (17:23 +0200)] 
l10n: de.po: update German translation

Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Reviewed-by: Phillip Szelat <phillip.szelat@gmail.com>
2 years agoGit 2.38-rc1 v2.38.0-rc1
Junio C Hamano [Wed, 21 Sep 2022 22:26:39 +0000 (15:26 -0700)] 
Git 2.38-rc1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'sg/parse-options-subcommand'
Junio C Hamano [Wed, 21 Sep 2022 22:27:03 +0000 (15:27 -0700)] 
Merge branch 'sg/parse-options-subcommand'

Fix messages incorrectly marked for translation.

* sg/parse-options-subcommand:
  gc: don't translate literal commands

2 years agoMerge branch 'js/typofix'
Junio C Hamano [Wed, 21 Sep 2022 22:27:02 +0000 (15:27 -0700)] 
Merge branch 'js/typofix'

* js/typofix:
  Documentation: clean up various typos in technical docs
  Documentation: clean up a few misspelled word typos

2 years agoMerge branch 'sg/clean-test-results'
Junio C Hamano [Wed, 21 Sep 2022 22:27:02 +0000 (15:27 -0700)] 
Merge branch 'sg/clean-test-results'

"make clean" stopped cleaning the test results directory as a side
effect of a topic that has nothing to do with "make clean", which
has been corrected.

* sg/clean-test-results:
  t/Makefile: remove 'test-results' on 'make clean'

2 years agoMerge branch 'vd/check-docs-fixes'
Junio C Hamano [Wed, 21 Sep 2022 22:27:02 +0000 (15:27 -0700)] 
Merge branch 'vd/check-docs-fixes'

Build fix.

* vd/check-docs-fixes:
  version: fix builtin linking & documentation
  diagnose: add to command-list.txt

2 years agoMerge branch 'vd/doc-reviewing-guidelines'
Junio C Hamano [Wed, 21 Sep 2022 22:27:02 +0000 (15:27 -0700)] 
Merge branch 'vd/doc-reviewing-guidelines'

Just like we have coding guidelines, we now have guidelines for
reviewers.

* vd/doc-reviewing-guidelines:
  Documentation: add ReviewingGuidelines

2 years agoMerge branch 'vd/scalar-generalize-diagnose'
Junio C Hamano [Wed, 21 Sep 2022 22:27:01 +0000 (15:27 -0700)] 
Merge branch 'vd/scalar-generalize-diagnose'

Portability fix.

* vd/scalar-generalize-diagnose:
  builtin/diagnose.c: don't translate the two mode values
  diagnose.c: refactor to safely use 'd_type'

2 years agoFinal batch before -rc1
Junio C Hamano [Wed, 21 Sep 2022 20:50:47 +0000 (13:50 -0700)] 
Final batch before -rc1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'fz/help-doublofix'
Junio C Hamano [Wed, 21 Sep 2022 21:23:14 +0000 (14:23 -0700)] 
Merge branch 'fz/help-doublofix'

Typofix for topic already in -rc0.

* fz/help-doublofix:
  help: fix doubled words in explanation for developer interfaces

2 years agoMerge branch 'tz/tech-docs-to-help-fix'
Junio C Hamano [Wed, 21 Sep 2022 21:23:14 +0000 (14:23 -0700)] 
Merge branch 'tz/tech-docs-to-help-fix'

Docfix for topic already in -rc0.

* tz/tech-docs-to-help-fix:
  api docs: link to html version of api-trace2
  docs: fix a few recently broken links

2 years agoMerge branch 'ml/commit-graph-expire-dir-leak-fix'
Junio C Hamano [Wed, 21 Sep 2022 21:23:14 +0000 (14:23 -0700)] 
Merge branch 'ml/commit-graph-expire-dir-leak-fix'

A result from opendir() was leaking in the commit-graph expiration
codepath, which has been plugged.

* ml/commit-graph-expire-dir-leak-fix:
  commit-graph: Fix missing closedir in expire_commit_graphs

2 years agoMerge branch 'ec/reftable-pass-pq-entry-by-reference'
Junio C Hamano [Wed, 21 Sep 2022 21:23:13 +0000 (14:23 -0700)] 
Merge branch 'ec/reftable-pass-pq-entry-by-reference'

Small code clean-up in reftable implementation.

* ec/reftable-pass-pq-entry-by-reference:
  reftable: use a pointer for pq_entry param

2 years agobuiltin/diagnose.c: don't translate the two mode values
Alex Henrie [Tue, 20 Sep 2022 05:06:32 +0000 (23:06 -0600)] 
builtin/diagnose.c: don't translate the two mode values

These strings are not translatable in the diagnose_options array in
diagnose.c. Don't translate them in builtin/diagnose.c either.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agot/Makefile: remove 'test-results' on 'make clean'
SZEDER Gábor [Tue, 20 Sep 2022 20:16:19 +0000 (22:16 +0200)] 
t/Makefile: remove 'test-results' on 'make clean'

The 't/test-results' directory and its contents are by-products of the
test process, so 'make clean' should remove them, but, alas, this has
been broken since fee65b194d (t/Makefile: don't remove test-results in
"clean-except-prove-cache", 2022-07-28).

The 'clean' target in 't/Makefile' was not directly responsible for
removing the 'test-results' directory, but relied on its dependency
'clean-except-prove-cache' to do that [1].  ee65b194d broke this,
because it only removed the 'rm -r test-results' command from the
'clean-except-prove-cache' target instead of moving it to the 'clean'
target, resulting in stray 't/test-results' directories.

Add that missing cleanup command to 't/Makefile', and to all
sub-Makefiles touched by that commit as well.

[1] 60f26f6348 (t/Makefile: retain cache t/.prove across prove runs,
                2012-05-02)

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agot: convert fgrep usage to "grep -F"
Đoàn Trần Công Danh [Wed, 21 Sep 2022 13:02:32 +0000 (20:02 +0700)] 
t: convert fgrep usage to "grep -F"

Despite POSIX states that:

> The old egrep and fgrep commands are likely to be supported for many
> years to come as implementation extensions, allowing historical
> applications to operate unmodified.

GNU grep 3.8 started to warn[1]:

> The egrep and fgrep commands, which have been deprecated since
> release 2.5.3 (2007), now warn that they are obsolescent and should
> be replaced by grep -E and grep -F.

Prepare for their removal in the future.

[1]: https://lists.gnu.org/archive/html/info-gnu/2022-09/msg00001.html

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agot: convert egrep usage to "grep -E"
Đoàn Trần Công Danh [Wed, 21 Sep 2022 13:02:31 +0000 (20:02 +0700)] 
t: convert egrep usage to "grep -E"

Despite POSIX states that:

> The old egrep and fgrep commands are likely to be supported for many
> years to come as implementation extensions, allowing historical
> applications to operate unmodified.

GNU grep 3.8 started to warn[1]:

> The egrep and fgrep commands, which have been deprecated since
> release 2.5.3 (2007), now warn that they are obsolescent and should
> be replaced by grep -E and grep -F.

Prepare for their removal in the future.

[1]: https://lists.gnu.org/archive/html/info-gnu/2022-09/msg00001.html

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agot: remove \{m,n\} from BRE grep usage
Đoàn Trần Công Danh [Wed, 21 Sep 2022 13:02:30 +0000 (20:02 +0700)] 
t: remove \{m,n\} from BRE grep usage

The CodingGuidelines says we should avoid \{m,n\} in BRE usage.
And their usages in our code base is limited, and subjectively
hard to read.

Replace them with ERE.

Except for "0\{40\}" which would be changed to "$ZERO_OID",
which is a better value for testing with:
GIT_TEST_DEFAULT_HASH=sha256

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoCodingGuidelines: allow grep -E
Đoàn Trần Công Danh [Wed, 21 Sep 2022 13:02:29 +0000 (20:02 +0700)] 
CodingGuidelines: allow grep -E

Despite forbidden by CodingGuidelines, our usage of 'grep -E' has been
increased over the years, and noone has come and complained.

Let's lift the restriction.

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agogc: don't translate literal commands
Alex Henrie [Tue, 20 Sep 2022 05:07:25 +0000 (23:07 -0600)] 
gc: don't translate literal commands

The command you type is still "git maintenance" even in other languages.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoDocumentation: clean up various typos in technical docs
Jacob Stopak [Tue, 20 Sep 2022 02:45:57 +0000 (19:45 -0700)] 
Documentation: clean up various typos in technical docs

Used GNU "aspell check <filename>" to review various technical
documentation files with the default aspell dictionary. Ignored
false-positives between american and british english.

Signed-off-by: Jacob Stopak <jacob@initialcommit.io>
Reviewed-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoDocumentation: clean up a few misspelled word typos
Jacob Stopak [Tue, 20 Sep 2022 02:45:56 +0000 (19:45 -0700)] 
Documentation: clean up a few misspelled word typos

Used GNU "aspell check <filename>" to review various documentation
files with the default aspell dictionary. Ignored false-positives
between american and british english.

Signed-off-by: Jacob Stopak <jacob@initialcommit.io>
Reviewed-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'po-id' of github.com:bagasme/git-po
Jiang Xin [Wed, 21 Sep 2022 00:14:37 +0000 (08:14 +0800)] 
Merge branch 'po-id' of github.com:bagasme/git-po

* 'po-id' of github.com:bagasme/git-po:
  l10n: po-id for 2.38 (round 1)

2 years agoMerge branch 'main' of github.com:git/git
Jiang Xin [Wed, 21 Sep 2022 00:13:27 +0000 (08:13 +0800)] 
Merge branch 'main' of github.com:git/git

* 'main' of github.com:git/git: (45 commits)
  A bit more of remaining topics before -rc1
  t1800: correct test to handle Cygwin
  chainlint: colorize problem annotations and test delimiters
  ls-files: fix black space in error message
  list-objects-filter: convert filter_spec to a strbuf
  list-objects-filter: add and use initializers
  list-objects-filter: handle null default filter spec
  list-objects-filter: don't memset after releasing filter struct
  builtin/mv.c: fix possible segfault in add_slash()
  Documentation/technical: include Scalar technical doc
  t/perf: add 'GIT_PERF_USE_SCALAR' run option
  t/perf: add Scalar performance tests
  scalar-clone: add test coverage
  scalar: add to 'git help -a' command list
  scalar: implement the `help` subcommand
  git help: special-case `scalar`
  scalar: include in standard Git build & installation
  scalar: fix command documentation section header
  t: retire unused chainlint.sed
  t/Makefile: teach `make test` and `make prove` to run chainlint.pl
  ...

2 years agol10n: po-id for 2.38 (round 1)
Bagas Sanjaya [Sat, 17 Sep 2022 03:39:24 +0000 (10:39 +0700)] 
l10n: po-id for 2.38 (round 1)

Update following components:

  * add-patch.c
  * advice.c
  * builtin/add.c
  * builtin/am.c
  * builtin/clone.c
  * builtin/gc.c
  * builtin/help.c
  * builtin/ls-files.c
  * builtin/merge.c
  * diff.c
  * merge-ort.c
  * merge-tree.c
  * object-file.c
  * pack-bitmap.c
  * remote.c
  * revision.c
  * setup.c

Translate following new components:

  * builtin/bugreport.c
  * builtin/checkout--worker.c
  * builtin/checkout-index.c
  * builtin/commit-graph.c
  * builtin/fmt-merge-msg.c
  * builtin/for-each-ref.c
  * builtin/merge-file.c
  * builtin/merge-recursive.c
  * builtin/range-diff.c
  * bundle-uri.c
  * chunk-format.c
  * color.c
  * command-list.h
  * commit-graph.c
  * delta-islands.c
  * diagnose.c
  * diff-lib.c
  * diff-no-index.c
  * diffcore-order.c
  * diffcore-rename.c
  * diffcore-rotate.c
  * dir.c
  * editor.c
  * for-each-repo.c
  * parse-options-cb.c
  * parse-options.c
  * parse-options.h
  * path.c
  * pathspec.c
  * prune-packed.c
  * range-diff.c
  * ref-filter.c
  * ref-filter.h
  * remote-curl.c
  * replace-object.c
  * rerere.h
  * run-command.c
  * unpack-trees.c
  * usage.c

Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2 years agoversion: fix builtin linking & documentation
Victoria Dye [Tue, 20 Sep 2022 00:19:55 +0000 (00:19 +0000)] 
version: fix builtin linking & documentation

Like most builtins, 'version' is documented in a corresponding
'Documentation/git-version.txt' and can be invoked with 'git version'.
However, the 'check-docs' Makefile target showed that it was "removed but
documented: git-version." This was cause by the fact that it is not built as
a standalone 'git-version' executable, therefore appearing "removed" to
'check-docs'.

Without a precedent for documented builtins that aren't built into an
executable *or* any clear reason why a standalone 'git-version' shouldn't
exist, the 'check-docs' error appears to correctly identify an issue. To
correct that mismatch, add 'git-version' to the 'BUILT_INS' list in the root
Makefile (indicating that the 'cmd_version()' function appears in a file
that is *not* 'builtin/version.c'). Additionally, to avoid the "no link"
message in 'check-docs', list 'git-version' as an "ancilliaryinterrogator"
(like 'git help') in 'command-list.txt'.

Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agodiagnose: add to command-list.txt
Victoria Dye [Tue, 20 Sep 2022 00:19:54 +0000 (00:19 +0000)] 
diagnose: add to command-list.txt

Add 'git diagnose' as an "ancilliaryinterrogator" (like 'git bugreport') to
'command-list.txt' in order to have it show up in 'git help -a' and avoid
the "no link" warning message from the 'check-docs' Makefile target.

Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoDocumentation: add ReviewingGuidelines
Victoria Dye [Mon, 19 Sep 2022 19:12:46 +0000 (19:12 +0000)] 
Documentation: add ReviewingGuidelines

Add a reviewing guidelines document including advice and common terminology
used in Git mailing list reviews. The document is included in the
'TECH_DOCS' list in order to include it in Git's published documentation.

Helped-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Helped-by: Derrick Stolee <derrickstolee@github.com>
Helped-by: Junio C Hamano <gitster@pobox.com>
Helped-by: Josh Steadmon <steadmon@google.com>
Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoA bit more of remaining topics before -rc1
Junio C Hamano [Mon, 19 Sep 2022 19:55:59 +0000 (12:55 -0700)] 
A bit more of remaining topics before -rc1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'ad/t1800-cygwin'
Junio C Hamano [Mon, 19 Sep 2022 21:35:25 +0000 (14:35 -0700)] 
Merge branch 'ad/t1800-cygwin'

Test fix.

* ad/t1800-cygwin:
  t1800: correct test to handle Cygwin

2 years agoMerge branch 'vd/scalar-to-main'
Junio C Hamano [Mon, 19 Sep 2022 21:35:25 +0000 (14:35 -0700)] 
Merge branch 'vd/scalar-to-main'

Hoist the remainder of "scalar" out of contrib/ to the main part of
the codebase.

* vd/scalar-to-main:
  Documentation/technical: include Scalar technical doc
  t/perf: add 'GIT_PERF_USE_SCALAR' run option
  t/perf: add Scalar performance tests
  scalar-clone: add test coverage
  scalar: add to 'git help -a' command list
  scalar: implement the `help` subcommand
  git help: special-case `scalar`
  scalar: include in standard Git build & installation
  scalar: fix command documentation section header

2 years agoMerge branch 'es/chainlint'
Junio C Hamano [Mon, 19 Sep 2022 21:35:24 +0000 (14:35 -0700)] 
Merge branch 'es/chainlint'

Revamp chainlint script for our tests.

* es/chainlint:
  chainlint: colorize problem annotations and test delimiters
  t: retire unused chainlint.sed
  t/Makefile: teach `make test` and `make prove` to run chainlint.pl
  test-lib: replace chainlint.sed with chainlint.pl
  test-lib: retire "lint harder" optimization hack
  t/chainlint: add more chainlint.pl self-tests
  chainlint.pl: allow `|| echo` to signal failure upstream of a pipe
  chainlint.pl: complain about loops lacking explicit failure handling
  chainlint.pl: don't flag broken &&-chain if failure indicated explicitly
  chainlint.pl: don't flag broken &&-chain if `$?` handled explicitly
  chainlint.pl: don't require `&` background command to end with `&&`
  t/Makefile: apply chainlint.pl to existing self-tests
  chainlint.pl: don't require `return|exit|continue` to end with `&&`
  chainlint.pl: validate test scripts in parallel
  chainlint.pl: add parser to identify test definitions
  chainlint.pl: add parser to validate tests
  chainlint.pl: add POSIX shell parser
  chainlint.pl: add POSIX shell lexical analyzer
  t: add skeleton chainlint.pl

2 years agoMerge branch 'jk/list-objects-filter-cleanup'
Junio C Hamano [Mon, 19 Sep 2022 21:35:24 +0000 (14:35 -0700)] 
Merge branch 'jk/list-objects-filter-cleanup'

A couple of bugfixes with code clean-up.

* jk/list-objects-filter-cleanup:
  list-objects-filter: convert filter_spec to a strbuf
  list-objects-filter: add and use initializers
  list-objects-filter: handle null default filter spec
  list-objects-filter: don't memset after releasing filter struct

2 years agoMerge branch 'zh/ls-files-format'
Junio C Hamano [Mon, 19 Sep 2022 21:35:24 +0000 (14:35 -0700)] 
Merge branch 'zh/ls-files-format'

Typofix in the UI of a topic that has graduated to 'master'.

* zh/ls-files-format:
  ls-files: fix black space in error message

2 years agoMerge branch 'sy/mv-out-of-cone'
Junio C Hamano [Mon, 19 Sep 2022 21:35:23 +0000 (14:35 -0700)] 
Merge branch 'sy/mv-out-of-cone'

"git mv A B" in a sparsely populated working tree can be asked to
move a path from a directory that is "in cone" to another directory
that is "out of cone".  Handling of such a case has been improved.

* sy/mv-out-of-cone:
  builtin/mv.c: fix possible segfault in add_slash()
  mv: check overwrite for in-to-out move
  advice.h: add advise_on_moving_dirty_path()
  mv: cleanup empty WORKING_DIRECTORY
  mv: from in-cone to out-of-cone
  mv: remove BOTH from enum update_mode
  mv: check if <destination> is a SKIP_WORKTREE_DIR
  mv: free the with_slash in check_dir_in_index()
  mv: rename check_dir_in_index() to empty_dir_has_sparse_contents()
  t7002: add tests for moving from in-cone to out-of-cone

2 years agocommit-graph: Fix missing closedir in expire_commit_graphs
Miaoqian Lin [Mon, 19 Sep 2022 14:14:40 +0000 (18:14 +0400)] 
commit-graph: Fix missing closedir in expire_commit_graphs

The function calls opendir() but missing the corresponding
closedir() before exit the function.
Add missing closedir() to fix it.

Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Reviewed-by: Derrick Stolee <derrickstolee@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agodiagnose.c: refactor to safely use 'd_type'
Victoria Dye [Sat, 17 Sep 2022 18:16:55 +0000 (18:16 +0000)] 
diagnose.c: refactor to safely use 'd_type'

Refactor usage of the 'd_type' property of 'struct dirent' in 'diagnose.c'
to instead utilize the compatibility macro 'DTYPE()'. On systems where
'd_type' is not present in 'struct dirent', this macro will always return
'DT_UNKNOWN'. In that case, instead fall back on using the 'stat.st_mode' to
determine whether the dirent points to a dir, file, or link.

Additionally, add a test to 't0092-diagnose.sh' to verify that files (e.g.,
loose objects) are counted properly.

Note that the new function 'get_dtype()' is based on 'resolve_dtype()' in
'dir.c' (which itself was refactored from a prior 'get_dtype()' in
ad6f2157f9 (dir: restructure in a way to avoid passing around a struct
dirent, 2020-01-16)), but differs in that it is meant for use on arbitrary
files, such as those inside the '.git' dir. Because of this, it does not
search the index for a matching entry to derive the 'd_type'.

Reported-by: Randall S. Becker <rsbecker@nexbridge.com>
Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agofuzz: reorganise the path for existing oss-fuzz fuzzers
Arthur Chan [Mon, 19 Sep 2022 14:36:54 +0000 (14:36 +0000)] 
fuzz: reorganise the path for existing oss-fuzz fuzzers

In order to provide a better organisation for oss-fuzz fuzzers and
to avoid top-level clustters in the git repository when more fuzzers
are introduced, move the existing fuzzer-related sources to their
own oss-fuzz/ hierarchy.  Grouping the fuzzers into their own
directory, separate their application on fuzz-testing from the core
functionalities of the git code, prvides better and tidier structure
the oss-fuzz fuzzing library to manage, locate, build and execute
those fuzzers for fuzz-testing purposes in future development.

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoMerge branch 'master' of github.com:nafmo/git-l10n-sv
Jiang Xin [Mon, 19 Sep 2022 02:50:10 +0000 (10:50 +0800)] 
Merge branch 'master' of github.com:nafmo/git-l10n-sv

* 'master' of github.com:nafmo/git-l10n-sv:
  l10n: sv.po: Update Swedish translation (5482t0f0u)

2 years agol10n: bg.po: Updated Bulgarian translation (5482t)
Alexander Shopov [Sun, 18 Sep 2022 18:27:26 +0000 (20:27 +0200)] 
l10n: bg.po: Updated Bulgarian translation (5482t)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
2 years agol10n: sv.po: Update Swedish translation (5482t0f0u)
Peter Krefting [Fri, 16 Sep 2022 21:03:08 +0000 (22:03 +0100)] 
l10n: sv.po: Update Swedish translation (5482t0f0u)

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
2 years agol10n: tr: Update translations for v2.38.0 round #1
Emir SARI [Fri, 16 Sep 2022 19:22:08 +0000 (22:22 +0300)] 
l10n: tr: Update translations for v2.38.0 round #1

Signed-off-by: Emir SARI <emir_sari@icloud.com>
2 years agohelp: fix doubled words in explanation for developer interfaces
Fangyi Zhou [Fri, 16 Sep 2022 13:05:29 +0000 (13:05 +0000)] 
help: fix doubled words in explanation for developer interfaces

Signed-off-by: Fangyi Zhou <me@fangyi.io>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2 years agoapi docs: link to html version of api-trace2
Todd Zullinger [Fri, 16 Sep 2022 06:23:03 +0000 (02:23 -0400)] 
api docs: link to html version of api-trace2

In f6d25d7878 (api docs: document that BUG() emits a trace2 error event,
2021-04-13), a link to the plain text version of api-trace2 was added in
`technical/api-error-handling.txt`.

All of our other `link:`s point to the html versions.  Do the same here.

Signed-off-by: Todd Zullinger <tmz@pobox.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>