https://github.com/JDevlieghere commented:
I like the idea of making the request handlers responsible for telling us whether they should be deferred compared to the allow-list I implemented. That's definitely an improvement. What I don't like is how this introduces more statefulness, especially in the request handlers. The queueing/deferring logic isn't trivial and I would strongly prefer if we could keep it centralized as much as possible. With this PR we end up with both a separate queue and a method that makes the `Run` operation behaves differently depending on the global DAP state (i.e. if we've send the configuration request). Would it be possible to have the RequestHandlers advertise whether or not they should be deferred until the configuration is done (e.g. `DeferredUntilConfigurationDone`), and keep the latter an implementation detail of the DAP class? And strictly handle deferring at the queue level? PS: Small nit, but your PR is titled "Basic implementation of a deferred request." which isn't accurate because deferred requests are already implemented. A better title would be "Change the way we defer requests" or something similar. https://github.com/llvm/llvm-project/pull/140260 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits