Currently, JSON is used for all serialization between stages, while Bson is used for communication with MongoDB.
When the API was created, Bson was not available separately in any reliable format, just within the Mongo Java Driver. This is now distributed separately, and an upgrade from JSON to BSON can thus be achieved. This also allows for improvements to handle binary data and less hacking required to provide Date objects.
Currently, JSON is used for all serialization between stages, while Bson is used for communication with MongoDB.
When the API was created, Bson was not available separately in any reliable format, just within the Mongo Java Driver. This is now distributed separately, and an upgrade from JSON to BSON can thus be achieved. This also allows for improvements to handle binary data and less hacking required to provide Date objects.