Michael G. Schwern
Michael G. Schwern
@z64 [Here is a stripped down program demonstrating the problem](https://gist.github.com/schwern/356691c2df5b3a1bd7888d09533977dd). It should connect and list all the voice and text channels. It connects, but lists nothing. Yes, I'd already done...
@z64 Could it be a server setting? Perhaps "Intents", which I don't understand.
An API is behaving abnormally?!  (I work with many, many APIs as my day job. Situation normal.) Thanks for digging into...
@z64 [I've stripped down the example even further](https://gist.github.com/schwern/356691c2df5b3a1bd7888d09533977dd) removing the calls outside the ready handler and using synchronous run. Sometimes it loads the channels, sometimes it does not. Seems like...
@z64 What is the recommended bot exit procedure? I don't see anything special in the [shutdown example](https://github.com/discordrb/discordrb/blob/master/examples/shutdown.rb). Nor is it mentioned in [Basic Bot Creation](https://github.com/discordrb/discordrb/wiki/Basic-bot-creation).
I didn't know about `at_exit`. Yes, that is far better. I do believe that all the examples should demonstrate proper basic bot procedure. `at_exit { bot.stop }` is less intrusive.
Perhaps an option to allow explicit matchers if there's an argument, and set it to `true` by default. ``` # Good expect(Thing.exists?(id)).to be_falsey # Bad expect(Thing).to exist(id) ``` I've found...
What might make this better is a `with` or `by` method to take the arguments. ``` expect(Thing).to exist.with(id) expect(obj).to be_handled.by(handler) ``` I don't know if it's worth the effort, it...
> To summarize, my position is that, by default (or at least in RuboCop): > > * `be_falsey / be truthy` => never I disagree about `be_falsey`. There are many...
> Do you use this metadata in some way, or is it there for purely informational purpose? By default, live tests are skipped. They are run as a release test....