Skip to main content

Utility library.

Project description

pip install clark


Run tests by executing python test.


Super ArgParser

A nicer way to deal with config files and argparser:


test = 1

Your app:

from clark import SuperArgParser, ConfigFileAction

parser = SuperArgParser()

parser.add_argument('-c', action=ConfigFileAction)
parser.add_argument('--debug', action='store_true')
parser.add_argument('--test', type=int)

options = parser.parse_args([
    '--engage', 'foo',
    '-c', 'config_file.cnf'

assert options.test == 1
assert options.engage == 'foo'
assert options.debug is True

Super Enum

A simple Enum class with lots of nice properties.

from clark import SuperEnum

class Colors(SuperEnum):
    red = SuperEnum.E
    blue = SuperEnum.E
    green = SuperEnum.E

class OtherColors(SuperEnum):
    yellow = SuperEnum.E
    red = SuperEnum.E

red = Colors['red']
red =

assert red in Colors

assert str(red) == 'red'
assert red ==

assert !=

class Foo(object):
    class Colors(SuperEnum):
        blue = SuperEnum.Element

assert !=

Super JSON

Make simplejson slightly better (don’t crash on datetime objects)

from clark import super_json

now =
x = super_json.loads(super_json.dumps({ 'a': now }))
assert x['a'] == now.isoformat()

Super PidFile

A simple PidFile class. Instantiate when you boot up, and close it when you exit.

from clark import SuperPidFile

pidfile = SuperPidFile()
    ... run your app ...

Super Thread

Threads that terminate nicely and are awesome.

from clark import SuperThread

class T(SuperThread):
    def bootstrap(self):
        self.i = 0

    def sleep(self):

    def work(self):
        self.i += 1

    def cleanup(self):
        assert self.i > 0

t = T()



assert not t.is_alive()

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for clark, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size clark-0.1.0.tar.gz (5.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page