playdate icon indicating copy to clipboard operation
playdate copied to clipboard

list deps in the plan

Open github-actions[bot] opened this issue 9 months ago • 0 comments

list deps in the plan https://api.github.com/boozook/playdate/blob/44ba9bc18e094bd1efc0428025f6cd528c8bdf8b/cargo/src/assets/mod.rs#L64

Source of this issue

			layout.clean()?;
		}

		let target_pid = package.package_id();
		let has_dev = targets.iter()
		                     .any(|t| t.is_example() || t.is_test() || t.is_bench());


		log::debug!("Inspecting dependencies tree for {}", package.package_id());
		let packages = deps_tree_metadata(package, &bcx, config)?;


		// TODO: list deps in the plan

		for (package, metadata) in packages {
			let locked = layout.lock_mut(config.workspace.config())?;
			let dev = has_dev && package.package_id() == target_pid;
			let err_msg = |err| format!("{err}, caused when planning assets for {}.", package.package_id());

			match plan::plan_for(config, package, &metadata, &env, &locked, dev) {
				// nothing to pack:
				Ok(plan) if plan.is_empty() => {
					config.log()
					      .verbose(|mut log| log.status("Skip", format!("{} without plan", package.package_id())))
					// TODO: add clean assets task for `package`/`kind`
					// Also remove old build-plan.
					// Here and below for error case.
				},

				// report and continue:
				Err(err) if config.compile_options.build_config.keep_going => {
					let msg = format!("{} Continuing because `keep-going` is set.", err_msg(&err));
					config.log().error(msg)
				},

				// abort:
				Err(err) => {
					config.log().error(err_msg(&err));
					return Err(err);
				},

				// add plan to pack:
				Ok(plan) => {
					// TODO: Check main/dev is empty and add clean assets task for `package`/`kind`
					// Also remove old build-plan.

					options.insert(package, metadata);
					plans.insert(package, plan);
				},
			}
		}

		// report if needed:
		if config.compile_options.build_config.emit_json() || config.compile_options.build_config.build_plan {
			for (package, plan) in plans.iter() {
				for (plan, kind) in plan.main
				                        .as_ref()
				                        .into_iter()
				                        .map(|plan| (plan, AssetKind::Package))
				                        .chain(plan.dev.as_ref().into_iter().map(|plan| (plan, AssetKind::Dev)))
				{
					let message = plan.printable_serializable(&package, kind);
					config.workspace.config().shell().print_json(&message)?;
				}
			}
		} else {
			config.workspace

github-actions[bot] avatar Sep 24 '23 12:09 github-actions[bot]