Skip to main content

The NIH OPERA suite of models with Python specific functionality

Project description

pyOPERA

Full python implementation of the NIH OPERA suite of models
docker run -it -v %cd%:/app --rm pyopera_pyopera /bin/bash
docker compose -f docker-compose.yml build
docker run --rm pyopera_pyopera ~/.local/share/pypoetry/venv/bin/poetry run coverage run -m pytest tests
docker build -t cabreratoxy/pyopera:0.0.1 .

poetry run python -m pip install -r requirements.txt  
poetry run black .  
poetry run isort .  
poetry run pylint $(find . -name "*.py" | xargs)  
poetry run pytest tests    
poetry run coverage run --source pyopera -m pytest  
poetry run coverage report --skip-empty --fail-under=85  
poetry build  
poetry config repositories.testpypi https://test.pypi.org/legacy/  

docker run --rm pyopera_pyopera /bin/bash -c 'poetry run coverage run -m pytest tests'   

TODO: Fully install poetry in the container (maybe use the long name as a variable for now) TODO: Create CI/CD for package in TestPypi and the prod Pypi (CircleCI maybe?)
TODO: Documentation using Sphinx (make sure original repo/builders are credited)
TODO: Start adding the wrapper code and files - in progress
TODO: Benchmarking with airspeed velocity
TODO: Don't repeat the library name in the Dockerfile
TODO: Struggling to run commands inside Docker from the host, will run commands from inside container for now
TODO: Test TestPypi package locally
TODO: Add actual documentation in this readme
TODO: Auto semantic versioning with poetry too
TODO: Create a python package around the Matlab package (the base files) using Poetry
TODO: Formatting/Linting/Coverage
TODO: Choose between Pytest an Unittest
TODO: Automate black, isort, pylint, coverage, pytest on build or push. - just have to finish coverage TODO: Auto docstring generating? -- used autodocstring extension for vscode
TODO: How to autobuild the base image the CI/CD will work with - could not be done

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyopera-0.1.0.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyopera-0.1.0-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file pyopera-0.1.0.tar.gz.

File metadata

  • Download URL: pyopera-0.1.0.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.9.15 Linux/5.10.16.3-microsoft-standard-WSL2

File hashes

Hashes for pyopera-0.1.0.tar.gz
Algorithm Hash digest
SHA256 174831919156428168e4da919e62a6a2a856b9fa93443596ed1b061bda8ee2a9
MD5 abaacfee08217a914dcc159e4652c2b1
BLAKE2b-256 d2db8117b96b10cf28343a697136f2aae74b6625c6e3ed29bc0d6aa26d7a0308

See more details on using hashes here.

File details

Details for the file pyopera-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyopera-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.9.15 Linux/5.10.16.3-microsoft-standard-WSL2

File hashes

Hashes for pyopera-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 079b79e493f98b597a546f96d012f31868d72033638b3f2671fb8974a0d29778
MD5 29a06e6fcd056a300fb4282521ab263a
BLAKE2b-256 7936b6b4c6b9fd17ef22ef2da118e0f01220a2962f83bf4c3f637866cec0d1ce

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page