microsoft / microsoft/jbpf

the codelets are built but not tested in pipeline

Open
#72 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
73
Forks
23
Avg merge
21h 17m
Merged PRs (30d)
1

Description

Currently, the codelets are commited as .o files under jbpf_tests/test_files/codelets directory. These static .o files are prebuilt and commited.

In pipeline, the codelets are built, but not used to run the tests. This will create test gaps:

On ubuntu22.04, the clang version is 14.
On ubuntu24.04, the clang version is 18.1

Despite that the codelets are both built and tested in the pipeline for all variants, however, the codelets may fail the verifications.

For example, the codelet is compiled at ubuntu22.04 with clang 14, passing the verification. However the same codelet fails verification at clang 18 on ubuntu24.04

my bad, the codelet verification failed is due to the jbpf_printf_debug that I added. So the question is: would the codelet built using one clang version pass verification but fail on another?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in jbpf_tests/test_files/codelets and inspect how the pipeline builds the codelets versus how tests consume the committed .o files. Compare the Ubuntu 22.04/clang 14 and Ubuntu 24.04/clang 18.1 pipeline variants. Done means tests exercise the codelets built in each pipeline variant and expose verification failures caused by compiler differences.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
ci-cd, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.