Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

pyline

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pyline

Pyline is a grep-like, sed-like, awk-like command-line tool for line-based text processing in Python.

  • 0.3.21
  • PyPI
  • Socket score

Maintainers
1

=============================== pyline

GitHub_ | PyPi_ | Warehouse_ | ReadTheDocs_ | Travis-CI_

.. image:: https://badge.fury.io/py/pyline.png :target: http://badge.fury.io/py/pyline

.. image:: https://travis-ci.org/westurner/pyline.png?branch=master :target: https://travis-ci.org/westurner/pyline

.. .. image:: https://pypip.in/d/pyline/badge.png .. :target: https://pypi.python.org/pypi/pyline

.. _GitHub: https://github.com/westurner/pyline .. _PyPi: https://pypi.python.org/pypi/pyline .. _Warehouse: https://warehouse.python.org/project/pyline .. _ReadTheDocs: https://pyline.readthedocs.org/en/latest .. _Travis-CI: https://travis-ci.org/westurner/pyline

Pyline is a grep-like, sed-like, awk-like command-line tool for line-based text processing in Python.

.. contents::

Features

  • Compatibility with the original pyline recipe_
  • Python str.split_ by an optional delimiter str (-F, --input-delim)
  • Python regex_ (-r, --regex, -R, --regex-options)
  • Output as txt, csv, tsv, json, html (-O csv, --output-filetype=csv)
  • Output as Markdown/ReStructuredText checkboxes (-O checkbox, --output-filetype=checkbox)
  • Lazy sorting (-s, --sort-asc; -S, --sort-desc)
  • Create path.py <https://pypi.python.org/pypi/path.py>__ (or pathlib_) objects from each line (-p, --path-tools)
  • Functional namedtuples, iterators yield -ing generators_
  • optparse_ argument parsing (-h, --help)
  • cookiecutter-pypackage_ project templating

.. _path.py: https://pypi.python.org/pypi/path.py .. _str.split: https://docs.python.org/2/library/stdtypes.html#str.split .. _Python regex: https://docs.python.org/2/library/re.html
.. _pathlib: https://pypi.python.org/pypi/pathlib .. _namedtuples: https://docs.python.org/2/library/collections.html#collections.namedtuple .. _iterators: https://docs.python.org/2/howto/functional.html#iterators .. _generators: https://docs.python.org/2/howto/functional.html#generators
.. _optparse: https://docs.python.org/2/library/optparse.html .. _cookiecutter-pypackage: https://github.com/audreyr/cookiecutter-pypackage

Why

Somewhat unsurprisingly, I found the original pyline recipe_ while searching for "python grep sed" (see AUTHORS.rst and LICENSE.psf).

I added an option for setting p = Path(line) in the eval/compile command context and added it to my dotfiles <https://github.com/westurner/dotfiles/commits/master/src/dotfiles/pyline.py>_ ; where it grew tests and an optparse.OptionParser; and is now promoted to a GitHub_ project with ReadTheDocs_ documentation, tests with tox and Travis-CI, and a setup.py for PyPi.

.. _original Pyline recipe: https://code.activestate.com/recipes/437932-pyline-a-grep-like-sed-like-command-line-tool/ .. _eval: https://docs.python.org/2/library/functions.html#eval .. _compile: https://docs.python.org/2/library/functions.html#compile .. _MapReduce: https://en.wikipedia.org/wiki/MapReduce

What

Pyline is an ordered MapReduce_ tool:

Input Readers: * stdin (default) * file (codecs.open(file, 'r', encoding='utf-8'))

Map Functions: * Python module imports (-m os) * Python regex pattern (-r '\(.*\)') * path library (p from --pathpy OR --pathlib) * Python codeobj eval output transform:

  .. code:: bash

     ls | pyline -m os 'line and os.path.abspath(line.strip())'
     ls | pyline -r '\(.*\)' 'rgx and (rgx.group(0), rgx.group(1)) or line'
     ls | pyline -p 'p and p.abspath() or ("# ".format(line))'

     # With an extra outer loop to bind variables in
     # (because (_p = p.abspath(); <codeobj>) does not work)
     find $PWD | pyline --pathpy -m os -m collections --input-delim='/' \
         'p and [collections.OrderedDict((
                 ("p", p),
                 ("_p", _p),
                 ("_p.split()", str(_p).split(os.path.sep)),
                 ("line.rstrip().split()", line.rstrip().split(os.path.sep)),
                 ("l.split()", l.split(os.path.sep)),
                 ("words", words),
                 ("w", w)))
             for _p in [p.abspath()]][0]' \
            -O json

