00:00 Aedil left 01:18 hulk joined 01:19 kylese left 01:23 lichtkind left 02:09 guifa joined 02:15 hulk left, kylese joined 02:28 arkiuat left 02:34 arkiuat joined 02:39 arkiuat left 02:54 arkiuat joined 02:55 Aedil joined 02:59 arkiuat left 03:14 guifa left 03:16 stanrifkin_ joined 03:19 stanrifkin left 03:21 arkiuat joined 03:38 wayland76 joined 03:39 wayland left 03:56 Sgeo joined
disbot4 <jubilatious1_98524> @cokebot9000 Nothing beyond this (which is pretty good): cro.raku.org/docs/reference/cro-webapp-form 04:08
<jubilatious1_98524> @cokebot9000 Is Jonathan's answer helpful? stackoverflow.com/questions/758806...5#75882485 04:15
04:50 kylese left 04:51 kylese joined 04:59 melezhik joined 05:59 arkiuat left 06:14 arkiuat joined 06:21 deoac joined, arkiuat left 06:35 arkiuat joined 06:40 arkiuat left 06:52 arkiuat joined 06:56 arkiuat left 07:08 melezhik left 07:16 apa_c joined 07:24 arkiuat joined 07:29 arkiuat left 07:33 apa_c left 07:55 arkiuat joined 08:00 Sgeo left 08:06 arkiuat left 08:18 arkiuat joined 08:23 arkiuat left 08:41 arkiuat joined 08:45 arkiuat left 09:05 arkiuat joined 09:09 abraxxa-home joined 09:10 arkiuat left 09:38 arkiuat joined 09:42 lichtkind joined 09:47 arkiuat left 10:14 arkiuat joined 10:19 arkiuat left 10:21 melezhik joined 10:22 Aedil left 10:26 abraxxa-home left 10:42 deoac left 10:43 arkiuat joined 10:47 arkiuat left 11:17 arkiuat joined 11:24 arkiuat left 11:28 euandreh left, euandreh joined 11:35 librasteve_ joined
librasteve_ weekly: stackoverflow.com/questions/797305...e/79730593 11:36
notable6 librasteve_, Noted! (weekly)
tellable6 2025-08-08T00:38:27Z #raku <SmokeMachine> librasteve_ it allows us to do that with a code like this: www.irccloud.com/pastebin/uv1dvAkV/
2025-08-08T00:39:20Z #raku <SmokeMachine> librasteve_ that will print this: www.irccloud.com/pastebin/hD7a36wO/
hey librasteve_, you have a message: gist.github.com/1dab4d9af64e7242d2...c9470f0dc6
2025-08-08T13:33:21Z #raku <SmokeMachine> librasteve do you think the new way to declare polymorphic relationships easier/cleaner/better?
librasteve_ SmokeMachine: yes that’s awesome! thanks 11:39
weekly: www.irccloud.com/pastebin/uv1dvAkV
notable6 librasteve_, Noted! (weekly)
SmokeMachine librasteve_: anda I think that might be iseful for other situations as well… 11:42
11:44 arkiuat joined
SmokeMachine But that’s not merged yet… I want to be sure it won’t break anything… but I’m not sure how to do that… :( no tests break, that’s a good thing, all modules that uses Red still passes the tests (github.com/FCO/Red/actions/runs/16...40783647)… but I’m still not sure… 11:45
11:49 arkiuat left
librasteve_ my guess is that Red is quite lightly used … as one of the users (and promoters) i think you should be happy to move fast and break things … (one of the nice things about smallish raku world) 11:52
SmokeMachine Yes, I think that makes sense… 11:53
librasteve_ maybe make v0.2.x to flag a significant change 11:54
SmokeMachine I went :api<2> when the API has changed and old code could get broken… but in this case, it was not accepting more than 1 argument for relationships anyway… so it retro compatible… if something breaks, that’s a bug I should fix… 12:02
disbot4 <librasteve> Coke: there are some Cro form examples here raku.land/zef:librasteve/Air::Examples, albeit in HARC stack form … including one example combining Red ORM
SmokeMachine librasteve_: your examples using Red, are they using relationships? 12:04
12:15 masukomi joined 12:17 arkiuat joined 12:24 arkiuat left 12:30 masukomi left 12:31 melezhik left 12:40 arkiuat joined 13:47 guifa joined 13:52 peder left 13:56 peder joined 14:05 librasteve_ left
[Coke] I think cro.raku.org/docs/reference/cro-webapp-form is for server side form work. 14:05
jnthn's SO answer is closer, thanks. (seems very verbose) 14:06
14:25 peder left 14:28 peder joined 14:33 peder left 14:39 peder joined 14:45 peder left 14:47 euandreh left
disbot4 <librasteve> well,yes, there is a decision to be make whether to mark form fields and go with browser side validation or to handle that in the server side 14:50
14:50 euandreh joined
disbot4 <librasteve> after some experimentation my conclusion is hat browser side validation (eg for email format) is very ugly 14:51
[Coke] You should never *rely* on browser validation
disbot4 <librasteve> sure - but i was deciding if i wanted to do both browser and server side
[Coke] ... you also shouldn't bother doing a lot of email validation (send the email, have them click on the link you send them to verify) 14:52
ah
Sure, both is can be nicer for the users.
disbot4 <librasteve> well, no - browser side is basically ugly
<librasteve> and it’s a bad UX to fix the browser side validation and then fail the server side 14:53
<librasteve> good news with HTMX is that you can have all on server side and yet still have live validations
<librasteve> eg check requested username to see if unused 14:54
<librasteve> (see last weeks episode for that)
<librasteve> then I did some work to smoothly integrate HTMX with Cro::WebApp::Form and for basic form validation and submission the combination is pretty good 14:55
<librasteve> and the Cro::WebApp form definitions with field traits is very sweet (thanks to jnthn) 14:57
<librasteve> as a sweetener I extended the validations (as raku regexes) … 14:58
14:59 librasteve_ joined
disbot4 <librasteve> librasteve.github.io/Air/docs/Air/...validation 15:00
15:05 euandreh left 15:08 peder joined 15:09 arkiuat left 15:18 Aedil joined 15:20 euandreh joined 15:26 peder left, peder joined 15:29 ashfield joined 15:39 arkiuat joined
SmokeMachine Merged 15:54
16:14 guifa left 16:33 apa_c joined 17:08 apa_c left 17:09 librasteve_ left
disbot4 <jubilatious1_98524> weekly: stackoverflow.com/questions/797305...e/79730593 17:26
arkiuat m: my $n = 2; my %s is Set[Int] = <1 2>; say ($n (elem) %s); for $n, |%s.keys { .^name.say } 17:39
camelia False
Int
IntStr
IntStr
arkiuat the doco in docs.raku.org/type/Set makes it seem as if those keys should be Int and not IntStr, at least in 6.d, which I'm running 17:40
lizmat m: say IntStr ~~ Int 17:44
camelia True
lizmat so that's why it will allow IntStr values as keys in the Set, different from Int keys 17:45
now, with a coercing type like Int(Str) it might work 17:46
m: my %s is Set[Int(Str)] = <1 2>; dd %s.keys # but it doesn't, and that might actually be a bug
camelia (IntStr.new(1, "1"), IntStr.new(2, "2")).Seq
lizmat m: my Int(Str) @a = <1 2>; dd @a.values # hmmm looks like it is going deeper 17:47
camelia (IntStr.new(1, "1"), IntStr.new(2, "2")).Seq
Voldenet IntStr is always Str and Int if it's proper Int
isn't it?
lizmat well, yes, but Int(Str) is tighter, as it is just an Int 17:48
m: my Int(Str) @a = "1","22"; dd @a.values
camelia (1, 22).Seq
lizmat I understand why it doesn't work (technically), but I wonder if it's the correct thing to (not) do 17:49
disbot4 <nahita3882> perhaps related my %s is Set[Int] = <a b>; fails while my %s is Set[Int()] = <a b>; doesn't 17:50
lizmat *that* is a bug and should be reported 17:53
Voldenet maybe it has something to do with that being Failure instead of a value (which can become any type) 17:56
m: my Int(Str) $x = "nasty"; $x.WHAT.say
camelia (Failure)
arkiuat I figured there was a bug lurking there somewhere! For my particular purpose today, I gave up on using a set, and am using the smartmatch operator with junctions, and that works fine.
lizmat m: use nqp; dd nqp::istype("a",Int()) 18:04
camelia 1
lizmat the underlying issue
m: use nqp; dd nqp::istype(Str,Int()) 18:05
camelia 1
18:21 guifa joined 18:24 DarthGandalf left, DarthGandalf joined 19:10 euandreh left 19:14 euandreh joined
lizmat weekly: dev.to/lizmat/towards-more-account...ograms-3g2 19:41
notable6 lizmat, Noted! (weekly)
20:41 arkiuat left 20:47 coleman left 20:48 coleman joined 20:54 arkiuat joined 20:56 lichtkind left 21:02 arkiuat left, arkiuat joined 21:07 arkiuat left 21:17 arkiuat joined 21:25 arkiuat left 21:33 arkiuat joined
disbot4 <librasteve> I guess I always thought that an IntStr is defined (illustration) as class IntStr is Int is Str { ... } - and that coercion is needed to convert something like this (illustration) { .Int } unless { Int } given $x 21:35
<librasteve> so since IntStr IS an Int, Int() will leave it unchanged 21:36
<librasteve> [but I am happy to be corrected] 21:37
21:40 stanrifkin_ left
[Coke] m: sub a (Int(Any) $x) { say $x.WHAT }; a(3); a("3"); a(<3>) 21:44
camelia (Int)
(Int)
(IntStr)
[Coke] No, you're right.
22:13 Sgeo joined 23:11 arkiuat left 23:15 oodani left 23:18 oodani joined 23:19 wayland76 left 23:21 arkiuat joined