Stateful event callbacks?
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia dal comportamento del gestore dell’evento OnProcessExit descritto nell’issue, quindi esamina come funzionerebbero lo stato del callback e il ciclo di vita quando vengono definiti in un launchfile. Confronta le opzioni stateful-callback e topic-publication e considera l’interazione con OnShutdown; done dovrebbe fornire un modo per aggregare i fallimenti dei processi senza mostrare ripetutamente popup bloccanti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Feature request
(This is more of a series of question, but ros-answers seems to be down currently)
Problem
Most of our nodes are required, and on shutdown, I'd like to detect any unsuccessful exit codes and display a popup with a link to support for our software (essentially a kind of crashpad background service). I'm wondering if this is possible using OnProcessExit event handlers within roslaunch.
I've tried a few adding OnProcesExit event handlers to our top-level launch construct but, since the callback is stateless, this displays a popup for every failed process. These popups are also blocking, which then causes SIGINT escalation, leading to more popups for the nodes that were blocked on shutting down.
Feature description
- Adding the ability to use stateful callbacks OR
- Adding the ability for a callback to publish to a topic, so a node can handle the state.
Implementation considerations
-
I've considered creating a custom node which launches outside of our main launchfile to keep state, but this relies on being able to publish the OnProcessExit information within the event handler callback. This also feels like a lot of un-necessary boilerplate on the node side.
-
I'm wondering if it's already possible to implement stateful callbacks by defining a class in the launchfile and using a method as the callback, but I'm unsure where this class would be instantiated and what its lifecycle would be tied to
-
Alternatively, I'm wondering if it's possible to achieve the above by using a reentrant function as the callback for collecting the state, and a separate event handler (OnShutdown?) to terminate the function and use the results?
- Lingua principale
- Python
- Stelle
- 155
- Fork
- 189
- Merge medio
- 3g 22h
- PR unite (30g)
- 21
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ros2/launch
-
Use a relative target for the `latest` log symlink so it survives different absolute mount paths (host/Docker)Forse già presa @Old-Ding l’ha presa 95 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
ros2/launch#978 · 1 reazione ·
I maintainer di solito rispondono entro 2 giorni
-
Add OpaqueFunction to list at docs.ros.orgForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertabug help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
ros2/launch#826 · 4 commenti ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
I maintainer di solito rispondono entro 2 giorni
-
[launch_testing] pytest>8.1 dropped the legacy "path" argument from its internal hooks on humbleForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
ros2/launch#979 · 5 commenti ·
I maintainer di solito rispondono entro 2 giorni
-
`--print-description` option shows unhelpful outputForse già presa @official-burak l’ha presa 49 giorni fa. Apertabug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
I maintainer di solito rispondono entro 2 giorni
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 70/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
topoteretes/cognee#5773 ·
I maintainer di solito rispondono entro 1 giorno
-
MiKTeX: a failed build reports no errors because texify --quiet switches the log to file:line: styleAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
SublimeText/LaTeXTools#1718 ·