Skip to content
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

edk2_pr_eval.py: Build all packages on file change outside package [Rebase & FF] #327

Merged
merged 2 commits into from Nov 11, 2022

Conversation

makubacki
Copy link
Member

@makubacki makubacki commented Nov 1, 2022

Updates get_packages_to_build() to return all possible packages if
a file is modified outside a package.

Originally, this was implemented behind a new argument with the
default behavior unchanged. However, feedback indicated it would
be easier to adopt without an argument and this would be acceptable
behavior.

This does mean some files, such as documentation files, could trigger
packages to build that would have not previously built. However, the
impact and frequency of this is considered minimal enough to not
justify additional complexity. The change mainly focuses on files
such as dependency trackers (e.g. PIP requirements, submodules),
Python scripts, and other files that can impact overall build
results.

Requires tianocore/edk2-pytool-library#186.

Signed-off-by: Michael Kubacki michael.kubacki@microsoft.com

@codecov
Copy link

codecov bot commented Nov 1, 2022

Codecov Report

Merging #327 (e567be4) into master (9dcb947) will decrease coverage by 0.04%.
The diff coverage is 0.00%.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #327      +/-   ##
==========================================
- Coverage   70.46%   70.42%   -0.05%     
==========================================
  Files          48       48              
  Lines        4801     4804       +3     
==========================================
  Hits         3383     3383              
- Misses       1418     1421       +3     
Flag Coverage Δ
Linux 69.58% <0.00%> (-0.05%) ⬇️
Windows_NT 70.35% <0.00%> (-0.05%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
edk2toolext/invocables/edk2_pr_eval.py 0.00% <0.00%> (ø)

@Javagedes
Copy link
Contributor

Many of our integration tests are currently very picky when it comes to changes in files not associated with a particular package. Those will need to be updated.

@makubacki
Copy link
Member Author

I'm working on the integration tests now.

@makubacki
Copy link
Member Author

I'm working on the integration tests now.

Updated. As noted in the commit message, the tests will not pass until tianocore/edk2-pytool-library#186 is available.

@spbrogan spbrogan added the enhancement New feature or request label Nov 8, 2022
0.11.6 to 0.12.1 Changes:

- path_utilities: Adjust GetContainingPackage() and Edk2Path
  behavior
- path_utilities: Enhance Edk2Path.GetContainingModules()
- path_utilities: Add an env variable to allow nested packages
- path_utilities: Prevent path case modification in
  GetContainingModules()

Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
@makubacki
Copy link
Member Author

I preemptively moved the edk2-pytool-library dependency version to 0.12.1 (which doesn't exist yet). This should be completed after that release is done.

@makubacki makubacki changed the title edk2_pr_eval.py: Build all packages on file change outside package edk2_pr_eval.py: Build all packages on file change outside package [Rebase & FF] Nov 11, 2022
@makubacki
Copy link
Member Author

I preemptively moved the edk2-pytool-library dependency version to 0.12.1 (which doesn't exist yet). This should be completed after that release is done.

Because of that, I added a distinct commit to show the setup.py update. Please Rebase & FF to keep that separate.

@Javagedes
Copy link
Contributor

release pipeline is running now and should be out soon.

Updates `get_packages_to_build()` to return all possible packages if
a file is modified outside a package.

Originally, this was implemented behind a new argument with the
default behavior unchanged. However, feedback indicated it would
be easier to adopt without an argument and this would be acceptable
behavior.

This does mean some files, such as documentation files, could trigger
packages to build that would have not previously built. However, the
impact and frequency of this is considered minimal enough to not
justify additional complexity. The change mainly focuses on files
such as dependency trackers (e.g. PIP requirements, submodules),
Python scripts, and other files that can impact overall build
results.

Requires tianocore/edk2-pytool-library#186.

Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants