00:01
squashable6 joined
00:24
lucasb left
00:30
Kaiepi joined
00:31
Kaiepi left
01:00
Kaiepi joined
01:34
ZzZombo_ joined
01:36
squashable6 left,
ZzZombo left,
ZzZombo_ is now known as ZzZombo
01:38
squashable6 joined
02:33
wtwt5237 joined
02:54
ZzZombo_ joined
02:58
ZzZombo left,
ZzZombo_ is now known as ZzZombo
03:05
wtwt5237 left
03:14
Geth joined
03:47
squashable6 left
03:48
squashable6 joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | ¦ problem-solving: Kaiepi assigned to jnthn Issue IO::Socket::INET and IO::Socket::Async need a redesign in v6.e github.com/perl6/problem-solving/issues/125 | 04:48 | |||||||||||||||||||||||||||||||||||||
05:09
evalable6 joined
06:49
sena_kun joined
07:03
ufobat joined
07:14
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | in the changelog, have we been putting the hashes for the merge commits for PRs, or the individual commits? | 07:45 | |||||||||||||||||||||||||||||||||||||
08:13
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1277, Tests=109545, 206 wallclock secs (28.11 usr 8.21 sys + 2900.75 cusr 267.28 csys = 3204.35 CPU) | 08:38 | |||||||||||||||||||||||||||||||||||||
09:54
pmurias joined
|
|||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: I forgot to push a missing files commit sorry :( | 09:58 | |||||||||||||||||||||||||||||||||||||
tellable6 | gist.github.com/065933c011d69e4d6f...ba3cb80c94 | ||||||||||||||||||||||||||||||||||||||
gist.github.com/0dab989be2899a9b0d...33b13af591 | |||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: but the way you implemented those ops is exactly how they should be | 09:59 | |||||||||||||||||||||||||||||||||||||
10:04
Guest13443 joined
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | pmurias: cool, wasn't terribly complicated. btw, istr you had some different ideas about how to do 6model stuff, i.e., the stuff in src/vm/jvm/runtime/org/perl6/nqp/truffle/nodes/sixmodel/* might not stick around? | 10:12 | |||||||||||||||||||||||||||||||||||||
pmurias | hmm, we will need to add sprinkle some truffle magic over how we do method calls to make things fast | 10:17 | |||||||||||||||||||||||||||||||||||||
but the STables etc. will very likely stay | |||||||||||||||||||||||||||||||||||||||
MasterDuke | k | 10:18 | |||||||||||||||||||||||||||||||||||||
was trying to figure out to do some of the ops that make STable calls | |||||||||||||||||||||||||||||||||||||||
pmurias | the won't likely change, getStable() abstracts away stuff | 10:19 | |||||||||||||||||||||||||||||||||||||
MasterDuke | k, good to know | 10:20 | |||||||||||||||||||||||||||||||||||||
pmurias | generally the fixed sized "builtin" reprs inherit from FixedSizeObject | ||||||||||||||||||||||||||||||||||||||
and P6opaque objects from DynamicObject (which comes from the builtin Truffle object model) | |||||||||||||||||||||||||||||||||||||||
10:43
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | pmurias: btw, i can't even run an empty -e: `./nqp-j nqp-truffle.nqp -e ''java.lang.NoSuchMethodError: com.oracle.truffle.api.impl.TVMCI.setCallTarget(Lcom/oracle/truffle/api/nodes/RootNode;Lcom/oracle/truffle/api/RootCallTarget;)V` | 10:43 | |||||||||||||||||||||||||||||||||||||
am i missing something? | |||||||||||||||||||||||||||||||||||||||
|Tux| |
|
10:48 | |||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 665cf33322 | (Paweł Murias)++ | 2 files [truffle] Stub nqp::decodersetlineseps |
10:52 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: ee4a2ebc98 | (Paweł Murias)++ | src/vm/jvm/bin/run_tests.pl [truffle] Add passing test |
|||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: does running scripts as command line arguments work? | ||||||||||||||||||||||||||||||||||||||
MasterDuke: -e works for me | 10:53 | ||||||||||||||||||||||||||||||||||||||
MasterDuke: this seems running using a wrong jvm | |||||||||||||||||||||||||||||||||||||||
MasterDuke | java -versionopenjdk version "1.8.0_222"OpenJDK Runtime Environment (build 1.8.0_222-20190711120915.buildslave.jdk8u-src-tar--b08)OpenJDK 64-Bit GraalVM CE 19.2.0.1 (build 25.222-b08-jvmci-19.2-b02, mixed mode) | 11:01 | |||||||||||||||||||||||||||||||||||||
`which javac` gives `/usr/lib/jvm/java-8-graal/bin/javac` | 11:02 | ||||||||||||||||||||||||||||||||||||||
pmurias: and nope, same error for scripts | |||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: did it work previously? | 11:09 | |||||||||||||||||||||||||||||||||||||
MasterDuke | i haven't tried in a while, but yeah | 11:15 | |||||||||||||||||||||||||||||||||||||
what does your `java -version` say? | |||||||||||||||||||||||||||||||||||||||
pmurias | GraalVM 1.0.0-rc3 (build 25.71-b01-internal-jvmci-0.45, mixed mode) | 11:17 | |||||||||||||||||||||||||||||||||||||
paste.debian.net/1109297/ | 11:18 | ||||||||||||||||||||||||||||||||||||||
11:20
AlexDaniel left
|
|||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: maybe I have a too old version | 11:20 | |||||||||||||||||||||||||||||||||||||
11:20
AlexDaniel joined,
AlexDaniel left,
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: the libs in 3rdparty/truffle need to be updated | 11:22 | |||||||||||||||||||||||||||||||||||||
I get them from mvnrepository.com/search?q=truffle-api | 11:23 | ||||||||||||||||||||||||||||||||||||||
11:23
vrurg left
|
|||||||||||||||||||||||||||||||||||||||
pmurias | I'll go grab some food as I'm starving and I'll update my graal sdk (and the deps too) to the latest version | 11:23 | |||||||||||||||||||||||||||||||||||||
12:07
AlexDaniel left
12:10
lucasb joined
12:51
pmurias left
12:53
pmurias joined
|
|||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: my crappy mobile internet seems to be interputting the the download of the new version of the graalvm sdk, might take a while till it gets through :( | 13:05 | |||||||||||||||||||||||||||||||||||||
13:10
AlexDaniel joined,
AlexDaniel left,
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: b8576758c9 | (Paweł Murias)++ | 5 files [truffle] Update the version of truffle jars in repo to 19.2.0.1 |
13:14 | |||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: I have updated the deps, but will only test that when the SDK downloads :( | 13:15 | |||||||||||||||||||||||||||||||||||||
13:16
AlexDaniel left
|
|||||||||||||||||||||||||||||||||||||||
Geth | roast: tbrowder++ created pull request #591: Add test for user-formatted pod leading declarator blocks |
13:19 | |||||||||||||||||||||||||||||||||||||
13:22
vrurg joined
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | pmurias: i did a make clean and then reconfigured and rebuilt. now `./nqp-j nqp-truffle.nqp -e ''` gives `java.lang.NoClassDefFoundError: com/oracle/truffle/api/frame/FrameDescriptor at org.perl6.nqp.truffle.adapters.Tru...r.java:57) at | 13:28 | |||||||||||||||||||||||||||||||||||||
org.perl6.nqp.truffle.adapters.Tru...n.java:6)` | |||||||||||||||||||||||||||||||||||||||
Geth | rakudo: tbrowder++ created pull request #3260: Allow user to retain formatting of pod leading declarator blocks |
13:29 | |||||||||||||||||||||||||||||||||||||
15:10
pmurias left
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 8a9e57c00a | (Daniel Green)++ | 2 files [truffle] Update truffle jars in the runners |
15:21 | |||||||||||||||||||||||||||||||||||||
MasterDuke | pmurias: got it working with github.com/perl6/nqp/commit/8a9e57c00a | 15:22 | |||||||||||||||||||||||||||||||||||||
tellable6 | MasterDuke, I'll pass your message to pmurias | ||||||||||||||||||||||||||||||||||||||
MasterDuke | pmurias: btw, why does it say `runtime NYI: unimplemented QAST::Op for` when for does work? | 15:31 | |||||||||||||||||||||||||||||||||||||
tellable6 | MasterDuke, I'll pass your message to pmurias | ||||||||||||||||||||||||||||||||||||||
15:44
Guest13443 left
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: a4c8f68cd6 | (Daniel Green)++ | 5 files [truffle] Implement nqp::getstdin |
16:02 | |||||||||||||||||||||||||||||||||||||
16:16
Altai-man_ joined
16:17
Altai-man_ left
16:18
Kaiepi left
16:19
sena_kun left
16:33
AlexDaniel joined,
AlexDaniel left,
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: looks like that fixed it, yeah! Thanks! | 16:34 | |||||||||||||||||||||||||||||||||||||
nine | So, all green on the release front? | 16:39 | |||||||||||||||||||||||||||||||||||||
lizmat | Whee! | ||||||||||||||||||||||||||||||||||||||
17:13
cognominal left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | AlexDaniel: should I refrain from pushing atm, or is there a release branch? | 17:14 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | I just came back home today, I don't know if it's all good | 17:17 | |||||||||||||||||||||||||||||||||||||
it should be | |||||||||||||||||||||||||||||||||||||||
kawaii: can you run blin again? | 17:18 | ||||||||||||||||||||||||||||||||||||||
hopefully last time this release | |||||||||||||||||||||||||||||||||||||||
but yeah, I don't know of any issue that could possibly block the release | 17:39 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo/die-early-on-duplicate-role: acd3bc6235 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/RoleToClassApplier.nqp Die early on a duplicate role When you apply the same role to a class more than once, you wind up with very confusing error about needing to resolve your methods because they are being provided by more than one role. This patch adds a check (by name) to see whether the same role has been specified more than once. ... (16 more lines) |
17:50 | |||||||||||||||||||||||||||||||||||||
rakudo: lizmat++ created pull request #3261: Die early on a duplicate role |
17:51 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | sooo | 18:09 | |||||||||||||||||||||||||||||||||||||
6.d-errata tests are not passing, I think this needs to be cherry-picked github.com/perl6/roast/commit/9513...59c6e2a5d5 | |||||||||||||||||||||||||||||||||||||||
but I'm a bit surprised | 18:10 | ||||||||||||||||||||||||||||||||||||||
I can totally see how people would use ‘localhost’,there's nothing obviously wrong with it | 18:12 | ||||||||||||||||||||||||||||||||||||||
so it being a test in 6.d (6.c-errata seems to be OK wrt this change), should we add some backcompat? | 18:13 | ||||||||||||||||||||||||||||||||||||||
nine | AlexDaniel: yeah, makes me nervous as well | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo/die-early-on-duplicate-role: ad96692087 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/RoleToClassApplier.nqp Fix situation with same role but different parameterization Only use the "same role" logic *if* we have found an issue in role composition. |
18:18 | |||||||||||||||||||||||||||||||||||||
nine | This works just fine in Perl 5 with multiple addresses for localhost: perl -e 'use IO::Socket::INET; my $sock = IO::Socket::INET->new(Listen => 1, LocalAddr => 'localhost', LocalPort => 9000, Proto => 'tcp'); $sock->accept;' | ||||||||||||||||||||||||||||||||||||||
18:25
Kaiepi joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | Kaiepi: ↑ :) | 18:26 | |||||||||||||||||||||||||||||||||||||
vrurg | If memory serves me right, the problem was about localhost resolving to IPv6 with IPv6 turned off on a system. | ||||||||||||||||||||||||||||||||||||||
nine | But that's just a misconfigured system | 18:27 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | but it used to work? | ||||||||||||||||||||||||||||||||||||||
Kaiepi | what's the problem? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Kaiepi: github.com/rakudo/rakudo/issues/3262 | 18:28 | |||||||||||||||||||||||||||||||||||||
vrurg: hey, maybe you can help too. What's up with this? | 18:33 | ||||||||||||||||||||||||||||||||||||||
c: 2019.07,HEAD use Test; throws-like 'use v6.c; constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/bb91110b5b82468982...fddeb087ed | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Bisected: (2019-07-11) github.com/rakudo/rakudo/commit/07...f610ca7dee | ||||||||||||||||||||||||||||||||||||||
this is the 6.c-errata test that's failing: github.com/perl6/roast/blob/de5f71...tant.t#L39 | |||||||||||||||||||||||||||||||||||||||
Kaiepi | AlexDaniel, those pass on my machine. what kind of error are you getting? | 18:34 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | Kaiepi: not ok 23 - Address already in use results in a quit | 18:35 | |||||||||||||||||||||||||||||||||||||
Kaiepi: and: not ok 1 - Error on trying to re-use port with UDP bind | 18:36 | ||||||||||||||||||||||||||||||||||||||
Kaiepi: so in case of IO-Socket-Async-UDP.t there's no error where it expects one | 18:37 | ||||||||||||||||||||||||||||||||||||||
let's see | 18:38 | ||||||||||||||||||||||||||||||||||||||
e: my $hostname = ‘localhost’; my $port = 5001; my $sock = IO::Socket::Async.bind-udp($hostname, $port); IO::Socket::Async.bind-udp($hostname, $port); $sock.close() | |||||||||||||||||||||||||||||||||||||||
evalable6 | (exit code 1) An operation first awaited: in block <unit> at /tmp/nz6b9XiIhr line 1 Died with the exception: address already in use in block <unit> at /tmp/nz6b9XiIhr line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | ok, on my system there's no error :) | ||||||||||||||||||||||||||||||||||||||
m: my $hostname = ‘localhost’; my $port = 5001; my $sock = IO::Socket::Async.bind-udp($hostname, $port); IO::Socket::Async.bind-udp($hostname, $port); $sock.close() | 18:39 | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | and camelia agrees! | ||||||||||||||||||||||||||||||||||||||
Kaiepi | hm | 18:40 | |||||||||||||||||||||||||||||||||||||
m: slurp '/etc/hosts' | |||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp '/etc/hosts' | ||||||||||||||||||||||||||||||||||||||
camelia | # # hosts This file describes a number of hostname-to-address # mappings for the TCP/IP subsystem. It is mostly # used at boot time, when no name servers are running. # On small systems, this … |
||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: that's weird bisection. But the test is wrong anyway. throws-like is using EVAL. 'use v6.c;' is not supposed to work in EVALs, we had this discussion with Jonathan once. | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp('/etc/hosts').lines.grep(* ~~ /localhost/) | 18:41 | |||||||||||||||||||||||||||||||||||||
camelia | (127.0.0.1 localhost ::1 localhost ipv6-localhost ipv6-loopback) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 075e60a56^,075e60a56 use Test; throws-like 'use v6.c; constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | ||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: but because it's same language version, it doesn't really matter. | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/eeb27640ba927ef82c...0f72d93da5 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | clearly bisected correctly ↑ | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp('/etc/hosts').lines.grep(* ~~ /0.0.0.0/) | ||||||||||||||||||||||||||||||||||||||
camelia | () | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp('/etc/hosts').lines.grep(* ~~ /127.0.0.1/) | ||||||||||||||||||||||||||||||||||||||
camelia | (127.0.0.1 localhost) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 075e60a56^,075e60a56 use Test; throws-like 'constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | 18:42 | |||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/79e0b5cfa743d95472...9b5d13e6f2 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 075e60a56^,075e60a56 use v6.c; use Test; throws-like 'constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | 18:43 | |||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/c138cfcab7109211f6...41fbda4224 | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp('/etc/hosts').lines.map(* ~~ /\d\d?\d?\.\d\d?\d?\.\d\d?\d?\.\d\d?\d?/) | ||||||||||||||||||||||||||||||||||||||
camelia | (Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil 「127.0.0.1」 Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: so I can remove `use v6.c` and the test will be failing anyway? :) | ||||||||||||||||||||||||||||||||||||||
c: 2019.07.1,HEAD use v6.c; use Test; throws-like 'constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | 18:44 | ||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: it should | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/9a6f447872dce7318d...478d2b5db0 | ||||||||||||||||||||||||||||||||||||||
vrurg | BTW, I would say that the new behaviour is more correct. It is consistent to my %h = "str"; | 18:45 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: I'm still a bit confused. So to fix the test we remove v6.c and change the exception to X::Hash::Store::OddNumber, right? | ||||||||||||||||||||||||||||||||||||||
`use v6.c` I mean, from the EVAL | |||||||||||||||||||||||||||||||||||||||
vrurg | We can leave 6.c. At some point I hope to implement unit semantics for EVAL, then throws-like can make use of it. But the error type – I would change it. | 18:46 | |||||||||||||||||||||||||||||||||||||
Kaiepi | AlexDaniel, what's the output of ifconfig on your machine? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Kaiepi: I don't have ifconfig | 18:47 | |||||||||||||||||||||||||||||||||||||
Kaiepi | what os? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | debian | ||||||||||||||||||||||||||||||||||||||
I can give you `ip addr show` | |||||||||||||||||||||||||||||||||||||||
Kaiepi: gist.github.com/AlexDaniel/551e3a1...09fb213da7 | 18:48 | ||||||||||||||||||||||||||||||||||||||
vrurg: soo, I don't get it | 18:49 | ||||||||||||||||||||||||||||||||||||||
vrurg: here's what I found in blame: github.com/perl6/roast/commit/ddaa...12903c93ed | 18:50 | ||||||||||||||||||||||||||||||||||||||
vrurg: the commit itself argues that it should be reverted, once we implement the stuff, which you did | |||||||||||||||||||||||||||||||||||||||
but, at the same time, it does check for `X::TypeCheck` | 18:51 | ||||||||||||||||||||||||||||||||||||||
so why are we not getting X::TypeCheck ? | |||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: then let's get it reverted. As to why the exception type changed – beats me! No idea for now. | 18:52 | |||||||||||||||||||||||||||||||||||||
Kaiepi | AlexDaniel, what happens when you change 0.0.0.0 to 127.0.0.1 in S32-io/IO-Socket-Async.t and rerun the tests? | 18:53 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 46ef0ea08c^,46ef0ea08c use v6.c; use Test; throws-like 'constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | 18:55 | |||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/f87fc2671f545d9c85...f389941475 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 46ef0ea08c^,46ef0ea08c use v6.d.PREVIEW; use Test; throws-like 'constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/0bde9fb7c9ca6f43dc...b69774a712 | ||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: checked back to 2018.12, the construct always throws 'odd number of elements'. Why was it different under the old EVAL semantics – no idea and see no sense in finding this out. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 46ef0ea08c^,46ef0ea08c use Test; throws-like 'use v6.c; constant %hash = "nothash"', X::TypeCheck, 'constant hash requires Associative'; | 18:56 | |||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦46ef0ea08c^,46ef0ea: « 1..2 ok 1 - 'use v6.c; constant %hash = "nothash"' died ok 2 - right exception type (X::TypeCheck)ok 1 - constant hash requires Associative» | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: have to go earlier, it changed in github.com/rakudo/rakudo/commit/46...96034408c8 | ||||||||||||||||||||||||||||||||||||||
I'm still confused about the whole thing | |||||||||||||||||||||||||||||||||||||||
vrurg | I see. One sec... | 18:57 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | Kaiepi: what do you mean? Change 0.0.0.0 where? It's using ‘localhost’ | ||||||||||||||||||||||||||||||||||||||
Kaiepi: remember, we're talking about the version in 6.c-errata | |||||||||||||||||||||||||||||||||||||||
Kaiepi | ohh | ||||||||||||||||||||||||||||||||||||||
vrurg | Spec changes. 6.c was reporting X::TypeCheck, 6.d turned it into correct exception type. Ok, that's the starting point. | 18:58 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | right, and we're supposed to have backcompat for 6.c for that change | ||||||||||||||||||||||||||||||||||||||
that makes it clearer to me, at least | |||||||||||||||||||||||||||||||||||||||
Kaiepi | ohh, ok | 18:59 | |||||||||||||||||||||||||||||||||||||
those tests were changed because localhost can resolve to both 127.0.0.1 and ::1 now, but errors don't get thrown unless the last address fails to get used | |||||||||||||||||||||||||||||||||||||||
which breaks the tests that depend on only the first address in localhost ever being used | 19:00 | ||||||||||||||||||||||||||||||||||||||
vrurg | And here we go. That's simple. constant.t doesn't specify the exact language version but uses just 'use v6' and defaults to d. Because EVAL doesn't support version change for now – we get 6.d semantics despite of 'use v6.c' in it. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: what do you mean?? | 19:03 | |||||||||||||||||||||||||||||||||||||
use v6.c; | |||||||||||||||||||||||||||||||||||||||
github.com/perl6/roast/blob/de5f71...stant.t#L1 | |||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: so, the fix is to switch to implicit 'use v6.c'. Or use is-run | ||||||||||||||||||||||||||||||||||||||
AlexDaniel: is it in -errata? Because master has v6 | 19:04 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: 6.c-errata, and it's failing on 6.c-errata | ||||||||||||||||||||||||||||||||||||||
so use v6.c doesn't help | |||||||||||||||||||||||||||||||||||||||
vrurg: here's a ticket for you too :) github.com/rakudo/rakudo/issues/3263 | |||||||||||||||||||||||||||||||||||||||
Kaiepi: right, so it used to resolve to 127.0.0.1 only, correct? | 19:05 | ||||||||||||||||||||||||||||||||||||||
Kaiepi | whatever was defined first for localhost in /etc/hosts, likely | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | m: say slurp ‘/etc/hosts’ | 19:07 | |||||||||||||||||||||||||||||||||||||
camelia | # # hosts This file describes a number of hostname-to-address # mappings for the TCP/IP subsystem. It is mostly # used at boot time, when no name servers are running. # On small systems, this … |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | m: say slurp(‘/etc/hosts’).lines.map(*.words[0]) | 19:08 | |||||||||||||||||||||||||||||||||||||
camelia | (# # # # # # # # # # Nil 127.0.0.1 Nil # ::1 Nil fe00::0 Nil ff00::0 ff02::1 ff02::2 ff02::3 Nil) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | e: say slurp(‘/etc/hosts’).lines.map(*.words[0]) | ||||||||||||||||||||||||||||||||||||||
evalable6 | (# # 127.0.0.1 94.23.219.181 2001:41D0:2:5Eb5:: Nil # #(added Nil ::1 fe00::0 ff00::0 ff02::1 ff02::2 ff02::3) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | ok that didn't help at all | 19:09 | |||||||||||||||||||||||||||||||||||||
Kaiepi | actually that does help, i just screwed up the regex i was trying to do that with earlier | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | but they seem to be mostly identical | 19:11 | |||||||||||||||||||||||||||||||||||||
yet it works on one system and not the other | |||||||||||||||||||||||||||||||||||||||
Kaiepi | m: my IO::Socket::Async $ .= udp: '0.0.0.0', 8000; my IO::Socket::Async $ .= udp: '0.0.0.0', 8000 | ||||||||||||||||||||||||||||||||||||||
camelia | Too many positionals passed; expected 1 argument but got 3 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
Kaiepi | m: my IO::Socket::Async $ .= bind-udp: '0.0.0.0', 8000; my IO::Socket::Async $ .= bind-udp: '0.0.0.0', 8000 | ||||||||||||||||||||||||||||||||||||||
camelia | An operation first awaited: in block <unit> at <tmp> line 1 Died with the exception: address already in use in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
Kaiepi | e: my IO::Socket::Async $ .= bind-udp: '0.0.0.0', 8000; my IO::Socket::Async $ .= bind-udp: '0.0.0.0', 8000 | ||||||||||||||||||||||||||||||||||||||
evalable6 | (exit code 1) An operation first awaited: in block <unit> at /tmp/k3b4HTHySb line 1 Died with the exception: address already in use in block <unit> at /tmp/k3b4HTHySb line 1 |
||||||||||||||||||||||||||||||||||||||
Kaiepi | e: my IO::Socket::Async $ .= bind-udp: '0.0.0.0', 8000 | ||||||||||||||||||||||||||||||||||||||
evalable6 | |||||||||||||||||||||||||||||||||||||||
Kaiepi | ok, never mind then | 19:12 | |||||||||||||||||||||||||||||||||||||
e: slurp('/etc/hosts').lines.grep(* ~~ /localhost/) | 19:14 | ||||||||||||||||||||||||||||||||||||||
evalable6 | |||||||||||||||||||||||||||||||||||||||
Kaiepi | e: say slurp('/etc/hosts').lines.grep(* ~~ /localhost/) | ||||||||||||||||||||||||||||||||||||||
evalable6 | (127.0.0.1 localhost.localdomain localhost ::1 ip6-localhost ip6-loopback) | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp('/etc/hosts').lines.grep(* ~~ /localhost/) | ||||||||||||||||||||||||||||||||||||||
camelia | (127.0.0.1 localhost ::1 localhost ipv6-localhost ipv6-loopback) | ||||||||||||||||||||||||||||||||||||||
Kaiepi | m: say slurp('/etc/hosts').lines.grep(* ~~ /94.23.219.181/) | 19:15 | |||||||||||||||||||||||||||||||||||||
camelia | () | ||||||||||||||||||||||||||||||||||||||
Kaiepi | e: say slurp('/etc/hosts').lines.grep(* ~~ /94.23.219.181/) | ||||||||||||||||||||||||||||||||||||||
evalable6 | (94.23.219.181 ␉superserver␉superserver) | ||||||||||||||||||||||||||||||||||||||
nine | Kaiepi: I can understand trying all resolved addresses when connecting. Or trying them when getting a bind error because the resolved address is not available on any interface. But not when we get a bind error because the address is already in use | 19:18 | |||||||||||||||||||||||||||||||||||||
AlexDaniel nap & | 19:36 | ||||||||||||||||||||||||||||||||||||||
Kaiepi | nine, IO::Socket::INET needs to permit reusing addresses in order to maintain compatibility, according to a comment in src/io/syncsocket.c | ||||||||||||||||||||||||||||||||||||||
it'd be weird to have IO::Socket::INET and IO::Socket::Async have the complete opposite behaviour for the same type of error | 19:37 | ||||||||||||||||||||||||||||||||||||||
besides, the list of addresses returned aren't necessarily the same address, so that would prevent being able to do stuff like binding sockets for every address a host resolves to | 19:39 | ||||||||||||||||||||||||||||||||||||||
19:43
ufobat_ joined
|
|||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: it was simple to find the cause. Not sure if the fix would be simple too. Basically, Grammar resets compiler language version for any unit – thus, we can have .c or .e core setting with .d compiler inside EVALs. ;) | 19:44 | |||||||||||||||||||||||||||||||||||||
19:46
ufobat left
19:47
pmurias joined
20:21
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
nine | Kaiepi: I wonder. Why did we invent our own solution to the dual-stack problem instead of implementing Happy Eyeballs standard? | 20:31 | |||||||||||||||||||||||||||||||||||||
pmurias | .tell MasterDuke nqp::for is not yet implemented, but the optimizer sometimes turns it into things that are | 21:16 | |||||||||||||||||||||||||||||||||||||
tellable6 | pmurias, I'll pass your message to MasterDuke | ||||||||||||||||||||||||||||||||||||||
Kaiepi | i have zero excuse for this nine, i wasn't aware of it at the time of writing these changes. these changes were not something i took as seriously as those that were originally part of the grant because i heavily underestimated the scope of the problem | 21:17 | |||||||||||||||||||||||||||||||||||||
i still think the first couple changes included with them are reasonable, but handling when ipv6 hosts aren't reachable is not something i think we should be doing at all if we're not compliant with existing standards for it | 21:21 | ||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 7ba53f2dbf | (Paweł Murias)++ | 2 files [truffle] Remove dead code needed for a long removed op |
21:56 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: f8da3a1dd5 | (Paweł Murias)++ | src/vm/jvm/runtime/org/perl6/nqp/truffle/io/IIOSyncReadable.java [truffle] Removed unneeded import |
|||||||||||||||||||||||||||||||||||||||
22:12
ggoebel left
22:17
Xliff joined
|
|||||||||||||||||||||||||||||||||||||||
Xliff | m: use NativeCall; class A is repr<CStruct> { has uint32 $.a; has CArray[Pointer[A] $.aa; }; | 22:17 | |||||||||||||||||||||||||||||||||||||
camelia | ===SORRY!=== Cannot resolve caller ACCEPTS(Bool:U: A); none of these signatures match: (Bool:D: Mu \topic, *%_) (Bool:U: \topic, *%_) |
||||||||||||||||||||||||||||||||||||||
Xliff | m: use NativeCall; class A is repr<CStruct> { has uint32 $.a; has A $.aa; }; | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
Xliff | m: use NativeCall; class A is repr<CStruct> { has uint32 $.a; has CArray[Pointer[A] $.aa; }; | ||||||||||||||||||||||||||||||||||||||
camelia | ===SORRY!=== Cannot resolve caller ACCEPTS(Bool:U: A); none of these signatures match: (Bool:D: Mu \topic, *%_) (Bool:U: \topic, *%_) |
||||||||||||||||||||||||||||||||||||||
Xliff | ^^ This is a bug. | 22:18 | |||||||||||||||||||||||||||||||||||||
m: use NativeCall; class A is repr<CStruct> { has uint32 $.a; has CArray[Pointer[A]] $.aa; }; | 22:20 | ||||||||||||||||||||||||||||||||||||||
camelia | ===SORRY!=== Cannot resolve caller ACCEPTS(Bool:U: A); none of these signatures match: (Bool:D: Mu \topic, *%_) (Bool:U: \topic, *%_) |
||||||||||||||||||||||||||||||||||||||
Xliff | m: use NativeCall; class A is repr<CStruct> { has uint32 $.a; has CArray[A] $.aa; }; | ||||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> An exception occurred while parameterizing CArray at <tmp>:1 Exception details: Type check failed in binding to parameter '<anon>'; expected Any but got A (?) in method parameterize at /ho… |
||||||||||||||||||||||||||||||||||||||
Xliff | Bugged as #3264 | 22:25 | |||||||||||||||||||||||||||||||||||||
22:27
Xliff left
22:48
pmurias left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: vrurg++ created pull request #3265: Preserve compiler version in EVALs |
23:24 | |||||||||||||||||||||||||||||||||||||
23:29
ufobat_ left
23:39
ufobat joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | roast/rakudo_3263: f9aca25958 | (Vadim Belman)++ | S29-context/eval.t Add test for EVAL preserving caller's compiler version Support for rakudo/rakudo#3265, Related to rakudo/rakudo#3263 |
23:39 | |||||||||||||||||||||||||||||||||||||
roast: vrurg++ created pull request #592: Add test for EVAL preserving caller's compiler version |
23:40 | ||||||||||||||||||||||||||||||||||||||
rakudo: 0eea939fdc | (Vadim Belman)++ | 2 files Preserve compiler version in EVALs Previously it was always reset to the default one. Fixes #3263 |
|||||||||||||||||||||||||||||||||||||||
rakudo: b45d99d45e | (Vadim Belman)++ (committed using GitHub Web editor) | 2 files Merge pull request #3265 from vrurg/rakudo_3263 Preserve compiler version in EVALs |
|||||||||||||||||||||||||||||||||||||||
roast: f9aca25958 | (Vadim Belman)++ | S29-context/eval.t Add test for EVAL preserving caller's compiler version Support for rakudo/rakudo#3265, Related to rakudo/rakudo#3263 |
|||||||||||||||||||||||||||||||||||||||
roast: b4c7260717 | (Vadim Belman)++ (committed using GitHub Web editor) | S29-context/eval.t Merge pull request #592 from perl6/rakudo_3263 Add test for EVAL preserving caller's compiler version |