-
-
Notifications
You must be signed in to change notification settings - Fork 33.9k
Description
Feature or enhancement
Currently, resources are binary -- they are either enabled or disabled. But sometimes it is useful to enable them partially or to specify a parameter for it. For example, recently added test_xpickle (#75572) takes more than 2 minutes on fast machine for each available Python version, so it is disabled by default and requires the extra xpickle resource. It would be handy to be able to run it only for the specified Python version, e.g. -u xpickle=2.7 would run it with Python 2.7.
This feature can also be used in #65784.
This feature the big-memory tests can be implemented as yet one parametrised extra resource. E.g. -u bigmem=16G instead of -M 16G.
This feature somewhere intersects with #108828 which I plan to extend to support values too.
There is a question whether we should support comma in values. I.e. whether -u foo=bar,baz should be interpreted as one resource foo with value bar,baz or two resources foo and baz, the former with value bar. For now I choose the latter option, as slightly simpler to implement, but this can be reconsidered in future. It will be a breaking change, but this is an internal API.