Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bugfix: Rough edges in JFactoryPodioT and JMultifactory #266

Merged
merged 8 commits into from
Nov 21, 2023

Conversation

nathanwbrei
Copy link
Collaborator

  • JMultifactory output collection names are no longer suffixed with mTag. We are now handling this at the JOmnifactory level instead. Technically this would be a breaking change, but we never used this feature to begin with.
  • JFactoryGenerator is now given its own mApp pointer, so that we no longer need to pass it in to all of the J{Omni, Chain}FactoryGenerators.
  • JFactoryPodioT::Set(std::vector<T*>) and Insert(T*) no longer leak memory
  • JMultifactory correctly catches std::exception and wraps it in a JException, giving us better stack traces
  • PODIO performance and unit tests now support both old and new PODIO versions
  • JMultifactory was verified to have a usable mPluginName and mApp
  • JFactoryPodioT::Insert() was verified to work correctly
  • A compiler warning involving C++20 implicit capture of this has been fixed

This PR addresses almost everything in the following issues:

The only remaining issue is in #247, regarding Set<>() not checking if the collection is already in the frame. This issue is pretty subtle: a user would have to go reasonably far off the beaten path for it to crop up, and it's not obvious to me how JANA ought to recover, anyhow. I think we can worry about it after this release. It would make the most sense to revisit the issue when we address issue #254.

@nathanwbrei nathanwbrei merged commit 143ccba into master Nov 21, 2023
3 checks passed
@nathanwbrei nathanwbrei deleted the nbrei_eicrecon_fixes branch November 21, 2023 22:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant