Skip to content

MIR: explain when a MIR is needed #104

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

Conversation

cpaelzer
Copy link
Collaborator

@cpaelzer cpaelzer commented Jul 3, 2025

Fixes: #42

Copy link
Collaborator

@s-makin s-makin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just some nits :)

@cpaelzer cpaelzer added the MIR For the attention of the MIR team label Jul 4, 2025
@cpaelzer cpaelzer requested a review from s-makin July 4, 2025 08:08
@cpaelzer
Copy link
Collaborator Author

cpaelzer commented Jul 4, 2025

Just some nits :)

Thanks for the review @s-makin , it helped me to undertand the ref/[] and term usage better - and your wording was obviously better than mine. All integrated now!

Copy link
Collaborator

@s-makin s-makin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM :) thanks for the changes

@cpaelzer cpaelzer requested a review from rkratky as a code owner July 4, 2025 15:13
@setharnold
Copy link
Collaborator

The boost* family of packages might not be 'runtime' dependencies but I believe we'd expect them to go through the MIR process if they were to be part of building a main package.

Can we capture this idea?

@cpaelzer cpaelzer force-pushed the mir-when-is-it-needed branch from 1decfdd to 7da64b5 Compare July 18, 2025 06:13
@cpaelzer
Copy link
Collaborator Author

The boost* family of packages might not be 'runtime' dependencies but I believe we'd expect them to go through the MIR process if they were to be part of building a main package.

Can we capture this idea?

Hi @setharnold , but we only do expect those that end in code that runs at runtime.
Maybe we should work on a list of examples to make this more clear and then add that to this PR?

  • a) classic -dev packages - leads to runtime dependencies - needed
  • b) rust/golang dev packages - not runtime dependencies eventually, but code that runs - needed
  • c) Sphinx-whatever to build docs - build dependencies, not resulting in code that is ran - not needed

Where is boost there?
I'd expect it to just be case (a) right? Or are these headers that become macros and will be used in code, but not have a runtime dep?
Also what else would you suggest to extend the list by?

Also FYI: rebased to adapt to latest changes in the repo

Copy link
Collaborator

@slyon slyon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO this PR is good as-is.

I agree we can further improve/refine that section telling about packages that are generating code used elswere in "main" should go through MIR, too. But that might be a separate PR.

@setharnold
Copy link
Collaborator

My recollection of the boost family of useful things are headers that are compiled into the project much like golang code. It executes actual code on user computers but doesn't show up in Depends: lines, only Build-Depends: lines.

@cpaelzer
Copy link
Collaborator Author

Also from meeting - Lukas Märdian (slyon):

Just gave my +1 on this (IMO is good as-is). But: I agree we can further improve/refine that section telling about packages that are generating code used elswere in "main" should go through MIR, too. But that might be a separate PR.

I was thinking mostly about compilers, like GCC or Rustc. They are not really a runtime dependency of anything, but we certainly what to have them supported in "main"
because they can heavily influence anything in that pocket

@cpaelzer
Copy link
Collaborator Author

OK, with that I can refine it

@setharnold
Copy link
Collaborator

The compilers is a good thought, which toolchains are available in which releases places constraints on what the Ubuntu Security Team can maintain.

cpaelzer and others added 4 commits July 30, 2025 12:52
Fixes: #42

Signed-off-by: Christian Ehrhardt <[email protected]>
Apply wording suggestions and ref/term usage style from review

Co-authored-by: Sally <[email protected]>
Not in an official dictionary, but per [1] still well defined and
known in that context.

[1]: https://en.wiktionary.org/wiki/userbase

Signed-off-by: Christian Ehrhardt <[email protected]>
@cpaelzer cpaelzer force-pushed the mir-when-is-it-needed branch from ee498b9 to 30cd7a2 Compare July 30, 2025 10:54
@cpaelzer
Copy link
Collaborator Author

@setharnold the last paragraph now goes into more detail of these "not a dependency but code that runs".
Could you check if it now addresses what you wanted to see?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
MIR For the attention of the MIR team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[MIR] Please document that build dependencies are no more needed
4 participants