Skip to content

Instantly share code, notes, and snippets.

@graingert
graingert / client.py
Created Sep 3, 2021 — forked from foxmask/client.py
websocket client
View client.py
#!/usr/bin/env python3
import sys
import asyncio
import json
import websockets
async def hello():
uri = "ws://localhost:8888"
@graingert
graingert / anyio.pytb
Created Aug 24, 2021
amirouche-generator-stop
View anyio.pytb
2021-08-24 09:11:54.057 | ERROR | __main__:get:51 - http get failed with exception url: https://hyper.dev, <class 'RuntimeError'>
Traceback (most recent call last):
File "/home/graingert/.virtualenvs/testingpypy37/site-packages/httpcore/_backends/anyio.py", line 60, in read
return await self.stream.receive(n)
│ │ │ └ 65536
│ │ └ <function TLSStream.receive at 0x00007f0102d79920>
│ └ TLSStream(transport_stream=<anyio._backends._asyncio.SocketStream object at 0x00007f010434cb80>, standard_compatible=False, _...
<httpcore._backends.anyio.SocketStream object at 0x00005651a1184608>
View gimcrack.py
import curio
import collections
import threading
class Locals(threading.local):
synchrotron = None
tlocals = Locals()
View yield_from.py
_i = iter(EXPR)
try:
_y = next(_i)
except StopIteration as _e:
_r = _e.value
else:
while 1:
try:
_s = yield _y
except GeneratorExit as _e:
@graingert
graingert / main.py
Created May 11, 2021
call Twisted from django
View main.py
from __future__ import annotations
# with thanks to https://adamj.eu/tech/2020/10/15/a-single-file-rest-api-in-django/
import os
import sys
from dataclasses import dataclass
import treq
import asyncio
import asgiref.sync
View err.pytb
# /opt/libreofficedev7.1/program/python test2.py
2004 177
2003 176
2002 175
2005 178
2002 181
2003 180
2004 179
2005 182
^Cunhandled exception during asyncio.run() shutdown
@graingert
graingert / README.md
Last active Dec 19, 2019
pytest-twisted
View README.md

Twisted

Twisted tests will generally look like:

@twisted_utils.reacts  # marks the test as needing a reactor
# marks the function as a coroutine, a poor immitation of a Python3 async/def
# coroutine
@twisted_utils.inlineCallbacks
def test_foo(fixtures)
View Dockerfile
FROM ubuntu:xenial
COPY ./apt-keys.pub /tmp/apt-keys.pub
RUN echo "deb http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial main" > /etc/apt/sources.list.d/deadsnakes.list \
&& apt-key add /tmp/apt-keys.pub && rm /tmp/apt-keys.pub \
&& apt-get update && apt-get install -y --no-install-recommends libgtk2.0 libwebkitgtk-3.0 \
build-essential python2.7-dev python3.7-dev python3.7-venv python-virtualenv \
libjpeg8 libtiff5 libsdl1.2debian libnotify4 freeglut3 libsm6 \
libgl1-mesa-glx libgstreamer-plugins-base0.10 libwebkit2gtk-4.0-37 git \
&& rm -rf /var/lib/apt/lists/*
@graingert
graingert / import_finder.py
Last active Apr 10, 2019
import_finder.py
View import_finder.py
import pathlib
import ast
def _packages(path):
return _include_parents(path.with_suffix('').parts)
def _include_parents(parts):
p = list(parts)
View eslint.py
import json
with open('./foo.json') as df:
dump = json.load(df)
for f in dump:
fp = f['filePath']
rules = ', '.join(sorted(set(m['ruleId'] for m in f['messages'])))
if not rules:
continue