Changelog

0.4.2 (2024-11-03)

Changes

  • Signature refactor and test,lint cleanup. [Stephen Arnold]

Fixes

  • Cleanup more docstrings and parameter names. [Stephen Arnold]

    • also bump pre-commit deps

0.4.1 (2024-08-27)

New

  • Add config option for jinja2 line statements in template func. [Stephen Arnold]

    • cleanup template test data and test func

  • Add new_csv_file option, update tests and readme. [Stephen L Arnold]

Changes

  • Update .gitchangelog.rc and regenerate changelog. [Stephen Arnold]

    • now we can match on more commit messages including dev: tag

  • Cleanup jinja template environment, enable block trim. [Stephen Arnold]

  • Add initial test data and template func, update text reader. [Stephen Arnold]

    • make sure text_file_reader handles both ID files and normal text files

  • Update tox docs envs and make default separator a semicolon. [Steve Arnold]

    • do not forget to use a comma separator for test cfg

  • Cleanup readme and docstrings. [Stephen L Arnold]

  • Allow for adjustable CSV delimiter in oscal.yaml. [Stephen L Arnold]

  • Cleanup unnecessary branches, update expected test output. [Stephen L Arnold]

  • Refactor for testing, cleanup script imports and test data. [Stephen L Arnold]

    • add some new control data files for test support

  • Improve xform_id, update tests, cleanup some lint. [Stephen L Arnold]

  • Switch oscal text report output to semicolon instead of comma. [Stephen L Arnold]

  • Add quiet cmdline arg, update attr arg so arg takes precedence. [Stephen L Arnold]

    • make sure arg overrides file value, no value means no report

  • Remove py38 from test matrix. [Stephen L Arnold]

    • xform_id(id, strip) needs at least py39 if strip is True, so fallback to nothing if no member attribute

    • skip strip test on < py39

  • Make id-strip default off, update pre-commit cfg, add cleanup. [Stephen L Arnold]

  • Allow xform_id to strip trailing zeros from ID strings. [Stephen L Arnold]

Fixes

  • Cleanup test data for new args and output. [Stephen L Arnold]

0.4.0 (2024-05-16)

New

  • Move nist profile ids from tests to pkg data, update srcs/tests. [Steve Arnold]

    • move profile ID text files to package data

    • add some helper funcs for profile ID handling

    • add related test code to test_misc

    • minor refactoring in templates and text_data_writer

    • cleanup tests and test data

  • Add ID set analysis to oscal module, update tests and default cfg. [Steve Arnold]

  • Add set subclass based on list, with ordering and sort. [Steve Arnold]

    • add tests and cleanup code

  • Give oscal module its own config, refactor load_config and tests. [Steve Arnold]

    • refactor modules for updated load_config args !minor

    • migrate appropriate config settings to new oscal

  • Add analysis script using SSG nist control files. [Steve Arnold]

    • update project files for new dependencies

  • Add templates module with tests, update project files. [Steve Arnold]

    • note this is still WIP (with bugs even)

  • Add output formatter func with tests, add support for pystache. [Steve Arnold]

    • pystache is currently a simple render func for template-y yaml

  • Add file reader to handle csv, json, yaml, and simple text files. [Steve Arnold]

    • for each type, parse into a list of objects and return the list

    • where simple text files are something like the control IDs in tests/data

  • Test fuzzy-match for analyze script, consolidate code. [Steve Arnold]

    • limit fuzzy match results using startswith input ID string

    • cleanup package modules and tests, move initial profile funcs

  • Add stub module for oscal data, update packaging and tox files. [Steve Arnold]

    • add .repolite.yml for syncing oscal-content repo

    • update tests and vendor tox plugin for shared envs

