mirror of https://github.com/mahmoud/boltons.git
73 lines
1.5 KiB
ReStructuredText
73 lines
1.5 KiB
ReStructuredText
TODO
|
|
====
|
|
|
|
iterutils
|
|
---------
|
|
|
|
- range() for floats
|
|
- [x]range() with exponential increase (for easy backoffs)
|
|
|
|
dictutils
|
|
---------
|
|
|
|
- autoindexing list for dictionaries. As records get added, uses a
|
|
basic proportion-based heuristic to create subdictionaries as
|
|
indexes over the same data. Maybe automatically does a full-scan
|
|
option too.
|
|
- non-overwriting version of dict.update()
|
|
- OMD.sortvalues(key=lambda x: x): sorts lists of values by user-provided key.
|
|
|
|
fileutils
|
|
---------
|
|
|
|
* AtomicSaver: ditch mkstemp and use O_EXCL on the part file so that
|
|
multiple processes writing to the same part file will not get
|
|
interleaved writes
|
|
|
|
jsonutils
|
|
---------
|
|
|
|
* jsonl ignore blank lines
|
|
* jsonl add line number to error message
|
|
|
|
strutils
|
|
--------
|
|
|
|
* itersplitlines (re.finditer with (?>\r\n|\n|\x0b|\f|\r|\x85|\x2028|\x2029) )
|
|
* ungzip string
|
|
|
|
misc?
|
|
-----
|
|
|
|
- Tracking proxy. An object that always succeeds for all operations, saving the call history.
|
|
- Top/Bottom singletons (greater than and less than everything)
|
|
|
|
|
|
cliutils
|
|
--------
|
|
|
|
- progress bar
|
|
- confirmation prompt (e.g., "Question? (Y/n)")
|
|
|
|
tbutils
|
|
-------
|
|
|
|
- fold repeated frames (recursive calls)
|
|
|
|
statsutils
|
|
----------
|
|
|
|
- percentiles
|
|
- geometric mean (2 ** sum(log(a, b, ...))
|
|
|
|
funcutils
|
|
---------
|
|
|
|
#class FunctionDef(object):
|
|
# """
|
|
# general blocker: accept a bunch of fine-grained arguments, or just
|
|
# accept a whole ArgSpec? or a whole signature?
|
|
# """
|
|
# def __init__(self, name, code, doc=None):
|
|
# pass
|