Skip to content

Instantly share code, notes, and snippets.

@tomviner
tomviner / day_14.py
Last active December 27, 2019 18:07
Advent of Code 2019 Day 14
import math
from collections import Counter
from funcy import post_processing
from parse import parse
from scipy.optimize import minimize_scalar
@post_processing(dict)
def parse_input(input_str):
@tomviner
tomviner / Dockerfile
Created November 29, 2019 20:16
Compile requirements in docker container - to force Linux platform.
FROM python:3.7-slim-stretch AS builder
RUN python -m pip install -U pip setuptools wheel pip-tools
CMD ["/reqs/compile-all.sh"]
@tomviner
tomviner / README.md
Last active August 9, 2019 23:35
Incompatibility between Pytest 5 and eventlet

Setup

pip install pytest==5.0.1 eventlet

See error

pytest --help | cat
@tomviner
tomviner / .gitignore
Last active November 4, 2023 23:42
Instal latest patch versions of python
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
@tomviner
tomviner / README.md
Last active November 5, 2023 14:27 — forked from oryband/prepare-commit-msg
Appends branch name to git commit message. `cp prepare-commit-msg .git/hooks/prepare-commit-msg`

Clone

git clone git@gist.github.com:faf373e5c05a8cb4bc49c048504dbea6.git git-hook-prepare-commit-msg
@tomviner
tomviner / multi_write.py
Created September 23, 2016 09:24
Random access file writing
import os
import time
import random
FN = 'my-tmp-file.txt'
SIZE = (2 ** 10) # 1K
if not os.path.exists(FN):
with open(FN, 'wb') as f:
@tomviner
tomviner / tmp
Created July 21, 2016 13:44
Pytest Snippet: Make a fixture from a value
.
from itertools import count, takewhile
from math import sqrt
import time
try:
# Python 2 compat
from itertools import ifilter as filter
except ImportError:
pass
@tomviner
tomviner / tox-output.txt
Created April 10, 2016 22:16
Full networkzero discovery test timeouts
(nw034)tom:~/dev/networkzero$ tox
GLOB sdist-make: /home/tom/dev/networkzero/setup.py
py27 inst-nodeps: /home/tom/dev/networkzero/.tox/dist/networkzero-0.1.zip
py27 installed: netifaces==0.10.4,networkzero==0.1,py==1.4.31,pytest==2.9.1,pytest-timeout==1.0.0,pyzmq==15.2.0
py27 runtests: PYTHONHASHSEED='4147297411'
py27 runtests: commands[0] | py.test tests/
============================================================== test session starts ===============================================================
platform linux2 -- Python 2.7.10, pytest-2.9.1, py-1.4.31, pluggy-0.3.1
rootdir: /home/tom/dev/networkzero, inifile: tox.ini
plugins: timeout-1.0.0
@tomviner
tomviner / cat-me.py
Last active February 24, 2016 21:47
Who's been dojo herding a lot recently?
from __future__ import division, print_function
from collections import defaultdict
from operator import itemgetter
get_values = itemgetter(1)
last_few_herders = """
Nicholas
Gautier