chore(parquet-visualizer): update python-related packages (minor) #53448
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
| --- | |
| name: Test | |
| 'on': | |
| pull_request: | |
| branches: | |
| - '**' | |
| schedule: | |
| - cron: 23 10 * * * | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| detect-changes: | |
| name: Detect Changes | |
| runs-on: ubuntu-24.04-arm | |
| timeout-minutes: 30 | |
| permissions: | |
| pull-requests: read | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6.0.2 | |
| - uses: dorny/paths-filter@v3.0.2 | |
| id: filter | |
| with: | |
| filters: | | |
| # Workflows | |
| workflow: | |
| - '.github/workflows/test.yml' | |
| workflow-lint: | |
| - '.github/workflows/.lint.yml' | |
| workflow-static-type-check: | |
| - '.github/workflows/.static-type-check.yml' | |
| workflow-test-aerospace: | |
| - '.github/workflows/.test-aerospace.yml' | |
| workflow-test-api: | |
| - '.github/workflows/.test-api.yml' | |
| workflow-test-cloud: | |
| - '.github/workflows/.test-cloud.yml' | |
| workflow-test-computer-vision: | |
| - '.github/workflows/.test-computer-vision.yml' | |
| workflow-test-computing: | |
| - '.github/workflows/.test-computing.yml' | |
| workflow-test-data-analytics: | |
| - '.github/workflows/.test-data-analytics.yml' | |
| workflow-test-data-orchestration: | |
| - '.github/workflows/.test-data-orchestration.yml' | |
| workflow-test-data-processing: | |
| - '.github/workflows/.test-data-processing.yml' | |
| workflow-test-data-storage: | |
| - '.github/workflows/.test-data-storage.yml' | |
| workflow-test-data-transformation: | |
| - '.github/workflows/.test-data-transformation.yml' | |
| workflow-test-data-visualization: | |
| - '.github/workflows/.test-data-visualization.yml' | |
| workflow-test-embedded-system: | |
| - '.github/workflows/.test-embedded-system.yml' | |
| workflow-test-hardware-in-the-loop: | |
| - '.github/workflows/.test-hardware-in-the-loop.yml' | |
| workflow-test-machine-learning: | |
| - '.github/workflows/.test-machine-learning.yml' | |
| workflow-test-mobile: | |
| - '.github/workflows/.test-mobile.yml' | |
| workflow-test-network: | |
| - '.github/workflows/.test-network.yml' | |
| workflow-test-operating-system: | |
| - '.github/workflows/.test-operating-system.yml' | |
| workflow-test-web: | |
| - '.github/workflows/.test-web.yml' | |
| # Languages | |
| ansible: | |
| - 'infrastructure/ansible/**' | |
| c-cpp: | |
| - '**/*.c' | |
| - '**/*.cpp' | |
| - '**/*.cu' | |
| - '**/*.cuh' | |
| - '**/*.h' | |
| - '**/*.hpp' | |
| - '**/*.ino' | |
| - '.clang-format' | |
| cmake: | |
| - '**/CMakeLists.txt' | |
| - '.python-version' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| css: | |
| - '**/*.css' | |
| - '.node-version' | |
| - '.npmrc' | |
| - '.stylelintignore' | |
| - '.stylelintrc.mjs' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| docker-compose: | |
| - '**/docker-compose.*.yaml' | |
| - '**/docker-compose.yaml' | |
| - 'dclint.config.yaml' | |
| dockerfile: | |
| - '**/Dockerfile*' | |
| - '.hadolint.yaml' | |
| dotenv: | |
| - '**/*.env*' | |
| editorconfig: | |
| - '**/*' | |
| - '.editorconfig' | |
| - '.editorconfig-checker.json' | |
| html: | |
| - '**/*.html' | |
| - '.node-version' | |
| - '.npmrc' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| json: | |
| - '**/*.json' | |
| - '.node-version' | |
| - '.npmrc' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| justfile: | |
| - '**/justfile' | |
| - '.python-version' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| kubernetes: | |
| - 'kubernetes/manifests/**' | |
| markdown: | |
| - '**/*.md' | |
| - '.node-version' | |
| - '.npmrc' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| matlab: | |
| - '**/*.m' | |
| - '.python-version' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| natural-language: | |
| - '**/*.WizardFile' | |
| - '**/*.c' | |
| - '**/*.cjs' | |
| - '**/*.cpp' | |
| - '**/*.cs' | |
| - '**/*.csproj' | |
| - '**/*.cu' | |
| - '**/*.cuh' | |
| - '**/*.dbc' | |
| - '**/*.go' | |
| - '**/*.gradle' | |
| - '**/*.h' | |
| - '**/*.hpp' | |
| - '**/*.ino' | |
| - '**/*.ipynb' | |
| - '**/*.java' | |
| - '**/*.jl' | |
| - '**/*.js' | |
| - '**/*.json' | |
| - '**/*.kt' | |
| - '**/*.kts' | |
| - '**/*.m' | |
| - '**/*.md' | |
| - '**/*.mjs' | |
| - '**/*.p4' | |
| - '**/*.py' | |
| - '**/*.rego' | |
| - '**/*.rs' | |
| - '**/*.scad' | |
| - '**/*.scala' | |
| - '**/*.sh' | |
| - '**/*.sln' | |
| - '**/*.sol' | |
| - '**/*.sql' | |
| - '**/*.swift' | |
| - '**/*.tofu' | |
| - '**/*.toml' | |
| - '**/*.ts' | |
| - '**/*.tsx' | |
| - '**/*.vhd' | |
| - '**/*.xml' | |
| - '**/*.yaml' | |
| - '**/*.yml' | |
| - '.node-version' | |
| - '.npmrc' | |
| - '.textlintignore' | |
| - '.textlintrc.json' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| ruby: | |
| # https://github.com/rubocop/rubocop/blob/master/config/default.yml | |
| - '**/Vagrantfile' | |
| - 'Gemfile' | |
| - 'Gemfile.lock' | |
| python: | |
| - '**/*.py' | |
| - '.mypy.ini' | |
| - '.python-version' | |
| - '.ruff.toml' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| qml: | |
| - '**/*.qml' | |
| shell: | |
| - '**/*.sh' | |
| solidity: | |
| - '**/*.sol' | |
| - '.node-version' | |
| - '.npmrc' | |
| - '.solhint.json' | |
| - '.solhintignore' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| sql: | |
| - '**/*.sql' | |
| - '.python-version' | |
| - '.sqlfluff' | |
| - '.sqlfluffignore' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| opentofu-production-airbyte: | |
| - 'infrastructure/opentofu/environments/production/airbyte/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-argo-cd: | |
| - 'infrastructure/opentofu/environments/production/argo-cd/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-aws-general: | |
| - 'infrastructure/opentofu/environments/production/aws/general/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-aws-kubernetes: | |
| - 'infrastructure/opentofu/environments/production/aws/kubernetes/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-aws-network: | |
| - 'infrastructure/opentofu/environments/production/aws/network/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-aws-storage: | |
| - 'infrastructure/opentofu/environments/production/aws/storage/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-grafana: | |
| - 'infrastructure/opentofu/environments/production/grafana/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-harbor: | |
| - 'infrastructure/opentofu/environments/production/harbor/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-nebius-applications: | |
| - 'infrastructure/opentofu/environments/production/nebius/applications/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-nebius-general: | |
| - 'infrastructure/opentofu/environments/production/nebius/general/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-nebius-kubernetes: | |
| - 'infrastructure/opentofu/environments/production/nebius/kubernetes/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-nebius-network: | |
| - 'infrastructure/opentofu/environments/production/nebius/network/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-nebius-storage: | |
| - 'infrastructure/opentofu/environments/production/nebius/storage/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-snowflake-account: | |
| - 'infrastructure/opentofu/environments/production/snowflake/account/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-snowflake-data: | |
| - 'infrastructure/opentofu/environments/production/snowflake/storage/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-snowflake-general: | |
| - 'infrastructure/opentofu/environments/production/snowflake/general/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu-production-trino-gateway: | |
| - 'infrastructure/opentofu/environments/production/trino-gateway/**' | |
| - 'infrastructure/opentofu/modules/**' | |
| opentofu: | |
| - '**/*.tfvars' | |
| - '**/*.tofu' | |
| - '**/.terraform.lock.hcl' | |
| - 'infrastructure/opentofu/**' | |
| toml: | |
| - '**/*.toml' | |
| - 'taplo.toml' | |
| verilog: | |
| - '**/*.v' | |
| - '.python-version' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| vhdl: | |
| - '**/*.vhd' | |
| - '.python-version' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| xml: | |
| - '**/*.xml' | |
| - '.node-version' | |
| - '.npmrc' | |
| - '.prettierignore' | |
| - '.prettierrc.mjs' | |
| - 'package-lock.json' | |
| - 'package.json' | |
| yaml: | |
| - '**/*.yaml' | |
| - '.python-version' | |
| - '.yamllint.yaml' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| # Applications | |
| actor-critic-algorithm: | |
| - 'reinforcement-learning/actor-critic-algorithm/**' | |
| alpamayo-1: | |
| - 'multimodal-model/vision-language-action-model/alpamayo-1/**' | |
| amazon-sagemaker-pytorch-mnist: | |
| - 'cloud-platform/aws/amazon-sagemaker/pytorch-mnist/**' | |
| amazon-sagemaker-triton-resnet-50-deploy: | |
| - 'machine-learning/nvidia-triton-inference-server/amazon-sagemaker-triton-resnet-50/deploy/**' | |
| amazon-sagemaker-triton-resnet-50-infer: | |
| - 'machine-learning/nvidia-triton-inference-server/amazon-sagemaker-triton-resnet-50/infer/**' | |
| anyup: | |
| - 'computer-vision/anyup/**' | |
| api-go: | |
| - 'api/api-go/**' | |
| api-node: | |
| - 'api/api-node/**' | |
| api-python: | |
| - 'api/api-python/**' | |
| api-rust: | |
| - 'api/api-rust/**' | |
| api-rust-scripts: | |
| - 'api/api-rust/scripts/**' | |
| arrow-flight-client: | |
| - 'data-transport/arrow-flight/arrow-flight-client/**' | |
| arrow-flight-server: | |
| - 'data-transport/arrow-flight/arrow-flight-server/**' | |
| automatic-mixed-precision: | |
| - 'large-language-model-pre-training/training-optimization/automatic-mixed-precision/**' | |
| bert: | |
| - 'named-entity-recognition/bert/**' | |
| bluesky: | |
| - 'aerospace/bluesky/**' | |
| byte-pair-encoding: | |
| - 'tokenization/byte-pair-encoding/**' | |
| call-matlab-function-in-python: | |
| - 'matlab/call-matlab-function-in-python/**' | |
| camera-radar-fusion: | |
| - 'autonomy/camera-radar-fusion/**' | |
| camera-radar-lidar-fusion: | |
| - 'autonomy/camera-radar-lidar-fusion/**' | |
| convert-modern-bert-to-core-ml: | |
| - 'masking-language-modeling/convert-modern-bert-to-core-ml/**' | |
| decode-can-blf-data: | |
| - 'embedded-system/decode-can-blf-data/**' | |
| decode-can-mf4-data: | |
| - 'embedded-system/decode-can-mf4-data/**' | |
| decode-can-trc-data: | |
| - 'embedded-system/decode-can-trc-data/**' | |
| dense-transformer: | |
| - 'large-language-model-architecture/dense-transformer/**' | |
| development-aws-glue-spark-scripts: | |
| - 'infrastructure/opentofu/environments/development/aws/general/files/aws-glue/spark-scripts/**' | |
| dust-dds-publisher: | |
| - 'data-transport/dust-dds/dust-dds-publisher/**' | |
| dust-dds-subscriber: | |
| - 'data-transport/dust-dds/dust-dds-subscriber/**' | |
| ethereum: | |
| - 'ethereum/**' | |
| flightradar24: | |
| - 'aerospace/flightradar24/**' | |
| format-can-data: | |
| - 'embedded-system/format-can-data/**' | |
| convolutional-neural-network: | |
| - 'convolutional-neural-network/**' | |
| core-ml-tools: | |
| - 'machine-learning/core-ml-tools/**' | |
| dbt-hm-postgres: | |
| - 'data-transformation/dbt/projects/dbt_hm_postgres/**' | |
| delta-lake-read-delta-lake-by-amazon-athena: | |
| - 'data-storage/delta-lake/read-delta-lake-by-amazon-athena/**' | |
| delta-lake-read-delta-lake-by-trino: | |
| - 'data-storage/delta-lake/read-delta-lake-by-trino/**' | |
| delta-lake-write-to-delta-lake: | |
| - 'data-storage/delta-lake/write-to-delta-lake/**' | |
| dinov3: | |
| - 'computer-vision/vision-transformer/dinov3/**' | |
| direct-preference-optimization-low-rank-adaptation: | |
| - 'large-language-model-post-training/fine-tuning/direct-preference-optimization/low-rank-adaptation/**' | |
| export-yolo-to-onnx: | |
| - 'computer-vision/export-yolo-to-onnx/**' | |
| feature-store: | |
| - 'machine-learning/feature-store/**' | |
| fine-tune-whisper: | |
| - 'large-language-model-post-training/fine-tuning/fine-tune-whisper/**' | |
| flink-stream-tweets: | |
| - 'data-processing/flink/applications/stream-tweets/**' | |
| flow-matching: | |
| - 'generative-model/flow-matching/**' | |
| gemma: | |
| - 'small-language-model/gemma/**' | |
| genetic-algorithm: | |
| - 'evolutionary-algorithm/genetic-algorithm/**' | |
| grafana-hm-dashboard: | |
| - 'data-visualization/grafana/hm-dashboard/**' | |
| grafana-hm-panel-plugin: | |
| - 'data-visualization/grafana/hm-panel-plugin/**' | |
| graph-neural-network: | |
| - 'graph-neural-network/**' | |
| group-relative-policy-optimization-low-rank-adaptation: | |
| - 'large-language-model-post-training/fine-tuning/group-relative-policy-optimization/low-rank-adaptation/**' | |
| hm-aerosandbox: | |
| - 'aerospace/hm-aerosandbox/**' | |
| hm-airflow: | |
| - 'data-orchestration/hm-airflow/**' | |
| hm-autogluon: | |
| - 'machine-learning/hm-autogluon/**' | |
| hm-axolotl: | |
| - 'large-language-model-post-training/fine-tuning/hm-axolotl/**' | |
| hm-aws-parallelcluster: | |
| - 'cloud-platform/aws/aws-parallelcluster/pcluster/**' | |
| hm-catboost: | |
| - 'ensemble-learning/boosting/hm-catboost/**' | |
| hm-cocoindex-embed-markdown-to-postgres: | |
| - 'data-processing/hm-cocoindex/flows/embed-markdown-to-postgres/**' | |
| hm-crawl4ai: | |
| - 'data-crawling/hm-crawl4ai/**' | |
| hm-cudf-analyze-transactions: | |
| - 'data-analytics/hm-cudf/analyze-transactions/**' | |
| hm-cuml: | |
| - 'machine-learning/hm-cuml/**' | |
| hm-cupy: | |
| - 'data-analytics/hm-cupy/**' | |
| hm-daft-analyze-transactions: | |
| - 'data-analytics/hm-daft/analyze-transactions/**' | |
| hm-dash-csv-visualizer: | |
| - 'data-visualization/hm-dash/csv-visualizer/**' | |
| hm-dash-parquet-visualizer: | |
| - 'data-visualization/hm-dash/parquet-visualizer/**' | |
| hm-deepspeed: | |
| - 'large-language-model-pre-training/training-optimization/hm-deepspeed/**' | |
| hm-diart: | |
| - 'audio/speaker-diarization/hm-diart/**' | |
| hm-docling: | |
| - 'data-extraction/hm-docling/**' | |
| hm-duckdb-query-duckdb: | |
| - 'data-storage/hm-duckdb/query-duckdb/**' | |
| hm-duckdb-query-lance: | |
| - 'data-storage/hm-duckdb/query-lance/**' | |
| hm-duckdb-query-parquet: | |
| - 'data-storage/hm-duckdb/query-parquet/**' | |
| hm-duckdb-query-protobuf: | |
| - 'data-storage/hm-duckdb/query-protobuf/**' | |
| hm-deepeval: | |
| - 'large-language-model-evaluation/hm-deepeval/**' | |
| hm-faster-whisper: | |
| - 'audio/automatic-speech-recognition-inference/hm-faster-whisper/**' | |
| hm-firecrawl: | |
| - 'data-crawling/hm-firecrawl/**' | |
| hm-flax: | |
| - 'machine-learning/hm-flax/**' | |
| hm-genesis: | |
| - 'physics/hm-genesis/**' | |
| hm-geopandas: | |
| - 'data-analytics/hm-geopandas/**' | |
| hm-gliner: | |
| - 'named-entity-recognition/hm-gliner/**' | |
| hm-gradio-classify-image: | |
| - 'machine-learning/hm-gradio/applications/classify-image/**' | |
| hm-hdf5: | |
| - 'data-storage/hm-hdf5/**' | |
| hm-hydra-zen: | |
| - 'machine-learning/configuration-management/hm-hydra-zen/**' | |
| hm-imagebind: | |
| - 'embedding/hm-imagebind/**' | |
| hm-jax: | |
| - 'high-performance-computing/hm-jax/**' | |
| hm-jiwer: | |
| - 'audio/automatic-speech-recognition-evaluation/hm-jiwer/**' | |
| hm-kubeflow-calculate: | |
| - 'machine-learning/hm-kubeflow/pipelines/calculate/**' | |
| hm-kubeflow-classify-mnist: | |
| - 'machine-learning/hm-kubeflow/pipelines/classify-mnist/**' | |
| hm-lancedb: | |
| - 'data-storage/hm-lancedb/**' | |
| hm-langgraph-chat-pdf: | |
| - 'large-language-model-application/hm-langgraph/applications/chat-pdf/**' | |
| hm-librosa: | |
| - 'audio/audio-signal-analysis/hm-librosa/**' | |
| hm-lightgbm: | |
| - 'ensemble-learning/boosting/hm-lightgbm/**' | |
| hm-llama-factory: | |
| - 'large-language-model-post-training/fine-tuning/hm-llama-factory/**' | |
| hm-llama-index-chat-pdf: | |
| - 'large-language-model-application/hm-llama-index/applications/chat-pdf/**' | |
| hm-locust: | |
| - 'load-testing/hm-locust/**' | |
| hm-marimo: | |
| - 'data-analytics/hm-marimo/**' | |
| hm-metaflow-greet: | |
| - 'machine-learning/hm-metaflow/flows/greet/**' | |
| hm-mineru: | |
| - 'data-extraction/hm-mineru/**' | |
| hm-mlflow-classify-mnist: | |
| - 'machine-learning/hm-mlflow/experiments/classify-mnist/**' | |
| hm-mlflow-predict-diabetes: | |
| - 'machine-learning/hm-mlflow/experiments/predict-diabetes/**' | |
| hm-mlx-lm: | |
| - 'large-language-model-inference/hm-mlx-lm/**' | |
| hm-model2vec: | |
| - 'embedding/hm-model2vec/**' | |
| hm-narwhals: | |
| - 'data-analytics/hm-narwhals/**' | |
| hm-networkx: | |
| - 'data-analytics/hm-networkx/**' | |
| hm-numba: | |
| - 'data-analytics/hm-numba/**' | |
| hm-nvidia-modulus: | |
| - 'machine-learning/hm-nvidia-modulus/**' | |
| hm-olmocr: | |
| - 'data-extraction/hm-olmocr/**' | |
| hm-opal-client: | |
| - 'security/hm-opal-client/**' | |
| hm-open3d: | |
| - 'computer-vision/hm-open3d/**' | |
| hm-openaerostruct: | |
| - 'computer-vision/hm-openaerostruct/**' | |
| hm-openpi: | |
| - 'multimodal-model/vision-language-action-model/hm-openpi/**' | |
| hm-optimum: | |
| - 'large-language-model-inference/hm-optimum/**' | |
| hm-optuna: | |
| - 'machine-learning/hyperparameter-optimization/hm-optuna/**' | |
| hm-pandas-analyze-transactions: | |
| - 'data-analytics/hm-pandas/analyze-transactions/**' | |
| hm-pathway-aggregate-hourly-events: | |
| - 'data-processing/hm-pathway/pipelines/aggregate-hourly-events/**' | |
| hm-polars-analyze-transactions-cpu: | |
| - 'data-analytics/hm-polars/analyze-transactions-cpu/**' | |
| hm-polars-analyze-transactions-gpu: | |
| - 'data-analytics/hm-polars/analyze-transactions-gpu/**' | |
| hm-prefect-calculate: | |
| - 'data-orchestration/hm-prefect/workflows/calculate/**' | |
| hm-prefect-daft-analysis: | |
| - 'data-orchestration/hm-prefect/workflows/daft-analysis/**' | |
| hm-prefect-greet: | |
| - 'data-orchestration/hm-prefect/workflows/greet/**' | |
| hm-prefect-print-platform: | |
| - 'data-orchestration/hm-prefect/workflows/print-platform/**' | |
| hm-protobuf: | |
| - 'data-storage/hm-protobuf/**' | |
| hm-prowler: | |
| - 'security/hm-prowler/**' | |
| hm-pulumi: | |
| - 'infrastructure/hm-pulumi/**' | |
| hm-pydantic-ai-chat-pdf: | |
| - 'large-language-model-application/hm-pydantic-ai/applications/chat-pdf/**' | |
| hm-pygwalker: | |
| - 'data-visualization/hm-pygwalker/**' | |
| hm-pyvista-mount-saint-helens: | |
| - 'computer-vision/hm-pyvista/mount-saint-helens/**' | |
| hm-ray: | |
| - 'cloud-computing/hm-ray/hm-ray/**' | |
| hm-ray-calculate: | |
| - 'cloud-computing/hm-ray/applications/calculate/**' | |
| hm-ray-daft-analysis: | |
| - 'cloud-computing/hm-ray/applications/daft-analysis/**' | |
| hm-ray-process-flight-data: | |
| - 'cloud-computing/hm-ray/applications/process-flight-data/**' | |
| hm-scikit-learn: | |
| - 'machine-learning/hm-scikit-learn/**' | |
| hm-senko: | |
| - 'audio/speaker-diarization/hm-senko/**' | |
| hm-serial: | |
| - 'embedded-system/hm-serial/**' | |
| hm-sglang: | |
| - 'large-language-model-inference/hm-sglang/hm-sglang/**' | |
| hm-silero-vad: | |
| - 'audio/voice-activity-detection/hm-silero-vad/**' | |
| hm-skypilot: | |
| - 'cloud-computing/hm-skypilot/**' | |
| hm-spark-analyze-coffee-customers: | |
| - 'data-processing/hm-spark/applications/analyze-coffee-customers/**' | |
| hm-spark-find-retired-people-python: | |
| - 'data-processing/hm-spark/applications/find-retired-people-python/**' | |
| hm-spark-find-retired-people-scala: | |
| - 'data-processing/hm-spark/applications/find-retired-people-scala/**' | |
| hm-spark-find-taxi-top-routes: | |
| - 'data-processing/hm-spark/applications/find-taxi-top-routes/**' | |
| hm-spark-find-taxi-top-routes-sql: | |
| - 'data-processing/hm-spark/applications/find-taxi-top-routes-sql/**' | |
| hm-spark-ingest-from-s3-to-kafka: | |
| - 'data-processing/hm-spark/applications/ingest-from-s3-to-kafka/**' | |
| hm-spark-recommend-movies: | |
| - 'data-processing/hm-spark/applications/recommend-movies/**' | |
| hm-speaches: | |
| - 'audio/automatic-speech-recognition-inference/hm-speaches/**' | |
| hm-streamlit-live-line-chart: | |
| - 'machine-learning/hm-streamlit/applications/live-line-chart/**' | |
| hm-streamlit-map: | |
| - 'machine-learning/hm-streamlit/applications/map/**' | |
| hm-sunpy: | |
| - 'scientific-computing/hm-sunpy/**' | |
| hm-supervision-detect-objects: | |
| - 'computer-vision/hm-supervision/detect-objects/**' | |
| hm-swift: | |
| - 'large-language-model-post-training/fine-tuning/hm-swift/**' | |
| hm-tinker: | |
| - 'large-language-model-post-training/fine-tuning/hm-tinker/**' | |
| hm-torchtune: | |
| - 'large-language-model-post-training/fine-tuning/hm-torchtune/**' | |
| hm-transformers: | |
| - 'large-language-model-inference/hm-transformers/**' | |
| hm-triton: | |
| - 'parallel-computing/hm-triton/**' | |
| hm-unsloth: | |
| - 'large-language-model-post-training/fine-tuning/hm-unsloth/**' | |
| hm-whisperx: | |
| - 'audio/automatic-speech-recognition-inference/hm-whisperx/**' | |
| hm-xgboost: | |
| - 'ensemble-learning/boosting/hm-xgboost/**' | |
| hm-xxhash: | |
| - 'system-tool/hm-xxhash/**' | |
| iads-config-reader: | |
| - 'data-visualization/iads/iads-data-manager/iads-config-reader/**' | |
| iads-data-producer: | |
| - 'data-visualization/iads/iads-rtstation/iads-data-producer/**' | |
| iads-data-reader: | |
| - 'data-visualization/iads/iads-data-manager/iads-data-reader/**' | |
| ingest-flac-to-parquet: | |
| - 'data-processing/ingest-flac-to-parquet/**' | |
| k6: | |
| - 'load-testing/k6/**' | |
| kafka-rust-proto-consumer: | |
| - 'data-processing/kafka/kafka-client/kafka-rust/proto-consumer/**' | |
| kafka-rust-proto-producer: | |
| - 'data-processing/kafka/kafka-client/kafka-rust/proto-producer/**' | |
| kafka-rust-udp-kafka-bridge: | |
| - 'data-processing/kafka/kafka-client/kafka-rust/udp-kafka-bridge/**' | |
| kafka-rust-zeromq-kafka-bridge: | |
| - 'data-processing/kafka/kafka-client/kafka-rust/zeromq-kafka-bridge/**' | |
| kv-caching: | |
| - 'large-language-model-inference/kv-caching/**' | |
| lance: | |
| - 'data-storage/lance/**' | |
| liquid-neural-network: | |
| - 'liquid-neural-network/**' | |
| mamba2: | |
| - 'state-space-model/mamba2/**' | |
| mixture-of-experts: | |
| - 'large-language-model-architecture/mixture-of-experts/**' | |
| mobile-android: | |
| - 'mobile/mobile-android/**' | |
| mobile-ios: | |
| - 'mobile/mobile-ios/**' | |
| mobile-react-native: | |
| - 'mobile/mobile-react-native/**' | |
| model-context-protocol: | |
| - 'machine-learning/model-context-protocol/**' | |
| modern-bert: | |
| - 'large-language-model-pre-training/training-paradigm/masked-language-model/modern-bert/**' | |
| national-instruments-hm-pyvisa: | |
| - 'hardware-in-the-loop/national-instruments/hm-pyvisa/**' | |
| national-instruments-hm-tdms: | |
| - 'hardware-in-the-loop/national-instruments/hm-tdms/**' | |
| national-instruments-hm-veristand: | |
| - 'hardware-in-the-loop/national-instruments/veristand/hm-veristand/**' | |
| national-instruments-veristand-zeromq-bridge: | |
| - 'hardware-in-the-loop/national-instruments/veristand/VeriStandZeroMQBridge/**' | |
| nats-audio-file-publisher: | |
| - 'data-processing/nats/audio-file-publisher/**' | |
| nats-audio-file-subscriber: | |
| - 'data-processing/nats/audio-file-subscriber/**' | |
| nats-audio-stream-publisher: | |
| - 'data-processing/nats/audio-stream-publisher/**' | |
| nats-audio-stream-transcriber: | |
| - 'data-processing/nats/audio-stream-transcriber/**' | |
| nats-postgres-bridge: | |
| - 'data-processing/nats/nats-postgres-bridge/**' | |
| nats-telemetry-stream-publisher: | |
| - 'data-processing/nats/telemetry-stream-publisher/**' | |
| nats-telemetry-stream-subscriber: | |
| - 'data-processing/nats/telemetry-stream-subscriber/**' | |
| neo-bert: | |
| - 'large-language-model-pre-training/training-paradigm/masked-language-model/neo-bert/**' | |
| neural-forecasting-forecast-air-passenger-number: | |
| - 'machine-learning/neural-forecasting/forecast-air-passenger-number/**' | |
| neural-ordinary-differential-equation: | |
| - 'generative-model/neural-ordinary-differential-equation/**' | |
| nvidia-cosmos: | |
| - 'world-foundation-model/nvidia-cosmos/**' | |
| nvidia-dali: | |
| - 'machine-learning/nvidia-dali/**' | |
| nvidia-nemo: | |
| - 'audio/automatic-speech-recognition-inference/nvidia-nemo/**' | |
| open-clip: | |
| - 'embedding/open-clip/**' | |
| openvla: | |
| - 'multimodal-model/vision-language-action-model/openvla/**' | |
| pack-unpack-data: | |
| - 'embedded-system/pack-unpack-data/**' | |
| plotly-heatmap: | |
| - 'data-visualization/hm-plotly/heatmap/**' | |
| post-training-quantization: | |
| - 'large-language-model-post-training/post-training-quantization/**' | |
| production-aws-glue-spark-scripts: | |
| - 'infrastructure/opentofu/environments/production/aws/general/files/aws-glue/spark-scripts/**' | |
| proximal-policy-optimization-low-rank-adaptation: | |
| - 'large-language-model-post-training/fine-tuning/proximal-policy-optimization/low-rank-adaptation/**' | |
| prometheus: | |
| - 'data-storage/prometheus/**' | |
| q-learning: | |
| - 'reinforcement-learning/q-learning/**' | |
| quantum-computing: | |
| - 'quantum-computing/**' | |
| qwen-vl: | |
| - 'vision-language-model/qwen-vl/**' | |
| qwen3: | |
| - 'large-language-model-pre-training/training-paradigm/causal-language-model/qwen3/**' | |
| rnnoise-vad: | |
| - 'audio/voice-activity-detection/rnnoise-vad/**' | |
| robot-operating-system: | |
| - 'robotics/robot-operating-system/**' | |
| rti-connext-dds: | |
| - 'data-transport/rti-connext-dds/**' | |
| speculative-decoding: | |
| - 'large-language-model-inference/speculative-decoding/**' | |
| stable-diffusion: | |
| - 'generative-model/stable-diffusion/**' | |
| streaming-sortformer-diarizer: | |
| - 'audio/speaker-diarization/streaming-sortformer-diarizer/**' | |
| supervised-fine-tuning-low-rank-adaptation: | |
| - 'large-language-model-post-training/fine-tuning/supervised-fine-tuning/low-rank-adaptation/**' | |
| supervised-fine-tuning-quantized-low-rank-adaptation: | |
| - 'large-language-model-post-training/fine-tuning/supervised-fine-tuning/quantized-low-rank-adaptation/**' | |
| surrogate-model: | |
| - 'scientific-computing/surrogate-model/**' | |
| taichi-count-primes: | |
| - 'parallel-computing/hm-taichi/count-primes/**' | |
| taichi-fluid-solver: | |
| - 'parallel-computing/hm-taichi/fluid-solver/**' | |
| turso: | |
| - 'data-storage/turso/**' | |
| udp-receiver: | |
| - 'network/udp/udp-receiver/**' | |
| udp-sender: | |
| - 'network/udp/udp-sender/**' | |
| variational-autoencoder: | |
| - 'generative-model/variational-autoencoder/**' | |
| vision-language-action-infer: | |
| - 'multimodal-model/vision-language-action-model/vision-language-action/infer/**' | |
| vision-language-action-train: | |
| - 'multimodal-model/vision-language-action-model/vision-language-action/train/**' | |
| web-cypress: | |
| - 'web-cypress/**' | |
| web: | |
| - 'web/**' | |
| webrtc-vad: | |
| - 'audio/voice-activity-detection/webrtc-vad/**' | |
| windows-calculator: | |
| - 'operating-system/windows/calculator/**' | |
| x-plane-rest-api: | |
| - 'aerospace/x-plane/rest-api/**' | |
| x-plane-udp: | |
| - 'aerospace/x-plane/udp/**' | |
| zeromq-iads-bridge: | |
| - 'data-visualization/iads/iads-rtstation/zeromq-iads-bridge/**' | |
| outputs: | |
| # Workflows | |
| workflow-lint: ${{ steps.filter.outputs.workflow-lint }} | |
| workflow-static-type-check: ${{ steps.filter.outputs.workflow-static-type-check }} | |
| workflow-test-aerospace: ${{ steps.filter.outputs.workflow-test-aerospace }} | |
| workflow-test-api: ${{ steps.filter.outputs.workflow-test-api }} | |
| workflow-test-cloud: ${{ steps.filter.outputs.workflow-test-cloud }} | |
| workflow-test-computer-vision: ${{ steps.filter.outputs.workflow-test-computer-vision }} | |
| workflow-test-computing: ${{ steps.filter.outputs.workflow-test-computing }} | |
| workflow-test-data-analytics: ${{ steps.filter.outputs.workflow-test-data-analytics }} | |
| workflow-test-data-orchestration: ${{ steps.filter.outputs.workflow-test-data-orchestration }} | |
| workflow-test-data-processing: ${{ steps.filter.outputs.workflow-test-data-processing }} | |
| workflow-test-data-storage: ${{ steps.filter.outputs.workflow-test-data-storage }} | |
| workflow-test-data-transformation: ${{ steps.filter.outputs.workflow-test-data-transformation }} | |
| workflow-test-data-visualization: ${{ steps.filter.outputs.workflow-test-data-visualization }} | |
| workflow-test-embedded-system: ${{ steps.filter.outputs.workflow-test-embedded-system }} | |
| workflow-test-hardware-in-the-loop: ${{ steps.filter.outputs.workflow-test-hardware-in-the-loop }} | |
| workflow-test-machine-learning: ${{ steps.filter.outputs.workflow-test-machine-learning }} | |
| workflow-test-mobile: ${{ steps.filter.outputs.workflow-test-mobile }} | |
| workflow-test-network: ${{ steps.filter.outputs.workflow-test-network }} | |
| workflow-test-operating-system: ${{ steps.filter.outputs.workflow-test-operating-system }} | |
| workflow-test-web: ${{ steps.filter.outputs.workflow-test-web }} | |
| workflow: ${{ steps.filter.outputs.workflow }} | |
| # Languages | |
| ansible: ${{ steps.filter.outputs.ansible }} | |
| c-cpp: ${{ steps.filter.outputs.c-cpp }} | |
| cmake: ${{ steps.filter.outputs.cmake }} | |
| css: ${{ steps.filter.outputs.css }} | |
| docker-compose: ${{ steps.filter.outputs.docker-compose }} | |
| dockerfile: ${{ steps.filter.outputs.dockerfile }} | |
| dotenv: ${{ steps.filter.outputs.dotenv }} | |
| editorconfig: ${{ steps.filter.outputs.editorconfig }} | |
| html: ${{ steps.filter.outputs.html }} | |
| json: ${{ steps.filter.outputs.json }} | |
| justfile: ${{ steps.filter.outputs.justfile }} | |
| kubernetes: ${{ steps.filter.outputs.kubernetes }} | |
| markdown: ${{ steps.filter.outputs.markdown }} | |
| matlab: ${{ steps.filter.outputs.matlab }} | |
| natural-language: ${{ steps.filter.outputs.natural-language }} | |
| opentofu-production-airbyte: ${{ steps.filter.outputs.opentofu-production-airbyte }} | |
| opentofu-production-argo-cd: ${{ steps.filter.outputs.opentofu-production-argo-cd }} | |
| opentofu-production-aws-general: ${{ steps.filter.outputs.opentofu-production-aws-general }} | |
| opentofu-production-aws-kubernetes: ${{ steps.filter.outputs.opentofu-production-aws-kubernetes }} | |
| opentofu-production-aws-network: ${{ steps.filter.outputs.opentofu-production-aws-network }} | |
| opentofu-production-aws-storage: ${{ steps.filter.outputs.opentofu-production-aws-storage }} | |
| opentofu-production-grafana: ${{ steps.filter.outputs.opentofu-production-grafana }} | |
| opentofu-production-harbor: ${{ steps.filter.outputs.opentofu-production-harbor }} | |
| opentofu-production-nebius-applications: ${{ steps.filter.outputs.opentofu-production-nebius-applications }} | |
| opentofu-production-nebius-general: ${{ steps.filter.outputs.opentofu-production-nebius-general }} | |
| opentofu-production-nebius-kubernetes: ${{ steps.filter.outputs.opentofu-production-nebius-kubernetes }} | |
| opentofu-production-nebius-network: ${{ steps.filter.outputs.opentofu-production-nebius-network }} | |
| opentofu-production-nebius-storage: ${{ steps.filter.outputs.opentofu-production-nebius-storage }} | |
| opentofu-production-snowflake-account: ${{ steps.filter.outputs.opentofu-production-snowflake-account }} | |
| opentofu-production-snowflake-data: ${{ steps.filter.outputs.opentofu-production-snowflake-data }} | |
| opentofu-production-snowflake-general: ${{ steps.filter.outputs.opentofu-production-snowflake-general }} | |
| opentofu-production-trino-gateway: ${{ steps.filter.outputs.opentofu-production-trino-gateway }} | |
| opentofu: ${{ steps.filter.outputs.opentofu }} | |
| python: ${{ steps.filter.outputs.python }} | |
| qml: ${{ steps.filter.outputs.qml }} | |
| ruby: ${{ steps.filter.outputs.ruby }} | |
| shell: ${{ steps.filter.outputs.shell }} | |
| solidity: ${{ steps.filter.outputs.solidity }} | |
| sql: ${{ steps.filter.outputs.sql }} | |
| toml: ${{ steps.filter.outputs.toml }} | |
| verilog: ${{ steps.filter.outputs.verilog }} | |
| vhdl: ${{ steps.filter.outputs.vhdl }} | |
| xml: ${{ steps.filter.outputs.xml }} | |
| yaml: ${{ steps.filter.outputs.yaml }} | |
| # Applications | |
| actor-critic-algorithm: ${{ steps.filter.outputs.actor-critic-algorithm }} | |
| alpamayo-1: ${{ steps.filter.outputs.alpamayo-1 }} | |
| amazon-sagemaker-pytorch-mnist: ${{ steps.filter.outputs.amazon-sagemaker-pytorch-mnist }} | |
| amazon-sagemaker-triton-resnet-50-deploy: ${{ steps.filter.outputs.amazon-sagemaker-triton-resnet-50-deploy }} | |
| amazon-sagemaker-triton-resnet-50-infer: ${{ steps.filter.outputs.amazon-sagemaker-triton-resnet-50-infer }} | |
| anyup: ${{ steps.filter.outputs.anyup }} | |
| api-go: ${{ steps.filter.outputs.api-go }} | |
| api-node: ${{ steps.filter.outputs.api-node }} | |
| api-python: ${{ steps.filter.outputs.api-python }} | |
| api-rust-scripts: ${{ steps.filter.outputs.api-rust-scripts }} | |
| api-rust: ${{ steps.filter.outputs.api-rust }} | |
| arrow-flight-client: ${{ steps.filter.outputs.arrow-flight-client }} | |
| arrow-flight-server: ${{ steps.filter.outputs.arrow-flight-server }} | |
| automatic-mixed-precision: ${{ steps.filter.outputs.automatic-mixed-precision }} | |
| bert: ${{ steps.filter.outputs.bert }} | |
| bluesky: ${{ steps.filter.outputs.bluesky }} | |
| byte-pair-encoding: ${{ steps.filter.outputs.byte-pair-encoding }} | |
| call-matlab-function-in-python: ${{ steps.filter.outputs.call-matlab-function-in-python }} | |
| camera-radar-fusion: ${{ steps.filter.outputs.camera-radar-fusion }} | |
| camera-radar-lidar-fusion: ${{ steps.filter.outputs.camera-radar-lidar-fusion }} | |
| convert-modern-bert-to-core-ml: ${{ steps.filter.outputs.convert-modern-bert-to-core-ml }} | |
| convolutional-neural-network: ${{ steps.filter.outputs.convolutional-neural-network }} | |
| core-ml-tools: ${{ steps.filter.outputs.core-ml-tools }} | |
| dbt-hm-postgres: ${{ steps.filter.outputs.dbt-hm-postgres }} | |
| decode-can-blf-data: ${{ steps.filter.outputs.decode-can-blf-data }} | |
| decode-can-mf4-data: ${{ steps.filter.outputs.decode-can-mf4-data }} | |
| decode-can-trc-data: ${{ steps.filter.outputs.decode-can-trc-data }} | |
| delta-lake-read-delta-lake-by-amazon-athena: ${{ steps.filter.outputs.delta-lake-read-delta-lake-by-amazon-athena }} | |
| delta-lake-read-delta-lake-by-trino: ${{ steps.filter.outputs.delta-lake-read-delta-lake-by-trino }} | |
| delta-lake-write-to-delta-lake: ${{ steps.filter.outputs.delta-lake-write-to-delta-lake }} | |
| dense-transformer: ${{ steps.filter.outputs.dense-transformer }} | |
| development-aws-glue-spark-scripts: ${{ steps.filter.outputs.development-aws-glue-spark-scripts }} | |
| dinov3: ${{ steps.filter.outputs.dinov3 }} | |
| direct-preference-optimization-low-rank-adaptation: ${{ steps.filter.outputs.direct-preference-optimization-low-rank-adaptation }} | |
| dust-dds-publisher: ${{ steps.filter.outputs.dust-dds-publisher }} | |
| dust-dds-subscriber: ${{ steps.filter.outputs.dust-dds-subscriber }} | |
| ethereum: ${{ steps.filter.outputs.ethereum }} | |
| export-yolo-to-onnx: ${{ steps.filter.outputs.export-yolo-to-onnx }} | |
| feature-store: ${{ steps.filter.outputs.feature-store }} | |
| fine-tune-whisper: ${{ steps.filter.outputs.fine-tune-whisper }} | |
| flightradar24: ${{ steps.filter.outputs.flightradar24 }} | |
| flink-stream-tweets: ${{ steps.filter.outputs.flink-stream-tweets }} | |
| flow-matching: ${{ steps.filter.outputs.flow-matching }} | |
| format-can-data: ${{ steps.filter.outputs.format-can-data }} | |
| gemma: ${{ steps.filter.outputs.gemma }} | |
| genetic-algorithm: ${{ steps.filter.outputs.genetic-algorithm }} | |
| grafana-hm-dashboard: ${{ steps.filter.outputs.grafana-hm-dashboard }} | |
| grafana-hm-panel-plugin: ${{ steps.filter.outputs.grafana-hm-panel-plugin }} | |
| graph-neural-network: ${{ steps.filter.outputs.graph-neural-network }} | |
| group-relative-policy-optimization-low-rank-adaptation: ${{ steps.filter.outputs.group-relative-policy-optimization-low-rank-adaptation }} | |
| hm-aerosandbox: ${{ steps.filter.outputs.hm-aerosandbox }} | |
| hm-airflow: ${{ steps.filter.outputs.hm-airflow }} | |
| hm-autogluon: ${{ steps.filter.outputs.hm-autogluon }} | |
| hm-aws-parallelcluster: ${{ steps.filter.outputs.hm-aws-parallelcluster }} | |
| hm-axolotl: ${{ steps.filter.outputs.hm-axolotl }} | |
| hm-catboost: ${{ steps.filter.outputs.hm-catboost }} | |
| hm-cocoindex-embed-markdown-to-postgres: ${{ steps.filter.outputs.hm-cocoindex-embed-markdown-to-postgres }} | |
| hm-crawl4ai: ${{ steps.filter.outputs.hm-crawl4ai }} | |
| hm-cudf-analyze-transactions: ${{ steps.filter.outputs.hm-cudf-analyze-transactions }} | |
| hm-cuml: ${{ steps.filter.outputs.hm-cuml }} | |
| hm-cupy: ${{ steps.filter.outputs.hm-cupy }} | |
| hm-daft-analyze-transactions: ${{ steps.filter.outputs.hm-daft-analyze-transactions }} | |
| hm-dash-csv-visualizer: ${{ steps.filter.outputs.hm-dash-csv-visualizer }} | |
| hm-dash-parquet-visualizer: ${{ steps.filter.outputs.hm-dash-parquet-visualizer }} | |
| hm-deepeval: ${{ steps.filter.outputs.hm-deepeval }} | |
| hm-deepspeed: ${{ steps.filter.outputs.hm-deepspeed }} | |
| hm-diart: ${{ steps.filter.outputs.hm-diart }} | |
| hm-docling: ${{ steps.filter.outputs.hm-docling }} | |
| hm-duckdb-query-duckdb: ${{ steps.filter.outputs.hm-duckdb-query-duckdb }} | |
| hm-duckdb-query-lance: ${{ steps.filter.outputs.hm-duckdb-query-lance }} | |
| hm-duckdb-query-parquet: ${{ steps.filter.outputs.hm-duckdb-query-parquet }} | |
| hm-duckdb-query-protobuf: ${{ steps.filter.outputs.hm-duckdb-query-protobuf }} | |
| hm-faster-whisper: ${{ steps.filter.outputs.hm-faster-whisper }} | |
| hm-firecrawl: ${{ steps.filter.outputs.hm-firecrawl }} | |
| hm-flax: ${{ steps.filter.outputs.hm-flax }} | |
| hm-genesis: ${{ steps.filter.outputs.hm-genesis }} | |
| hm-geopandas: ${{ steps.filter.outputs.hm-geopandas }} | |
| hm-gliner: ${{ steps.filter.outputs.hm-gliner }} | |
| hm-gradio-classify-image: ${{ steps.filter.outputs.hm-gradio-classify-image }} | |
| hm-hdf5: ${{ steps.filter.outputs.hm-hdf5 }} | |
| hm-hydra-zen: ${{ steps.filter.outputs.hm-hydra-zen }} | |
| hm-imagebind: ${{ steps.filter.outputs.hm-imagebind }} | |
| hm-jax: ${{ steps.filter.outputs.hm-jax }} | |
| hm-jiwer: ${{ steps.filter.outputs.hm-jiwer }} | |
| hm-kubeflow-calculate: ${{ steps.filter.outputs.hm-kubeflow-calculate }} | |
| hm-kubeflow-classify-mnist: ${{ steps.filter.outputs.hm-kubeflow-classify-mnist }} | |
| hm-lancedb: ${{ steps.filter.outputs.hm-lancedb }} | |
| hm-langgraph-chat-pdf: ${{ steps.filter.outputs.hm-langgraph-chat-pdf }} | |
| hm-librosa: ${{ steps.filter.outputs.hm-librosa }} | |
| hm-lightgbm: ${{ steps.filter.outputs.hm-lightgbm }} | |
| hm-llama-factory: ${{ steps.filter.outputs.hm-llama-factory }} | |
| hm-llama-index-chat-pdf: ${{ steps.filter.outputs.hm-llama-index-chat-pdf }} | |
| hm-locust: ${{ steps.filter.outputs.hm-locust }} | |
| hm-marimo: ${{ steps.filter.outputs.hm-marimo }} | |
| hm-metaflow-greet: ${{ steps.filter.outputs.hm-metaflow-greet }} | |
| hm-mineru: ${{ steps.filter.outputs.hm-mineru }} | |
| hm-mlflow-classify-mnist: ${{ steps.filter.outputs.hm-mlflow-classify-mnist }} | |
| hm-mlflow-predict-diabetes: ${{ steps.filter.outputs.hm-mlflow-predict-diabetes }} | |
| hm-mlx-lm: ${{ steps.filter.outputs.hm-mlx-lm }} | |
| hm-model2vec: ${{ steps.filter.outputs.hm-model2vec }} | |
| hm-narwhals: ${{ steps.filter.outputs.hm-narwhals }} | |
| hm-networkx: ${{ steps.filter.outputs.hm-networkx }} | |
| hm-numba: ${{ steps.filter.outputs.hm-numba }} | |
| hm-nvidia-modulus: ${{ steps.filter.outputs.hm-nvidia-modulus }} | |
| hm-olmocr: ${{ steps.filter.outputs.hm-olmocr }} | |
| hm-opal-client: ${{ steps.filter.outputs.hm-opal-client }} | |
| hm-open3d: ${{ steps.filter.outputs.hm-open3d }} | |
| hm-openaerostruct: ${{ steps.filter.outputs.hm-openaerostruct }} | |
| hm-openpi: ${{ steps.filter.outputs.hm-openpi }} | |
| hm-optimum: ${{ steps.filter.outputs.hm-optimum }} | |
| hm-optuna: ${{ steps.filter.outputs.hm-optuna }} | |
| hm-pandas-analyze-transactions: ${{ steps.filter.outputs.hm-pandas-analyze-transactions }} | |
| hm-pathway-aggregate-hourly-events: ${{ steps.filter.outputs.hm-pathway-aggregate-hourly-events }} | |
| hm-polars-analyze-transactions-cpu: ${{ steps.filter.outputs.hm-polars-analyze-transactions-cpu }} | |
| hm-polars-analyze-transactions-gpu: ${{ steps.filter.outputs.hm-polars-analyze-transactions-gpu }} | |
| hm-prefect-calculate: ${{ steps.filter.outputs.hm-prefect-calculate }} | |
| hm-prefect-daft-analysis: ${{ steps.filter.outputs.hm-prefect-daft-analysis }} | |
| hm-prefect-greet: ${{ steps.filter.outputs.hm-prefect-greet }} | |
| hm-prefect-print-platform: ${{ steps.filter.outputs.hm-prefect-print-platform }} | |
| hm-protobuf: ${{ steps.filter.outputs.hm-protobuf }} | |
| hm-prowler: ${{ steps.filter.outputs.hm-prowler }} | |
| hm-pulumi: ${{ steps.filter.outputs.hm-pulumi }} | |
| hm-pydantic-ai-chat-pdf: ${{ steps.filter.outputs.hm-pydantic-ai-chat-pdf }} | |
| hm-pygwalker: ${{ steps.filter.outputs.hm-pygwalker }} | |
| hm-pyvista-mount-saint-helens: ${{ steps.filter.outputs.hm-pyvista-mount-saint-helens }} | |
| hm-ray-calculate: ${{ steps.filter.outputs.hm-ray-calculate }} | |
| hm-ray-daft-analysis: ${{ steps.filter.outputs.hm-ray-daft-analysis }} | |
| hm-ray-process-flight-data: ${{ steps.filter.outputs.hm-ray-process-flight-data }} | |
| hm-ray: ${{ steps.filter.outputs.hm-ray }} | |
| hm-scikit-learn: ${{ steps.filter.outputs.hm-scikit-learn }} | |
| hm-senko: ${{ steps.filter.outputs.hm-senko }} | |
| hm-serial: ${{ steps.filter.outputs.hm-serial }} | |
| hm-sglang: ${{ steps.filter.outputs.hm-sglang }} | |
| hm-silero-vad: ${{ steps.filter.outputs.hm-silero-vad }} | |
| hm-skypilot: ${{ steps.filter.outputs.hm-skypilot }} | |
| hm-spark-analyze-coffee-customers: ${{ steps.filter.outputs.hm-spark-analyze-coffee-customers }} | |
| hm-spark-find-retired-people-python: ${{ steps.filter.outputs.hm-spark-find-retired-people-python }} | |
| hm-spark-find-retired-people-scala: ${{ steps.filter.outputs.hm-spark-find-retired-people-scala }} | |
| hm-spark-find-taxi-top-routes-sql: ${{ steps.filter.outputs.hm-spark-find-taxi-top-routes-sql }} | |
| hm-spark-find-taxi-top-routes: ${{ steps.filter.outputs.hm-spark-find-taxi-top-routes }} | |
| hm-spark-ingest-from-s3-to-kafka: ${{ steps.filter.outputs.hm-spark-ingest-from-s3-to-kafka }} | |
| hm-spark-recommend-movies: ${{ steps.filter.outputs.hm-spark-recommend-movies }} | |
| hm-speaches: ${{ steps.filter.outputs.hm-speaches }} | |
| hm-streamlit-live-line-chart: ${{ steps.filter.outputs.hm-streamlit-live-line-chart }} | |
| hm-streamlit-map: ${{ steps.filter.outputs.hm-streamlit-map }} | |
| hm-sunpy: ${{ steps.filter.outputs.hm-sunpy }} | |
| hm-supervision-detect-objects: ${{ steps.filter.outputs.hm-supervision-detect-objects }} | |
| hm-swift: ${{ steps.filter.outputs.hm-swift }} | |
| hm-tinker: ${{ steps.filter.outputs.hm-tinker }} | |
| hm-torchtune: ${{ steps.filter.outputs.hm-torchtune }} | |
| hm-transformers: ${{ steps.filter.outputs.hm-transformers }} | |
| hm-triton: ${{ steps.filter.outputs.hm-triton }} | |
| hm-unsloth: ${{ steps.filter.outputs.hm-unsloth }} | |
| hm-whisperx: ${{ steps.filter.outputs.hm-whisperx }} | |
| hm-xgboost: ${{ steps.filter.outputs.hm-xgboost }} | |
| hm-xxhash: ${{ steps.filter.outputs.hm-xxhash }} | |
| iads-config-reader: ${{ steps.filter.outputs.iads-config-reader }} | |
| iads-data-producer: ${{ steps.filter.outputs.iads-data-producer }} | |
| iads-data-reader: ${{ steps.filter.outputs.iads-data-reader }} | |
| ingest-flac-to-parquet: ${{ steps.filter.outputs.ingest-flac-to-parquet }} | |
| k6: ${{ steps.filter.outputs.k6 }} | |
| kafka-rust-proto-consumer: ${{ steps.filter.outputs.kafka-rust-proto-consumer }} | |
| kafka-rust-proto-producer: ${{ steps.filter.outputs.kafka-rust-proto-producer }} | |
| kafka-rust-udp-kafka-bridge: ${{ steps.filter.outputs.kafka-rust-udp-kafka-bridge }} | |
| kafka-rust-zeromq-kafka-bridge: ${{ steps.filter.outputs.kafka-rust-zeromq-kafka-bridge }} | |
| kv-caching: ${{ steps.filter.outputs.kv-caching }} | |
| lance: ${{ steps.filter.outputs.lance }} | |
| liquid-neural-network: ${{ steps.filter.outputs.liquid-neural-network }} | |
| mamba2: ${{ steps.filter.outputs.mamba2 }} | |
| mixture-of-experts: ${{ steps.filter.outputs.mixture-of-experts }} | |
| mobile-android: ${{ steps.filter.outputs.mobile-android }} | |
| mobile-ios: ${{ steps.filter.outputs.mobile-ios }} | |
| mobile-react-native: ${{ steps.filter.outputs.mobile-react-native }} | |
| model-context-protocol: ${{ steps.filter.outputs.model-context-protocol }} | |
| modern-bert: ${{ steps.filter.outputs.modern-bert }} | |
| national-instruments-hm-pyvisa: ${{ steps.filter.outputs.national-instruments-hm-pyvisa }} | |
| national-instruments-hm-tdms: ${{ steps.filter.outputs.national-instruments-hm-tdms }} | |
| national-instruments-hm-veristand: ${{ steps.filter.outputs.national-instruments-hm-veristand }} | |
| national-instruments-veristand-zeromq-bridge: ${{ steps.filter.outputs.national-instruments-veristand-zeromq-bridge }} | |
| nats-audio-file-publisher: ${{ steps.filter.outputs.nats-audio-file-publisher }} | |
| nats-audio-file-subscriber: ${{ steps.filter.outputs.nats-audio-file-subscriber }} | |
| nats-audio-stream-publisher: ${{ steps.filter.outputs.nats-audio-stream-publisher }} | |
| nats-audio-stream-transcriber: ${{ steps.filter.outputs.nats-audio-stream-transcriber }} | |
| nats-postgres-bridge: ${{ steps.filter.outputs.nats-postgres-bridge }} | |
| nats-telemetry-stream-publisher: ${{ steps.filter.outputs.nats-telemetry-stream-publisher }} | |
| nats-telemetry-stream-subscriber: ${{ steps.filter.outputs.nats-telemetry-stream-subscriber }} | |
| neo-bert: ${{ steps.filter.outputs.neo-bert }} | |
| neural-forecasting-forecast-air-passenger-number: ${{ steps.filter.outputs.neural-forecasting-forecast-air-passenger-number }} | |
| neural-ordinary-differential-equation: ${{ steps.filter.outputs.neural-ordinary-differential-equation }} | |
| nvidia-cosmos: ${{ steps.filter.outputs.nvidia-cosmos }} | |
| nvidia-dali: ${{ steps.filter.outputs.nvidia-dali }} | |
| nvidia-nemo: ${{ steps.filter.outputs.nvidia-nemo }} | |
| open-clip: ${{ steps.filter.outputs.open-clip }} | |
| openvla: ${{ steps.filter.outputs.openvla }} | |
| pack-unpack-data: ${{ steps.filter.outputs.pack-unpack-data }} | |
| plotly-heatmap: ${{ steps.filter.outputs.plotly-heatmap }} | |
| post-training-quantization: ${{ steps.filter.outputs.post-training-quantization }} | |
| production-aws-glue-spark-scripts: ${{ steps.filter.outputs.production-aws-glue-spark-scripts }} | |
| prometheus: ${{ steps.filter.outputs.prometheus }} | |
| proximal-policy-optimization-low-rank-adaptation: ${{ steps.filter.outputs.proximal-policy-optimization-low-rank-adaptation }} | |
| q-learning: ${{ steps.filter.outputs.q-learning }} | |
| quantum-computing: ${{ steps.filter.outputs.quantum-computing }} | |
| qwen-vl: ${{ steps.filter.outputs.qwen-vl }} | |
| qwen3: ${{ steps.filter.outputs.qwen3 }} | |
| rnnoise-vad: ${{ steps.filter.outputs.rnnoise-vad }} | |
| robot-operating-system: ${{ steps.filter.outputs.robot-operating-system }} | |
| rti-connext-dds: ${{ steps.filter.outputs.rti-connext-dds }} | |
| speculative-decoding: ${{ steps.filter.outputs.speculative-decoding }} | |
| stable-diffusion: ${{ steps.filter.outputs.stable-diffusion }} | |
| streaming-sortformer-diarizer: ${{ steps.filter.outputs.streaming-sortformer-diarizer }} | |
| supervised-fine-tuning-low-rank-adaptation: ${{ steps.filter.outputs.supervised-fine-tuning-low-rank-adaptation }} | |
| supervised-fine-tuning-quantized-low-rank-adaptation: ${{ steps.filter.outputs.supervised-fine-tuning-quantized-low-rank-adaptation }} | |
| surrogate-model: ${{ steps.filter.outputs.surrogate-model }} | |
| taichi-count-primes: ${{ steps.filter.outputs.taichi-count-primes }} | |
| taichi-fluid-solver: ${{ steps.filter.outputs.taichi-fluid-solver }} | |
| turso: ${{ steps.filter.outputs.turso }} | |
| udp-receiver: ${{ steps.filter.outputs.udp-receiver }} | |
| udp-sender: ${{ steps.filter.outputs.udp-sender }} | |
| variational-autoencoder: ${{ steps.filter.outputs.variational-autoencoder }} | |
| vision-language-action-infer: ${{ steps.filter.outputs.vision-language-action-infer }} | |
| vision-language-action-train: ${{ steps.filter.outputs.vision-language-action-train }} | |
| web-cypress: ${{ steps.filter.outputs.web-cypress }} | |
| web: ${{ steps.filter.outputs.web }} | |
| webrtc-vad: ${{ steps.filter.outputs.webrtc-vad }} | |
| windows-calculator: ${{ steps.filter.outputs.windows-calculator }} | |
| x-plane-rest-api: ${{ steps.filter.outputs.x-plane-rest-api }} | |
| x-plane-udp: ${{ steps.filter.outputs.x-plane-udp }} | |
| zeromq-iads-bridge: ${{ steps.filter.outputs.zeromq-iads-bridge }} | |
| lint: | |
| name: Lint | |
| uses: ./.github/workflows/.lint.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-lint == 'true' }} | |
| # Languages | |
| ansible: ${{ needs.detect-changes.outputs.ansible == 'true' }} | |
| c-cpp: ${{ needs.detect-changes.outputs.c-cpp == 'true' }} | |
| cmake: ${{ needs.detect-changes.outputs.cmake == 'true' }} | |
| css: ${{ needs.detect-changes.outputs.css == 'true' }} | |
| docker-compose: ${{ needs.detect-changes.outputs.docker-compose == 'true' }} | |
| dockerfile: ${{ needs.detect-changes.outputs.dockerfile == 'true' }} | |
| dotenv: ${{ needs.detect-changes.outputs.dotenv == 'true' }} | |
| editorconfig: ${{ needs.detect-changes.outputs.editorconfig == 'true' }} | |
| html: ${{ needs.detect-changes.outputs.html == 'true' }} | |
| json: ${{ needs.detect-changes.outputs.json == 'true' }} | |
| justfile: ${{ needs.detect-changes.outputs.justfile == 'true' }} | |
| kubernetes: ${{ needs.detect-changes.outputs.kubernetes == 'true' }} | |
| markdown: ${{ needs.detect-changes.outputs.markdown == 'true' }} | |
| matlab: ${{ needs.detect-changes.outputs.matlab == 'true' }} | |
| natural-language: ${{ needs.detect-changes.outputs.natural-language == 'true' }} | |
| opentofu: ${{ needs.detect-changes.outputs.opentofu == 'true' }} | |
| python: ${{ needs.detect-changes.outputs.python == 'true' }} | |
| qml: ${{ needs.detect-changes.outputs.qml == 'true' }} | |
| ruby: ${{ needs.detect-changes.outputs.ruby == 'true' }} | |
| shell: ${{ needs.detect-changes.outputs.shell == 'true' }} | |
| solidity: ${{ needs.detect-changes.outputs.solidity == 'true' }} | |
| sql: ${{ needs.detect-changes.outputs.sql == 'true' }} | |
| toml: ${{ needs.detect-changes.outputs.toml == 'true' }} | |
| verilog: ${{ needs.detect-changes.outputs.verilog == 'true' }} | |
| vhdl: ${{ needs.detect-changes.outputs.vhdl == 'true' }} | |
| xml: ${{ needs.detect-changes.outputs.xml == 'true' }} | |
| yaml: ${{ needs.detect-changes.outputs.yaml == 'true' }} | |
| # Applications | |
| api-go: ${{ needs.detect-changes.outputs.api-go == 'true' }} | |
| api-node: ${{ needs.detect-changes.outputs.api-node == 'true' }} | |
| api-rust: ${{ needs.detect-changes.outputs.api-rust == 'true' }} | |
| camera-radar-lidar-fusion: ${{ needs.detect-changes.outputs.camera-radar-lidar-fusion == 'true' }} | |
| ethereum: ${{ needs.detect-changes.outputs.ethereum == 'true' }} | |
| grafana-hm-panel-plugin: ${{ needs.detect-changes.outputs.grafana-hm-panel-plugin == 'true' }} | |
| hm-spark-find-retired-people-scala: ${{ needs.detect-changes.outputs.hm-spark-find-retired-people-scala == 'true' }} | |
| hm-spark-ingest-from-s3-to-kafka: ${{ needs.detect-changes.outputs.hm-spark-ingest-from-s3-to-kafka == 'true' }} | |
| iads-data-producer: ${{ needs.detect-changes.outputs.iads-data-producer == 'true' }} | |
| kafka-rust-proto-consumer: ${{ needs.detect-changes.outputs.kafka-rust-proto-consumer == 'true' }} | |
| kafka-rust-proto-producer: ${{ needs.detect-changes.outputs.kafka-rust-proto-producer == 'true' }} | |
| kafka-rust-udp-kafka-bridge: ${{ needs.detect-changes.outputs.kafka-rust-udp-kafka-bridge == 'true' }} | |
| kafka-rust-zeromq-kafka-bridge: ${{ needs.detect-changes.outputs.kafka-rust-zeromq-kafka-bridge == 'true' }} | |
| mobile-android: ${{ needs.detect-changes.outputs.mobile-android == 'true' }} | |
| mobile-ios: ${{ needs.detect-changes.outputs.mobile-ios == 'true' }} | |
| mobile-react-native: ${{ needs.detect-changes.outputs.mobile-react-native == 'true' }} | |
| national-instruments-veristand-zeromq-bridge: ${{ needs.detect-changes.outputs.national-instruments-veristand-zeromq-bridge == 'true' }} | |
| udp-receiver: ${{ needs.detect-changes.outputs.udp-receiver == 'true' }} | |
| udp-sender: ${{ needs.detect-changes.outputs.udp-sender == 'true' }} | |
| web-cypress: ${{ needs.detect-changes.outputs.web-cypress == 'true' }} | |
| web: ${{ needs.detect-changes.outputs.web == 'true' }} | |
| windows-calculator: ${{ needs.detect-changes.outputs.windows-calculator == 'true' }} | |
| zeromq-iads-bridge: ${{ needs.detect-changes.outputs.zeromq-iads-bridge == 'true' }} | |
| static-type-check: | |
| name: Static Type Check | |
| uses: ./.github/workflows/.static-type-check.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-static-type-check == 'true' }} | |
| # Languages | |
| python: ${{ needs.detect-changes.outputs.python == 'true' }} | |
| # OpenTofu | |
| opentofu-production-airbyte: ${{ needs.detect-changes.outputs.opentofu-production-airbyte == 'true' }} | |
| opentofu-production-argo-cd: ${{ needs.detect-changes.outputs.opentofu-production-argo-cd == 'true' }} | |
| opentofu-production-aws-general: ${{ needs.detect-changes.outputs.opentofu-production-aws-general == 'true' }} | |
| opentofu-production-aws-kubernetes: ${{ needs.detect-changes.outputs.opentofu-production-aws-kubernetes == 'true' }} | |
| opentofu-production-aws-network: ${{ needs.detect-changes.outputs.opentofu-production-aws-network == 'true' }} | |
| opentofu-production-aws-storage: ${{ needs.detect-changes.outputs.opentofu-production-aws-storage == 'true' }} | |
| opentofu-production-grafana: ${{ needs.detect-changes.outputs.opentofu-production-grafana == 'true' }} | |
| opentofu-production-harbor: ${{ needs.detect-changes.outputs.opentofu-production-harbor == 'true' }} | |
| opentofu-production-nebius-applications: ${{ needs.detect-changes.outputs.opentofu-production-nebius-applications == 'true' }} | |
| opentofu-production-nebius-general: ${{ needs.detect-changes.outputs.opentofu-production-nebius-general == 'true' }} | |
| opentofu-production-nebius-kubernetes: ${{ needs.detect-changes.outputs.opentofu-production-nebius-kubernetes == 'true' }} | |
| opentofu-production-nebius-network: ${{ needs.detect-changes.outputs.opentofu-production-nebius-network == 'true' }} | |
| opentofu-production-nebius-storage: ${{ needs.detect-changes.outputs.opentofu-production-nebius-storage == 'true' }} | |
| opentofu-production-snowflake-account: ${{ needs.detect-changes.outputs.opentofu-production-snowflake-account == 'true' }} | |
| opentofu-production-snowflake-data: ${{ needs.detect-changes.outputs.opentofu-production-snowflake-data == 'true' }} | |
| opentofu-production-snowflake-general: ${{ needs.detect-changes.outputs.opentofu-production-snowflake-general == 'true' }} | |
| opentofu-production-trino-gateway: ${{ needs.detect-changes.outputs.opentofu-production-trino-gateway == 'true' }} | |
| # Applications | |
| api-go: ${{ needs.detect-changes.outputs.api-go == 'true' }} | |
| api-node: ${{ needs.detect-changes.outputs.api-node == 'true' }} | |
| ethereum: ${{ needs.detect-changes.outputs.ethereum == 'true' }} | |
| grafana-hm-panel-plugin: ${{ needs.detect-changes.outputs.grafana-hm-panel-plugin == 'true' }} | |
| mobile-android: ${{ needs.detect-changes.outputs.mobile-android == 'true' }} | |
| mobile-react-native: ${{ needs.detect-changes.outputs.mobile-react-native == 'true' }} | |
| web-cypress: ${{ needs.detect-changes.outputs.web-cypress == 'true' }} | |
| web: ${{ needs.detect-changes.outputs.web == 'true' }} | |
| test-mobile: | |
| name: Test Mobile | |
| uses: ./.github/workflows/.test-mobile.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-mobile == 'true' }} | |
| # Applications | |
| mobile-android: ${{ needs.detect-changes.outputs.mobile-android == 'true' }} | |
| mobile-ios: ${{ needs.detect-changes.outputs.mobile-ios == 'true' }} | |
| mobile-react-native: ${{ needs.detect-changes.outputs.mobile-react-native == 'true' }} | |
| test-web: | |
| name: Test Web | |
| uses: ./.github/workflows/.test-web.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-web == 'true' }} | |
| # Applications | |
| api-node: ${{ needs.detect-changes.outputs.api-node == 'true' }} | |
| web-cypress: ${{ needs.detect-changes.outputs.web-cypress == 'true' }} | |
| web: ${{ needs.detect-changes.outputs.web == 'true' }} | |
| test-api: | |
| name: Test API | |
| uses: ./.github/workflows/.test-api.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-api == 'true' }} | |
| # Applications | |
| api-go: ${{ needs.detect-changes.outputs.api-go == 'true' }} | |
| api-node: ${{ needs.detect-changes.outputs.api-node == 'true' }} | |
| api-python: ${{ needs.detect-changes.outputs.api-python == 'true' }} | |
| api-rust: ${{ needs.detect-changes.outputs.api-rust == 'true' }} | |
| api-rust-scripts: ${{ needs.detect-changes.outputs.api-rust-scripts == 'true' }} | |
| hm-locust: ${{ needs.detect-changes.outputs.hm-locust == 'true' }} | |
| k6: ${{ needs.detect-changes.outputs.k6 == 'true' }} | |
| test-data-orchestration: | |
| name: Test Data Orchestration | |
| uses: ./.github/workflows/.test-data-orchestration.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-data-orchestration == 'true' }} | |
| # Applications | |
| hm-airflow: ${{ needs.detect-changes.outputs.hm-airflow == 'true' }} | |
| hm-prefect-calculate: ${{ needs.detect-changes.outputs.hm-prefect-calculate == 'true' }} | |
| hm-prefect-daft-analysis: ${{ needs.detect-changes.outputs.hm-prefect-daft-analysis == 'true' }} | |
| hm-prefect-greet: ${{ needs.detect-changes.outputs.hm-prefect-greet == 'true' }} | |
| hm-prefect-print-platform: ${{ needs.detect-changes.outputs.hm-prefect-print-platform == 'true' }} | |
| test-data-processing: | |
| name: Test Data Processing | |
| uses: ./.github/workflows/.test-data-processing.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-data-processing == 'true' }} | |
| # Applications | |
| flink-stream-tweets: ${{ needs.detect-changes.outputs.flink-stream-tweets == 'true' }} | |
| hm-cocoindex-embed-markdown-to-postgres: ${{ needs.detect-changes.outputs.hm-cocoindex-embed-markdown-to-postgres == 'true' }} | |
| hm-pathway-aggregate-hourly-events: ${{ needs.detect-changes.outputs.hm-pathway-aggregate-hourly-events == 'true' }} | |
| hm-spark-analyze-coffee-customers: ${{ needs.detect-changes.outputs.hm-spark-analyze-coffee-customers == 'true' }} | |
| hm-spark-find-retired-people-python: ${{ needs.detect-changes.outputs.hm-spark-find-retired-people-python == 'true' }} | |
| hm-spark-find-retired-people-scala: ${{ needs.detect-changes.outputs.hm-spark-find-retired-people-scala == 'true' }} | |
| hm-spark-find-taxi-top-routes-sql: ${{ needs.detect-changes.outputs.hm-spark-find-taxi-top-routes-sql == 'true' }} | |
| hm-spark-find-taxi-top-routes: ${{ needs.detect-changes.outputs.hm-spark-find-taxi-top-routes == 'true' }} | |
| hm-spark-ingest-from-s3-to-kafka: ${{ needs.detect-changes.outputs.hm-spark-ingest-from-s3-to-kafka == 'true' }} | |
| hm-spark-recommend-movies: ${{ needs.detect-changes.outputs.hm-spark-recommend-movies == 'true' }} | |
| ingest-flac-to-parquet: ${{ needs.detect-changes.outputs.ingest-flac-to-parquet == 'true' }} | |
| kafka-rust-proto-consumer: ${{ needs.detect-changes.outputs.kafka-rust-proto-consumer == 'true' }} | |
| kafka-rust-proto-producer: ${{ needs.detect-changes.outputs.kafka-rust-proto-producer == 'true' }} | |
| kafka-rust-udp-kafka-bridge: ${{ needs.detect-changes.outputs.kafka-rust-udp-kafka-bridge == 'true' }} | |
| kafka-rust-zeromq-kafka-bridge: ${{ needs.detect-changes.outputs.kafka-rust-zeromq-kafka-bridge == 'true' }} | |
| nats-audio-file-publisher: ${{ needs.detect-changes.outputs.nats-audio-file-publisher == 'true' }} | |
| nats-audio-file-subscriber: ${{ needs.detect-changes.outputs.nats-audio-file-subscriber == 'true' }} | |
| nats-audio-stream-publisher: ${{ needs.detect-changes.outputs.nats-audio-stream-publisher == 'true' }} | |
| nats-audio-stream-transcriber: ${{ needs.detect-changes.outputs.nats-audio-stream-transcriber == 'true' }} | |
| nats-postgres-bridge: ${{ needs.detect-changes.outputs.nats-postgres-bridge == 'true' }} | |
| nats-telemetry-stream-publisher: ${{ needs.detect-changes.outputs.nats-telemetry-stream-publisher == 'true' }} | |
| nats-telemetry-stream-subscriber: ${{ needs.detect-changes.outputs.nats-telemetry-stream-subscriber == 'true' }} | |
| test-data-transformation: | |
| name: Test Data Transformation | |
| uses: ./.github/workflows/.test-data-transformation.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-data-transformation == 'true' }} | |
| # Applications | |
| dbt-hm-postgres: ${{ needs.detect-changes.outputs.dbt-hm-postgres == 'true' }} | |
| test-data-storage: | |
| name: Test Data Storage | |
| uses: ./.github/workflows/.test-data-storage.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-data-storage == 'true' }} | |
| # Applications | |
| delta-lake-read-delta-lake-by-amazon-athena: ${{ needs.detect-changes.outputs.delta-lake-read-delta-lake-by-amazon-athena == 'true' }} | |
| delta-lake-read-delta-lake-by-trino: ${{ needs.detect-changes.outputs.delta-lake-read-delta-lake-by-trino == 'true' }} | |
| delta-lake-write-to-delta-lake: ${{ needs.detect-changes.outputs.delta-lake-write-to-delta-lake == 'true' }} | |
| hm-duckdb-query-duckdb: ${{ needs.detect-changes.outputs.hm-duckdb-query-duckdb == 'true' }} | |
| hm-duckdb-query-lance: ${{ needs.detect-changes.outputs.hm-duckdb-query-lance == 'true' }} | |
| hm-duckdb-query-parquet: ${{ needs.detect-changes.outputs.hm-duckdb-query-parquet == 'true' }} | |
| hm-duckdb-query-protobuf: ${{ needs.detect-changes.outputs.hm-duckdb-query-protobuf == 'true' }} | |
| hm-hdf5: ${{ needs.detect-changes.outputs.hm-hdf5 == 'true' }} | |
| hm-lancedb: ${{ needs.detect-changes.outputs.hm-lancedb == 'true' }} | |
| hm-protobuf: ${{ needs.detect-changes.outputs.hm-protobuf == 'true' }} | |
| lance: ${{ needs.detect-changes.outputs.lance == 'true' }} | |
| prometheus: ${{ needs.detect-changes.outputs.prometheus == 'true' }} | |
| turso: ${{ needs.detect-changes.outputs.turso == 'true' }} | |
| test-data-analytics: | |
| name: Test Data Analytics | |
| uses: ./.github/workflows/.test-data-analytics.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-data-analytics == 'true' }} | |
| # Applications | |
| hm-cudf-analyze-transactions: ${{ needs.detect-changes.outputs.hm-cudf-analyze-transactions == 'true' }} | |
| hm-cupy: ${{ needs.detect-changes.outputs.hm-cupy == 'true' }} | |
| hm-daft-analyze-transactions: ${{ needs.detect-changes.outputs.hm-daft-analyze-transactions == 'true' }} | |
| hm-geopandas: ${{ needs.detect-changes.outputs.hm-geopandas == 'true' }} | |
| hm-marimo: ${{ needs.detect-changes.outputs.hm-marimo == 'true' }} | |
| hm-narwhals: ${{ needs.detect-changes.outputs.hm-narwhals == 'true' }} | |
| hm-networkx: ${{ needs.detect-changes.outputs.hm-networkx == 'true' }} | |
| hm-numba: ${{ needs.detect-changes.outputs.hm-numba == 'true' }} | |
| hm-pandas-analyze-transactions: ${{ needs.detect-changes.outputs.hm-pandas-analyze-transactions == 'true' }} | |
| hm-polars-analyze-transactions-cpu: ${{ needs.detect-changes.outputs.hm-polars-analyze-transactions-cpu == 'true' }} | |
| hm-polars-analyze-transactions-gpu: ${{ needs.detect-changes.outputs.hm-polars-analyze-transactions-gpu == 'true' }} | |
| test-data-visualization: | |
| name: Test Data Visualization | |
| uses: ./.github/workflows/.test-data-visualization.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-data-visualization == 'true' }} | |
| # Applications | |
| grafana-hm-dashboard: ${{ needs.detect-changes.outputs.grafana-hm-dashboard == 'true' }} | |
| grafana-hm-panel-plugin: ${{ needs.detect-changes.outputs.grafana-hm-panel-plugin == 'true' }} | |
| hm-dash-csv-visualizer: ${{ needs.detect-changes.outputs.hm-dash-csv-visualizer == 'true' }} | |
| hm-dash-parquet-visualizer: ${{ needs.detect-changes.outputs.hm-dash-parquet-visualizer == 'true' }} | |
| hm-pygwalker: ${{ needs.detect-changes.outputs.hm-pygwalker == 'true' }} | |
| iads-config-reader: ${{ needs.detect-changes.outputs.iads-config-reader == 'true' }} | |
| iads-data-producer: ${{ needs.detect-changes.outputs.iads-data-producer == 'true' }} | |
| iads-data-reader: ${{ needs.detect-changes.outputs.iads-data-reader == 'true' }} | |
| plotly-heatmap: ${{ needs.detect-changes.outputs.plotly-heatmap == 'true' }} | |
| zeromq-iads-bridge: ${{ needs.detect-changes.outputs.zeromq-iads-bridge == 'true' }} | |
| test-computing: | |
| name: Test Computing | |
| uses: ./.github/workflows/.test-computing.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-computing == 'true' }} | |
| # Applications | |
| # Evolutionary Algorithm | |
| genetic-algorithm: ${{ needs.detect-changes.outputs.genetic-algorithm == 'true' }} | |
| # Scientific Computing | |
| hm-sunpy: ${{ needs.detect-changes.outputs.hm-sunpy == 'true' }} | |
| surrogate-model: ${{ needs.detect-changes.outputs.surrogate-model == 'true' }} | |
| # Parallel Computing | |
| hm-triton: ${{ needs.detect-changes.outputs.hm-triton == 'true' }} | |
| taichi-count-primes: ${{ needs.detect-changes.outputs.taichi-count-primes == 'true' }} | |
| taichi-fluid-solver: ${{ needs.detect-changes.outputs.taichi-fluid-solver == 'true' }} | |
| # High-Performance Computing | |
| hm-jax: ${{ needs.detect-changes.outputs.hm-jax == 'true' }} | |
| # Quantum Computing | |
| quantum-computing: ${{ needs.detect-changes.outputs.quantum-computing == 'true' }} | |
| # Cloud Computing | |
| hm-ray: ${{ needs.detect-changes.outputs.hm-ray == 'true' }} | |
| hm-ray-calculate: ${{ needs.detect-changes.outputs.hm-ray-calculate == 'true' }} | |
| hm-ray-daft-analysis: ${{ needs.detect-changes.outputs.hm-ray-daft-analysis == 'true' }} | |
| hm-ray-process-flight-data: ${{ needs.detect-changes.outputs.hm-ray-process-flight-data == 'true' }} | |
| hm-skypilot: ${{ needs.detect-changes.outputs.hm-skypilot == 'true' }} | |
| test-cloud: | |
| name: Test Cloud | |
| uses: ./.github/workflows/.test-cloud.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-cloud == 'true' }} | |
| # Applications | |
| # Cloud Platform | |
| amazon-sagemaker-pytorch-mnist: ${{ needs.detect-changes.outputs.amazon-sagemaker-pytorch-mnist == 'true' }} | |
| hm-aws-parallelcluster: ${{ needs.detect-changes.outputs.hm-aws-parallelcluster == 'true' }} | |
| # Cloud Infrastructure | |
| hm-pulumi: ${{ needs.detect-changes.outputs.hm-pulumi == 'true' }} | |
| production-aws-glue-spark-scripts: ${{ needs.detect-changes.outputs.production-aws-glue-spark-scripts == 'true' }} | |
| # Cloud Security | |
| hm-prowler: ${{ needs.detect-changes.outputs.hm-prowler == 'true' }} | |
| test-machine-learning: | |
| name: Test Machine Learning | |
| uses: ./.github/workflows/.test-machine-learning.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-machine-learning == 'true' }} | |
| # Applications | |
| actor-critic-algorithm: ${{ needs.detect-changes.outputs.actor-critic-algorithm == 'true' }} | |
| alpamayo-1: ${{ needs.detect-changes.outputs.alpamayo-1 == 'true' }} | |
| amazon-sagemaker-triton-resnet-50-deploy: ${{ needs.detect-changes.outputs.amazon-sagemaker-triton-resnet-50-deploy == 'true' }} | |
| amazon-sagemaker-triton-resnet-50-infer: ${{ needs.detect-changes.outputs.amazon-sagemaker-triton-resnet-50-infer == 'true' }} | |
| automatic-mixed-precision: ${{ needs.detect-changes.outputs.automatic-mixed-precision == 'true' }} | |
| bert: ${{ needs.detect-changes.outputs.bert == 'true' }} | |
| byte-pair-encoding: ${{ needs.detect-changes.outputs.byte-pair-encoding == 'true' }} | |
| convert-modern-bert-to-core-ml: ${{ needs.detect-changes.outputs.convert-modern-bert-to-core-ml == 'true' }} | |
| convolutional-neural-network: ${{ needs.detect-changes.outputs.convolutional-neural-network == 'true' }} | |
| core-ml-tools: ${{ needs.detect-changes.outputs.core-ml-tools == 'true' }} | |
| dense-transformer: ${{ needs.detect-changes.outputs.dense-transformer == 'true' }} | |
| direct-preference-optimization-low-rank-adaptation: ${{ needs.detect-changes.outputs.direct-preference-optimization-low-rank-adaptation == 'true' }} | |
| feature-store: ${{ needs.detect-changes.outputs.feature-store == 'true' }} | |
| fine-tune-whisper: ${{ needs.detect-changes.outputs.fine-tune-whisper == 'true' }} | |
| flow-matching: ${{ needs.detect-changes.outputs.flow-matching == 'true' }} | |
| gemma: ${{ needs.detect-changes.outputs.gemma == 'true' }} | |
| graph-neural-network: ${{ needs.detect-changes.outputs.graph-neural-network == 'true' }} | |
| group-relative-policy-optimization-low-rank-adaptation: ${{ needs.detect-changes.outputs.group-relative-policy-optimization-low-rank-adaptation == 'true' }} | |
| hm-autogluon: ${{ needs.detect-changes.outputs.hm-autogluon == 'true' }} | |
| hm-axolotl: ${{ needs.detect-changes.outputs.hm-axolotl == 'true' }} | |
| hm-catboost: ${{ needs.detect-changes.outputs.hm-catboost == 'true' }} | |
| hm-crawl4ai: ${{ needs.detect-changes.outputs.hm-crawl4ai == 'true' }} | |
| hm-cuml: ${{ needs.detect-changes.outputs.hm-cuml == 'true' }} | |
| hm-deepeval: ${{ needs.detect-changes.outputs.hm-deepeval == 'true' }} | |
| hm-deepspeed: ${{ needs.detect-changes.outputs.hm-deepspeed == 'true' }} | |
| hm-diart: ${{ needs.detect-changes.outputs.hm-diart == 'true' }} | |
| hm-docling: ${{ needs.detect-changes.outputs.hm-docling == 'true' }} | |
| hm-faster-whisper: ${{ needs.detect-changes.outputs.hm-faster-whisper == 'true' }} | |
| hm-firecrawl: ${{ needs.detect-changes.outputs.hm-firecrawl == 'true' }} | |
| hm-flax: ${{ needs.detect-changes.outputs.hm-flax == 'true' }} | |
| hm-genesis: ${{ needs.detect-changes.outputs.hm-genesis == 'true' }} | |
| hm-gliner: ${{ needs.detect-changes.outputs.hm-gliner == 'true' }} | |
| hm-gradio-classify-image: ${{ needs.detect-changes.outputs.hm-gradio-classify-image == 'true' }} | |
| hm-hydra-zen: ${{ needs.detect-changes.outputs.hm-hydra-zen == 'true' }} | |
| hm-imagebind: ${{ needs.detect-changes.outputs.hm-imagebind == 'true' }} | |
| hm-jiwer: ${{ needs.detect-changes.outputs.hm-jiwer == 'true' }} | |
| hm-kubeflow-calculate: ${{ needs.detect-changes.outputs.hm-kubeflow-calculate == 'true' }} | |
| hm-kubeflow-classify-mnist: ${{ needs.detect-changes.outputs.hm-kubeflow-classify-mnist == 'true' }} | |
| hm-langgraph-chat-pdf: ${{ needs.detect-changes.outputs.hm-langgraph-chat-pdf == 'true' }} | |
| hm-librosa: ${{ needs.detect-changes.outputs.hm-librosa == 'true' }} | |
| hm-lightgbm: ${{ needs.detect-changes.outputs.hm-lightgbm == 'true' }} | |
| hm-llama-factory: ${{ needs.detect-changes.outputs.hm-llama-factory == 'true' }} | |
| hm-llama-index-chat-pdf: ${{ needs.detect-changes.outputs.hm-llama-index-chat-pdf == 'true' }} | |
| hm-metaflow-greet: ${{ needs.detect-changes.outputs.hm-metaflow-greet == 'true' }} | |
| hm-mineru: ${{ needs.detect-changes.outputs.hm-mineru == 'true' }} | |
| hm-mlflow-classify-mnist: ${{ needs.detect-changes.outputs.hm-mlflow-classify-mnist == 'true' }} | |
| hm-mlflow-predict-diabetes: ${{ needs.detect-changes.outputs.hm-mlflow-predict-diabetes == 'true' }} | |
| hm-mlx-lm: ${{ needs.detect-changes.outputs.hm-mlx-lm == 'true' }} | |
| hm-model2vec: ${{ needs.detect-changes.outputs.hm-model2vec == 'true' }} | |
| hm-nvidia-modulus: ${{ needs.detect-changes.outputs.hm-nvidia-modulus == 'true' }} | |
| hm-olmocr: ${{ needs.detect-changes.outputs.hm-olmocr == 'true' }} | |
| hm-openpi: ${{ needs.detect-changes.outputs.hm-openpi == 'true' }} | |
| hm-optimum: ${{ needs.detect-changes.outputs.hm-optimum == 'true' }} | |
| hm-optuna: ${{ needs.detect-changes.outputs.hm-optuna == 'true' }} | |
| hm-pydantic-ai-chat-pdf: ${{ needs.detect-changes.outputs.hm-pydantic-ai-chat-pdf == 'true' }} | |
| hm-scikit-learn: ${{ needs.detect-changes.outputs.hm-scikit-learn == 'true' }} | |
| hm-senko: ${{ needs.detect-changes.outputs.hm-senko == 'true' }} | |
| hm-sglang: ${{ needs.detect-changes.outputs.hm-sglang == 'true' }} | |
| hm-silero-vad: ${{ needs.detect-changes.outputs.hm-silero-vad == 'true' }} | |
| hm-speaches: ${{ needs.detect-changes.outputs.hm-speaches == 'true' }} | |
| hm-streamlit-live-line-chart: ${{ needs.detect-changes.outputs.hm-streamlit-live-line-chart == 'true' }} | |
| hm-streamlit-map: ${{ needs.detect-changes.outputs.hm-streamlit-map == 'true' }} | |
| hm-swift: ${{ needs.detect-changes.outputs.hm-swift == 'true' }} | |
| hm-tinker: ${{ needs.detect-changes.outputs.hm-tinker == 'true' }} | |
| hm-torchtune: ${{ needs.detect-changes.outputs.hm-torchtune == 'true' }} | |
| hm-transformers: ${{ needs.detect-changes.outputs.hm-transformers == 'true' }} | |
| hm-unsloth: ${{ needs.detect-changes.outputs.hm-unsloth == 'true' }} | |
| hm-whisperx: ${{ needs.detect-changes.outputs.hm-whisperx == 'true' }} | |
| hm-xgboost: ${{ needs.detect-changes.outputs.hm-xgboost == 'true' }} | |
| kv-caching: ${{ needs.detect-changes.outputs.kv-caching == 'true' }} | |
| liquid-neural-network: ${{ needs.detect-changes.outputs.liquid-neural-network == 'true' }} | |
| mamba2: ${{ needs.detect-changes.outputs.mamba2 == 'true' }} | |
| mixture-of-experts: ${{ needs.detect-changes.outputs.mixture-of-experts == 'true' }} | |
| model-context-protocol: ${{ needs.detect-changes.outputs.model-context-protocol == 'true' }} | |
| modern-bert: ${{ needs.detect-changes.outputs.modern-bert == 'true' }} | |
| neo-bert: ${{ needs.detect-changes.outputs.neo-bert == 'true' }} | |
| neural-forecasting-forecast-air-passenger-number: ${{ needs.detect-changes.outputs.neural-forecasting-forecast-air-passenger-number == 'true' }} | |
| neural-ordinary-differential-equation: ${{ needs.detect-changes.outputs.neural-ordinary-differential-equation == 'true' }} | |
| nvidia-cosmos: ${{ needs.detect-changes.outputs.nvidia-cosmos == 'true' }} | |
| nvidia-dali: ${{ needs.detect-changes.outputs.nvidia-dali == 'true' }} | |
| nvidia-nemo: ${{ needs.detect-changes.outputs.nvidia-nemo == 'true' }} | |
| open-clip: ${{ needs.detect-changes.outputs.open-clip == 'true' }} | |
| openvla: ${{ needs.detect-changes.outputs.openvla == 'true' }} | |
| post-training-quantization: ${{ needs.detect-changes.outputs.post-training-quantization == 'true' }} | |
| proximal-policy-optimization-low-rank-adaptation: ${{ needs.detect-changes.outputs.proximal-policy-optimization-low-rank-adaptation == 'true' }} | |
| q-learning: ${{ needs.detect-changes.outputs.q-learning == 'true' }} | |
| qwen-vl: ${{ needs.detect-changes.outputs.qwen-vl == 'true' }} | |
| qwen3: ${{ needs.detect-changes.outputs.qwen3 == 'true' }} | |
| rnnoise-vad: ${{ needs.detect-changes.outputs.rnnoise-vad == 'true' }} | |
| speculative-decoding: ${{ needs.detect-changes.outputs.speculative-decoding == 'true' }} | |
| stable-diffusion: ${{ needs.detect-changes.outputs.stable-diffusion == 'true' }} | |
| streaming-sortformer-diarizer: ${{ needs.detect-changes.outputs.streaming-sortformer-diarizer == 'true' }} | |
| supervised-fine-tuning-low-rank-adaptation: ${{ needs.detect-changes.outputs.supervised-fine-tuning-low-rank-adaptation == 'true' }} | |
| supervised-fine-tuning-quantized-low-rank-adaptation: ${{ needs.detect-changes.outputs.supervised-fine-tuning-quantized-low-rank-adaptation == 'true' }} | |
| variational-autoencoder: ${{ needs.detect-changes.outputs.variational-autoencoder == 'true' }} | |
| vision-language-action-infer: ${{ needs.detect-changes.outputs.vision-language-action-infer == 'true' }} | |
| vision-language-action-train: ${{ needs.detect-changes.outputs.vision-language-action-train == 'true' }} | |
| webrtc-vad: ${{ needs.detect-changes.outputs.webrtc-vad == 'true' }} | |
| test-computer-vision: | |
| name: Test Computer Vision | |
| uses: ./.github/workflows/.test-computer-vision.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-computer-vision == 'true' }} | |
| # Applications | |
| anyup: ${{ needs.detect-changes.outputs.anyup == 'true' }} | |
| dinov3: ${{ needs.detect-changes.outputs.dinov3 == 'true' }} | |
| export-yolo-to-onnx: ${{ needs.detect-changes.outputs.export-yolo-to-onnx == 'true' }} | |
| hm-open3d: ${{ needs.detect-changes.outputs.hm-open3d == 'true' }} | |
| hm-pyvista-mount-saint-helens: ${{ needs.detect-changes.outputs.hm-pyvista-mount-saint-helens == 'true' }} | |
| hm-supervision-detect-objects: ${{ needs.detect-changes.outputs.hm-supervision-detect-objects == 'true' }} | |
| test-network: | |
| name: Test Network | |
| uses: ./.github/workflows/.test-network.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-network == 'true' }} | |
| # Applications | |
| arrow-flight-client: ${{ needs.detect-changes.outputs.arrow-flight-client == 'true' }} | |
| arrow-flight-server: ${{ needs.detect-changes.outputs.arrow-flight-server == 'true' }} | |
| dust-dds-publisher: ${{ needs.detect-changes.outputs.dust-dds-publisher == 'true' }} | |
| dust-dds-subscriber: ${{ needs.detect-changes.outputs.dust-dds-subscriber == 'true' }} | |
| rti-connext-dds: ${{ needs.detect-changes.outputs.rti-connext-dds == 'true' }} | |
| udp-receiver: ${{ needs.detect-changes.outputs.udp-receiver == 'true' }} | |
| udp-sender: ${{ needs.detect-changes.outputs.udp-sender == 'true' }} | |
| test-operating-system: | |
| name: Test Operating System | |
| uses: ./.github/workflows/.test-operating-system.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-operating-system == 'true' }} | |
| # Applications | |
| windows-calculator: ${{ needs.detect-changes.outputs.windows-calculator == 'true' }} | |
| test-embedded-system: | |
| name: Test Embedded System | |
| uses: ./.github/workflows/.test-embedded-system.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-embedded-system == 'true' }} | |
| # Applications | |
| decode-can-blf-data: ${{ needs.detect-changes.outputs.decode-can-blf-data == 'true' }} | |
| decode-can-mf4-data: ${{ needs.detect-changes.outputs.decode-can-mf4-data == 'true' }} | |
| decode-can-trc-data: ${{ needs.detect-changes.outputs.decode-can-trc-data == 'true' }} | |
| format-can-data: ${{ needs.detect-changes.outputs.format-can-data == 'true' }} | |
| hm-serial: ${{ needs.detect-changes.outputs.hm-serial == 'true' }} | |
| pack-unpack-data: ${{ needs.detect-changes.outputs.pack-unpack-data == 'true' }} | |
| test-hardware-in-the-loop: | |
| name: Test Hardware-in-the-Loop | |
| uses: ./.github/workflows/.test-hardware-in-the-loop.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-hardware-in-the-loop == 'true' }} | |
| # Applications | |
| national-instruments-hm-pyvisa: ${{ needs.detect-changes.outputs.national-instruments-hm-pyvisa == 'true' }} | |
| national-instruments-hm-tdms: ${{ needs.detect-changes.outputs.national-instruments-hm-tdms == 'true' }} | |
| national-instruments-hm-veristand: ${{ needs.detect-changes.outputs.national-instruments-hm-veristand == 'true' }} | |
| test-aerospace: | |
| name: Test Aerospace | |
| uses: ./.github/workflows/.test-aerospace.yml | |
| secrets: inherit | |
| needs: detect-changes | |
| with: | |
| # Workflows | |
| workflow: ${{ needs.detect-changes.outputs.workflow-test-aerospace == 'true' }} | |
| # Applications | |
| bluesky: ${{ needs.detect-changes.outputs.bluesky == 'true' }} | |
| camera-radar-fusion: ${{ needs.detect-changes.outputs.camera-radar-fusion == 'true' }} | |
| camera-radar-lidar-fusion: ${{ needs.detect-changes.outputs.camera-radar-lidar-fusion == 'true' }} | |
| flightradar24: ${{ needs.detect-changes.outputs.flightradar24 == 'true' }} | |
| hm-aerosandbox: ${{ needs.detect-changes.outputs.hm-aerosandbox == 'true' }} | |
| hm-openaerostruct: ${{ needs.detect-changes.outputs.hm-openaerostruct == 'true' }} | |
| x-plane-rest-api: ${{ needs.detect-changes.outputs.x-plane-rest-api == 'true' }} | |
| x-plane-udp: ${{ needs.detect-changes.outputs.x-plane-udp == 'true' }} | |
| call-matlab-function-in-python: | |
| name: Call MATLAB Function in Python | Test | |
| needs: detect-changes | |
| if: ${{ false }} | |
| # if: ${{ needs.detect-changes.outputs.workflow == 'true' || needs.detect-changes.outputs.call-matlab-function-in-python == 'true' }} | |
| runs-on: ubuntu-24.04-arm | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6.0.2 | |
| - name: Set up MATLAB | |
| uses: matlab-actions/setup-matlab@v2.6.1 | |
| with: | |
| release: R2024a | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7.2.1 | |
| with: | |
| version: 0.10.0 | |
| enable-cache: true | |
| cache-dependency-glob: matlab/call-matlab-function-in-python/uv.lock | |
| - name: Set up Python | |
| uses: actions/setup-python@v6.2.0 | |
| with: | |
| python-version-file: matlab/call-matlab-function-in-python/.python-version | |
| - name: Install dependencies | |
| working-directory: matlab/call-matlab-function-in-python | |
| run: | | |
| uv sync --dev | |
| - name: Test | |
| working-directory: matlab/call-matlab-function-in-python | |
| run: | | |
| uv run poe test-coverage | |
| - name: Upload coverage to Codecov | |
| uses: codecov/codecov-action@v5.5.2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| slug: hongbo-miao/hongbomiao.com | |
| directory: matlab/call-matlab-function-in-python | |
| xxhash-test: | |
| name: xxHash | Test | |
| needs: detect-changes | |
| if: ${{ needs.detect-changes.outputs.workflow == 'true' || needs.detect-changes.outputs.hm-xxhash == 'true' }} | |
| runs-on: ubuntu-24.04-arm | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6.0.2 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7.2.1 | |
| with: | |
| version: 0.10.0 | |
| enable-cache: true | |
| cache-dependency-glob: system-tool/hm-xxhash/uv.lock | |
| - name: Set up Python | |
| uses: actions/setup-python@v6.2.0 | |
| with: | |
| python-version-file: system-tool/hm-xxhash/.python-version | |
| - name: Install dependencies | |
| working-directory: system-tool/hm-xxhash | |
| run: | | |
| uv sync --dev | |
| - name: Test | |
| working-directory: system-tool/hm-xxhash | |
| run: | | |
| uv run poe test-coverage | |
| - name: Upload coverage to Codecov | |
| uses: codecov/codecov-action@v5.5.2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| slug: hongbo-miao/hongbomiao.com | |
| directory: system-tool/hm-xxhash | |
| opa-test: | |
| name: OPA | Test | |
| needs: detect-changes | |
| if: ${{ needs.detect-changes.outputs.workflow == 'true' || needs.detect-changes.outputs.api-go == 'true' }} | |
| runs-on: ubuntu-24.04-arm | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6.0.2 | |
| - name: Set up OPA | |
| uses: open-policy-agent/setup-opa@v2.3.0 | |
| with: | |
| version: 0.70.0 | |
| - name: Test | |
| run: | | |
| opa test api/api-go/internal/graphql_server/policies/*.rego -v | |
| ros-test: | |
| name: ROS | Test | |
| needs: detect-changes | |
| if: ${{ false }} | |
| # if: ${{ needs.detect-changes.outputs.workflow == 'true' || needs.detect-changes.outputs.robot-operating-system == 'true' }} | |
| runs-on: ubuntu-24.04-arm | |
| timeout-minutes: 30 | |
| container: | |
| image: ubuntu:noble | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6.0.2 | |
| - name: Setup ROS | |
| uses: ros-tooling/setup-ros@0.7.15 | |
| with: | |
| required-ros-distributions: jazzy | |
| - name: Build and test | |
| uses: ros-tooling/action-ros-ci@0.4.5 | |
| with: | |
| package-name: turtle_robot | |
| target-ros2-distro: jazzy | |
| hm-opal-client-build: | |
| name: HM OPAL Client | Build | |
| needs: detect-changes | |
| if: ${{ needs.detect-changes.outputs.workflow == 'true' || needs.detect-changes.outputs.hm-opal-client == 'true' }} | |
| runs-on: ubuntu-24.04-arm | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6.0.2 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3.12.0 | |
| - name: Build Docker image | |
| uses: docker/build-push-action@v6.18.0 | |
| with: | |
| context: . | |
| file: ./security/hm-opal-client/Dockerfile | |
| cache-from: type=gha | |
| cache-to: type=gha,mode=max |