Skip to main content
Avatar for Cameron Simpson from gravatar.com

Cameron Simpson

Username    cameron.simpson

101 projects

cs.tarutils

Last released

Assorted tar related things, including a fast tar-based copy.

cs.queues

Last released

some Queue subclasses and ducktypes

cs.hashindex

Last released

A command and utility functions for making listings of file content hashcodes and manipulating directory trees based on such a hash index.

cs.result

Last released

Result and friends: various subclassable classes for deferred delivery of values.

cs.fsm

Last released

Basic Finite State Machine (FSM) tools.

cs.threads

Last released

threading and communication/synchronisation conveniences

cs.upd

Last released

Single and multiple line status updates with minimal update sequences.

cs.delta

Last released

Utility functions around state changes.

cs.context

Last released

Assorted context managers.

cs.psutils

Last released

Assorted process and subprocess management functions.

cs.hashutils

Last released

Convenience hashing facilities.

cs.lex

Last released

Lexical analysis functions, tokenisers, transcribers: an arbitrary assortment of lexical and tokenisation functions useful for writing recursive descent parsers, of which I have several. There are also some transcription functions for producing text from various objects, such as `hexify` and `unctrl`.

cs.app.osx.defaults

Last released

Access the MacOS degfaults via the `defaults` command.

cs.x

Last released

X(), for low level debugging.

cs.binary

Last released

Facilities associated with binary data parsing and transcription. The classes in this module support easy parsing of binary data structures, returning instances with the binary data decoded into attributes and capable of transcribing themselves in binary form (trivially via `bytes(instance)` and also otherwise).

cs.splink

Last released

Assorted utility functions for working with data downloaded from Selectronics' SP-LINK programme which communicates with their solar inverter controllers.

cs.timeseries

Last released

Efficient portable machine native columnar file storage of time series data for double float and signed 64-bit integers.

cs.app.playon

Last released

PlayOn facilities, primarily access to the download API. Includes a nice command line tool.

cs.pop3

Last released

POP3 stuff, particularly a streaming downloader and a simple command line which runs it.

cs.ffmpegutils

Last released

Convenience facilities for using FFmpeg (ffmpeg.org), with invocation via `ffmpeg-python`.

cs.fstags

Last released

Simple filesystem based file tagging and the associated `fstags` command line script.

cs.cmdutils

Last released

Convenience functions for working with the Cmd module, the BaseCommand class for constructing command line programmes, and other command line related stuff.

cs.fileutils

Last released

My grab bag of convenience functions for files and filenames/pathnames.

cs.buffer

Last released

Facilities to do with buffers, particularly CornuCopyBuffer, an automatically refilling buffer to support parsing of data streams.

cs.fs

Last released

Assorted filesystem related utility functions, some of which have been bloating cs.fileutils for too long.

cs.resources

Last released

Resource management classes and functions.

cs.app.myke

Last released

my make program; parallel make tool with superior expression syntax

cs.tagset

Last released

Tags and sets of tags with __format__ support and optional ontology information.

cs.sqltags

Last released

Simple SQL based tagging and the associated `sqltags` command line script, supporting both tagged named objects and tagged timestamped log entries.

cs.app.dlog

Last released

Log a line in my daily log.

cs.ebooks

Last released

Utilities and command line for working with EBooks. Basic support for talking to Apple Books, Calibre, CBZ, Kindle, Kobo, Mobi, PDF. These form the basis of my personal Kindle/Kobo/Calibre workflow.

cs.deco

Last released

Assorted function decorators.

cs.gimmicks

Last released

Gimmicks and hacks to make some of my other modules more robust and less demanding of others.

cs.later

Last released

Queue functions for execution later in priority and time order.

cs.dockerutils

Last released

Docker related utilities.

cs.iso14496

Last released

Facilities for ISO14496 files - the ISO Base Media File Format, the basis for several things including MP4 and MOV.

cs.mappings

Last released

Facilities for mappings and objects associated with mappings.

cs.urlutils

Last released

convenience functions for working with URLs

cs.gvutils

Last released

Graphviz utility functions.

cs.service-api

Last released

ServiceAPI, a base class for APIs which talk to a service, typically a web service via HTTP.

cs.range

Last released

a Range class implementing compact integer ranges with a set-like API, and associated functions

cs.debug

Last released

Assorted debugging facilities.

cs.sqlalchemy-utils

Last released

Assorted utility functions to support working with SQLAlchemy.

cs.pfx

Last released

Easy context prefixes for messages.

cs.mplutils

Last released

A few conveniences for working with matplotlib.

cs.env

Last released

Some environment related functions.

cs.taskqueue

Last released

A general purpose Task and TaskQueue for running tasks with dependencies and failure/retry, potentially in parallel.

cs.progress

Last released

A progress tracker with methods for throughput, ETA and update notification; also a compound progress meter composed from other progress meters.

