Skip to content

App SDK Migration (to depend on Holoscan SDK) #441

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 24 commits into from
Aug 31, 2023
Merged

Conversation

MMelQin
Copy link
Collaborator

@MMelQin MMelQin commented Jul 19, 2023

This is a large change set to review, for the reason that these are changes are to base the App SDK on Holoscan SDK and incremental merger into main is not feasible.

Major changes:

  • Exposing Holoscan SDK modules as monai.deploy ones by creating a similar sub module structure and importing Holoscan modules within each
  • Updated MONAI Deploy App SDK native modules/classes to the new core and other modules
  • Updated the example applications
  • Updated the Jupyter notebooks
  • Updated Doc changes

Example apps can be tested directly, though the model file and test files must be downloaded and staged local, with environment variables set to point to the input, model, and output folders.

Alternatively, the example apps can be tested with the Jupyter notebooks, as they include the steps to download the test data and set environment variables for input etc. However, please avoid 02_mednist_app-prebuilt as it pulls the code from the main branch, hence not going to work. Also, for the notebooks, the MAP packaging step needs to be modified to provide the App SDK Wheel file built in this branch, with the --monai-deploy-sdk-file option, as well as setting --sdk-version 0.6.0; this is needed because the Packager would otherwise pip install the App SDK from PyPi, which obviously does not have v0.6.0 App SDK yet. So, to prepare the Wheel file

  • checkout this branch, and cd to the project root
  • create and activate venv
  • ./run setup
  • ./run build
  • In the dist folder, find the Wheel file, e.g. monai_deploy_app_sdk-0.5.1+18.gf829a6c-py3-none-any.whl
  • For the Packaging step of all the Jupyter Notebooks, add the versions and sdk file, e.g.
    monai-deploy package my_app -m {models_folder} -c my_app/app.yaml -t {tag_prefix}:1.0 --platform x64-workstation -l DEBUG --sdk-version 0.6.0 --monai-deploy-sdk-file {sdk_wheel}

Note:

Sonarcloud has complaints about many commented out code in the example apps, but they were left there for good reasons. It also complains about duplications, which are unavoidable because the example applications need to implement the same or similar code.
Unit test coverage is low, though the Jupyter notebooks are for functional and integration tests which exercise the App SDK more thoroughly.

Side Note:

Not impacting the review and such, just a bit of the history of this branch.

This pull request is from a dev branch which was merged onto from a prior migration dev branch with all the commits squashed, as seen below

$ git checkout main
$ git pull
$ git checkout -b mqin/v0.6_from_0.5.1
$ git merge --squash mqin/sdk_migration
$ git commit -s
$ git push --set-upsream v0.6_from_0.5.1

@MMelQin MMelQin self-assigned this Jul 19, 2023
@MMelQin MMelQin changed the title SDK Migration (to depend on Holoscan SDK), rebased on v0.5.1 [WIP]SDK Migration (to depend on Holoscan SDK), rebased on v0.5.1 Jul 19, 2023
@MMelQin MMelQin changed the title [WIP]SDK Migration (to depend on Holoscan SDK), rebased on v0.5.1 App SDK Migration (to depend on Holoscan SDK) Aug 24, 2023
@vikashg
Copy link
Collaborator

vikashg commented Aug 25, 2023

Hi @MMelQin
Quick question as I am reviewing this. Did we change how app().run() functions. I remember in the previous version you can do the following for setting the input directory as app().run(input=path_to_some_input_dir). But now we cannot do this, even though the Application has an argument input.
I tried the simple_imaging_app in the examples and it works fine. But when I try to change the input directory to something else as

app().run(input='./input2')

I get the following error

(monai-deploy-test) gupta@DIGI1036734:~/disk/Tools/CodeReview/monai-deploy-app-sdk/examples/apps/simple_imaging_app$ python app.py 
Traceback (most recent call last):
  File "app.py", line 78, in <module>
    App().run(input='./input2')
TypeError: run(): incompatible function arguments. The following argument types are supported:
    1. (self: holoscan.core._core.Application) -> None

Invoked with: <holoscan.Application: name:>; kwargs: input='./input2'

But the command line works just fine