Changes

  • Restore missing py version and update package name. [Steve Arnold]

    • fixes ci release workflow

  • Add more control status reporting, update oscal yaml config. [Steve Arnold]

  • Cleanup deps and docstrings, add set compare to demo script. [Steve Arnold]

  • Still more readme cleanup. [Steve Arnold]

  • Move main module and rename leftover refs, cleanup some lint. [Steve Arnold]

  • Commit initail name changes; package, imports, readme. [Steve Arnold]

  • Make new_csv_hdrs a list again, add ID column. [Steve Arnold]

    • allow substring match in between exact match and none

    • save chk script and update default oscal.yaml

  • Oscal module and test cleanup, update packaging. [Steve Arnold]

    • add sorted output option for ssg control set match

    • eliminate unnecessary variable in yasort module

    • update test data and move most output to verbose only

    • update project files with natsort package dep

  • Wire up alternate content and use-ssg arg, update tests. [Steve Arnold]

    • update default config keys for oscal module

  • Add csv output format, flesh out oscal, cleanup code/tests. [Steve Arnold]

    • make sure text data read/write supports the same formats

    • add simple consumer test script for the above

  • Make sure yagrep uses new output func, cleanup readme. [Steve Arnold]

  • Bump tox workflow deps and cleanup/improve readme. [Steve Arnold]

  • Bump all workflow action versions. [Steve Arnold]

  • Add another text_file_reader consumer and cleanup some lint. [Steve Arnold]

  • Flesh out argparse and yaml config keys. [Steve Arnold]

Fixes

  • Make sure ID lookup works for both content sources. [Steve Arnold]

    • account for differences in SSG vs NIST control formats, at least enough for the basic ID set matching

    • oscal default glob should limit the search to either resolved profiles only or use the catalog sources

  • Cleanup pylint cruft and update test data. [Steve Arnold]

    • also apply pre-commit formatting fixes

  • Add missing test and import, update tox file. [Steve Arnold]

  • Only transform input IDs if lower, add full OE expanded list. [Steve Arnold]

  • Account for longer ID strings, update changelog and repolite cfgs. [Steve Arnold]

    • update tests and older analysis script

    • bump requirements-sync.txt for new repolite release

  • Add more depth to string xform and tests. [Steve Arnold]

    • update line length in pep8speaks config

  • Cleanup docstrings after sphinx checks. [Steve Arnold]

Other

  • Pre-release cleanup, update changelog and fix readme typos. [Steve Arnold]

  • Dev: add csv file munge option, cleanup oscal files. [Steve Arnold]

    • add munge file arg to pass in csv data to compare and append a column for id set status, eg, whether ids in the input list are present in the csv data, and then mark the new column Y/N

    • short-circuit munge file arg and feed it single column of control IDs

  • Add small set of test IDs from openembedded profile. [Steve Arnold]

0.3.0 (2024-03-12)

New

  • Add new console script, update reqs and packaging. [Steve Arnold]

  • Add support for simple control ID analysis. [Steve Arnold]

    • add utility functions for file handling and profile from filename

    • update misc tests, add small-ish test data file with IDs

    • add a first-cut script to test input IDs against oscal profile IDs

Changes

  • Add dev workflow dependency and update clean args. [Steve Arnold]

  • Cleanup new feature bits and update documentation. [Steve Arnold]

    • use dpath.values for initial path search, and either dpath or nested_lookup for extracting values

    • update readme for new script, update all the usage bits

    • add new tests and update existing tests

    • expand and cleanup tox file

  • Add new feature tests, update existing tests. [Steve Arnold]

  • Move input data sort to output var, update tox file. [Steve Arnold]

  • Cleanup script, func, docstrings, update tests. [Steve Arnold]

Fixes

  • Re-order yasort arg handling, update analyze script. [Steve Arnold]

  • Remove py37 from workflow matrix, fix test on windows. [Steve Arnold]

  • Cleanup some lint. [Steve Arnold]

0.2.2 (2023-09-05)

New

  • Add a changelog file and gitchangelog cfg, add to docs build. [Stephen L Arnold]

  • Add coverage workflow and update readme. [Stephen L Arnold]

  • Add test fixtures annd more tests, cleanup tox and test cfg. [Stephen L Arnold]

Changes

  • Bump changelog for release, add tox cmd to (re)generate changes. [Stephen L Arnold]

  • Cleanup docstrings and readme usage. [Stephen L Arnold]

  • Still more readme cleanup. [Stephen L Arnold]

  • Organnize the one test, cleanup test cfg, start using pytest. [Stephen L Arnold]

  • Post-fix cleanup and simplify list sorts. [Stephen L Arnold]

  • Minor refactoring of sorts, save current check state. [Stephen L Arnold]

  • Refactor with importlib and setuptools-scm. [Stephen L Arnold]

    • sorting is still an issue and apparently very !wip

  • Refactor from optparse to argparse, cleanup docs/docstrings. [Stephen L Arnold]

