-
Notifications
You must be signed in to change notification settings - Fork 825
π fix(utils): revert OptionalImport class to handle missing optional dependencies
#2956
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
samet-akcay
merged 17 commits into
open-edge-platform:main
from
samet-akcay:fix/imports/revert-optional-imports
Sep 16, 2025
Merged
π fix(utils): revert OptionalImport class to handle missing optional dependencies
#2956
samet-akcay
merged 17 commits into
open-edge-platform:main
from
samet-akcay:fix/imports/revert-optional-imports
Sep 16, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
β¦base This commit updates various DataLoader instances in the project to enable the option, enhancing performance for data loading on GPU. Changes were made in the following files: - : Updated train and test DataLoader configurations. - : Modified datamodule DataLoader to include . - : Added to evaluation DataLoader. - : Updated DataLoader for datasets to utilize . - : Enabled for reference dataset DataLoader. - : Adjusted inference DataLoader to include . These changes aim to optimize memory usage and improve data transfer speeds during model training and inference. Signed-off-by: samet-akcay <samet.akcay@intel.com>
This commit refactors the function in to utilize a dictionary mapping for decoder architectures, improving readability and maintainability. The previous conditional checks have been replaced with a more efficient approach, enhancing the overall structure of the code. Signed-off-by: samet-akcay <samet.akcay@intel.com>
β¦nsistency This commit modifies the initialization of the logit_scale parameter in the CLIP model to utilize torch.log instead of np.log. This change ensures consistency in tensor operations and improves compatibility with PyTorch's computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com>
β¦lculations This commit modifies the anomaly map generation logic to utilize PyTorch tensors instead of NumPy arrays for various calculations. This change enhances compatibility with the PyTorch computation graph and improves performance by leveraging GPU acceleration. Key updates include the conversion of statistical calculations and tensor operations to use PyTorch functions, ensuring consistency in tensor handling throughout the code. Signed-off-by: samet-akcay <samet.akcay@intel.com>
β¦istical calculations This commit refactors the anomaly map generation logic to replace NumPy-based statistical calculations with PyTorch equivalents, specifically using the distribution for computing tau. Additionally, it improves precision handling by allowing the use of float64 in high precision mode. The changes streamline the computation process and maintain compatibility with the PyTorch computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com>
Signed-off-by: samet-akcay <samet.akcay@intel.com>
This commit improves the URL validation in the download function to ensure only http and https schemes are allowed. Additionally, it adds comments to clarify the safety of using under these conditions, enhancing code readability and security awareness. Signed-off-by: samet-akcay <samet.akcay@intel.com>
β¦y handling Signed-off-by: samet-akcay <samet.akcay@intel.com>
β¦ dependencies This commit removes the OptionalImport class and introduces dummy classes for various loggers and video utilities when their respective dependencies are not installed. The changes enhance error messaging by providing clear instructions for installation, improving user experience when encountering missing packages. Affected files: - video.py - comet.py - mlflow.py - tensorboard.py - wandb.py - ollama.py Signed-off-by: samet-akcay <samet.akcay@intel.com>
|
Codecov Reportβ Patch coverage is π’ Thoughts on this report? Let us know! |
rajeshgangireddy
approved these changes
Sep 16, 2025
1 task
PaulMcHard
pushed a commit
to PaulMcHard/3D-ADAM_anomalib
that referenced
this pull request
Oct 1, 2025
β¦l dependencies (open-edge-platform#2956) * fix(data): enable pin_memory for DataLoader instances across the codebase This commit updates various DataLoader instances in the project to enable the option, enhancing performance for data loading on GPU. Changes were made in the following files: - : Updated train and test DataLoader configurations. - : Modified datamodule DataLoader to include . - : Added to evaluation DataLoader. - : Updated DataLoader for datasets to utilize . - : Enabled for reference dataset DataLoader. - : Adjusted inference DataLoader to include . These changes aim to optimize memory usage and improve data transfer speeds during model training and inference. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(models): streamline decoder retrieval in function This commit refactors the function in to utilize a dictionary mapping for decoder architectures, improving readability and maintainability. The previous conditional checks have been replaced with a more efficient approach, enhancing the overall structure of the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update logit_scale initialization to use torch.log for consistency This commit modifies the initialization of the logit_scale parameter in the CLIP model to utilize torch.log instead of np.log. This change ensures consistency in tensor operations and improves compatibility with PyTorch's computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update anomaly map generation to use torch tensors for calculations This commit modifies the anomaly map generation logic to utilize PyTorch tensors instead of NumPy arrays for various calculations. This change enhances compatibility with the PyTorch computation graph and improves performance by leveraging GPU acceleration. Key updates include the conversion of statistical calculations and tensor operations to use PyTorch functions, ensuring consistency in tensor handling throughout the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(model): enhance anomaly map generation with PyTorch for statistical calculations This commit refactors the anomaly map generation logic to replace NumPy-based statistical calculations with PyTorch equivalents, specifically using the distribution for computing tau. Additionally, it improves precision handling by allowing the use of float64 in high precision mode. The changes streamline the computation process and maintain compatibility with the PyTorch computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * chore(license): update license year Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(download): enhance URL validation and update download logic This commit improves the URL validation in the download function to ensure only http and https schemes are allowed. Additionally, it adds comments to clarify the safety of using under these conditions, enhancing code readability and security awareness. Signed-off-by: samet-akcay <samet.akcay@intel.com> * ποΈ chore(imports): remove OptionalImport class for optional dependency handling Signed-off-by: samet-akcay <samet.akcay@intel.com> * π fix(imports): Replace OptionalImport with dummy classes for missing dependencies This commit removes the OptionalImport class and introduces dummy classes for various loggers and video utilities when their respective dependencies are not installed. The changes enhance error messaging by providing clear instructions for installation, improving user experience when encountering missing packages. Affected files: - video.py - comet.py - mlflow.py - tensorboard.py - wandb.py - ollama.py Signed-off-by: samet-akcay <samet.akcay@intel.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com> Signed-off-by: Paul McHard <paulmchard@gmail.com>
alexriedel1
pushed a commit
to alexriedel1/anomalib
that referenced
this pull request
Oct 6, 2025
β¦l dependencies (open-edge-platform#2956) * fix(data): enable pin_memory for DataLoader instances across the codebase This commit updates various DataLoader instances in the project to enable the option, enhancing performance for data loading on GPU. Changes were made in the following files: - : Updated train and test DataLoader configurations. - : Modified datamodule DataLoader to include . - : Added to evaluation DataLoader. - : Updated DataLoader for datasets to utilize . - : Enabled for reference dataset DataLoader. - : Adjusted inference DataLoader to include . These changes aim to optimize memory usage and improve data transfer speeds during model training and inference. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(models): streamline decoder retrieval in function This commit refactors the function in to utilize a dictionary mapping for decoder architectures, improving readability and maintainability. The previous conditional checks have been replaced with a more efficient approach, enhancing the overall structure of the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update logit_scale initialization to use torch.log for consistency This commit modifies the initialization of the logit_scale parameter in the CLIP model to utilize torch.log instead of np.log. This change ensures consistency in tensor operations and improves compatibility with PyTorch's computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update anomaly map generation to use torch tensors for calculations This commit modifies the anomaly map generation logic to utilize PyTorch tensors instead of NumPy arrays for various calculations. This change enhances compatibility with the PyTorch computation graph and improves performance by leveraging GPU acceleration. Key updates include the conversion of statistical calculations and tensor operations to use PyTorch functions, ensuring consistency in tensor handling throughout the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(model): enhance anomaly map generation with PyTorch for statistical calculations This commit refactors the anomaly map generation logic to replace NumPy-based statistical calculations with PyTorch equivalents, specifically using the distribution for computing tau. Additionally, it improves precision handling by allowing the use of float64 in high precision mode. The changes streamline the computation process and maintain compatibility with the PyTorch computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * chore(license): update license year Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(download): enhance URL validation and update download logic This commit improves the URL validation in the download function to ensure only http and https schemes are allowed. Additionally, it adds comments to clarify the safety of using under these conditions, enhancing code readability and security awareness. Signed-off-by: samet-akcay <samet.akcay@intel.com> * ποΈ chore(imports): remove OptionalImport class for optional dependency handling Signed-off-by: samet-akcay <samet.akcay@intel.com> * π fix(imports): Replace OptionalImport with dummy classes for missing dependencies This commit removes the OptionalImport class and introduces dummy classes for various loggers and video utilities when their respective dependencies are not installed. The changes enhance error messaging by providing clear instructions for installation, improving user experience when encountering missing packages. Affected files: - video.py - comet.py - mlflow.py - tensorboard.py - wandb.py - ollama.py Signed-off-by: samet-akcay <samet.akcay@intel.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com>
ashwinvaidya17
added a commit
that referenced
this pull request
Oct 7, 2025
* π fix(utils): revert `OptionalImport` class to handle missing optional dependencies (#2956) * fix(data): enable pin_memory for DataLoader instances across the codebase This commit updates various DataLoader instances in the project to enable the option, enhancing performance for data loading on GPU. Changes were made in the following files: - : Updated train and test DataLoader configurations. - : Modified datamodule DataLoader to include . - : Added to evaluation DataLoader. - : Updated DataLoader for datasets to utilize . - : Enabled for reference dataset DataLoader. - : Adjusted inference DataLoader to include . These changes aim to optimize memory usage and improve data transfer speeds during model training and inference. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(models): streamline decoder retrieval in function This commit refactors the function in to utilize a dictionary mapping for decoder architectures, improving readability and maintainability. The previous conditional checks have been replaced with a more efficient approach, enhancing the overall structure of the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update logit_scale initialization to use torch.log for consistency This commit modifies the initialization of the logit_scale parameter in the CLIP model to utilize torch.log instead of np.log. This change ensures consistency in tensor operations and improves compatibility with PyTorch's computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update anomaly map generation to use torch tensors for calculations This commit modifies the anomaly map generation logic to utilize PyTorch tensors instead of NumPy arrays for various calculations. This change enhances compatibility with the PyTorch computation graph and improves performance by leveraging GPU acceleration. Key updates include the conversion of statistical calculations and tensor operations to use PyTorch functions, ensuring consistency in tensor handling throughout the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(model): enhance anomaly map generation with PyTorch for statistical calculations This commit refactors the anomaly map generation logic to replace NumPy-based statistical calculations with PyTorch equivalents, specifically using the distribution for computing tau. Additionally, it improves precision handling by allowing the use of float64 in high precision mode. The changes streamline the computation process and maintain compatibility with the PyTorch computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * chore(license): update license year Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(download): enhance URL validation and update download logic This commit improves the URL validation in the download function to ensure only http and https schemes are allowed. Additionally, it adds comments to clarify the safety of using under these conditions, enhancing code readability and security awareness. Signed-off-by: samet-akcay <samet.akcay@intel.com> * ποΈ chore(imports): remove OptionalImport class for optional dependency handling Signed-off-by: samet-akcay <samet.akcay@intel.com> * π fix(imports): Replace OptionalImport with dummy classes for missing dependencies This commit removes the OptionalImport class and introduces dummy classes for various loggers and video utilities when their respective dependencies are not installed. The changes enhance error messaging by providing clear instructions for installation, improving user experience when encountering missing packages. Affected files: - video.py - comet.py - mlflow.py - tensorboard.py - wandb.py - ollama.py Signed-off-by: samet-akcay <samet.akcay@intel.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> * Added 3D-ADAM Dataset Signed-off-by: Paul McHard <paulmchard@gmail.com> * Added tests and example config Signed-off-by: Paul McHard <paulmchard@gmail.com> * π¨ fix(semgrep): ignore uv.lock in semgrep (#2972) ignore uv.lock in semgrep Signed-off-by: Ashwin Vaidya <ashwinnitinvaidya@gmail.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> * π fix(utils): Run CS Flow model in eval() so the weights of the model itself will not be modified (#2966) fix in dryrun_find_featuremap_dims: run the model in eval() so the weights of the model itself will not be modified Signed-off-by: Paul McHard <paulmchard@gmail.com> * π fix(ovinferencer): Fix openvino cache directory (#2979) π fix(ovinferencer): update cache folder name to 'openvino_cache' and ensure string path for set_property Signed-off-by: Paul McHard <paulmchard@gmail.com> * changes per PR and pre-commit checks Signed-off-by: Paul McHard <paulmchard@gmail.com> * resolve circular import issue Signed-off-by: Paul McHard <paulmchard@gmail.com> * Resolve DownloadInfo URL issue. Signed-off-by: Paul McHard <paulmchard@gmail.com> * Resolve DownloadInfo URL Signed-off-by: Paul McHard <paulmchard@gmail.com> * restore doc images ignored in error Signed-off-by: Paul McHard <paulmchard@gmail.com> * Removed prettier cache included in error, re-run pre-commit hooks Signed-off-by: Paul McHard <paulmchard@gmail.com> * explictly resolve EOF error on docs/source/examples Signed-off-by: Paul McHard <paulmchard@gmail.com> * resolve filename issue in adam3d test. Signed-off-by: Paul McHard <paulmchard@gmail.com> * Restore uv.lock Signed-off-by: Paul McHard <32065439+PaulMcHard@users.noreply.github.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> Signed-off-by: Ashwin Vaidya <ashwinnitinvaidya@gmail.com> Signed-off-by: Paul McHard <32065439+PaulMcHard@users.noreply.github.com> Co-authored-by: Samet Akcay <samet.akcay@intel.com> Co-authored-by: Ashwin Vaidya <ashwin.vaidya@intel.com> Co-authored-by: Rune <60315601+monzelr@users.noreply.github.com> Co-authored-by: Rajesh Gangireddy <rajesh.gangireddy@intel.com>
ashwinvaidya17
added a commit
that referenced
this pull request
Oct 8, 2025
* π feat(dataset): add 3D-ADAM dataset to Anomalib (#2986) * π fix(utils): revert `OptionalImport` class to handle missing optional dependencies (#2956) * fix(data): enable pin_memory for DataLoader instances across the codebase This commit updates various DataLoader instances in the project to enable the option, enhancing performance for data loading on GPU. Changes were made in the following files: - : Updated train and test DataLoader configurations. - : Modified datamodule DataLoader to include . - : Added to evaluation DataLoader. - : Updated DataLoader for datasets to utilize . - : Enabled for reference dataset DataLoader. - : Adjusted inference DataLoader to include . These changes aim to optimize memory usage and improve data transfer speeds during model training and inference. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(models): streamline decoder retrieval in function This commit refactors the function in to utilize a dictionary mapping for decoder architectures, improving readability and maintainability. The previous conditional checks have been replaced with a more efficient approach, enhancing the overall structure of the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update logit_scale initialization to use torch.log for consistency This commit modifies the initialization of the logit_scale parameter in the CLIP model to utilize torch.log instead of np.log. This change ensures consistency in tensor operations and improves compatibility with PyTorch's computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(model): update anomaly map generation to use torch tensors for calculations This commit modifies the anomaly map generation logic to utilize PyTorch tensors instead of NumPy arrays for various calculations. This change enhances compatibility with the PyTorch computation graph and improves performance by leveraging GPU acceleration. Key updates include the conversion of statistical calculations and tensor operations to use PyTorch functions, ensuring consistency in tensor handling throughout the code. Signed-off-by: samet-akcay <samet.akcay@intel.com> * refactor(model): enhance anomaly map generation with PyTorch for statistical calculations This commit refactors the anomaly map generation logic to replace NumPy-based statistical calculations with PyTorch equivalents, specifically using the distribution for computing tau. Additionally, it improves precision handling by allowing the use of float64 in high precision mode. The changes streamline the computation process and maintain compatibility with the PyTorch computation graph. Signed-off-by: samet-akcay <samet.akcay@intel.com> * chore(license): update license year Signed-off-by: samet-akcay <samet.akcay@intel.com> * fix(download): enhance URL validation and update download logic This commit improves the URL validation in the download function to ensure only http and https schemes are allowed. Additionally, it adds comments to clarify the safety of using under these conditions, enhancing code readability and security awareness. Signed-off-by: samet-akcay <samet.akcay@intel.com> * ποΈ chore(imports): remove OptionalImport class for optional dependency handling Signed-off-by: samet-akcay <samet.akcay@intel.com> * π fix(imports): Replace OptionalImport with dummy classes for missing dependencies This commit removes the OptionalImport class and introduces dummy classes for various loggers and video utilities when their respective dependencies are not installed. The changes enhance error messaging by providing clear instructions for installation, improving user experience when encountering missing packages. Affected files: - video.py - comet.py - mlflow.py - tensorboard.py - wandb.py - ollama.py Signed-off-by: samet-akcay <samet.akcay@intel.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> * Added 3D-ADAM Dataset Signed-off-by: Paul McHard <paulmchard@gmail.com> * Added tests and example config Signed-off-by: Paul McHard <paulmchard@gmail.com> * π¨ fix(semgrep): ignore uv.lock in semgrep (#2972) ignore uv.lock in semgrep Signed-off-by: Ashwin Vaidya <ashwinnitinvaidya@gmail.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> * π fix(utils): Run CS Flow model in eval() so the weights of the model itself will not be modified (#2966) fix in dryrun_find_featuremap_dims: run the model in eval() so the weights of the model itself will not be modified Signed-off-by: Paul McHard <paulmchard@gmail.com> * π fix(ovinferencer): Fix openvino cache directory (#2979) π fix(ovinferencer): update cache folder name to 'openvino_cache' and ensure string path for set_property Signed-off-by: Paul McHard <paulmchard@gmail.com> * changes per PR and pre-commit checks Signed-off-by: Paul McHard <paulmchard@gmail.com> * resolve circular import issue Signed-off-by: Paul McHard <paulmchard@gmail.com> * Resolve DownloadInfo URL issue. Signed-off-by: Paul McHard <paulmchard@gmail.com> * Resolve DownloadInfo URL Signed-off-by: Paul McHard <paulmchard@gmail.com> * restore doc images ignored in error Signed-off-by: Paul McHard <paulmchard@gmail.com> * Removed prettier cache included in error, re-run pre-commit hooks Signed-off-by: Paul McHard <paulmchard@gmail.com> * explictly resolve EOF error on docs/source/examples Signed-off-by: Paul McHard <paulmchard@gmail.com> * resolve filename issue in adam3d test. Signed-off-by: Paul McHard <paulmchard@gmail.com> * Restore uv.lock Signed-off-by: Paul McHard <32065439+PaulMcHard@users.noreply.github.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> Signed-off-by: Ashwin Vaidya <ashwinnitinvaidya@gmail.com> Signed-off-by: Paul McHard <32065439+PaulMcHard@users.noreply.github.com> Co-authored-by: Samet Akcay <samet.akcay@intel.com> Co-authored-by: Ashwin Vaidya <ashwin.vaidya@intel.com> Co-authored-by: Rune <60315601+monzelr@users.noreply.github.com> Co-authored-by: Rajesh Gangireddy <rajesh.gangireddy@intel.com> * revert changes to example Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * revert file permissions Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * π§ refactor(data): Polish 3dAdam dataset (#3002) * Add changelog + fix dataset location Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * revert changes to example Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * revert file permissions Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * Fix tests Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> --------- Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * revert examples Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * revert file permissions Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * Add imagecodecs dependency Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> * Apply suggestion from @samet-akcay Co-authored-by: Samet Akcay <samet.akcay@intel.com> Signed-off-by: Ashwin Vaidya <ashwinnitinvaidya@gmail.com> --------- Signed-off-by: samet-akcay <samet.akcay@intel.com> Signed-off-by: Paul McHard <paulmchard@gmail.com> Signed-off-by: Ashwin Vaidya <ashwinnitinvaidya@gmail.com> Signed-off-by: Paul McHard <32065439+PaulMcHard@users.noreply.github.com> Signed-off-by: Ashwin Vaidya <ashwin.vaidya@intel.com> Co-authored-by: Paul McHard <32065439+PaulMcHard@users.noreply.github.com> Co-authored-by: Samet Akcay <samet.akcay@intel.com> Co-authored-by: Rune <60315601+monzelr@users.noreply.github.com> Co-authored-by: Rajesh Gangireddy <rajesh.gangireddy@intel.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
π Description
OptionalImportclass imports since it still causes import errors when optional dependencies are imported. After v2.2.0 release, we can focus on a better solution.β¨ Changes
Select what type of change your PR is:
β Checklist
Before you submit your pull request, please make sure you have completed the following steps:
For more information about code review checklists, see the Code Review Checklist.