Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 13 15:58
    rokhimin starred dry-rb/dry-matcher
  • Dec 13 08:53
    flash-gordon labeled #376
  • Dec 13 08:44
    solnic commented #376
  • Dec 12 21:34
    flash-gordon commented #376
  • Dec 12 21:34
    flash-gordon labeled #376
  • Dec 12 21:34
    flash-gordon opened #376
  • Dec 12 19:32
    RyanLafferty starred dry-rb/dry-types
  • Dec 12 05:53
    technofreak starred dry-rb/dry-monads
  • Dec 12 00:14
    thekuwayama starred dry-rb/dry-monads
  • Dec 11 09:29
    blasterun starred dry-rb/dry-monads
  • Dec 11 08:34
    flash-gordon closed #115
  • Dec 11 08:34
    flash-gordon commented #115
  • Dec 11 08:31

    flash-gordon on v1.3.3

    (compare)

  • Dec 11 08:30

    flash-gordon on master

    Bump version to 1.3.3 (compare)

  • Dec 11 08:30

    flash-gordon on master

    Update CHANGELOG (compare)

  • Dec 10 23:46
    johnmaxwell commented #116
  • Dec 10 21:54

    flash-gordon on master

    Halt with mutable backtrace Ex… Merge pull request #116 from jo… (compare)

  • Dec 10 21:54
    flash-gordon closed #116
  • Dec 10 21:54
    flash-gordon commented #116
  • Dec 10 21:49
    johnmaxwell commented #116
Piotr Solnica
@solnic
so, theoretically you’d be able to apply schema recursively
this would be an interesting use case
it would also help in re-using schemas
Lorenzo Arribas
@larribas
reusing schemas would be a great addition
but even so, referencing the same schema from inside of it may require some kind of lazy evaluation or delayed const_get-ish thing, right?
Piotr Solnica
@solnic
@larribas nah, it would just require some additional interface to specify “validate with self"
as in apply all rules from self
API ideas most welcome :)
Andy Holland
@AMHOL
I always love self
:p
Lorenzo Arribas
@larribas
:P
Piotr Solnica
@solnic
@wafcio so, what kind of issues did you have with dry-v?
Krzysztof Wawer
@wafcio

so my opinion about dry-validation - it has freaky error format: sometime I see

errors = schema.call(email: 'jane@doe.org', age: 17).messages

puts errors.inspect
# { :age => [["age must be greater than 18"], 17] }

another time I see

errors = schema.call(email: nil, age: 19).messages

puts errors.inspect
# { :email => [["email must be filled", nil]] }

I caused that I droped dry-validation today.

Piotr Solnica
@solnic
wow what happened with the formating here?
Krzysztof Wawer
@wafcio
I have always problem with formatting in this strange style and strange new line keys
maybe I will back to dry-validation when I will have more time
Piotr Solnica
@solnic
I’m not sure what the problem is, it gives you errors
Krzysztof Wawer
@wafcio
I wanted use drop validation in API where I need return validation keys
and when I saw
[[„invalid”, nil]]
I said WHAT ???
invalid was my translation message
Piotr Solnica
@solnic
so what’s the problem?
first array includes compiled error messages, the second argument is the original input value
Krzysztof Wawer
@wafcio
and for this I must write own wrapper, and when I open README and saw that sometimes there is construction like
[[…, …], …]
I said not today
Piotr Solnica
@solnic
what is your desired format?
error messages can be compiled to anything, I just used a simple hash for now as the default but it can be literally anything, it’s a pluggable “behavior” in dry-v
Krzysztof Wawer
@wafcio
{ attribute: [error, error], attribute: [error, error]}
like it was in 0.1.0 version
Piotr Solnica
@solnic
so you don’t like the fact you’ve got original value?
Krzysztof Wawer
@wafcio
for now I have this requirement from frontend app
Piotr Solnica
@solnic
I put it there because it’s useful for cases like each rule and figuring out the index of a given value when it comes from an array
displaying these errors is still pretty simple though, not sure why it has put you off :)
errors.each { |attribute, (messages, _)| … } or something
Krzysztof Wawer
@wafcio
I don’t understand why there is two different format: { :age => [["age must be greater than 18"], 17] } and { :email => [["email must be filled", nil]] }
Piotr Solnica
@solnic
two formats?
Krzysztof Wawer
@wafcio
[[…], …] and [[…, …]]
Piotr Solnica
@solnic
oh, now THAT seems like a bug :joy:
I will try to repro and fix
Krzysztof Wawer
@wafcio
I read it from README file
maybe README is old
Piotr Solnica
@solnic
maybe I made a mistake writing readme, that’s more likely :)
Krzysztof Wawer
@wafcio
ok
Piotr Solnica
@solnic
lemme see
Krzysztof Wawer
@wafcio
so I will give chance dry-validation, again :)
Piotr Solnica
@solnic
yeah, it’s a bug, I’ll fix it and push a release
Krzysztof Wawer
@wafcio
I wanted switch to dry-validation in 0.1.0 version, but like I said some time aga in 0.1.0 we dry-validation didn’t have optional keys
ok