@@ -37,30 +37,36 @@ def _create_entrypoint_file(base_package, spec_files, bootstrap_files):
3737
3838def _spec_entrypoint_impl (ctx ):
3939 output = ctx .actions .declare_file ("%s.mjs" % ctx .attr .name )
40- spec_depsets = []
41- bootstrap_depsets = []
40+ spec_direct_deps = []
41+ spec_all_deps = []
42+ bootstrap_direct_deps = []
43+ bootstrap_all_deps = []
4244
4345 for dep in ctx .attr .deps :
4446 if JSModuleInfo in dep :
45- spec_depsets .append (dep [JSModuleInfo ].sources )
47+ spec_all_deps .append (dep [JSModuleInfo ].sources )
48+ spec_direct_deps .append (dep [JSModuleInfo ].direct_sources )
4649 else :
47- spec_depsets .append (dep [DefaultInfo ].files )
50+ spec_all_deps .append (dep [DefaultInfo ].files )
51+ spec_direct_deps .append (dep [DefaultInfo ].files )
4852
4953 for dep in ctx .attr .bootstrap :
5054 if JSModuleInfo in dep :
51- bootstrap_depsets .append (dep [JSModuleInfo ].sources )
55+ bootstrap_all_deps .append (dep [JSModuleInfo ].sources )
56+ bootstrap_direct_deps .append (dep [JSModuleInfo ].direct_sources )
5257 else :
53- bootstrap_depsets .append (dep [DefaultInfo ].files )
58+ bootstrap_all_deps .append (dep [DefaultInfo ].files )
59+ bootstrap_direct_deps .append (dep [DefaultInfo ].files )
5460
5561 # Note: `to_list()` is an expensive operation but we need to do this for every
5662 # dependency here in order to be able to filter out spec files from depsets.
57- all_spec_files = depset (transitive = spec_depsets ).to_list ()
58- spec_files = _filter_files (all_spec_files , ["spec" , "test" ])
63+ direct_spec_files = depset (transitive = spec_direct_deps ).to_list ()
64+ spec_files = _filter_files (direct_spec_files , ["spec" , "test" ])
5965
6066 # Note: `to_list()` is an expensive operation but we need to do this for every
6167 # dependency here in order to be able to filter out spec files from depsets.
62- all_bootstrap_files = depset (transitive = bootstrap_depsets ).to_list ()
63- bootstrap_files = _filter_files (all_bootstrap_files , ["init" ])
68+ direct_bootstrap_files = depset (transitive = bootstrap_direct_deps ).to_list ()
69+ bootstrap_files = _filter_files (direct_bootstrap_files , ["init" ])
6470
6571 ctx .actions .write (
6672 output = output ,
@@ -73,7 +79,7 @@ def _spec_entrypoint_impl(ctx):
7379 DefaultInfo (files = out_depset ),
7480 JSModuleInfo (
7581 direct_sources = out_depset ,
76- sources = depset (transitive = [out_depset ] + spec_depsets + bootstrap_depsets ),
82+ sources = depset (transitive = [out_depset ] + spec_all_deps + bootstrap_all_deps ),
7783 ),
7884 ]
7985
0 commit comments