Týdenní poznámky #4

Utekl další týden (26. 1. – 29. 1.). Vlastě už utekl celý měsíc!

Pondělí: Scénář

To hlavní, co jsem stihl v pondělí, je scénář pro první lekci nového kurzu. Pořád jsem si ještě nezvykl, jak dlouho tyhle věci trvají, ať už jde o kurz nebo přednášku. Když chci půl hodiny mluvit, chce to minimálně 4 hodiny přípravy. Když chci mluvit dvě hodiny týdně, tak to s nahráváním post-processingem vypadá na práci plný úvazek. Ještě že většina kurzu už je napsaná.

Večer jsem se tradičně připojil na Freezeyt stream. Tentokrát jsem většinu času strávil implementací (a kontrolou) detailů protokolu WSGI. Nástroj tak snad bude použitelný na opravdu všechny stránky napsané v Pythonu. Teda kromě těch co používají novější ASGI.

Zbytek týdne jsem po večerech stavěl teleprompter z kousků dřeva a polystyrenu (průhledného, ne pěnového), Snažím se zůstávat doma, ne běhat do železářství pro šroubky. Design tím docela trpí, ale to nevadí – stejně tenhle výtvor nikdo neuvidí.

Úterý: Setuptools, py3c a pathlib

V úterý jsem tentokrát jen koukal na pull requesty a diskutoval.

Modul distutils ze standardní knihovny nefunguje moc dobře; skoro všichni místo něj používají Setuptools. Rozhodlo se tedy, že se distutils z Pythonu odebere a začlení do Setuptools. Ale je s tím problém: distutils je jediné místo, kde se dá nastavit kam se soubory kolem Pythonu instalují, a tak má spousta linuxových distribucí v setuptools několik změn, které nastavují např. kdy instalovat do instalovat do /usr/ a kdy do /usr/local/. Ve standardní knihovně se takové změny dají dělat jednoduše, ale u Setuptools je to horší – tam si uživatel může doinstalovat novou verzi a všechny změny přepsat. A tak je potřeba udělat nové místo na nastavením a zajistit aby ho všechny distribuce i Setuptools začaly používat. Do pull requestu do Setuptools, který se o tohle snaží, jsem napsal pár postřehů.

Někdo poslal pull request do py3c, knihovny pro zpětnou kompatibilitu rozšiřujících modulů pro Python 2/3. (Něco jako six pro moduly napsané v C.) Nápad byl dobrý, ale celý PR jsem nakonec přepsal.

Přidal jsem i komentář do tématu o tom, že by se modul pathlib dal používat pro jiné „cesty“ než ty v tradičním souborovém systému. To je něco, co bych mohl využít ve svojí knihovně na cesty v Gitovém ropozitáři. Trochu mě mrzí, že tomuhle projektu nemůžu věnovat víc času.

Středa: bcond

Ve středu jsem se potýkal s makrama v RPM, balíčkovacím systému co používáme ve Fedoře. Napsal jsem makro %bcond, které by mělo zjednodušit parametrizaci balíčků: v Pythonu to např. používáme pro variantu „bez testů“ nebo „bez optimizací“, které se rychleji vytvoří (ale nefungují pak tak dobře) a tak je používáme na zkoušení nových věcí.

Čtvrtek: Fedora

Spousta malých věcí. Nejdůležitější asi byla triviální aktualizace plette – snad poslední věc co blokuje vydání nového Pipenv ve Fedoře.

Pátek: EL

No a v pátek jsem dělal hlavně na něčem, co budou veřejné až za pár měsíců ;)

Čtenářský deník

Dočetl jsem The Last Continent od T. Pratchetta, jednu z posledních zeměplošských knížek co mi ještě zbývala. Nebylo to tak skvělé jak si Zeměplochu pamatuju. Možná jsem moc vyrostl, možná jenom zrovna v téhle knížce bylo příliš mnoho stereotypně otravných čarodějů.