oxidecomputer / oxidecomputer/hubris

Build system doesn't detect changes in files included by app.toml reliably.

Open
#1,176 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

build
Dominant language
Rust
Stars
3.6k
Forks
239
Avg merge
1d 12h
Merged PRs (30d)
23

Description

I noticed today that if you do this:

  1. Build an app (say, app/rot-carrier/app.toml since that's what I was building)
  2. Modify the memory definition it uses (in this case, chips/lpc55/memory.toml)
  3. Build the app again

...the changes are not reflected. This makes the build incorrect. However the pseudo-includes to app.toml are implemented, they do not appear to be implemented in a way that feeds into the change detection logic, and this needs to be fixed.

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

Inspect the build logic that processes app/rot-carrier/app.toml and its pseudo-includes, using chips/lpc55/memory.toml as the reproduced dependency. First trace how included files enter change detection; done means rebuilding after a memory.toml change reliably reflects the updated definition.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.