google/openrtb

When enum name is stripped and label is PascalCased (Iab11), this value label conflicts with IAB1_1

Closed this issue · 7 comments

mvn clean test

[INFO] Executing tasks

main:
[exec] openrtb.proto:2036:3: When enum name is stripped and label is PascalCased (Iab11), this value label conflicts with IAB1_1
[exec] openrtb.proto:2042:3: When enum name is stripped and label is PascalCased (Iab12), this value label conflicts with IAB1_2
[exec] openrtb.proto:2046:3: When enum name is stripped and label is PascalCased (Iab13), this value label conflicts with IAB1_3
[exec] openrtb.proto:2059:3: When enum name is stripped and label is PascalCased (Iab14), this value label conflicts with IAB1_4
[exec] openrtb.proto:2068:3: When enum name is stripped and label is PascalCased (Iab15), this value label conflicts with IAB1_5
[exec] openrtb.proto:2079:3: When enum name is stripped and label is PascalCased (Iab16), this value label conflicts with IAB1_6
[exec] openrtb.proto:2087:3: When enum name is stripped and label is PascalCased (Iab17), this value label conflicts with IAB1_7
[exec] openrtb.proto:2204:3: When enum name is stripped and label is PascalCased (Iab21), this value label conflicts with IAB2_1
[exec] openrtb.proto:2205:3: When enum name is stripped and label is PascalCased (Iab211), this value label conflicts with IAB2_11
[exec] openrtb.proto:2206:3: When enum name is stripped and label is PascalCased (Iab212), this value label conflicts with IAB2_12
[exec] openrtb.proto:2207:3: When enum name is stripped and label is PascalCased (Iab213), this value label conflicts with IAB2_13
[exec] openrtb.proto:2208:3: When enum name is stripped and label is PascalCased (Iab22), this value label conflicts with IAB2_2
[exec] openrtb.proto:2209:3: When enum name is stripped and label is PascalCased (Iab221), this value label conflicts with IAB2_21
[exec] openrtb.proto:2210:3: When enum name is stripped and label is PascalCased (Iab222), this value label conflicts with IAB2_22
[exec] openrtb.proto:2211:3: When enum name is stripped and label is PascalCased (Iab223), this value label conflicts with IAB2_23
[exec] openrtb.proto:2213:3: When enum name is stripped and label is PascalCased (Iab23), this value label conflicts with IAB2_3
[exec] openrtb.proto:2224:3: When enum name is stripped and label is PascalCased (Iab24), this value label conflicts with IAB2_4
[exec] openrtb.proto:2225:3: When enum name is stripped and label is PascalCased (Iab25), this value label conflicts with IAB2_5
[exec] openrtb.proto:2233:3: When enum name is stripped and label is PascalCased (Iab26), this value label conflicts with IAB2_6

We are aware of this issue, these rules changed in proto3... and there's no way to fix it without a breaking change in the enum names. See discussion at protocolbuffers/protobuf#2179

This behavior was improved in protoc 3.2.0 so all you get is a noisy warning, at least for most languages.

@opinali I wouldn't complain really if it was merely a noisy warning:

[INFO] Google OpenRTB Libraries ........................... SUCCESS [ 0.816 s]
[INFO] Google OpenRTB Core ................................ FAILURE [ 1.365 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.376 s
[INFO] Finished at: 2017-03-01T17:01:46+02:00
[INFO] Final Memory: 11M/155M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.8:run (compile-protoc) on project openrtb-core: An Ant BuildException has occured: exec returned: 1
[ERROR] around Ant part ...... @ 11:48 in /Users/macchiatow/Development/openrtb/openrtb-core/target/antrun/build-main.xml

Which release of protoc are you using? This really requires the very latest, 3.2.0. Anything below that will fail to compile, they only fixed this to be a warning in 3.2.0.

@opinali oh I see. I believed protoc comes with mvn dependencies. Yes my local protoc was of version 3.1.0.... thanks!

I can't understand why it's closed? protoc now is 3.5. Build still failed. One year.

How is that failing, for which language are you building?

Trying to compile on JS and still getting the same error. v3.5