Keyword: Windows
Paper Title Other Keywords Page
TH1BCO03 The Tango Controls Collaboration Status in 2023 TANGO, controls, device-server, software 1100
 
  • T. Juerges
    SKAO, Macclesfield, United Kingdom
  • G. Abeillé
    SOLEIL, Gif-sur-Yvette, France
  • R.J. Auger-Williams
    OSL, St Ives, Cambridgeshire, United Kingdom
  • B. Bertrand, V. Hardion, A.F. Joubert
    MAX IV Laboratory, Lund University, Lund, Sweden
  • R. Bourtembourg, A. Götz, D. Lacoste, N. Leclercq
    ESRF, Grenoble, France
  • T. Braun
    byte physics, Annaburg, Germany
  • G. Cuní, C. Pascual-Izarra, S. Rubio-Manrique
    ALBA-CELLS, Cerdanyola del Vallès, Spain
  • Yu. Matveev
    DESY, Hamburg, Germany
  • M. Nabywaniec, T.R. Noga, L. Żytniak
    S2Innovation, Kraków, Poland
  • L. Pivetta
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
 
  Since 2021 the Tango Controls collaboration has improved and optimised its efforts in many areas. Not only have Special Interest Group meetings (SIGs) been introduced to speed up the adoption of new technologies or improvements, the kernel has switched to a fixed six-month release cycle for quicker adoption of stable kernel versions by the community. CI/CD provides now early feedback on test failures and compatibility issues. Major code refactoring allowed for a much more efficient use of developer resources. Relevant bug fixes, improvements and new features are now adopted at a much higher rate than ever before. The community participation has also noticeably improved. The kernel switched to C++14 and the logging system is undergoing a major refactoring. Among many new features and tools is jupyTango, Jupyter Notebooks on Tango Controls steroids. PyTango is now easy to install via binary wheels, old Python versions are no longer supported, the build-system is switching to CMake, and releases are now made much closer to stable cppTango releases.  
slides icon Slides TH1BCO03 [1.357 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-TH1BCO03  
About • Received ※ 05 October 2023 — Revised ※ 24 October 2023 — Accepted ※ 21 November 2023 — Issued ※ 13 December 2023
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMBCMO15 Conan for Building C++ Tango Devices at SOLEIL software, TANGO, factory, Linux 1227
 
  • P. Madela, G. Abeillé, Y.-M. Abiven, X. Elattaoui, J. Pham, F. Potier
    SOLEIL, Gif-sur-Yvette, France
 
  At SOLEIL, our Tango devices are mainly developed in C++, with around 450 projects for building libraries and device servers for our accelerators and beamlines. We have a software factory that has enabled us to achieve continuous integration of our developments using Maven, which manages project dependencies. However, Maven is uncommon for C++. In addition, it has limitations that hinder us from supporting future platforms and new programming standards, leading us to replace it with Conan. Conan is a dependency and package manager for C and C++ that works on all platforms and integrates with various build systems. Its features are designed to enable modern continuous integration workflows with C++ and are an ideal alternative to Maven for our C++ build system. This transition is essential for the upgrade of SOLEIL (SOLEIL II*), as we continue to develop new devices and update existing systems. We are confident that Conan will improve our development process and benefit our users. This paper will provide an overview of the integration process and describe the progress of deploying the new build system. We will share our insights and lessons learned throughout the transition process.
*SOLEIL II: Towards A Major Transformation of the Facility.
Conan - C and C++ Open-Source Package Manager
 
slides icon Slides THMBCMO15 [0.824 MB]  
poster icon Poster THMBCMO15 [0.867 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-THMBCMO15  
About • Received ※ 04 October 2023 — Revised ※ 10 October 2023 — Accepted ※ 13 December 2023 — Issued ※ 16 December 2023
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)