git/list[1] front-page[2] threads[3] people[4] search[5] about
 

ps/stash-in-c, was Re: What's cooking in git.git (Jan 2019, #02; Tue, 15)

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Jan 18, 2019, 09:58 UTC
Message-ID
<nycvar.QRO.7.76.6.1901172141480.41@tvgsbejvaqbjf.bet>
In-Reply-To
<20190116212631.GK25639@hank.intra.tgummerer.com>
Hi Thomas & Junio,
On Wed, 16 Jan 2019, Thomas Gummerer wrote:
Show 43 quoted lines
> On 01/15, Junio C Hamano wrote:
> > * ps/stash-in-c (2019-01-04) 27 commits
> >  - tests: add a special setup where stash.useBuiltin is off
> >  - stash: optionally use the scripted version again
> >  - stash: add back the original, scripted `git stash`
> >  - stash: convert `stash--helper.c` into `stash.c`
> >  - stash: replace all `write-tree` child processes with API calls
> >  - stash: optimize `get_untracked_files()` and `check_changes()`
> >  - stash: convert save to builtin
> >  - stash: make push -q quiet
> >  - stash: convert push to builtin
> >  - stash: convert create to builtin
> >  - stash: convert store to builtin
> >  - stash: convert show to builtin
> >  - stash: convert list to builtin
> >  - stash: convert pop to builtin
> >  - stash: convert branch to builtin
> >  - stash: convert drop and clear to builtin
> >  - stash: convert apply to builtin
> >  - stash: mention options in `show` synopsis
> >  - stash: add tests for `git stash show` config
> >  - stash: rename test cases to be more descriptive
> >  - t3903: modernize style
> >  - stash: improve option parsing test coverage
> >  - ident: add the ability to provide a "fallback identity"
> >  - strbuf.c: add `strbuf_insertf()` and `strbuf_vinsertf()`
> >  - strbuf.c: add `strbuf_join_argv()`
> >  - sha1-name.c: add `get_oidf()` which acts like `get_oid()`
> >  - Merge branch 'sd/stash-wo-user-name'
> > 
> >  "git stash" rewritten in C.
> > 
> >  Comments?
> 
> I read over the series last weekend.  I had some small comments on
> 21/26 and 25/26.  I forgot to reply with my overall assessment on the
> thread though.  I'd be happy to give my Reviewed-by for the whole
> series with or without the changes I suggested.  I double-checked the
> re-introduced "legacy" stash script to make sure it is actually the
> same as it is on master.
> 
> So I'd be happy to get this merged into 'next', and if anything comes
> up to fix that on top.

Me, too. There is actually one patch that is needed on top (it came in via Git for Windows, which already switched to the built-in stash, leaving the legacy-stash command only as an emergency escape hatch that is not even exposed in the installer anymore): after `git add -N <file>`, the built-in stash caused a segmentation fault.

At this stage, I would recommend to simply add it as separate topic, just because it would delay the stash-in-c even further otherwise. I contributed the patch here:

	https://public-inbox.org/git/pull.110.git.gitgitgadget@gmail.com/

Ciao, Dscho

Previous: Junio C Hamano
Message 11 of 11 in “What's cooking in git.git (Jan 2019, #02; Tue, 15)”
  1. Junio C HamanoJan 15, 2019
  2. Denton LiuJan 15, 2019
  3. Junio C HamanoJan 15, 2019
  4. Duy NguyenJan 16, 2019
  5. Junio C HamanoJan 16, 2019
  6. Eric WongJan 16, 2019
  7. Junio C HamanoJan 16, 2019
  8. Junio C HamanoJan 16, 2019
  9. Thomas GummererJan 16, 2019
  10. Junio C HamanoJan 17, 2019
  11. ps/stash-in-c, was Re: What's cooking in git.git (Jan 2019, #02; Tue, 15)Johannes Schindelin, Jan 18, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.