Re: 02/02: gnu: libical: Add upstream patch to preserve API compatibility.

2020-02-10 Thread zimoun
Hi,

On Fri, 7 Feb 2020 at 22:44, Ludovic Courtès  wrote:

> Marius Bakke  skribis:


> > I wonder if it's feasible to use Guile-Git to generate the patches
> > instead, at the expense of having to download the entire repository
> > for the purpose of extracting one or more (substitutable) patches.
>
> Good question.  We could have a lowerable  data type that
> would (1) clone the repo, and (2) dump the raw (?) commit to #$output.
> It’s happening on the build side, like ‘git-fetch’, so it could use Git
> directly, which supports shallow clones.

I do not know if it makes sense but Git provides now a (experimental)
partial download/clone.

https://git-scm.com/docs/partial-clone


All the best,
simon



Re: 02/02: gnu: libical: Add upstream patch to preserve API compatibility.

2020-02-07 Thread Ludovic Courtès
Hi!

Marius Bakke  skribis:

> Ludovic Courtès  writes:
>
>> Howdy!
>>
>> guix-comm...@gnu.org skribis:
>>
>>> +   (list (origin
>>> +   (method url-fetch)
>>> +   (uri (string-append
>>> + "https://github.com/libical/libical/commit/;
>>> + 
>>> "ae394010c889e4c185160da5e81527849f9de350.patch"))
>>
>> IIRC, those generated patches are not stable, like generated tarballs,
>> no?  What are the available options?
>
> I haven't seen GitHub change such generated patch files yet[*], but I do
> agree it's "fragile", because they can be difficult to reproduce when
> GitHub inevitably disappears, or _do_ change the format.

Yeah, I remember Cgit would include its version number in patches, for
instance.

> I wonder if it's feasible to use Guile-Git to generate the patches
> instead, at the expense of having to download the entire repository
> for the purpose of extracting one or more (substitutable) patches.

Good question.  We could have a lowerable  data type that
would (1) clone the repo, and (2) dump the raw (?) commit to #$output.
It’s happening on the build side, like ‘git-fetch’, so it could use Git
directly, which supports shallow clones.

Sounds like it could work!

Ludo’.



Re: 02/02: gnu: libical: Add upstream patch to preserve API compatibility.

2020-02-05 Thread Marius Bakke
Ludovic Courtès  writes:

> Howdy!
>
> guix-comm...@gnu.org skribis:
>
>> +   (list (origin
>> +   (method url-fetch)
>> +   (uri (string-append
>> + "https://github.com/libical/libical/commit/;
>> + 
>> "ae394010c889e4c185160da5e81527849f9de350.patch"))
>
> IIRC, those generated patches are not stable, like generated tarballs,
> no?  What are the available options?

I haven't seen GitHub change such generated patch files yet[*], but I do
agree it's "fragile", because they can be difficult to reproduce when
GitHub inevitably disappears, or _do_ change the format.

I wonder if it's feasible to use Guile-Git to generate the patches
instead, at the expense of having to download the entire repository
for the purpose of extracting one or more (substitutable) patches.

[*] There was one instance where it had changed, but that was a merge
commit(!), which is a pretty extreme case (whoops):
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=7670efefe4fb4aca12cb19ea5d89ff37c48e3ea6


signature.asc
Description: PGP signature


Re: 02/02: gnu: libical: Add upstream patch to preserve API compatibility.

2020-02-04 Thread Ludovic Courtès
Howdy!

guix-comm...@gnu.org skribis:

> +   (list (origin
> +   (method url-fetch)
> +   (uri (string-append
> + "https://github.com/libical/libical/commit/;
> + 
> "ae394010c889e4c185160da5e81527849f9de350.patch"))

IIRC, those generated patches are not stable, like generated tarballs,
no?  What are the available options?

Thanks,
Ludo’.