[skip-gpuci] Add dependencies.yaml for rapids-dependency-file-generator#3042
Conversation
bdice
left a comment
There was a problem hiding this comment.
Thanks @ChuckHastings! I have some preliminary comments.
dependencies.yaml
Outdated
| common: | ||
| - output_types: conda | ||
| packages: | ||
| - nvcc_linux-64=11.5 |
There was a problem hiding this comment.
We'll need to split this by arch, since ARM doesn't use the same package name (it uses nvcc_linux-aarch64). See example here from cudf: https://github.com/rapidsai/cudf/blob/2048829ec66af1ceb7a9801702417d12ef13c77a/dependencies.yaml#L83-L94
dependencies.yaml
Outdated
| - clang=11.1.0 | ||
| - clang-tools=11.1.0 |
There was a problem hiding this comment.
I think clang/clang-tools can be dropped unless you know a reason why not. Historically these were used only to provide clang-format, as I understand it, and we've been removing these packages from other repos as we migrate to dependencies.yaml. It's possible that some repos (cuML) wish to use clang-tools for running clang-tidy but I don't think that applies to cuGraph.
There was a problem hiding this comment.
I'm OK with removing things. If we remove these from here, how does the C++ code formatting work? Is there some other mechanism we are using?
There was a problem hiding this comment.
Many other RAPIDS repos have migrated to using pre-commit as a single source of truth for CI style checks. I will file a PR to update cugraph to match, since that's something we've been doing as part of the GitHub Actions migrations.
For clang-format specifically, switching to pre-commit lets us eliminate this section:
Lines 33 to 36 in efcf6a8
as well as the entire
run-clang-format.py file in favor of a single hook definition like this example from cudf.
Then the style check script can also be simplified from ~79 lines to ~23 lines, like cudf.
dependencies.yaml
Outdated
| - libcugraphops=23.02.* | ||
| - clang=11.1.0 | ||
| - clang-tools=11.1.0 | ||
| - boost |
There was a problem hiding this comment.
Looks like we used to depend on boost (circa version 0.6) but we may have eliminated that dependency. I'm testing without it now.
There was a problem hiding this comment.
Removing boost
dependencies.yaml
Outdated
| cpp_build: | ||
| common: | ||
| - output_types: conda | ||
| packages: |
There was a problem hiding this comment.
Let's sort the contents of all packages: lists alphabetically.
dependencies.yaml
Outdated
| - scipy | ||
| - networkx>=2.5.1 | ||
| - scikit-build>=0.13.1 | ||
| - python>=3.8,<3.10 |
There was a problem hiding this comment.
Let's use a separate dependency list for Python versions. See cudf example: https://github.com/rapidsai/cudf/blob/2048829ec66af1ceb7a9801702417d12ef13c77a/dependencies.yaml#L190-L204
Co-authored-by: Bradley Dice <bdice@bradleydice.com>
Co-authored-by: Bradley Dice <bdice@bradleydice.com>
bdice
left a comment
There was a problem hiding this comment.
Thanks @ChuckHastings! This PR looks good enough to merge. We may have some additional tweaks as we work through GitHub Actions migrations, but this is a great starting point. Much appreciated!
We have a schema update planned that will require these values to be lists, so best to make that change now.
|
@ChuckHastings, I pushed some updates here. Let me know if you have any questions. It's mostly just some cleanup, but I also deleted the manually managed Additionally I added a GitHub Action workflow to ensure that the generated files and source |
First cut at dependencies.yaml.
We could certainly decompose this more, but wanted to get something out there quickly.