Skip to content
Snippets Groups Projects

Adapt to acts v0.12.0

Merged Paul Gessinger requested to merge pagessin/athena:adapt-to-acts-v0.12.0 into master

This MR bumps and adapts to Acts v0.12.0. atlasexternals!579 (merged) needs to be merged, a tag created, and this MR needs to be the one bumping the externals version.

Changes since Acts v0.10.04:

v0.10.05

13 Merge Requests in this release:

Bug

  • !655 - PlaneLayerTests-inspired bugfixes

Improvement

  • !676 - Extract KF result into own struct
  • !675 - Make Result assignable and copyable
  • !674 - MultiTrajectory: apply/visitBackwards can break
  • !666 - Change DD4hep Attribute handling
  • !654 - Reduce vertexing template arguments and introduce linearizer
  • !627 - RiddersPropagator

Infrastructure

  • !670 - Remove allow_failure from integration tests
  • !669 - Use CI DAG to start unit and integration test before build stage is complete
  • !668 - Explicitly set build type in ubuntu job

Uncategorized

  • !673 - PlanarModuleCluster with time
  • !672 - Reintegrating AtlasStepper into Core
  • !663 - Initialize centroid in BoundingBoxTest.cpp with 0,0,0

4 issues addressed in this release:

Bug

  • #637 - PlaneLayerTests call SurfaceArrayCreator::surfaceArrayOnPlane wrong
  • #636 - In PlaneLayerTests, "pNullTransform" is not a null transform...

Improvement

  • #647 - Move AtlasStepper from acts-core/Legacy back to acts-core/Core
  • #645 - Change DD4hep Attribute handling

v0.11.00

16 Merge Requests in this release:

New Feature

  • !687 - Direct navigator and associated Tests
  • !681 - KalmanFitter uses Acts::Result
  • !651 - Free parameter input/output for stepper - part 1
  • !566 - Multi adaptive vertex fitter

Bug

  • !690 - Changed destructors
  • !661 - Fix integration tests

Improvement

  • !696 - Reduce template parameters in vertexing
  • !694 - Clang-tidy: modernize-use-equals-delete
  • !693 - Simplify the GeometryID interface (w/o introducing MultiIndex)
  • !689 - Less propagator templates
  • !680 - Add logging to GainMatrix smoother and updater
  • !679 - Modify abort condition signature check and call pattern
  • !671 - Resolve "Free parameter input/output for stepper" - part 1.5
  • !665 - DD4hep and MaterialMapping - v2

Infrastructure

  • !686 - Add LCG96 setup script and CI jobs
  • !678 - Add script that automates the release creation.

7 issues addressed in this release:

Bug

  • #655 - Overflow issues in GeometryID

Improvement

  • #654 - Streamline GeometryID interface
  • #625 - Explicit errors on numerical failure of KF components
  • #635 - Free parameter input/output for stepper

Uncategorized

  • #661 - Delete called on non-final object
  • #652 - Implement DirectNavigator
  • #642 - Translation of material / material mapping proxies from DD4hep to Acts

v0.11.01

1 Merge Requests in this release:

Bug

  • !707 - Fix parameter interface usage in AtlasStepper

v0.12.00

19 Merge Requests in this release:

New Feature

  • !708 - Move json plugin to core
  • !703 - Add StraightLineStepper.cpp
  • !698 - Adapt KF fit with DirectNavigator
  • !688 - Finite State Machine helper class
  • !643 - KF on multitrajectory
  • !488 - Introducing confined volume logic for TrackingVolume and DD4hep

Bug

  • !718 - OversteppingLimit and pathLimit setting
  • !713 - Fix parameter interface usage in AtlasStepper

Improvement

  • !720 - Make attachVolume and attachVolumeArray public
  • !715 - Optimisation of Surface::intersect(...)
  • !702 - Reduce template arguments from RiddersPropagator
  • !701 - Removed unused variables/typedefs
  • !700 - Remove type deductions from steppers
  • !699 - New SurfaceIntersection schema and overstepping fix
  • !685 - Biannual CMake cleanup
  • !684 - Fix units in material description and interactions
  • !667 - Change seeding interface to iterators

Infrastructure

  • !714 - Make working with develop branches easier make_release script
  • !709 - Add detection of CI directory for zsh

11 issues addressed in this release:

Bug

  • #664 - AtlasStepper uses old parameter interfaces
  • #658 - CMake: CDash setup is unused
  • #656 - CMake: Identification plugin target name is inconsistent

Improvement

  • #657 - CMake: remove boilerplate for tests
  • #608 - Clarify units in the material description
  • #607 - Move interaction formulas to the Materials module

