-
-
Notifications
You must be signed in to change notification settings - Fork 116
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
Add queue for tap values in clojure client #550
Conversation
Woah this is really cool! I think it's a great idea and the implementation looks good. I feel a little iffy any time I introduce code that's sent on connection, just in case it breaks something for the user, but as long as it can be turned off and we test it out it should be fine. Just something that adds some level of risk. I think the queue with a way to peek + print it all is great, the only thing I'm thinking is that we might need more unique namespaces ( So it's kind of a pop/pop-all rather than peek/print-all. More side effects here will make more sense to the user I think. I think starting with a manual way for users to pop values out into their logs is good. Then it's a very easy next step to add some sort of automated poll / check after evals so that tap values are automatically printed on the user's behalf as they come in. Will have a review and a test run with it ASAP, but on the whole this looks fantastic, thank you so much. |
Merged and modified, thank you very much! This is super cool. I simplified things a little so there's a little less surface area / room for confusion (if it's off by default I don't think we actually save much but I'll get people opening issues asking why the mapping doesn't work 😅 ), I quite like where it's at right now. Not your exact original vision, but close to it, I hope you don't mind the changes I made. I merged the initial Clojure code we send into the There's only one mapping, it prints and clears the queue because I think that's what 90% of the use cases will be. You can access the last value you just printed with Please check out the changes on Thanks again for adding this feature, it's really cool! |
Thanks for merging this so quickly, I'll try to use updated version now, changes you've made make a lot of sense. |
@Olical I actually just played around with it and I think there is a bug where each time I connect to nrepl it adds one more tap processing function, so single tap will add multiple values onto the queue. |
OH! That's why that was a |
Fixed on I also added a comment in the code explaining why it's like this now. |
I absolutely loved the idea of #220 and decided to give it a shot.
Not sure if I got the idea right, especially I struggled with choosing hotkeys, but I intend to play around with it and see how it works for myself.
Would love any kind of feedback on that.