Closed andrewjshults closed 12 years ago
Sweet :) Will merge that now.
One thing to note is that this change will also add support for null
in the same way support for false
was added. Not sure this is a good idea or not, as null
is generally regarded as undefined. So for now, I'll just change the if valueExists
checks to if value?
to avoid the risk of breaking things. When someone complains, will be happy to change it back to the undefined check :)
Makes sense - while I can see the use case for wanting to test to see if an array has a null element, I think that'd be better left as a comment on the $has test (with instructions on how to enable it), since I see it causing more confusion as the default.
Sorry for the very long delay on this. Just got published to v1.3.1. Thanks!
It looks like util.toArray converts false to [] rather than [false], so the Hash.hasIn test fails because the CS version gets converted to if(value) (line 127 of query-engine.coffee, line 91 of query-engine.js). It seems like this should test to see if the value isn't undefined rather than coercible to true, since false, 0, and '' may be valid tests (false is in my case).
I added a test specifically for this and it looks like all the other tests are still passing, but since I'm just getting started with this project wasn't sure if there are any other areas I should poke around to make sure I didn't break anything.
Cheers! Andrew