It looks like we didn't implement uuid in rust yet, so with swift already
fixed, Java/kotlin is the last one to fix.

On Thu, Aug 10, 2023 at 8:43 AM Yuxuan Wang <yuxuan.w...@reddit.com> wrote:

> Actually, only Java is remaining non-compliance while all other
> implementations are 16:
>
> === 8< ===
> fishy@perch:~/work/thrift/lib$ git grep -w 17 | grep -i uuid
> java/src/main/java/org/apache/thrift/protocol/TType.java:  public static
> final byte UUID = 17;
> java/src/test/java/org/apache/thrift/protocol/ProtocolTestBase.java:
>  new StructFieldTestCase(TType.UUID, (short) 17) {
> fishy@perch:~/work/thrift/lib$ git grep -w 16 | grep -i uuid
> delphi/src/Thrift.Protocol.Compact.pas:      Types.UUID            // Uuid
>    = 16
> delphi/src/Thrift.Protocol.Compact.pas:  ASSERT( SizeOf(uuid) = 16);
> delphi/src/Thrift.Protocol.pas:    Uuid = 16
> delphi/src/Thrift.Protocol.pas:  ASSERT( SizeOf(uuid) = 16);
> go/thrift/compact_protocol.go:// Write a Tuuid to the wire as 16 bytes.
> go/thrift/compact_protocol.go:// Read fixed 16 bytes as UUID.
> go/thrift/type.go:      UUID   = 16
> go/thrift/uuid.go:type Tuuid [16]byte
> go/thrift/uuid.go:              14, 16,
> haxe/src/org/apache/thrift/protocol/TBinaryProtocol.hx:
> case TType.UUID: return 16;  // uuid bytes
> haxe/src/org/apache/thrift/protocol/TCompactProtocol.hx:
>      case TType.UUID: return 16;  // uuid bytes
> haxe/src/org/apache/thrift/protocol/TType.hx:   public static inline var
> UUID : Int   = 16;
> netstd/Thrift/Protocol/Entities/TType.cs:        Uuid = 16
> netstd/Thrift/Protocol/TBinaryProtocol.cs:
>  Transport.CheckReadBytesAvailable(16);  // = sizeof(uuid)
> netstd/Thrift/Protocol/TBinaryProtocol.cs:                case TType.Uuid:
> return 16;  // uuid bytes
> netstd/Thrift/Protocol/TCompactProtocol.cs:
>  Transport.CheckReadBytesAvailable(16);  // = sizeof(uuid)
> netstd/Thrift/Protocol/TCompactProtocol.cs:                case
> TType.Uuid: return 16;  // uuid bytes
> swift/Sources/TProtocol.swift:  case uuid     = 16
> === >8 ===
>
> I don't see rust showing up in either 16 or 17 though. Anyone familiar
> with rust code can help check whether it's compliant?
>
> On Thu, Aug 10, 2023 at 8:15 AM Yuxuan Wang <yuxuan.w...@reddit.com>
> wrote:
>
>> Sorry I'm changing my vote to -1.
>>
>> I just realized that we still have
>> https://issues.apache.org/jira/browse/THRIFT-5653 unfixed. Basically we
>> shipped 0.18.0 and 0.18.1 with java, kotlin, rust, and swift with the
>> non-compliant UUID implementation. That probably didn't cause much problem
>> because the usage/adoption is not high, but one of the reason the other
>> Apache project cited when they say they need to add back JDK8 support is
>> that they want to use the UUID feature but the 0.18.* was shipped with
>> minimal JDK version of 11. So I would assume that if we ship the same bug
>> with 0.19.0 with JDK8 support, they would adopt it, with the non-compliance
>> implementation, and the situation will be more dire (the serialized data
>> will be broken once they upgraded to a fixed version of thrift, or when
>> they read from a compliance language implementation).
>>
>> On Tue, Aug 8, 2023 at 10:36 AM Yuxuan Wang <yuxuan.w...@reddit.com>
>> wrote:
>>
>>> lol of course go 1.21 is finally out of RC one day after I said I won't
>>> wait for it any longer.
>>>
>>> regarding thrift 0.19, I'm fine either way ("release thrift 0.19 with
>>> support to go 1.19 and go 1.20" or "do another RC to change supported go
>>> version to go 1.20 and go 1.21").
>>>
>>> On Mon, Aug 7, 2023 at 10:19 AM Yuxuan Wang <yuxuan.w...@reddit.com>
>>> wrote:
>>>
>>>> +1.
>>>>
>>>> We tested the go compiler/lib but didn't finish the python test in time
>>>> but don't want to hold this forever.
>>>>
>>>> Also there's a new RC for go1.21 so I don't want that to hold this
>>>> release forever as well.
>>>>
>>>> Sorry for the late vote.
>>>>
>>>> On Tue, Jul 18, 2023 at 4:14 PM Yuxuan Wang <yuxuan.w...@reddit.com>
>>>> wrote:
>>>>
>>>>> Thanks for the work, Jens!
>>>>>
>>>>> We already tested the RC version on a go service in our environment.
>>>>> We also have another team to try to test the RC version on a python
>>>>> service, but that's more challenging (especially for an unreleased version
>>>>> that there's no pre-built python packages) so it might take a few more 
>>>>> days.
>>>>>
>>>>> Another thing that's not really a release blocker but I would prefer
>>>>> to wait for a little bit is https://github.com/apache/thrift/pull/2821,
>>>>> which depends on the release of Go 1.21. There was go 1.21-rc2 from June 
>>>>> 21
>>>>> and -rc3 from July 14, so I would expect the actual release will happen
>>>>> very soon, and it would be great to wait a bit and align our releases
>>>>> (since we both have similar release cadence of twice a year).
>>>>>
>>>>> On Sat, Jul 15, 2023 at 3:20 AM Jens Geyer <je...@apache.org> wrote:
>>>>>
>>>>>> All,
>>>>>>
>>>>>> I propose that we accept the following release candidate as the
>>>>>> official
>>>>>> Apache Thrift 0.19.0 release:
>>>>>>
>>>>>>
>>>>>> https://protect.checkpoint.com/v2/___https://dist.apache.org/repos/dist/dev/thrift/0.19.0-rc0/thrift-0.19.0.tar.gz___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6NjoyZTU4OmQ0Yzk5YTQzZTViOTk2Njc5YjA3NzcwZTA2ZmNhZjFjZjM0ODdjMmM3MWJhYWI0ZjA1ZjI0ZjAwZWJhNTBkNzE6cDpU
>>>>>>
>>>>>> The release candidate was created from the release/0.19.0 branch and
>>>>>> can
>>>>>> be cloned using:
>>>>>>
>>>>>> git clone -b release/0.19.0
>>>>>> https://protect.checkpoint.com/v2/___https://github.com/apache/thrift.git___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6NjowZDM0OjI3YmY2NzVjZjhjNjhjMTVjNTllYjQ4NzNlYmU4MDM4NzkxOTBjZDMxZTFkMDUwNTc1YjM5MmIzYzJjMDQzMDI6cDpU
>>>>>>
>>>>>> The release candidates GPG signature can be found at:
>>>>>>
>>>>>> https://protect.checkpoint.com/v2/___https://dist.apache.org/repos/dist/dev/thrift/0.19.0-rc0/thrift-0.19.0.tar.gz.asc___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6NjplZGMzOmI0YWM4OGI1MGU0MTFkNTJkZjlkMGVlYzk5ZmNlNGRiN2RmODMyZmIwNzcxMWI2YjFhMzIwMjcwOWI1ZjcwNjY6cDpU
>>>>>>
>>>>>> The release candidates checksums are:
>>>>>> md5: d1f7f19a23e1830f83052c050156cebc
>>>>>> sha1: f06f3a281bb41eed789d0e88d8a1b35405c664a8
>>>>>> sha256:
>>>>>> c5a6ac0aca3bf1fd8a2f6afffc24bdf247cd8188480222c89f14a7900f7d6a51
>>>>>>
>>>>>>
>>>>>> A prebuilt statically-linked Windows compiler is available at:
>>>>>>
>>>>>> https://protect.checkpoint.com/v2/___https://dist.apache.org/repos/dist/dev/thrift/0.19.0-rc0/thrift-0.19.0.exe___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6Njo5NDIzOjUxNTRlM2IxMDlmY2VjOWY5OWM4NjVjNzQzNmM2NTE1NTJmNzdmMmRlMGMyOTNlOGEzOTQ1MTk2MjJhZDFlMWI6cDpU
>>>>>>
>>>>>> Prebuilt statically-linked Windows compiler GPG signature:
>>>>>>
>>>>>> https://protect.checkpoint.com/v2/___https://dist.apache.org/repos/dist/dev/thrift/0.19.0-rc0/thrift-0.19.0.exe.asc___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6Njo5YWQ3OjFhNjNmZGZjNmJiM2YxODY2ODAxNmY4NGFjYWYzYjdkNmNjMWNjNTA5OWJhYzVmZjdhZWExYTI1ZDQ4ZDExMzA6cDpU
>>>>>>
>>>>>> Prebuilt statically-linked Windows compiler checksums are:
>>>>>> md5: cf4a7d003893c4503fc7105aef0259ca
>>>>>> sha1: d0e67bb8c89ee557614fd9e1e0f3086ff67164c9
>>>>>> sha256:
>>>>>> 1f1ce1658df1226a35dc6a6318da6d534328e24f3c99da4dee847eb57654401d
>>>>>>
>>>>>>
>>>>>> The CHANGES list for this release is available at:
>>>>>>
>>>>>> https://protect.checkpoint.com/v2/___https://github.com/apache/thrift/blob/0.19.0/CHANGES.md___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6NjoyZjVkOjkxMDkwNjY1YjU4MDQ1NWRjNmFhM2ZiM2Q1MGY1NzhlOGFhZDU3MDEwY2Q1ODAwMzNlYzMwZjIwYmI3ZTRmOWI6cDpU
>>>>>>
>>>>>>
>>>>>> Please download, verify sig/sum, install and test the libraries and
>>>>>> languages of your choice.
>>>>>>
>>>>>> This vote will close in 109 hours on 2023-07-20 00:00 UTC
>>>>>>
>>>>>> https://protect.checkpoint.com/v2/___https://www.timeanddate.com/countdown/generic?iso=20230720T0000&p0=1440___.YzJ1OnJlZGRpdDpjOmc6ZWI5MWFkNzI2OWQxMWVlMTZiNWYzODUyMThmYjk4YWQ6NjpkOGMzOjNiOTY1ZTZkNjcwNzVlOGU0OTc2N2EyOTcxNzYwNDI0ZDUwN2E5M2M2ODEwMzFmZTM2NWNiNGZmNjMwNjY5NDg6cDpU
>>>>>>
>>>>>> [ ] +1 Release this as Apache Thrift 0.19.0
>>>>>> [ ] +0
>>>>>> [ ] -1 Do not release this as Apache Thrift 0.19.0 because...
>>>>>>
>>>>>>
>>>>>> Have fun,
>>>>>> JensG
>>>>>>
>>>>>

Reply via email to