Fixes

  • Clean up docstrings in utils. [Stephen L Arnold]

  • Use sort method instead of sorted() to preserve comments. [S. Lockwood-Childs]

    sorted() returs a normal list which loses info in extra members of the CommentedSeq object, but the sort method sorts elements inside the existing CommentedSeq object

  • Bump importlib-resources version for CI compatibility. [Stephen L Arnold]

    • sprinkle some pylint: disable for issues that are not issues

0.2.1 (2023-07-16)

New

  • Wire up sorting opts, cleanup config file, update readme. [Stephen L Arnold]

    • add sdist artifact to release workflow

Fixes

  • Ci: update artifact conditional. add inspection step. [Stephen L Arnold]

0.2.0 (2023-07-15)

New

  • Add sorting script and default config, cleanup lint. [Stephen L Arnold]

  • Add more project docs to sphinx build. [Stephen L Arnold]

    • filter out/remove local file links for docs build

  • Add more config options, update tool deps and readme. [Stephen L Arnold]

    • allow more user-facing config options, add munch-stubs for mypy

    • update tool deps and cfgs to use new type stubs

    • update readme usage description

Changes

  • Readme cleanup, add note about yasort script. [Stephen L Arnold]

  • Dbg: run tox bare-ass in github runner for workflow debug. [Stephen L Arnold]

  • Import cleanup, add tox dev cmd, update workflows. [Stephen L Arnold]

  • Update readme with new usage output. [Stephen L Arnold]

Fixes

  • Cleanup GH action deprecation warnings in all workflows. [Stephen L Arnold]

  • Add pylint pre-cmd for version, revert debug changes. [Stephen L Arnold]

  • Loop through parent key, cleanup spurious warning and typo. [Stephen L Arnold]

  • Use new path to source rst for github readme rendering. [Stephen L Arnold]

  • Replace sys.argv with option parser, wire up options and args. [Stephen L Arnold]

    • yes, optparse is deprected so may be replaced in the future

Other

  • Adjust importlib version cutoff in reqs. [Stephen L Arnold]

  • Move some shared code to separate module, update pre-commit cfg. [Stephen L Arnold]

0.1.0 (2022-06-22)

New

  • Add pre-commit and pep8speaks configs, apply some cleanup. [Stephen L Arnold]

  • Add sphinx api-doc build, update readme and doc strings. [Stephen L Arnold]

  • Add arg to dump default config yaml to stdout. [Stephen L Arnold]

Changes

  • Update readme and usage output. [Stephen L Arnold]

  • Flatten cfg file, use single cfg object, cleanup doc strings. [Stephen L Arnold]

  • Integrate version, add packaging files, flesh out cfg options. [Stephen L Arnold]

  • Install pymavlink using pip without mavnative, rename MDEF var. [Stephen L Arnold]

  • Refactor input handling, update tox and readme files. [Stephen L Arnold]

  • Flesh out package layout, update readme/project files. [Stephen L Arnold]

    • main module/script currently one direction only

    • update tox file for path changes

    • generate munch type stubs, apply isort fixes

Fixes

  • Replace old thing/new thing => use importlib for cfg file. [Stephen L Arnold]

    • use external importlib pkgs first

    • make mypy ignore one of the 2 importlib imports

    • install pkg for command-line test

  • Flesh out gh OS matrix. [Stephen L Arnold]

Other

  • Add docs workflow, fix broken doc link, update ci workflow. [Stephen L Arnold]

  • Cleanup metadata/packaging and workflow files. [Stephen L Arnold]

  • Add more CI workflows for wheels, pylint, release. [Stephen L Arnold]

0.0.0 (2022-06-19)

Changes

  • Add simple ci workflow, update tox file with gh-actions. [Stephen L Arnold]

  • Apply isort fixes. [Stephen L Arnold]

  • Add tool configs, update readme and tox files. [Stephen L Arnold]

  • Add requirements file and mypy config, update tox file. [Stephen L Arnold]

Fixes

  • Cleanup unused code/imports, add one type ignore for mypy. [Stephen L Arnold]

    • upstream ruamel.yaml preserve_quotes = True type error

  • Use paparazzi.xml from pymavlink for test input. [Stephen L Arnold]

Other

  • Initial commit with test scripts and tox driver. [Stephen L Arnold]

  • Initial commit. [Steve Arnold]