Partition Function: None

Compare Function: Result(collections.namedtuple).__cmp__

Reduce Functions: bool(), sorted()

Output Writers: ResultWriter classes

.. code:: bash

   pyline -O csv
   pyline -O tsv
   pyline -O json

Installing

Install from PyPi_::

pip install pyline

Install from GitHub_ as editable (add a pyline.pth in site-packages)::

pip install -e git+https://github.com/westurner/pyline#egg=pyline

Usage

Print help::

pyline --help

Process::

# Print every line (null transform)
cat ~/.bashrc | pyline line
cat ~/.bashrc | pyline l

# Number every line
cat ~/.bashrc | pyline -n l

# Print every word (str.split(input-delim=None))
cat ~/.bashrc | pyline words
cat ~/.bashrc | pyline w

# Split into words and print (default: tab separated)
cat ~/.bashrc | pyline 'len(w) >= 2 and w[1] or "?"'

# Select the last word, dropping lines with no words
pyline -f ~/.bashrc 'w[-1:]'

# Regex matching with groups
cat ~/.bashrc | pyline -n -r '^#(.*)' 'rgx and rgx.group()'
cat ~/.bashrc | pyline -n -r '^#(.*)'

## Original Examples
# Print out the first 20 characters of every line
tail access_log | pyline "line[:20]"

# Print just the URLs in the access log (seventh "word" in the line)
tail access_log | pyline "words[6]"

Work with paths and files::

# List current directory files larger than 1 Kb
ls | pyline -m os \
  "os.path.isfile(line) and os.stat(line).st_size > 1024 and line"

# List current directory files larger than 1 Kb
#pip install path.py
ls | pyline -p 'p and p.size > 1024 and line'

Documentation

https://pyline.readthedocs.org/en/latest/

License

Python Software License <https://github.com/westurner/pyline/blob/master/LICENSE.psf>_

.

History

release/0.3.20 (2020-10-02 20:51:19 -0400) ++++++++++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.19..release/0.3.20

  • MRG: Merge tag 'v0.3.19' into develop [fc2163e]
  • BLD: setup.py: 3 & 3.8 trove classifiers [6bf10e0]
  • RLS: pyline.py,setup.py: v0.3.20 [242a75a]

v0.3.19 (2020-10-02 20:44:25 -0400) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.18..v0.3.19

  • MRG: Merge tag 'v0.3.18' into develop [715618e]
  • DOC,BLD: HISTORY.rst: *manually* fix unquoted/unescaped reference [9146f39]
  • BLD: setup.cfg: [wheel] -> [bdist_wheel] [ba27bd5]
  • BLD: setup.py: long_description_content_type='text/x-rst' [07dc247]
  • RLS: pyline.py,setup.py: v0.3.19 [405f3f6]
  • DOC: HISTORY.rst: output from git-changelog.py [9088f29]
  • MRG: Merge branch 'release/0.3.19' [45110ec]

v0.3.18 (2020-10-02 20:27:08 -0400) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.17..v0.3.18

  • MRG: Merge tag 'v0.3.17' into develop [09f46ca]
  • REF,TST: Makefile, requirements-test: switch to pytest, require jinja2 for tests [999446d]
  • REF,TST: pyline.py, test_pyline.py: py3 [7365938]
  • WIP: init: change import for py3 (TODO: check py2 compatibility) [fe61a93]
  • BLD: requirements[-test]: remove wheel, -test -> reqs.txt [716a9b3]
  • REF,BUG: py3, pathpy import, rawstrs, only strip one newline when numbering lines [f7b3281]
  • BLD: tox.ini,.travis.yml: use tox-travis, envs=py37,py38 [a2a4a82]
  • DOC,BLD: docs/reqs,docs/conf: copyright, fix pyline import [036bac8]
  • BLD,TST: setup.py: setup.py:test calls pytest -v [ced27bb]
  • REF,BUG: pyline.py: when sorting, sort None as '' (and log extensively for other sort comparison TypeError exceptions) [9248acb]
  • MRG: #29 REF,TST,BLD,BUG: Python 3 Support [cb195b4]
  • REF: pyline.py: change shebang to `#!/usr/bin/env python` from python2 [5841704]
  • RLS: pyline.py,setup.py: v0.3.18 [a1072e2]
  • DOC: HISTORY.rst: output from git-changelog.py [c9f7f89]
  • MRG: Merge branch 'release/0.3.18' [579ccdf]

