#foswiki 2014-12-20,Sat

↑back Search ←Prev date Next date→ Show only urls(Click on time to select a line by its url)

WhoWhatWhen
GithubBot[distro] gac410 pushed 1 new commit to master: http://git.io/cXFChg
distro/master cf11b88 George Clark: Item12381: Revert comments on some Spec variables....
[02:22]
***GithubBot has left [02:22]
........ (idle for 35mn)
ChanServ sets mode: +o Lynnwood [02:57]
................................................. (idle for 4h2mn)
socfocus has quit IRC (Ping timeout: 258 seconds) [06:59]
............... (idle for 1h14mn)
ChanServ sets mode: +o CDot [08:13]
.............................. (idle for 2h29mn)
verboese|sleep is now known as verboese [10:42]
............................... (idle for 2h34mn)
ChanServ sets mode: +o gac410 [13:16]
................. (idle for 1h20mn)
ChanServ sets mode: +o CDot [14:36]
verboese is now known as verboese|sleep [14:42]
..... (idle for 23mn)
verboese|sleep is now known as verboese [15:05]
......... (idle for 40mn)
gac410Howdy CDot ... [15:45]
CDothi george [15:45]
gac410Trying to run unit tests on my perlbrew versions, found a possible reversion of your fix to http://foswiki.org/Tasks/Item12084 New versions of CGI have elimiated the CGITempFile
I opened http://foswiki.org/Tasks/Item13172
[15:46]
CDotI saw. Not sure what you expect from me...... [15:48]
gac410And for Configure 1.2, do you want me to remove all the links to tab anchors. That feature is gone. [15:48]
CDotY, reckon. Keep It Simple. [15:48]
gac410No idea. I don't really understand your fix for the internals. hooking CGITempFile::DESTROY won't work any more. So users of RCS stores will have issues uploading attachments if I understand the original issue [15:49]
CDotThat big comment I wrote fully explains the problem
the subprocesses close files that the parent process expects to keep open
[15:49]
gac410Right. So now that that package no longer exists, does that mean we have to hook into File::Temp somehow? [15:50]
CDotI imagine the same will happen with File::Temp (though haven't tested it) [15:50]
gac410Yeah. It was an ugly issue, And you were the one to actually figure it out. :D [15:51]
CDotdunno - it depends on how file::temp does it, I guess.
try the arghno.pm code I wrote to test the issue on CGITemp
[15:51]
gac410Anyway, I suspect it will come back to bite us unfortunately. Okay. Yeah... I've got latest cgi now on most of my perl installs. Trying to install CGI::Session on any perlbrew, even 5.8.8, pulls in latest CGI [15:53]
CDotstill a problem on CGI 3.63 [15:54]
gac410CGITempFile was disabled in CGI 4.03 I think [15:54]
CDotupstream seem to think it's fixed
https://rt.cpan.org/Public/Bug/Display.html?id=89747
do you have 4.03+ to test on?
[15:56]
gac410My unit tests have been really painful. Not sure what happened, I installed regular system updates, and my unit test seems to capture stdout / stderr to a bitbucket, part way through... And also loops in some tests locking my system. [15:57]
CDotchances are it just needs a if($CGI::VERSION < 4.03) sort of test to ignore the monkey-patch of CGI::TempFile::DESTROY [15:57]
gac410Yes. Any perl version where I installed CGI::Session has ended up with latest CGI as well due to wonders of cpanm
Okay. I'll play around with it later today.
I'm not sure what's going on with my unit tests. Some fail to find egrep,. grep, tar, zip,... Not sure if it's the path changes. But with loss of output, I can't even see what's going on.
[15:57]
CDotit might be path changes. I was trying to move intelligent defaults into the code, to reduce dependence on bootstrap/.spec (e.g. how of does $Foswiki::cfg{SystemWebName} ne 'System' ?
^of^often
but.... the unit tests pass clean here (with the exception of the logger tests)
[16:01]
gac410System, probably very seldome UsersWebname. Always for me. I use an alternate UsersWeb so I can preserve all my registered users across git clan
er clean
[16:02]
CDotgreat name for the users web: 'Clans'
CDot likes the idea of an AdminClan
[16:03]
gac410But with the commented Specs, (I reverted those) bootstrap failed very badly ... We really needed them to be defined. [16:03]
CDoty, because there are no smart defaults in the code [16:04]
gac410Too much code uses cfg{SystemWebName} etc. [16:04]
CDotI dabbled, but I didn't think I had committed [16:04]
gac410Yeah. it ended up in your commit that fixed up the Foswiki.spec check= changes [16:04]
CDotyes, that's why I backpedalled. The obvious place to default these settings is in Foswiki.pm --- but there may be consumers that don't *use* Foswiki.pm (e.g. the core configure code) [16:05]
gac410yeah. And some shell tools too. [16:05]
CDothowever defaults in .spec is OK too. There just has to be a default *somewhere* so it gets into LSC [16:06]
gac410I still have no idea why some of my tests were failing with unable to find egrep, grep, tar, zip ... Seemed like Sandbox had no default path. But with all the other issues especially loss of all output, I was baffled. [16:06]
CDotit would be great if the unit tests capture code had a "pipe to terminal" mode [16:07]
gac410Ah.. Something is creating regexes (?^i: even running bootstrap on 5.8.8, and then read of LSC fails because of invalid regex syntax on 5.8.8 [16:07]
CDotso that you could turn off the stream redirect when debugging
tsk
[16:07]
gac410That might have been the issue now that I think of it. Y, that would be nice
The Foswiki.spec had The DLD's defined as qr/^(AERO:...)$/i and after bootstrap, LSC has '(?^i:(AERO|....
er... TLD not DLD.
Ah crap I know why. MichaelDaum and is use of /usr/bin/env
rewriteShebang looks for /usr/bin/perl Misses /usr/bin/env in jsonrpc, So the wizards / save used my system perl 5.18, and everything else was on 5.8.8 That's explained.
I think Micha will be annoyed. But all the scripts use /usr/bin/perl, rewriteShebang is happy, I'm going to change jsonrpc to /usr/bin/perl shebang so it's consistent,.
That's the only script we ship using /usr/bin/env
Wohoo gmc is here :D
rats, and now he's gone. I was going to bother him about Weblate
[16:08]
***SvenDowideit has quit IRC (Ping timeout: 265 seconds)
gmc_ has quit IRC (Remote host closed the connection)
Watzmann has quit IRC (Ping timeout: 265 seconds)
[16:13]
gac410hm. Either that or I change the rewriteshebang script to look for /usr/bin/(perl|env) [16:15]
........... (idle for 50mn)
CDot ... bad news: Tmpfile has gone! (CGI::VERSION 4.13) at arghno line 12. [17:05]
CDottsk [17:09]
gac410I tried setting $File::Temp::KEEP_ALL = 1; doesn't help :( [17:09]
CDotyou might try re-opening (or appending to) that upstream report
might get fixed in 10 years or so :-(
[17:10]
gac410Oh... no it works.
I was uploading an empty file Doh!
Yeah it works fine if I give it a real file to upload.
Even without the KEEP_ALL
[17:10]
CDotsooper [17:12]
gac410Excellent, So just disabling the monkey-patch if CGI >= 4.05
Thanks for your sage advice and wisdom :)
So should I trust the version strings, or check CGITempFile->can('new');
gac410 worries about distros that seem to update packages but not update Version strings. Like the Locale::MakeText debacle.
Though I suppose in this case it's a major eough change they really should have bumped the version.
CDot what's your opinion on /usr/bin/env vs. /usr/bin/perl. Shoud I make jsonrpc consistent with all the other scripts, and/or fix rewriteshebang to also rewrite /usr/bin/env
[17:13]
CDotconsistency is best IMHO [17:21]
gac410okay. I'll open a task and do both. Hopefully not upsetting Micah too much. [17:21]
CDotCDot isn't sure why Micha uses /env [17:22]
gac410I think because he uses plenv maybe? But it seems worthless with perlbrew esp. when running apache. Maybe works find with nginx [17:22]
CDotmaybe [17:23]
gac410gac410 will attempt to be diplomatic :)
Tis a simple change to use rewriteshebang to switch to /usr/bin/env. I'll also make it remove the -wT when switching to env, since switches are not supported.
gac410 wonders if we even need the -w any more. That was replaced by "use warnings" in modern perl I think.
CDot ... gave feedback on 12477. It's just shell convenience that change to json cause.
probably what would be nice *** someday *** is an eachChangeSince iterator that can filter by a WikiName. probably much faster than a search of all topics. I also grep the events log by WikiName and IP Address. So same filtering log event viewer would be nice.
[17:23]
CDoty, read it. you can still grep, thus: cat .changes | perl -e 'use JSON; print join("\n", map {JSON::to_json($_) } @{JSON::from_json(<>)})' | grep [17:32]
gac410If wishes were fishes...
Ah... cool. That will help.
[17:32]
CDotor similar (that was totally untested, off the top of my head) [17:32]
gac410I'll let you know someday. :) [17:32]
CDotheh [17:32]
gac410er. What's going to happen on foswiki.org. Where trunk records in json, and release01x01 records in | table | format | [17:33]
CDotbwahahhaaahhhhh! (that's my mad scientist laugh)
(after thinking for a bit) Release 01x01 is going to break
[17:41]
gac410yeah ... that's what I was afraid of. Victim will mainly be mailercontrb [17:42]
CDotyup
so, let's ban editing on trunk for now
[17:42]
gac410hm. okay .. ER No .. .cannot. [17:43]
CDothard to figure a solution to that one, because the 1.1 .changes format is brain dead [17:43]
gac410All our github tracker changes are posted to trunk because Release01x01 rest handler won't support the post requests [17:43]
CDotthe 1.1 .changes format simply doesn't store enough info for 1.2 to work with it
could always change the filename in 1.2 (.events for e.g.)
[17:44]
gac410right. I was trying to extend it with new columns, and then change mailercontrib to skip rows for more than n columns present [17:44]
CDoterm, do we run MailerContrib over 1.1, or 1.2? [17:45]
gac410hm.... I think 1.1 not sure.
lemme look .
[17:45]
CDotit's moot. 1.1 is going to f**k up the .changes as soon as someone edits [17:45]
gac410Looks like we run mailercontrib on trunk, not release11
Probably easier then to have eachEvent on trunk skip "bad rows" when reading the file?
[17:46]
CDotno, cause 1.1 edits are still going to kill .changes
only 2 choices
[17:46]
gac410Ah.. .yeah each update filters existing recorrds .... boom [17:47]
CDot(1) make a "compatibility mode" for 1.2 that stores a tab-separated table
or
(2) patch 1.1 to use the new format
[17:47]
gac410Just thinking about existing sites. I know where I worked, we often ran a new version in parallel just like our trunk/release and symlinked data directories
So We're just the first that's going to face this.
[17:47]
CDoty, which is really, really not recommended [17:48]
gac4103) Use different filename,
.changes.json
At least you don't get clobbered files
[17:48]
CDotthat would be the same as (2)
sorry, as (1)
you would still need to update .changes, or 1.1. is going to miss changes
[17:49]
gac410well not really 1.2 writes .changes.json in new format, 1.1 writes .changes in tab separated.
Right. we definitely miss changes, but don't damage files.
[17:50]
CDotwell, I can do a compatibility mode i.e. (1) pretty quickly. Can you re-open the task for me, please, so i can check in quickly? [17:50]
gac410secret You can always check in git commit .... --no-verify :D [17:50]
CDotwhich store does t.f.o use? [17:51]
gac410RcsWrap [17:51]
CDotok, ta [17:51]
gac410And so does f.o ... I changed from Lite to Wrap a while back when the server was being killed by bots chasing revs.
Yes... I just double checked. Both are using RcsWrap
Actually Item12477 is "Waiting for feedback" So it's still considered open.
[17:51]
***ChanServ sets mode: +o Lynnwood
verboese is now known as verboese|sleep
[17:56]
...... (idle for 26mn)
GithubBot[distro] cdot pushed 1 new commit to master: http://git.io/PWPcCA
distro/master e1584b4 Comment: Item12477: add compatibility mode - switched on by {RCS}{TabularChangeFormat} - that generates .changes that can be read by 1.1, but still contain full information about the change for 1.2. Needed for running on f.o
[18:24]
***GithubBot has left [18:24]
gac410CDot: What do you think about bootstrapping. Should we detect existing .changes and enable automatically? [18:25]
CDotcompatibility mode implemented, enabling on f.o and sorting out existing .changes [18:26]
gac410Whoops. That git push just clobbered Tasks/.changes.
Wrote out a json format file.
[18:26]
CDotno, it was there before
CDot is on the case
[18:30]
gac410Hm. 10 minutes ago I did dumped the file and .changes was tablular
Good news though is it converts tabular to json. so never mind on my bootstrap question. But certainly is release-notable And needs to be decided before trunk ever touches an existing .changes file.
[18:30]
CDoty, there's a transition going on
it will switch freely between formats depending on the setting of {RCS}{TabularChangeFormat}
[18:33]
gac410Ah... cool. So the only data loss that can happen is if 1.1.x system touches a .changes after it was jsonized by 1.2 [18:34]
CDotbugger, there's a use case I didn't consider :-( [18:43]
gac410I hate to say it - I think the safest path is to default to tablular and allow json to be enabled once the admin can assure no 1.1.x use.
At least if the RCS stores are in use
[18:45]
GithubBot[distro] cdot pushed 1 new commit to master: http://git.io/pujAGA
distro/master dd7f1b5 Comment: Item12477: handle flexible switch between .changes formats
[18:57]
***GithubBot has left [18:57]
CDotcrap; WebStatistics got in and saved the .changes on 1.1 before I could fix it, so the history has gone :-(
if you think there's a safer path, you know how to change defaults :-)
[18:58]
gac410BTW CDot I've been looking at the need to mail out a diff. git has a command to generate emails. And FoswikiOrgPlugin updates a per-distro file in working/work_areas/FoswikiOrgPlugin
so rather than mail from the rest handler, we could probably find changes in the workarea and have a script generate the emails you want.
[18:59]
CDotdon't spend any time on it. I can always refer to github
it was just nice to be able to search. But not a big deal.
ok, we may get some odd mailings while the bastard format settles in
CDot is heading off for supper.
[19:00]
gac410git log has an interesting feature migh help
-L <start>,<end>:<file>, -L :<regex>:<file>
Trace the evolution of the line range given by "<start>,<end>" (or the funcname regex <regex>) within the <file>. Y
Rather than searching email,
[19:02]
CDotyeah, that might be handy [19:02]
gac410I've never tried it before. [19:03]
CDoteven handier; a cheat-sheet of "how to do what you used to do in SVN but using git"
stackoverflow is a reasonable source for that, but it takes time to search
[19:03]
gac410y. We started one in HowToUseGit topic ... but it needs care & feeding :)
Cool.... works great! git log -L 2090,2100:Foswiki.spec finds the history of changes to SystemWebName
Or git log -L :cfg\{SystemWebName:Foswiki.spec
[19:03]
............................ (idle for 2h17mn)
GithubBot[distro] gac410 pushed 1 new commit to master: http://git.io/Ti0tAA
distro/master 0f78371 George Clark: Item13028: rewriteshebang misses scripts using env...
[21:24]
***GithubBot has left [21:24]

↑back Search ←Prev date Next date→ Show only urls(Click on time to select a line by its url)