(monai-deploy-test) gupta@DIGI1036734:~/disk/Tools/CodeReview/monai-deploy-app-sdk/examples/apps/simple_imaging_app$ python app.py -i ./input2
sample_data_path: input
[info] [gxf_executor.cpp:210] Creating context
[warning] [gxf_extension_manager.cpp:132] Unable to load extension from 'libgxf_bayer_demosaic.so' (error: libnppicc.so.11: cannot open shared object file: No such file or directory)
[info] [gxf_executor.cpp:1595] Loading extensions from configs...
[info] [gxf_executor.cpp:1741] Activating Graph...
[info] [gxf_executor.cpp:1771] Running Graph...
[info] [gxf_executor.cpp:1773] Waiting for completion...
[info] [gxf_executor.cpp:1774] Graph execution waiting. Fragment: 
[info] [greedy_scheduler.cpp:190] Scheduling 3 entities
Number of times operator sobel_op whose class is defined in sobel_operator called: 1
Input from: input, whose absolute path: /home/gupta/disk/Tools/CodeReview/monai-deploy-app-sdk/examples/apps/simple_imaging_app/input
Number of times operator median_op whose class is defined in median_operator called: 1
Number of times operator gaussian_op whose class is defined in gaussian_operator called: 1
Data type of output: <class 'numpy.ndarray'>, max = 0.3480125635568479
Data type of output post conversion: <class 'numpy.ndarray'>, max = 88
[info] [greedy_scheduler.cpp:369] Scheduler stopped: Some entities are waiting for execution, but there are no periodic or async entities to get out of the deadlock.
[info] [greedy_scheduler.cpp:398] Scheduler finished.
[info] [gxf_executor.cpp:1783] Graph execution deactivating. Fragment: 
[info] [gxf_executor.cpp:1784] Deactivating Graph...
[info] [gxf_executor.cpp:1787] Graph execution finished. Fragment: 
[info] [gxf_executor.cpp:229] Destroying context

@MMelQin
Copy link
Collaborator Author

MMelQin commented Aug 25, 2023

@vikashg Thanks for reviewing the pull request. The run method does not have the desired behavior that we had in the App SDK 0.5 and earlier, basically this is saying that the input and output folders can NOT be passed in via this method. Also, on the application does not parse command line arguments for setting the input and output folders, either. This is mostly due to the underlying Holoscan SDK.

The environment variables are now used to define the input and output folders, though the parsing of such is still not the built-in functionalities of the base Application class, and each derived Application class needs to explicitly create the app context to parse them.

@vikashg
Copy link
Collaborator

vikashg commented Aug 25, 2023

Thanks @MMelQin. I am going over it. Few things are interesting and definitely new like Fragments and Condition. So I am going over that on the holoscan documentation.

@MMelQin
Copy link
Collaborator Author

MMelQin commented Aug 25, 2023

Thanks @MMelQin. I am going over it. Few things are interesting and definitely new like Fragments and Condition. So I am going over that on the holoscan documentation.

Thanks @vikashg . Yes, the underlying Holoscan SDK does introduce some new capabilities while losing a few for the time being, e.g. decorators for I/O spec and dependencies, and auto-mapping of file I/O for the app.

The Application class derives from Fragment, while an application implementation can also have multiple concrete fragments, enabling the app to be run on multiple nodes, each with specific fragment(s). Right now, none of the examples makes use of this.

The Condition is a very useful, allowing the Operator class to define certain input as optional, which does not require the actual input at runtime before it can start executing. Similarly, a output can be defined as "dangling", meaning downstream receivers are optional. This makes the Operator class implementation much more flexible.

I plan to have a migration guide as part of the release note to highlight the few main changes.

Copy link
Collaborator

@vikashg vikashg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Ming It looks good to me. Some of the issues I encountered I already mentioned to you. But generally looks great.
Thanks for the amazing work.

@MMelQin
Copy link
Collaborator Author

MMelQin commented Aug 31, 2023

Thank you so much @vikashg for the approval. For the enhancement suggestions, we'll create new issues to address them in the coming releases.

