[package]
# Semantic Versioning is used: https://semver.org/

version = "3.18.17"
category = "Internal"
feature = true

# Lists people or organizations that are considered the "authors" of the package.
authors = ["NVIDIA"]

# The title and description fields are primarly for displaying extension info in UI
title = "USD Property Window Widgets"
description="Property Window widgets that displays USD related information."

# URL of the extension source repository.
repository = ""

# Preview image. Folder named "data" automatically goes in git lfs (see .gitattributes file).
preview_image = "data/preview.png"

# Icon is shown in Extensions window, it is recommended to be square, of size 256x256.
icon = "data/icon.png"

# Keywords for the extension
keywords = ["kit", "usd", "property"]

# Location of change log file in target (final) folder of extension, relative to the root.
# More info on writing changelog: https://keepachangelog.com/en/1.0.0/
changelog="docs/CHANGELOG.md"

# Path (relative to the root) or content of readme markdown file for UI.
readme  = "docs/README.md"

[dependencies]
"omni.client" = {}
"omni.kit.commands" = {}
"omni.timeline" = {}
"omni.usd" = {}
"omni.ui" = {}
"omni.kit.window.property" = {}
"omni.kit.widget.stage" = {}
"omni.kit.clipboard" = {}
"omni.kit.context_menu" = {}
"omni.kit.window.file_importer" = {}
"omni.kit.window.content_browser" = {optional = true}
"omni.kit.widget.versioning" = {optional = true}
"omni.kit.usd.layers" = {}
"omni.kit.notification_manager" = {}

[settings]
persistent.exts."omni.kit.property.usd".large_selection = 100
persistent.exts."omni.kit.property.usd".raw_widget_multi_selection_limit = 1

# Main python module this extension provides, it will be publicly available as "import omni.kit.property.usd".
[[python.module]]
name = "omni.kit.property.usd"

[[test]]

timeout = 1200

args = [
    "--/rtx/materialDb/syncLoads=true",
    "--/omni.kit.plugin/syncUsdLoads=true",
    "--/rtx/hydra/materialSyncLoads=true",
    "--/renderer/enabled=pxr",
    "--/renderer/active=pxr",
    "--/renderer/multiGpu/enabled=false",
    "--/renderer/multiGpu/autoEnable=false", # Disable mGPU with PXR due to OM-51026, OM-53611
    "--/renderer/multiGpu/maxGpuCount=1",
    "--/app/asyncRendering=false",
    "--/app/window/dpiScaleOverride=1.0",
    "--/app/window/scaleToMonitor=false",
    "--/app/file/ignoreUnsavedOnExit=true",
    "--/persistent/app/stage/dragDropImport='reference'",
    "--/persistent/app/material/dragDropMaterialPath='relative'",
    "--/persistent/app/omniverse/filepicker/options_menu/show_details=false",
    "--no-window"
]

dependencies = [
    "omni.usd",
    "omni.kit.renderer.capture",
    "omni.kit.mainwindow",
    "omni.kit.material.library", # for omni_pbr...
    "omni.kit.window.preferences",
    "omni.kit.window.content_browser",
    "omni.kit.window.stage",
    "omni.kit.property.material",
    "omni.kit.window.status_bar",
    "omni.kit.ui_test",
    "omni.kit.test_suite.helpers",
    "omni.kit.window.file",
    "omni.hydra.rtx",
    "omni.kit.hydra_texture", 
    "omni.kit.window.viewport",
]

#pyCoverageIncludeDependencies = false

stdoutFailPatterns.exclude = [
    "*HydraRenderer failed to render this frame*",  # Can drop a frame or two rendering with OpenGL interop
    "*Cannot use omni.hydra.pxr without OpenGL interop*" # Linux TC configs with multi-GPU might not have OpenGL available
]
