This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Tom Hale, 2016. MIT Licence. | |
# Print out 256 colours, with each number printed in its corresponding colour | |
# See http://askubuntu.com/questions/821157/print-a-256-color-test-pattern-in-the-terminal/821163#821163 | |
set -eu # Fail on errors or undeclared variables | |
printable_colours=256 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
Generate a random date sometime between now and n days before day. | |
Also, generate a random time to go with the day while we are at it. | |
@param days date range between today and minimum date to generate | |
@return random date | |
@see http://stackoverflow.com/questions/10092468/how-do-you-generate-a-random-date-in-objective-c | |
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import re | |
from sqlalchemy.ext.compiler import compiles | |
from sqlalchemy.schema import CreateTable, DropTable, \ | |
CreateSequence, DropSequence, CreateIndex, DropIndex | |
from sqlalchemy.dialects.postgresql import DropEnumType | |
patches = ( | |
(CreateTable, 'visit_create_table', "^\s*CREATE TABLE", "CREATE TABLE IF NOT EXISTS"), | |
(CreateIndex, 'visit_create_index', "^\s*CREATE INDEX", "CREATE INDEX IF NOT EXISTS"), |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from sqlalchemy_dump import dump_sql | |
def create_all_sql(metadata): | |
return dump_sql(metadata.create_all, bind=True)() | |
def drop_all_sql(metadata): | |
return dumpsql(metadata.drop_all, bind=True)() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# based on: https://gist.github.com/exhuma/5935162#file-representable_base-py | |
class RepresentableBase(object): | |
""" Add automatic __repr__ and __str__ to SQLAlchemy ORM models | |
""" | |
def _repr_worker(self, attribute): | |
mapper = object_mapper(self) | |
items = [(p.key, getattr(self, p.key)) | |
for p in ( | |
mapper.get_property_by_column(c) |