MMelQin added 14 commits August 31, 2023 15:58
commit ec84820
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Jul 18 11:42:45 2023 -0700

    Aligned with the changes in v0.5.1 before rebase/merge

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 422add1
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon Jul 17 15:28:19 2023 -0700

    Ran the remaining notebooks post Holoscan RC1 fix

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 3b06f9b
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon Jul 17 12:13:35 2023 -0700

    Made sure to use the App SDK in dev and the latest Holoscan build (post RC1)

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit fa7f913
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon Jul 17 12:06:29 2023 -0700

    Ran the notebook successfully after Holoscan SDK fixed the early termination bug

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 154b242
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon Jul 3 15:46:26 2023 -0700

    Update notebook after testing with App SDK on Holoscan v0.6 RC1

    Note that apps with more complex graph, with fork and join, terminates early.
    This issue had came out after some commits in the Holoscan just before RC1.
    Will file a bug and investigate in Holoscan

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit cfabded
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 30 15:27:16 2023 -0700

    Update after rerun notebook

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 6f34784
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 30 13:19:17 2023 -0700

    Updated the notebook

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 6a04890
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 30 10:47:36 2023 -0700

    Remove importing a removed function from holoscan logger

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 5088c66
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 30 00:04:08 2023 -0700

    Remove import load_env_log_level in apps as the function is removed from holoscan

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 5d6ed8c
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Jun 27 18:47:59 2023 -0700

    Fix formatting complaints

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 4d380f7
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Jun 27 18:25:13 2023 -0700

    Remove redundant condition

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 30e13c7
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Jun 27 18:04:27 2023 -0700

    Updated the app to resolve PIL Image issue running in MAP container

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 78d58ff
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 23 18:39:20 2023 -0700

    Cleaned output before each run

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit a621e4b
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 23 17:54:46 2023 -0700

    update after rerunning cell by cell with kernal restart.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 9f14646
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 23 16:54:17 2023 -0700

    Update notebook after testing with latest SDK

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 2a42f21
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Jun 2 16:44:16 2023 -0700

    Ran this notebook with dev version of holoscan v0.6

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 8883028
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue May 16 00:08:38 2023 -0700

    Migrated multi-AI and updated MedNIST Jupyter notebook

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 5fd613c
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon May 15 17:21:34 2023 -0700

    Add migrated Jupyter notebook for MedNIST app.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 70ee706
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu May 11 23:33:50 2023 -0700

    Update Jupyter notebook

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 94d093a
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue May 9 00:04:07 2023 -0700

    fix complaint

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit a4b9285
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon May 8 23:53:33 2023 -0700

    Fix mytype complaint

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 3e12c85
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon May 8 23:00:53 2023 -0700

    Fix pytype complaint, details below

    File "/home/runner/work/monai-deploy-app-sdk/monai-deploy-app-sdk/monai/deploy/core/app_context.py",
      line 49, in update: Type annotation for models does not match type of assignment [annotation-type-mismatch]
      Annotation: monai.deploy.core.models.model.Model (Did you mean 'typing.Optional[monai.deploy.core.models.model.Model]'?)
      Assignment: None
      In assignment of type: Optional[monai.deploy.core.models.model.Model]

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 9fb7de6
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon May 8 22:51:09 2023 -0700

    Removed unused import

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 44f7164
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon May 8 18:10:20 2023 -0700

    Removed explictily loading from model file path, after model factory is used.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 708a05e
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon May 8 10:46:55 2023 -0700

    Fixed a typo and format

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 968b853
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri May 5 20:22:00 2023 -0700

    WIP add Jupyter notebook for ClaraViz integration

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 36d632e
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu May 4 23:47:25 2023 -0700

    WIP Jupyter notebook update

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 247a352
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu May 4 00:07:15 2023 -0700

    Mypy complaints as well as cleanup

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit e088953
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed May 3 23:10:15 2023 -0700

    Flake8 complaint

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 4b4d34c
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed May 3 22:37:48 2023 -0700

    Flake 8 complaint of unused import

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 016add6
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed May 3 22:10:51 2023 -0700

    Enabled model factory and migrated multi-AI app

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 9675245
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 28 19:56:46 2023 -0700

    Removed unused imports

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 58da261
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 28 19:05:44 2023 -0700

    Updated the liver tumor example

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit b697b0e
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 28 18:27:05 2023 -0700

    Migrated the UNetR app

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 3e4b839
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 28 15:24:16 2023 -0700

    Saving uncompress nii file to save 10s in execution time

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 60ffd9e
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 27 22:56:02 2023 -0700

    iSort complaint

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit a7e6702
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 27 21:12:01 2023 -0700

    Migrated the MEDNIST app

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit edfd6e7
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 27 17:54:07 2023 -0700

    Why the "./run check --autofix" again did not fix the complaint

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 5d7c7d8
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 27 17:41:29 2023 -0700

    Migrated the breast density classification app, and fixed a bug.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 7626078
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 19:54:42 2023 -0700

    Removed commented out code

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit df8db48
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 19:43:13 2023 -0700

    More missed complaint with local "./run check --autofix"

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit fec24aa
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 18:30:16 2023 -0700

    flake8 complained but "./run check --autofix" did not.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 40b75be
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 18:16:34 2023 -0700

    Fix mypy complaints for already migrated code.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit df4cfba
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 12:34:15 2023 -0700

    iSort wants the import its way!

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 3c40512
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 12:13:53 2023 -0700

    More explicit imports to quiet mypy complaints

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 77ce0f6
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 26 11:33:33 2023 -0700

    Use both explicit and wildcard import to quiet mypy complaints

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 4671a2c
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 25 22:03:07 2023 -0700

    fix typo

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 29844a9
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 25 21:45:22 2023 -0700

    Properly add the fucntion to fix holoscan init file.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 1145c15
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 25 15:38:55 2023 -0700

    Use the correct path for the pacakge __init__.py

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit d200043
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 25 15:21:07 2023 -0700

    In fact needed to fix holoscan/__init__.py

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit b95650a
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 25 14:42:37 2023 -0700

    Minor formatting change

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit ea9ae5d
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 25 14:32:24 2023 -0700

    Replace holoscan core __init__.py from v0.6 to fix import errors

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 3f7862a
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon Apr 24 13:32:53 2023 -0700

    AVoid import holoscan.operator as it drags in too much dependencies

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit f54fa7c
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 22:21:59 2023 -0700

    Fix pytype complaints, and remove an unused local variable

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit d45df16
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 21:57:13 2023 -0700

    One mor pytype fix

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 7483e0a
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 20:09:47 2023 -0700

    Fix pytype complaints

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit a0f013d
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 19:29:11 2023 -0700

    Missed checking in setup.cfg

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 000fa61
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 19:21:21 2023 -0700

    Fix Flake8 complaints, e.g. "import *" which is needed.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit de06258
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 19:00:37 2023 -0700

    Fix more Black complaints

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 1271733
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 23 17:39:27 2023 -0700

    Using the `!r` to replace literal quotes

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 6dda9d8
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 21 20:39:42 2023 -0700

    iSort now complains about the best practice import order!

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 97fb812
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 21 20:19:22 2023 -0700

    Fix Black complaints

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit f1d05c3
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 21 17:24:16 2023 -0700

    update min version of Python to 3.8 as required by Holoscan SDK

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 5f16e1b
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 12 18:17:21 2023 -0700

    Migrate more apps

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit fff394d
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 12 12:09:24 2023 -0700

    Migrate the ClaraViz operator

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 89153e0
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 12 00:09:30 2023 -0700

    Migrated the bundle inference operator and the sample app using it.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 84af3e1
