From: Junio C Hamano <gitster@pobox.com>
To: Dragan Simic <dsimic@manjaro.org>
Cc: Taylor Blau <me@ttaylorr.com>, git@vger.kernel.org
Subject: Re: [DISCUSS] Introducing Rust into the Git project
Date: Wed, 10 Jan 2024 14:11:34 -0800 [thread overview]
Message-ID: <xmqqjzog96uh.fsf@gitster.g> (raw)
In-Reply-To: <b2651b38a4f7edaf1c5ffee72af00e46@manjaro.org> (Dragan Simic's message of "Wed, 10 Jan 2024 22:57:21 +0100")
Dragan Simic <dsimic@manjaro.org> writes:
> Thus, Git should probably follow the same approach of not converting
> the already existing code, but frankly, I don't see what would
> actually be the "new leafs" written in Rust.
A few obvious ones that come to my mind are that you should be able
to write a new merge strategy and link the resulting binary into Git
without much hassle. You might even want to make that a dynamically
loaded object. The interface into a merge strategy is fairly narrow
IIRC. Or possibly a new remote helper.
Adding a new refs backend may need to wait for the work Patrick is
doing to add reftable support, but once the abstraction gets to the
point to sufficiently hide the differences between files and reftables
backends, I do not see a reason why you cannot add the third one.
And more into the future, we might want to have an object DB
abstraction, similar to how we abstracted refs API over time, at
which time you might be writing code that stores objects to and
retrieves objects from persistent redis and whatnot in your favorite
language.
next prev parent reply other threads:[~2024-01-10 22:11 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-10 20:16 [DISCUSS] Introducing Rust into the Git project Taylor Blau
2024-01-10 21:57 ` Dragan Simic
2024-01-10 22:11 ` Junio C Hamano [this message]
2024-01-10 22:15 ` rsbecker
2024-01-10 22:26 ` Taylor Blau
2024-01-10 23:52 ` rsbecker
2024-01-11 0:59 ` Elijah Newren
2024-01-11 1:44 ` rsbecker
2024-01-11 2:21 ` Elijah Newren
2024-01-11 2:57 ` rsbecker
2024-01-11 5:06 ` Elijah Newren
2024-01-11 6:56 ` Patrick Steinhardt
2024-01-11 13:07 ` rsbecker
2024-01-11 2:55 ` brian m. carlson
2024-01-11 3:24 ` rsbecker
2024-01-11 20:07 ` Trevor Gross
2024-01-11 21:28 ` rsbecker
2024-01-11 23:23 ` Trevor Gross
2024-01-22 23:17 ` Defining a platform support policy (Was: [DISCUSS] Introducing Rust into the Git project) Emily Shaffer
2024-01-23 0:11 ` rsbecker
2024-01-23 0:57 ` Defining a platform support policy Junio C Hamano
2024-01-23 0:31 ` Junio C Hamano
2024-01-24 7:54 ` Defining a platform support policy (Was: [DISCUSS] Introducing Rust into the Git project) Elijah Newren
2024-01-10 23:40 ` [DISCUSS] Introducing Rust into the Git project brian m. carlson
2024-01-11 0:33 ` Elijah Newren
2024-01-11 5:39 ` Dragan Simic
2024-01-11 16:57 ` Elijah Newren
2024-01-17 21:30 ` Dragan Simic
2024-01-24 4:15 ` Elijah Newren
2024-01-24 5:14 ` Dragan Simic
2024-01-11 0:12 ` Elijah Newren
2024-01-11 5:33 ` Dragan Simic
2024-01-11 1:56 ` brian m. carlson
2024-01-11 11:45 ` Sam James
2024-01-11 23:48 ` brian m. carlson
2024-01-12 8:24 ` Sam James
2024-01-12 14:46 ` Antoni Boucher
2024-01-11 23:53 ` Trevor Gross
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqjzog96uh.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=dsimic@manjaro.org \
--cc=git@vger.kernel.org \
--cc=me@ttaylorr.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.
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 NNTP newsgroup(s).