rhythmic-morning-87313
10/11/2023, 1:28 PM> pants dependencies ::
22:25:20.72 [ERROR] 1 Exception encountered:
Engine traceback:
in `dependencies` goal
DependencyRuleActionDeniedError: src/ai/backend/kernel:reqs#async-timeout has 1 dependency violation:
* src/ai/backend/kernel/BUILD[!*] -> : DENY
python_requirements src/ai/backend/kernel:reqs#async-timeout -> _lockfiles //python-kernel.lock:_python-kernel_lockfile
I'm not sure how to "allow" this dependency. Tried reqs#*
, :reqs#*
, /reqs#*
, but didn't work, whereas src/ai/backend/kernel
directory has its own resolve with its own python_requirements(name="reqs", ...)
target.rhythmic-morning-87313
10/11/2023, 1:30 PM//python-kernel.lock
in the visibility rule makes it go awayrhythmic-morning-87313
10/11/2023, 1:30 PMcurved-television-6568
10/11/2023, 3:11 PM_lockfiles
synthetic target) from requirement targets to the generated lockfile. This was done so that if you update the lockfile, your source targets using those requirements will be invalidated if the lockfile changes even if you didn’t change anything in the requirements.txt file directly. (i.e. due to changes in any of the locked transitive dependencies.)
Does this explain it properly in your experience as well?rhythmic-morning-87313
10/11/2023, 4:36 PM//reqs#*
and //python.lock
are already implicitly included via the "default" dependency rule from the root BUILD
, while //src/ai/backend/kernel/reqs#*
and //python-kernel.lock
needs to be explicitly specified. Thanks!rhythmic-morning-87313
10/11/2023, 5:21 PM//python-kernel.lock
is in the root so the default-implicit *
dependency allowance inside the src/ai/backend/kernel
directory did not cover itcurved-television-6568
10/11/2023, 5:41 PM