v0.3.17 (2018-12-23 14:41:45 -0500) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.16..v0.3.17

  • MRG: Merge tag 'v0.3.15' into develop [e1d7768]
  • MRG: Merge tag 'v0.3.16' into develop [3a6fec4]
  • DOC: pyline.py: typo: checkbok -> checkbox [a0917c5]
  • BUG,ENH: pyline.py: -p: strip one trailing '\n' from line before parsing as path [47efdc9]
  • RLS: setup.py, pyline.py: v0.3.17 [9ef9d41]
  • BLD,DOC: Makefile: setversion, release docs [5cfc1e4]
  • MRG: Merge branch 'release/0.3.17' [618920a]

v0.3.16 (2016-07-22 11:42:57 -0500) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.15..v0.3.16

  • BUG: pyline.py: sys.argv[1:] (#7) [a548405]
  • RLS: pyline v0.3.16 [b17153a]
  • DOC: HISTORY.rst: git-changelog.py [9725f8d]
  • MRG: Merge branch 'hotfix/0.3.16' [c18d61c]

v0.3.15 (2016-07-22 11:34:56 -0500) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.14..v0.3.15

  • MRG: Merge tag 'v0.3.12' into develop [b4a3ec7]
  • BUG: include files named \s+ with -p/--pathpy or --pathlib (fixes #24) [6c3f658]
  • MRG: Merge tag 'v0.3.13' into develop [1f2b64b]
  • MRG: Merge tag 'v0.3.14' into develop [b27731a]
  • ETC: pyline/init.py: version = version = pyline.version [4065820]
  • RLS: setup.py, pyline.py: version='0.3.15' [a83ad49]
  • DOC: HISTORY.rst: git-changelog.py -r "release/0.3.15" --hdr="+"` [cfd26be]
  • MRG: Merge branch 'release/0.3.15' [2225fd6]

v0.3.14 (2016-07-22 11:27:03 -0500) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.13..v0.3.14

  • BUG: pyline/init.py: remove untested package-level main function [91e1f5f]
  • RLS: setup.py, init.py, pyline.py: v0.3.14 (in 3 places) [3186eb5]
  • MRG: Merge branch 'hotfix/0.3.14' [527df85]

v0.3.13 (2016-07-22 11:16:44 -0500) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.12..v0.3.13

  • BUG,TST: pyline/pyline.py: console_entrypoint -> pyline.pyline:main_entrypoint (see: #7) [a16570e]
  • MRG: Merge branch 'hotfix/0.3.13' [29b64ef]

v0.3.12 (2016-02-16 16:07:18 -0600) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.11..v0.3.12

  • MRG: Merge tag 'v0.3.11' into develop [98adc78]
  • DOC: README.rst: add .. contents:: [4416581]
  • TST,UBY: pyline.py, scripts/pyline.py: symlinks to pyline/pyline.py [2fda52e]
  • UBY,BUG: pyline.py: loglevels [WARN], -v/--verbose/DEBUG, -q/--quiet/ERROR [07fbc09]
  • RLS,DOC: setup.py,pyline.py: version 0.3.12 [0cb05f3]
  • DOC: HISTORY.rst: git-changelog.py --hdr=+ --rev 'release/0.3.12' | pbcopy [3b4d775]
  • MRG: Merge branch 'release/0.3.12' [29332e2]

v0.3.11 (2016-02-14 22:29:55 -0600) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.10..v0.3.11

  • MRG: Merge tag 'v0.3.10' into develop [ed296ea]
  • BLD: tox.ini: testenv/deps/jinja2 [1a6c2f5]
  • BLD: tox.ini, requirements.txt: add jinja2 to requirements.txt [e267a1e]
  • RLS,DOC: setup.py,pyline.py: version 0.3.11 [21bd6e9]
  • DOC: HISTORY.rst: git-changelog.py --hdr=+ --rev 'release/0.3.11' | pbcopy [efc24ce]
  • MRG: Merge branch 'release/0.3.11' [9c05df0]

v0.3.10 (2016-02-14 21:56:36 -0600) +++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.9..v0.3.10

  • MRG: Merge tag 'v0.3.9' into develop [f7c8a16]
  • BUG,UBY: pyline.py: logging config (default INFO, -q/--quiet, -v/--verbose (DEBUG)) [8a060ab]
  • UBY,DOC: pyline.py: log.info(('pyline.version', version)) at startup [da1e883]
  • BUG,UBY: pyline.py: log.info(('argv', argv)) [ede1d5e]
  • BUG,REF: opts['cmd'], main->(int, results[]), log opts after all config [3cf9585]
  • UBY: pyline.py: log.info(('_rgx', _regexstr)) [02bd234]
  • RLS,DOC: setup.py,pyline.py: version 0.3.10 [ea6a1fd]
  • DOC: HISTORY.rst: git-changelog.py --hdr=+ --rev 'release/0.3.10' | pbcopy [5266662]
  • MRG: Merge branch 'release/0.3.10' [aa2529a]

v0.3.9 (2016-02-14 17:58:36 -0600) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.8..v0.3.9

  • ENH: pyline.py: --version arg [a38bf5a]
  • MRG: Merge tag 'v0.3.8' into develop [85cd8e9]
  • BUG,REF: pyline.py: output-filetype/-> output-format [fbcd9e2]
  • BUG: pyline.py: only print version when opts.get('version') [ef8ac20]
  • RLS,DOC: setup.py,pyline.py: version 0.3.9 [5f2c4a6]
  • DOC: HISTORY.rst: git-changelog.py --hdr=+ --rev 'release/0.3.9' | pbcopy [ce95bae]
  • MRG: Merge branch 'release/0.3.9' [38e0393]

v0.3.8 (2016-02-14 17:34:08 -0600) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.7..v0.3.8

  • MRG: Merge tag 'v0.3.7' into develop [0cd0e3c]
  • BUG,ENH: fix CSV header row; add -O jinja:template=path.jinja support (#1,) [d5fe67b]
  • ENH: pyline.py: --version arg [818fc1d]
  • RLS: setup.py, pyline.py: version 0.3.8 [245214d]
  • DOC: HISTORY.rst: git-changelog.py --hdr=+ --rev 'release/0.3.8' | pbcopy [983b535]
  • DOC: HISTORY.rst: git-changelog.py --hdr=+ --rev 'release/0.3.8' | pbcopy [7b65d8e]
  • MRG: Merge branch 'release/0.3.8' [2f5f249]

v0.3.7 (2016-02-12 20:04:39 -0600) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.6..v0.3.7

  • Merge tag 'v0.3.5' into develop [8c5de0a]
  • ENH: pyline.py: main(args=None, iterable=None, output=None) [dd490e1]
  • UBY: pyline.py: -O chk == -O checkbox [3aa96ce]
  • UBY: pyline.py: l = line = o = obj [3aa9a81]
  • DOC: pyline.py: -f/--in/--input-file, -o/--out/--output-file [bcc9eff]
  • TST: requirements-test.txt: nose, nose-parameterized, nose-progressive [213e0c0]
  • BUG: pyline: collections.OrderedDict, return 0 [5fd1114]
  • DOC: setup.py: install_requires=[] [a41bf30]
  • TST,BUG,CLN: test_pyline.py: chk, main(_args), docstrings, #opts._output.close() [0254f30]
  • Merge tag 'v0.3.6' into develop [f46f90c]
  • DOC,REF: pyline.py: type_func->typefunc, docstrings [08c8d9c]
  • UBY: pyline.py: [--input-delim-split-max|--max|--max-split] [b509726]
  • REF: pyline.py: ResultWriter.get_writer ValueError, expand [143c5f7]
  • DOC: pyline.py: usage docstring, main docstring [bc44747]
  • TST: tests/test_pylinepy: more tests of sorting [b60750a]
  • DOC: pyline.py: docstrings [89ea5c7]
  • BLD,TST,BUG: Makefile, setup.py, pyline.py, test_pyline.py: pyline.main does sorting, kwargs, opts obj [e80cde6]
  • TST,REF: split to SequenceTestCase, LoggingTestCase, Test* [62ff39b]
  • TST: tests/test_pyline.py: TestPylinePyline.test_30_pyline_codefunc [49928d5]
  • Merge branch 'feature/split_tests' into develop [ef63a18]
  • RLS,DOC: README.rst, setup.py, pyline.py 0.3.7 description [9fc262e]
  • Merge branch 'release/0.3.7' [07b00b2]

v0.3.6 (2015-12-21 04:17:23 -0600) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.5..v0.3.6

  • BUG: pyline.py: #!/usr/bin/env python2 [9729816]
  • RLS: HISTORY.rst, init.py, pyline.py, setup.py: version = '0.3.6' [a463d39]
  • Merge branch 'hotfix/0.3.6' [445c089]

v0.3.5 (2015-05-24 20:58:39 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.4..v0.3.5

  • Merge tag 'v0.3.4' into develop [3ec1391]
  • CLN: patchheader: rm [c9f6304]
  • ENH: pyline.py: add a codefunc() kwarg [be8dcc8]
  • BUG,DOC: pyline.py: set default regex_options to '', optparse helpstrings [fa9e9cb]
  • DOC: pyline.py: docstrings (calling a function, stdlib/vendoring) [ee22e2c]
  • ENH,TST: pyline.py: add a codefunc() kwarg [91aa0a8]
  • RLS: setup.py, init, HISTORY: v0.3.5, git log --format='* %s [%h]' master..develop [78f3ad9]
  • Merge branch 'release/0.3.5' [065797d]

v0.3.4 (2015-04-25 06:48:47 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.3..v0.3.4

  • Merge tag 'v0.3.3' into develop [e630114]
  • RLS: HISTORY.rst, init.py, setup.py: v0.3.4 [e448183]
  • Merge branch 'release/0.3.4' [612228d]

v0.3.3 (2015-04-25 06:43:37 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.2..v0.3.3

  • Merge tag 'v0.3.2' into develop [061840b]
  • BUG: pyline.pyline.main [db71796]
  • DOC,BLD,CLN: Makefile: sphinx-apidoc --no-toc [209bff8]
  • TST,CLN: pyline.py: remote -t/--test option [2629924]
  • DOC,CLN: modules.rst: remove generated modules.rst [abdc00d]
  • BUG, ENH, BUG, TST: [b5a21e7]
  • RLS: init.py, setup.py: v0.3.3 [eb81129]
  • BLD: Makefile: release (dist), twine [7e602c8]
  • Merge branch 'release/0.3.3' [c0df4ab]

v0.3.2 (2014-11-30 19:49:42 -0600) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.1..v0.3.2

  • Merge tag 'v0.3.1' into develop [a3f8c1c]
  • ENH: Add pyline.main (pyline.pyline.main) for 'python -m pyline' [1bd5e10]
  • DOC: README.rst [a26d97a]
  • DOC: HISTORY.rst: link to Source: http://code.activestate.com/recipes/437932-pyline-a-grep-like-sed-like-command-line-tool/ [5871727]
  • DOC: usage.rst: add :shell: option to 'pyline --help' output [d1f32de]
  • BUG: pyline/init.py: Set pyline.pyline.main correctly [49ae891]
  • DOC: pyline/pyline.py: docstrings, import path as pathpy [178af4e]
  • RLS: HISTORY.txt, pyline/init.py, setup.py: set version to v0.3.2 [6c547e4]
  • Merge branch 'release/0.3.2' [10b84f5]

v0.3.1 (2014-10-27 07:53:27 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.3.0..v0.3.1

  • Merge tag 'v0.3.0' into develop [35a380b]
  • DOC: README.rst [f803665]
  • Merge branch 'hotfix/readme-travis-link' [35f7b44]
  • Merge tag 'vreadme-travis-link' into develop [6849887]
  • DOC: setup.py version 0.3.1 [a7fae60]
  • Merge branch 'release/0.3.1' [276d16b]

v0.3.0 (2014-10-27 07:34:58 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.2.0..v0.3.0

  • Added tag v0.2.0 for changeset cddc5c513cd2 [c53a725]
  • DOC: Update README.rst: typo -output-filetype -> --output-filetype [6897954]
  • DOC: Update README.rst: update 'Features' [548c426]
  • DOC: Update README.rst: update 'Features' [273b475]
  • DOC: Update README.rst: update 'Features' [254ed95]
  • DOC: Update README.rst add additional link to docs [8415a7c]
  • BLD,DOC: Update requirements.txt: add ../ (from ./docs) as editable [d94ff0e]
  • Revert "BLD,DOC: Update requirements.txt: add ../ (from ./docs) as editable" [fa062b8]
  • DOC: program-output:: -> command-output:: [984b8a6]
  • ENH,BUG,CLN: #10, #12, #13 [a75d2f9]
  • CLN: remove _import_path_module [0cc9bb9]
  • RLS: pyline v0.3.0 [14941af]
  • Merge branch 'release/0.3.0' [53609dc]

v0.2.0 (2014-08-24 14:44:31 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.1.5..v0.2.0

  • Added tag v0.1.5 for changeset 8cd9c44a80ab [4bb3fc7]
  • BLD: Add docs for 'make release'; remove bdist_wheel upload [e76b592]
  • BLD: Add docs for 'make release': HISTORY.rst [e5b3e9a]
  • ENH: Add checkbox output formatter (closes #5) [46b7177]
  • BUG: add NullHandler to logger (closes #6) [a9fac28]
  • RLS: Release v0.2.0 [9ef4a25]
  • Added tag v0.2.0 for changeset f510a75a37a8 [38c7eeb]

v0.1.5 (2014-05-12 20:59:34 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.1.4..v0.1.5

  • Added tag v0.1.4 for changeset c79a1068cb1c [0abdc5e]
  • DOC: setup.py keywords and classifiers [9079d03]
  • DOC: Update HISTORY.rst: 0.1.0 -> 0.1.5 [9bfe2a5]
  • BLD: bump version to v0.1.5 [0af9381]

v0.1.4 (2014-05-12 20:42:52 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.1.3..v0.1.4

  • Added tag v0.1.3 for changeset d49705961509 [4f8cfec]
  • DOC: correct license and download_url in setup.py [49ea953]

v0.1.3 (2014-05-12 20:30:47 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.1.2..v0.1.3

  • Added tag v0.1.2 for changeset 09cca8fa5555 [828d223]
  • DOC: missing newline in description [63a442c]
  • DOC: version bump, setup description [53ad0f4]

v0.1.2 (2014-05-12 20:24:26 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.1.1..v0.1.2

  • Added tag v0.1.1 for changeset 13ad121ea966 [5727951]
  • BLD: add pathlib and path.py to requirements.txt [aa6dda7]
  • DOC,BLD,BUG: setup.py build_long_description, file handles [f7a73c1]
  • DOC: README.rst: remove includes [2d2bd6f]
  • DOC: version bump, setup description [e920ff2]

v0.1.1 (2014-05-12 19:41:54 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' v0.1.0..v0.1.1

  • DOC,BLD: Update AUTHORS.rst, HISTORY.rst, README.rst, docs/license.rst [7b087c8]
  • CLN: pyline rename arg[0] _input -> iterable [7040271]
  • BUG: default command in -- ls | pyline -p " p = path = Path(line.strip()) [30dce3a]
  • LOG: log.info(cmd) ... after shell parsing, exception [c449765]
  • CLN: pep8 test command kwargs formatting [993c65a]
  • DOC: README.rst; ReST doesn't seem to like `path.py`_ .. _path.py:, links [209ecb5]
  • TST: Update setup.py test command (runtests -v ./tests/test*.py) [bc84652]
  • TST: tox.ini: make html rather than sphinx-build [c96b3b0]
  • CLN: factor out _import_pathmodule and get_path_module [d0aebfb]
  • TST: move tests from pyline.py to tests/test_pyline.py [477fbb4]
  • BUG: file handles (was causing tests to fail silently) [80e84b6]
  • CLN: move optparse things into get_option_parser() [723a8b7]
  • BLD: Release 0.1.1 [3f9f56f]

v0.1.0 (2014-05-12 04:03:15 -0500) ++++++++++++++++++++++++++++++++++ ::

git log --reverse --pretty=format:'* %s [%h]' b1303ba..v0.1.0

  • CLN: Update .gitignore and .hgignore [0d07ad1]
  • DOC: Update README.rst: comment out unconfigured badges [b0e0fc1]
  • ENH: Add pyline script from https://github.com/westurner/dotfiles/blob/e7f766f3/src/dotfiles/pyline.py [ce2dba8]
  • BLD,TST: Add py.test runtests.py and setup.py:PyTestCommand [953edbe]
  • BUG: try/except import StringIO (Python 3 compatibility) [97d5781]
  • BLD: remove py33 section from tox.ini for now [b103587]
  • BLD: remove py33 section from tox.ini for now [2ff4a77]
  • BLD: Update tox.ini, .travis.yml, reqs, docs/conf [13b5487]
  • CLN: pyline cleanup [9724f8e]
  • CLN: update .hgignore [59196b7]

0.0.1 (Unreleased) +++++++++++++++++++ | Source: http://code.activestate.com/recipes/437932-pyline-a-grep-like-sed-like-command-line-tool/

  • Updated 2012.11.17, Wes Turner
  • Updated 2005.07.21, thanks to Jacob Oscarson
  • Updated 2006.03.30, thanks to Mark Eichin

======= Credits

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc