Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View svetlyak40wt's full-sized avatar
💭
Making Ultralisp.org

Alexander Artemenko svetlyak40wt

💭
Making Ultralisp.org
View GitHub Profile
@svetlyak40wt
svetlyak40wt / set_logging.py
Created May 24, 2010 08:17
How to set python logging with comprehensive format.
import logging
root = logging.getLogger()
handler = logging.FileHandler('debug.log')
fmt = logging.Formatter('%(asctime)s %(process)s/%(thread)s %(levelname)s %(name)s %(filename)s:%(lineno)s %(message)s')
handler.setFormatter(fmt)
root.addHandler(handler)
# ...
# There are models Subscription and MailList defined above.
# MailList has a many to many field 'managers'. This field
# defines which manager is able to edit/add subscriptions to
# a maillist.
#
# To filter choices in the Django's admin, I use following code:
class SubscriptionAdmin(admin.ModelAdmin):
list_display = ('id', 'mail_list', 'email', 'name')
@svetlyak40wt
svetlyak40wt / xhtml_cleaner.py
Created October 11, 2010 10:23
XHTML cleaner, based on Cleaner from lxml.html.
"""
XHTML cleaner, based on Cleaner from lxml.html.
"""
import copy
from lxml.html import clean
from lxml.html import tostring, fromstring, bytes
def _transform_result(typ, result):
@svetlyak40wt
svetlyak40wt / select_for_update.py
Created November 16, 2010 10:15
Django helper to use SELECT FOR UPDATE in the query.
from django.db import DEFAULT_DB_ALIAS
def select_for_update(queryset):
""" Returns query, rewrited to use SELECT ... FOR UPDATE.
Can be used in transaction to get lock on selected rows.
Database must support this SQL statements.
Example:
>>> query = select_for_update(MyModel.objects.filter(blah = 'minor'))
>>> unicode(query.query)
@svetlyak40wt
svetlyak40wt / django_settings_utils.py
Created November 29, 2010 13:57 — forked from lqc/django_settings_utils.py
Django "with settings" helper
# from django.conf import settings
from functools import wraps
class _s:
def __init__(self, a=10, b=None):
self.a, self.b = a,b
def _override_settings(overrides):
_orig = {}
_missing = []
@svetlyak40wt
svetlyak40wt / build-django.sh
Created December 4, 2010 17:07
A script to build Django from the given SVN revision.
#!/bin/bash
# A script to build Django from the given SVN revision
REV=$1
UPLOAD_TO=locum:www/pypi
pushd .
svn co -r $REV http://code.djangoproject.com/svn/django/trunk/ django-$REV
cd django-$REV
@svetlyak40wt
svetlyak40wt / colorize.py
Created December 4, 2010 23:47
Console output colorizator.
#!/usr/bin/env python
"""
Console output colorizator
Author: Alexander Artemenko <svetlyak.40wt@gmail.com>
Usage: tail -f some.log | colorize.py 'one.*pattern' 'another'
DON'T DOWNLOAD THIS SCRIPT. JUST INSTALL IT USING easy_install colorize
OR FORK IT https://github.com/svetlyak40wt/colorize
"""
@svetlyak40wt
svetlyak40wt / pdbpp_utf8_test.py
Created January 17, 2011 22:03
Test for Pdb++ UTF-8 compatibility.
def test_utf8():
src = py.code.Source("""
# coding: utf-8
def fn():
\"\"\"тест\"\"\"
a = 1
set_trace()
return a
""")
@svetlyak40wt
svetlyak40wt / callbacks.py
Created August 30, 2011 09:41
Python callbacks
def foo(arg1, arg2):
print 'foo:', arg1, arg2
def bar(arg1, arg2):
print 'bar:', arg1, arg2
def main(callback):
callback('blah', 'minor')
if __name__ == '__main__':
@svetlyak40wt
svetlyak40wt / django_fastcgi
Created January 2, 2012 19:03
Django FastCGI params for Nginx.
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_pass_header Authorization;
fastcgi_intercept_errors off;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;