Perl 6 - the future is here, just unevenly distributed

IRC log for #perl11, 2015-12-07

| Channels | #perl11 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
03:42 travis-ci RPerl build errored. Will Braswell says 'GMP Multiple Precision, Add Support, Part 11'
03:42 travis-ci https://travis-ci.org/wbraswell/rperl/builds/95277105 https://github.com/wbraswell/rperl/compare/994e14d298a5...e29a036176c4
07:40 basiliscos joined #perl11
08:39 rurban joined #perl11
09:14 rurban thanks to bulk88 and nwellnhof. windows smokes now on 64bit. https://ci.appveyor.com/project/rurban/cperl/build/job/0yfvf5sqe7sisxrs
09:15 willthechill how can we make it work on rperl???
09:15 willthechill every time I push to github I get an e-mail failure from appveyor
09:36 rurban look at my 2 new files. appveyor.yml and t/appyeyor-smoke.bat
09:36 rurban it will not work for you, as msvc has no C++11 support
09:37 rurban you need to turn off the appveyor hook until you got mingw working there
09:38 willthechill aww dang okay
09:38 willthechill :/
09:57 travis-ci perl11/cperl#385 (bugfix/config-win-gh78 - ac0009e : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95309625
09:58 travis-ci perl11/cperl#385 (bugfix/config-win-gh78 - ac0009e : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95309625
10:01 travis-ci perl11/cperl#385 (bugfix/config-win-gh78 - ac0009e : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95309625
10:23 rurban the smoke is there: https://ci.appveyor.com/project/rurban/cperl/history
10:24 rurban I'll probably turn off windows smokes for feature/ branches, only /smoke/ or /windows/ branches and PR's.
10:27 bulk88 rurban, if I push improvements to perl11/cperl repo instead of bugfixes, do I prefix the branch with "feature/" or "bugfix"
10:28 bulk88 *"bugfix/
10:28 bulk88 "
10:28 rurban ok, the smoke passed beyond Config now, good
10:28 rurban https://ci.appveyor.com/project/rurban/cperl/build/5.22.2.604/job/4teo8fvbigwidqlu
10:29 rurban what are those ext/Config/Config_xs.in(1157) : warning C4129: 'p' : unrecognized character escape sequence warnings?
10:29 rurban still a wrong escape rule somewhere?
10:29 travis-ci perl11/cperl#386 (master - c5d7d4f : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/95310692
10:29 bulk88 I'll show you that line in a coupel secs
10:29 bulk88 from the .c file
10:30 rurban porting/manifest.t broke. no prob
10:30 rurban yes, please
10:30 travis-ci perl11/cperl#386 (master - c5d7d4f : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/95310692
10:31 bulk88 I really dont want to try to fix a "parsing C double quote strings" bug, I am dont write compilers for a day job, most of the people in this room OTHER THAN me do that ;)
10:32 travis-ci perl11/cperl#386 (master - c5d7d4f : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/95310692
10:33 rurban I guess it's some windows path names, we have to escape
10:35 bulk88 http://paste.scsys.co.uk/502508
10:35 rurban yes, of course.
10:38 bulk88 https://metacpan.org/source/EVO/String-Escape-2010.002/Escape.pm#L198 I've used this module before for turning perl random strings into eval-safe strings
10:39 bulk88 p5p config.pm isn't crazy enough to put newlines and unprintables in config_heavy tho
10:39 bulk88 \'es yes tho
10:40 bulk88 assume someone could need a string that is "foo\\\\\\\\\\" or something
10:42 bulk88 how to escape thhose, add 1 more at the start of every \ sequence, or double it up with s|\\|\\\\/;
10:42 bulk88 *IDK how to escape those
10:44 rurban I have the fix for the \ escapes
10:44 bulk88 perl "s escape rules are different from C, $ has no meaning in C in a string litteral but major meaning in a pelr litteral string
10:45 bulk88 so IDK if a perl string escape is 100% accurate as a binary to c string escaper/converter
10:47 bulk88 https://ci.appveyor.com/project/rurban/cperl/build/5.22.2.604/job/4teo8fvbigwidqlu nmake needs the CCTYPE macro to be set on cmd line appropriately
10:47 bulk88 like it says in the 1st couple  pagesfuls of the nmake makefile
10:48 bulk88 bufferoverflowU.lib was shipped for just 1 VC release ever then disappeared/not needed anymore
10:48 bulk88 so it is a CCTYPE problem in that appveyor log
10:49 bulk88 it is very late for me to be up so Im not making much sense at this time typing
10:49 rurban no prob. I postponed my planned cperl release, in 2 weeks.
10:49 rurban spent too much time with the compiler
10:51 rurban set the CCTYPE for the test. && sounds also wrong. I guess it needs only one:
10:51 rurban nmake CCTYPE=MSVC100 & nmake test CCTYPE=MSVC100 TEST_JOBS=4 || exit /b
10:53 sten joined #perl11
10:53 bulk88 "nmake CCTYPE=MSVC100 & nmake test CCTYPE=MSVC100 " that looks redundant
10:53 bulk88 "nmake test CCTYPE=MSVC100" is all you need
10:54 bulk88 I am slightly afraid of that also hiding "1st make all fails, 2nd suceeds, due to unlisted deps"
11:06 basiliscos joined #perl11
11:06 willthechill bulk88: so is the outcome still the same, I can't use Appveyor yet because it doesn't support Strawberry?
11:08 bulk88 it has strawberry perl inside it AFAIK http://www.appveyor.com/docs/installed-software#perl but writing the yaml config file for it is the biggest challange
11:10 rurban you need to do trial-and-error in a mingw branch. I tried some stuff in my appyeyor.yml but failed. google for some appyeyor.yml mingw
11:10 willthechill oh dang
11:11 willthechill okay
11:11 rurban I will take yours if you succeed :)
11:11 willthechill thanks alot  :P
11:11 rurban I'd also like to have mingw/gcc smokes on windows
11:11 rurban but there should be some examples out on the net
11:11 willthechill well I don't know anything about Windows or mingw
11:12 willthechill all I know is bulk88 says RPerl work(s|ed) in Strawberry
11:19 travis-ci perl11/cperl#396 (bugfix/b-consts-gh80 - 628cf4a : Reini Urban): The build was canceled. https://travis-ci.org/perl11/cperl/builds/95317817
11:19 travis-ci perl11/cperl#396 (bugfix/b-consts-gh80 - 628cf4a : Reini Urban): The build was canceled. https://travis-ci.org/perl11/cperl/builds/95317817
11:20 travis-ci perl11/cperl#396 (bugfix/b-consts-gh80 - 628cf4a : Reini Urban): The build was canceled. https://travis-ci.org/perl11/cperl/builds/95317817
11:21 travis-ci perl11/cperl#396 (bugfix/b-consts-gh80 - 628cf4a : Reini Urban): The build was canceled. https://travis-ci.org/perl11/cperl/builds/95317817
11:21 rurban This is now a combi build: https://ci.appveyor.com/project/rurban/cperl/build/5.22.2.607
11:23 rurban msvc uses /debug, perl uses -DNDEBUG. why not
11:25 bulk88 msvc /debug is a linker flag, nothing to do with C code or what is in the .obj file
11:26 bulk88 .... /debug means I want symbols, incremental linking, and DO NOT discard unused/unreferenced symbols (IE, I want to run them manually in the C debugger from amn expressions box)
11:27 bulk88 dont play with the win32 makefiles  regarding symbol generation and debugging info, it is set up pas perfect as it is ever going to get
11:27 bulk88 *I wamt symbol files for C debugging
11:28 rurban I'll just have to set the /Release flag for SetEnv.cmd. But maybe I'll add Debug builds also to the matrix
11:29 bulk88 rurban do not run nmake a 2nd time, you are rebuilding all the XS modules again https://ci.appveyor.com/project/rurban/cperl/build/5.22.2.607/job/4u6avr98aeu6nei6#L3966
11:29 rurban Symbols on the smoker machine is rather pointless, unless we get proper stacktraces in some failing tests
11:29 rurban Yes, I saw. I'll just let this one finish first
11:29 bulk88 MSBuild/VS IDE "Debug" vs "Release" make no difference for Win32 Perl, which is makefile based
11:30 rurban Ok, thanks
11:30 rurban is TEST_JOBS=4 observed?
11:30 rurban or do we need a special nmake flag, like -j4?
11:32 bulk88 parallel testing on Win32 is unimplemented in TAP::Harness, so TEST_JOBS is ignored, maybe during/shortly after QAH 2016 I get parallel testing working on Win32, my 1st attempt in march 2015 made random 4 KB chunks of TAP disappear from the STDOUT stream of the child procs to the TAP::Harness process
11:32 bulk88 I'd leave TEST_JOBS in, just in case it is ever implemented
11:34 bulk88 nmake is NOT capable of parallel building, MS never implemented it, this clone of nmake https://wiki.qt.io/Jom doesn't allow ".." in a target name due a bug, so parallel building  on Win32 perl is only possible with dmake or gmake
11:34 bulk88 Win32 perl core building in prarllel with gmake is currently stuck in P5P RT waiting review
11:35 bulk88 "dmake -P2 test CCTYPE=MSVC70" works though
11:35 bulk88 IDK if there is a dmake.exe somewhere in the appveyor image or not
11:35 bulk88 and if %PATH messaing around is needed to find it
11:36 rurban in the mingw image it should be
11:36 rurban os: MinGW
11:36 rurban cinst make
11:36 rurban would install gmake I hope
11:37 rurban no, it installs mingw32-make
11:39 rurban aarg. %PATH% fiddling needed. # Failed to start watchdog
11:39 rurban # Insecure $ENV{PATH} while running with -T switch at ./test.pl line 1607.
11:39 rurban so no timeouts
11:39 bulk88 supposedly appveyor has "A Perl 5.20" IDK if its strawberry or self compiled GCC Win32 Perl,  if its a GCC Win32 Perl, there HAS to be a gmake or dmake in PATH
11:39 bulk88 "# Insecure $ENV{PATH} while running with -T switch at ./test.pl line 1607." been that way forever
11:40 rurban ok, good. thanks
11:40 rurban I thought I have to find the offending path entry
11:40 rurban Has Steve Hay fixed this on his smoker?
11:40 bulk88 some parts of Perl core do local%ENV and wipe the whole ENV, now things like kernel32.dll can't be found :/
11:41 willthechill the other reason why I can't just try to do it myself is because RPerl is probably NOT passing on Windows currently
11:41 willthechill so I'd be trying to win a failing battle
11:41 rurban Some feature branches still need to timeout I guess.
11:42 rurban I think I the local %ENV problems for cygwin, same problem there
11:42 rurban I fixed
11:42 rurban I put my fixed coretests to perl11/p5-coretests. cperl compat not yet
11:43 bulk88 if your appveyor account is the free one, you have exactly 1 core, paralle ANYTHING wastes cpu time
11:43 bulk88 http://www.appveyor.com/docs/build-configuration
11:47 rurban It's probably more IO than CPU bound
11:47 rurban Oh, core doesn't ship libwin32? what a shame
11:48 rurban I'll add that also
11:48 bulk88 libwin32 is for activestate or strawberry to ship, it is bloat in core
11:48 bulk88 who is going ot be using Win32::OLE or OBDC out of the box?
11:49 rurban bloat? it's pretty mandatory. And you cannot expect windows people to compile that by themselves.
11:49 rurban I always shipped libwin32 and Win32::GUI in the core cygwin package and nobody complained
11:50 bulk88 if you are shipping a binary cperl in a msi installer file, yeah, you should add TK and libwin32, C based XML parsers, etc
11:50 rurban dist/Storable/t/compat01.t failed: https://ci.appveyor.com/project/rurban/cperl/build/5.22.2.607/job/4u6avr98aeu6nei6
11:50 rurban tk probably not.
11:51 bulk88 cperl is distributed as source code, not as a installed/msi file, I'd rather not see it be filled with CPAN modules, slower smoke time, slower git blame/log/status/etc time, takes longer to extract the tarball
11:51 rurban but a XML parser also. that;'s what I shipped: http://search.cpan.org/~rurban/Bundle-CygwinVendor-0.02/CygwinVendor.pm
11:52 travis-ci perl11/cperl#398 (master - 0887db9 : Reini Urban): The build was fixed. https://travis-ci.org/perl11/cperl/builds/95321493
11:52 travis-ci perl11/cperl#398 (master - 0887db9 : Reini Urban): The build was fixed. https://travis-ci.org/perl11/cperl/builds/95321493
11:53 rurban for cperl probably only https://github.com/perl11/cperl/issues/74
11:54 bulk88 module::build would be another strawberry/active standard ship, module, again as I repeat, p5p perl and therefore cperl code bases have to be fast to work with, the fastest possible CI testing is needed
11:55 rurban MB? I'm sceptical
11:55 rurban fast test means less modules in core, right?
11:55 bulk88 correct
11:55 travis-ci perl11/cperl#398 (master - 0887db9 : Reini Urban): The build was fixed. https://travis-ci.org/perl11/cperl/builds/95321493
11:55 rurban B::C blows up testing time a lot, but I will strip the tests there to max 1min
11:56 bulk88 also git status/branch changing/etc requires the tarball have less files
11:57 bulk88 I've have a WIP p5p patch that deletes 20 .t files from p5p perl because they are perma-skipped when $ENV{PERL_CORE} but shipped by p5p because the .t files are partt  of a upstream cpan module, *rolles eyes*
11:57 bulk88 the infrastructure exists in maintainers.pl to exclude any file you want from cpan from winding up in the p5p repo
11:59 bulk88 I'd say integrating B::* family of modfules in cperl is very acceptable, since they are permanently linked to libperl core (even tho p5p refuses to maintain them)
11:59 bulk88 everytihng but B::CC/C/byteloader, doesnt belong in p5p perl or cperl
11:59 bulk88 -permanently linked +permanently married
12:01 bulk88 since miniperl can't load XS, bundling cpanel::json::XS is pointless I think, I always intalled C::J:XS after building and installing my own VC perl
12:03 rurban that should be fixed in the maintainers file, exclude =>
12:04 rurban miniperl is soon gone, and C::J:XS needs to be in core
12:05 rurban I also think of Internals::DumpArenas as only test for dump.c functionality. found some sv_dump() bugs
12:06 rurban ExtUtils::Constant is also broken regarding the compiler
12:06 rurban and can be optimized
12:07 rurban some macro/keyword package also, because this is needed for the mop/dispatch stuff
12:07 rurban but there's no proper Keyword package out there yet. Only bad hacks
12:07 bulk88 miniperl can never go away on Win32, no .o files are shared between win32 miniperl and win32 full perl
12:08 rurban really? oh my
12:08 rurban but dynaloader and xsloader is now builtin
12:08 rurban and the File::Glob hack needs to go away also
12:09 bulk88 This is Win32 Perl's "Configure" script, a pile of version specific logic and probes http://perl5.git.perl.org/perl.git/blob/HEAD:/win32/config_sh.PL
12:09 bulk88 notice it is written in Perl
12:10 rurban Oh, I see. So we need a bootstrapping perl there.
12:11 rurban This can be downloaded from somewhere. Or really build a miniperl on win32, as with a cross build.
12:12 rurban config and appveyor looks good, I'll merge it soon. Have to go for lunch now
12:12 bulk88 win32 miniperl contains optimizations and features removed to make it faster than win32 full perl
12:12 rurban wait, we have 2 config tests: ext/Config/Config.t and ext/Config/t/Config.t
12:12 bulk88 win32 miniperl is unthreaded, has no sockets, and doesn't look for .pmc files
12:13 rurban Is this significant?
12:13 rurban I don't read p5p daily anymore
12:13 bulk88 process start up time is very certicial for building perl
12:14 rurban I believe getting rid of miniperl will make the build step 2x faster
12:14 bulk88 loading winsock is 5-10 ms
12:14 bulk88 a pmc file is 6 ms on a mech HD
12:14 rurban the biggest problems is all the makefile forking in the subdirs
12:15 bulk88 forking in subdirs? please explain
12:15 rurban make_ext.pl is CPAN compatible. but should really produce just .inc files
12:15 rurban only one make process. subdirs rules should be included, not forked out
12:15 rurban other projects got 10x speedups
12:16 bulk88 I have a patch for p5p perl to do that sorta
12:16 bulk88 saves 7 wall clock seconds for me
12:16 rurban the problem are only special Makefile.PL rules in some CPAN distros
12:16 bulk88 TLDR : https://rt.perl.org/Ticket/Display.html?id=126687
12:17 bulk88 insteam of system($^X just call do()
12:17 bulk88 is my concept
12:17 bulk88 EUMM is a dozen .pm file sor more
12:18 rurban does only helps creating the subdir Makefile's. the real problem is the time spent in make and checking all the deps, which are external
12:18 bulk88 makefile.PL takes slightly longer than make all for me
12:18 rurban look for 'recursive make considered harmful'
12:19 bulk88 EUMM does a deep clone of %Config everything it starts up
12:19 bulk88 there goes 300 ms
12:19 rurban we got rid of recursive make in parrot as very first step
12:20 bulk88 all the win32 modules are built mostly serially, unlike the unix makefile
12:20 bulk88 1 make_ext.pl process builds a couiple dozen modules before it exists
12:21 bulk88 *exits
12:21 bulk88 on the unix makfile, 1 make_ext.pl process builds 1 module then exits
12:21 rurban this is all fine, but it should build make.inc files, not full Makefile
12:21 bulk88 the win32 core makefile can't be generated, there is no Configure script
12:22 bulk88 a #include will fatally erro as file not found
12:22 travis-ci perl11/cperl#401 (bugfix/config-win-gh78 - 026262d : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95329829
12:23 rurban gone now, wife waits for me
12:24 bulk88 "timeit -f t.dat dmake -P2 mp CCTYPE=MSVC120"
12:24 bulk88 Elapsed Time:     0:00:29.286
12:25 bulk88 Win32 perl's miniperl adds 29 seconds to the build process from a clean source tree, 2.3 ghz Core 2 CPU, 2 threads parallel build, it really isn't worth trying ot get rid of it
12:25 travis-ci perl11/cperl#401 (bugfix/config-win-gh78 - 026262d : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95329829
12:29 travis-ci perl11/cperl#401 (bugfix/config-win-gh78 - 026262d : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95329829
12:29 bulk88 afk
12:32 bulk88 for comparison on win32, timeit -f t.dat dmake -P2 test-prep CCTYPE=MSVC120"
12:32 bulk88 is Elapsed Time:     0:05:16.351, 30 secs out of 5 mnins is litt;e
12:32 bulk88 improvement
12:33 bulk88 building XS, and EUMM, are the biggest costs of wallclock on Win32 perl
12:33 bulk88 afk
13:05 stephen joined #perl11
13:25 travis-ci RPerl build errored. Will Braswell says 'GMP Multiple Precision, Add Support, Part 12'
13:25 travis-ci https://travis-ci.org/wbraswell/rperl/builds/95342365 https://github.com/wbraswell/rperl/compare/e29a036176c4...4318cf2dbe32
13:32 rurban joined #perl11
14:08 travis-ci perl11/cperl#402 (master - dade017 : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/95347775
14:32 basiliscos joined #perl11
14:44 travis-ci perl11/cperl#404 (master - 32967a6 : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/95353651
14:45 travis-ci perl11/cperl#404 (master - 32967a6 : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/95353651
15:20 travis-ci perl11/cperl#405 (master - 90c8531 : Reini Urban): The build was fixed. https://travis-ci.org/perl11/cperl/builds/95357751
15:24 travis-ci perl11/cperl#405 (master - 90c8531 : Reini Urban): The build was fixed. https://travis-ci.org/perl11/cperl/builds/95357751
15:56 travis-ci perl11/cperl#407 (smoke/make_ext1-gh81 - 819121b : Daniel Dragan): The build passed. https://travis-ci.org/perl11/cperl/builds/95363307
16:00 travis-ci perl11/cperl#407 (smoke/make_ext1-gh81 - 819121b : Daniel Dragan): The build passed. https://travis-ci.org/perl11/cperl/builds/95363307
16:00 travis-ci perl11/cperl#407 (smoke/make_ext1-gh81 - 819121b : Daniel Dragan): The build passed. https://travis-ci.org/perl11/cperl/builds/95363307
16:52 travis-ci perl11/cperl#409 (master - e1c09dd : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95376593
16:55 travis-ci perl11/cperl#409 (master - e1c09dd : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95376593
16:59 travis-ci perl11/cperl#409 (master - e1c09dd : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95376593
17:12 travis-ci perl11/cperl#410 (bugfix/gh26-qw-as-parens - c03c5bc : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/95376640
17:19 travis-ci perl11/cperl#410 (bugfix/gh26-qw-as-parens - c03c5bc : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/95376640
17:21 travis-ci perl11/cperl#410 (bugfix/gh26-qw-as-parens - c03c5bc : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/95376640
17:57 travis-ci perl11/cperl#411 (bugfix/gh8-cowrefcnt - 8bea7d2 : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/95376724
18:10 travis-ci perl11/cperl#411 (bugfix/gh8-cowrefcnt - 8bea7d2 : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/95376724
18:11 travis-ci perl11/cperl#411 (bugfix/gh8-cowrefcnt - 8bea7d2 : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/95376724
18:38 travis-ci perl11/cperl#412 (bugfix/gh59-dump - 484ac81 : Reini Urban): The build was canceled. https://travis-ci.org/perl11/cperl/builds/95376742
18:58 rurban People are so clueless, it really hurts: https://www.reddit.com/r/perl/comments/3vg0wh/free_go_faster_stripes_for_your_perl_programs/
19:15 travis-ci perl11/cperl#416 (smoke/fastarith2-gh83 - d6c15c6 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95408007
19:20 travis-ci perl11/cperl#416 (smoke/fastarith2-gh83 - d6c15c6 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95408007
19:22 travis-ci perl11/cperl#416 (smoke/fastarith2-gh83 - d6c15c6 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95408007
21:19 rurban joined #perl11
22:39 basiliscos1 joined #perl11
23:13 travis-ci perl11/cperl#417 (master - 42724b9 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95459803
23:15 stephen rurban: I read those comments from the link you shared; I got disappointed...immensely!
23:18 travis-ci perl11/cperl#417 (master - 42724b9 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95459803
23:21 travis-ci perl11/cperl#417 (master - 42724b9 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/95459803

| Channels | #perl11 index | Today | | Search | Google Search | Plain-Text | summary