Regression Testing: Use Mainline & CMake - #2556
Merged
Merged
Conversation
ax3l
force-pushed
the
ci-regressionViaCMake
branch
from
November 13, 2021 23:44
0ebfee5 to
a7d384e
Compare
ax3l
commented
Nov 13, 2021
ax3l
force-pushed
the
ci-regressionViaCMake
branch
from
November 14, 2021 19:45
a7d384e to
0344f10
Compare
ax3l
force-pushed
the
ci-regressionViaCMake
branch
from
November 15, 2021 23:24
0344f10 to
bab66a8
Compare
ax3l
commented
Nov 16, 2021
ax3l
force-pushed
the
ci-regressionViaCMake
branch
2 times, most recently
from
November 16, 2021 16:08
7795da6 to
b0114f0
Compare
ax3l
commented
Nov 16, 2021
ax3l
force-pushed
the
ci-regressionViaCMake
branch
4 times, most recently
from
November 18, 2021 19:51
a029daa to
add01b7
Compare
ax3l
force-pushed
the
ci-regressionViaCMake
branch
3 times, most recently
from
November 21, 2021 01:25
811d2ab to
1f5a864
Compare
Merged
ax3l
force-pushed
the
ci-regressionViaCMake
branch
from
December 5, 2021 02:11
1f5a864 to
b261fc5
Compare
ax3l
commented
Dec 5, 2021
ax3l
force-pushed
the
ci-regressionViaCMake
branch
3 times, most recently
from
December 6, 2021 21:16
e908a72 to
98be851
Compare
ax3l
force-pushed
the
ci-regressionViaCMake
branch
from
December 7, 2021 02:15
b631521 to
0a8a9fe
Compare
EZoni
approved these changes
Dec 20, 2021
EZoni
left a comment
Member
There was a problem hiding this comment.
Thanks Axel, this looks great. I left a couple of minor comments and one question, but if you want to merge this in quickly, we can always fix typos etc. in a follow-up PR.
| add_custom_target(install_pip | ||
| ${CMAKE_COMMAND} -E env PYWARPX_LIB_DIR=${CMAKE_LIBRARY_OUTPUT_DIRECTORY} python3 -m pip wheel -v --use-feature=in-tree-build ${WarpX_SOURCE_DIR} | ||
| COMMAND | ||
| python3 -m pip install --force-reinstall -v ${PYINSTALLOPTIONS} ${CMAKE_BINARY_DIR}/*whl |
Member
There was a problem hiding this comment.
Just to confirm: so we don't need a --user here, correct?
Member
Author
There was a problem hiding this comment.
That's correct. Since #2653 we run out tests (incl. GNUmake before the current PR) in a virtual environment.
--user was only needed when modifying the user-local Python environment. That was a bit unexpected/had side-effects and is solved now.
ax3l
force-pushed
the
ci-regressionViaCMake
branch
2 times, most recently
from
December 21, 2021 00:39
3429531 to
23aefbc
Compare
RemiLehe
approved these changes
Dec 21, 2021
RemiLehe
enabled auto-merge (squash)
December 21, 2021 00:40
This was referenced Dec 21, 2021
ax3l
disabled auto-merge
December 21, 2021 16:52
ax3l
force-pushed
the
ci-regressionViaCMake
branch
2 times, most recently
from
December 29, 2021 10:29
c47f428 to
3a8a935
Compare
- Add `cmakeSetupOpts =` - Add `-DWarpX_DIMS`: Not an AMReX convention, so we cannot rely on `dim = ...` - Skip building unneeded tools - Add `install_pip` target: Calling `python -m pip wheel .` and install re-using the build directory. This is mainly for our CI Python regression scrips, users and package managers should just use `python -m pip wheel .` and `... install *whl` directly.
Generalize executable globber in script
ax3l
force-pushed
the
ci-regressionViaCMake
branch
from
December 29, 2021 12:33
3a8a935 to
51c6598
Compare
roelof-groenewald
added a commit
to ModernElectron/WarpX
that referenced
this pull request
Dec 30, 2021
* CI: mpi4py breaking setuptools API (BLAST-WarpX#2713) setuptools keeps breaking its API, which currently breaks `mpi4py` installs. Until a new mpi4py release is cut, this will serve as a work-around * Regression Testing: Use Mainline & CMake (BLAST-WarpX#2556) * Regression testing: Use mainline * Update WarpX-tests.ini - Add `cmakeSetupOpts =` - Add `-DWarpX_DIMS`: Not an AMReX convention, so we cannot rely on `dim = ...` - Skip building unneeded tools - Add `install_pip` target: Calling `python -m pip wheel .` and install re-using the build directory. This is mainly for our CI Python regression scrips, users and package managers should just use `python -m pip wheel .` and `... install *whl` directly. * LaserInjectionFromTXYEFile: General Exe Generalize executable globber in script * Docs: Update Regression Testing (CMake) * Azure: Ninja Builds (CMake) * Add x and r emitters (#131) * CI: mpi4py breaking setuptools API setuptools keeps breaking its API, which currently breaks `mpi4py` installs. Until a new mpi4py release is cut, this will serve as a work-around * added XPlaneEmitter and CI test for it * circleCI fix for mpi4py issue with new setuptools * try number 2 for fixing circleCI * try number 3 to fix circleCI * added ZCylinderEmitter and CI test for it * allow Dirichlet BCs in r when r_min != 0 with ES RZ simulations * added example file for a cylindrical vacuum TEC * allow either Dirichlet or Neumann BCs at rmax when rmin == 0 * temporary change to show that CI tests pass after changes to ES solver * added CI test of EB InfCylinderZ * changed default BC at rmax to Neumann for RZ simulations created from the setup_store * update changelog and version number plus first round of suggested changes from code review * Apply suggestions from code review Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com> * further requested review changes * change xsign and rsign to xdir and rdir * missed API change updates * Update bounds handling XPlaneEmitter Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com> * changed InfCylinderZ to CylinderZ and added optional z limits * Apply suggestions from code review Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com>
ax3l
added a commit
to ax3l/warpx
that referenced
this pull request
Mar 10, 2022
Add missing CMake options in `WarpX-tests.ini`. This must have been merged in parallel to when we modernized our regression tests end of last year. BLAST-WarpX#2556
ax3l
added a commit
to ax3l/warpx
that referenced
this pull request
Mar 10, 2022
Add missing CMake options in `WarpX-tests.ini`. This must have been merged in parallel to when we modernized our regression tests end of last year. BLAST-WarpX#2556
ax3l
added a commit
that referenced
this pull request
Mar 10, 2022
* Clean Pip Staging Directory The distutils staging (`build` -> `_tmppythonbuild`) directory that pip uses to collect build artifacts is not by default cleaned between multiple `pip` runs. This can be confusing when we recompile, because old `libwarpx*` files can be still in it that are not present in our own `build/lib/`. This cleans that staging directory before builds now. It also sets the whole `build_base` so that no artifact lands in the default, which was `build/`. So far, `bdist.linux-x86_64/` still was out-of-tree. * Python_background_mcc_1d: Add CMake Options Add missing CMake options in `WarpX-tests.ini`. This must have been merged in parallel to when we modernized our regression tests end of last year. #2556
clarkse-he
pushed a commit
to Helion-Energy/WarpX
that referenced
this pull request
Aug 7, 2026
Isolate builds locally, so we don't overwrite a developer's setup anymore. This also avoids a couple of nifty problems that can occur by mixing those envs. Originally part of BLAST-WarpX#2556
clarkse-he
pushed a commit
to Helion-Energy/WarpX
that referenced
this pull request
Aug 7, 2026
* Docs: `python3 -m pip` Use `python3 -m pip`: - works independent of PATH - always uses the right Python - is the recommended way to use `pip` * Dependencies: Python incl. venv Backported from BLAST-WarpX#2556. Follow-up to BLAST-WarpX#2653
clarkse-he
pushed a commit
to Helion-Energy/WarpX
that referenced
this pull request
Aug 7, 2026
* Regression testing: Use mainline * Update WarpX-tests.ini - Add `cmakeSetupOpts =` - Add `-DWarpX_DIMS`: Not an AMReX convention, so we cannot rely on `dim = ...` - Skip building unneeded tools - Add `install_pip` target: Calling `python -m pip wheel .` and install re-using the build directory. This is mainly for our CI Python regression scrips, users and package managers should just use `python -m pip wheel .` and `... install *whl` directly. * LaserInjectionFromTXYEFile: General Exe Generalize executable globber in script * Docs: Update Regression Testing (CMake) * Azure: Ninja Builds (CMake)
clarkse-he
pushed a commit
to Helion-Energy/WarpX
that referenced
this pull request
Aug 7, 2026
* Clean Pip Staging Directory The distutils staging (`build` -> `_tmppythonbuild`) directory that pip uses to collect build artifacts is not by default cleaned between multiple `pip` runs. This can be confusing when we recompile, because old `libwarpx*` files can be still in it that are not present in our own `build/lib/`. This cleans that staging directory before builds now. It also sets the whole `build_base` so that no artifact lands in the default, which was `build/`. So far, `bdist.linux-x86_64/` still was out-of-tree. * Python_background_mcc_1d: Add CMake Options Add missing CMake options in `WarpX-tests.ini`. This must have been merged in parallel to when we modernized our regression tests end of last year. BLAST-WarpX#2556
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Mainline
tolerance = 1.e-14andparticle_tolerance-> our own checksums now (rtolinchecksum.evaluate)self.use_ctools = 0(default:1)self.ftools =Regression/prepare_file_ci.py.github/workflows/source/test_ci_matrix.shdim =...andaddToCompileString =fromWarpX-tests.iniCMake
developmentcmakere-configure step needed atm until we re-group runs/cache executables as in Avoid recompiling executable if already compiled in previous tests AMReX-Codes/regression_testing#69