Skip to content

Instantly share code, notes, and snippets.

View f0t0n's full-sized avatar

Eugene Naydenov f0t0n

View GitHub Profile

Keybase proof

I hereby claim:

  • I am f0t0n on github.
  • I am competera_en (https://keybase.io/competera_en) on keybase.
  • I have a public key whose fingerprint is 5EC8 2CC3 1270 4617 2D22 E44A E75F 50EE 9E79 B40B

To claim this, I am signing this object:

{
"swagger": "2.0",
"info": {
"title": "Uber API",
"description": "Move your app forward with the Uber API",
"version": "1.0.0"
},
"host": "api.uber.com",
"schemes": [
"https"
@f0t0n
f0t0n / recureduce.py
Last active March 3, 2017 14:09
Unlimited "recursion" hack
from functools import reduce
def run_flow(fns, input_value: dict) -> dict:
def flow_reducer(result, fn):
return fn(result)
return reduce(flow_reducer, fns, input_value)
def recur(fn, input_value, stop) -> dict:
@f0t0n
f0t0n / background_tasks.py
Created August 22, 2016 19:48
Background tasks using app.loop.create_task + cancellation
#!/usr/bin/env python3
"""Example for aiohttp.web.Application.on_startup signal handler
"""
import asyncio
from aiohttp import ClientSession
from aiohttp.web import Application, run_app, Response
async def fake_redis_msg(request):
@f0t0n
f0t0n / background_tasks.py
Created August 22, 2016 19:38
Background tasks with loop.create_task + cancellation
#!/usr/bin/env python3
"""Example for aiohttp.web.Application.on_startup signal handler
"""
import aiohttp
import asyncio
import contextlib
from aiohttp.web import Application, run_app, Response
#!/usr/bin/env python3
"""Example for aiohttp.web.Application.on_startup signal handler
"""
import asyncio
import aiohttp
from aiohttp.web import Application, run_app, Response
@f0t0n
f0t0n / pgmodeler.md
Last active June 16, 2016 18:57
Как я собрался генерировать ERD

#Как я собирался генерировать ERD

pgmodeler

В общем, решил я сгенерировать ERD существующей PostgreSQL базы данных. Добрые люди из украинского Python комьюнити порекомендовали pgmodeler. Посмотрел скриншоты на сайте - понравилось. Решил по-быстрому его собрать и опробовать. Когда собирал, понял, что заметка с пошаговой инструкцией может оказаться полезной. Посему излагаю.

@f0t0n
f0t0n / gitter-dev-ua-faq.md
Last active May 6, 2016 21:41 — forked from listochkin/gitter-dev-ua-faq.md
Gitter Dev-UA FAQ

FAQ по Gitter-чатам группы Dev-UA

Так получилось, что мы открываем сейчас достаточно много чатов в [Gitter.im][1]: часто это совсем новые для нас сообщества (как [PHP-чат][2], например), а часто - это уже существующие чаты, которые мы создали и администрировали в Skype (например, [Frontend-UA][3]). Не зависимо от того, новый ли это чат или "переезжающий", нам раз за разом задают одни и те же вопросы. Здесь мы собрали их и подготовили несколько ответов.

Почему Gitter?

  1. Больше 300 человек в чате (это лимит в Skype)
import aiohttp
from aiohttp import web
from .exception import RpcError
from .exception import RpcErrorCode
from .serializer import json
from .serializer import msgpack
from .constants import JSON_RPC_VERSION
class RpcWebsocketHandler(object):
from aiohttp import web
def rpc_method(method):
method.is_rpc_method = True
return method
def raise_method_not_found(method):
raise RpcError('Method `{}` not found'.format(method),