I had the issue that the candid was no longer available on icscan.io and the Candid UI.
I solved it by adding this to my canister code (taken from here).
/// This makes this Candid service self-describing, so that for example Candid UI, but also other
/// tools, can seamlessly integrate with it. The concrete interface (method name etc.) is
/// provisional, but works.
#[query]
fn __get_candid_interface_tmp_hack() -> String {
include_str!("<my_canister_name>.did").to_string()
}
I had the understanding the export_candid!() from the guide covered this. Is that not the case?
Yes, I have ic_cdk with v0.11.0 but I still needed to add the __get_candid_interface_tmp_hack() for candid UI and icscan to be able to extract the candid.
I guess this shouldnât be the case and adding at ic_cdk::export_candid!(); to my code should cover that normally?
Because you donât necessary need dfx to build canisters I would say.
That said, I understand that the DX will improve over time, and this was a good initial step and it will ultimatelly be integrated in dfx as well. Again if I understand correctly.