py2 - py3 migration - krzysztof skarupa

8
Migracja z Py 2 do Py 3 W praktyce

Upload: sunscrapers

Post on 22-Jan-2018

121 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Py2  - Py3 migration - Krzysztof Skarupa

Migracja z Py 2 do Py 3W praktyce

Page 2: Py2  - Py3 migration - Krzysztof Skarupa

Stan projektu

● 1880 commitów (na dziś)

● pierwszy commit - 1 stycznia 2015

Page 3: Py2  - Py3 migration - Krzysztof Skarupa

Technologia

Python 2.7 (teraz 3.5.1)

Django 1.8

DRF 3.3

PostgreSQL

Haystack, Elasticsearch

Hosting - Heroku

Continous Integration - Circle CI

Page 4: Py2  - Py3 migration - Krzysztof Skarupa

Dlaczego?

Mock w bibliotece standardowej

Chcemy być “up to date”

Page 5: Py2  - Py3 migration - Krzysztof Skarupa

Narzędzia

Tox

PyCharm’s inspections

pipdeptree

caniusepython3

Python 3 Wall of Superpowers (https://python3wos.appspot.com)

Page 6: Py2  - Py3 migration - Krzysztof Skarupa

Proces

Osobny branch

Stopniowe wprowadzanie zmian przy częstych aktualizacjach

Dbałość o wysokie pokrycie kodu testami

Testy manualne

Staging

Produkcja

Page 7: Py2  - Py3 migration - Krzysztof Skarupa

Problemy Wyzwania / Spostrzeżenia

Szablony Django - inspekcje PyCharma ich nie obejmują

str / unicode -> str / bytes

Przekonanie managementu, że ta zmiana jest potrzebna

Page 8: Py2  - Py3 migration - Krzysztof Skarupa

Dzięki