v0.1.0 ====== This is the initial release of this repository which hosts integration documentation, examples, and code related to integrating nrtk components with the JATIC needs and use-cases. Updates / New Features ---------------------- Documentation * Added reference to original NRTK documentation. * Added ability to render documentation on Gitlab Pages. * Update README.md * Added Sphinx document rendering for MRs. The docs pages can be accessed by clicking the "View App" button located in the merge request page under the test pipeline section. * Added sphinx auto-documentation on JATIC interoperability for object detection. * Added sphinx auto-documentation on JATIC interoperability for image classification. * Added email to pyproject.toml Examples * Added an example notebook exploring the current state of several augmentation tools as well as the usability of the JATIC augmentation protocol. * Added an example notebook exploring the DPDivergence metric using the DAML tools developed by the ARIA team. * Added an example notebook exploring using Gradio as an interface for applying pyBSM perturbations. API * Added in REST API server which accepts a POST request with a JSON data payload and returns a JSON payload * Added in unit-test for POST request with REST API server * Added JSON schema pydantic file and corresponding documentation for how it should be used * Added additional POST request specifically to accept the AUKUS json schema and call our main API with that data * Added ``Dockerfile`` and ``compose.yaml`` to containerize the ``nrtk-cdao`` package and run ``nrtk-perturber-cli``. * Added config file support for loading pyBSM factories for NRTKaaS. License * Add Apache 2.0 license Interoperability * Added ``JATICDetectionAugmentation`` which performs perturbations on MAITE-protocol based object detection datasets. * Added ``COCOJATICObjectDetectionDataset``` which loads a COCO detection dataset from disk and converts it to a MAITE-protocol compliant detection dataset. * Added ``JATICObjectDetectionDataset`` which is a custom I/O bridging dataset wrapper for MAITE compliant detection datasets. * Added a utility function to save a MAITE object detection dataset to file as a COCO dataset. * Added ``JATICClassificationAugmentation`` which performs perturbations on MAITE-protocol based image classification datasets. Utils * Moved kwcoco to poetry tools dependency * Added a CLI script to perform perturbations on a sample image set. * Added ``maite-cpu`` extras option for CPU version of MAITE/torch Python Version Support * Added support for ``py3.12`` CI/CD * Updated CI test matrix to support ``py3.12`` * Added additional entrypoint testing. * Major overhaul of pipeline to improve efficiency and yml readability. * Added ``publish`` on tag to ``PyPi``. * Updated the ``docs`` building script to run properly on ``main``. Other * Refactored package into 'src/nrtk_jatic instead of 'nrtk_jatic' * Saved a repeated return value in tests/api/test_app.py to a variable to save space Fixes ----- * Updated to use ``nrtk>=0.5.3`` which patched an issue with ``numpy`` dependency resolution. * Numpy is used by the package but was never added to the list of dependencies and was instead installed indirectly from ``nrtk``. Added ``numpy`` as a required dependency, which also has the side effect of solving resolution issues. * Updated ``numpy`` hinge for ``Python 3.12`` * Updated git lfs to properly track large files in any directory.