{"record":{"id":"82384f1419edbe80","repo":"FuelLabs/sway","slug":"err-82384f","errorCode":null,"errorMessage":"{err}","messagePattern":"\\{err\\}","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"forc-plugins/forc-migrate/src/cli/shared.rs","lineNumber":71,"sourceCode":"        if let Some(path) = &self.path {\n            std::result::Result::Ok(PathBuf::from(path))\n        } else {\n            std::env::current_dir()\n        }\n    }\n\n    /// Returns the cumulative [ExperimentalFeatures], from the package manifest\n    /// file and the CLI experimental flag.\n    pub(crate) fn experimental_features(&self) -> Result<ExperimentalFeatures> {\n        let manifest = ManifestFile::from_dir(self.manifest_dir()?)?;\n        let pkg_manifest = get_pkg_manifest_file(&manifest)?;\n\n        Ok(ExperimentalFeatures::new(\n            &pkg_manifest.project.experimental,\n            &self.experimental.experimental,\n            &self.experimental.no_experimental,\n        )\n        .map_err(|err| anyhow::anyhow!(\"{err}\"))?)\n    }\n}\n\n// Clippy issue. It erroneously assumes that `vec!`s in `instructive_error` calls are not needed.\n#[allow(clippy::useless_vec)]\nfn get_pkg_manifest_file(manifest: &ManifestFile) -> Result<&PackageManifestFile> {\n    match manifest {\n        ManifestFile::Package(pkg_manifest) => Ok(pkg_manifest),\n        ManifestFile::Workspace(_) => Err(anyhow::anyhow!(instructive_error(\n            \"`forc migrate` does not support migrating workspaces.\",\n            &vec![\n                &format!(\"\\\"{}\\\" is a workspace.\", manifest.dir().to_string_lossy()),\n                \"Please migrate each workspace member individually.\",\n            ]\n        ))),\n    }\n}\n","sourceCodeStart":53,"sourceCodeEnd":89,"githubUrl":"https://github.com/FuelLabs/sway/blob/47e5e902faa42baf652dd6a0c88cd23390c1a614/forc-plugins/forc-migrate/src/cli/shared.rs#L53-L89","documentation":"Error \"{err}\" thrown in FuelLabs/sway.","triggerScenarios":"Thrown at forc-plugins/forc-migrate/src/cli/shared.rs:71 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"47e5e902faa42baf652dd6a0c88cd23390c1a614","analyzedAt":"2026-08-16T07:57:45.555Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}