From: Junio C Hamano <gitster@pobox.com>
To: Derrick Stolee <stolee@gmail.com>
Cc: Jeff King <peff@peff.net>, Git List <git@vger.kernel.org>
Subject: Re: [PATCH 1/6] test-lib: introduce test_commit_bulk
Date: Fri, 28 Jun 2019 11:05:03 -0700 [thread overview]
Message-ID: <xmqqh8898u28.fsf@gitster-ct.c.googlers.com> (raw)
In-Reply-To: <2d4410a9-fd3e-8b9f-00b5-f8eba4d51b42@gmail.com> (Derrick Stolee's message of "Fri, 28 Jun 2019 08:35:28 -0400")
Derrick Stolee <stolee@gmail.com> writes:
> way to do this loop. The top thing on my mind are the 'eval "echo X"'
> lines. If they start processes, then we can improve the performance.
> If not, then it may not be worth it.
Sigh.
Do you mean 'echo' run inside 'eval' is one extra process? In most
modern shells, it is a built-in and you need another process.
Do you mean 'eval' running anything is one extra process? Because
anything done inside eval must be visible to the shell running it,
e.g.
var=myvar; eval "$var=val"
would evaluate string 'myvar=val' inside that shell itself and it
must be able to update the value of $myvar, whatever it does must
not add any extra process.
The primary reason why the loop in question uses eval is to allow
the callers to pass $n in single-quote to have it interpolated
lazily.
message='message $n'
for n in 1 2 3
do
echo "$message"
eval "echo \"$message\""
done
Each iteration, the first line gives
message $n
which is the thing that gets passed to 'echo' in the second line, so
you'll see
message $n
message 1
message $n
message 2
message $n
message 3
as the result.
next prev parent reply other threads:[~2019-06-28 18:05 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-27 17:05 Git Test Coverage Report (Thurs. June 27) Derrick Stolee
2019-06-27 17:35 ` Derrick Stolee
2019-06-28 6:41 ` Jeff King
2019-06-28 9:37 ` [PATCH 0/6] easy bulk commit creation in tests Jeff King
2019-06-28 9:39 ` [PATCH 1/6] test-lib: introduce test_commit_bulk Jeff King
2019-06-28 12:35 ` Derrick Stolee
2019-06-28 18:05 ` Junio C Hamano [this message]
2019-06-29 0:09 ` Jeff King
2019-06-28 17:53 ` Junio C Hamano
2019-06-29 0:14 ` Jeff King
2019-06-28 18:44 ` Ævar Arnfjörð Bjarmason
2019-06-29 0:19 ` Jeff King
2019-06-28 21:32 ` Eric Sunshine
2019-06-28 23:04 ` SZEDER Gábor
2019-06-28 23:46 ` Eric Sunshine
2019-06-29 0:26 ` Jeff King
2019-06-29 8:24 ` SZEDER Gábor
2019-07-01 17:42 ` Junio C Hamano
2019-06-29 0:25 ` Jeff King
2019-06-28 9:39 ` [PATCH 2/6] t5310: increase the number of bitmapped commits Jeff King
2019-06-28 9:41 ` [PATCH 3/6] t3311: use test_commit_bulk Jeff King
2019-06-28 9:41 ` [PATCH 4/6] t5702: " Jeff King
2019-06-28 9:42 ` [PATCH 5/6] t5703: " Jeff King
2019-06-28 9:42 ` [PATCH 6/6] t6200: " Jeff King
2019-06-28 12:53 ` [PATCH 0/6] easy bulk commit creation in tests Johannes Schindelin
2019-06-29 0:30 ` Jeff King
2019-06-29 16:38 ` Elijah Newren
2019-06-30 6:34 ` Jeff King
2019-06-28 18:49 ` Ævar Arnfjörð Bjarmason
2019-06-29 0:45 ` Jeff King
2019-06-29 4:53 ` [PATCH v2 1/6] test-lib: introduce test_commit_bulk Jeff King
2019-07-01 22:24 ` Junio C Hamano
2019-07-02 5:16 ` Jeff King
2019-07-01 22:28 ` Junio C Hamano
2019-07-02 5:22 ` Jeff King
2019-06-28 6:45 ` Git Test Coverage Report (Thurs. June 27) Jeff King
2019-06-28 12:23 ` Derrick Stolee
2019-06-28 23:59 ` Jeff King
2019-06-29 1:36 ` Derrick Stolee
2019-06-29 5:15 ` Jeff King
2019-06-28 9:47 ` Duy Nguyen
2019-06-28 12:39 ` Derrick Stolee
2019-06-28 13:39 ` Christian Couder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqh8898u28.fsf@gitster-ct.c.googlers.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=peff@peff.net \
--cc=stolee@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).