Preston Guillory

Results 13 comments of Preston Guillory

It definitely should generate something for constants -- only reason it doesn't is that we hadn't gotten to it. Naming it is tricky. Using the filename as you suggested, foo.thrift...

We skipped it when implementing binary protocol because it's unnecessary for clients/servers using framed transport and it would have complicated the deserialization logic quite a bit. Or at least I...

Really good points @dantswain, thanks for bringing these up. The pass-through case has got us in the past, should have considered that. I think the hybrid atom/integer approach is a...

So here's how I understand that the API will look, including @jparise's proposed rename of `name_to_value/1`/`value_to_name/1`. ```thrift enum UserStatus { ACTIVE = 1, INACTIVE = 2, } struct User {...

My expectations for the user experience of this change: 1. If you're just serializing/deserializing, i.e. the pass-through scenario, this will be transparent. 2. If you're branching on or constructing enum...

The framing is done by setting the `{:packet, 4}` option on the socket in Thrift.Binary.Framed.ProtocolHandler. It's built in to gen_tcp and conveniently does the right thing for this purpose. See...

Where would the manifest file reside, the project root? How would it handle manual compile.thrift invocations alongside automatic ones? Like would it append to the manifest? How do you clean...

> If the server receives a THeader call, it needs to return a THeader reply, otherwise some clients may break. Generally speaking clients will have a configured a transport/protocol and...

@dantswain No problem, I didn't wait long before putting up code but there's no rush.

Thrift.Service in this example is a namespace, right? As if there's a `whatever.thrift` like: ```thrift namespace elixir Thrift.Service enum MyEnum {} enum MyOtherEnum {} ``` We don't currently generate a...