Uncategorized

  • #672 - Overstep limit is ignored in Navigator
  • #666 - Investigate use of pre-computed LocalPosition in compatibleSurfaces(...)
  • #613 - Intersection with surfaces: update and refinement
  • #663 - KF with DirectNavigator
  • #675 - bin/setup.sh is problematic for packaging
Edited by Paul Gessinger

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Paul Gessinger changed the description

    changed the description

  • Hi Paul,

    You should now be able to update this MR to use atlasexternals-2.0.50.

    For the record, let me describe the changes introduced by the new tag, other than the Acts update:

    • @fwinkl fixed one of the unit tests of flake8_atlas. This can not have any effect on the build of this repository.
    • I added some initial support for the .confdb2 files produced by the latest version of Gaudi.

    The second one will be important for @wlampl's configuration updates, so pinging him as well.

    Cheers, Attila

  • Paul Gessinger added 723 commits

    added 723 commits

    Compare with previous version

  • Author Developer

    Thanks Attila!

    I included the externals bump, and will unwip now.

  • Paul Gessinger unmarked as a Work In Progress

    unmarked as a Work In Progress

  • This merge request affects 6 packages:

    • Projects/AnalysisBase
    • Projects/AnalysisTop
    • Projects/AthDataQuality
    • Projects/AthSimulation
    • Projects/Athena
    • Tracking/Acts/ActsGeometry

    Adding @jchapman ,@pagessin ,@vpascuzz ,@amorley ,@rbianchi as watchers

  • :negative_squared_cross_mark: CI Result FAILURE

    Athena AthSimulation
    externals :o: :white_check_mark:
    cmake N/A N/A
    make N/A N/A
    required tests N/A N/A
    optional tests N/A N/A

    :exclamation: Due to problems in externals build or cmake configuration the job is stopped, results are not available on the ATLAS CI monitor :pencil: For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 7441]

  • Author Developer

    Hm. The Acts build succeeds as far as I can tell. From what I can make out, the actual failure comes from

    CMake Error at CMakeLists.txt:23 (gaudi_ctest_setup):
      Unknown CMake command "gaudi_ctest_setup".

    in the Gaudi build.

    Edited by Paul Gessinger
  • I don't know what happened. :confused: The actual problem is that the Gaudi configuration didn't find AthenaExternals.

    -- Check for working CXX compiler: /cvmfs/sft.cern.ch/lcg/releases/gcc/8.3.0-cebb0/x86_64-centos7/bin/g++
    -- Check for working CXX compiler: /cvmfs/sft.cern.ch/lcg/releases/gcc/8.3.0-cebb0/x86_64-centos7/bin/g++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    CMake Warning at cmake/GaudiProjectConfig.cmake:78 (message):
      could not find clang-format 8:
    
        automatic formatting of C++ files will not be possible
    Call Stack (most recent call first):
      CMakeLists.txt:16 (find_package)
    
    
    CMake Warning at cmake/GaudiProjectConfig.cmake:99 (message):
      could not find yapf 0.24.0:
    
        automatic formatting of Python files will not be possible
    Call Stack (most recent call first):
      CMakeLists.txt:16 (find_package)
    
    
    CMake Warning at CMakeLists.txt:22 (find_package):
      By not providing "FindAthenaExternals.cmake" in CMAKE_MODULE_PATH this
      project has asked CMake to find a package configuration file provided by
      "AthenaExternals", but CMake did not find one.
    
      Could not find a package configuration file provided by "AthenaExternals"
      with any of the following names:
    
        AthenaExternalsConfig.cmake
        athenaexternals-config.cmake
    
      Add the installation prefix of "AthenaExternals" to CMAKE_PREFIX_PATH or
      set "AthenaExternals_DIR" to a directory containing one of the above files.
      If "AthenaExternals" provides a separate development package or SDK, be
      sure it has been installed.
    
    
    CMake Error at CMakeLists.txt:23 (gaudi_ctest_setup):
      Unknown CMake command "gaudi_ctest_setup".
    
    
    -- Configuring incomplete, errors occurred!
    See also "/build2/ci-builds/master/Athena/build/GAUDI/CMakeFiles/CMakeOutput.log".
    CMake Error: CTEST_USE_LAUNCHERS is enabled, but the RULE_LAUNCH_COMPILE global property is not defined.
    Did you forget to include(CTest) in the toplevel CMakeLists.txt ?
    make: *** No targets specified and no makefile found.  Stop.
    make: *** No rule to make target `install/fast'.

    But I don't see any build errors in AthenaExternals either. And the files needed by CMake seem to have been installed correctly as well. :confused:

    -- Installing: /build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/./compilers.txt
    -- Old export file "/build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/cmake/AthenaExternalsConfig-targets.cmake" will be replaced.  Removing files [/build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/cmake/AthenaExternalsConfig-targets-release.cmake].
    -- Installing: /build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/cmake/AthenaExternalsConfig-targets.cmake
    -- Installing: /build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/cmake/AthenaExternalsConfig-targets-release.cmake
    -- Installing: /build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/cmake/AthenaExternalsConfig.cmake
    -- Installing: /build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/cmake/AthenaExternalsConfig-version.cmake
    -- Installing: /build2/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/./setup.sh

    I'm really not sure what went wrong...

  • :face_palm: I see what happened. It is Acts... :frowning:

    I see the following in the setup.sh file of the AthenaExternals installation now:

    [tcsh][aibuild20-043]:~ > more /build/ci-builds/master/Athena/install/AthenaExternals/22.0.9/InstallArea/x86_64-centos7-gcc8-opt/setup.sh 
    # set up environment variables
    # the ${VAR:+:} part adds a double colon only if VAR is not empty
    export PATH="/build2/ci-builds/master/Athena/build/AthenaExternals/External/Acts/CMakeFiles/ActsBuild/bin${PATH:+:}${PATH}"
    export LD_LIBRARY_PATH="/build2/ci-builds/master/Athena/build/AthenaExternals/External/Acts/CMakeFiles/ActsBuild/lib${LD_LIBRARY_PATH:+:}${LD_LIBRARY_PATH}"
    export DYLD_LIBRARY_PATH="/build2/ci-builds/master/Athena/build/AthenaExternals/External/Acts/CMakeFiles/ActsBuild/lib${DYLD_LIBRARY_PATH:+:}${DYLD_LIBRARY_PATH}"
    [tcsh][aibuild20-043]:~ >

    Of course this is not what we should have there. We should have the file generated by AtlasCMake there. I guess we should talk in person to figure out how to fix this...

  • Author Developer

    Ok, after brief discussion, we'll fix this on the Acts side, and make a new tag, and externals tag.

  • The new tag is atlasexternals-2.0.51. You may want to update the title of this MR to the correct Acts tag as well. :wink:

  • Well, f#$^^ me... I managed to create the tag on atlas/athena... :face_palm:

    The tag is now set up on the correct repository...

    https://gitlab.cern.ch/atlas/atlasexternals/-/tags/2.0.51

    (I removed the one made in error on atlas/athena...)

  • Paul Gessinger added 1 commit

    added 1 commit

    • 1b6ed3ee - reset externals version to 2.0.51

    Compare with previous version

  • Author Developer

    Ok, I bumped to 2.0.51 now. Let's hope I don't break another CI machine :sweat_smile:

  • This merge request affects 6 packages:

    • Projects/AnalysisBase
    • Projects/AnalysisTop
    • Projects/AthDataQuality
    • Projects/AthSimulation
    • Projects/Athena
    • Tracking/Acts/ActsGeometry

    Adding @jchapman ,@pagessin ,@vpascuzz ,@amorley ,@rbianchi as watchers

  • :white_check_mark: CI Result SUCCESS (hash 1b6ed3ee)

    Athena AthSimulation
    externals :white_check_mark: :white_check_mark:
    cmake :white_check_mark: :white_check_mark:
    make :white_check_mark: :white_check_mark:
    required tests :white_check_mark: :white_check_mark:
    optional tests :cloud: :white_check_mark:

    Full details available on this CI monitor view
    :white_check_mark: Athena: number of compilation errors 0, warnings 0
    :white_check_mark: AthSimulation: number of compilation errors 0, warnings 0
    :pencil: For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 7472]

  • mentioned in merge request !28976 (merged)

  • Probably this can be approved now.

    Tadej (L2)

  • added review-approved label and removed review-pending-level-1 label

  • mentioned in commit e50815fe

  • Hi @pagessin,

    In today's nightly I see a compilation failure in ACTSGeometry, see http://atlas-computing.web.cern.ch/atlas-computing/links/distDirectory/gitwww/GITWebArea/nightlies/master/2019-12-23T2131/Athena/x86_64-centos7-gcc8-opt/Athena/Tracking.Acts.ActsGeometry.log.html

    Looks like a missing include file, possibly a CMAKE config issue?

    /build/atnight/localbuilds/nightlies/master/athena/Tracking/Acts/ActsGeometry/ActsGeometry/ActsExtrapolationTool.h:30:10: fatal error: Acts/Propagator/detail/RelativePathCorrector.hpp: No such file or directory
    
     #include "Acts/Propagator/detail/RelativePathCorrector.hpp"
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    • Walter
  • Author Developer

    Ah right :confused:

    That header is removed in the new tag, but in my testing I didn't catch that because in incremental builds (and the CI) the file doesn't get removed. I can fix this specific compilation error by removing the line.

Please register or sign in to reply
Loading