Open Bug 1529808 Opened 5 years ago Updated 2 years ago

[pyconfigure] imply_option automatic reason doesn't know about when

Categories

(Firefox Build System :: General, enhancement)

enhancement

Tracking

(Not tracked)

People

(Reporter: glandium, Unassigned)

References

(Blocks 1 open bug)

Details

This is something I noticed while working on bug 1529799, but won't fix there.

If you have something like:

imply_option('--with-foo', True, when='--with-bar')

The automatic reason this ends up with is imply_option at file:line instead of --with-bar.

With:

imply_option('--with-foo', depends(when='--with-bar')(lambda: True))

It asks for an explicit reason, when it could deduce --with-bar

The age of the code shows, as it was written before when was added :).

Severity: normal → enhancement

Something else related to reason that goes wrong:

The or reason.option branch can lead to displaying the opposite implied by for negative options.

e.g. something like

option('--without-foo', help='foo')
imply('--with-bar', depends('--with-foo')(lambda x: x))
option('--with-bar', help='bar')

can fail with an error like '--with-bar' implied by '--without-foo' when it's implied by '--with-foo' (which is the default).

Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.