Skip to content
This repository was archived by the owner on May 3, 2024. It is now read-only.

v1.4 : QoL Improvements

Choose a tag to compare

@tomeichlersmith tomeichlersmith released this 22 Jan 14:36
· 4 commits to trunk since this release

Many patches have been implemented, mostly focusing on improving Quality of Life while using Framework in ldmx-sw and developing ldmx-sw in Framework.

💥 Breaking Changes

  • While #77 technically is a breaking change, no processor on ldmx-sw:trunk uses any of the must* hints. The behavior of should* hints have stayed the same and so I am not making a big deal out of it.
  • #73 removes the Framework/EventDef.h header and so a few modules will need to be cleaned in order to remove any inclusions of that header. In addition, since the event dictionary is being generated in a different way, users should be encouraged to do a completely clean rebuild so conflicts can be avoided. This means they must not only rm -r build but also cd Framework; git clean -xxfd to remove the previously generated files.
  • #87 changed Event::exists to require a full-string match. i.e. if there are two collections MyCollection and MyCollectionBeta, before #87 Event::exists("MyCollection") would fail because two possibilities were found, now it will pass because only MyCollection is found. The documentation points the user to use Event::searchProducts directly if non-full-string-matching is required for a more complex search algorithm.

✨ Highlights

  • allow for . to exist within a configuration scripts file name (and not just its .py extension) by running the configuration script as a Python script rather than importing it as a module #76
  • rework storage control voting decision to actually separate must* and keep* hints into different levels of importance/priority #77
  • prevent dumping of TClassInfo errors when closing the program early during processing by making sure to close up any open TFiles #78
  • move generated LinkDef file into the build directory so that developers don't need to git clean the Framework module if an event object is changed or added #73
  • store number of events started (a.k.a. the number of tries) in the run header for luminosity calculations #81
  • performance monitoring of time at various important points in processing #83
  • update searchProducts and exists to be more flexible and more understandable #87

What's Changed

Full Changelog: v1.3.6...v1.4.0