Camelia, the Perl 6 bug

IRC log for #padre, 2010-06-25

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

All times shown according to UTC.

Time Nick Message
00:16 teejay joined #padre
03:54 |Sno| joined #padre
03:58 [Sno] joined #padre
04:16 pece joined #padre
05:16 [Sno] joined #padre
05:23 jazzanova joined #padre
05:26 kaare joined #padre
05:48 pece joined #padre
06:38 ilbot2 joined #padre
06:38 Topic for #padreis now Latest Padre is 0.64 - last stable release before Task API merge, for installation see http://padre.perlide.org/trac/wiki/Download | Log: http://perlide.org/irclogs/ and http://irclog.perlgeek.de/padre/today | Pasting: http://scsys.co.uk:8001
06:55 Zapelius joined #padre
07:08 Alias joined #padre
07:18 user_1005 joined #padre
07:33 rindolf joined #padre
08:14 danlucraft joined #padre
08:17 pece joined #padre
08:30 daxim joined #padre
08:53 rindolf Hi all.
09:44 Hyppolit svn: r11714 | adamk++ | http://padre.perlide.org/trac/changeset/11714
09:44 Hyppolit Adding GUI content for the plugin
09:44 Hyppolit trunk/Padre-Plugin-FormBuilder/
09:53 Alias_ joined #padre
10:05 waxhead Alias_, how goes the plugin work?
10:05 waxhead thought you'd be over coding things given all the work on the task api
10:06 Alias_ Task has been a slow burn
10:06 Alias_ Very slow gradual tweaking and experimentation
10:06 Alias_ This stuff is easy and it means I can finally do GUIs with a visual designer in future
10:06 waxhead a good thing!
10:09 Alias_ I'm desperate to replace things like the preferences dialog that doesn't suck so much
10:10 Alias_ Fixed size dialogs are horrible
10:10 waxhead true
10:16 waxhead bugger.. I'm still getting test failures
10:21 Alias_ That directory_task.t one?
10:24 waxhead yep
10:26 Alias_ Blame Sewi and roll his symlink support back :)
10:26 Alias_ This would be the second implementation that's failed
10:26 Alias_ Or at least, comment it out
10:42 waxhead cool!! WXPerl doco is coming... http://news.perlfoundation.org/2010/0​6/grants-update-wxperl-documenta.html
10:48 daxim wake me when it's not vapour anymore
10:56 Sewi Alias: There are also warnings from the "unknown filetype" things.
10:57 Sewi We could comment out all those warnings but Padre doesn't feel release-ready currently (for me)...
10:57 Alias_ I don't get any of these
10:58 Alias_ Before the symlink code went in, I was getting all tests passing
11:04 Sewi I keep getting many "unknown filetype" messages on Ubuntu
11:09 Sewi Okay, two of them are left since the remote-device-check is in place
11:20 Sven_Windows_ joined #padre
11:29 pece joined #padre
12:25 shadowpaste "waxhead" at 217.168.150.38 pasted "warings/test fails I'm seeing." (58 lines) at http://paste.scsys.co.uk/45184
12:27 Sewi waxhead: Run dev.pl and let Padre run for a few minutes. Do you see any warnings in the dev.pl - console?
12:27 waxhead Sewi, oh them... yes.. I noticed that tonight
12:28 shadowpaste "waxhead" at 217.168.150.38 pasted "errors in the console" (6 lines) at http://paste.scsys.co.uk/45185
12:29 Sewi I didn't get those messages...
12:29 Sewi w8...
12:30 waxhead I'm at the latest in trunk too
12:30 waxhead and I run ./dev.pl -a
12:31 Sewi me too
12:31 shadowpaste "Sewi" at 217.168.150.38 pasted "Padre STDERR report" (22 lines) at http://paste.scsys.co.uk/45186
12:32 Sewi So we seem to have two kinds of warnings.
12:33 Alias_ I'll address the Padre::Cache ones
12:33 Sewi waxhead: Win or Linux?
12:34 waxhead linix
12:34 waxhead linux even
12:34 waxhead ubuntu
12:35 Sewi Which startup setting do you use, empty document, last open documents, open session?
12:36 waxhead empty document...
12:36 Alias_ empty
12:36 waxhead I've found the problem
12:36 Alias_ Sometimes last
12:36 Sewi "open session" here
12:36 waxhead $self->{document} isn't set, and there's  a test for $document eq $self->{document}
12:36 waxhead can add this to the test
12:36 waxhead defined($document->filename) && defined($self->{document}) &&
12:36 waxhead ?
12:37 Sewi maybe return unless defined... && defined... ?
12:40 waxhead has an interesting effect...
12:41 Sewi Padre is eating many cpu power here
12:44 Hyppolit svn: r11715 | Sewi++ | http://padre.perlide.org/trac/changeset/11715
12:44 Hyppolit Add temporary option to remove Task.pm warnings for release
12:44 Hyppolit trunk/Padre/lib/Padre/Wx/Directory/ trunk/Padre/lib/Padre/Wx/Menu/
12:46 Hyppolit svn: r11716 | adamk++ | http://padre.perlide.org/trac/changeset/11716
12:46 Hyppolit Don't try to clear cache entries unless there's a key to clear
12:46 Hyppolit trunk/Padre/lib/Padre/
12:52 waxhead if $document->filename is undef, should it be coerced to empty string?
12:53 waxhead then you have the same with $self->{document}
12:55 waxhead nope.. you can't
12:57 Alias_ oh man
12:57 Alias_ I got a new Padre user arriving shortly
12:57 Alias_ He has an awesome story
12:58 Alias_ The "Why are you installing Padre" feature is somewhat FAIL
12:59 waxhead how so?
12:59 Alias_ OK, I'll steal his sotry
12:59 Alias_ So lets say you are from $country
13:00 Alias_ And you are working in another country, on their machines
13:00 Alias_ You all work in English, because it's the common language
13:00 Alias_ And you are in, say, the netherlands
13:00 Alias_ So you start up Padre the first time, and of course it's magically in Dutch
13:00 Alias_ Which you don't know
13:01 Alias_ So, of course, you wander around the menus at random looking for the language setting
13:01 Alias_ Except there's a popup window
13:01 Alias_ The "Why are you installing Padre" dialog :)
13:01 Alias_ Except it's in Dutch
13:01 Alias_ So you have no fucking idea what to do
13:01 Sewi You're right.
13:03 Sewi I had a dialog containing flags of all supported languages in a application. It was shown at the first startup asking the user for his language - without words.
13:03 Alias_ I'd like to avoid that compulsory language question
13:03 Alias_ And yet there is this problem
13:03 Alias_ Maybe we could avoid it for English
13:04 Alias_ And if not English, show the dialog, but have all the wording in the local language so it still gives off that magic factor
13:04 Alias_ The "We know what you want" intuition factor
13:05 Sewi Which is the OS language he's using?
13:07 Hyppolit svn: r11717 | waxhead++ | http://padre.perlide.org/trac/changeset/11717
13:07 Hyppolit Added in local variable to hold the value of $document->filename, this allows checking it's defined and setting the value to ''.
13:07 Hyppolit
13:07 Hyppolit This makes the conditional check valid against $self->{document}.
13:07 Hyppolit trunk/Padre/lib/Padre/Wx/
13:08 waxhead who is hte Padre user visiting at this hour of the night?
13:09 waxhead hmm.. the SVN text dialog needs wrapping.
13:09 waxhead I think that fixes the syntax issue when there is an empty document opened at the start...
13:09 Alias_ Oh of course
13:09 Alias_ I forgot about unsaved documenbts
13:09 Alias_ <-- stupid
13:10 waxhead you know I reckon that's the first time I've ever used that ? : syntax....
13:11 waxhead low hanging fruit...
13:12 waxhead and I had no idea it was due to an unsaved document... just kept coming up undef... so I worked around it..
13:12 waxhead I guess we could just check for $document->is_saved() or what ever we have in Document...
13:13 Hyppolit svn: r11718 | waxhead++ | http://padre.perlide.org/trac/changeset/11718
13:13 Hyppolit Added a little extra info to the comment.  Hardly worth the commit.
13:13 Hyppolit trunk/Padre/lib/Padre/Wx/
13:14 waxhead I see we are getting leaked Scalars in the console again..
13:15 Alias_ waxhead: My fault
13:15 Alias_ I chose to ignore it while writing the new task code
13:16 waxhead no biggies.. just noticing it is all
13:17 waxhead Alias_, are you the bioperl helpdesk?
13:17 Alias_ Yes
13:18 Alias_ The Strawberry team are trying to poach the entire biology profession from ActivePerl :)
13:18 Alias_ Right now, BioPerl only official support ActivePerl
13:19 Sewi waxhead: I found those -f _ magic some days ago, also really nice but I didn't know it :)
13:21 waxhead Sewi, what's that for?
13:25 waxhead still getting test fails
13:25 Getty Alias_: oh really?
13:25 tgape Alias: as one of the mac people who won't build things on a Mac, I can explain, to some extent, my own reasons.  If I use the Mac more or less as a dumb terminal to my Linux boxes + GUI web browser, it's ok.  But I find developing code *for* the Mac to be very frustrating.  Things are different in silly ways, and they're generally not well documented any place I can reasonably find them.
13:25 Getty Alias_: interesting...
13:26 Getty tgape: you cant blame the holy steve jobs!!!1111oneoneeleveneleven he does everything perfect!!!1111oneoneeleveneleven you are failing not him!!!11111oneoneeleveneleven <couldntresist>
13:27 tgape Not blaming anyone.  Merely stating what is.
13:27 Sewi waxhead: It uses the results from the last stat() call, so you could do -f, -d, -x on the same file without issuing tons of identical stat() calls
13:27 Getty tgape: i'm on your side
13:28 Getty tgape: i just simulate a mac user
13:28 Getty tgape: its like if you say that mac does something not good, they say that you are just using it wrong ;)
13:28 Alias_ tgape: I get that impression as well
13:28 Alias_ I mean, I use Windows as a front end for linux boxes and a web browser too
13:29 Getty <aol>me too</aol>
13:29 Alias_ But I can imagine that at least on Mac, the basics like newlines and so on are the same
13:29 Alias_ I only made Strawberry because I was fucking sick and tired of my own code not working on my own system
13:30 Getty hehe
13:37 tgape Installing perl manually/intelligently on a Mac does work wonders - but to do that, one needs the Mac development stuff.  To get that, one needs to sign up for Apple spam, as well as work through a host of "different for the sake of differentness" type things.
13:38 Alias_ And yet nobody has managed to automate it
13:38 Alias_ And make a Strawberry installer style thing
13:38 Alias_ Which is what seems weird to me
13:40 tgape I've seen a couple of them, actually - except that they seemed to have a different idea of 'intelligent' also - they didn't use perl standard locations, for example; they came up with their own varient of 'Let's put everything where nobody would think of looking for it.'  Almost like they were parodying the Apple perl instead of fixing it.
13:41 tgape And then I stopped looking, having lost hope for a sane perl on this platform.
13:41 Sewi The project home dir detection might have a (new) bug: The dir browser just showed two folders, the first one without subfolders and the second one with all content from my home dir. Switching to another window and back (maybe just waiting for a minute or so) made Padre eat 300+MB of RAM and the project root is top of the directory browser (like it was).
13:42 Getty Alias_: had an idea about cpanm + module requirements?
13:42 Sewi Alias: Could we track the cpu and maybe mem usage of the background tasks easily?
13:42 Getty (i hope i hit the right dude....)
13:42 Alias_ Sewi: Not sure...
13:42 PerlJam scatterp: git svn clone URL_to_svn_repo/win 22
13:42 PerlJam oops
13:43 tgape Also, I imagine that the basics like newlines are finally consistently the same - but having found issues on every version from 10.1.5 through 10.4.9, I've learned to stop looking.
13:44 Alias_ Sewi: Could be tricky... thread and process interrogation is different on every operating system
13:44 Alias_ You'll notice that we only show TOTAL memory for the whole process, totalling all the threads
13:45 Alias_ Cause that was the easy stuff to get
13:45 tgape Sewi: and sometimes different between OS versions.
13:46 Sewi Alias_ & tgape: I was thinking about debugging / dev time, so different rresults on different OSs might be ok
13:47 Sewi If you get "task foo uses 5% cpu and 10% memory of the whole Padre process and task bar uses 80% cpu and 75% memory", it would be helpful even if the numbers vary my 10% or more
13:50 Alias_ Sewi: Well, I'd start by trying to hunt down the per-thread memory usage
13:50 Alias_ Because at some point, I'm doing task affinity
13:51 Alias_ So the worker threads will track which task classes it's used before
13:51 Alias_ And then workers will specialise on different tasks, to prevent memory spend loading the same class in more than one backend
13:54 tgape Sigh.  Would be nice if perl could share code space between threads.  I understand why it can't currently, I'm just saying it'd be nice if it could...
13:55 Alias_ Well, then we'd need locking
13:55 [Sno] joined #padre
13:55 Alias_ And half the code wouldn't necesarily work on it
14:47 dapatrick joined #padre
15:05 Sewi Alias_: Would Padre still run other background tasks if a task is blocked by a syscall (io)?
15:06 Alias_ It should, each one is in a thread
15:06 Sewi ok
15:06 Alias_ I don't dynamically increase workers though
15:06 Alias_ So if you hit the hard-coded worker limit of 2, task processing stops
15:07 Sewi Because the history refresh is a good chance to block whole Padre and makeing it a one-time-background task might be a solution
15:07 Alias_ Need to re-implement some of tsee's original "management" features in the task manager
15:07 Alias_ history refresh?
15:08 Sewi Padre/Wx/Menu/File.pm line 332
15:08 Alias_ ah
15:08 Sewi The problem description is here: http://www.perlmonks.org/?node_id=846056
15:08 Alias_ IF you want some safety, I'd implement task afinity
15:08 Alias_ So that once a task has been run on a worker, that class is always run on that worker
15:09 Alias_ Any subsequent tasks of that same class will stay on the queue, letting other things past it
15:09 Alias_ Or maybe we just do it on the basis of active tasks
15:09 Sewi It should be enough to refersh this once, Padre should be able to handle the case if a file is being opened which doesn't exist
15:09 Alias_ Only one active task per class
15:09 Alias_ That would also stop the horribly slow directory tree updates
15:09 Alias_ I haven't got around to building in stats gathering yet
15:10 Sewi So I'd add a task at program startup and if it blocks, only one worker is blocked. (As long as we don't have a second blockable task)
15:10 Sewi What about flushing this directory cache to disk?
15:10 Alias_ I've been pondering the idea of having the tasks advertise their risks
15:11 Alias_ So they can say if they are CPU-intensive, or IO-intensive, or networked
15:11 Alias_ etc etc
15:11 Sewi cool idea
15:11 Alias_ So if you only have a 1 core machine, we never run more than one cpu-intensive task at a time
15:11 Alias_ And so on
15:12 Alias_ And you don't run two tasks that do directory scans, or massive amounts of writing/copies, because they slow each other down
15:12 Alias_ There's so many interesting strategies, I haven't been game yet to pick one to start with
16:10 patspam joined #padre
16:39 Sewi What about releasing this thread management as a standalone cpan module (if possible)?
18:08 Alias_ At the moment, it's not trivial
18:08 Alias_ Because it requires BOTH threads.pm and Wx.pm
18:11 danlucraft joined #padre
18:27 Hyppolit svn: r11719 | adamk++ | http://padre.perlide.org/trac/changeset/11719
18:27 Hyppolit First fully working version of the FormBuilder plugin. Woot
18:27 Hyppolit trunk/Padre-Plugin-FormBuilder/ trunk/Padre-Plugin-FormBuilder/lib/Padre/Plugin/ trunk/Padre-Plugin-FormBuilder​/lib/Padre/Plugin/FormBuilder/ trunk/Padre-Plugin-FormBuilder/t/
18:37 Alias_ Note: Only VERY simple dialogs are supported
18:43 jjore Does the perltidy plugin work for people? When I try it, I get a 4-by-4 inch grey box over my editor and there's an ittle bitty scrunched widget thingie about 2 millimeters by 1 millimeters big at the top left.
18:44 jjore also, not sure how to make the grey box go away
19:19 Sewi jjore: View -> Outpupt
19:19 Sewi Output
19:19 Sewi It's a not_fully_displayed output window/tab
20:04 danlucraft1 joined #padre
20:07 jjore thanks sewi
21:07 danlucraft joined #padre
21:20 LeK joined #padre
21:56 kthakore joined #padre
21:56 kthakore Alias: arround?

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