Skip to content

Commit 66d598e

Browse files
committed
Update api.
1 parent 4ef7272 commit 66d598e

5 files changed

Lines changed: 9 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
#### 🧩 Plugins
66

77
- WASM API
8-
- Added `MoonContext.get_project_root` method.
8+
- Added `MoonContext.get_project_root` and `get_project_root_from_source` methods.
9+
- Added `ExtendProjectGraphInput.toolchain_config` field.
910
- Added `ExtendTaskCommandInput.toolchain_config` and `project` fields.
1011
- Added `ExtendTaskScriptInput.toolchain_config` and `project` fields.
1112
- Added `load_toolchain_config_by_id` host function.

crates/pdk-api/src/common.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ api_struct!(
1818
/// Map of project IDs to their source location,
1919
/// relative from the workspace root.
2020
pub project_sources: BTreeMap<String, String>,
21+
22+
/// Workspace toolchain configuration.
23+
pub toolchain_config: serde_json::Value,
2124
}
2225
);
2326

crates/pdk-api/src/macros.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ macro_rules! config_struct {
1212
#[macro_export]
1313
macro_rules! shared_config {
1414
($container:ident, $model:ident) => {
15-
#[derive(Debug, Default)]
15+
#[derive(Default)]
1616
pub struct $container {
1717
pub data: $model,
1818
pub dirty: Vec<String>,

crates/toolchain-plugin/src/toolchain_registry.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use moon_common::Id;
55
use moon_config::{ProjectConfig, ProjectToolchainEntry, ToolchainConfig, ToolchainPluginConfig};
66
use moon_pdk_api::Operation;
77
use moon_plugin::{
8-
PluginError, MoonHostData, PluginId, PluginRegistry, PluginType, serialize_config,
8+
MoonHostData, PluginError, PluginId, PluginRegistry, PluginType, serialize_config,
99
};
1010
use proto_core::inject_proto_manifest_config;
1111
use rustc_hash::FxHashMap;

crates/workspace/src/workspace_builder.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -852,13 +852,14 @@ impl<'app> WorkspaceBuilder<'app> {
852852
// From toolchains
853853
for output in context
854854
.toolchain_registry
855-
.extend_project_graph_all(|registry, _| ExtendProjectGraphInput {
855+
.extend_project_graph_all(|registry, toolchain| ExtendProjectGraphInput {
856856
context: registry.create_context(),
857857
project_sources: self
858858
.project_data
859859
.iter()
860860
.map(|(id, build_data)| (id.to_string(), build_data.source.to_string()))
861861
.collect(),
862+
toolchain_config: registry.create_config(&toolchain.id, context.toolchain_config),
862863
})
863864
.await?
864865
{

0 commit comments

Comments
 (0)