* Re: 01/01: scripts: refresh: Allow searching recursively.
[not found] ` <20181224103305.59E3520448@vcs0.savannah.gnu.org>
@ 2018-12-25 15:05 ` Ludovic Courtès
2018-12-25 17:10 ` Efraim Flashner
0 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2018-12-25 15:05 UTC (permalink / raw)
To: guix-devel, Efraim Flashner
Hello!
guix-commits@gnu.org skribis:
> efraim pushed a commit to branch master
> in repository guix.
>
> commit c39491829a0c1d870f8133b8f7a699152fc71503
> Author: Efraim Flashner <efraim@flashner.co.il>
> Date: Wed Dec 19 22:08:18 2018 +0200
>
> scripts: refresh: Allow searching recursively.
>
> * guix/scripts/refresh.scm (refresh-recursive, list-transitive): New
> procedures.
> (show-help): Document it.
> (guix-refresh): Add flags and checks for new options.
> * doc/guix.texi (Invoking guix refresh): Document new options.
Nice work!
> +@item --list-transitive
> +List all the packages which one or more packages depend upon.
What about ‘--list-dependencies’, for clarity and symmetry with
‘--list-dependents’?
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 01/01: scripts: refresh: Allow searching recursively.
2018-12-25 15:05 ` 01/01: scripts: refresh: Allow searching recursively Ludovic Courtès
@ 2018-12-25 17:10 ` Efraim Flashner
2019-01-05 17:43 ` Ludovic Courtès
0 siblings, 1 reply; 5+ messages in thread
From: Efraim Flashner @ 2018-12-25 17:10 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 1422 bytes --]
On Tue, Dec 25, 2018 at 04:05:11PM +0100, Ludovic Courtès wrote:
> Hello!
>
> guix-commits@gnu.org skribis:
>
> > efraim pushed a commit to branch master
> > in repository guix.
> >
> > commit c39491829a0c1d870f8133b8f7a699152fc71503
> > Author: Efraim Flashner <efraim@flashner.co.il>
> > Date: Wed Dec 19 22:08:18 2018 +0200
> >
> > scripts: refresh: Allow searching recursively.
> >
> > * guix/scripts/refresh.scm (refresh-recursive, list-transitive): New
> > procedures.
> > (show-help): Document it.
> > (guix-refresh): Add flags and checks for new options.
> > * doc/guix.texi (Invoking guix refresh): Document new options.
>
> Nice work!
>
> > +@item --list-transitive
> > +List all the packages which one or more packages depend upon.
>
> What about ‘--list-dependencies’, for clarity and symmetry with
> ‘--list-dependents’?
>
It was originally '--list-recursive' but Bavier suggested
'--list-transitive' so it would match 'guix build --sources=transitive'
If it's too close to '--list-dependents' then I'm worried people could
look at it and ask 'packages FOO is dependent on or packages that are
dependent on FOO?'
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 01/01: scripts: refresh: Allow searching recursively.
2018-12-25 17:10 ` Efraim Flashner
@ 2019-01-05 17:43 ` Ludovic Courtès
2019-01-05 20:15 ` swedebugia
0 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2019-01-05 17:43 UTC (permalink / raw)
To: Efraim Flashner; +Cc: guix-devel
Efraim Flashner <efraim@flashner.co.il> skribis:
> On Tue, Dec 25, 2018 at 04:05:11PM +0100, Ludovic Courtès wrote:
>> Hello!
>>
>> guix-commits@gnu.org skribis:
>>
>> > efraim pushed a commit to branch master
>> > in repository guix.
>> >
>> > commit c39491829a0c1d870f8133b8f7a699152fc71503
>> > Author: Efraim Flashner <efraim@flashner.co.il>
>> > Date: Wed Dec 19 22:08:18 2018 +0200
>> >
>> > scripts: refresh: Allow searching recursively.
>> >
>> > * guix/scripts/refresh.scm (refresh-recursive, list-transitive): New
>> > procedures.
>> > (show-help): Document it.
>> > (guix-refresh): Add flags and checks for new options.
>> > * doc/guix.texi (Invoking guix refresh): Document new options.
>>
>> Nice work!
>>
>> > +@item --list-transitive
>> > +List all the packages which one or more packages depend upon.
>>
>> What about ‘--list-dependencies’, for clarity and symmetry with
>> ‘--list-dependents’?
>>
>
> It was originally '--list-recursive' but Bavier suggested
> '--list-transitive' so it would match 'guix build --sources=transitive'
>
> If it's too close to '--list-dependents' then I'm worried people could
> look at it and ask 'packages FOO is dependent on or packages that are
> dependent on FOO?'
Good point. I do feel like ‘--list-dependencies’ is clearer though.
With ‘list-transitive’, since “transitive” is an adjective, I first
wondered: transitive what?
What do people think?
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 01/01: scripts: refresh: Allow searching recursively.
2019-01-05 17:43 ` Ludovic Courtès
@ 2019-01-05 20:15 ` swedebugia
2019-01-08 16:27 ` Ludovic Courtès
0 siblings, 1 reply; 5+ messages in thread
From: swedebugia @ 2019-01-05 20:15 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel, Guix-devel
On 2019-01-05 18:43, Ludovic Courtès wrote:
> Efraim Flashner <efraim@flashner.co.il> skribis:
>
>> On Tue, Dec 25, 2018 at 04:05:11PM +0100, Ludovic Courtès wrote:
>>> Hello!
>>>
>>> guix-commits@gnu.org skribis:
>>>
>>> > efraim pushed a commit to branch master
>>> > in repository guix.
>>> >
>>> > commit c39491829a0c1d870f8133b8f7a699152fc71503
>>> > Author: Efraim Flashner <efraim@flashner.co.il>
>>> > Date: Wed Dec 19 22:08:18 2018 +0200
>>> >
>>> > scripts: refresh: Allow searching recursively.
>>> >
>>> > * guix/scripts/refresh.scm (refresh-recursive, list-transitive): New
>>> > procedures.
>>> > (show-help): Document it.
>>> > (guix-refresh): Add flags and checks for new options.
>>> > * doc/guix.texi (Invoking guix refresh): Document new options.
>>>
>>> Nice work!
>>>
>>> > +@item --list-transitive
>>> > +List all the packages which one or more packages depend upon.
>>>
>>> What about ‘--list-dependencies’, for clarity and symmetry with
>>> ‘--list-dependents’?
>>>
>>
>> It was originally '--list-recursive' but Bavier suggested
>> '--list-transitive' so it would match 'guix build --sources=transitive'
>>
>> If it's too close to '--list-dependents' then I'm worried people could
>> look at it and ask 'packages FOO is dependent on or packages that are
>> dependent on FOO?'
>
> Good point. I do feel like ‘--list-dependencies’ is clearer though.
> With ‘list-transitive’, since “transitive” is an adjective, I first
> wondered: transitive what?
>
> What do people think?
I pondered this a bit.
What about evolving our terminology as if we talk about the graph
produced by "guix graph"?
That means we have only 2 directions. Upwards: 'packages that are
dependent on FOO'
Downwards: 'packages FOO is dependent on'
This could give us the following terms:
X is an upwards dependency to Y.
FOO is a downward dependency of BAR.
=>
--list-upwards-dependencies
--list-downwards-dependencies
Furthermore we could create words to describe packages with many/few
dependencies:
Package X is a heavy root with 120 upward links.
We could define a scale and make our commands output it consistently:
- light root <=50 upward links
- medium root >50<=100 upward links
- heavy root >100<=500 upward links
- very heavy root >500<=1000 upward links
- extremely heavy root >1000 upward links
(The numbers above are just an example)
With npm-packages we could say:
Package X is a heavy root with 3 versions in use.
Package Y is a light root with only the latest in use.
(In npm a package can appear multiple times as dependency to
dependencies and sometimes in different versions meaning we have to
package it multiple versions of some packages.)
Thoughts?
--
Cheers
Swedebugia
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 01/01: scripts: refresh: Allow searching recursively.
2019-01-05 20:15 ` swedebugia
@ 2019-01-08 16:27 ` Ludovic Courtès
0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2019-01-08 16:27 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel, Guix-devel
Hi,
swedebugia@riseup.net skribis:
> Furthermore we could create words to describe packages with many/few
> dependencies:
>
> Package X is a heavy root with 120 upward links.
>
> We could define a scale and make our commands output it consistently:
>
> - light root <=50 upward links
> - medium root >50<=100 upward links
> - heavy root >100<=500 upward links
> - very heavy root >500<=1000 upward links
> - extremely heavy root >1000 upward links
>
> (The numbers above are just an example)
Yes, I’ve been wanting something like this, but IIRC the current (guix
graph) implementation turned out to be inefficient to compute
upward/downward rank for a large number of nodes.
Ludo’.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-01-08 16:27 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20181224103304.24211.61386@vcs0.savannah.gnu.org>
[not found] ` <20181224103305.59E3520448@vcs0.savannah.gnu.org>
2018-12-25 15:05 ` 01/01: scripts: refresh: Allow searching recursively Ludovic Courtès
2018-12-25 17:10 ` Efraim Flashner
2019-01-05 17:43 ` Ludovic Courtès
2019-01-05 20:15 ` swedebugia
2019-01-08 16:27 ` Ludovic Courtès
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.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).