Skip to content

Instantly share code, notes, and snippets.

[
{
"title": "Dawn or dusk?",
"answers": [
{
"title": "Dawn",
"scores": {
"g": 100,
"r": 100,
"h": 0,
@Xowap
Xowap / keybase.md
Last active November 17, 2019 10:03
Keybase verification

Keybase proof

I hereby claim:

  • I am xowap on github.
  • I am xowap (https://keybase.io/xowap) on keybase.
  • I have a public key ASC37lc_Cup93wSKmGt4SSwNZ-tAAQ6bTbyNbOXbUpZRUwo

To claim this, I am signing this object:

from pydantic import BaseModel, ValidationError
from typing import Union
class A(BaseModel):
a: Union["A", "B"]
class B(BaseModel):
a: Union["A", "B"]
@Xowap
Xowap / jupiter_lci.py
Created August 2, 2019 14:18
Jupiter LCI
from argparse import ArgumentParser, Namespace
from base64 import b64encode
from json import dumps
from pprint import pprint
from typing import Optional, Sequence, Text
from urllib.parse import ParseResult, urljoin, urlparse
from requests_html import HTMLSession
@Xowap
Xowap / house_avocode.svg
Last active December 7, 2018 07:33
Avocode SVG optimization
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@Xowap
Xowap / requests_html_hotfix.py
Last active July 9, 2018 13:58
Fix pyppeteer download location
"""
This is a monkey patch of the requests-html module so it can download chrome
and store its data in a custom location and not in the home directory (which
is not writable on servers and also we do not want chrome stored there).
"""
from os.path import (
join,
)
from pathlib import (
@Xowap
Xowap / serialized_replace.py
Last active June 6, 2018 16:08
Search & Replace in PHP serialized values
#!/usr/bin/env python3
from argparse import ArgumentParser
from sys import stdin, stdout
import re
SER_STR = re.compile(r"s:(\d+):(\\*\")(.*?)(\\*\");")
def parse_args():
@Xowap
Xowap / gdpr.yml
Last active December 27, 2018 11:28
---
# List here all data controllers
controllers:
- name: Control Corporation
address: 42 control road, 75000 Paris, France
organisational_part: Control Part
contact_person: Jean-Claude Control
# That's all recipients for this data, wether internal database or an
@Xowap
Xowap / default.py
Last active December 6, 2017 11:03
An attempt to validate data as you read it (something in the mood of PEP 463)
from typing import TypeVar, Callable, Any, Optional, Tuple, Type
DATA_ERROR = (
KeyError,
TypeError,
ValueError,
AttributeError,
IndexError,
AssertionError,
)
#!/bin/bash
SERVBIN=${SERVBIN:-/usr/sbin/service}
success=0
function echo_rep {
echo -n $(tput cuu1)
echo -n $(tput ed)
echo "$1"
}