Opened 8 years ago
Last modified 8 years ago
#10150 new Bugs
Regression testing can fail if you've modified files
| Reported by: | Owned by: | René Rivera | |
|---|---|---|---|
| Milestone: | To Be Determined | Component: | Regression Testing USE GITHUB |
| Version: | Boost Development Trunk | Severity: | Problem |
| Keywords: | Cc: |
Description
regression.py fails if you have local changes to files that are modified by a new commit, at least if they're under tools_bb. I had a patch_boost that had modified tools_bb/src/tools/testing.jam on the previous run when this occured.
Here's the output:
# Getting Boost.Build v2...
# Executing GIT command: /extra/boost_regression/ARM/tools_bb> git remote "set-branches" "--add" "origin" "develop"
# Executing GIT command: /extra/boost_regression/ARM/tools_bb> git pull "--recurse-submodules"
error: Your local changes to the following files would be overwritten by merge:
src/tools/testing.jam
Please, commit your changes or stash them before you can merge.
Aborting
Updating 59fd3b6..708ceaf
Here's what git status showed:
On branch develop
Your branch is behind 'origin/develop' by 1 commit, and can be fast-forwarded.
(use "git pull" to update your local branch)
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: src/tools/testing.jam
Untracked files:
(use "git add <file>..." to include in what will be committed)
src/tools/testing.jam.rej
no changes added to commit (use "git add" and/or "git commit -a")
Note:
See TracTickets
for help on using tickets.

A similar problem occurs if you alternate between testing master and develop and have patches for files under boost_root:
# Executing GIT command: /extra/boost_regression/x86/boost_root> git submodule "update" "--init" Submodule path 'libs/mpl': checked out '1169c268564df2792cdaf18e61bb92b7f76fc851' # Executing GIT command: /extra/boost_regression/x86/boost_root> git checkout "master" error: Your local changes to the following files would be overwritten by checkout: boostcpp.jam Please, commit your changes or stash them before you can switch branches. Aborting Traceback (most recent call last): File "/extra/boost_regression/x86/run.py", line 83, in <module> runner(root) File "/extra/boost_regression/x86/tools_regression_src/regression.py", line 264, in __init__ self.main() File "/extra/boost_regression/x86/tools_regression_src/regression.py", line 650, in main getattr(self,action_m)() File "/extra/boost_regression/x86/tools_regression_src/regression.py", line 588, in command_regression self.command_get_tools() File "/extra/boost_regression/x86/tools_regression_src/regression.py", line 314, in command_get_tools self.git_branch()) File "/extra/boost_regression/x86/tools_regression_src/regression.py", line 915, in git_checkout self.git_command( 'checkout', branch) File "/extra/boost_regression/x86/tools_regression_src/regression.py", line 899, in git_command raise Exception( 'GIT command "%s" failed with code %d' % (git_cli, rc) ) Exception: GIT command "git checkout "master"" failed with code 256Git status shows this:
On branch develop Your branch is up-to-date with 'origin/develop'. Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) (commit or discard the untracked or modified content in submodules) modified: boostcpp.jam modified: libs/interprocess (modified content) Untracked files: ...