cs.py.func

Last released

Convenience facilities related to Python functions.

cs.typingutils

Last released

Trite hacks for use with typing.

cs.sharedfile

Last released

facilities for shared access to files

cs.logutils

Last released

Logging convenience routines.

cs.excutils

Last released

Convenience facilities for managing exceptions.

cs.dateutils

Last released

A few conveniences to do with dates and times.

cs.testutils

Last released

Hacks to assist with testing.

cs.app.portfwd

Last released

Manage persistent ssh tunnels and port forwards.

cs.app.svcd

Last released

SvcD class and "svcd" command to run persistent service programmes.

cs.app.osx.plist

Last released

Some simple MacOS plist facilities. Supports binary plist files, which the stdlib `plistlib` module does not.

cs.app.mklinks

Last released

Tool for finding and hardlinking identical files.

cs.seq

Last released

Stuff to do with counters, sequences and iterables.

cs.numeric

Last released

A few ad hoc numeric alogrithms: `factors` and `primes`.

cs.py.stack

Last released

Convenience functions for the python execution stack.

cs.obj

Last released

Convenience facilities for objects.

cs.csvutils

Last released

CSV file related facilities

cs.xml

Last released

A couple of trite XML conveniences: preferred `etree` import and a `pprint` function.

cs.configutils

Last released

Utility functions and classes for .ini style configuration files.

cs.py.modules

Last released

Convenience functions related to modules and importing.

cs.py3

Last released

Aids for code sharing between python2 and python3.

cs.edit

Last released

Convenience functions for editing things. - Cameron Simpson <cs@cskk.id.au> 02jun2016

cs.app.ydl

Last released

Convenient command line and library wrapper for youtube-dl.

cs.py.doc

Last released

Create documentation from python modules and other objects.

cs.units

Last released

Functions for decomposing nonnegative integers according to various unit scales and also parsing support for values written in scales.

cs.ansi-colour

Last released

Convenience functions for ANSI terminal colour sequences [color].

cs.id3

Last released

Support for ID3 tags. A cs.binary based parser/transcriber for ID3 tags and a convenience wrapper for Doug Zongker's pyid3lib: http://pyid3lib.sourceforge.net/

cs.packetstream

Last released

general purpose bidirectional packet stream connection

cs.timeutils

Last released

convenience routines for times and timing

cs.ndjson

Last released

utilities for working with newline delimited JSON (NDJSON) files

cs.app.megacli

Last released

Command line tool to inspect and manipulate LSI MegaRAID adapters, such as used in IBM ServeRAID systems and Dell PowerEdge RAID Controller (PERC).

cs.serialise

Last released

OBSOLETE: some serialising functions. Please use by cs.binary instead.

cs.tty

Last released

Functions related to terminals.

cs.sh

Last released

Convenience functions for constructing shell commands.

cs.predicate

Last released

fnctions for expressing predicates

cs.mailutils

Last released

functions and classes to work with email

cs.app.flag

Last released

Persistent filesystem based flags for state and control.

cs.app.mailfiler

Last released

email message filing system which monitors multiple inbound Maildir folders

cs.rfc2047

Last released

unrfc2047: a decoder for RFC2047 (MIME Part 3) encoded text.

cs.pipeline

Last released

Function pipelines mediated by queues and a Later.

cs.vt

Last released

A content hash based data store with a filesystem layer, using variable sized blocks, arbitrarily sized data and utilising some domain knowledge to aid efficient block boundary selection.

cs.clockutils

Last released

implementation of PEP0418 with the "Choosing the clock from a list of constraints" get_clock() and get_clocks() functions

cs.socketutils

Last released

some utilities for network sockets

cs.cache

Last released

caching data structures and other lossy things with capped sizes

cs.filestate

Last released

Trivial FileState class used to watch for file changes.

cs.wol

Last released

Tool for sending a wake on LAN (WOL) packet out a specific interface to a specific MAC address.

cs.app.ssh

Last released

OpenSSH configuration parsing.

cs.rfc2616

Last released

RFC2616 (HTTP 1.1) facilities

cs.nodedb

Last released

a simple and versatile collection of nodes with attributes, accessed as direct Python objects and automatically transcribed to assorted backing stores (CSV, SQL, GDBM, etc); the CSV backend can be (loosely) shared between multiple clients

cs.inttypes

Last released

various trite types associated with integers, such as bitmasks, flags and enums

cs.html

Last released

easy HTML and XHTML transcription

cs.app.maildb

Last released

a cs.nodedb NodeDB subclass for storing email address information (groups, addresses, so forth)

cs.app.beyonwiz

Last released

Beyonwiz PVR and TVWiz recording utilities

cs.mixin.ucattrs

Last released

Mixin for .FOO uppercase attributes mapped to ['FOO'] access.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page