-
-*/
-div.bd-toc {
- position: sticky;
-}
-
-/* Set max width of container */
-div.container-xl {
- max-width: 1400px;
-}
diff --git a/python/cucim/docs/_static/images/RAPIDS_cuCIM.png b/python/cucim/docs/_static/images/RAPIDS_cuCIM.png
deleted file mode 100644
index aa7ed8cdc..000000000
Binary files a/python/cucim/docs/_static/images/RAPIDS_cuCIM.png and /dev/null differ
diff --git a/python/cucim/docs/api_reference/cucim.CuImage.rst b/python/cucim/docs/api_reference/cucim.CuImage.rst
deleted file mode 100644
index e66690f20..000000000
--- a/python/cucim/docs/api_reference/cucim.CuImage.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-cucim.CuImage
--------------
-
-.. autoclass:: cucim.CuImage
- :members:
diff --git a/python/cucim/docs/api_reference/cucim.clara.filesystem.CuFileDriver.rst b/python/cucim/docs/api_reference/cucim.clara.filesystem.CuFileDriver.rst
deleted file mode 100644
index 9c7e0fa84..000000000
--- a/python/cucim/docs/api_reference/cucim.clara.filesystem.CuFileDriver.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-cucim.clara.filesystem.CuFileDriver
------------------------------------
-
-.. autoclass:: cucim.clara.filesystem.CuFileDriver
- :members:
diff --git a/python/cucim/docs/api_reference/cucim.clara.filesystem.rst b/python/cucim/docs/api_reference/cucim.clara.filesystem.rst
deleted file mode 100644
index 995fc0860..000000000
--- a/python/cucim/docs/api_reference/cucim.clara.filesystem.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-cucim.clara.filesystem
-----------------------
-
-.. automodule:: cucim.clara.filesystem
- :members:
diff --git a/python/cucim/docs/api_reference/cucim.clara.io.Device.rst b/python/cucim/docs/api_reference/cucim.clara.io.Device.rst
deleted file mode 100644
index 5e5cd0b3c..000000000
--- a/python/cucim/docs/api_reference/cucim.clara.io.Device.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-cucim.clara.io.Device
----------------------
-
-.. autoclass:: cucim.clara.io.Device
- :members:
diff --git a/python/cucim/docs/api_reference/cucim.clara.io.rst b/python/cucim/docs/api_reference/cucim.clara.io.rst
deleted file mode 100644
index 230d12541..000000000
--- a/python/cucim/docs/api_reference/cucim.clara.io.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-cucim.clara.io
---------------
-
-.. autoclass:: cucim.clara.io.DeviceType
diff --git a/python/cucim/docs/api_reference/cucim.rst b/python/cucim/docs/api_reference/cucim.rst
deleted file mode 100644
index f67c1fc3a..000000000
--- a/python/cucim/docs/api_reference/cucim.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-cucim
------
-
-.. testsetup::
-
- from cucim import *
-
-.. automodule:: cucim
- :members:
diff --git a/python/cucim/docs/api_reference/index.md b/python/cucim/docs/api_reference/index.md
deleted file mode 100644
index 951c37970..000000000
--- a/python/cucim/docs/api_reference/index.md
+++ /dev/null
@@ -1,28 +0,0 @@
-# API Reference
-
-
-```{toctree}
-:glob:
-:hidden:
-
-cucim
-cucim.CuImage
-cucim.clara.io
-cucim.clara.io.Device
-cucim.clara.filesystem
-cucim.clara.filesystem.CuFileDriver
-
-```
-
-## Python API
-
-```{toctree}
-:maxdepth: 2
-
-cucim
-cucim.CuImage
-cucim.clara.io
-cucim.clara.io.Device
-cucim.clara.filesystem
-cucim.clara.filesystem.CuFileDriver
-```
diff --git a/python/cucim/docs/conf.py b/python/cucim/docs/conf.py
deleted file mode 100644
index 0dbe8b296..000000000
--- a/python/cucim/docs/conf.py
+++ /dev/null
@@ -1,131 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-import os
-
-# Versioning
-with open("../../../VERSION") as f:
- version_long = f.readline().strip()
-
-extensions = [
- "sphinx.ext.autodoc",
- "sphinx.ext.autosummary",
- "sphinx.ext.coverage",
- "sphinx.ext.doctest",
- "sphinx.ext.extlinks",
- "sphinx.ext.ifconfig",
- "sphinx.ext.napoleon",
- "sphinx.ext.todo",
- "sphinx.ext.viewcode",
- "sphinx.ext.intersphinx",
- "sphinxcontrib.bibtex",
- "myst_nb",
- "sphinx_copybutton",
- "sphinx_togglebutton",
- "sphinx_panels",
- "ablog",
- "sphinxemoji.sphinxemoji",
-]
-# source_suffix = {
-# '.rst': 'restructuredtext',
-# '.ipynb': 'myst-nb',
-# '.myst': 'myst-nb',
-# }
-master_doc = "index"
-project = "cuCIM"
-year = "2020-2021"
-author = "NVIDIA"
-copyright = "{0}, {1}".format(year, author)
-version = release = version_long
-
-pygments_style = "trac"
-templates_path = ["."]
-extlinks = {
- "issue": ("https://github.com/rapidsai/cucim/issues/%s", "#"),
- "pr": ("https://github.com/rapidsai/cucim/pull/%s", "PR #"),
-}
-# on_rtd is whether we are on readthedocs.org
-on_rtd = os.environ.get("READTHEDOCS", None) == "True"
-
-if not on_rtd: # only set the theme if we're building docs locally
- html_theme = "pydata_sphinx_theme" # 'sphinx_book_theme'
- # https://github.com/pandas-dev/pydata-sphinx-theme
- # https://pydata-sphinx-theme.readthedocs.io/en/latest/user_guide/index.html
-
-html_use_smartypants = True
-html_last_updated_fmt = "%b %d, %Y"
-html_split_index = False
-# html_sidebars = {
-# '**': ['searchbox.html', 'globaltoc.html', 'sourcelink.html'],
-# }
-html_short_title = "%s-%s" % (project, version)
-
-napoleon_use_ivar = True
-napoleon_use_rtype = False
-napoleon_use_param = False
-
-html_show_sourcelink = True
-
-# Options for linkcheck builder
-#
-# Reference
-# : https://www.sphinx-doc.org/en/master/usage/configuration.html?highlight=linkcheck#options-for-the-linkcheck-builder) # noqa
-linkcheck_ignore = [r"^\/", r"^\.\."]
-
-# Options for sphinx.ext.todo
-# (reference: https://www.sphinx-doc.org/en/master/usage/extensions/todo.html)
-
-todo_include_todos = True
-
-# Options for sphinxemoji.sphinxemoji
-# (reference: https://sphinxemojicodes.readthedocs.io/en/stable/#supported-codes) # noqa
-
-
-# Options for myst
-# (reference: https://myst-parser.readthedocs.io/en/latest/index.html)
-
-# https://myst-parser.readthedocs.io/en/latest/using/syntax-optional.html#markdown-figures # noqa
-myst_enable_extensions = ["colon_fence"]
-
-# Options for pydata-sphinx-theme
-# (reference: https://pydata-sphinx-theme.readthedocs.io/en/latest/user_guide/configuring.html) # noqa
-
-html_static_path = ["_static"]
-html_css_files = [
- "css/custom.css",
-]
-
-html_theme_options = {
- "external_links": [
- {
- "name": "Submit Issue",
- "url": "https://github.com/rapidsai/cucim/issues/new/choose", # noqa
- }
- ]
-}
-
-# Options for Sphinx Book Theme
-# (reference: https://github.com/executablebooks/sphinx-book-theme/blob/master/setup.py) # noqa
-
-# html_theme_options = {
-# "repository_url": "https://github.com/rapidsai/cucim",
-# "use_repository_button": True,
-# "use_issues_button": True,
-# #"use_edit_page_button": True,
-# "repository_branch": "dev",
-# #"path_to_docs": "python/cucim/docs",
-# "home_page_in_toc": True,
-# }
-
-# Options for myst-nb
-# (reference: https://myst-nb.readthedocs.io/en/latest/)
-
-# Prevent the following error
-# MyST NB Configuration Error:
-# `nb_render_priority` not set for builder: doctest
-nb_render_priority = {"doctest": ()}
-
-# Prevent creating jupyter_execute folder in dist
-# https://myst-nb.readthedocs.io/en/latest/use/execute.html#executing-in-temporary-folders # noqa
-execution_in_temp = True
-jupyter_execute_notebooks = "off"
diff --git a/python/cucim/docs/development/index.md b/python/cucim/docs/development/index.md
deleted file mode 100644
index 459110d34..000000000
--- a/python/cucim/docs/development/index.md
+++ /dev/null
@@ -1 +0,0 @@
-# Development
diff --git a/python/cucim/docs/getting_started/index.md b/python/cucim/docs/getting_started/index.md
deleted file mode 100644
index 5aad28dc5..000000000
--- a/python/cucim/docs/getting_started/index.md
+++ /dev/null
@@ -1,172 +0,0 @@
-# Getting Started
-
-```{toctree}
-:glob:
-:hidden:
-
-../notebooks/Basic_Usage.ipynb
-../notebooks/Accessing_File_with_GDS.ipynb
-../notebooks/File-access_Experiments_on_TIFF.ipynb
-../notebooks/Multi-thread_and_Multi-process_Tests.ipynb
-../notebooks/Working_with_DALI.ipynb
-../notebooks/Working_with_Albumentation.ipynb
-```
-
-## Installation
-
-Please download the latest SDK package (`cuCIM-v24.02.00-linux.tar.gz`).
-
-Untar the downloaded file.
-
-```bash
-mkdir -p cuCIM-v24.02.00
-tar -xzvf cuCIM-v24.02.00-linux.tar.gz -C cuCIM-v24.02.00
-
-cd cuCIM-v24.02.00
-```
-
-## Run command
-
-Executing `./run` command would show you available commands:
-
-```bash
-./run
-```
-```
-USAGE: ./run [command] [arguments]...
-
-Global Arguments
-
-Command List
- help ---------------------------- Print detailed description for a given argument (command name)
- Example
- download_testdata --------------- Download test data from Docker Hub
- launch_notebooks ---------------- Launch jupyter notebooks
- Build
- build_train --------------------- Build Clara Train Docker image with cuCIM (& OpenSlide)
- build_examples ------------------ Build cuCIM C++ examples
-```
-
-`./run help
` would show you detailed information about the command.
-
-```bash
-./run help build_train
-```
-```
-Build Clara Train Docker image with cuCIM (& OpenSlide)
-
-Build image from docker/Dockerfile-claratrain
-
-Arguments:
- $1 - docker image name (default:cucim-train)
-```
-
-### download_testdata
-
-It downloads test data from DockerHub (`gigony/svs-testdata:little-big`) and make it available at `notebooks/input` folder.
-
-The folder has the following four files.
-
-- `TUPAC-TR-488.svs`
-- `TUPAC-TR-467.svs`
-- `image.tif`
-- `image2.tif`
-
-#### Test Dataset
-
-`TUPAC-TR-488.svs` and `TUPAC-TR-467.svs` are from the dataset
-of Tumor Proliferation Assessment Challenge 2016 (TUPAC16 | MICCAI Grand Challenge).
-
-- Website:
-- Data link:
-
-#### Converted files
-
-- `image.tif` : 256x256 multi-resolution/tiled TIF conversion of TUPAC-TR-467.svs
-- `image2.tif` : 256x256 multi-resolution/tiled TIF conversion of TUPAC-TR-488.svs
-
-
-### launch_notebooks
-
-It launches a **Jupyter Lab** instance so that the user can experiment with cuCIM.
-
-After executing the command, type a password for the instance and open a web browser to access the instance.
-
-```bash
-./run launch_notebooks
-```
-
-```bash
-...
-Port 10001 would be used...(http://172.26.120.129:10001)
-2021-02-13 01:12:44 $ docker run --runtime nvidia --gpus all -it --rm -v /home/repo/cucim/notebooks:/notebooks -p 10001:10001 cucim-jupyter -c echo -n 'Enter New Password: '; jupyter lab --ServerApp.password="$(python3 -u -c "from jupyter_server.auth import passwd;pw=input();print(passwd(pw));" | egrep 'sha|argon')" --ServerApp.root_dir=/notebooks --allow-root --port=10001 --ip=0.0.0.0 --no-browser
-Enter New Password:
-[I 2021-02-13 01:12:47.981 ServerApp] dask_labextension | extension was successfully linked.
-[I 2021-02-13 01:12:47.981 ServerApp] jupyter_server_proxy | extension was successfully linked.
-...
-```
-
-### build_train
-
-It builds an image from the Clara Deploy SDK image. The image would install other useful python package as well as cu
-CIM wheel file.
-
-`nvcr.io/nvidian/dlmed/clara-train-sdk:v3.1-ga-qa-5` is used and `docker/Dockerfile-claratrain` has the recipe of the image.
-
-You will need to have a permission to access `nvidian/dlmed` group in NGC.
-
-```bash
-./run build_train
-
-docker run -it --rm cucim-train /bin/bash
-```
-
-### build_examples
-
-It builds C++ examples at `examples/cpp` folder by using `cmake` in `cucim-cmake` image that is built in runtime.
-
-After the execution, it would copy built file into `bin` folder and show how to execute it.
-
-```bash
-./run build_examples
-```
-
-```bash
-...
-
-Execute the binary with the following commands:
- # Set library path
- export LD_LIBRARY_PATH=/ssd/repo/cucim/dist/install/lib:$LD_LIBRARY_PATH
- # Execute
- ./bin/tiff_image notebooks/input/image.tif .
-```
-
-Its execution would show some metadata information and create two files -- `output.ppm` and `output2.ppm`.
-
-`.ppm` file can be viewed by `eog` in Ubuntu.
-```
-$ ./bin/tiff_image notebooks/input/image.tif .
-[Plugin: cucim.kit.cuslide] Loading...
-[Plugin: cucim.kit.cuslide] Loading the dynamic library from: cucim.kit.cuslide@24.02.00.so
-[Plugin: cucim.kit.cuslide] loaded successfully. Version: 0
-Initializing plugin: cucim.kit.cuslide (interfaces: [cucim::io::IImageFormat v0.1]) (impl: cucim.kit.cuslide)
-is_loaded: true
-device: cpu
-metadata: {"key": "value"}
-dims: YXC
-shape: (26420, 19920, 3)
-size('XY'): (19920, 26420)
-channel_names: (R, G, B)
-
-is_loaded: true
-device: cpu
-metadata: {"key": "value"}
-dims: YXC
-shape: (1024, 1024, 3)
-size('XY'): (1024, 1024)
-channel_names: (R, G, B)
-[Plugin: cucim.kit.cuslide] Unloaded.
-
-$ eog output.ppm
-$ eog output2.ppm
-```
diff --git a/python/cucim/docs/index.md b/python/cucim/docs/index.md
deleted file mode 100644
index 6789e7961..000000000
--- a/python/cucim/docs/index.md
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-```{toctree}
-:maxdepth: 3
-:hidden:
-
-getting_started/index
-api_reference/index
-release_notes/index
-roadmap/index
-```
-
-
-
-# cuCIM Documentation
-
-Current latest version is [Version 24.02.00](release_notes/v24.02.00.md).
-
-**cuCIM** a toolkit to provide GPU accelerated I/O, image processing & computer vision primitives for N-Dimensional images with a focus on biomedical imaging.
-
-:::{figure-md} fig-cucim-architecture
-:class: myclass
-
-
-
-RAPIDS cuCIM Architecture
-:::
-
-
-
-
-
-
diff --git a/python/cucim/docs/release_notes/index.md b/python/cucim/docs/release_notes/index.md
deleted file mode 100644
index 84183cc4d..000000000
--- a/python/cucim/docs/release_notes/index.md
+++ /dev/null
@@ -1,60 +0,0 @@
-# Release Notes
-
-```{toctree}
-:glob:
-:hidden:
-:maxdepth: 2
-
-v0.19.0
-v0.18.3
-v0.18.2
-v0.18.1
-v0.18.0
-v0.3.0
-v0.2.0
-v0.1.1
-v0.1.0
-```
-
-## Version 0.19
-
-```{toctree}
-:maxdepth: 2
-
-v0.19.0
-```
-
-## Version 0.18
-
-```{toctree}
-:maxdepth: 2
-
-v0.18.3
-v0.18.2
-v0.18.1
-v0.18.0
-```
-
-## Version 0.3
-
-```{toctree}
-:maxdepth: 2
-
-v0.3.0
-```
-
-## Version 0.2
-
-```{toctree}
-:maxdepth: 2
-
-v0.2.0
-```
-## Version 0.1
-
-```{toctree}
-:maxdepth: 2
-
-v0.1.1
-v0.1.0
-```
diff --git a/python/cucim/docs/release_notes/v0.1.0.md b/python/cucim/docs/release_notes/v0.1.0.md
deleted file mode 100644
index 0d2f40150..000000000
--- a/python/cucim/docs/release_notes/v0.1.0.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# Version 0.1.0 (October 28, 2020)
-
-## What are provided in the package?
-
-- API Documents
-- C++ & Python library packages
-- Example project (using CMake. For C++)
-- Example code in a Jupyter notebook (with a docker image)
-
-## Features
-
-For v1, we have a limited feature focusing on generic tiled/multi-resolution TIFF file format (Jpeg-compressed RGB image).
-
-- Loading part of the image using read_region() API
-- Saving the loaded image in .ppm format (loadable by 'eog' viewer in Ubuntu or PIL library in Python)
-
-## Limitations
-
-- The following feature is not implemented yet
- - Accessing image data through container() API (in C++) or as a numpy array (using `__array_interface__` in Python)
-- Errors are not handled properly yet (e.g., loading non-existing file would cause a crash)
-- Some metadata (e.g., physical size) is hard-coded for now
-- C++ library is forced to set `_GLIBCXX_USE_CXX11_ABI` to 0 due to [Dual ABI](https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html) problem
- - Will package CXX11 ABI library separately later
diff --git a/python/cucim/docs/release_notes/v0.1.1.md b/python/cucim/docs/release_notes/v0.1.1.md
deleted file mode 100644
index 7ed9b5832..000000000
--- a/python/cucim/docs/release_notes/v0.1.1.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Version 0.1.1 (November 3, 2020)
-
-## What's new?
-
-The following features are implemented.
-- Access image data through `container()` API (in C++) or as a numpy array (using `__array_interface__` in Python)
- - [Example](../notebooks/Basic_Usage.html#array-interface-support)
-- Remove hard-coded metadata for `resolutions`
- - [Example](../notebooks/Basic_Usage.html#see-metadata)
-- Sort resolution levels (level 0: the largest resolution) for `CuImage::read_region()` method
- - Add `TIFF::level_ifd(size_t level_index)` method
-- Pass SWIPAT
-
-## Fixes
-
-- Fix a crash that occurs when opening a non-existing file
-- Fix an error that occurs when loading a TIFF image that has `TIFFTAG_JPEGTABLES` tag
- - `Quantization table 0x00 was not defined` message can be shown
diff --git a/python/cucim/docs/release_notes/v0.18.0.md b/python/cucim/docs/release_notes/v0.18.0.md
deleted file mode 100644
index f4d16f682..000000000
--- a/python/cucim/docs/release_notes/v0.18.0.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Version 0.18.0 (March 16, 2021)
-
-## What's new?
-
-- The namespace of the project is changed from `cuimage` to `cucim` and project name is now `cuCIM`
-- Support Deflate(zlib) compression in Generic TIFF Format.
- - [libdeflate](https://github.com/ebiggers/libdeflate) library is used to decode the deflate-compressed data.
diff --git a/python/cucim/docs/release_notes/v0.18.1.md b/python/cucim/docs/release_notes/v0.18.1.md
deleted file mode 100644
index 0a1d15001..000000000
--- a/python/cucim/docs/release_notes/v0.18.1.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Version 0.18.1 (March 17, 2021)
-
-## What's new?
-
-- Disable using cuFile
- - Remove warning messages when libcufile.so is not available.
- - `[warning] CuFileDriver cannot be open. Falling back to use POSIX file IO APIs.`
diff --git a/python/cucim/docs/release_notes/v0.18.2.md b/python/cucim/docs/release_notes/v0.18.2.md
deleted file mode 100644
index 44b81fba3..000000000
--- a/python/cucim/docs/release_notes/v0.18.2.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# Version 0.18.2 (March 29, 2021)
-
-## What's new?
-
-- Use the white background only for Philips TIFF file.
- - Generic TIFF file would have the black background by default.
-
-## Fixes
-
-- Fix upside-downed image for TIFF file if the image is not RGB & tiled image with JPEG/Deflate-compressed tiles.
- - Use slow path if the image is not RGB & tiled image with JPEG/Deflate-compressed tiles.
- - Show an error message if the out-of-boundary cases are requested with the slow path.
- - `ValueError: Cannot handle the out-of-boundary cases for a non-RGB image or a non-Jpeg/Deflate-compressed image.`
diff --git a/python/cucim/docs/release_notes/v0.18.3.md b/python/cucim/docs/release_notes/v0.18.3.md
deleted file mode 100644
index c3dead3c1..000000000
--- a/python/cucim/docs/release_notes/v0.18.3.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Version 0.18.3 (April 16, 2021)
-
-## Fixes
-
-- Fix memory leaks that occur when reading completely out-of-boundary regions.
diff --git a/python/cucim/docs/release_notes/v0.19.0.md b/python/cucim/docs/release_notes/v0.19.0.md
deleted file mode 100644
index 00b2b5083..000000000
--- a/python/cucim/docs/release_notes/v0.19.0.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Version 0.19.0 (April 19, 2021)
-
-## What's new?
-
-- The first release of cuClaraImage + [cupyimg](https://github.com/mritools/cupyimg) as a single project `cuCIM`.
- - `cucim.skimage` package is added from `cupyimg`.
- - CuPy (>=9.0.0b3), scipy, scikit-image is required to use cuCIM's scikit-image-compatible API.
diff --git a/python/cucim/docs/release_notes/v0.2.0.md b/python/cucim/docs/release_notes/v0.2.0.md
deleted file mode 100644
index e5817c379..000000000
--- a/python/cucim/docs/release_notes/v0.2.0.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Version 0.2.0 (December 18, 2020)
-
-## What's new?
-
-The following features are implemented.
-- Make it work without CUDA runtime installed
- - CUDA 11.0 runtime is embedded in the .whl file
-- Develop a wrapper for cufile API
- - Refer to `Accessing File with GDS` (/notebooks/Accessing_File_with_GDS.html) notebook
- - Did some experiments on accessing TIFF files (see `File-access Experiments on TIFF File` (/notebooks/File-access_Experiments_on_TIFF.html) notebook)
-- Support loading [Philips TIFF](https://openslide.org/formats/philips/) files
- - Loading multi-resolution images and associated images (such as 'macro' and 'label') from TIFF Image File Directory (IFD) are available
- - Please see `Basic Usage` (/notebooks/Basic_Usage.html#associated-images) notebook to know how to access the associated images.
-
- ```{admonition} Characteristic of Philips TIFF format
- As specified in [Philips format](https://openslide.org/formats/philips/),
-
- "slides may omit pixel data for TIFF tiles not in an ROI; this is represented as a TileOffset of 0 and a TileByteCount of 0. When such tiles are downsampled into a tile that does contain pixel data, their contents are rendered as white pixels."
-
- For the above reason, some Philips TIFF images can actually hold important information (‘tiles that are not ROIs or tissues’) which can expedite pre-processing by discarding unnecessarily tiles. Due to feature parity with Openslide, cuClaraImage also renders such tiles as white pixels. Please let us know and suggest APIs for getting the information if such non-ROI region information is useful to you.
- ```
- - The following tasks remain for feature-parity with OpenSlide
- - Support Philips TIFF associated image from metadata
- - Expose XML metadata of the Philips TIFF file as JSON
-- Provide an example/plan for the interoperability with DALI
- - Created a notebook for the feasibility and plan (see `Working with DALI` (/notebooks/Working_with_DALI.html) notebook)
-
-## Fixes/Improvements
-
-- Fix again for the error that occurs when loading a TIFF image that has `TIFFTAG_JPEGTABLES` tag
- - `ERROR in line 126 while reading JPEG header tables: Not a JPEG file: starts with 0x01 0x00` message can be shown
-- Force-reinstall cucim Python package in the Tox environment whenever `gen_docs` or `gen_docs_dev` command is executed
diff --git a/python/cucim/docs/release_notes/v0.3.0.md b/python/cucim/docs/release_notes/v0.3.0.md
deleted file mode 100644
index bac97083b..000000000
--- a/python/cucim/docs/release_notes/v0.3.0.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# Version 0.3.0 (February 16, 2021)
-
-## What's new?
-
-- A new name and namespace (currently `cuClaraImage` and `cucim`) will be picked in `v0.4.0` once it's finalized
-- Add metadata and associated images for Philips TIFF Format
- - Support Philips TIFF associated image from XML metadata
-- Expose metadata of the image as JSON
- - `raw_metadata` property returns the image description of the first IFD in the TIFF image
- - `resolution_dim_start` property of `CuImage` is removed
- - `physical_pixel_size` property is renamed to `spacing`
- - `ndim`/`origin`/`direction`/`coord_sys`/`spacing_units` properties are added
- - Please see `Basic Usage` (/notebooks/Basic_Usage.html#see-metadata) notebook to know how to access metadata.
-- Support reading out of boundary region
- - `read_region()` method now accepts a region that is out of the image boundary
- - `size` parameter accepts values that are up to the size of the highest-resolution image
- - The out of the boundary area would be filled with the white color
-- Showcase the interoperability with DALI
- - Please see `Working with DALI` (/notebooks/Working_with_DALI.html) notebook
-
-## Fixes/Improvements
-
-- Fix wrong parameter interpretation (`size` in `read_region()` method). Now only `location` is level-0 based coordinates (using the level-0 reference frame). `size` is output image size. (Thanks `@Behrooz Hashemian`!)
-- Static link with cufile when [libcufile.a is available](https://docs.google.com/document/d/1DQ_T805dlTcDU9bGW32E2ak5InX8iUcNI7Tq_lXAtLc/edit?ts=5f90bc5f) -- Implemented but disabled for now
-- Fix a memory leak for cuslide::tiff::TIFF object (248 bytes) in CuImage class.
-- Fix incorrect method visibility in a plugin file (.so)
-- Replace malloc with better allocator for small-sized memory
- - Use a custom allocator(pmr) for metadata data
-- Copy data using `std::vector::insert()` instead of `std::vector::push_back()`
- - Small improvement (when opening TIFF file), but benchmark result showed that time for assigning 50000 tile offset/size (uint64_t) is reduced from 118 us to 8 us
-- Parameterize input library/image for testing
-- Update test input path
- - Add test data under `test_data/private` : See `test_data/README.md` file.
-- Setup development environment with VSCode (in addition to CLion)
-- Use a VSCode plugin for local test execution
- - Now it uses `matepek.vscode-catch2-test-adapter` extension
- -
-- Prevent relative path problem of .so with no DT_SONAME
-- Refactoring
- - Add Development environment for VSCode
- - Update run script
- - Add settings for VSCode
- - Refactor CMakeLists.txt
- - Add definition `_GLIBCXX_USE_CXX11_ABI=0` to all sub directories
- - Compile multiple architectures for CUDA Kernels
- - Parameterize input files for tests
- - Add `test_data` folder for test data
- - plugin folder is from `CUCIM_TEST_PLUGIN_PATH` environment variable now (with static plugin name (cucim.kit.cuslide@0.3.0.so))
- - Move cucim_malloc() to memory_manager.cu
-
-## Limitations
-
-- Some metadata (`origin`/`direction`/`coord_sys`/`spacing`/`spacing_units`) doesn't have correct values for now.
diff --git a/python/cucim/docs/requirements.txt b/python/cucim/docs/requirements.txt
deleted file mode 100644
index f211153ad..000000000
--- a/python/cucim/docs/requirements.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-Sphinx==4.5.0
-sphinx-autobuild
-myst-parser
-sphinx-book-theme
-numpy
-matplotlib
-ipywidgets
-pandas
-nbclient
-myst-nb
-sphinx-togglebutton
-sphinx-copybutton
-plotly<5
-sphinxcontrib-bibtex<2.0.0 # https://github.com/executablebooks/jupyter-book/issues/1137
-sphinx-thebe
-sphinx-panels
-ablog
-docutils==0.16 # 0.17 causes error. https://github.com/executablebooks/MyST-Parser/issues/343
-pydata_sphinx_theme
-sphinxemoji
-cupy-cuda110
-scipy
-scikit-image
diff --git a/python/cucim/docs/roadmap/index.md b/python/cucim/docs/roadmap/index.md
deleted file mode 100644
index 7ac8596a0..000000000
--- a/python/cucim/docs/roadmap/index.md
+++ /dev/null
@@ -1,370 +0,0 @@
-# Roadmap
-
-
-
-
-
-
-```{eval-rst}
-The following list is on the road |:smile:|
-```
-
-## cuCIM
-
-### {fa}`calendar-alt,text-info mr-1` `v0.1`
-
-- {fa}`check,text-success mr-1` Abstract C++ API -- [v0.1.0](../release_notes/v0.1.0.md)
-- {fa}`check,text-success mr-1` Benchmark with openslide (for generic tiff file) : link -- [v0.1.0](../release_notes/v0.1.0.md)
-- {fa}`check,text-success mr-1` Usage with C++ API -- [v0.1.0](../release_notes/v0.1.0.md)
-- {fa}`check,text-success mr-1` Implement Python API -- [v0.1.0](../release_notes/v0.1.0.md)
-- {fa}`check,text-success mr-1` Usage with Python API -- [v0.1.0](../release_notes/v0.1.0.md)
- 1. Setup document/build system
- 1. Package it
-- {fa}`check,text-success mr-1` Sort resolution levels (level 0: the largest resolution) for `CuImage::read_region()` method -- [v0.1.1](../release_notes/v0.1.1.md)
-- {fa}`check,text-success mr-1` Fix a crash that occurs when opening a non-existing file -- [v0.1.1](../release_notes/v0.1.1.md)
-- {fa}`check,text-success mr-1` Fix an error that occurs when loading a TIFF image that has `TIFFTAG_JPEGTABLES` tag -- [v0.1.1](../release_notes/v0.1.1.md)
- - `Quantization table 0x00 was not defined` message can be shown
-- {fa}`check,text-success mr-1` Sort resolution levels (level 0: the largest resolution) for `CuImage::read_region()` method -- [v0.1.1](../release_notes/v0.1.1.md)
-- {fa}`check,text-success mr-1` Pass SWIPAT -- [v0.1.1](../release_notes/v0.1.1.md)
-- {fa}`check,text-success mr-1` Ignore link check for relative link with header that starts with `/` or `..` -- [v0.1.1](../release_notes/v0.1.1.md)
-
-### {fa}`calendar-alt,text-info mr-1` `v0.2`
-
-- {fa}`check,text-success mr-1` Make it work with various CUDA versions -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Develop a wrapper for cufile API -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Support loading [Philips TIFF](https://openslide.org/formats/philips/) files
- - {fa}`check,text-success mr-1` Support Philips TIFF multi-resolution images -- [v0.2.0](../release_notes/v0.2.0.md)
- - {fa}`check,text-success mr-1` Support Philips TIFF associated image from IFD -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Provide an example/plan for the interoperability with DALI -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Fix again for the error that occurs when loading a TIFF image that has `TIFFTAG_JPEGTABLES` tag -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Force-reinstall cucim Python package in the Tox environment whenever `gen_docs` or `gen_docs_dev` command is executed -- [v0.2.0](../release_notes/v0.2.0.md)
-
-### {fa}`calendar-alt,text-info mr-1` `v0.3`
-
-- {fa}`check,text-success mr-1` Add metadata and associated images for Philips TIFF Format
- - {fa}`check,text-success mr-1` Support Philips TIFF associated image from XML metadata -- [v0.3.0](../release_notes/v0.3.0.md)
-- {fa}`check,text-success mr-1` Expose metadata of the image as JSON -- [v0.3.0](../release_notes/v0.3.0.md)
-- {fa}`check,text-success mr-1` Support reading out of boundary region -- [v0.3.0](../release_notes/v0.3.0.md)
-- {fa}`check,text-success mr-1` Showcase the interoperability with DALI -- [v0.3.0](../release_notes/v0.3.0.md)
-
-
-### {fa}`calendar-alt,text-info mr-1` `v0.18`
-
-- {fa}`check,text-success mr-1` Support Deflate(zlib)-compressed RGB Tiff Image -- [v0.18.0](../release_notes/v0.18.0.md)
-- {fa}`check,text-success mr-1` Change the namespaces (`cuimage` to `cucim`) -- [v0.18.0](../release_notes/v0.18.0.md)
-
-### {fa}`calendar-alt,text-info mr-1` `v0.19`
-
-- Refactor the cupyimg package to incorporate it in the adaption layer of cuCIM. Change the namespaces
-- Support `__cuda_array_interface__` and DLPack object in Python API
-- Support loading data to CUDA memory
-- Implement cache mechanism for tile-based image formats
-
-### {fa}`calendar-alt,text-info mr-1` `v0.20`
-
-- Make use of nvJPEG to decode TIFF Files
-- Support .svs format with nvJPEG2000
-- Design a plug-in mechanism for developing CUDA based 2D/3D imaging filters
-- Implement a filter (example: Otsu Thresholding)
-- Support loading MHD files
-
-### {fa}`calendar-alt,text-info mr-1` `v0.21`
-
-- Support JPEG, Jpeg 2000, PNG, BMP formats
-- Support MIRAX/3DHISTECH (.mrxs) format
-- Support LEICA (.scn) format
-
-### {fa}`calendar-alt,text-info mr-1` `v0.22`
-
-- Design a CT bone segmentation filter
-- Provide a robust CI/CD system
-- Define KPIs and publish report
-- Update project to use the latest [Carbonite SDK](https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/docs/carb/Framework.html) for supporting plug-in architecture
-
-## TODOs
-
-### Image Format
-
-#### Generic TIFF(.tif)
-
-- {fa}`check,text-success mr-1` Access image data through container() API (in C++) or as a numpy array (using `__array_interface__` in Python) -- [v0.1.1](../release_notes/v0.1.1.md)
-- {fa}`check,text-success mr-1` Fix a crash that occurs when opening a non-existing file -- [v0.1.1](../release_notes/v0.1.1.md)
-- {fa}`check,text-success mr-1` Fix an error that occurs when loading a TIFF image that has `TIFFTAG_JPEGTABLES` tag -- [v0.1.1](../release_notes/v0.1.1.md)
- - `Quantization table 0x00 was not defined` message can be shown
-- {fa}`check,text-success mr-1` Fix again for the error that occurs when loading a TIFF image that has `TIFFTAG_JPEGTABLES` tag -- [v0.2.0](../release_notes/v0.2.0.md)
- - `ERROR in line 126 while reading JPEG header tables: Not a JPEG file: starts with 0x01 0x00` message can be shown
-- {fa}`check,text-success mr-1` Expose metadata of the TIFF file as JSON -- [v0.3.0](../release_notes/v0.3.0.md)
-- {fa}`check,text-success mr-1` Support reading out of boundary region -- [v0.3.0](../release_notes/v0.3.0.md)
-- {fa}`check,text-success mr-1` Support Deflate(zlib)-compressed RGB Tiff Image -- [v0.18.0](../release_notes/v0.18.0.md)
-- Implement cache mechanism for tile-based image formats -- [v0.19.1](../release_notes/v0.19.1.md)
-- Use CuFileDriver class for reading files
-- Make use of nvJPEG to decode TIFF Files -- [v0.20.0](../release_notes/v0.20.0.md)
-
-- Remove hard-coded metadata (Fill correct values for `cucim::io::format::ImageMetadataDesc`)
- - {fa}`check,text-success mr-1` `resolutions` -- [v0.1.1](../release_notes/v0.1.1.md)
- - `metadata`
-- Check if the `tile_rester` memory is freed by jpeg-turbo or not
- - {fa}`check,text-success mr-1` `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:365` in `IFD::read_region_tiles_libjpeg()` -- [v0.3.0](../release_notes/v0.3.0.md)
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/cuslide.cpp:123` in `parser_parse` -- [v0.19.1](../release_notes/v0.19.1.md)
-- Fill correct metadata information for `CuImage::read_region()`
- - `cpp/src/cucim.cpp:417` -- [v0.19.1](../release_notes/v0.19.1.md)
-- Check and use `ifd->samples_per_pixel()` once we can get RGB data instead of RGBA
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:280` in `IFD::read_region_tiles_libjpeg()` -- [v0.19.1](../release_notes/v0.19.1.md)
-- Consider endianness of the .tif file
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:329` in `IFD::read_region_tiles_libjpeg()`
-- Consider tile's depth tag
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:329` in `IFD::read_region_tiles_libjpeg()`
-- Make `file_handle_` object to pointer
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/tiff.cpp:50` in `TIFF::TIFF()`
-- Remove assumption of sub-resolution dims to 2
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/tiff.cpp:140` in `TIFF::read()`
-
-#### [Philips TIFF](https://openslide.org/formats/philips/) (.tif)
-
-- {fa}`check,text-success mr-1` Support Philips TIFF multi-resolution images -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Support Philips TIFF associated image from IFD -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Support Philips TIFF associated image from XML metadata -- [v0.3.0](../release_notes/v0.3.0.md)
-- {fa}`check,text-success mr-1` Expose XML metadata of the Philips TIFF file as JSON -- [v0.3.0](../release_notes/v0.3.0.md)
-
-#### .mhd
-
-- Support loading MHD files -- [v0.20.0](../release_notes/v0.20.0.md)
-
-#### .svs
-
-- Support .svs format with nvJPEG2000 -- [v0.20.0](../release_notes/v0.20.0.md)
-
-#### .png
-
-- Support .png with [libspng](https://github.com/randy408/libspng/) -- [v0.21.0](../release_notes/v0.21.0.md)
- - **libspng** is faster than **libpng** (but doesn't support encoding)
-
-#### .jpg
-
-- Support .jpg with libjpeg-turbo and nvJPEG -- [v0.21.0](../release_notes/v0.21.0.md)
-
-#### .jp2/.j2k
-
-- Support .jp2/.j2k files with OpenJpeg and nvJPEG2000 -- [v0.21.0](../release_notes/v0.21.0.md)
-
-#### .bmp
-
-- Support .bmp file natively -- [v0.21.0](../release_notes/v0.21.0.md)
-
-#### .mrxs
-
-- Support MIRAX/3DHISTECH (.mrxs) format -- [v0.21.0](../release_notes/v0.21.0.md)
-
-#### .scn
-
-- Support LEICA (.scn) format -- [v0.21.0](../release_notes/v0.21.0.md)
-
-#### .dcm
-
-- Support DICOM format
-- Support reading segmentation image instead of main pixel array
- - `examples/cpp/dicom_image/main.cpp:37`
-
-#### .iSyntax
-
-- Support Philips iSyntax format
- -
- -
-
-### Image Filter
-
-#### Basic Filter
-
-- Design a plug-in mechanism for developing CUDA based 2D/3D imaging filters -- [v0.20.0](../release_notes/v0.20.0.md)
-- Implement a filter (example: Otsu Thresholding) -- [v0.20.0](../release_notes/v0.20.0.md)
-
-#### Medical-specific Filter
-
-- Design a CT bone segmentation filter -- [v0.22.0](../release_notes/v0.22.0.md)
-
-### Performance Improvements
-
-- {fa}`check,text-success mr-1` Copy data using `std::vector::insert()` instead of `std::vector::push_back()` -- [v0.3.0](../release_notes/v0.3.0.md)
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:78` in `IFD::IFD()`
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:98` in `IFD::IFD()`
- - Benchmark result showed that time for assigning 50000 tile offset/size (uint64_t) is reduced from 118 us to 8 us.
-- {fa}`check,text-success mr-1` Replace malloc with better allocator for small-sized memory -- [v0.3.0](../release_notes/v0.3.0.md)
- - Use a custom allocator(pmr) for metadata data.
-- Try to use `__array_struct__`. Access to array interface could be faster
- -
- - Check the performance difference between python int vs python long later
- - `python/pybind11/cucim_py.cpp:234` in `get_array_interface()`
-- Check performance
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp:122` in `IFD::read()` : string concatenation
-
-### GPUDirect-Storage (GDS) Support
-
-- {fa}`check,text-success mr-1` Develop a wrapper for cufile API -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Static link with cufile when [libcufile.a is available](https://docs.google.com/document/d/1DQ_T805dlTcDU9bGW32E2ak5InX8iUcNI7Tq_lXAtLc/edit?ts=5f90bc5f) -- [v0.3.0](../release_notes/v0.3.0.md)
-
-### Interoperability
-
-- {fa}`check,text-success mr-1` Provide an example/plan for the interoperability with DALI -- [v0.2.0](../release_notes/v0.2.0.md)
-- {fa}`check,text-success mr-1` Showcase the interoperability with DALI -- [v0.3.0](../release_notes/v0.3.0.md)
-- Support `__cuda_array_interface__` and DLPack object in Python API -- [v0.19.1](../release_notes/v0.19.1.md)
- - https://docs.cupy.dev/en/stable/reference/interoperability.html#dlpack
- - https://github.com/pytorch/pytorch/pull/11984
-- Refactor the cupyimg package to incorporate it in the adaption layer of cuCIM. Change the namespaces -- [v0.19.0](../release_notes/v0.19.0.md)
- - Implement/expose `scikit-image`-like image loading APIs (such as `imread`) and filtering APIs for cuCIM library by using cuCIM's APIs
-- Support DALI's CPU/GPU Tensor:
-- Support loading data to CUDA memory -- [v0.19.1](../release_notes/v0.19.1.md)
-- Consider adding `to_xxx()` methods in Python API
- - `examples/python/tiff_image/main.py:125`
-- Support byte-like object for CuImage object so that the following method works -- [v0.19.1](../release_notes/v0.19.1.md)
- ```python
- from PIL import Image
- ...
- #np_img_arr = np.asarray(region)
- #Image.fromarray(np_img_arr)
-
- Image.fromarray(region)
- # /usr/local/lib/python3.6/dist-packages/PIL/Image.py in frombytes(self, data, decoder_name, *args)
- # 792 d = _getdecoder(self.mode, decoder_name, args)
- # 793 d.setimage(self.im)
- # --> 794 s = d.decode(data)
- # 795
- # 796 if s[0] >= 0:
- # TypeError: a bytes-like object is required, not 'cucim._cucim.CuImage'
- ```
-- Provide universal cucim adaptors for DALI (for cucim::io::format::IImageFormat and cucim::filter::IImageFilter interfaces)
-- Support pretty display for IPython(Jupyter Notebook)
- - https://ipython.readthedocs.io/en/stable/config/integrating.html#integrating-your-objects-with-ipython
-
-### Pipeline
-
-- Use app_dp_sample pipeline to convert input image(.svs) of Nuclei segmentation pipeline(app_dp_nuclei) to .tif image
- - Load .tif file using cuCIM for Nuclei segmentation pipeline
-
-### Python API
-
-- Feature parity with OpenSlide
-- Add context manager for CuImage class (for `close()` method) -- [v0.19.1](../release_notes/v0.19.1.md)
-
-### C++ API
-
-- Design filtering API (which can embrace CuPy/CVCore/CuPyImg/OpenCV/scikit-image/dask-image)
-- Feature parity with OpenSlide
-
-- {fa}`check,text-success mr-1` Sort resolution levels (level 0: the largest resolution) for `CuImage::read_region()` method -- [v0.1.1](../release_notes/v0.1.1.md)
- - Add `TIFF::level_ifd(size_t level_index)` method
-- {fa}`check,text-success mr-1` Support `metadata` and `raw_metadata` properties/methods -- [v0.3.0](../release_notes/v0.3.0.md)
- - Implement `CuImage::metadata()` with JSON library (Folly or Modern JSON)
- - `cpp/src/cucim.cpp:238`
-- `ImageMetadataDesc` struct
- - {fa}`check,text-success mr-1` `resolution_dim_start` field: Reconsider its use (may not be needed) -- [v0.3.0](../release_notes/v0.3.0.md)
- - `cpp/include/cucim/io/format/image_format.h:53`
- - `channel_names` field : `S`, `T`, and other dimension can have names so need to be generalized
- - `cpp/include/cucim/io/format/image_format.h:51`
-- `numpy_dtype()` method
- - Consider bfloat16:
- - Consider other byte-order (currently, we assume `little-endian`)
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/tiff.cpp:53)
- - `cpp/include/cucim/memory/dlpack.h:41`
-- `checker_is_valid()` method
- - Add `buf_size` parameter and implement the method
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/cuslide.cpp:68`
-
-- Consider default case (how to handle -1 index?)
- - `cpp/src/io/device.cpp` in `Device::Device()`
-- Implement `Device::parse_type()`
- - `cpp/src/io/device.cpp:81`
-- Implement `Device::validate_device()`
- - `cpp/src/io/device.cpp:116`
-
-- Check illegal characters for `DimIndices::DimIndices()`
- - `cpp/src/cucim.cpp:35`
- - `cpp/src/cucim.cpp:46`
-
-- Implement `detect_format()` method
- - `cpp/src/cucim.cpp:103`
-- Detect available format for the file path
- - Also consider if the given file path is folder path (DICOM case)
- - `cpp/src/cucim.cpp:117` in `CuImage::CuImage()`
-- Implement `CuImage::CuImage(const filesystem::Path& path, const std::string& plugin_name)`
- - `cpp/src/cucim.cpp:128`
-- Implement `CuImage::dtype()`
- - Support string conversion like Device class
- - `cpp/src/cucim.cpp:283`
-
-### Build
-
-- Check if `CMAKE_EXPORT_PACKAGE_REGISTRY` is duplicate and remove it
- - `cucim/cpp/plugins/cucim.kit.cuslide/CMakeLists.txt:255`
-- Install other dependencies for libtiff so that other compression methods are available
- - `cucim/Dockerfile:32`
-- {fa}`check,text-success mr-1` Setup development environment with VSCode (in addition to CLion) -- [v0.3.0](../release_notes/v0.3.0.md)
-- Use prebuilt libraries for dependencies
-
-### Test
-
-- {fa}`check,text-success mr-1` Parameterize input library/image -- [v0.3.0](../release_notes/v0.3.0.md)
- - `/ssd/repo/cucim/cpp/tests/test_read_region.cpp:69` in `Verify read_region`
- - `/ssd/repo/cucim/cpp/tests/test_cufile.cpp:79` in `Verify libcufile usage`
-- {fa}`check,text-success mr-1` Use a VSCode plugin for local test execution -- [v0.3.0](../release_notes/v0.3.0.md)
- - `matepek.vscode-catch2-test-adapter` extension
- -
-
-### Platform
-
-- Support Windows (currently only Linux package is available)
-
-### Package & CI/CD
-
-- {fa}`check,text-success mr-1` Make it work with various CUDA versions -- [v0.2.0](../release_notes/v0.2.0.md)
- - Currently, it is linked to CUDA 11.0 library
- - Refer to PyTorch's PyPi package
- - The PyPi package embeds CUDA runtime library.
- - https://github.com/pytorch/pytorch/issues/47268#issuecomment-721996861
-- Move to Github Project
-- Move `tox` setup from python folder to the project root folder
-- Setup Conda recipe
-- Setup automated test cases
-- Provide a robust CI/CD system -- [v0.22.0](../release_notes/v0.22.0.md)
-- Define KPIs and publish report -- [v0.22.0](../release_notes/v0.22.0.md)
-
-- Add license files to the package
-- Package a separate CXX11 ABI library
- - Currently, C++ library is forced to set `_GLIBCXX_USE_CXX11_ABI` to 0 due to [Dual ABI](https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html) problem
- - `cpp/CMakeLists.txt:98`
-- Support CPack
- - `CMakeLists.txt:177`
-
-### Documentation
-
-- {fa}`check,text-success mr-1` Pass SWIPAT -- [v0.1.1](../release_notes/v0.1.1.md)
-- Refine README.md and relevant documents for the project
-- Move Sphinx docs to the project root folder
-- Add C++ API document
-- Add C++ examples to Jupyter Notebook
- - Can install C++ Kernel:
-- {fa}`check,text-success mr-1` Ignore link check for relative link with header that starts with `/` or `..` -- [v0.1.1](../release_notes/v0.1.1.md)
- - `python/cucim/docs/conf.py:71`
- -
-- {fa}`check,text-success mr-1` Force-reinstall cucim Python package in the Tox environment whenever `gen_docs` or `gen_docs_dev` command is executed -- [v0.2.0](../release_notes/v0.2.0.md)
- -
-- Simplify method signatures in Python API Docs
- - `cucim._cucim.CuImage` -> `cucim.CuImage`
-- Use new feature to reference a cross-link with header (from v0.13.0 of [myst-parser](https://pypi.org/project/myst-parser/))
- -
- -
- -
-
-### Plugin-system (Carbonite)
-
-- Update project to use the latest [Carbonite SDK](https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/docs/carb/Framework.html) for supporting plug-in architecture -- [v0.22.0](../release_notes/v0.22.0.md)
- - Migrate to use Carbonite SDK as it is
- - Update to use Minimal Carbonite SDK
-
-- Handle errors and log error message once switched to use Carbonite SDK's built-in error routine
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp` : when reading field info
- - `cpp/plugins/cucim.kit.cuslide/src/cuslide/tiff/ifd.cpp` in `IFD::read()` : memory size check if `out_buf->data` has high-enough memory
-- Get plugin name from file_path
- - `cpp/src/core/cucim_plugin.cpp:53` in `Plugin::Plugin()`
-- Generalize `CuImage::ensure_init()`
- - 'LINUX' path separator is used. Need to make it generalize once filesystem library is available
- - `cucim/cpp/src/cucim.cpp:520`
diff --git a/python/cucim/docs/spelling_wordlist.txt b/python/cucim/docs/spelling_wordlist.txt
deleted file mode 100644
index f95eb78d8..000000000
--- a/python/cucim/docs/spelling_wordlist.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-builtin
-builtins
-classmethod
-staticmethod
-classmethods
-staticmethods
-args
-kwargs
-callstack
-Changelog
-Indices
diff --git a/python/cucim/docs/user_guide/index.md b/python/cucim/docs/user_guide/index.md
deleted file mode 100644
index cd3d45227..000000000
--- a/python/cucim/docs/user_guide/index.md
+++ /dev/null
@@ -1 +0,0 @@
-# User Guide
diff --git a/python/cucim/tox.ini b/python/cucim/tox.ini
deleted file mode 100644
index 04fe6475b..000000000
--- a/python/cucim/tox.ini
+++ /dev/null
@@ -1,111 +0,0 @@
-[testenv:bootstrap]
-deps =
- jinja2
- matrix
- tox
-skip_install = true
-commands =
- python ci/bootstrap.py --no-env
-passenv =
- *
-; a generative tox configuration, see: https://tox.readthedocs.io/en/latest/config.html#generative-envlist
-
-[tox]
-envlist =
- clean,
- check,
- docs,
- docs-dev,
- release,
- {py35,py36,py37,py38,py39,pypy,pypy3},
- report
-ignore_basepython_conflict = true
-
-[testenv]
-basepython =
- pypy: {env:TOXPYTHON:pypy}
- pypy3: {env:TOXPYTHON:pypy3}
- py35: {env:TOXPYTHON:python3.5}
- py36: {env:TOXPYTHON:python3.6}
- py37: {env:TOXPYTHON:python3.7}
- py38: {env:TOXPYTHON:python3.8}
- py39: {env:TOXPYTHON:python3.9}
- {bootstrap,clean,check,report,docs,docs-dev,release,codecov}: {env:TOXPYTHON:python3}
-setenv =
- PYTHONPATH={toxinidir}/tests
- PYTHONUNBUFFERED=yes
-passenv =
- *
-usedevelop = false
-deps =
- pytest
- pytest-travis-fold
- pytest-cov
-commands =
- {posargs:pytest --cov --cov-report=term-missing -vv tests}
-
-[testenv:check]
-deps =
- docutils
- check-manifest
- black
- ruff
- readme-renderer
- pygments
- isort
- twine
-skip_install = true
-
-; https://packaging.python.org/guides/making-a-pypi-friendly-readme/#validating-restructuredtext-markup
-commands =
- twine check dist/*.whl
- check-manifest {toxinidir}
- ruff .
- black --check .
- isort --verbose --check-only --diff --filter-files .
-
-[testenv:docs]
-; Installing from `sdist` package instead of `setup.py develop` (https://tox.readthedocs.io/en/latest/config.html#conf-usedevelop)
-usedevelop = false
-deps =
- -r{toxinidir}/docs/requirements.txt
-commands =
- sphinx-build -E -b doctest docs {posargs:-dist/docs}
- sphinx-build -E -b html docs {posargs:-dist/docs}
- sphinx-build -b linkcheck docs {posargs:-dist/docs}
-
-[testenv:docs-dev]
-; Installing from `sdist` package instead of `setup.py develop` (https://tox.readthedocs.io/en/latest/config.html#conf-usedevelop)
-usedevelop = false
-deps =
- -r{toxinidir}/docs/requirements.txt
-commands =
- ; https://pypi.org/project/sphinx-autobuild/
- sphinx-autobuild {posargs:---host 0.0.0.0 --port 9999 docs dist/docs}
-
-[testenv:release]
-usedevelop = false
-allowlist_externals = /bin/bash
-commands =
- /bin/bash -c "{posargs}"
-
-[testenv:codecov]
-deps =
- codecov
-skip_install = true
-commands =
- codecov []
-
-[testenv:report]
-deps =
- coverage
-skip_install = true
-commands =
- coverage report
- coverage html
-
-[testenv:clean]
-commands = coverage erase
-skip_install = true
-deps =
- coverage