1{ 2 {%- for id, path in context.workspace_members %} 3 {%- set workspace_member = context.crates | get(key=id) %} 4 "{{ path }}": { 5 {%- if deps_type in ["normal"] %} 6 {%- set_global deps_set = workspace_member.common_attrs | get(key="deps", default=default_select_list) %} 7 {%- elif deps_type in ["normal-dev"] %} 8 {%- set_global deps_set = workspace_member.common_attrs | get(key="deps_dev", default=default_select_list) %} 9 {%- elif deps_type in ["proc-macro"] %} 10 {%- set_global deps_set = workspace_member.common_attrs | get(key="proc_macro_deps", default=default_select_list) %} 11 {%- elif deps_type in ["proc-macro-dev"] %} 12 {%- set_global deps_set = workspace_member.common_attrs | get(key="proc_macro_deps_dev", default=default_select_list) %} 13 {%- elif deps_type in ["build"] %} 14 {%- if workspace_member | get(key="build_script_attrs", default=Null) %} 15 {%- set_global deps_set = workspace_member.build_script_attrs | get(key="deps", default=default_select_list) %} 16 {%- else %} 17 {%- set_global deps_set = default_select_list %} 18 {%- endif %} 19 {%- elif deps_type in ["build-proc-macro"] %} 20 {%- if workspace_member | get(key="build_script_attrs", default=Null) %} 21 {%- set_global deps_set = workspace_member.build_script_attrs | get(key="proc_macro_deps", default=default_select_list) %} 22 {%- else %} 23 {%- set_global deps_set = default_select_list %} 24 {%- endif %} 25 {%- else %} 26 {%- endif %} 27 {%- if deps_set.common | length %} 28 _COMMON_CONDITION: { 29 {%- for dep in deps_set.common %} 30 {%- if dep.id in context.workspace_members %}{% continue %}}{% endif %}{# Workspace member repositories are not defined, skip adding their labels here #} 31 {%- set crate = context.crates | get(key=dep.id) %} 32 {%- if dep | get(key="alias", default=Null) %} 33 "{{ crate_label(name = crate.name, version = crate.version, target = crate.name) }}": "{{ dep.alias }}", 34 {%- endif %} 35 {%- endfor %} 36 }, 37 {%- endif %} 38 {%- if deps_set.selects | length %} 39 {%- for condition, deps in deps_set.selects %} 40 "{{ condition | addslashes }}": { 41 {%- for dep in deps %} 42 {%- if dep.id in context.workspace_members %}{% continue %}}{% endif %}{# Workspace member repositories are not defined, skip adding their labels here #} 43 {%- if dep | get(key="alias", default=Null) %} 44 {%- set crate = context.crates | get(key=dep.id) %} 45 "{{ crate_label(name = crate.name, version = crate.version, target = crate.name) }}": "{{ dep.alias }}", 46 {%- endif %} 47 {%- endfor %} 48 }, 49 {%- endfor %} 50 {%- endif %} 51 }, 52 {%- endfor %} 53} 54