Prelazak sa Python 2.7 na Python 3.4 interpreter
Kako u razvoju tako i u produkciji je preporučljivo koristiti virtualenv. Počev od Python verzije 3 su uključeni i venv i pip u sam python, tako da sve treba da radi kao sat i bez problema, osim što ne :)
Jedna od divnih stvari koje Python 3 donosi je konačno dostojanstveno rukovanje unicode stringovima bez da razmišljaš o prevođenju, enkodovanju ili dekodovanju glupavih stringova kako bi mogao da ih pišem, čitam i/ili izvozim.
Jedna od divnih stvari koje Python 3 donosi je konačno dostojanstveno rukovanje unicode stringovima bez da razmišljaš o prevođenju, enkodovanju ili dekodovanju glupavih stringova kako bi mogao da ih pišem, čitam i/ili izvozim.
Potrebno je obratiti pažnju na sledeće stvari
- Prelazak ne znači da će sav kôd automatski da radi. Postoje sitne promene koje su posoljene svuda po programu i biće ih solidno nezgodno sve pronaći i izmeniti.
- Može da se desi da migracija krene po zlu. Za svaki slučaj nemoj brisati stari venv. To je rezerva da se vrneš na nešto što znaš da radi (i dalje).
- Instaliraj Python 3. Siguran sam da postoji puno načina na internetu kako to da uradiš. Ne sećam se tačno kako sam ga ja instalirao.
- Kreiraj novo okruženje koristeći komandu:
- virtualenv ./env3.4 -p python3.4
- važno je da se navede eksplicitna Python verzija kako bi se pip sigurno instalirao u venv
- Aktiviraj okruženje: source ./env3.4/bin/activate
- Instaliraj sve po spisku: pip install -r requirements.txt
- Može da se desi da su stari .pyc fajlovi još uvek tu i novi interpreter ne može da se snađe s njima. U tom slučaju je potrebno samo sve ih obrisati i gotovo.
- find . -name '*.pyc' -delete
- ...
- Profitiraj! :)
Posle migracije okruženja potrebno je još migrirati bazu podataka i Django je spreman da ponovo zapleše u novom ruhu :)
Коментари
Постави коментар