ソース情報
- リポジトリ
- NVIDIA/cudf
- ソースの最終更新活動
- 2026年7月28日 18:39
- 検出された SKILL.md の言語
- 英語
- スター
- 9,732
- フォーク
- 1,096
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/NVIDIA/cudf --skill update-narwhals-testingコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
Debug and fix pandas test suite failures under the cudf.pandas compatibility layer. Use when given pytest node IDs of failing pandas tests that need to be fixed for cudf.pandas compatibility.
Benchmark a cuDF branch, WIP changes, or a PR against the `main` branch
SOC 職業分類に基づく
SKILL.md を表示中
| name | update-narwhals-testing |
| description | Use when updating Narwhals for cudf-polars and cudf testing in CI |
This rule describes the procedure for updating Narwhals unit testing for cudf-polars
and cudf in CI. A successful update involves verifying locally that the variations of Narwhals unit test run in ci/test_narwhals.sh all pass.
Notes on the development environment:
pytest-env installed (it is a CI-only dependency and is often missing from local dev environments). Without it, the runs fail with ImportError: Error importing plugin "env".test_python_narwhals CI job does not install (for example dask). Such packages can cause spurious local-only failures (for example tests/tpch_q1_test.py::test_q1[dask], which pytest.importorskips away in CI). Do not add these to a plugin; confirm a failure is reproducible in CI's dependency set before recording it.dependencies.yamlIn the depends_on_narwhals section in dependencies.yaml, change the narwhals== version pinning to the target Narwhals version
Identify a directory that contains the Narwhals repository to install it into the development environment. If it is not provided by the user or one cannot be identified, clone it to a temporary location.
Ensure the Narwhals Git source tree is checked-out to the target upgrade version before installing.
Recent Narwhals versions use the uv_build build backend, so the editable install requires uv and uv-build in the environment and must be run with --no-build-isolation.
For example, to clone Narwhals and install it in a fictional, conda development environment named "cudf-dev"
NARWHALS_VERSION="v2.24.0"
git clone https://github.com/narwhals-dev/narwhals.git --single-branch --branch $NARWHALS_VERSION /tmp/narwhals
cd /tmp/narwhals
conda run -n cudf-dev pip install uv uv-build
conda run -n cudf-dev pip install -U -e . --no-build-isolation
pytest invocations in ci/test_narwhals.shNext, iterate through the various Narwhals unit test invocations in ci/test_narwhals.sh via pytest until there are no test failures.
Currently 3 variations of Narwhals unit tests are run:
--constructors=cudfNARWHALS_POLARS_GPU=1 environment variable and --constructors=polars[lazy]NARWHALS_DEFAULT_CONSTRUCTORS=pandas environment variable and -p cudf.pandasEach of these variations has an accompanying pytest plugin to mark tests to skip or as expected to fail before the tests are run.
ci/narwhals_cudf_test_plugin.py via -p narwhals_cudf_test_pluginci/narwhals_cudf_polars_test_plugin.py via -p narwhals_cudf_polars_test_pluginci/narwhals_cudf_pandas_test_plugin.py via -p narwhals_cudf_pandas_test_pluginThe TESTS_TO_SKIP and EXPECTED_FAILURES dictionaries in each file contain keys that are valid pytest test identifiers and values that are the reasons for skipping or failure of the test respectively.
Before running Narwhals unit tests, review each TESTS_TO_SKIP and EXPECTED_FAILURES in the plugin files and remove entries where the pytest test identifier no longer points to a test in Narwhals, as tests may have been removed in a newer Narwhals version.
Next, for each variation of Narwhals unit tests:
pytest command found in ci/test_narwhals.sh for the test variation and pipe the output to a file. Run it from within the cloned Narwhals repository (the CI script does pushd narwhals first) and set PYTHONPATH to the ci/ directory so the -p narwhals_*_test_plugin plugins can be imported, e.g. PYTHONPATH="<repo>/ci" .... Node ids in this working directory are of the form tests/...py::<test>[...], which is exactly the dictionary key format.TESTS_TO_SKIP dictionary where the key is in the format <path>::<pytest_node_id> and the value is a short reason for skipping.EXPECTED_FAILURES dictionary where the key is in the format <path>::<pytest_node_id> and the value is a short reason for failure.[XPASS(strict)] (Narwhals marks it xfail(strict=True) for the constructor but it now passes), it must go in TESTS_TO_SKIP, not EXPECTED_FAILURES. Adding an xfail marker does not override Narwhals' own strict marker, so the strict XPASS would still fail; skipping is the equivalent of the old deselection.Importantly when evaluating failing tests, do not attempt to fix cudf or cudf-polars to solve the failures. This is out of scope.
Once all variations of Narwhals unit tests pass, report the new test failures for each variation.