Author: M Q <mingmelvinq@nvidia.com>
Date:   Mon Apr 10 00:10:50 2023 -0700

    Migrated stl writer and the liver tumor seg example.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit ccaf1de
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sun Apr 9 18:06:53 2023 -0700

    Updated the stl writer

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit f28e33c
Author: M Q <mingmelvinq@nvidia.com>
Date:   Sat Apr 8 00:46:52 2023 -0700

    PNG converter operator and the DICOM series to image app final update

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 228d195
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 7 18:48:39 2023 -0700

    Add optional input to seg writer for overriding the output folder.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit f43bc35
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 7 12:14:58 2023 -0700

    Fine tune the env var names

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit f2dbf45
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 7 10:53:20 2023 -0700

    Change to env var prefix to HOLOSCAN_

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit d62dd39
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Apr 7 00:28:57 2023 -0700

    Make DICOM PDF and SR writer consistent

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 91ffbdb
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 6 21:43:04 2023 -0700

    Also dicom loader to support optional named input port for folder path to dcm files

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 21e59fc
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 6 20:41:25 2023 -0700

    Enhanced nii loader operator after testing with a single operator app.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 91652fc
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 6 19:13:45 2023 -0700

    Migrated the simple nii loader

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 3c58884
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 6 15:19:03 2023 -0700

    Add the missed sub modules

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 24960d4
Author: M Q <mingmelvinq@nvidia.com>
Date:   Thu Apr 6 00:33:40 2023 -0700

    Enhanced the code and documentation

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 60e1854
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 5 16:21:23 2023 -0700

    Make the contructor of the derived operators explictly requiring fragment as arg.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit c1395ee
Author: M Q <mingmelvinq@nvidia.com>
Date:   Wed Apr 5 13:23:09 2023 -0700

    Make use of Conditiontype.None to support dangling outputs

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit f81c905
Author: M Q <mingmelvinq@nvidia.com>
Date:   Tue Apr 4 18:23:39 2023 -0700

    WIP check-in mostly for the enhanced simple imaging app.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 553bd99
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Mar 31 16:02:09 2023 -0700

    Bump the min version of holoscan to the newly released 0.5.0

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 08d7147
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Mar 31 13:55:12 2023 -0700

    Add another app yaml file.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 1144ddf
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Mar 31 13:53:46 2023 -0700

    Add the app config yaml file, which may be removed later.

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

commit 22d14f2
Author: M Q <mingmelvinq@nvidia.com>
Date:   Fri Mar 31 13:38:27 2023 -0700

    WIP and initial commit

    Signed-off-by: M Q <mingmelvinq@nvidia.com>

Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
…nput folder

Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
MMelQin added 10 commits August 31, 2023 15:58
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
…ctly

Signed-off-by: M Q <mingmelvinq@nvidia.com>
Signed-off-by: M Q <mingmelvinq@nvidia.com>
@MMelQin MMelQin force-pushed the mqin/v0.6_from_0.5.1 branch from 9d2fed0 to 30fcfdd Compare August 31, 2023 23:01
@sonarqubecloud
Copy link

SonarCloud Quality Gate failed.    Quality Gate failed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 36 Code Smells

No Coverage information No Coverage information
7.6% 7.6% Duplication

idea Catch issues before they fail your Quality Gate with our IDE extension sonarlint SonarLint

@MMelQin MMelQin merged commit 06a4182 into main Aug 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants