March 13-15, 2019
Montreal, Canada

API Evolution the Right Way

If you maintain a library, how can you innovate without breaking the projects that depend on it? Follow semantic versioning, add APIs conservatively, add parameters compatibly, use deprecation warnings and publish a deprecation policy, guide your users on how to upgrade, and make wise choices about when to break backwards compatibility. This talk describes API evolution in Python and C, with lessons for libraries in any language.

View all 156 sessions

A. Jesse Jiryu Davis

MongoDB

Staff Engineer at MongoDB in New York City specializing in C, Python, and async. Lead developer of the MongoDB C and C++ driver libraries. Author of Motor, an async MongoDB driver for Tornado and asyncio. Contributor to Python, PyMongo, MongoDB, Tornado, and asyncio. Co-author with Guido van Rossum of "A Web Crawler With asyncio Coroutines", a chapter in the "500 Lines or Less" book in the Architecture of Open Source Applications series.

Read More