hundreds-father-404
11/15/2019, 2:14 AMException: No installed @rules can compute TestResult for input Params((PyTest+PythonNativeCode+PythonSetup+PythonTestsAdaptor+SubprocessEnvironment)), but there were @rules that could compute it using:
E Params((OptionsBootstrapper+PythonNativeCode+PythonTestsAdaptor+SubprocessEnvironment))
This is for https://github.com/pantsbuild/pants/pull/8630/files#diff-c67a9cfea4000f6c874fc1011113d7d3. I’m confused why it would want an OptionsBootstrapper rather than Pytest + PythonSetup, as the run_python_test rule explicitly requests Pytest and PythonSetupaloof-angle-91616
11/15/2019, 5:12 AMOptionsBootstrapper, that's saying that OptionsBootstrapper is within the set of available Paramsaloof-angle-91616
11/15/2019, 5:12 AMaloof-angle-91616
11/15/2019, 5:12 AMaloof-angle-91616
11/15/2019, 5:12 AMOptionsBootstrapper is required for every optionable_rule(), i believealoof-angle-91616
11/15/2019, 5:13 AMhundreds-father-404
11/15/2019, 5:14 AMaloof-angle-91616
11/15/2019, 5:14 AMOptionsBootstrapper provided as well. i might also check out other tests of rules elsewhere in the repo to see what they do to test `optionable_rule()`saloof-angle-91616
11/15/2019, 5:15 AMOptionsBootstrapper is explicitly necessary (it's not in OptionableFactory.signature(), but i believe it ishundreds-father-404
11/15/2019, 5:28 AMaloof-angle-91616
11/15/2019, 5:38 AMtests/python/pants_test/engine/legacy/test_options_parsing.py? in particular options_bootstrap = OptionsBootstrapper.create(
args=tuple(args),
env=dict(env),
)aloof-angle-91616
11/15/2019, 5:39 AMhundreds-father-404
11/15/2019, 5:52 PMdef rules(): includes an optionable_rule in its entries, then it will require OptionsBootstrapper. The solution was to stop including `optionable_rule`s and mark subsystem dependencies as `RootRule`saloof-angle-91616
11/15/2019, 11:01 PMhundreds-father-404
11/15/2019, 11:02 PMwe wouldn’t want to just include the OptionsBootstrapper automaticallyNaively trying to do this today resulted in complaints that we had unrecognized options
aloof-angle-91616
11/15/2019, 11:03 PMaloof-angle-91616
11/15/2019, 11:03 PMaloof-angle-91616
11/15/2019, 11:03 PM