summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2023-08-08branch: error message checking out a branch in useRubén Justo3-3/+4
Let's update the error message we show when the user tries to check out a branch which is being used in another worktree, following the guideline reasoned in 4970bedef2 (branch: update the message to refuse touching a branch in-use, 2023-07-21). Signed-off-by: Rubén Justo <rjusto@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-08parse-options: disallow negating OPTION_SET_INT 0René Scharfe1-0/+3
An option of type OPTION_SET_INT can be defined to set its variable to zero. It's negated variant will do the same, though, which is confusing. Several such options were fixed by disabling negation, changing the value to set or using a different option type: 991c552916 (ls-tree: fix --no-full-name, 2023-07-18) e12cb98e1e (branch: reject "--no-all" and "--no-remotes" early, 2023-07-18) 68cbb20e73 (show-branch: reject --[no-](topo|date)-order, 2023-07-19) 3821eb6c3d (reset: reject --no-(mixed|soft|hard|merge|keep) option, 2023-07-19) 36f76d2a25 (pack-objects: fix --no-quiet, 2023-07-21) 3a5f308741 (pack-objects: fix --no-keep-true-parents, 2023-07-21) c95ae3ff9c (describe: fix --no-exact-match, 2023-07-21) d089a06421 (bundle: use OPT_PASSTHRU_ARGV, 2023-07-29) Check for such options that allow negation in parse_options_check() and report them to find future cases quicker. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-08repack: free geometry structJeff King1-5/+3
When the program is ending, we call clear_pack_geometry() to free any resources in the pack_geometry struct. But the struct itself is allocated on the heap, and leak-checkers will complain about the resulting small leak. This one was marked by Coverity as a "new" leak, though it has existed since 0fabafd0b9 (builtin/repack.c: add '--geometric' option, 2021-02-22). This might be because recent unrelated changes in the file confused it about what is new and what is not. But regardless, it is worth addressing. We can fix it easily by free-ing the struct. We'll convert our "clear" function to "free", since the allocation happens in the matching init() function (though since there is only one call to each, and the struct is local to this file, it's mostly academic). Another option would be to put the struct on the stack rather than the heap. However, this gets tricky, as we check the pointer against NULL in several places to decide whether we're in geometric mode. Signed-off-by: Jeff King <peff@peff.net> Acked-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-08send-email: avoid creating more than one Term::ReadLine objectJeff King2-7/+16
Every time git-send-email calls its ask() function to prompt the user, we call term(), which instantiates a new Term::ReadLine object. But in v1.46 of Term::ReadLine::Gnu (which provides the Term::ReadLine interface on some platforms), its constructor refuses to create a second instance[1]. So on systems with that version of the module, most git-send-email instances will fail (as we usually prompt for both "to" and "in-reply-to" unless the user provided them on the command line). We can fix this by keeping a single instance variable and returning it for each call to term(). In perl 5.10 and up, we could do that with a "state" variable. But since we only require 5.008, we'll do it the old-fashioned way, with a lexical "my" in its own scope. Note that the tests in t9001 detect this problem as-is, since the failure mode is for the program to die. But let's also beef up the "Prompting works" test to check that it correctly handles multiple inputs (if we had chosen to keep our FakeTerm hack in the previous commit, then the failure mode would be incorrectly ignoring prompts after the first). [1] For discussion of why multiple instances are forbidden, see: https://github.com/hirooih/perl-trg/issues/16 Signed-off-by: Jeff King <peff@peff.net> Acked-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-08send-email: drop FakeTerm hackJeff King1-20/+2
Back in 280242d1cc (send-email: do not barf when Term::ReadLine does not like your terminal, 2006-07-02), we added a fallback for when Term::ReadLine's constructor failed: we'd have a FakeTerm object instead, which would then die if anybody actually tried to call readline() on it. Since we instantiated the $term variable at program startup, we needed this workaround to let the program run in modes when we did not prompt the user. But later, in f4dc9432fd (send-email: lazily load modules for a big speedup, 2021-05-28), we started loading Term::ReadLine lazily only when ask() is called. So at that point we know we're trying to prompt the user, and we can just die if ReadLine instantiation fails, rather than making this fake object to lazily delay showing the error. This should be OK even if there is no tty (e.g., we're in a cron job), because Term::ReadLine will return a stub object in that case whose "IN" and "OUT" functions return undef. And since 5906f54e47 (send-email: don't attempt to prompt if tty is closed, 2009-03-31), we check for that case and skip prompting. And we can be sure that FakeTerm was not kicking in for such a situation, because it has actually been broken since that commit! It does not define "IN" or "OUT" methods, so perl would barf with an error. If FakeTerm was in use, we were neither honoring what 5906f54e47 tried to do, nor producing the readable message that 280242d1cc intended. So we're better off just dropping FakeTerm entirely, and letting the error reported by constructing Term::ReadLine through. Signed-off-by: Jeff King <peff@peff.net> Acked-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-08t0040: declare non-tab indentation to be okay in this scriptJohannes Schindelin1-0/+1
By necessity, this script needs to verify that certain Git output matches expectations, including text indented with spaces instead of tabs. Most recently, such a check was introduced in 448abbba6347 (short help: allow multi-line opthelp, 2023-07-18) which is reported by `git diff --check 448abbba6347^!` as having whitespace issues. Let's not complain about this because it is intentional. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Acked-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07branch: error message deleting a branch in useRubén Justo2-2/+14
Let's update the error message we show when the user tries to delete a branch which is being used in another worktree, following the guideline reasoned in 4970bedef2 (branch: update the message to refuse touching a branch in-use, 2023-07-21). Signed-off-by: Rubén Justo <rjusto@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07advice: handle "rebase" in error_resolve_conflict()Oswald Buddenhagen1-2/+3
This makes sure that we get a properly translated message rather than inserting the command (which we failed to translate) into a generic fallback message. The function is called indirectly via die_resolve_conflict() with fixed strings, and directly with the string obtained via action_name(), which in turn returns a string from a fixed set. Hence we know that the now covered set of strings is exhausitive, and will therefore BUG() out when encountering an unexpected string. We also know that all covered strings are actually used. Arguably, the above suggests that it would be cleaner to pass the command as an enum in the first place, but that's left for another time. Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07t/lib-rebase: set_fake_editor(): handle FAKE_LINES more consistentlyOswald Buddenhagen1-1/+1
Default next action after 'fakesha' to preserving the command instead of forcing 'pick', consistently with other "instant-effect" keywords. There is no reason why one would want that inconsistency, so this was clearly just an oversight in commit 5dcdd740 ("t/lib-rebase: prepare for testing `git rebase --rebase-merges`"). Rectifying it makes the behavior easier to reason about and document. This would affect hypothetical "fakesha <n>" sequences where line <n> already isn't a pick, which currently don't appear. Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07t/lib-rebase: set_fake_editor(): fix recognition of reset's short commandOswald Buddenhagen1-1/+1
... in FAKE_LINES. This has been broken ever since it was introduced in 5dcdd7409a (t/lib-rebase: prepare for testing `git rebase --rebase-merges`, 2019-07-31), but it's not actually used, so it's a cosmetic defect only. Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07A few more topics before -rc1Junio C Hamano1-0/+8
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07mailmap: change primary address for Glen ChooGlen Choo1-0/+1
Glen will lose access to his work email soon. Signed-off-by: Glen Choo <chooglen@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-07Merge branch 'ew/sha256-gcrypt-leak-fixes'Junio C Hamano1-5/+8
Leakfixes. * ew/sha256-gcrypt-leak-fixes: sha256/gcrypt: die on gcry_md_open failures sha256/gcrypt: fix memory leak with SHA-256 repos sha256/gcrypt: fix build with SANITIZE=leak
2023-08-07Merge branch 'rs/bundle-parseopt-cleanup'Junio C Hamano2-23/+23
Code clean-up. * rs/bundle-parseopt-cleanup: bundle: use OPT_PASSTHRU_ARGV
2023-08-07Merge branch 'am/doc-sha256'Junio C Hamano2-8/+11
Tone down the warning on SHA-256 repositories being an experimental curiosity. We do not have support for them to interoperate with traditional SHA-1 repositories, but at this point, we do not plan to make breaking changes to SHA-256 repositories and there is no longer need for such a strongly phrased warning. * am/doc-sha256: doc: sha256 is no longer experimental
2023-08-07Merge branch 'tb/commit-graph-tests'Junio C Hamano3-242/+224
Test updates. * tb/commit-graph-tests: t/lib-commit-graph.sh: avoid sub-shell in `graph_git_behavior()` t5328: avoid top-level directory changes t5318: avoid top-level directory changes t/lib-commit-graph.sh: avoid directory change in `graph_git_behavior()` t/lib-commit-graph.sh: allow `graph_read_expect()` in sub-directories
2023-08-06parse-options: simplify usage_padding()René Scharfe1-12/+5
c512643e67 (short help: allow a gap smaller than USAGE_GAP, 2023-07-18) effectively did away with the two-space gap between options and their description; one space is enough now. Incorporate USAGE_GAP into USAGE_OPTS_WIDTH, merge the two cases with enough space on the line and incorporate the newline into the format for the remaining case. The output remains the same. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06parse-options: no --[no-]no-...René Scharfe3-3/+28
Avoid showing an optional "no-" for options that already start with a "no-" in the short help, as that double negation is confusing. Document the opposite variant on its own line with a generated help text instead, unless it's defined and documented explicitly already. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06parse-options: factor out usage_indent() and usage_padding()René Scharfe1-15/+24
Extract functions for printing spaces before and after options. We'll need them in the next commit. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06parse-options: show negatability of options in short helpRené Scharfe7-45/+58
Add a "[no-]" prefix to options without the flag PARSE_OPT_NONEG to document the fact that you can negate them. This looks a bit strange for options that already start with "no-", e.g. for the option --no-name of git show-branch: --[no-]no-name suppress naming strings You can actually use --no-no-name as an alias of --name, so the short help is not wrong. If we strip off any of the "no-"s, we lose either the ability to see if the remaining one belongs to the documented variant or to see if it can be negated. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06t1502: test option negationRené Scharfe3-0/+63
Add tests for checking the "git rev-parse --parseopt" flag "!" and whether options can be negated with a "no-" prefix. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06t1502: move optionspec help output to a fileRené Scharfe3-72/+42
"git rev-parse --parseopt" shows the short help with its description of all recognized options twice: When called with -h or --help, and after reporting an unknown option. Move the one for optionspec into a file and use it in two tests to deduplicate that part. "git rev-parse --parseopt -- --h" wraps the help text in "cat <<\EOF" and "EOF". Keep that part in the file to use it as is in the test that needs it and simply remove it in the other one using sed. Disable whitespace checking for the file using an attribute, as we need to keep its spaces intact and wouldn't want a stray --whitespace=fix turn them into tabs. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06t1502, docs: disallow --no-helpRené Scharfe2-4/+4
"git rev-parse --parseopt" handles the built-in options -h and --help, but not --no-help. Make test definitions and documentation examples more realistic by disabling negation. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06subtree: disallow --no-{help,quiet,debug,branch,message}René Scharfe1-5/+5
"git subtree" only handles the negated variant of the options annotate, prefix, onto, rejoin, ignore-joins and squash explicitly. help is handled by "git rev-parse --parseopt" implicitly, but not its negated form. Disable negation for it and the for the rest of the options to get a helpful error message when trying them. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-06l10n: po-id for 2.42 (round 1)Bagas Sanjaya1-194/+414
Update following components: * commit-graph.c * diff-no-index.c * builtin/notes.c * builtin/pack-refs.c * builtin/worktree.c Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2023-08-05Merge branch 'russian-l10n' of https://github.com/DJm00n/git-po-ruJiang Xin1-1226/+1627
* 'russian-l10n' of https://github.com/DJm00n/git-po-ru: l10n: ru.po: update Russian translation
2023-08-04gitignore: ignore clangd .cache directorybrian m. carlson1-0/+1
In at least some versions of clangd, including version 15 in Ubuntu 23.04, a directory, .cache, is written in the root of the repository with index information about the files in the repository. Since clangd is the most common language server protocol (LSP) implementation for C, and we already support it using the GENERATE_COMPILATION_DATABASE flags to make it functional, it's likely many users are using or will want to use it. As a result, ignore the ".cache" directory to help avoid users accidentally committing the data. Signed-off-by: brian m. carlson <bk2204@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-04Git 2.42-rc0v2.42.0-rc0Junio C Hamano2-1/+24
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-04Merge branch 'jc/branch-in-use-error-message'Junio C Hamano2-6/+6
"git branch -f X" to repoint the branch X said that X was "checked out" in another worktree, even when branch X was not and instead being bisected or rebased. The message was reworded to say the branch was "in use". * jc/branch-in-use-error-message: branch: update the message to refuse touching a branch in-use
2023-08-04Merge branch 'hy/blame-in-bare-with-contents'Junio C Hamano2-1/+12
"git blame --contents=file" has been taught to work in a bare repository. * hy/blame-in-bare-with-contents: blame: allow --contents to work with bare repo
2023-08-04Merge branch 'jc/parse-options-short-help'Junio C Hamano4-7/+21
Command line parser fix, and a small parse-options API update. * jc/parse-options-short-help: short help: allow a gap smaller than USAGE_GAP remote: simplify "remote add --tags" help text short help: allow multi-line opthelp
2023-08-04Merge branch 'jc/doc-sent-patch-now-what'Junio C Hamano1-0/+32
Process document update. * jc/doc-sent-patch-now-what: MyFirstContribution: refrain from self-iterating too much
2023-08-04Merge branch 'la/doc-choose-starting-point-fixup'Junio C Hamano1-4/+20
Clarify how to pick a starting point for a new topic in the SubmittingPatches document. * la/doc-choose-starting-point-fixup: SubmittingPatches: use of older maintenance tracks is an exception SubmittingPatches: explain why 'next' and above are inappropriate base SubmittingPatches: choice of base for fixing an older maintenance track
2023-08-04Merge branch 'pv/doc-submodule-update-settings'Junio C Hamano2-15/+22
Rewrite the description of giving a custom command to the submodule.<name>.update configuration variable. * pv/doc-submodule-update-settings: doc: highlight that .gitmodules does not support !command
2023-08-04Merge branch 'ja/worktree-orphan-fix'Junio C Hamano2-9/+9
Fix tests with unportable regex patterns. * ja/worktree-orphan-fix: t2400: rewrite regex to avoid unintentional PCRE builtin/worktree.c: convert tab in advice to space t2400: drop no-op `--sq` from rev-parse call
2023-08-04Merge branch 'jc/retire-get-sha1-hex'Junio C Hamano4-7/+9
The implementation of "get_sha1_hex()" that reads a hexadecimal string that spells a full object name has been extended to cope with any hash function used in the repository, but the "sha1" in its name survived. Rename it to get_hash_hex(), a name that is more consistent within its friends like get_hash_hex_algop(). * jc/retire-get-sha1-hex: hex: retire get_sha1_hex()
2023-08-04Merge branch 'la/doc-choose-starting-point'Junio C Hamano1-41/+84
Clarify how to choose the starting point for a new topic in developer guidance document. * la/doc-choose-starting-point: SubmittingPatches: simplify guidance for choosing a starting point SubmittingPatches: emphasize need to communicate non-default starting points SubmittingPatches: de-emphasize branches as starting points SubmittingPatches: discuss subsystems separately from git.git SubmittingPatches: reword awkward phrasing
2023-08-04docs: update when `git bisect visualize` uses `gitk`Matthias Aßhauer1-3/+8
This check has involved more environment variables than just `DISPLAY` since 508e84a790 (bisect view: check for MinGW32 and MacOSX in addition to X11, 2008-02-14), so let's update the documentation accordingly. Signed-off-by: Matthias Aßhauer <mha1993@live.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-03compat/mingw: implement a native locate_in_PATH()Matthias Aßhauer2-0/+8
since 5e1f28d (bisect--helper: reimplement `bisect_visualize()` shell function in C, 2021-09-13) `git bisect visualize` uses exists_in_PATH() to check wether it should call `gitk`, but exists_in_PATH() relies on locate_in_PATH() which currently only understands POSIX-ish PATH variables (a list of paths, separated by colons) on native Windows executables we encounter Windows PATH variables (a list of paths that often contain drive letters (and thus colons), separated by semicolons). Luckily we do already have a function that can lookup executables on windows PATHs: path_lookup(). Implement a small replacement for the existing locate_in_PATH() based on path_lookup(). Reported-by: Louis Strous <Louis.Strous@intellimagic.com> Signed-off-by: Matthias Aßhauer <mha1993@live.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-03run-command: conditionally define locate_in_PATH()Matthias Aßhauer1-0/+2
This commit doesn't change any behaviour by itself, but allows us to easily define compat replacements for locate_in_PATH(). It prepares us for the next commit that adds a native Windows implementation of locate_in_PATH(). Signed-off-by: Matthias Aßhauer <mha1993@live.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-03rebase --skip: fix commit message clean up when skipping squashPhillip Wood4-39/+93
During a series of "fixup" and/or "squash" commands, the interactive rebase accumulates a commit message from all the commits that are being squashed together. If one of the commits has conflicts when it is picked and the user chooses to skip that commit then we need to remove that commit's message from accumulated messages. To do this 15ef69314d5 (rebase --skip: clean up commit message after a failed fixup/squash, 2018-04-27) updated commit_staged_changes() to reset the accumulated message to the commit message of HEAD (which does not contain the message from the skipped commit) when the last command was "fixup" or "squash" and there are no staged changes. Unfortunately the code to do this contains two bugs. (1) If parse_head() fails we pass an invalid pointer to unuse_commit_buffer(). (2) The reconstructed message uses the entire commit buffer from HEAD including the headers, rather than just the commit message. The first issue is fixed by splitting up the "if" condition into several statements each with its own error handling. The second issue is fixed by finding the start of the commit message within the commit buffer using find_commit_subject(). The existing test added by 15ef69314d5 is modified to show the effect of this bug. The bug is triggered when skipping the first command in the chain (as the test does before this commit) but the effect is hidden because opts->current_fixup_count is set to zero which leads update_squash_messages() to recreate the squash message file from scratch overwriting the bad message created by commit_staged_changes(). The test is also updated to explicitly check the commit messages rather than relying on grep to ensure they do not contain any stray commit headers. To check the commit message the function test_commit_message() is moved from t3437-rebase-fixup-options.sh to test-lib.sh. As the function is now publicly available it is updated to provide better error detection and avoid overwriting the commonly used files "actual" and "expect". Support for reading the expected commit message from stdin is also added. Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-02ident: don't consider '.' a crudbrian m. carlson3-4/+12
When we process a user's name (as in user.name), we strip all leading and trailing crud from it. Right now, we consider a dot a crud character, and strip it off. However, this is unsuitable for many personal names because humans frequently have abbreviated suffixes, such as "Jr." or "Sr." at the end of their names, and this corrupts them. Some other users may wish to use an abbreviated name or initial, which will pose a problem especially in cultures that write the family name first, followed by the personal name. Since the current approach causes lots of practical problems, let's avoid it by no longer considering a dot to be crud. Note that "." in the name forces the entire name to be quoted to please mailers, but stripping "." only at the beginning and the end does not help a name with "." in the middle (like "brian m. carlson") so this change will not make it much worse. A name like "Given Family, Jr." that did not have to be quoted now would need to be, in order to be placed on the e-mail headers, though. This is based on a weather-balloon patch by Jeff King sent in Aug 2021 https://lore.kernel.org/git/YSKm8Q8nyTavQaox@coredump.intra.peff.net/ Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-02The eighteenth batchJunio C Hamano1-0/+19
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-02Documentation/RelNotes/2.42.0.txt: typofixTaylor Blau1-1/+1
Fix a typo introduced in aa9166bcc0 (The ninth batch, 2023-07-08). Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2023-08-02Merge branch 'ks/ref-filter-describe'Junio C Hamano3-0/+391
"git branch --list --format=<format>" and friends are taught a new "%(describe)" placeholder. * ks/ref-filter-describe: ref-filter: add new "describe" atom ref-filter: add multiple-option parsing functions
2023-08-02Merge branch 'ah/sequencer-rewrite-todo-fix'Junio C Hamano2-1/+27
When the user edits "rebase -i" todo file so that it starts with a "fixup", which would make it invalid, the command truncated the rest of the file before giving an error and returning the control back to the user. Stop truncating to make it easier to correct such a malformed todo file. * ah/sequencer-rewrite-todo-fix: sequencer: finish parsing the todo list despite an invalid first line
2023-08-02Merge branch 'bb/use-trace2-counters-for-fsync-stats'Junio C Hamano6-26/+19
Instead of inventing a custom counter variables for debugging, use existing trace2 facility in the fsync customization codepath. * bb/use-trace2-counters-for-fsync-stats: wrapper: use trace2 counters to collect fsync stats
2023-08-02Merge branch 'ah/autoconf-fixes'Junio C Hamano1-1/+10
"./configure --with-expat=no" did not work as a way to refuse use of the expat library on a system with the library installed, which has been corrected. * ah/autoconf-fixes: configure.ac: always save NO_ICONV to config.status configure.ac: don't overwrite NO_CURL option configure.ac: don't overwrite NO_EXPAT option
2023-08-02Merge branch 'jc/tree-walk-drop-base-offset'Junio C Hamano6-23/+23
Code simplification. * jc/tree-walk-drop-base-offset: tree-walk: drop unused base_offset from do_match() tree-walk: lose base_offset that is never used in tree_entry_interesting
2023-08-01avoid SHA-1 functions deprecated in OpenSSL 3+Eric Wong3-1/+63
OpenSSL 3+ deprecates the SHA1_Init, SHA1_Update, and SHA1_Final functions, leading to errors when building with `DEVELOPER=1'. Use the newer EVP_* API with OpenSSL 3+ (only) despite being more error-prone and less efficient due to heap allocations. Signed-off-by: Eric Wong <e@80x24.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>