2
I Use This!
High Activity

News

Analyzed 1 day ago. based on code collected 2 days ago.
Posted almost 7 years ago by Ichthyostega
Generic Custom Interface Components this is a tracking ticket -- individual tasks depending. The Lumiera UI for editing requires some special interface elements not present in a typical UI toolkit set. We need to design and build those as custom ... [More] widgets and we need to build them in a generc way, so they can be used at various places within our UI. [Less]
Posted almost 7 years ago by Ichthyostega
done: In changeset:cd557f50ec/Lumiera: UI-Layer and Core are now connected in both directions, asynchronously. Investigation "Demo Gui Roundtrip" successfully completed
Posted almost 7 years ago by Ichthyostega
done
Posted almost 7 years ago by Ichthyostega
done: We have now a ready-to-use message and error display in the UI. Building this also saved as prof-of-concept for the UI <-> Core communication (#1199)
Posted almost 7 years ago by Ichthyostega
done: Now successfully concluded the prototye implementations #1099, which was the first practical use for this UI self diagnostics control
Posted almost 7 years ago by Ichthyostega
done: Now successfully concluded the prototye implementations #1099, which was the first practical use for this UI self diagnostics control
Posted almost 7 years ago by Ichthyostega
Somewhere in future, when we got a nice UI for tweaking the "preferences", there should be a selection use Lumiera's own media application style look (subdued, gray) use Lumiera together with a light desktop theme use Lumiera together with a ... [More] dark deskop theme Right now, we just have an alternative stylesheet lumiera-light-theme-complement.css and the change is accomplished by editing the apropriate definition within the setup.ini [Less]
Posted almost 7 years ago by Ichthyostega
done: The problem indicated in this ticket is basically settled by now. on newer GTK versions, catching the exception seems to give suitable diagnostics regarding any parsing or evaluation problems related to CSS. in such cases, we now log the ... [More] error and just add the (still empty) Gtk::CssProvider -- which keeps us going, just now with the default theme Incidentally, I recently stumbled accross a ​blog post from 2014, indicating that the GTK project more or less abandoned the concept of a theming engine in favour of using modern CSS. Thus leaving out the engine definition from our stylesheet should in theory have no effect. In practice, theory and practice are not the same, and people just continue to write messy CSS, repeating the same braindead definitions again and again. But that's another problem.... [Less]
Posted almost 7 years ago by Ichthyostega
fixed: In 7655960/Lumiera: Acting on that theory, I now changed the invocation order when running the GUI to ensure all dtors of the UI backbone are invoked prior to calling sigTerm() The result is now a clean emergency shutdown. Conclusions ... [More] the possible races in Subsystem shutdown are a serious threat a better design of the subsystem runner with clearly delineate lifecycle phases might help to get that tricky code right. However, in the end the developer is responsible to invoke the signalling callback after any clean-up within the subsystem. Possibly this issue was also the root case for the segfaults in shutdown observed since some months... [Less]
Posted almost 7 years ago by Ichthyostega
When GUI shutdown is triggered indirectly through the GuiNotification::facade, which typically happens as result of a fatal error in a lower layer, the system is killed after leaving main() by the unexpected error handler. Which indicates an ... [More] exception within a noexcept function, typically a destructor. The actual exception emanates from our "ZombieCheck" safeguard, which was added recently to detect access to the dependency injection system after shutdown of the DependencyFactory. Terminal log 0000001042: INFO: proc-dispatcher.cpp:301: worker_2: processCommands: +++ dispatch Command("test_meta_markAction") {exec} 0000001043: INFO: proc-dispatcher.cpp:306: worker_2: processCommands: +++ -------->>> bang! 0000001045: WARNING: handling-pattern.cpp:90: worker_2: invoke: Invocation of Command("test_meta_markAction") {exec} failed: bad lexical cast: source type value could not be interpreted as target 0000001066: INFO: proc-dispatcher.cpp:159: worker_2: ~DispatcherLoop: Proc-Dispatcher stopped. 0000001067: INFO: subsystem-runner.hpp:208: worker_2: sigTerm: Subsystem 'Session' terminated. 0000001068: WARNING: subsystem-runner.hpp:209: worker_2: sigTerm: Irregular shutdown caused by: LUMIERA_ERROR_LOGIC:internal logic broken (Command execution failed: LUMIERA_ERROR_EXTERNAL:failure in external service -- caused by: bad lexical cast: source type value could not be interpreted as target). 0000001104: TODO: output-director.cpp:136: worker_4: bringDown: actually bring down the output generation 0000001105: INFO: subsystem-runner.hpp:208: worker_2: sigTerm: Subsystem 'Dummy-Player' terminated. 0000001106: NOTICE: notification-service.cpp:158: worker_2: triggerGuiShutdown: @GUI: shutdown triggered with explanation 'Application shutdown'.... 0000001125: NOTICE: notification-service.cpp:158: worker_2: triggerGuiShutdown: @GUI: shutdown triggered with explanation 'Application shutdown'.... 0000001132: INFO: subsystem-runner.hpp:208: worker_4: sigTerm: Subsystem 'PlayOut' terminated. 0000001134: NOTICE: notification-service.cpp:158: worker_4: triggerGuiShutdown: @GUI: shutdown triggered with explanation 'Application shutdown'.... 0000001142: INFO: display-service.hpp:147: worker_3: ~DisplayService: Display service dying... 0000001180: INFO: subsystem-runner.hpp:208: worker_3: sigTerm: Subsystem 'Lumiera GTK GUI' terminated. 0000001181: NOTICE: appstate.cpp:170: thread_1: maybeWait: Shutting down Lumiera... 0000001182: ALERT: appstate.cpp:174: thread_1: maybeWait: Triggering emergency exit... 0000001243: WARNING: interfaceregistry.c:199: thread_1: lumiera_interfaceregistry_bulkremove_interfaces: ENTRY NOT FOUND in interfaceregistry at clean-up of interface lumieraorg_Gui, instance lumieraorg_GuiStarterPlugin (lumiera:9719): Gtk-CRITICAL **: gtk_widget_is_drawable: assertion 'GTK_IS_WIDGET (widget)' failed (lumiera:9719): Pango-CRITICAL **: pango_layout_get_cursor_pos: assertion 'index >= 0 && index <= layout->length' failed 0000001293: ERR: error-exception.cpp:185: worker_3: lumiera_unexpectedException: ### Lumiera halted due to an unexpected Error ### ### Lumiera halted due to an unexpected Error ### +++ Caught Exception LUMIERA_ERROR_LIFECYCLE:Lifecycle assumptions violated 0000001298: ERR: error-exception.cpp:196: worker_3: lumiera_unexpectedException: +++ caught error::LumieraError > 0000001298! ERR: error-exception.cpp:196: worker_3: lumiera_unexpectedException: +++ messg: Sorry, Lumiera encountered an internal error. 0000001298! ERR: error-exception.cpp:196: worker_3: lumiera_unexpectedException: +++ descr: LUMIERA_ERROR_LIFECYCLE:Lifecycle assumptions violated (Already deceased object called out of order during Application shutdown. Lumiera Policy violated: Dependencies must not be used from destructors. Offender = ClassLock [Less]