py2 - py3 migration - krzysztof skarupa
TRANSCRIPT
Migracja z Py 2 do Py 3W praktyce
Stan projektu
● 1880 commitów (na dziś)
● pierwszy commit - 1 stycznia 2015
Technologia
Python 2.7 (teraz 3.5.1)
Django 1.8
DRF 3.3
PostgreSQL
Haystack, Elasticsearch
Hosting - Heroku
Continous Integration - Circle CI
Dlaczego?
Mock w bibliotece standardowej
Chcemy być “up to date”
Narzędzia
Tox
PyCharm’s inspections
pipdeptree
caniusepython3
Python 3 Wall of Superpowers (https://python3wos.appspot.com)
Proces
Osobny branch
Stopniowe wprowadzanie zmian przy częstych aktualizacjach
Dbałość o wysokie pokrycie kodu testami
Testy manualne
Staging
Produkcja
Problemy Wyzwania / Spostrzeżenia
Szablony Django - inspekcje PyCharma ich nie obejmują
str / unicode -> str / bytes
Przekonanie managementu, że ta zmiana jest potrzebna
Dzięki