Contribute Media
A thank you to everyone who makes this possible: Read More

Going from 2 to 3 on Windows, macOS and Linux


At Dropbox, we’ve always used Python to power our application for Windows, macOS and Linux (until recently, Python 2.7). Over the years, a growing lack of features and the need for outdated compilers/toolchains made migrating to Python 3 a necessity. Join us to hear the tale of our unique journey from Python 2 to 3 and the lessons we learned along the way:

  • We’ll discuss the reasons that led to our decision to make the jump.
  • We’ll dive into how we sequenced the transition by using the C-API to ship both versions of Python and choose one at runtime.
  • We’ll reveal the tools we used to enforce a hybrid (2/3) syntax for over hundreds of thousands of lines of Python code.
  • We’ll discuss some of our most spectacular bugs and gotchas, and how you can avoid them!
Improve this page