ancient-vegetable-10556
12/07/2022, 5:52 PMexperimental_shell_command
, and realising that there’s two purposes for dependencies here — there’s the runtime dependencies of your shell command: these rarely need to be consumed by consumers of your command’s `output`s, since they’re consumed and (potentially) transformed by the command into the outputs. The dependencies that may make sense as being included in a transitive walk should only be the depednencies of the output itself, and should therefore just be included as outputs.
I am leaning towards making it so that dependencies of an experimental_shell_command
are not included in a transitive dependency resolution, and that any dependencies of an experimental_shell_command
that need to be consumed by subsequent steps need to be specified explicitly as an output
. Does that make sense? (@curved-television-6568, @bitter-ability-32190)bitter-ability-32190
12/07/2022, 5:54 PMancient-vegetable-10556
12/07/2022, 5:55 PMfast-nail-55400
12/07/2022, 5:55 PMancient-vegetable-10556
12/07/2022, 5:55 PMfast-nail-55400
12/07/2022, 5:56 PMancient-vegetable-10556
12/07/2022, 5:56 PMexperimental_shell_command
specifically, the notion of transitive dependencies doesn’t really make any sensefast-nail-55400
12/07/2022, 5:56 PMancient-vegetable-10556
12/07/2022, 5:58 PMalmost always is dangerous to me hereIs there a specific concern that wouldn’t be solved by explicitly including exportable dependencies as an output?
bitter-ability-32190
12/07/2022, 6:04 PMfast-nail-55400
12/07/2022, 6:06 PMancient-vegetable-10556
12/07/2022, 6:07 PMhttpx
to make the HTTP request.
If you want to consume the bindings as Python sources, the most Pants-like solution would be to export httpx
as a dependency of the outputs. httpx
, however, is not required by the bindings generator, so it doesn’t need to be requested when assembling the sandbox.
Likewise, the bindings generator is not relevant to subsequent tasks.curved-television-6568
12/07/2022, 6:15 PMancient-vegetable-10556
12/07/2022, 6:16 PMbitter-ability-32190
12/07/2022, 6:45 PMancient-vegetable-10556
12/07/2022, 7:10 PMruntime_dependencies
field, and a field to decide how to treat dependencies
bitter-ability-32190
12/07/2022, 7:11 PMspecial_cased_dependencies
ancient-vegetable-10556
12/07/2022, 7:12 PMbitter-ability-32190
12/07/2022, 7:14 PMancient-vegetable-10556
12/07/2022, 7:14 PMexperimental
feature is reasonably safebitter-ability-32190
12/07/2022, 7:47 PMancient-vegetable-10556
12/07/2022, 7:47 PMbitter-ability-32190
12/07/2022, 7:47 PMancient-vegetable-10556
12/07/2022, 8:05 PMbitter-ability-32190
12/07/2022, 8:07 PMancient-vegetable-10556
12/07/2022, 8:07 PM