EDM4hep Discussion

→ Europe/Zurich
Zoom

Zoom

Zoom Meeting ID
98484040528
Host
Andre Sailer
Useful links
Join via phone
Zoom URL

EDM4hep Live Notes
==================

Date: Nov 5, 2024
Indico: https://indico.cern.ch/event/1465606/

Connected: Pere, Juraj, Leonhard, Tao, Joseph, Juan, Thomas, Sanghyun, Mateusz, Andre

Apologies: Frank

## Introduction and General Points

### Upcoming workshops / conferences
https://github.com/orgs/key4hep/projects/4/views/1
    
## Progress and discussion
    
## Podio
* https://github.com/AIDASoft/podio/pulls
* https://github.com/AIDASoft/podio/issues
* https://github.com/orgs/AIDASoft/projects/2/views/1

 
### Merged PRs
* [Fix minor memory leaks and enable more sanitizer workflows in CI](https://github.com/AIDASoft/podio/pull/695)
* Few minor fixes for CI and code styles ([#694](https://github.com/AIDASoft/podio/pull/694), [#697](https://github.com/AIDASoft/podio/pull/697), [#696](https://github.com/AIDASoft/podio/pull/696))

### Add `links` category for YAML definitions
* https://github.com/AIDASoft/podio/pull/691
* As required by EDM4hep
* Generates the necessary "boilerplate"
* [ ] Generate test file to check julia bindings before merging

### Make accessing single elements in empty parameter vectors return an empty optional [#694](https://github.com/AIDASoft/podio/pull/694)
* What is the desired behavior here?
    * Empty value? -> No
    * **Empty optional? -> Yes**
    
### Require c++ 20 and remove c++17 support
* https://github.com/AIDASoft/podio/pull/698
* https://github.com/AIDASoft/podio/pull/700 (make c++17 a warning at cmake stage)
* [ ] How formal do we want / need to be with this wrt versioning?
    * Technically a breaking change
    * podio has `SameMajorVersion` as compatibility setting in exported CMake configs -> will break in places where we have `find_package(podio 1.0)`
* **Put warning into next tag. Remove in next-to-next tag and don't make a v2.0** 

### Add a tool to merge several podio files into a single one ([#681](https://github.com/AIDASoft/podio/pull/681))
* [ ] Add metadata about which files were merged


## EDM4hep
* https://github.com/key4hep/EDM4hep/pulls
* https://github.com/key4hep/EDM4hep/issues
* https://github.com/orgs/key4hep/projects/5 

### Merged PRs
* [Add an explicit `EDM4HEP_WITH_JSON` cmake option to explicitly enable json support](https://github.com/key4hep/EDM4hep/pull/379)
* [Make sure that bits for `secondary` and `tertiary` vertices are different](https://github.com/key4hep/EDM4hep/pull/378)


### Zenodo Batch, Author / Contributor list
* https://github.com/key4hep/EDM4hep/pull/375
* [ ] Prepare a `CITATION.cff` file to point to some publication (once it's ready).
* Decide on a case by case basis on whether inclusion to the authors is warranted

### [WIP] Switch to templated links and remove explicit declarations from yaml file
* https://github.com/key4hep/EDM4hep/pull/373
* Transparent reading of old (generated) link collections
    * Some "schema evolution" code necessary
* Example of how adding a new link looks like at the moment
    * Create a header with typedef
    * Use `PODIO_DECLARE_LINK` to instantiate the necessary buffer creation code for a given type
* Make a new dedicated `links`(?) category in the YAML file?
    * Yes, keeps EDM4hep self-contained
    * [ ] Make a separate PR that introduces that
* Do we need schema evolution from non-templated links? 
    * Yes, we had a tagged version (`v00-99`) of EDM4hep with the non-templated links
    
    
## Converter & MarlinWrapper

* `IOSvc` support for MarlinWrapper?
    * https://github.com/key4hep/k4MarlinWrapper/issues/202
    * Do we need it? `IOSvc` is mainly for multithreading, but most processors are not threadsafe
    * [ ] Can we change the segmentation fault to an error message?


## AoB


## Next meeting:
* November 19, 9:00 CET

There are minutes attached to this event. Show them.
    • 09:00 → 09:05
      Introduction 5m
      Speakers: Andre Sailer (CERN), Frank-Dieter Gaede (Deutsches Elektronen-Synchrotron (DE)), Thomas Madlener (Deutsches Elektronen-Synchrotron (DESY))
    • 09:50 → 09:51
      Discussion 1m
      Speaker: Dr All