faustinoaq changed the topic of #amber to: Welcome to Amber Framework community! | https://amberframework.org | Developer happiness, productivity and bare metal performance | GH: https://github.com/amberframework | Docs: https://docs.amberframework.org | Gitter: https://gitter.im/amberframework/amber | IRC Logger: https://irclog.whitequark.org/amber | Amber::Server.start
<FromGitter> <drujensen> @damianham are you around? wondering if you have some time to discuss the PR.
<FromGitter> <drujensen> @Blacksmoke16 yes. I agree.
<FromGitter> <drujensen> I think we tried doing this
<FromGitter> <drujensen> I tried to comment but github is down
<FromGitter> <Blacksmoke16> yea i saw your emails but didnt see any replies
<FromGitter> <Blacksmoke16> @drujensen
<FromGitter> <drujensen> so i think we didn’t have the ability to initialize the object is why we did it this way
<FromGitter> <drujensen> all initializers would require setting the field
<FromGitter> <drujensen> but its been a while since i looked at it
<FromGitter> <drujensen> the way we did it is more rails like
<FromGitter> <Blacksmoke16> pretty sure i have it working atm at least at a high level
<FromGitter> <Blacksmoke16> ```code paste, see link``` [https://gitter.im/amberframework/amber?at=5bcd1b67ab17df2631ccdbbe]
<FromGitter> <drujensen> that is awesome
<FromGitter> <Blacksmoke16> ```t = Test.new ⏎ t.name = nil``` [https://gitter.im/amberframework/amber?at=5bcd1b6dc7bf7c36624bc2bd]
<FromGitter> <Blacksmoke16> ```code paste, see link``` [https://gitter.im/amberframework/amber?at=5bcd1b7e1e23486b93f860b8]
<FromGitter> <Blacksmoke16> adding another field as `String?`
<FromGitter> <Blacksmoke16> ```code paste, see link``` [https://gitter.im/amberframework/amber?at=5bcd1bd3271506518d4c91fb]
<FromGitter> <drujensen> Any issues with the `new`?
<FromGitter> <drujensen> I didn’t think you could create an object without setting a non-nilable field
<FromGitter> <Blacksmoke16> ah nice `invalid memory access`
<FromGitter> <drujensen> well, didn’t expect that
<FromGitter> <Blacksmoke16> ill have to play with it more, worst case i think we could keep functionality and just base the `raise_on_nil` on `#nilable?` of the type of the field
<FromGitter> <Blacksmoke16> vs `field` and `field!`
<FromGitter> <drujensen> ok. That is more crystal like. anyone have a preference?
<FromGitter> <robacarp> I’m all for making it feel more crystalic
<FromGitter> <Blacksmoke16> seems the invalid mem access only happens when you try to print it
<FromGitter> <drujensen> crystalic, lol
<FromGitter> <drujensen> @robe
<FromGitter> <drujensen> I tried posting it several times in github. did you get them via email?
<FromGitter> <robacarp> I did not — I have email turned off though
<FromGitter> <robacarp> Let’s see if I got GH notifications
<FromGitter> <robacarp> Sorry, I got a Github notification on a few threads but nothing actually shows up changed :/
<FromGitter> <drujensen> > Regardless of which it is, how do I specify the other combination? Composition is necessary with multiple Boolean operators. ⏎ ⏎ @robacarp yes. One option which I think you documented in your comments is to be able to pass in QueryBuilder in as a parameter. This would require merging the two QueryBuilders by adding parenthesis at the correct location ⏎ ⏎ ```User.where(name: "fred").or(User.where(name:
<FromGitter> ... "mike").and(name:"jerry"))``` [https://gitter.im/amberframework/amber?at=5bcd20fc384492366178bb7f]
<FromGitter> <robacarp> Cool. I don’t think that would be hard to implement, but if that’s the case I think it makes sense for operators at a consistent scope level be associated in a simple way
<FromGitter> <robacarp> `.where(A).or(B).where(C)` then becomes `(A or B) and C`?
<FromGitter> <drujensen> oh
<FromGitter> <drujensen> hhm
<FromGitter> <drujensen> how would you do the opposite?
<FromGitter> <drujensen> how would you control where the parenthesis go?
<FromGitter> <robacarp> `where©.or(B).where(A)` perhaps
<FromGitter> <robacarp> Uh
<FromGitter> <robacarp> Hah
<FromGitter> <robacarp> `(c)`
<FromGitter> <robacarp> The later addition of nesting would make that more explicit
<FromGitter> <robacarp> I’m thinking of the English of it... if I read it out loud what would I expect it to mean
<FromGitter> <drujensen> so the `where` would start the next and?
<FromGitter> <drujensen> it is saying, I want to end this one and start a new one?
<FromGitter> <drujensen> does this cover more complex groupings?
<FromGitter> <robacarp> Hm. I was just thinking that `or` is the only thing that groups
<FromGitter> <robacarp> And t groups urgently to the left
<FromGitter> <robacarp> More complexity is probably nesting driven
<FromGitter> <robacarp> To be clear I don’t know if this is what you have or not, I’m just thinking down the road
<FromGitter> <drujensen> no, right now it just concat’s them. Looks like `AND` has precedence over `OR`
<FromGitter> <drujensen> in SQL
<FromGitter> <robacarp> That seems like a good first pass
feepbot has quit [Ping timeout: 240 seconds]
feepbot has joined #amber
feepbot has quit [Ping timeout: 244 seconds]
feepbot has joined #amber
feepbot has quit [Ping timeout: 272 seconds]
feepbot has joined #amber
<FromGitter> <damianham> @drujensen I am in Bangkok - so probably 12 hours or so different to your timezone but happy to do call to discuss
vivus has joined #amber
wontruefree has joined #amber
wontruefree has quit [Quit: this is not the client you are looking for]