On 2/2/23 17:31, Jean-Marc Lasgouttes wrote:
Le 02/02/2023 à 23:12, Daniel a écrit :
The problem is when the depencies/exclusion graph contains furstrated loops. Something like

- one has B, which provides feature "foo"
- want to insert A, which requires C
- C is incompatible with B
- of course the solution is to install D instead of B, because it also provides feature "foo" like B does, but how to find this solution?

Automatically installing another module because it provides a certain feature seems over the top. In your case I would just go with what the user had done, i.e. tried to add A. So, ask:

Add A and C and remove B? [Yes] [No]

Obviously, I botched my exemple. My intention was to add the A requires the feature "foo" provided by B.

I can't remember who used to say this all the time---maybe it was you, JMarc---but one of the rules I learned early on here was: Don't try to outsmart the user. So my worry was along these lines: Sometimes there might be different ways to proceed, but we are going to have to choose one, but on what ground? Better to let the user figure this out.

One thing we might do, though, is provide a bit more information about why certain modules can't be installed. At the moment, the Add button gets disabled, and there is information in the description of what it excludes and requires. But maybe it would help to add to the tooltip, say: "Cannot be added because it conflicts with..." or "...because it depends upon module X...".

Riki


--
lyx-devel mailing list
lyx-devel@lists.lyx.org
http://lists.lyx.org/mailman/listinfo/lyx-devel

Reply via email to