ProxymanApp / Proxyman

Modern. Native. Delightful Web Debugging Proxy for macOS, iOS, and Android ⚡️
https://proxyman.io
5.71k stars 189 forks source link

Protobuf .desc Scheme file fails to load after every app restart #2169

Open nicojerome opened 1 month ago

nicojerome commented 1 month ago

Description

Protobuf Scheme .desc file throws errors after every app restart

Steps to Reproduce

  1. Tools > Protobuf > Protobuf Schema > Add .desc file. Protobuf Console Log showns no errrors
  2. Scheme gets loaded without errors, Protobuf messages are parsed correctly
  3. Close Proxyman app and restart it again
  4. Protobuf messages are not parsed anymore. Tools > Protobuf > Protobuf Schema > Previous .desc file is still there, but Protobuf Console Log shows all these errors:

[Error]: "google.protobuf.Timestamp.seconds" is already defined in file "timestamp.proto". ❌ [Error]: "google.protobuf.Timestamp.nanos" is already defined in file "timestamp.proto". ❌ [Error]: "google.protobuf.Timestamp" is already defined in file "timestamp.proto". ❌ [Error]: "google.protobuf.Duration.seconds" is already defined in file "duration.proto". ❌ [Error]: "google.protobuf.Duration.nanos" is already defined in file "duration.proto". ❌ [Error]: "google.protobuf.Duration" is already defined in file "duration.proto". ❌ [Error]: "google.protobuf.DoubleValue.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.DoubleValue" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.FloatValue.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.FloatValue" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.Int64Value.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.Int64Value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.UInt64Value.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.UInt64Value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.Int32Value.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.Int32Value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.UInt32Value.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.UInt32Value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.BoolValue.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.BoolValue" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.StringValue.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.StringValue" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.BytesValue.value" is already defined in file "wrappers.proto". ❌ [Error]: "google.protobuf.BytesValue" is already defined in file "wrappers.proto". ❌ [Error]: A file with this name is already in the pool.

Protobuf messages are also not parsed anymore. Solution is to remove the .desc file and add it again. This needs to be done after every app restart.

Environment

NghiaTranUIT commented 1 month ago

thanks, it's a bug. We will fix it and send you a Beta build asap 👍