How is the ^{sha256} peel syntax supposed to work?
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Aug 29, 2018, 09:13 UTC
- Message-ID
- <877ek9edsa.fsf@evledraar.gmail.com>
- In-Reply-To
- <20180824014703.GE99542@aiede.svl.corp.google.com>
On Fri, Aug 24 2018, Jonathan Nieder wrote:
Show 15 quoted lines
> Hi,
>
> Ævar Arnfjörð Bjarmason wrote:
>
>>> git --output-format=sha1 log abac87a^{sha1}..f787cac^{sha256}
>>
>> How is this going to interact with other peel syntax? I.e. now we have
>> <object>^{commit} <sha>^{tag} etc. It seems to me we'll need not ^{sha1}
>> but ^{sha1:<current_type>}, e.g. ^{sha1:commit} or ^{sha1:tag}, with
>> current ^{} being a synonym for ^{sha1:}.
>>
>> Or is this expected to be chained, as e.g. <object>^{tag}^{sha256} ?
>
> Great question. The latter (well, <hexdigits>^{sha256}^{tag}, not the
> other way around).Since nobody's chimed in with an answer, and I suspect many have an adversion to that big thread I thought I'd spin out just this small question into its own thread.
brian m. carlson did some prep work for this in his just-submitted https://public-inbox.org/git/20180829005857.980820-2-sandals@crustytoothpaste.net/
I was going to work on some of the peel code soon (digging up the type disambiguation patches I still need to re-submit), so could do this while I'm at it, i.e. implement ^{sha1}.
But as noted above it's not clear how it should work. Jonathan's chaining suggestion (<hexdigits>^{sha256}^{tag} not <hexdigits>^{tag}^{sha256}) makes more sense than mine, but is that what we're going for, or ^{sha256:tag}?