coretrace-log is downloaded twice: declared as coretrace-logger here and coretrace_logger by the compiler
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 84/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- cmake, cpp
- Domain
- build-system
Research direction
Start with cmake/logger/coretraceLog.cmake:18, then compare the FetchContent declarations in CMakeLists.txt:100 and CMakeLists.txt:151-163 at the pinned compiler commit. Rename the logger declaration to coretrace_logger; verify a fresh build has one _deps/*logger*-src, then run the build and ctest on Linux and macOS.
Written by the indexing model from the issue text.
Description
cmake/logger/coretraceLog.cmake:18 declares coretrace-log as coretrace-logger (v1.0.0). coretrace-compiler, which the analyzers fetch, declares the same repository as coretrace_logger, and calls FetchContent_Populate before checking whether the target already exists (its CMakeLists.txt:151-163, at the pinned commit 866fa76). A fresh build therefore downloads the logger twice, into build/_deps/coretrace-logger-src and build/_deps/coretrace_logger-src.
Both copies are the same commit today (v1.0.0 is 624688a), but nothing keeps them equal. Two declarations of this dependency already broke the build once (#37, #40).
Fix
Declare it as coretrace_logger, the name the stack analyzer and coretrace-compiler use. FetchContent keeps the first declaration of a name, and coretrace declares it first (CMakeLists.txt:100). FetchContent_GetProperties(coretrace_logger) in the compiler then finds it populated and downloads nothing.
Acceptance
- A fresh build directory holds a single
_deps/*logger*-src. - The build and
ctestpass on Linux and macOS.
From the technical debt register (docs/quality/technical-debt.md, D9).
- Dominant language
- C++
- Stars
- 5
- Forks
- 4
- Avg merge
- 1h 4m
- Merged PRs (30d)
- 71
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from CoreTrace/coretrace
-
documentation severity/minor
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
chore good first issue severity/minor
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
build good first issue severity/minor
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
test: add unit tests for ctrace::RunDirectoryPossibly taken @tecnolgd claimed this today. Opengood first issue test
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
build severity/minor
Difficulty 3/5 1-2 days Newbie friendliness 69/100
Maintainers usually reply within 1 day
All issues in CoreTrace/coretrace
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 4 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
scanaislop/aislop#482 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
EchoTools/nevr-runtime#547 ·
Maintainers usually reply within 1 day
-
1 type: problem 2 scope: firmware 3 good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
SpaceTeam/STS1_COBC_SW#511 ·