-
Notifications
You must be signed in to change notification settings - Fork 169
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
logs now report as pvgroups are added to pvl logs (fixes #4914) #4990
Conversation
I'll update the test writing docs on the wiki after this is merged |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall I think it looks good. I can't find PvlLog.h, so I'm not sure what it contains. I hard a hard time understanding which files needed PvlLog.h imports as opposed to simple Pvl imports.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also needs a CHANGELOG entry
@@ -12,6 +12,7 @@ find files of those names at the top level of this repository. **/ | |||
#include "IString.h" | |||
#include "Message.h" | |||
#include "PvlFormat.h" | |||
#include "Application.h" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not super happy with PvlObject being dependent on Application, but I think this is the cleanest solution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I'm not super keen on it either.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is spooky for integrating the ISIS Blob work next year. Likely requiring that Application and everything associated with it get pulled into that submodule within ISIS
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Based on some discussion this morning. It's not ideal, but this solution is still good and the best one we have right now. We will need to come back and re-address some of the architecture next year so we're just adding some tech debt for us to deal with next year.
results from local tests:
They're all weird "cant find data file" type errors, most likely not related to these changes at all. |
Gonna rerun all tests after that ctest PR was merged and double check everything is fine. |
this time I got:
520 - some weird QT assertion error within the QT lib, most likely something weird with the version of QT my env picked up Either way, these don't seem to have anything to do with my changes and more to do with my build dir and env on prog28. |
Description
Pvl logs were being reported at the end of the programs execution which is a problem for apps that run for a long time. This changes the apps to report as groups are added.
This changes Application::Log to work with or without an iApp instance. Plus, a new function
addLogGroup
that adds the PVL group as usual but also calls Application::Log on the object.Tried to catch all the converted apps using a recursive grep for
Pvl appLog
,Pvl results
,Pvl log
inmain.cpp
s. I think I got all or at least a vast majority of them.Application::Log
calls were removed inmain.cpp
s of converted tests as they're no longer needed. LeftApplication::GuiLog
calls were left alone. Getsn was also left alone since it had very specific logging code in both the main and callable.Related Issue
fixes #4914
Motivation and Context
Long running apps like jigsaw were not getting realtime updates.
How Has This Been Tested?
Jenkins tests, if nothing broke no new test failures should appear.
Screenshots (if appropriate):
Types of changes
Checklist:
Licensing
This project is mostly composed of free and unencumbered software released into the public domain, and we are unlikely to accept contributions that are not also released into the public domain. Somewhere near the top of each file should have these words: