| <<<Back 1 day (to 2012/03/12) | 2012/03/13 |
Robin_Watts | done. | 00:29.01 |
kens | Hey tor8 have you seen the new AIDE integrated development environment for Android ? | 09:53.20 |
tor8 | kens: nope. | 09:53.41 |
kens | http://www.theregister.co.uk/2012/03/13/android_sdk/ | 09:53.49 |
| Might be OK to use on soemthing like the Transformer Prime | 09:54.01 |
| Don't know if it does anything other than Java though.... | 09:54.34 |
tor8 | Yeah. Did you see about the Ubuntu on Android thing too? | 09:54.53 |
kens | No, that sounds 'odd'... | 09:55.04 |
| An OS on an OS ? | 09:55.12 |
tor8 | Ubuntu as an Android app to run when you've docked your phone or tablet to an HDMI output | 09:55.31 |
kens | So a sort of Virtual Machine ? | 09:55.45 |
tor8 | I'm not sure how they've done it, but from what I've seen it looks like one | 09:56.03 |
kens | Intriguing.... | 09:56.12 |
tor8 | http://www.ubuntu.com/devices/android | 09:56.27 |
kens | I cna see it being useful for engineers. | 09:57.06 |
| Maybe for regular users. Its an interestign idea. | 09:57.19 |
tor8 | anything that breaks out of the walled garden, media consumption device idea, makes the device a lot more useful IMO :) | 09:58.12 |
kens | Absolutely. | 09:58.22 |
Robin_Watts | There is an unlocker for the transformer prime, so you can run ubuntu on it anyway. | 10:26.43 |
kens | I was thinking the IDE might be nice for debugging, if it can compile C | 10:27.21 |
Robin_Watts | android + Ubuntu share the same kernel. | 10:37.32 |
| interesting. | 10:37.35 |
| but the page makes it sound like it's aimed at phone makers. | 10:38.32 |
| rather than something you can download onto your existing device. | 10:38.57 |
tkamppeter | Hi, I have found a problem with Ghostscript's "ps2write" output. It does not print on PostScript printers from Kyocera and Brother, but it prints on HPs and screen-displays with Ghostscript. | 10:44.07 |
kens | Sounds like a bug with Kyocera printers. Probably insufficient memory. What error do you get ? | 10:44.34 |
tkamppeter | kens, the printer simply hangs forever with "Processing" on its display. No error page. | 10:56.50 |
kens | Well there's not really much I can say | 10:57.06 |
| The PostScript is valid as far as I know (prints on other printers) | 10:57.19 |
| I'd suggest raising a bug with Kyocera/Brother | 10:57.32 |
| Also, try testing with simple files (blank page for example) | 10:58.51 |
tkamppeter | kens, I have tried on 3 different HP's now, including very cheap and expensive models and they all print the very same PS file. | 10:59.10 |
kens | Then it really sounds like a bug in the printer's PostScript itnerpreter | 10:59.34 |
| I don't think we can fix that ;-) | 10:59.42 |
tkamppeter | kens, is there any way to find out what the printer does not like in ps2write's output? Poppler's PostScript is no problem at all for the printer. | 11:04.15 |
Robin_Watts | Morning paulgardiner | 11:04.33 |
kens | That would be difficult. | 11:04.35 |
| If I had the pritner here, then maybe. | 11:04.46 |
tkamppeter | kens, and I would very much like to use GS due to the color management. | 11:04.59 |
kens | Basically you need to instrument the PostScript program. | 11:05.10 |
tkamppeter | kens, perhaps you can do so by taliking with the user on IRC? | 11:05.31 |
kens | No, definietly not | 11:05.39 |
| Its a job for someone who understands PostScript | 11:05.52 |
tkamppeter | kens, who of the GS developers understanfs PostScript? | 11:06.35 |
kens | me, Alex, chris, maybe others | 11:07.15 |
tkamppeter | chrisl, alexcher, can someone of you help? | 11:07.40 |
chrisl | tkamppeter: get me a printer with the problem....... | 11:07.59 |
tkamppeter | chrisl, there is a user "ppd" on the channel #openprinting. Talk with him. | 11:08.41 |
chrisl | tkamppeter: no, I said "get *me* a printer with the problem" | 11:09.08 |
kens | tkamppeter this is like asking someone to debug a Linux kernel problem by talking to a user. | 11:09.17 |
| My advice is to report it as a bug to Kyocera/Brother | 11:09.39 |
chrisl | tkamppeter: do you know the model(s) of printers with the problem? | 11:09.57 |
tkamppeter | chrisl, there are several different models. For Kyocera there is the bug report https://bugs.launchpad.net/ubuntu/+source/cups/+bug/951627 | 11:14.03 |
| for Brother there is the bug report https://bugs.launchpad.net/ubuntu/+source/cups/+bug/950713 | 11:14.30 |
| chrisl, ^ | 11:14.35 |
kens | manufatcurers often us eht same interpreter for all devices, so a bug will show up in most (maybe all) models | 11:15.11 |
| Kyocera use their own interpreter, so again, I think it needs to be reported to teh manuacturer | 11:15.37 |
tkamppeter | And Brother uses their own interpreter, too. AFAIK HP uses the Adobe interpreter, at least in the more expensive models. | 11:17.47 |
chrisl | HP also use their "own" interpreter in the low end models. | 11:18.28 |
kens | BTW is it *all* jobs, or just some that fail ? | 11:18.29 |
| First thing to try is a single blank page | 11:19.00 |
tkamppeter | AFAIK it is for all jobs. | 11:19.31 |
kens | Probably not memory then | 11:19.58 |
| But to be bluint, the PS is demonstrably valid, so its not our bug. There is little we can do to even investigate it, and even if we knew what was wrong we might not be able to work around it. | 11:20.53 |
chrisl | What about not compressing the page streams? I've seen printers have problems with things like that....... | 11:21.17 |
kens | -dCompressPages=false -dCompressFonts=false | 11:22.01 |
tkamppeter | chrisl, kens, I will ask the user to do that when he comes back to his printer, thanks for the hint. | 11:24.06 |
kens | You need to add it to the GS invocation, I don't know how to do that in this situation | 11:24.36 |
chrisl | tkamppeter: it's totally a guess - I'd be shocked if a reasonably modern printer had a problem with it (the ones I saw having a problem were fairly ancient Sharp printers....) | 11:25.25 |
| tkamppeter: you could also do a git biset between 9.04 and 9.05, and establish which change introduced the problem | 11:29.45 |
kens | 9.04 worked ? | 11:30.17 |
chrisl | It seems so, according to the Ubuntu bug | 11:30.42 |
kens | I'm amazed. There have been very few changes as far as I recall | 11:30.57 |
| An obvious approach would be to compare the two files. | 11:31.10 |
chrisl | In ps2write, there were a lot of changes between 9.04 and 9.05 | 11:31.31 |
kens | Mostly concerned with PCL I thought | 11:31.53 |
chrisl | Er, there were a fair number of fixes you did for problems from Till! | 11:32.28 |
kens | :-) | 11:32.33 |
| Still, comparing the two program might be illuminating | 11:32.45 |
chrisl | That's why we rushed 9.05 out, so he could get a "release", rather than a load of random patches | 11:33.05 |
kens | Well, like I sadi, it looks like its the prolog, so a comparison might help. | 11:34.52 |
| Also you could take the 9.04 prolog and put on the 9.05 body | 11:35.33 |
chrisl | Oh, terrific, the cups log doesn't] include a Ghostscript command line....... | 11:37.20 |
kens | Maybe Till can tell you it ? | 11:37.39 |
tkamppeter | kens, Ubuntu Oneiric worked because Poppler was used. GS 9.04 has the same problem, also not working with Brother and Kyocera printers. | 11:44.48 |
kens | OK so its not a 9.04 regression, shame. | 11:45.09 |
| Might have been possible to debug it | 11:45.18 |
tkamppeter | One can reproduce it with a simple | 11:46.02 |
chrisl | tkamppeter: in the Ubuntu bug you say: "Deeper investigation shows that most probably the problem is Ghostscript. The PostScript generated by Ghostscript 9.04 (Oneiric) prints on Kyocera printers and the PostScript from Ghostscript 9.05 (Precise) does not print on Kyocera printers." | 11:46.12 |
tkamppeter | pdf2ps file.pdf file.ps | 11:46.21 |
| sending the file.ps directly to the printer with the "nc" command. | 11:46.39 |
| chrisl, this assumption is wrong, I later discovered that Oneiric uses Poppler to generate PS for PS printers and not GS. | 11:47.21 |
| chrisl, the user also found out that GS 9.04 leads to the same problem. | 11:47.42 |
chrisl | Well, that about exhausts our options, then. As Ken said, report the problem to Kyocera and Brother - they at least can debug their own printers. | 11:49.19 |
| Hmm, only tkamppeter and me on #openprinting...... | 11:54.52 |
tkamppeter | chrisl, the user has already left, he is not at his workplace (where the printers are) the whole day. | 12:04.06 |
chrisl | tkamppeter: Okay. Can you get him, and/or the Brother use to try sending this file to the printer: http://www.ghostscript.com/~chrisl/ps2write-empty.ps | 12:05.47 |
tkamppeter | chrisl, kens, I remember that for using Poppler in Ubuntu I have generally suppressed the use of PS Level 3, only used Level 2 on PS3 printers. With GS I did not do so. Are PS3 implementations onm printers rather bad so that if I only allow PS2 with GS that I get more PS3 printers working? | 12:07.21 |
kens | ps2wtite is bare level 2, not even any of the supplement | 12:07.47 |
| sin general there are few differences between level 2 & 3 | 12:09.08 |
| No real reason to suppress 3 | 12:09.14 |
tor8 | Robin_Watts: fz_pixmap_bbox, rect or bounds ? | 12:09.46 |
chrisl | If anything, I would expect those who actually took the trouble to implement level 3 to have got it fairly right - one difference might be memory use, if the implementation is a bit naive...... | 12:10.26 |
tkamppeter | chrisl, I asked the users to print your file via the Ubuntu bug report. | 12:10.34 |
chrisl | tkamppeter: okay, thanks. Just FYI, it's a totally blank page, so should tell us for sure if the problem is in the prologue or not. | 12:11.17 |
| tkamppeter: sorry, I just remember, I have a user account on the Ubuntu bug tracker, I could have posted myself - I'll keep an eye on it. If we go down this route it could mean a *lot* to-ing and fro-ing, and a *lot* of wasted paper! | 12:13.36 |
kens | lunches | 12:23.45 |
Robin_Watts | There is an attraction to having fz_pixmap_bbox that returns a bbox and _rect that returns a rect :) | 12:40.52 |
| oh, sorry, just a bbox of course for a pixmap. | 12:41.16 |
| tor8^ | 12:41.23 |
tor8 | so blabla pixmap_with_rect should be _with_bbox ? | 12:41.59 |
Robin_Watts | yes. | 12:42.15 |
tor8 | will change | 12:42.21 |
Robin_Watts | Did you see my burbling yesterday about the text stuff ? | 12:42.54 |
| Ang bug 692916 | 12:46.16 |
| s/Ang/And/ | 12:46.28 |
tor8 | *reading irc logs* | 12:46.31 |
| Robin_Watts: good question. I think the len/cap array style was added while I was experimenting with different approaches to analyzing the text. In a way I prefer the simplicity of linked lists, so I'm happy to change them back to linked lists. | 12:48.20 |
| for all but the text_char array that is | 12:48.43 |
| and putting next at the top is a good idea if we're going to publish them | 12:49.02 |
Robin_Watts | As long as appending doesn't require us to walk the entire list to add a new one. | 12:49.18 |
tor8 | and yes, we should probably add a FILE* to all print functions | 12:49.20 |
| when building it I hold pointers in the text device for where to append | 12:49.38 |
Robin_Watts | Ah, cool. | 12:49.48 |
tor8 | but yeah, I think that may have been the reason I did them as arrays in an old algorithm | 12:49.57 |
Robin_Watts | One trick I've done before is to have a head * pointer, and a tail ** pointer. | 12:50.07 |
tor8 | or for easier quicksorting the results | 12:50.08 |
Robin_Watts | and tail starts out as &head. | 12:50.17 |
| Then you can always append by doing *tail = new; tail = &new->next; | 12:50.39 |
| No special cases for the empty case. | 12:50.48 |
tor8 | probably for quicksorts actually, now that I'm trying to remember it. | 12:50.48 |
| yeah, that's a neat trick. I'll have to remember that :) | 12:51.04 |
| I'll push through this set of renames, then we can tackle FILE* and the text struct layout. | 12:51.27 |
Robin_Watts | I am unoffended by either lists or arrays. | 12:51.28 |
| Arrays have the problem of wastage (or inefficient growth). | 12:51.47 |
| linked lists of the overhead and slow seek times. (But that may not be a problem in some cases) | 12:52.23 |
Robin_Watts | dives into shower. | 12:52.56 |
tor8 | Robin_Watts: renaming patches pushed | 13:07.41 |
Zet | hi | 13:14.35 |
| I've just scanned in an old book and have the pages as images | 13:15.00 |
| eventually I wanna make them into a pdf, but I can't figure out how to make the table of contents you sometimes have with pdf files in the side pane of the reader | 13:15.30 |
| the kind that lets you click and quickly find sections within the document | 13:15.45 |
| can gs do that? | 13:15.59 |
tor8 | Zet: the PDF term for it is "Outline" if that will help your search for information. which tool do you use to create the PDF? | 13:16.11 |
kens | You would need to construct a series of mookmark using pdfmark | 13:16.13 |
tor8 | mookmarks :) | 13:16.36 |
kens | So I can't type today :-) | 13:16.53 |
| I mean bookmarks | 13:16.58 |
Zet | I'll probably use imagemagick to compile the pdf | 13:17.00 |
kens | which are of course /OUTLINE pdfmark operations | 13:17.09 |
Zet | thanks for the tips | 13:17.27 |
| wow, this looks quite complicated | 13:26.46 |
kens | :-) | 13:26.56 |
| Almost certainly | 13:27.00 |
ppd | tkamppeter, hi. I'm there. Do you want to introduce the problem, as I'll mess up the terminology for sure? | 13:27.17 |
Robin_Watts | ppd, tkamppeter already has introduced the problem I believe. | 13:27.40 |
kens | Brother / Kyocera pritners ? | 13:27.57 |
ppd | Kyocera printers | 13:28.04 |
kens | Hmm, Till said also Brother | 13:28.19 |
ppd | I only have Kyocera here | 13:28.37 |
| but on the ubuntu bugtracker there are even more with Brother printers | 13:29.09 |
Robin_Watts | What models of Kyocera printer please? | 13:29.36 |
kens | Bluntly it looks like a problem with the PostScript itnerpreter in those printers, since a braod rang eof other interpreters are happy with the program | 13:29.42 |
| Robin_Watts : its in the Ubuntu bug report | 13:29.51 |
| If you are abou tto consider 'Venus' chrisl already did | 13:30.03 |
ppd | FS 1320D and FS C120MFP | 13:30.09 |
kens | I believe there is a simple file attached to the Ubuntu bug report, for you to try ppd | 13:30.24 |
Robin_Watts | tor8: The MuPDF company are trying to build a metro tile thing (windows 8 sliding UI thing) using MuPDF. | 13:31.10 |
ppd | I'll send it to the printer | 13:31.10 |
Robin_Watts | But MuPDF apparently calls some functions that you aren't allowed to from such tiles. | 13:31.29 |
kens | I think that should produyce one blank page, or lock up | 13:31.33 |
Robin_Watts | They are going to send us an email with details later today. | 13:31.48 |
kens | does not like hte look of Windows 8 at all :-( | 13:31.56 |
Robin_Watts | I suspect they may want us to move away from open/close as part of that. | 13:32.07 |
ppd | kens, it hangs | 13:32.16 |
kens | ppd OK so its the prolog as expected. | 13:32.28 |
Robin_Watts | lunches | 13:32.34 |
kens | I suspect the next thing to do is a binary chop through the prolog trying to see where it hangs. | 13:32.48 |
Zet | just to be clear... I need to learn how to hand-write postscript in order to get an "outline" for my pdf? why is this? | 13:32.49 |
kens | Zet, because that's the way Ghostscript works. Other tools work differently | 13:33.08 |
| The Outline cannot be manufactured from the information in an image, it must be supplied by a sentient source (ie you). | 13:33.39 |
Zet | hmm. do you know of another tool with a less... 1980's approach? :) | 13:33.41 |
kens | Personally, no. | 13:33.49 |
| I'm sure there are tools capable of adding an outline dictionary, but I haveb't researched them. | 13:34.11 |
Zet | obviously I realize I would have to supply the information, but I was looking for like some kind of editor that would let me just kind of stick it on there | 13:34.31 |
kens | To be honest, I would prefer a non-GUI interface, as most of the taske is textual anyway | 13:34.41 |
| Zet, tits not that simple. | 13:34.52 |
| its | 13:34.55 |
| You also need to add links to the destinations so that when you click the bookmark it jumps to the right place | 13:35.13 |
| What you are trying to do isn't as simple as you think :-) | 13:35.35 |
| ppd This will entail us sending you a number of files, to try and see what happens, how long have you got ? | 13:36.05 |
Zet | well the semantic structure of the information seems simple enough | 13:36.14 |
| just link a few simple numbers and strings to page numbers and embed that to the file | 13:36.42 |
kens | Zet you can also jump to rectangular areas, change the zoom level and so on. | 13:37.00 |
Zet | ugh | 13:37.09 |
kens | I think you cna also embed other kinds of action. | 13:37.15 |
| Admittedly *you* case is simple, but the possibilites are more flexible | 13:37.30 |
Zet | I see | 13:37.37 |
ppd | kens, I spent like two days fighting this nasty "bug" so let's say 3 hours | 13:37.38 |
kens | ppd, Hmm.... | 13:37.46 |
| What's the quickest way to get a file to you ? | 13:37.56 |
| Given that we will need to send a lot | 13:38.07 |
| one at a time | 13:38.11 |
ppd | kens, can you upload them somewhere? | 13:38.47 |
kens | Probably. | 13:39.13 |
| Robin_Watts : do we have a public URL ? | 13:39.20 |
ppd | kens, or suggest something else. I'm flexible | 13:40.04 |
kens | I can use transferbigfiles.com if you can get to that ? | 13:40.21 |
ppd | that will do | 13:40.53 |
kens | OK this will take me a few minutes | 13:41.01 |
| ppd can you give me an email address please ? | 13:47.04 |
ppd | take max.federle@googlemail.com | 13:48.13 |
kens | OK one second | 13:48.21 |
| OK you should get a notification at that email address | 13:48.55 |
| 2 files, the first one is tiny. | 13:49.06 |
| Both 'should' produce blank pages | 13:49.13 |
ppd | ok. so I'll send them both with nc | 13:50.45 |
kens | pleae yes | 13:50.50 |
| please. | 13:50.54 |
ppd | ps2write1.ps works | 13:53.22 |
kens | THat's something of a relief. | 13:53.31 |
| THat is about the most minimal program its possible to write | 13:53.42 |
| Even simpler than a 'Hello World' | 13:53.56 |
ppd | ps2write2.ps doesn't. I'll reset the printer... | 13:54.49 |
kens | OK, so I need to chop the file in half again, be a minute | 13:55.02 |
| Next one ready, you should get a notification | 13:56.21 |
ppd | that one came out too | 13:57.43 |
kens | ps2write3.ps is OK ? | 13:57.51 |
ppd | yes | 13:57.55 |
kens | Oh, interesting. | 13:58.00 |
| OK so give me a minute while I look at the bit I chopped out. | 13:58.11 |
| OK, and another one | 13:59.36 |
| ps2wrtiet4.ps this time | 13:59.45 |
ppd | ps2writer4.ps hangs | 14:00.26 |
kens | ok. | 14:00.34 |
| ps2write5 is on the way | 14:01.41 |
| its looking like something in hte TrueType font handling code | 14:01.57 |
ppd | ps2write5.ps works | 14:02.40 |
kens | boggles slightly | 14:02.51 |
| OK give me a minute | 14:02.55 |
| ok ps2write6.ps this time | 14:04.54 |
ppd | ps2write6.ps works | 14:05.33 |
kens | huh. OK working on the next | 14:05.45 |
| OK there's ps2write7.ps | 14:07.10 |
ppd | ps2write7.ps works | 14:07.50 |
kens | sigh, OK. | 14:07.57 |
| OK ps2write8.ps we're down to 50 lines of PostScript code now, so we're making progress | 14:09.39 |
ppd | ps2write8.ps hangs | 14:10.23 |
kens | OK so its in the last 50 lines, lets just narrow it a little further | 14:10.43 |
| 2728 | 14:10.55 |
| Sorry, wrong window | 14:11.07 |
| OK this one tells us which procedure definition it doesn't like | 14:12.59 |
| ps2write9.ps | 14:13.08 |
ppd | ps2write9.ps hangs | 14:14.30 |
kens | OK thought it might | 14:14.37 |
| So I know which procedure it doesn't like. | 14:14.47 |
| Lets try 2 files this time, just a moment | 14:14.56 |
| ps2write10 and ps2write11.ps on the way | 14:16.11 |
ppd | ps2write10.ps works | 14:16.49 |
| ps2write11.ps works too | 14:17.08 |
kens | OK. So the early name binding causing immediate name evaluation causes the problem. | 14:17.29 |
ppd | does this mean you can fix it? ;-) | 14:19.10 |
kens | Probably not. | 14:19.17 |
| Or at least not easily | 14:19.23 |
| Its kind of hard to explain | 14:19.34 |
| 12&13 on the way | 14:20.11 |
ppd | nr. 12 hangs | 14:21.06 |
| nr. 13 works | 14:22.09 |
kens | Well, this is the line causing the problem: | 14:22.42 |
| "/File 1 index//MakeStreamReader exec def" | 14:22.46 |
| Because its a bound procedure it looks up 'MakeStreamReaderExec' and substittues the actual code for the name. | 14:23.29 |
| One more file to try in a moment | 14:23.48 |
Robin_Watts | tor8: back. | 14:24.39 |
kens | ppd try that one. | 14:25.42 |
ppd | nr. 14 plays the hanging game | 14:26.51 |
kens | That's unfrotunate. | 14:26.59 |
| It looks like we have probably simply overloaded the simple-minded interpreter | 14:27.23 |
Robin_Watts | kens: Stupid question, from someone who's barely literate in PS, but do you know where in that line the problem occurs? | 14:27.32 |
kens | Robin_Watts : not precisely but.... | 14:27.48 |
| If I remove the bind (so preventing early naem lookup) the problem doesnot occur | 14:28.02 |
| Which means its the replacement of //StreamReader with the actual content of the procedure *at the time of the bind* which causes the problem | 14:28.34 |
| I don't see wny prospect of fixing that in our code. It looks like a problem with the interpreter to me. | 14:29.19 |
| Given that removing the bind in the cut down case works, but in a more extensive case does not, all that happens by running unbound is that we move the problem elsewhere | 14:29.56 |
| It looks to me klike our prolog is simply too complex for this printer's tiny mind. | 14:30.18 |
| But I will talk to chrisl_away when he's not away any more. | 14:30.35 |
| ppd thanks for your efforts, I don't think there's anything more we can do right now | 14:30.47 |
Robin_Watts | tor8: So, would you like me to tackle some part of this stuff? | 14:31.04 |
| Shall I add FILE *'s to all the prints ? | 14:31.24 |
ppd | no problem. I thank you. I just want to make sure such a serious regression doesn't slip into an ubuntu lts release | 14:31.27 |
tor8 | Robin_Watts: I was looking through them, and they are missing context arguments as well | 14:31.47 |
Robin_Watts | So you'd like them all to be FILE *out, fz_context *ctx, ? | 14:32.29 |
| or the other way around ? | 14:32.39 |
tor8 | or (ctx, out, object) | 14:32.45 |
| we generally put the context as the first argument everywhere else I think | 14:33.00 |
Robin_Watts | I think I'd favour ctx, out, ... | 14:33.01 |
ppd | but if you can't "fix" it and ubuntu wants to ship cups with the filters as currently, I'll not be able to print excecpt if I compile my own cups with poppler filter | 14:33.05 |
tor8 | or did we make any exceptions? | 14:33.07 |
Robin_Watts | I am vaguely disquieted by passing ctx to 'simple' functions. | 14:33.35 |
| like when converting a bbox to a rect or doing an operation on a matrix. | 14:34.14 |
tor8 | we don't pass context arguments to functions that only take values (like rects and matrices) | 14:34.47 |
Robin_Watts | Ah, ok. | 14:35.08 |
tor8 | that's the line I drew in the sand and said, enough with the ctx contamination :) | 14:35.23 |
| it's also the reason I pass them by struct not pointer, I consider them values | 14:35.43 |
kens | Hi chrisl | 14:36.17 |
chrisl | hello k | 14:36.29 |
| en... | 14:36.34 |
kens | been looking at this Kyocera problem. | 14:36.47 |
| Have a look at the logs while I fetch a coffee.... | 14:36.58 |
chrisl | I was just reading the discussion | 14:36.59 |
kens | back, with coffee | 14:41.06 |
chrisl | Do we know if the problem is with the immediate evaluation, or with the bind? | 14:41.45 |
kens | Well.... | 14:41.58 |
| The function /StreamToArray. | 14:42.10 |
| If I put a showpage immediately after it then it never gets there | 14:42.25 |
| If I remove the bind, it does. | 14:42.31 |
| Cut the procedure down, and its the '//MakeStreamReader exec def' line that causes the problem | 14:43.06 |
chrisl | I just wonder if we could make "bind" a null op for these devices, if that would help | 14:43.19 |
kens | However, if I run the whole file, and make that prcoedure unbound, then it still hangs | 14:43.22 |
| chrisl it might. | 14:43.35 |
| ppd is still here if you want to try it. | 14:43.47 |
chrisl | I know it's yucky to do things like that, but....... | 14:44.03 |
ppd | yes. throw all stuff at me you got ;-) | 14:44.06 |
chrisl | OKay, just a sec | 14:44.18 |
kens | Hey a volunteeer, quick.... | 14:44.19 |
chrisl | ppd: Can you try this: http://www.ghostscript.com/~chrisl/ps2write-empty-no-bind.ps please? | 14:45.20 |
kens | Thinking about it, there's no real reason for these procedures to be bound anyway | 14:45.32 |
| Oh but wait. | 14:45.51 |
| Maybe there is if they are DSC files, which they are | 14:46.00 |
ppd | chrisl: that works | 14:46.11 |
kens | SO now we need to try that with a 'real' file | 14:46.24 |
| One that actually prints something | 14:46.30 |
chrisl | ppd: okay, so give me another second...... | 14:46.34 |
kens | It does pretty firmly point the finger at the bind. | 14:46.52 |
| Pretty damn poor interpreter tehse devices have. | 14:47.13 |
Robin_Watts | tor8: fz_print_text_page_xml doesn't take a ctx. | 14:48.11 |
ppd | the bigger one wasn't cheap though | 14:48.18 |
Robin_Watts | fz_print_text_page doesn't take a ctx. | 14:48.26 |
| fz_print_hash does. | 14:48.32 |
kens | ppd that really is quite annoying. | 14:48.35 |
| You would expect an expensive device to be better than that | 14:48.46 |
Robin_Watts | fz_print_outline_xml does. | 14:48.46 |
chrisl | ppd: and please try this: http://www.ghostscript.com/~chrisl/Ausgabe.ps | 14:48.57 |
ppd | kens, kind of ;-) | 14:49.03 |
tor8 | yeah, that's what I meant when I said a lot of them are missing the ctx argument. I think they all should. in the (ctx,file,object) order | 14:49.15 |
kens | chrisl I guess I could add ps2write command line switch to emit a /bind{}def before the prolog. | 14:49.44 |
ppd | chrisl: works | 14:49.45 |
Robin_Watts | Will add it. | 14:49.55 |
kens | chrisl thoughts ? | 14:49.55 |
| I think it should be safe for printing purposes | 14:50.17 |
chrisl | kens: well, unless you can think of a good reason *not* to bind | 14:50.28 |
kens | chrisl offhand no. | 14:50.37 |
| But I'm concerned with a future eps2write | 14:50.48 |
| Which I think definitely *needs* to bind | 14:50.59 |
chrisl | Why? | 14:51.14 |
kens | In case of name collisions | 14:51.20 |
| Though I suppose that's unlikely | 14:51.30 |
chrisl | But eps's should be bound by save/restores, in the real world | 14:51.52 |
kens | bounded :-) yes | 14:52.01 |
| Let me try a cluster push to see what happens | 14:52.11 |
chrisl | We should also check with tkamppeter if it's viable for him to add device specific options to the gs command line - no sense slowing down "good" devices for the sake of crappy ones! | 14:53.02 |
| tkamppeter: ping | 14:53.11 |
kens | Yes, true | 14:53.15 |
| I think that CUPS can do that. (not sure) | 14:53.35 |
chrisl | I'd like to check..... | 14:53.56 |
kens | I'm going to run a test anyway :-) | 14:54.10 |
| I presume you just did "/bind {} def" ? | 14:54.41 |
chrisl | Exactly that | 14:54.52 |
kens | OK smopke test rebuild then a push | 14:55.09 |
chrisl | Oh, actually, I bound the definition - how ironic! | 14:55.09 |
kens | ROFL | 14:55.15 |
kens | thinks that doesn't really benefit from binding | 14:55.36 |
chrisl | It was habit more than decision | 14:56.30 |
kens | OK test is running | 14:57.17 |
| should have a confidence chck in half an hour | 14:57.35 |
ppd | may I ask, as the average layman who doesn't understand a word, whether there is now a chance of a fix? almost reads like so | 14:59.23 |
kens | 'probably' | 14:59.36 |
ppd | will there be something to test for me in the near future? | 15:00.30 |
kens | Its ugly and hacky, and we'd like it only to be applied for these printers, so we'd like to know if Till cna get CUPS to only send GS a command to do this when required. | 15:00.57 |
| The problem is that it causes a performance penalty | 15:01.21 |
| Obviously that's better than no output at all :-) | 15:01.30 |
| But for printers which are happy with the (valid) code, we'd like to keep the performance up | 15:01.52 |
| Does htat make sense ppd ? | 15:02.11 |
ppd | sounds reasonable | 15:02.17 |
kens | So I'm running a sanity test now. | 15:02.47 |
| If Till will tell us whether he cna arrange pritner-specific commands to be sent to GS then I'll add a new command to allow the binding to be disables, so that files will work on these printers. | 15:03.22 |
Robin_Watts | tor8: Can we lose the indent field on fz_print_text ? | 15:03.34 |
kens | Sorry about the poor typing | 15:03.36 |
Robin_Watts | s/field/arg/ | 15:03.39 |
ppd | it just a bad coincidence that ubuntu switched the filters for a lts release | 15:03.48 |
kens | ppd Ubuntu used ot use GS, then switched to poppler because of some performance problems with Cairo PDF files. THen switched back to get colour management. | 15:04.23 |
| Nobody knew that these particular printers had this bug. | 15:04.35 |
chrisl | I wonder if cups lets the user prepend custom PS to the filter output....... | 15:04.43 |
kens | Presumably nobody with these pritners tested the printing in the beta phase | 15:04.51 |
| chrisl I wondered about that too | 15:05.11 |
chrisl | well, until we hear from tkamppeter...... | 15:06.10 |
kens | Hmm, x6 is down | 15:06.31 |
Robin_Watts | Have we changed our prologue in recent versions? | 15:06.32 |
kens | Not really, a little but not much | 15:06.45 |
chrisl | I've put a link to my hacked test file on the Ubuntu bug for the Brother printers, asking one of them to run it - but they are showing a different behaviour :-( | 15:07.15 |
kens | Hmm, different bug perhaps | 15:07.39 |
chrisl | Well, difficult to know, it was Till that made the connection, not sure why....... | 15:09.03 |
Guest88293 | Hey there | 15:09.48 |
chrisl | kens: Of course, Brother may have originally sourced their PS from the same place as Kyocera, but have a better watchdog timer setup...... | 15:10.31 |
kens | hee hee, possible | 15:10.47 |
| I thougth Brother used Enscript, but that was a &*long* time ago | 15:13.47 |
Guest88293 | Could somebody look at my parameters please? It won't work,... I'm driving mad... | 15:13.48 |
chrisl | kens: did Enscript even get up to LL2? | 15:13.50 |
kens | You'll have to list them first and explain what you mean by 'doesn't work' | 15:13.50 |
| chrisl, I don't remember :-) | 15:13.50 |
chrisl | I vaguely thought it was Level 1 + some Level 2 features - it's hard to get info now. I'm pretty sure it didn't get to Level 3, though. | 15:13.51 |
kens | I think it died before that | 15:13.51 |
chrisl | I guess Brother could have continued to develop it - IIRC, they claim Level 3 | 15:14.31 |
kens | If they had a source licence, certainly level 3 isn't that hard if you already do 2 | 15:14.53 |
chrisl | For someone experienced with Level 2 - I reckon if they bought in Level 2, they'd be looking to buy in Level 3, as well...... | 15:15.52 |
kens | They might have hired some of the developers tooo | 15:16.14 |
chrisl | True - if that were the case, I wouldn't expect them to have left a limit on the number of binds a job can do! | 15:16.49 |
kens | Who knows, the whole thing is rather weird | 15:17.08 |
chrisl | Wait and see what the Brother users say...... | 15:17.48 |
kens | Yes, there's nothgin we can do without a printer | 15:18.09 |
chrisl | The Brother one might be slightly harder to track down, as it still emits a page, but it's blank...... | 15:18.47 |
kens | Guest88293 : if you want your parameters looked at you will have to tell us what they are | 15:18.47 |
henrys | hey uk'ers do taxes and fees usually exceed the flight flying here, I'm booking my flight over there. | 15:18.54 |
| ? | 15:18.57 |
kens | yes | 15:19.03 |
| hte taxes and fess are the biggest part | 15:19.12 |
henrys | thank you. | 15:19.20 |
kens | NP :-) | 15:19.31 |
henrys | I never really noticed before the flights are actually quite reasoanable. | 15:21.27 |
Guest88293 | kens: Just found my problem thanks,.. I think the parameter Resolution Parameter makeing me trouble :) thanks at all... | 15:21.37 |
kens | 1NP Guest88293 | 15:21.53 |
chrisl | henrys: it's *very* dependent on the timing. | 15:22.09 |
kens | Which is why we hassle Miles for dates as early as possible :-) | 15:22.40 |
Guest88293 | -.- well that was not my problem,... @kens where to find an bug tracker to see if my problem is a known one...? | 15:27.01 |
kens | Guest88293 : http://bugs.ghostscript.com | 15:27.21 |
henrys | sabrina and I are making a 10 day vacation of the meeting trip. Looking forward to it. | 15:27.26 |
kens | But you may have trouble finding a match | 15:27.31 |
Guest88293 | @kens thx I'll try my best | 15:27.44 |
| @kens well I tried a very easy one... gs -sDEVICE=jpeg -sOutputFile=/root/Desktop/foo.jpg /root/Desktop/foo.ps what's wrong with that? Sry but i'm a reeeal newbie... | 15:31.58 |
kens | What error do you get ? | 15:32.15 |
Guest88293 | funny... tried the same command and now there is no error but it doesn't have the problem but now it works :) seems to be a capitol letter problem... | 15:35.41 |
Robin_Watts | tor8: Pushed | 15:35.58 |
kens | Guest88293 : everything in PostScript is case sensitive | 15:36.11 |
Robin_Watts | Sane is showing some SEGVs - investigating now. | 15:36.12 |
Guest88293 | @kens yeah thought so... where dos gs put the files ?? can's find them... | 15:36.40 |
kens | Where you told it to with -sOutputFile | 15:36.56 |
Guest88293 | @kens is there an option to do it in silence? It askes me all the time to press return... | 15:38.42 |
kens | -dBATCH -dNOPAUSE -q | 15:38.59 |
| or -o <outputfile> -q | 15:39.11 |
Guest88293 | -.- Error: /undefined in #.... | 15:40.00 |
| ..any ideas about that one? | 15:40.21 |
kens | # is not a PostScript operator | 15:40.21 |
Guest88293 | cd / | 15:40.30 |
kens | You are sending a PostScript file ? | 15:40.38 |
Guest88293 | no pdf | 15:40.43 |
kens | That's OK too | 15:40.50 |
| Start simple "gs <input file> | 15:41.39 |
Guest88293 | I'll be back in a minute will switch with the chat window to my unix maschine... | 15:43.21 |
MathiasFromDE | so | 15:44.24 |
| here i'am back | 15:44.31 |
kens | chrisl | 15:46.19 |
chrisl | kens: yes | 15:46.36 |
kens | redefinding bind resutled in 4787 files producing errors | 15:46.37 |
chrisl | Oh, crap - that really shouldn't happen....... | 15:47.00 |
kens | Essentially all the ps2write etsts | 15:47.05 |
| I guess maybe I messed that up somehow | 15:47.13 |
| Oh, I thin kI see how :-( | 15:47.26 |
| missing EOL | 15:47.38 |
kens | goes to try again | 15:47.52 |
chrisl | remember you can filter the tests so it only tests ps2write | 15:48.11 |
kens | Hmm, OK what's the magic runes for that? | 15:48.31 |
chrisl | clusterpush filter=ps2write ought to do it | 15:48.46 |
kens | Umm, we''l try | 15:49.08 |
MathiasFromDE | @kens what is >>showpage, press <return> to continue<< all about? | 15:51.45 |
kens | It means 'press return to continue' | 15:51.56 |
MathiasFromDE | ^^ okay... why is -q not working for that? | 15:52.14 |
kens | If you are running to a display device, you want to see it before it does the next page | 15:52.18 |
| -q suppresses messages, not the 'next page' prompt | 15:52.34 |
| You cna use -dNOPAUSE for that, or specify the output file using -o instead of -sOutptuFile | 15:52.53 |
ray_laptop | there is -dNOPROMPT as well, but that applies to the GS> prompt | 15:53.26 |
MathiasFromDE | but these at the biginning right? | 15:54.09 |
kens | At the beginning of what ? | 15:54.45 |
| THey go on the command line | 15:54.56 |
MathiasFromDE | sry of all parameters | 15:54.57 |
kens | Don't think it matters inthis case, but yes I usually put those first | 15:55.12 |
ray_laptop | the only order dependencies are that the options that affect rendering should precede any '-c' option or the file name to process | 15:56.15 |
MathiasFromDE | yeah that was the right place... but what is wrong on -sOutputFile=/root/Desktop/bilder/bild.jpg ? also -sOutputFile=/root/Desktop/bilder/ doesn't work because it's a pdf with 8 pages and doen't but any jpg in the folder or somewhere else... | 15:56.47 |
ray_laptop | there is a comment in the docs that the -I should precede other parameters, but I don't think it matters (as long as these precede the -c or filename) | 15:57.23 |
Robin_Watts | MathiasFromDE: For the avoidance of doubt, please paste your entire command line. | 15:57.26 |
kens | If you want one file per page then use '%d', please see the documentation in gs/doc | 15:57.29 |
MathiasFromDE | someone could recommand a good tutorial on gs? | 15:57.42 |
kens | If you are having a problem with a command line, you *must* tell us the error you get | 15:57.47 |
henrys | MathiasFromDE:all of this is pretty well documented, we usually expect folks to have read some of the documentation before asking questions. I really think you should try to find answers in the docs first then come ask engineers for help. | 15:58.02 |
ray_laptop | MathiasFromDE: there is also a FAQ work in process | 15:58.30 |
kens | chrisl if you are collecting points for the next release... | 15:58.48 |
henrys | and stackoverflow | 15:58.54 |
kens | I've changed -dPDFA from a boolean to an int, to specify the revision of PDF. Its an important change to note in teh release notes | 15:59.15 |
MathiasFromDE | @henrys okay you are right... @all welll I need to leave for now... you all where a big help for me :) thanks for that... | 15:59.28 |
| @kens thanks you have been a realy great help for me (: | 15:59.49 |
henrys | MathiasFromDE:thanks for using GS | 15:59.50 |
kens | NP | 15:59.57 |
chrisl | kens: Oh, I'll need to find somewhere to note that so I don't lose it...... | 16:00.09 |
henrys | meeting time yeah! | 16:00.16 |
kens | WHat ? Did the clocks change ? | 16:00.23 |
MathiasFromDE | @henrys is there any other solution for what we need ;) :) | 16:00.26 |
ray_laptop | kens: chrisl: I assume we will want -dPDFA by itself (or -dPDFA=true) to imply PDF/A-1 | 16:00.28 |
kens | ray_laptop : no, I can't do that | 16:00.37 |
MathiasFromDE | okay have a nice day all of you | 16:00.42 |
kens | -dPDFA=1 = PDF/A-1 | 16:00.45 |
| -dPDFA=2 = PDF/A-2 | 16:00.55 |
henrys | kens:we went to daylight saving time Sunday | 16:01.00 |
kens | default is 0 not PDF/A | 16:01.01 |
ray_laptop | kens: why can't you do that (in gs_init.ps) | 16:01.08 |
kens | is confused but happy about that | 16:01.13 |
| ray_laptop : becasue its read in put_params | 16:01.39 |
| and I want it to be an integer | 16:01.45 |
henrys | kens:so it's an hour earlier for you? | 16:01.53 |
kens | henrys yes, its only 4pm | 16:02.02 |
Robin_Watts | oh. then I told paul the wrong time. | 16:02.03 |
| I'll warn him. | 16:02.08 |
henrys | I have another meeting with paul hope it is okay. | 16:02.14 |
| what robin_watts said. | 16:02.17 |
kens | is glad not to be the only one | 16:02.17 |
ray_laptop | kens: in put params is one thing -- gs_init.ps pre-processes several of the command line options so that if the option is given without a value it can be set to 1 | 16:02.21 |
kens | ray_laptop : if you want to point me more closely at it, I'll look into it. I haven't finsihed this stuff yet | 16:02.56 |
henrys | the first item on my list was output intent mvrhel_laptop? | 16:03.01 |
ray_laptop | I thought the JS discussion was for 9:30 PDT today | 16:03.04 |
henrys | ray_laptop:right they didn't know our time changed. | 16:03.24 |
mvrhel_laptop | henrys: yes. alexcher got me a fix for the issue. I just need to apply and submit | 16:03.33 |
henrys | why the world wouldn't coordinate this activity is beyond me. | 16:03.45 |
mvrhel_laptop | should have that done in a day or two. been caught up in this tiffsep planar work | 16:04.00 |
henrys | alexcher:great and I see you fixed the luratech problem too! | 16:04.12 |
alexcher | henrys: do we want a fix for Jasper too ? | 16:04.42 |
henrys | alexcher:no | 16:05.07 |
| tor8:do we now have android posted somewhere now? | 16:05.31 |
alexcher | henrys: Can we ask Luratech for sample JPX files? We don't have tests for all cases. | 16:05.56 |
henrys | android port of mupdf. | 16:06.04 |
Robin_Watts | henrys: No. We need to rebase/merge the pg_android branch. | 16:06.25 |
henrys | alexcher:sure do you want me to ask? | 16:06.38 |
alexcher | henrys: Yes, please. | 16:07.19 |
Robin_Watts | It's no huge thing to do - we've been bashing the API into shape a bit, so there are lots of renames etc for consistency. | 16:07.22 |
ray_laptop | did we make a point about no longer supporting jasper ? (I think we want to emphasize that) | 16:07.29 |
henrys | Robin_Watts, tor8:It would be really good to get it out there. When scott gets a call having a pointer to something that works is really important for a first impression. | 16:08.18 |
Robin_Watts | henrys: I was hoping to get something up on mupdf.com that matched the 1.0 release. | 16:08.52 |
henrys | Robin_Watts:okay I guess that makes sense a segway to the next topic. | 16:09.13 |
| will mupdf 1.0 be released before the Robin_Watts vacation. | 16:09.29 |
| ? | 16:09.33 |
chrisl | ray_laptop: I mentioned we'd switched to a modified OpenJPEG, and that Jasper was still included for *this* release. | 16:09.43 |
Robin_Watts | I'm off on holiday next wednesday evening. I'd hope so. | 16:09.47 |
| I think we're in the polishing stages. | 16:10.01 |
mvrhel_laptop | Robin_Watts: is this the trip to Bhutan? | 16:10.30 |
Robin_Watts | It is. | 16:10.35 |
mvrhel_laptop | cool. taking the laptop? | 16:10.44 |
Robin_Watts | Yeah. | 16:10.50 |
mvrhel_laptop | hehe | 16:10.50 |
ray_laptop | chrisl: OK -- from henry's stmt that we don't want a fix for jasper (for the bps problem) it seems that it is already 'not supported' (which is fine with me) | 16:11.06 |
henrys | I would think an ipad would be better if your getting around on a yak. | 16:11.11 |
Robin_Watts | Apparently you have to register all electrical items at customs when you arrive. | 16:11.17 |
chrisl | ray_laptop: that comment was in the release notes for 9.05 - there is also a warning about Jasper being deprecated if the configure script spots it being used. | 16:11.53 |
Robin_Watts | Laptop, 2 cameras, 2 phones, tablet, Kindle, Hair straightner, Hair Curler, Hair volumiser... | 16:11.54 |
mvrhel_laptop | ha | 16:12.00 |
kens | tkamppeter did you see chrisl's question earlier about device-specific parameters to GS from CUPS ? | 16:12.03 |
ray_laptop | what power system do they use there ? | 16:12.17 |
Robin_Watts | AC :) | 16:12.24 |
henrys | Robin_Watts:will you have access to the internet there? | 16:12.26 |
Robin_Watts | henrys: My googling suggests yes. | 16:12.39 |
tkamppeter | kens, do you mean with the compression? | 16:12.45 |
kens | tkamppeter no | 16:12.54 |
henrys | ah the .bt addresses - never seen one of those. | 16:13.05 |
kens | We have a potential work-around for the Kyocera pritner problem | 16:13.05 |
tkamppeter | kens, is there something new, I was out up to now. | 16:13.10 |
kens | tkamppeter but we only want to activate it for those pritners. Is that possible ? | 16:13.19 |
Robin_Watts | I had something for the meeting... casper is running Karmic Koala. Which ceased being updated in the middle of last year. | 16:13.24 |
| s/updated/supported/ | 16:13.38 |
henrys | marcosw:did you notice alexcher's luratech fixed the customer can be pinged. | 16:13.51 |
Robin_Watts | I think it would be good to update casper to a more modern one (Preferably an LTS one). | 16:13.59 |
| If only so we get updates for git etc. | 16:14.06 |
marcosw | I looked at the possibility of updating casper and it doesn't look possible. The repositories no longer exist. | 16:14.26 |
henrys | Robin_Watts:sounds painful | 16:14.33 |
tkamppeter | kens, I must look into this. If it is a command line option which activates it I could acticate it by-manufacturer. | 16:14.38 |
marcosw | There is a EOL update path, but it doesn't include amazon ec2 images. | 16:14.43 |
Robin_Watts | marcosw: The link I gave yesterday - does the procedure there no longer work ? | 16:15.04 |
kens | tkamppeter we are thinking of a command line option, or if you can do it in CUPS, prepend a single line of PostScript to the file | 16:15.06 |
marcosw | Robin_Watts: correct, the repositories needed no longer exist. | 16:15.26 |
Robin_Watts | So we'd need to make a new casper and copy stuff across ? | 16:15.29 |
marcosw | yes, I've started doing that. | 16:15.36 |
Robin_Watts | ok. | 16:15.44 |
chrisl | marcosw: do the repositories no longer exist, or have they been moved? | 16:15.52 |
marcosw | I'll take this opportunity to upgrade to a 64 bit kernel. | 16:15.56 |
Robin_Watts | Supposedly, with the new way of working, such updates can happen 'in place' painlessly in future. | 16:16.26 |
marcosw | chrisl: if they've been moved it's not to the place where normally EOL repositories are moved to. | 16:16.36 |
henrys | ray_laptop:anything on the performance stuff? - I would feel better if we had a larger sampling of file types - where some were faster and others slower than the 5th gen, but whatever you think, sometimes asking for information like creates more problems. | 16:17.02 |
chrisl | marcosw: Hmm, Karmic hasn't been dead that long, it seems short sited to cut it off without an upgrade path :-( | 16:17.37 |
Robin_Watts | marcosw: http://old-releases.ubuntu.com ? | 16:17.43 |
tkamppeter | kens both will work, I could add a config file which describes workarounds/exceptions to be prepared for such things. | 16:18.07 |
henrys | Robin_Watts:can you just upgrade git? | 16:18.16 |
ray_laptop | henrys: I think that the performance problems all came from the .jp QA testing, so I don't want to 'poke the hive' | 16:18.17 |
henrys | that is the goal right? | 16:18.21 |
Robin_Watts | henrys: That's the short term goal, yes. | 16:18.35 |
kens | tkamppeter, its easier for us if you do it, but I don't knwo hwo convenient that is for you | 16:18.37 |
marcosw | Robin_Watts: yes, that's were they are, but they don't include the ec2 images. | 16:18.47 |
Robin_Watts | but how safe is it for us to be running an unsupported OS as our main server ? | 16:18.49 |
henrys | Robin_Watts:pretty easy to put something in /usr/local/ | 16:18.52 |
Robin_Watts | No security fixes for the past 12 months etc. | 16:19.15 |
henrys | Robin_Watts:sure good point | 16:19.31 |
kens | chrisl that's better, no differences from teh confidence test with /bind {} def | 16:20.05 |
chrisl | kens: phew, that's what I was expecting! | 16:20.20 |
kens | ah, actually, I don;t think that worked. | 16:20.29 |
| ran 0 tests | 16:20.34 |
| I think maybe the filter doesn' work (or needs updating) in the MingW environment | 16:20.56 |
| I#'m going to try a full run (I'm getting bored of this one) | 16:21.10 |
chrisl | Oh, damn. | 16:21.12 |
Robin_Watts | The filter just greps the filename IIRC. | 16:21.34 |
chrisl | Oh, not the device? | 16:21.47 |
tkamppeter | kens, what will I have to do? | 16:21.48 |
Robin_Watts | chrisl: Not that I can remember. | 16:21.59 |
kens | tkamppeter, if we add a command line switch, the you would need to activate it. If you can prepend PostScript, then add "/bind {} def" to the head of the file | 16:22.25 |
henrys | chrisl:any hope you are going to get free of 532 for the language-font stuff, we have been putting that off for quite some time? | 16:22.25 |
chrisl | Robin_Watts: Hmm, actually I thought the filename included the device | 16:22.38 |
henrys | anyway that was all I had for the meeting, anybody else? | 16:23.00 |
kens | has given up fancy stuff, normal test is running | 16:23.10 |
| henrys yes | 16:23.14 |
henrys | alexcher:writing luratech now. | 16:23.16 |
kens | I was looking at memory leaks with pdfwrite | 16:23.22 |
Robin_Watts | chrisl: It does, but not "ps2write" | 16:23.24 |
chrisl | henrys: the only thing I have outstanding is the crash they were seeing with the glyph/pattern/transparency fix I did, and there's not much I can do on that...... | 16:23.24 |
kens | and some of them seemed not to be in pdfwrite, but in the PCL code. | 16:23.34 |
chrisl | Robin_Watts: ah..... | 16:23.36 |
henrys | almost escaped. | 16:23.37 |
kens | So I ran a Memento test of owl, and it leaked 61 blocks totallling 2Mb of memory | 16:24.01 |
| Just 'pcl6 owl.pcl' | 16:24.16 |
henrys | kens:yes I did notice a leak with - A gstate. | 16:24.40 |
kens | That'll be a problem for me distinguishing pdfwrite leaks from PCL leaks | 16:24.41 |
tkamppeter | kens, I can add PS to the file. Where do I exactly have to add "/bind {} def" and what is this good for? | 16:24.47 |
henrys | kens:yes I did notice a leak with owl - A gstate. | 16:24.47 |
chrisl | henrys: but I have other customer issues I need to devote some time to before getting back to generalising FAPI..... | 16:25.13 |
kens | tkamppeter add it right at the top of the file. It prevents early name binding whcih reduces performance. But it makes the file work on teh Kyocera printers | 16:25.29 |
| tkamppeter or right after the %! if you wnat to be safer | 16:25.58 |
henrys | kens:yes I'll fix that. owl.pcl does have some unusual shenagins - for example I can run all the pcl tests in one invocation so there aren't severe leaks generally. | 16:26.00 |
tkamppeter | kens, chrisl has posted a test file on https://bugs.launchpad.net/ubuntu/+source/cups/+bug/950713 which seems to have "/bind {} def" in the beginning of the prolog and the users tested and are still without success. See https://bugs.launchpad.net/ubuntu/+source/cups/+bug/950713, last comments. | 16:26.31 |
kens | henrys no rush, I'm still looking into PDF/A-2, but it would be nice to only track down one set of leaks. | 16:26.36 |
henrys | kens:right you are. | 16:26.49 |
chrisl | tkamppeter: obviously the Brother printers have a different problem | 16:27.07 |
kens | tkamppeter it worked ok fior the Kyocera printer we tried it with today. You cna check the logs | 16:27.12 |
henrys | chrisl:oh I didn't realize there was more in your queue. | 16:27.14 |
chrisl | henrys: unfortunately, there is :-( | 16:27.29 |
ray_laptop | kens: to make the -dPDFA backwards compatible insert this in gs_init.ps (with the option processing near the top): | 16:28.02 |
| currentdict /PDFA known { PDFA type /booleantype eq { /PDFA 1 def } if } if | 16:28.04 |
kens | ray_laptop : can you email me that ? Or just apply the change :-) | 16:28.24 |
henrys | so let's call the meeting done. | 16:28.42 |
ray_laptop | kens: OK. I'll apply the change (after I test it to make sure I did it right) :-) | 16:28.58 |
kens | tkamppter we cna't debug the problem ourselves. All we can do is what I did with ppd eaerlier today and send files which isolate the problem. Once we have the problem isolated we can try to produce a work-around. If one of the Brother users wants to work with us we can repeat todays exercise I guess. | 16:29.39 |
| ray_laptop : thanks :-) | 16:29.45 |
henrys | Robin_Watts:did you reach paulgardiner | 16:31.10 |
| ? | 16:31.14 |
Robin_Watts | I did. | 16:31.16 |
paulgardiner | I'm here | 16:31.18 |
chrisl | kens, tkamppeter: I'll try to work with the guys on the Brother bug, see if we can narrow down that problem. | 16:31.31 |
Robin_Watts | paulgardiner: I read your mail. In future it's probably worth sending such things to tech@artifex.com cos then we all see it. | 16:31.56 |
kens | chrisl thanks also | 16:32.03 |
henrys | paulgardiner:by the way the company will be having a meeting in London beginning of May - completely optional but we'd be happy to buy you lunch and transportation costs etc. if you wanted to meet folks. | 16:32.28 |
paulgardiner | Robin_Watts; Ah yes. ta | 16:32.33 |
| henrys: Yes great. Would love to. | 16:32.51 |
ray_laptop | Robin_Watts: can you forward it ? | 16:33.14 |
Robin_Watts | will do. | 16:33.20 |
henrys | paulgardiner:reading the report now. | 16:33.47 |
Robin_Watts | ray_laptop: sent. | 16:34.06 |
henrys | is tor8 about? | 16:35.00 |
tor8 | henrys: yes. I have been sort of holding off until 1.0 to make an android package. | 16:36.24 |
henrys | tor8:okay well now we're on to the forms meeting, you have paulgardiner's email? | 16:36.58 |
ray_laptop | Robin_Watts: thanks. rec'd and read (it was short enough) | 16:38.13 |
mvrhel_laptop | wow it is snowing hard here.. | 16:38.19 |
| huge flakes | 16:38.27 |
ray_laptop | oh boy, maybe some will come our way | 16:38.43 |
mvrhel_laptop | i dont think so.... | 16:38.51 |
henrys | mvrhel_laptop:weird | 16:39.06 |
ray_laptop | last year it snowed locally pretty heavy when we went snowboarding 3/27 | 16:39.16 |
marcosw | chrisl and Robin_Watts: I may have found the ec2 kernel images; I've cloned the running casper instance and will try an update. If everything collapses into a singularity feel free to blame me. | 16:40.03 |
tor8 | okay, now I've read through it. I thought the meeting wasn't until an hour from now though? is it the daylight savings madness all over again? | 16:40.33 |
ray_laptop | paulgardiner: you seem to be focusing on the display of the form, but anything that 'dirties' the page also needs to be able to be saved | 16:40.41 |
Robin_Watts | tor8: yeah, time changed. | 16:40.46 |
ray_laptop | paulgardiner: (and others) isn't this as important ? | 16:41.14 |
Robin_Watts | ray_laptop: I believe we decided that page saving is not an immediate priority. | 16:41.23 |
chrisl | marcosw: I'll ready the particle accelerator...... :-) | 16:41.24 |
Guest18710 | NickServ gokul | 16:41.52 |
Robin_Watts | but, even if it was important, we'd probably get it for free if we're just ticking the internal PDF object representations. | 16:42.07 |
ray_laptop | I must be missing somthing. What's the point of being able to enter text into a form if all you can do is look at it on the screen ? | 16:42.13 |
Robin_Watts | ray_laptop: You want to be able to print it, and submit it. | 16:42.33 |
| (submit via http) | 16:42.47 |
Guest18710 | Hi Ray - I have a question about converting PDF to PS using Ghostscript 8.70 version. Is there any way i can use the option -c to add the Duplex Postscript command? | 16:43.01 |
paulgardiner | ray_laptop: I was mainly looking at the drive behind sinthesizing appearance streams. That was why I was focussing on display. | 16:43.11 |
ray_laptop | I agree that the internal representation can be modified -- the key is to be able to emit a PDF from the (modified) internal representation -- I thought the 'pdfwrite' fitz device was pretty bit rotted (or gone entirely) | 16:43.49 |
henrys | but I do think we are interested in saving, last time we tested google chrome can indeed save form field values. But it isn't necessary to immediately focus on that. | 16:43.51 |
Robin_Watts | ray_laptop: pdfclean already saves out from the internal representation. | 16:44.07 |
| It loads the PDF in, alters/fixes/subsets/rewrites the internal representation, then writes it out again. | 16:44.32 |
| So that may give us a route to that. | 16:44.49 |
paulgardiner | I can't imagine that, in focussing initially on display, that we'll make decisions that are bad for saving. | 16:45.10 |
ray_laptop | Robin_Watts: OK, I didn't know it loaded into internal form -- I was operating from what tor8 had said about 1 yr ago | 16:45.24 |
henrys | paulgardiner:agreed | 16:45.27 |
Robin_Watts | we wouldn't use a 'pdfwrite' style thing, as that would involve completely regenerating the pdf from the display level objects. | 16:45.52 |
| (i.e. a device that builds a new pdf from the ground up from the fz_device level would lose too much information to be useful, IMHO) | 16:46.24 |
henrys | clearly the target of emulation just appends objects to the existing pdf. | 16:47.01 |
ray_laptop | Robin_Watts: so there is a PDF internal representation that is different to the fz_device level objects | 16:47.10 |
henrys | why would we do anything different? | 16:47.11 |
marcosw | hopes he's running do-release-upgrade on the clone and not on casper | 16:47.30 |
Robin_Watts | ray_laptop: the PDF layer of mupdf navigates through PDF level objects. | 16:47.50 |
henrys | paulgardiner:so it looks like we really don't have much to talk about meeting wise do you want to wait another week? | 16:48.08 |
Robin_Watts | i.e. each object in the file has a corresponding 'in memory' representation. | 16:48.11 |
ray_laptop | and paulgardiner will be modifying the PDF level objects in order to fill in forms, then ? | 16:48.30 |
Robin_Watts | yes. When we synthesise an appearance stream, that will be written back to the PDF dictionaries 'AP' entry. | 16:49.04 |
ray_laptop | then 'refresh' the display of the page from the modified content ? | 16:49.17 |
Robin_Watts | paulgardiner: please jump in if you disagree with anything I'm saying here. | 16:49.19 |
| yes. | 16:49.21 |
| Well, refresh the annotations at least. | 16:49.29 |
paulgardiner | ray_laptop: plus the checkedness of check boxes and radio buttons also seems to be held in the PDF objects. | 16:49.50 |
| henrys: that's fine with me. My main concern is to regularly check that you are happy with the way it's going. I can carry on no problem, provided I can hassle people for info every now and then, which doesn't seem to be a problem. | 16:51.00 |
ray_laptop | Robin_Watts: annotation appearances may be 'below' (partially or totally obscured) by other content, so we probably need to play the page (at least the visible viewprot). Not likely, but possible | 16:51.04 |
Robin_Watts | ray_laptop: Urm... not sure that's true | 16:51.30 |
kens | Annotations are always on top aren't they ? | 16:51.51 |
| Because they aren't in the page stream | 16:52.07 |
Robin_Watts | All field stuff is done at the 'widget annotation' level. Annotations are (as kens said) always on top. | 16:52.17 |
paulgardiner | There can be several layers of forms sharing a position on a single page, but then the intention is that only one is made visible at any one time. | 16:52.56 |
tkamppeter | ppd, still there? | 16:53.41 |
kens | he's gone tkamppeter | 16:53.54 |
henrys | paulgardiner:I think we should call it this week, you can always post to tech if you need 6 different and contradicting opinions on what to do next ;-) But I'd like to meet again next Tuesday if the same time works for you. | 16:55.03 |
Robin_Watts | I thought we'd said wednesday was better for Paul ? | 16:55.33 |
henrys | tor8:are you good with paulgardiner's direction so far? | 16:55.36 |
| oh yea sure anyday is fine for me. | 16:55.53 |
Robin_Watts | (having said that, I'll be gone by then :) ) | 16:56.04 |
tor8 | yes. I think we're good so far, it looks like the direction we proposed last time still holds (update the annotation streams and redraw those) | 16:56.27 |
henrys | well limp along Robin_Watts | 16:56.40 |
| s/well/we'll | 16:56.56 |
tor8 | paulgardiner: how are you changing the on/off states and redrawing in your tests? | 16:56.59 |
paulgardiner | While your clocks have gone forward and ours are yet to, Tues is fine. Also Mondays are generally good. | 16:56.59 |
tkamppeter | chrisl, kens, the problems on Brother and Kyocera seems to be definitively different. As the pdftops filter of CUPS got moved out into the OpenPrinting CUPS Filters package it is under my upstream control. I will add the functionality to inject extra PostScript code depending on which printer is used. | 16:57.16 |
| chrisl, kens, thank you very much for your work with ppd on fixing the Kyocera problem. | 16:58.15 |
kens | sounds good tkamppeter, thanks, now all we need to do is figure out what the Brother bug is | 16:58.27 |
henrys | Let's do Monday 9:00 PDT | 16:58.28 |
tkamppeter | chrisl, I am looking forward for a workaround for Brother. | 16:58.34 |
chrisl | tkamppeter: working on it..... might take a bit longer, though :-( | 16:59.07 |
henrys | paulgardiner:monday Robin_Watts will still be around? | 16:59.36 |
paulgardiner | tor8: I just changed the bit where AS is looked up in AP. I instead looked up a value I knew to be an alternative in the particular file. It was just a temporary hack, 1 to see what the other appearances looked like, and 2 to confirm I was looking at the right bit of code. | 16:59.49 |
tor8 | paulgardiner: right :) | 17:00.04 |
paulgardiner | henrys: yes. Monday sounds good. | 17:00.16 |
Robin_Watts | henrys: I will. | 17:00.21 |
tor8 | we pass in a string to select different appearances for other annotations when we interpret the page (view, print, etc) but that's more of a global state | 17:00.50 |
henrys | ray_laptop, tor8? meeting time okay? | 17:00.58 |
ray_laptop | fine with me. | 17:01.24 |
Robin_Watts | tor8: That's used for OCG if memory serves. | 17:01.30 |
| (Optional Content Groups) | 17:01.39 |
tor8 | robin_watts: yeah. so some of that nests its way into the regular page interpreting. | 17:02.01 |
Robin_Watts | IIRC there are 2 different versions of that; one for the 'event' and one for the 'target'. | 17:02.06 |
henrys | kens, chrisl, and alexcher (all pdf experts) - please chime in also if you notice we are going astray. | 17:02.16 |
tor8 | henrys: okay, but I'm not too thrilled about having these meetings right in the middle of my dinner time. | 17:02.33 |
kens | is listening with half an ear | 17:02.43 |
henrys | tor8:I am okay pushing back or forward an hour, can you get through next week and then we'll change it? | 17:03.57 |
paulgardiner | earlier/later fine with me. | 17:03.58 |
henrys | paulgardiner:the status report to tech in advance (as you did this time) will make the meeting more productive. | 17:04.51 |
tor8 | an hour earlier would suit me better. I can make it through next week, but I don't want to make it a regular occurence | 17:05.14 |
paulgardiner | henrys: sure | 17:05.48 |
henrys | okay so we're good for now. | 17:06.25 |
paulgardiner | Oh hang on, sory. A quick question: | 17:08.22 |
mvrhel_laptop | alexcher: are you there? | 17:08.38 |
paulgardiner | were we imagining that the app would put a native widget over every PDF form widget, pick up pointer events via them and then pass the events to the PDF widget? | 17:09.35 |
| I wanted to think a bit about the API. | 17:10.11 |
Robin_Watts | I was imagining that only the currently focused field would have a native widget. | 17:10.35 |
mvrhel_laptop | alexcher: when you return. please ping me | 17:10.40 |
paulgardiner | I think, either we do that, or we have to send some UI events through to the library with positional info and let it decide what is hit. | 17:10.44 |
| Robin_Watts: I was thinking that too originally, but Tor earlier suggested the alternative, and I can now see some advantages. | 17:11.29 |
Robin_Watts | Yes, I was also imagining that we'd have some sort of 'the document has been clicked here - do you want to claim that, or should I handle it' type call/ | 17:11.54 |
| The lib would check to see if the point clicked was on a field - if it was, it would claim it (return true) and trigger a focus event, which would cause the app to put up a native widget. | 17:12.48 |
| if it wasn't, the app would return false ("nothing to do with me") and the app would then handle it for panning/zooming etc. | 17:13.14 |
| if it wasn't, the *lib* would return false ("nothing to do with me") and the app would then handle it for panning/zooming etc. | 17:13.25 |
paulgardiner | Yeah, I like that. But I also like the other approach in some ways to. e.g., on non-touch-screen devices mouse over could be detected at the native level, without having to send all mouse movements to the lib. | 17:13.28 |
Robin_Watts | sorry. | 17:13.29 |
paulgardiner | s/to/too/ | 17:13.41 |
ray_laptop | kens: I committed the gs_int.ps change for -dPDFA | 17:14.00 |
kens | Thanks fir that rya | 17:14.14 |
| ray | 17:14.17 |
Robin_Watts | At some level *someone* is going to have to consider 'am I mouseover any fields at the moment?'. | 17:14.27 |
| Either the app or the lib. | 17:14.37 |
paulgardiner | Yeah, but the OS can help a lot if you have native widgets over each form widget. | 17:14.57 |
Robin_Watts | If the app has to do it, then either we need a fast way to enumerate the fields and their positions, or the lib needs to have published the position of all the fields in advance to the app. | 17:15.46 |
paulgardiner | I'm not married to either, but would be good to see what Tor thinks too, in case he has some compelling reason for one or the other. | 17:15.56 |
Robin_Watts | If the app was putting native widgets over every field, then the latter would be natural. | 17:16.12 |
| but, I think your tests have established that for most things, the exact desired appearance of fields is encoded in appearance streams within the document. | 17:16.49 |
| So it would be preferable to let the document display those. | 17:17.05 |
ray_laptop | if the OS doesn't support mouseover events, then too bad, right ? | 17:17.12 |
paulgardiner | I wasn't necessarily thinking of putting anything visible over the top | 17:17.15 |
Robin_Watts | Where native fields win (as far as I am concerned) is when they display editable text fields, because that's highly OS specific. | 17:17.37 |
| Ah, I see. | 17:17.49 |
paulgardiner | ray_laptop: Yes. I'm not sure mouse over is of any real importance, but I think this affects the API, or at least the intended way to use the API. | 17:18.28 |
| Robin_Watts: Yes, definitely. | 17:18.58 |
ray_laptop | I haven't dug into the JS -- does it allow interaction for each keystroke as a text field is entered ? | 17:19.03 |
tor8 | if we're going to be using the appearance streams and synthesizing them, I think it makes most sense to have the native widgets at the latest possible stage, so basically swap it in and out when a widget gets focus | 17:19.05 |
Robin_Watts | Personally, I don't see why that approach necessarily has to use native fields as such; but it is an example of where the app might want the list of field positions published in advance. | 17:19.07 |
ray_laptop | paulgardiner: mouseover is used in PDF's for pop-up annotations | 17:19.31 |
tor8 | we want the interaction of widgets to be as native as possible, but otherwise display it as the PDF author desigers. right? | 17:19.48 |
Robin_Watts | ray_laptop: The JS gets called on every 'change' of the field, through a function called keystroke. BUT it's not really on every keystroke. | 17:19.52 |
tor8 | s/desigers/desires/ I can't type today | 17:20.04 |
Robin_Watts | If you do a paste, then you get just 1 change event. | 17:20.14 |
| If the user is on windows and does Ctrl-A to select the whole thing, the update method doesn't get called (I believe). | 17:20.38 |
| There is no way for the js to get called on cursor moves within the text field etc. | 17:20.55 |
paulgardiner | So it sounds like we are coming down on the side of a native widget just over the focussed field... and perhaps then only if it's a text field. | 17:21.22 |
tor8 | (and I apparently can't type fast enough either because robin just said what I wanted to say) | 17:21.37 |
ray_laptop | Robin_Watts: OK. so that sounds like the expectation is that a text box is handled by a native text box widget | 17:22.00 |
Robin_Watts | I'm on the side of us having a system whereby, either: | 17:22.10 |
paulgardiner | I think we may have to implement comboboxes at the native level too. The little button on the right doesn't seem to be in the appearance streams. | 17:22.38 |
Robin_Watts | 1) We have a native widget only for the focussed field (ideally on top, but maybe on some OS it might take over the whole screen) | 17:22.54 |
paulgardiner | Yes true. | 17:23.06 |
Robin_Watts | or 2) the app does a lot more work with synthesising appearance streams, thus giving us 'true' inline editing. | 17:23.32 |
| but I reckon shooting for 1) is the smart thing to start with. | 17:23.54 |
ray_laptop | Robin_Watts: but with 2) the app will be different for every GUI style | 17:24.13 |
paulgardiner | 2 is possible I believe, but yeah 1 sounds better for now. | 17:24.30 |
Robin_Watts | ray_laptop: With 1) the display will vary between apps (as the native widget will match the native devices UI). That's a good thing. | 17:24.57 |
ray_laptop | I think native widgets will make the app more 'portable' | 17:25.08 |
| Robin_Watts: yes, what I was trying to say | 17:25.27 |
Robin_Watts | With 2) the display need not vary so much (we'll always be using exactly the document fonts etc), but the editing behaviour will need to be implemented in the app on an OS by OS basis so as to give the kind of experience people expect. | 17:25.54 |
| (On unix, Ctrl-A does start of line, on windows it does select all etc) | 17:26.05 |
| 2 sounds like a lot of work for each OS. | 17:26.17 |
paulgardiner | Not that I'm arguing for actually doing 2, but I thought it was 2 that would give the most consistant look over all OSs | 17:26.19 |
kens | OK I'm off goodnight all | 17:26.27 |
ray_laptop | with (2) a lazy app implementor will be tempted to use their own 'look and feel' on all platforms and not be nice for the user | 17:26.32 |
Robin_Watts | It's nice to have it as a possibility, but not so nice for us to have to do it. | 17:26.37 |
| ray_laptop: Yes. Hence we want to offer a system where both 1 and 2 are possible. So lazy implementers will just do 1. | 17:27.17 |
paulgardiner | Ok. Shoot for 1 sounds good. | 17:28.59 |
Robin_Watts | Have I steamrollered over anyone else having a different opinion? | 17:29.20 |
paulgardiner | :-) Didn't seem that way. | 17:29.36 |
ray_laptop | crickets... | 17:29.37 |
Robin_Watts | ...cos I can back the steamroller up and try again... | 17:29.53 |
henrys | I just got back the meeting was over... | 17:30.24 |
Robin_Watts | Paul did a Columbo. | 17:30.38 |
ray_laptop | Robin_Watts: I agree with you, and think that (2) should be discouraged | 17:30.40 |
Robin_Watts | "just 1 last thing..." | 17:30.50 |
paulgardiner | :-) | 17:31.00 |
Robin_Watts | tor8: When you finish your dinner, ping me. | 17:32.09 |
tor8 | Robin_Watts: dinner is delayed (it's tuesday after all) so I'm still around | 17:32.32 |
paulgardiner | I think we started already decided on 1. It was two versions of 1 that I was concerned to choose between, and it seems that the "native widget only over the focussed field" is the way to go. | 17:32.37 |
Robin_Watts | Ah, ok. | 17:32.38 |
| tor8: Can you try sane of the HEAD vs HEAD~1 please? | 17:33.05 |
| HEAD is giving me SEGVs, and I cannot for the life of me see how. | 17:33.20 |
| I can't even see how the code I changed is getting called. | 17:33.34 |
| (This is on macos in release build) | 17:33.40 |
| macos debug works fine. | 17:33.44 |
paulgardiner | If we are done, I'm off to cook. bfn | 17:33.45 |
ray_laptop | Robin_Watts: my latest change to gs_init ??? | 17:33.45 |
Robin_Watts | windows works fine. | 17:33.49 |
| ray_laptop: mupdf :) | 17:33.54 |
ray_laptop | whew! | 17:34.03 |
henrys | paulgardiner:the obvious question what does chrome do? | 17:34.16 |
ray_laptop | I thought I saw in a previous discussion that chrome doesn't do interactive forms | 17:35.05 |
| maybe I misread it | 17:35.13 |
Robin_Watts | 2 (or a good impression of 2 using 1, I believe). | 17:35.16 |
| ray_laptop: It does. It's been evolving rapidly over the last year. | 17:35.34 |
| but it's not a full implementation. | 17:35.42 |
| (can print, submit via http, but not save, AIUI) | 17:36.02 |
ray_laptop | Robin_Watts: I see. | 17:36.13 |
henrys | tor8:have you heard from raph I didn't get anything back usually he responds slowly but I expected something by now. | 17:37.01 |
| ? | 17:37.02 |
tor8 | henrys: not a peep | 17:37.14 |
henrys | hmph | 17:38.00 |
paulgardiner | henrys: chrome gives a pretty good impression of doing inline editing. I'm not sure how it manages it. If it's using native widgets then it's matching them very accurately to the PDF's appearance. | 17:39.06 |
tor8 | paulgardiner: we should try making a sample where we use an embedded odd-looking font with only half the alphabet, and see what happens | 17:39.54 |
paulgardiner | tor8: Ah yes. I see what you are saying. I'll give that go. That should show up the native widget if it's there. | 17:41.46 |
| Nice | 17:41.57 |
| Not sure I have the tools to make one up, but maybe I can find one. | 17:44.24 |
marcosw | in theory there is a clone of casper updated to 10.04 LTS running on amazon | 17:44.56 |
Robin_Watts | paulgardiner: Find a file with an embedded font in it, and then change the table that says which glyphs are there ? | 17:45.19 |
tor8 | paulgardiner: or just pick a regular font and enter some extended latin characters | 17:45.24 |
Robin_Watts | I don't speak font format well enough to know how though. | 17:45.40 |
zanaga | chrisl: just to drop you a note that I'm one of those with Brother printing problems from LP:950713 if you need some rapid testing | 17:45.47 |
tor8 | try to enter some chinese or greek perhaps? | 17:45.55 |
Robin_Watts | paulgardiner: Do any of your forms examples have embedded fonts ? | 17:46.05 |
chrisl | zanaga: okay, cool, thanks. There's another file linked to in the bug, if you want it a whirl (should be sent to the printer with the "nc" method) | 17:47.31 |
zanaga | chrisl: yup, just ran that.. 21 is the last one | 17:48.04 |
chrisl | zanaga: and do you get the noddy text at the bottom of the page? | 17:48.38 |
| Oh, it might be off the margin.... | 17:49.12 |
zanaga | chrisl: nope.. I jus tnoticed it.. there is a "A line of Text" | 17:49.31 |
| I didn't even notice it at first =) | 17:49.40 |
chrisl | zanaga: so we have the problem! The Brother printers are choking on the currenthalftone operator! | 17:50.03 |
zanaga | nice | 17:50.52 |
chrisl | zanaga: now we have the problem of working out how to work around this....... ugh :-( | 17:51.36 |
zanaga | the easy part of figuring out the problem is over and now to the hard part :) | 17:52.08 |
chrisl | zanaga: At least we know where the problem lies, I'll need to talk this over with another developer, who's finished for the day - I'll do it tomorrow. | 17:53.41 |
zanaga | ok.. do you want me to drop a note on the bugreport that the root cause has been found? | 17:54.57 |
chrisl | I'm doing that now..... | 17:55.17 |
Robin_Watts | tor8: If I build a release build of the latest version, and run: build/release/mudraw.exe -5 ../sane/test/sumatra/1086\ -\ rlebomb.pdf | 17:56.39 |
| I get a SEGV in the final fz_catch. | 17:56.56 |
chrisl | zanaga: actually, there is one other test I'd like, if you wouldn't mind? | 17:56.59 |
Robin_Watts | And in fact all the files that fail are ones that throw an error, so I believe they are all the same problem. | 17:57.12 |
| If I comment out the lines that call fz_print_outline and fz_print_outline_xml, the problem goes away. | 17:57.44 |
| BUT... drawoutline (the function that has those calls in) IS NEVER CALLED! | 17:58.06 |
tor8 | Robin_Watts: build skew? | 17:59.41 |
| *compiling* | 17:59.53 |
Robin_Watts | compiler bug, I think. | 17:59.55 |
| Using clang it works with no problem. | 18:00.12 |
tor8 | it wouldn't be the first time, apple's compilers are notoriously buggy | 18:00.15 |
chrisl | zanaga: can you try this file: http://www.ghostscript.com/~chrisl/nearly-empty-ps2w-04.ps | 18:00.29 |
tor8 | it's valgrind clean. we could mandate use of clang on osx with the makerules, if you want to avoid adding more 'compiler bug workaround' voodoo | 18:00.53 |
| it runs valgrind clean on linux | 18:01.02 |
Robin_Watts | I can't even see how to make it compiler bug workaround. | 18:01.13 |
| I vote we ignore it, and hope it goes away. | 18:01.27 |
henrys | bbiaw | 18:02.09 |
mvrhel | alexcher | 18:02.22 |
| are you back from lunch? | 18:02.26 |
zanaga | chrisl: printing now.. now it got to 6 | 18:13.27 |
chrisl | zanaga: okay, I didn't really expect that to work - but *one* more (I hope - I have to finish real soon!): http://www.ghostscript.com/~chrisl/Ausgabe-Brother-test.ps | 18:14.45 |
zanaga | chrisl: alright.. got header and partial lines | 18:16.05 |
chrisl | zanaga: it is just an e-mail snippet - can you open in gs on screen and compare with what you got from the printer? | 18:17.33 |
zanaga | chrisl: yup, it looks like it's the last pixel row of each written line | 18:19.42 |
chrisl | Drat, this is going to be more difficult to work around than I'd hoped :-( | 18:20.32 |
| zanaga: I will talk this over tomorrow, and update the Ubuntu bug appropriately...... | 18:21.51 |
zanaga | chrisl: ok.. | 18:22.05 |
ray_laptop | zanaga: you can put the problematic PS (e.g. currenthalftone) into a 'stopped' context and just ignore errrors | 18:30.27 |
ray_laptop | speaks without knowing the exact problem PS | 18:30.44 |
chrisl | ray_laptop: it doesn't throw an error, it just ejects the page, and flushes the job | 18:30.55 |
ray_laptop | chrisl: oh, that's ugly | 18:31.23 |
chrisl | It is..... *very*! | 18:31.38 |
| zanaga: I need to finish for the day - but I have updated the bug. If you look at that, and post your findings there, I'll see them later...... | 18:33.21 |
mvrhel | alexcher? | 18:53.58 |
| Robin_Watts: you available for a quick get_bits chat | 19:00.39 |
Robin_Watts | mvrhel: sure. | 19:01.09 |
mvrhel | so, we decided that I should call get_bits_rectangle yesterday | 19:01.30 |
Robin_Watts | yes. | 19:01.45 |
mvrhel | with the proper options (planar output) | 19:01.45 |
Robin_Watts | yes. | 19:01.50 |
| tor8: I can't reproduce bug 692882. It looks like it's been reported against 0.9 - do you know if this is something that's been fixed since? | 19:02.14 |
mvrhel | the actual device has no get_bits_rectangle defined (i.e. it is gx_no_get_bits_rectangle) | 19:03.16 |
| so I thought I would call the default one. | 19:04.01 |
| which ends up calling save_get_bits_rectangle.... | 19:04.51 |
| for the clist device | 19:04.58 |
| but this is after it makes a new set of options | 19:05.07 |
| asking for chunky data... | 19:05.16 |
| :( | 19:05.19 |
Robin_Watts | Ah. OK, can you walk me through the call sequence? | 19:05.35 |
mvrhel | ok so in tiffsep_print_page, I end up doing a call to gs_default_get_bits_rectangle with the planar option | 19:06.04 |
| my options are 0x11720011 | 19:06.24 |
| this ends up in the else on line 741 in gdevdgbr.c | 19:06.53 |
| where a set of copy_options is created | 19:07.10 |
| asking for GB_PACKING_CHUNKY | 19:07.22 |
Robin_Watts | Ok, so let me walk through that function to get to there. | 19:07.28 |
mvrhel | at line 765 we end up calling save_get_bits_rectangle with this option and this calls clist_get_bits_rect_mt which will call clist_get_bits_rectangle with the CHUNKY options | 19:08.21 |
Robin_Watts | OK, so the first if at line 652 is "Are we effectively doing a get_bits call?" and of course we're not. so we end up at line 716. | 19:08.42 |
mvrhel | right | 19:09.45 |
Robin_Watts | At that point (716) we're committed to making a 1 line buffer, and reading the data into it. | 19:09.54 |
| And this code only knows about chunky stuff, so we're always going to end up giving chunky stuff back. | 19:10.20 |
mvrhel | ugh | 19:10.27 |
Robin_Watts | (or getting chunky stuff and then converting to planar). | 19:10.40 |
mvrhel | getting planar back is much nicer for a sep device | 19:11.01 |
| like tiffsep anyway | 19:11.10 |
Robin_Watts | I'm confused that the underlying device doesn't have it's own get_bits_rectangle entry. | 19:11.16 |
mvrhel | you mean tiffsep? | 19:11.30 |
Robin_Watts | In tiffsep, you call dev->get_bits_rectangle, and you end up in gx_default_get_bits_rectangle, yes? | 19:12.22 |
| What is dev->name ? | 19:12.28 |
mvrhel | no | 19:12.43 |
| dev->name is tiffsep | 19:12.50 |
Robin_Watts | no ? | 19:13.06 |
mvrhel | tifsep->proc->get_bits_rectangle is gx_no_get_bits_rectangle | 19:13.25 |
Robin_Watts | Right. | 19:13.37 |
| So, we could implement our own get_bits_rectangle. | 19:14.05 |
| for tiffsep. | 19:14.08 |
mvrhel | yes | 19:14.30 |
Robin_Watts | That would simply call the get_bits_rectangle for the underlying buffers. | 19:14.41 |
mvrhel | simply.... | 19:14.56 |
Robin_Watts | Actually, I'm confused as to how clist stuff fits into this. | 19:14.58 |
mvrhel | me too | 19:15.03 |
| I am confused about how it is getting the procs for the clist | 19:15.17 |
Robin_Watts | I would have expected us to call tiffsep->get_bits_rectangle and that would eventually have wormed its way down into clist->get_bits_rectangle. | 19:15.40 |
| We may need to ask ray here. | 19:15.53 |
mvrhel | I am also confused about save_get_bits_rectangle in the default verions of get_bits_rectangle | 19:16.15 |
| which is the one that ends up in the dlist | 19:16.21 |
| clist | 19:16.23 |
Robin_Watts | Eh? | 19:16.49 |
mvrhel | the dev at that call (line 765) is still tiffsep | 19:16.52 |
| in gdevdgbr.c | 19:17.00 |
| line 765 | 19:17.03 |
Robin_Watts | In gx_default_get_bits_rectangle, there is apparently a danger of recursion. | 19:17.08 |
mvrhel | save_get_bits_rectangle | 19:17.14 |
Robin_Watts | gx_default_get_bits_rectangle call end up calling get_bits, which might be implemented by calling get_bits_rectangle - hence infinite loop, right? | 19:17.42 |
mvrhel | hmm hold on | 19:17.45 |
Robin_Watts | So gx_get_bits_rectangle has cunning code to cope with that. | 19:17.57 |
| On entry it takes the 'get_bits_rectangle' entry, and puts it into a local variable save_get_bits_rectangle. | 19:18.31 |
mvrhel | oh | 19:18.34 |
| that is why it is no_get_bits_rectangle | 19:18.48 |
Robin_Watts | And then puts gx_no_bits_rectangle in the proc list... | 19:18.51 |
mvrhel | so it has the clist get_bits_rectangle | 19:18.56 |
| to start with | 19:18.59 |
Robin_Watts | right. and then restore it. | 19:18.59 |
mvrhel | ok so I should be doing a proc call to that one | 19:19.10 |
Robin_Watts | Right, so we do get called in clist_get_bits_rectangle ? | 19:19.15 |
mvrhel | in tiffsep | 19:19.16 |
| question for you thou | 19:19.23 |
| gh | 19:19.25 |
| ok never mind | 19:19.34 |
| let me redo this | 19:19.38 |
Robin_Watts | (Your best bet may be to breakset in the debugger, then run it and step in) | 19:19.43 |
| Then we can walk through it together. | 19:19.49 |
mvrhel | I may have answered my question | 19:19.51 |
| let me not call the default but the device proc | 19:20.01 |
| duh | 19:20.03 |
Robin_Watts | ah :) | 19:20.12 |
| Ok, the clist_get_bits_rectangle looks like it knows how to cope with planar. | 19:20.43 |
| I'd hope that should just call down to the buffer device and get you the results you need. | 19:21.03 |
tor8 | Robin_Watts: I think we always use the filename as the doc title now | 19:21.23 |
Robin_Watts | bug 692909 - comment 8 - top paragraph. Nice feedback! :) | 19:22.43 |
mvrhel | ok. now I am going from tiffsep to the clist | 19:22.47 |
| with the proper options | 19:22.50 |
Robin_Watts | (the paragraph about the speed and stability I mean) | 19:23.16 |
| cool. | 19:23.20 |
mvrhel | oh and I have the data! | 19:23.34 |
| thanks Robin_Watts | 19:23.43 |
| easy enoughy | 19:23.45 |
| enough | 19:23.48 |
Robin_Watts | woo hoo! | 19:23.49 |
mvrhel | next step is to reconstruct the cmyk raster from the planar buffers. dumping the planar buffs out to the sep files will be easy | 19:24.25 |
| lunch time now though | 19:24.42 |
Robin_Watts | This is working with >64bits ? | 19:24.44 |
mvrhel | yes | 19:24.47 |
Robin_Watts | excellent. | 19:24.51 |
mvrhel | this is a 72 bit case | 19:24.53 |
| bbiab | 19:25.52 |
Robin_Watts | tor8: Right, I can get the buffer overflow with a long filename. Will fix. | 19:28.44 |
Eddy | question, I have Win 7 64-bit with Ghostscript 9.02 files. I can't seem to get this to create a PDF. I've installed a new PDF printer using the GhostPDF.inf (9.02), create registry entry points to my Ghostscript 9.02 folder (c:\Ghostscript), it generate a .PDF with 0 KB file | 19:30.38 |
| can someone help? | 19:31.04 |
Robin_Watts | tor8: I'm just looking at bringing the android app up to data - just checking that you're not doing the same thing... | 19:49.16 |
tor8 | Robin_Watts: no, go ahead | 19:49.31 |
| I'm too tired to work any more today | 19:49.40 |
Robin_Watts | ok. | 19:49.50 |
| ugh. searching stuff all needs updated. | 19:50.51 |
| Is the ios app up to date with the new text stuff? | 19:51.09 |
tor8 | look at pdfapp.c for an example, I think the ios version is basically the same (but I haven't updated the ios yet) | 19:51.29 |
Robin_Watts | There are chartorunisms in match in the android app, but not in pdfapp.c | 19:53.26 |
| I suspect the android app is right. | 19:53.35 |
tor8 | yeah, pdfapp doesn't know about unicode (doesn't use native text widgets) | 19:58.25 |
Robin_Watts | pdfapp has a variable called page_bbox that should be page_rect. | 20:13.09 |
| (I mention it here so I don't forget it) | 20:13.23 |
| Did Alex do an openjpeg fix? Maybe we should pull that into our new thirdparty.zip | 20:20.24 |
henrys | clay pigeons - geeks with guns oh no. | 20:39.46 |
Robin_Watts | I don't know if enough people will be interested in that. | 20:42.21 |
| I mean, they may prefer to go see London :) | 20:42.31 |
| but West London Shooting School is close enough to Heathrow to be doable. | 20:42.51 |
henrys | it does sound like fun. | 20:43.15 |
| my son just got a 1939 Mosin Nagan, I went target shooting yesterday, I imagine Colorado is different, here you go to the range and folks are wandering around with AK-47's and Uzzies. | 20:45.18 |
Robin_Watts | Yeah. I shot pistols for a couple of terms at uni, and we visited Bisley (also near Heathrow) one of the biggest ranges in the UK - but there are certainly no automatic weapons here. | 20:47.42 |
| You have the right to bear arms. We have the right to avoid eye contact and tut under our breath. | 20:48.36 |
henrys | :-) | 20:49.16 |
| Actually I would like to see more gun control in the US, my son sees it otherwise. | 20:50.11 |
Robin_Watts | I kind of feel that automatic weapons don't really fit with "sport". | 20:51.41 |
| And the "home defense" thing doesn't really hold up, when more people are shot by their own weapons being used against them than successfully shoot intruders. | 20:52.43 |
| OK, paulgardiners android app updated and pushed to master. | 21:03.41 |
henrys | looks like the compile is failing | 21:40.34 |
| bbiab | 21:41.08 |
mvrhel | alexcher? | 22:47.41 |
alexcher | mvrhel: the patch works for me. Can I have the sample file that breaks it. | 23:09.10 |
mvrhel | the one that I sent you | 23:09.18 |
| with the original patch | 23:09.23 |
| alexcher ^^ | 23:09.34 |
alexcher | mvrhel: old patch has a bug. new one should be file. I'm checking again. | 23:10.23 |
mvrhel | did you try just doing -dUsePDFX3Profile | 23:10.33 |
| with your changes? | 23:10.40 |
alexcher | mvrhel: I thought I did. | 23:11.11 |
mvrhel | ok. well let me clean everything and reapply your patch again and see what I get | 23:14.43 |
alexcher | mvrhel: works for me. | 23:19.34 |
mvrhel | ok. let me retry then | 23:19.42 |
alexcher | mvrhel: You need to recompile gs or use -I option to access patched files. | 23:20.46 |
mvrhel | of course I recompile | 23:20.58 |
| of course your patch does not want to apply.... | 23:22.06 |
| format detection failed... | 23:22.20 |
| not sure what that is all about | 23:23.00 |
| ok that fixed it | 23:23.59 |
| the patch applying anyway | 23:24.04 |
| still get a rangecheck | 23:28.40 |
| let me step through and debug the issue alexcher | 23:28.48 |
| you are running the file that I sent you? | 23:28.57 |
| is there an easy debug way to find where the rangecheck is getting thown | 23:30.10 |
| # | 23:32.54 |
| huh | 23:34.00 |
alexcher | mvrhel: -Z# | 23:34.16 |
mvrhel | yes I figured that out | 23:34.22 |
| thanks | 23:34.25 |
alexcher | mvrhel: And look at the last error that propagates to the interpreter level. | 23:34.48 |
mvrhel | yes | 23:34.52 |
| hold on | 23:34.56 |
alexcher | mvrhel: Also -dESTACKPRINT | 23:35.29 |
mvrhel | what device are you going out to? | 23:36.59 |
alexcher | mvrhel: x11alpha | 23:37.35 |
mvrhel | try tiff32nc | 23:37.44 |
| something is screwed up with the tiff device it appears | 23:38.32 |
| marcos mess up line 193 | 23:39.25 |
| with commit on the march 9th | 23:39.49 |
alexcher | mvrhel: Works for me. I'm using 64-bit Linux. The picture shows no crosses. | 23:41.25 |
mvrhel | I dont quite see how this would cause a problem though but this is where I get an error | 23:41.28 |
| hmm | 23:41.37 |
| strange | 23:41.54 |
| and you are updated? | 23:42.17 |
| alexcher | 23:42.22 |
alexcher | ues | 23:42.23 |
| yes | 23:42.28 |
| Valgrind reports some problems. | 23:44.15 |
mvrhel | let me run without our option | 23:44.36 |
| ok. it still fails. | 23:44.46 |
| let me try tiger.... | 23:44.56 |
| something must be screwy with my build . let me clean and rebuild | 23:45.38 |
| are you on windows? | 23:46.12 |
alexcher | 64-bit Fedora Linux | 23:46.38 |
| gcc 4.5.1 | 23:47.25 |
mvrhel | running from a fresh build now..... | 23:48.44 |
| still fails | 23:49.01 |
| let me reset my self to head and rebuild.... | 23:49.17 |
alexcher | Invalid read of size 1 | 23:50.44 |
| ==30023== at 0x4A07487: memcpy (mc_replace_strmem.c:602) | 23:50.45 |
| ==30023== by 0x611BF5: gs_setdefaultcmykicc (gsicc_manage.c:2258) | 23:50.47 |
| ==30023== by 0x479A7B: set_default_cmyk_icc (zusparam.c:536) | 23:50.48 |
| ==30023== by 0x479FF2: setparams (zusparam.c:806) | 23:50.50 |
| ==30023== by 0x479CFD: set_user_params (zusparam.c:699) | 23:50.51 |
mvrhel | that has nothing to do with the issue that I am seeing | 23:51.02 |
| can you do a windows build and run for me to double check. just try to render tiger.eps to tiff32nc | 23:52.25 |
alexcher | Yes, it will take about 10 min. | 23:53.09 |
mvrhel | you have a pretty slow windows machine.... | 23:53.31 |
| Robin_Watts: maybe you can check this for me since you are on windows | 23:57.34 |
| it appears to me that tiff32nc is broken on windows | 23:57.48 |
| Forward 1 day (to 2012/03/14)>>> | |