> In the current libraries, all these classes pollute the global
> namespace. They should all be encapsulated under a Thrift module
I am 100% in favor of this.

> given better names (such as Thrift::Protocols::BinaryProtocol instead
> TBinaryProtocol).
This I'm not so sure about.  We could do this in C++, Java, and Python
too, but I don't think it is the right call.  The cost of the extra "T"
is tiny, and it makes it easier to do imports without bringing in names
like "Protocol" and "Transport".

> The 'thrift/thrift' library defines a bunch of classes
> (again in the global namespace) which should all be broken up into
> separate files and placed under the Thrift module
Sounds good.

> and renamed.
See above.

> The
> method names are not idiomatic to ruby - I'm seeing things like
> readStructEnd instead of read_struct_end and isOpen instead of open?.
I'm fine with changing these, but I am super biased against camelCase.
What do others think?

> I'm also seeing attempts to mimic Interfaces/virtual classes, which is
> just plain ugly (see TProtocol where every method returns nil).
As long as there is a nice way of documenting what methods are expected
to be implemented in the concrete subclasses.

>>> Is there a git repository somewhere?
>> There is an unofficial repo at <git://thrift-git.thruhere.net/thrift.git>.
>> A lot of non-committers have been using it to develop and share
>> experimental branches.  I can give you an account so you can push
>> branches if you send me your ssh public key.  If you prefer github, it
>> is mirrored at <http://github.com/dreiss/thrift/tree/master>, but I've
>> been encouraging developers to also push their changes to thruhere so
>> everything will be in one place.
> 
> How frequently is that mirror updated?
Every 5 minutes.

--David

Reply via email to