无法将 SystemTime 转换为 Prost 0.10/Protobuf 时间戳类型
Can't Convert SystemTime to Prost 0.10/Protobuf Timestamp Type
有人能告诉我 tonic 和 prost 中的类型发生了什么事吗?就在一两个月前,我的团队有一个工作构建,它使用了一个包含时间戳的 protobuf 定义。我们正在使用众所周知的类型用 tonic_build 编译它们。类型从 prost 0.7 移动到 0.10 时发生了一些变化,现在我收到此错误。
timestamp: Some(timestamp.into()),
^^^^ the trait `From<SystemTime>` is not implemented for `protobuf::Timestamp`
所以我用了几行代码将类型转换为我认为来自 protobuf 板条箱的正确类型,然后得到了这个。
timestamp: Some(timestamp.into()),
^^^^ the trait `From<protobuf::well_known_types::Timestamp>` is not implemented for `protobuf::Timestamp`
我尝试从 protobuf crate 导入 Timestamp,但根目录中不存在该类型,它显然与 protobuf::well_known_types::Timestamp
不同,我找不到该类型来自哪个 crate 或版本.
最后,如果我允许 tonic_build 使用 prost_types,我会收到此错误。
timestamp: Some(timestamp.into()),
^^^^ the trait `From<protobuf::well_known_types::Timestamp>` is not implemented for `prost_types::Timestamp`
我可以导入那个类型,但是它的文档很混乱,所以我还没有弄清楚如何将原始的 SystemTime 转换成 prost_type::Timestamp。
简而言之,我一直在寻找,但找不到正确的时间戳类型。我在某处读到,拥有这些板条箱的正确版本以便它们正确排列很重要。谁能帮我弄清楚如何找到正确的类型和板条箱版本?
非常感谢。
转换功能已移至 prost-types
crate。
有关参考,请参阅 https://docs.rs/prost-types/0.10.1/prost_types/struct.Timestamp.html#impl-From%3CSystemTime%3E and https://github.com/tokio-rs/prost/tree/master/prost-types
timestamp: Some(prost_types::Timestamp::from(timestamp))
有人能告诉我 tonic 和 prost 中的类型发生了什么事吗?就在一两个月前,我的团队有一个工作构建,它使用了一个包含时间戳的 protobuf 定义。我们正在使用众所周知的类型用 tonic_build 编译它们。类型从 prost 0.7 移动到 0.10 时发生了一些变化,现在我收到此错误。
timestamp: Some(timestamp.into()),
^^^^ the trait `From<SystemTime>` is not implemented for `protobuf::Timestamp`
所以我用了几行代码将类型转换为我认为来自 protobuf 板条箱的正确类型,然后得到了这个。
timestamp: Some(timestamp.into()),
^^^^ the trait `From<protobuf::well_known_types::Timestamp>` is not implemented for `protobuf::Timestamp`
我尝试从 protobuf crate 导入 Timestamp,但根目录中不存在该类型,它显然与 protobuf::well_known_types::Timestamp
不同,我找不到该类型来自哪个 crate 或版本.
最后,如果我允许 tonic_build 使用 prost_types,我会收到此错误。
timestamp: Some(timestamp.into()),
^^^^ the trait `From<protobuf::well_known_types::Timestamp>` is not implemented for `prost_types::Timestamp`
我可以导入那个类型,但是它的文档很混乱,所以我还没有弄清楚如何将原始的 SystemTime 转换成 prost_type::Timestamp。
简而言之,我一直在寻找,但找不到正确的时间戳类型。我在某处读到,拥有这些板条箱的正确版本以便它们正确排列很重要。谁能帮我弄清楚如何找到正确的类型和板条箱版本?
非常感谢。
转换功能已移至 prost-types
crate。
有关参考,请参阅 https://docs.rs/prost-types/0.10.1/prost_types/struct.Timestamp.html#impl-From%3CSystemTime%3E and https://github.com/tokio-rs/prost/tree/master/prost-types
timestamp: Some(prost_types::Timestamp::from(timestamp))