argumentcomputer / argumentcomputer/ci-workflows

lints workflow : feature or crate selection

Open
#7 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
0
Forks
3
Avg merge
59m
Merged PRs (30d)
2

Description

Documenting an issue encountered in https://github.com/lurk-lab/neptune/pull/255, which is arguably the fault of the crate organization:
- the gbench crate (which is non-publish!) runs with the default opencl feature, which does not compile on some CI machines:
https://github.com/lurk-lab/neptune/blob/main/gbench/Cargo.toml#L25
- the lint crate runs with `workspace` in the doc step of the job:
https://github.com/lurk-lab/neptune/actions/runs/7294189991/job/19878612122?pr=255
https://github.com/lurk-lab/ci-workflows/blob/96e567fa741858807c1de28bb4d8194291faecfb/.github/workflows/lints.yml#L49

Three ways to solve this:
- make the gbench feature non-default, just generate a runtime panic if neither of opencl nor cuda are active,
- allow excluding a crate from the doc test,
- allow excluding a feature (or running with default-deatures = false) from the doc test,

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading .github/workflows/lints.yml in ci-workflows, the gbench/Cargo.toml feature definition, and the referenced PR #255. Compare how the doc step invokes the lint crate and determine which crate or feature-selection behavior should be supported. Done means the workflow can handle the documented crate and feature-selection cases without failing on unsupported default features.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, rust
Domain
build-system, ci-cd
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.