This file contains a list of people who have made large contributions to the public version of Protocol Buffers. Original Protocol Buffers design and implementation: Sanjay Ghemawat <sanjay@google.com> Jeff Dean <jeff@google.com> Daniel Dulitz <daniel@google.com> Craig Silverstein Paul Haahr <haahr@google.com> Corey Anderson <corin@google.com> (and many others) Proto2 C++ and Java primary author: Kenton Varda <kenton@google.com> Proto2 Python primary authors: Will Robinson <robinson@google.com> Petar Petrov <petar@google.com> Java Nano primary authors: Brian Duff <bduff@google.com> Tom Chao <chaot@google.com> Max Cai <maxtroy@google.com> Ulas Kirazci <ulas@google.com> Large code contributions: Jason Hsueh <jasonh@google.com> Joseph Schorr <jschorr@google.com> Wenbo Zhu <wenboz@google.com> Large quantity of code reviews: Scott Bruce <sbruce@google.com> Frank Yellin Neal Norwitz <nnorwitz@google.com> Jeffrey Yasskin <jyasskin@google.com> Ambrose Feinstein <ambrose@google.com> Documentation: Lisa Carey <lcarey@google.com> Maven packaging: Gregory Kick <gak@google.com> Patch contributors: Kevin Ko <kevin.s.ko@gmail.com> * Small patch to handle trailing slashes in --proto_path flag. Johan Euphrosine <proppy@aminche.com> * Small patch to fix Python CallMethod(). Ulrich Kunitz <kune@deine-taler.de> * Small optimizations to Python serialization. Leandro Lucarella <llucax@gmail.com> * VI syntax highlighting tweaks. * Fix compiler to not make output executable. Dilip Joseph <dilip.antony.joseph@gmail.com> * Heuristic detection of sub-messages when printing unknown fields in text format. Brian Atkinson <nairb774@gmail.com> * Added @Override annotation to generated Java code where appropriate. Vincent Choinière <Choiniere.Vincent@hydro.qc.ca> * Tru64 support. Monty Taylor <monty.taylor@gmail.com> * Solaris 10 + Sun Studio fixes. Alek Storm <alek.storm@gmail.com> * Slicing support for repeated scalar fields for the Python API. Oleg Smolsky <oleg.smolsky@gmail.com> * MS Visual Studio error format option. * Detect unordered_map in stl_hash.m4. Brian Olson <brianolson@google.com> * gzip/zlib I/O support. Michael Poole <mdpoole@troilus.org> * Fixed warnings about generated constructors not explicitly initializing all fields (only present with certain compiler settings). * Added generation of field number constants. Wink Saville <wink@google.com> * Fixed initialization ordering problem in logging code. Will Pierce <willp@nuclei.com> * Small patch improving performance of in Python serialization. Alexandre Vassalotti <alexandre@peadrop.com> * Emacs mode for Protocol Buffers (editors/protobuf-mode.el). Scott Stafford <scott.stafford@gmail.com> * Added Swap(), SwapElements(), and RemoveLast() to Reflection interface. Alexander Melnikov <alm@sibmail.ru> * HPUX support. Oliver Jowett <oliver.jowett@gmail.com> * Detect whether zlib is new enough in configure script. * Fixes for Solaris 10 32/64-bit confusion. Evan Jones <evanj@mit.edu> * Optimize Java serialization code when writing a small message to a stream. * Optimize Java serialization of strings so that UTF-8 encoding happens only once per string per serialization call. * Clean up some Java warnings. * Fix bug with permanent callbacks that delete themselves when run. Michael Kucharski <m.kucharski@gmail.com> * Added CodedInputStream.getTotalBytesRead(). Kacper Kowalik <xarthisius.kk@gmail.com> * Fixed m4/acx_pthread.m4 problem for some Linux distributions. William Orr <will@worrbase.com> * Fixed detection of sched_yield on Solaris. * Added atomicops for Solaris Andrew Paprocki <andrew@ishiboo.com> * Fixed minor IBM xlC compiler build issues * Added atomicops for AIX (POWER)