re-frame

https://github.com/Day8/re-frame/blob/master/docs/README.md https://github.com/Day8/re-frame/blob/master/docs/External-Resources.md
flowthing 2020-11-30T08:13:57.387100Z

Is there a linter that catches cases such as dispatching a non-existent event or subscribing to a non-existent subscription? I guess it'd be fairly straightforward to build something on top of e.g. https://github.com/jpmonettas/clindex, but I was just wondering whether something like that already exists.

jhacks 2020-12-01T15:43:36.398100Z

That macro looks like the answer to my issues with code navigation in emacs for events/subs. It would also enable using imenu, since it starts with def . Are there any drawbacks to using this macro instead of directly using reg-sub, for example?

🦜 1
p-himik 2020-11-30T08:15:59.387300Z

FWIW, I've never seen anything like that being mentioned. I'm not sure it would be that straightforward given that event/sub IDs can be anything and not just keywords. And you can dynamically create them, even if they're just keywords.

flowthing 2020-11-30T08:18:10.387500Z

Right, good point. I think it might be possible to catch most cases, but you're right that a static analysis type of approach wouldn't catch everything.

flowthing 2020-11-30T08:19:10.387700Z

It's just a very easy bug to make to forget to update the event names in dispatch calls when moving things around.

👍 1
rutledgepaulv 2020-11-30T11:37:40.388100Z

If it's a problem you could def symbols for every reframe sub and event by convention (I'd put them all in one namespace) and get compile time assistance / potentially better refactoring support from your editor.

👌 1
flowthing 2020-11-30T11:44:02.388300Z

Hmm, interesting idea, thanks. Might get a bit boilerplatey, but it might work. I'll consider it.

2020-11-30T18:23:33.389800Z

When you deref a non existing subscription it throws an error?

flowthing 2020-11-30T18:24:58.391700Z

It does, but you’ll have to open the console to see that. Of course, could maybe make it throw an error to make it more visible. :thinking_face:

Lu 2020-11-30T19:12:43.393400Z

In so many instances I’ve had nil subscriptions completely blank the page so it was hard for them to go unnoticed 😂

1