#python #cli #cli-tool #yaml #audit #watch #py-sprint

nightly bin+lib pysprint-cli

A CLI tool for the Python package PySprint

1 unstable release

0.1.0-alpha.0 Apr 7, 2021

#29 in #audit

MIT/Apache

56KB
750 lines

PySprint-CLI

Build status

Build Status

The command line tool for PySprint to evaluate interferograms immediately on record.

Usage

First, set up an eval.yaml file where you will work. This defines the behaviour of the program. The full key and value list will be included soon. Here is an example:

load_options:
  - skiprows: 8 # lines
  - decimal: ","
  - delimiter: ";"
  - meta_len: 6 # lines

preprocess:
  - input_unit: "nm"
  - chdomain: true
  - slice_start: 2 # PHz
  - slice_stop: 4 # PHz

method:
  - wft

method_details:
  - heatmap
  - windows: 200 # number of windows
  - fwhm: 0.05 # PHz

before_evaluate:
  - "print('this is a point where you can')"
  - "print('interact with the program')"

evaluate:
  - reference_frequency: 2.355 # PHz
  - order: 3 # up to TOD

after_evaluate:
  - "print('and also here, after evaluate..')"

To start watching a directory, run:

pysprint-cli watch your/path/here

To run an evaluation on an already existing filebase, run:

pysprint-cli audit your/path/here

Optionally generated files can be saved with the --persist (or -p for short) flag.

TODO!

  • TOP PRIORITY: refactor parser.rs, it is really messy

  • method options [partially ok]

  • detach [ok]

  • automock imports

  • termcolor --> color by severity [partially ok]

  • implement audit [working on it]

  • implement method switch [partially ok]

  • custom build steps

  • logging to a common result file [partially ok]

  • sort files by mod 3

Dependencies

~14–26MB
~387K SLoC