[Bug] CI build script accepts flags as values for required options

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

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
74/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
cmake, shell
Domain
build-system, cli

Research direction

Start with ci/scripts/build_paimon.sh and reproduce the listed commands to trace how required option values and --build_type are validated. Add script-level coverage for missing or option-like values and unsupported build types; done means invalid arguments fail before build directories or CMake are invoked, while the four listed CMake build types remain accepted.

Written by the indexing model from the issue text.

Description

bug
Search before asking
  • I searched in the issues and found nothing similar.
Paimon-cpp version
Paimon version

Current main branch.

Minimal reproduce step

Run one of the following commands:

ci/scripts/build_paimon.sh --source_dir --enable_asan

ci/scripts/build_paimon.sh \
  --source_dir . \
  --build_type --enable_asan

ci/scripts/build_paimon.sh \
  --source_dir . \
  --lint_git_target_commit --enable_asan

The script treats the following option as the value of the preceding option and continues until a later command fails or CMake is invoked with an invalid value.

The script also accepts unsupported build types:

ci/scripts/build_paimon.sh \
  --source_dir . \
  --build_type Profile
What doesn't meet your expectations?

Options that require a value should reject an empty value or another --option with a clear error message.

The --build_type option should only accept the standard CMake build types used by the project:

  • Debug
  • Release
  • RelWithDebInfo
  • MinSizeRel
    Invalid arguments should be rejected before creating build directories or invoking CMake.

The argument validation behavior is currently not covered by dedicated script-level tests.

Anything else?

No response

Are you willing to submit a PR?
  • I'm willing to submit a PR!
Dominant language
C++
Stars
65
Forks
29
Avg merge
2d 30m
Merged PRs (30d)
77

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.

More from apache/paimon-cpp

All issues in apache/paimon-cpp

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.