jtmoulia, to emacs
@jtmoulia@mstdn.social avatar

A guide on integrating + + using [mostly] builtin tooling and project local .dir-locals.el variables.

Specifically, this setup uses + for live syntax checking, for code running, for type-checking, and as the shell

Feedback would be welcome -- trying to get it robust + idiomatic.

https://jtmoulia.srht.site/guides/emacs-python-hatch/

mgorny, to gentoo Polish
@mgorny@pol.social avatar

Ostatnio zastosowałem prostą sztuczkę w standardowej inwokacji PyTesta w , by rzucało błąd, kiedy wykryje nieużywane funkcje async. Miało to na celu zwiększenie szansy zauważenia, jeśli w którejś paczce przypadkiem pominięto zależność od dev-python/pytest-asyncio (albo równoważnej wtyczki), albo przy wyłączonym automatycznym ładowaniu wtyczek, pominięto ładowanie takiej wtyczki.

Dziś otrzymałem pierwsze zgłoszenie, dotyczące paczki dev-python/ipython. Przeszukałem źródła, i potwierdziłem zależność — tyle, że z jakiegoś powodu przypiętą do wersji < 0.22. No cóż, nie mamy już takiej, ale warto sprawdzić, czy mimo to nie zadziała. Tak więc dodałem zależność, dodałem -p asyncio… a dalej jej nie widzi. Podrapałem się po głowie, spróbowałem PYTEST_PLUGINS — dalej nie działa. Co do…?

Tak więc sklonowałem repozytorium git, spróbowałem ze starszą wersją wtyczki — testy działają. Zaktualizowałem do 0.23.6, przestały działać. Sprawdziłem historię, i okazało się, że starą wersję wymuszono ze względu na błąd w wydaniu 0.22.0. Tyle że ten błąd już poprawiono, wydanie usunięto, a mój problem był zupełnie inny.

Przyjrzałem się sprawie bliżej. Z jakiegoś powodu, w kodzie testy nie są bezpośrednio oznaczone markerem pytest.mark.asyncio. Zamiast tego, conftest.py automatycznie dodaje ten marker do wszystkich testów, będących współprogramami. Ze starszymi wersjami to działało, z nową przestało. Wygląda na to, że test zostaje poprawnie oznaczony, ale wówczas przestaje być rozpoznawany jako współprogram. Przygotowałem minimalny przykład i zgłosiłem problem.

Istotne w tej historii jest to: (potencjalny) problem nie został zauważony przez dłuższą chwilę, bo autorzy IPythona przedwcześnie wymusili starą wersję ze względu na chwilowy błąd, a następnie nie usunęli tego ograniczenia.

https://gitweb.gentoo.org/repo/gentoo.git/commit/eclass/python-utils-r1.eclass?id=1f35acddca01e91d4477f3d0340c47329517f474
https://bugs.gentoo.org/928411
https://github.com/ipython/ipython/commit/e27ee203ad54df0431d817abad09ec1caafde4d6
https://github.com/pytest-dev/pytest-asyncio/issues/810

mgorny, to gentoo Polish
@mgorny@pol.social avatar

Za sprawą zlecenia z , Inc. (@cJ), sporo paczek Pythona w dorobiła się wsparcia , m.in.: , Notebook, , , .

Chciałbym także podziękować autorom PyPy za ich wsparcie, zarówno w kwestii poprawiania błędów w PyPy, jak również udzielaniu pomocy innym projektom, by poprawić ich zgodność z PyPy. Praca z wami jest przyjemnością!

Na koniec, poznałem ważny argument za pracą nad wsparciem PyPy w projektach: nawet jeśli dana paczka nie działa szybciej na PyPy, to może być zależnością w większym projekcie, w którym PyPy ogółem przynosi lepszą wydajność.

scy, to python
@scy@chaos.social avatar

Did you know: You can start an by invoking python -m asyncio.

chrysn,
@chrysn@chaos.social avatar

@scy It also works that way in and (without any need for explicit configuration)

diazona, to python
@diazona@techhub.social avatar

TIL that commands you enter into also show up in your history 🤯

Mbussonn, to random
@Mbussonn@chaos.social avatar

8.15.0 out, Pdb support for chained exceptions, and templated-ast-transformers See https://ipython.readthedocs.io/en/latest/whatsnew/version8.html#ipython-8-15

mattcen, to jupyter
@mattcen@aus.social avatar

Can somebody familiar with or please tell me why the top cell in this notebook doesn't render the HTML, when the other two cells do? Everything I'm reading online suggests it should render it. https://gist.github.com/mattcen/c5db6e729dfe9e949596ffb87207cb1b
In the "Rich representation" section of this notebook (https://jupyterlite.github.io/demo/lab?path=.%2Fpython.ipynb) it does something similar and Just Works (obviously that's rather than CPython, but I don't think that should matter).
I am guessing maybe there's a library I haven't installed; for this example I just created a new virtual environment and installed jupyterlab and nothing else.

mattcen, (edited )
@mattcen@aus.social avatar

Found it!
A while ago I copied this PYTHONSTARTUP file, and the highlighted lines were the culprits: https://gist.github.com/ksamuel/ef08e2bd4bcd0bbbf733e521eca967ee#file-pythonstartup-py-L37-L38 (from https://www.bitecode.dev/p/happiness-is-a-good-pythonstartup). As soon as I commented out that line and re-started JupyterLab, it behaved as expected. 😅

/CC @KathyReid @allanchain
@somewheresouth @moshez #JupyterLab #JupyterNotebook #Jupyter #IPython

ploomber, to random

Hello community @fosstodon

We write open source packages to ease the development and deployment of data applications.

We are currently maintaining:

  1. Ploomber: a package to easily integrate your DS projects into. pipelines

  2. JupySQL: a continuation of -SQL, execute your queries with ease on Jupyter notebooks

  3. Ploomber engine: A toolbox for Jupyter notebooks : testing, experiment tracking, debugging, profiling, and more!

Please say hi, follow us and let us follow you.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • magazineikmin
  • InstantRegret
  • tacticalgear
  • osvaldo12
  • Youngstown
  • everett
  • slotface
  • vwfavf
  • rosin
  • mdbf
  • kavyap
  • DreamBathrooms
  • provamag3
  • ngwrru68w68
  • Durango
  • cubers
  • ethstaker
  • khanakhh
  • tester
  • modclub
  • GTA5RPClips
  • anitta
  • cisconetworking
  • normalnudes
  • Leos
  • JUstTest
  • All magazines