Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 05 09:29

    solnic on master

    Clear exception message when an… Add gem names to plugins Merge pull request #128 from sk… (compare)

  • Dec 05 09:29
    solnic closed #128
  • Dec 05 09:29
    solnic closed #127
  • Dec 04 18:49
    micahphone starred dry-rb/dry-monads
  • Dec 04 17:43
    icy-arctic-fox starred dry-rb/dry-types
  • Dec 02 12:37
    pedrofurtado starred dry-rb/dry-view
  • Dec 02 11:59
    lenon starred dry-rb/dry-monads
  • Dec 01 11:06

    flash-gordon on declare-finalized

    (compare)

  • Dec 01 11:06

    flash-gordon on master

    Set initial value for ivar Merge pull request #131 from dr… (compare)

  • Dec 01 11:06
    flash-gordon closed #131
  • Dec 01 11:05
    flash-gordon opened #131
  • Dec 01 11:03

    flash-gordon on declare-finalized

    Set initial value for ivar (compare)

  • Nov 30 16:50
    paul commented #32
  • Nov 30 16:50
    paul synchronize #32
  • Nov 30 16:44
    paul synchronize #32
  • Nov 30 16:02
    paul synchronize #32
  • Nov 30 16:01
    paul commented #32
  • Nov 30 12:12

    flash-gordon on master

    Use GH badge for CI status (compare)

  • Nov 30 12:08

    dry-bot on master

    [devtools] config sync (compare)

Gustavo Caso
@GustavoCaso
BusyPeriods = Dry::Validation.Schema do
  each do
    schema do
      required(:start_date).filled(:date?)
      required(:end_date).filled(:date?)
      required(:utilisation).filled(:int?)

      rule(started_before_ended: [:start_date, :end_date]) do |start_date, end_date|
        end_date.gt?(value(:start_date))
      end
    end
  end
end
If I try to validate some data if the error is related with the required attributes I will get a message with the format { index => error_message } but if the error comes from the rule I will get just the error with out the index. Is that expected?
{0=>{:utilisation=>["must be an integer"]}}
{:started_before_ended=>["must be greater than 2018-03-21"]}
Piotr Solnica
@solnic
@GustavoCaso end_date.gt?(start_date)
Gustavo Caso
@GustavoCaso
Thanks @solnic
Christian Meier
@mkristian
hi, found some in the issue of dry-validation how to reuse a Schema for nested arrays. wanted to extend the documentation a bit, is it to make a PR against: https://github.com/dry-rb/dry-rb.org ?
looks like autogenerated somehow !
Aaron Barthel
@abrthel
@mkristian from that link, then follow this folder path source > gems > dry-validation From there you just have to edit the markdown files
Christian Meier
@mkristian
ok - thanks. and I leave gz file as is ?
Aaron Barthel
@abrthel
under docs? Yeah you dont need to alter them at all. The markdown files get rendered into the actual deployable site.
Nicolas Cavigneaux
@Bounga
Hi there. I'm playing with Dry Types and I'm wondering if it is possible to do something like Types::Strict::String.constrained(filled: true) ?
Gustavo Caso
@GustavoCaso
Absolutely you can
Nicolas Cavigneaux
@Bounga
Is this the right syntax ?
Gustavo Caso
@GustavoCaso
Yes
Nicolas Cavigneaux
@Bounga
Seems like it doesn't work in my example code
Gustavo Caso
@GustavoCaso
Types::Strict::String.constrained(filled: true).('')
Dry::Types::ConstraintError: "" violates constraints (filled?("") failed)
Types::Strict::String.constrained(filled: true).(nil)
Dry::Types::ConstraintError: nil violates constraints (type?(String, nil) AND filled?(nil) failed)
Nicolas Cavigneaux
@Bounga
oh I should have said this before but I use it through Hanami, so I have attribute :ref, Types::Strict::Int.constrained(filled: true)
Gustavo Caso
@GustavoCaso
Types::Strict::String.constrained(filled: true).('helllo')
=> "helllo"
Could you provide the version is using?
Nicolas Cavigneaux
@Bounga
0.12.2
Gustavo Caso
@GustavoCaso
What error do you see? I guess is possible to do in master
Nicolas Cavigneaux
@Bounga
I don't have any error, it just doesn't constrain the attribute to be filled
User.new(uid: 1, email: "foo", role: "admin").ref
=> nil
Gustavo Caso
@GustavoCaso
I'm not an expert in Hanami, but let me see if I can help
Nicolas Cavigneaux
@Bounga
irb(main):011:0> class Testing < Hanami::Entity
irb(main):012:1> attributes do
irb(main):013:2* attribute :ref, Types::Strict::Int.constrained(filled: true)
irb(main):014:2> end
irb(main):015:1> end
=> true
irb(main):016:0> Testing.new.ref
=> nil
oh
irb(main):017:0> Testing.new(ref: nil)
TypeError: nil (NilClass) has invalid type for :ref violates constraints (type?(Integer, nil) AND filled?(nil) failed)
Gustavo Caso
@GustavoCaso
If you remove the constrained part ?
So looks like is working, just need to pass the values :smile:
Nicolas Cavigneaux
@Bounga
Yes! I'd hope to have a way to tell "this attribute must be present"
I can do this through a custom initialize method though
Gustavo Caso
@GustavoCaso
present == filled ?
Nicolas Cavigneaux
@Bounga
not sure, official documentation only list available constrain without explaining what it does
Nicolas Cavigneaux
@Bounga
Yes so if the attribute is not present there's no check, that dry-validation job which provides required keyword
Thank a lot for your help
Gustavo Caso
@GustavoCaso
Yes I think Hanami use dry-validations right?
Nicolas Cavigneaux
@Bounga
yes
Gustavo Caso
@GustavoCaso
Nice so you can solve the issue right ?
Nicolas Cavigneaux
@Bounga
Yes I was doing my check in the wrong place
Gustavo Caso
@GustavoCaso
:+1:
Hamza Khan-Cheema
@hamzakc
What tools are people were using for API documentation. I have used swagger::blocks before (https://github.com/fotinakis/swagger-blocks) Anyone using anything else in a dry-web app ?
Semyon Pupkov
@artofhuman

Hi, i have question about dynamic arguments in dry-v schema

I try to define schema

        CreateSchema = Dry::Validation.Form do
          configure do
            option :min_time

            def time_range
              min_time...Time.current
            end
          end

          required(:start_at).filled(:time?, included_in?: time_range)
     end

but i have the error when use this schema

CreateSchema.with(min_time: 10.minutes.ago).call(params)

Failure/Error: min_time...Time.current

ArgumentError:
  bad value for range

I think this error raised when schema compiled and option min_time at thid moment is nil. It’s right way to define schema like this with dynamic agruments?

Gustavo Caso
@GustavoCaso
I think the error comes from min...Time.current
11...Time.current
ArgumentError: bad value for range
Gustavo Caso
@GustavoCaso
Ups sorry my fault
Semyon Pupkov
@artofhuman
I use custom validation block =) thanks
Gustavo Caso
@GustavoCaso
I wish I was a better help :smile:
Calinoiu Alexandru Nicolae
@alexandru-calinoiu
HI all, do you guys know of an online workshop (payed on not) that I can point someone to learn about dry? Even if is something similar to rails book.