Re: [webkit-dev] ARM JIT for WinCE

2010-01-08 Thread Zoltan Herczeg
Hi,

the dateProtoFuncGetTimezoneOffset does not use the argList argument,
while functionPrint does. Perhaps passing this argument is still not yet
WinCE compatible. ArgList contains a pointer to the arguments (JSValue
pointers), and the length of the arguments. This structure is 8 bytes on
32 bit machines (1 pointer, 1 int), and allocated on the stack, because
the function got a reference (pointer) to it.

Could you try the following JS code: print(a, 1, true)
The length should be 3.

Zoltan

 Hi,

 I did some further investigation today.

 I did a quick hack in the privateCompileCTIMachineTrampolines to get the
 same
 maybe correct register values like without OPTIMIZE_NATIVE_CALL.

  move(callFrameRegister, regT0);

 +move(ARMRegisters::r2, ARMRegisters::r3);
 +move(ARMRegisters::r1, ARMRegisters::r2);
 +move(ARMRegisters::r0, ARMRegisters::r1);
 -move(stackPointerRegister, ARMRegisters::r3);
 +move(stackPointerRegister, ARMRegisters::r0);
 -call(Address(regT1, OBJECT_OFFSETOF(JSFunction, m_data)));
 +call(Address(regT2, OBJECT_OFFSETOF(JSFunction, m_data)));

  addPtr(Imm32(sizeof(ArgList)), stackPointerRegister);

 Now it produces the following code:

 003E01B0  mulsr0, r3, r0
 003E01B4  subsr1, r1, r0
 003E01B8  str r1, [sp]
 003E01BC  ldr r2, [r1, #-4]
 003E01C0  ldr r1, [r4, #-8]
 003E01C4  mov r0, r4
 003E01C8  mov r3, r2
 003E01CC  mov r2, r1
 003E01D0  mov r1, r0
 003E01D4  mov r0, sp
 003E01D8  mov lr, pc
 003E01DC  ldr pc, [r2, #0x1C]
 003E01E0  addssp, sp, #8
 003E01E4  ldr r3, [pc, #0x80]
 003E01E8  ldr r2, [r3]
 003E01EC  bicsr3, r2, #0
 003E01F0  bne 003E0204

 The arguments seam to be sane now in the call to
 dateProtoFuncGetTimezoneOffset, but it crashes afterwards.
 When i step through it with the debugger i get the following register
 after
 the function finished and it jumps to 0x000139d8 instead of 0x003e01e0:
 (lr = 0x003e01e0 when i enter the function!)

 R0 = 0x182af984 R1 = 0x003f8054 R2 = 0x00601500 R3 = 0x0060
 R4 = 0x003f8054 R5 = 0x0200 R6 = 0x182af984 R7 = 0x003f8054
 R8 = 0x R9 = 0x182afbfc R10 = 0x R11 = 0x002b0370
 R12 = 0x182af8f0 Sp = 0x182af95c Lr = 0x003e01e0
 Pc = 0x000139d8 Psr = 0x201f

 I then tried to return jsNaN(exec) always. So R4 won't be used and
 prolog/epilog changed:

 00071600  mov r12, sp
 00071604  stmdb   sp!, {r0 - r3}
 00071608  stmdb   sp!, {r4, r12, lr}
 0007160C  sub sp, sp, #0x1C
 
 00071700  ldr r0, [sp, #8]
 00071704  add sp, sp, #0x1C
 00071708  ldmia   sp, {r4, sp, pc}

 changed to

 000734EC  mov r12, sp
 000734F0  stmdb   sp!, {r0 - r3}
 000734F4  stmdb   sp!, {r12, lr}
 000734F8  sub sp, sp, #0x1C
 
 000735A4  ldr r0, [sp, #8]
 000735A8  add sp, sp, #0x1C
 000735AC  ldmia   sp, {sp, pc}

 I now get following registers and it jumps to the correct address
 (0x003e01e0), but it crashes then in functionPrint.

 R0 = 0x182af984 R1 = 0x182af8f8 R2 = 0x R3 = 0x182af984
 R4 = 0x003f8080 R5 = 0x0200 R6 = 0x0060 R7 = 0x003e07c8
 R8 = 0x R9 = 0x182afbfc R10 = 0x R11 = 0x002b0370
 R12 = 0x03fc2c50 Sp = 0x182af984 Lr = 0x0001bc18
 Pc = 0x003e01e0 Psr = 0x601f

 I tried jsc.exe with the following javascript file:
 print(getTimeZoneDiff());
 function getTimeZoneDiff() {
 return (new Date(2000, 1, 1)).getTimezoneOffset();
 }

 This doesn't make many sense to me in the moment.

 - Patrick



___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] File::Spec-tmpdir() on Leopard and Snow Leopard bots

2010-01-08 Thread Andras Becsi

Hello,

  in the process of making it possible to run more than one instance of 
run-webkit-tests at the same time 
(https://bugs.webkit.org/show_bug.cgi?id=33153), I'm trying to make the 
handling of running httpd processes more platform independent.
My tries failed only on the Leopard bots. Unfortunately I have no access 
to a Leopard machine, so I had to guess, but now I have a strong 
supposition why the new script fails.
The Leopard bots (Leopard and Snow Leopard) have set something like 
this: TMPDIR=/var/folders/FF/FFsVLEwYHre8vU9Sax877k+++TI/-Tmp-/ shown in 
the bot logs 
(http://build.webkit.org/builders/SnowLeopard%20Intel%20Release%20%28Tests%29/builds/4018/steps/layout-test/logs/stdio).
My assumption is, that calling File::Spec-tmpdir() in perl returns this 
path, not /tmp as expected, that is why there is no PID file where the 
script expects it to be (httpd.conf sets it to /tmp/WebKit).
Is there any particular reason for setting a non-POSIX standard TMPDIR 
on these machines, especially because Tiger does not set this and thus 
has no problems with File::Spec-tmpdir()? Or am I wrong with my assumption?


br,
Andras
(bbandix)
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Did I break the build?

2010-01-08 Thread Tor Arne Vestbø

Eric Seidel wrote:

http://build.webkit.org/console

Will let you know.


I love the console, thanks for adding this!

tor arne

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Did I break the build?

2010-01-08 Thread Tor Arne Vestbø

Eric Seidel wrote:

The Chromium developers, notably Nicolas Sylvain added /console.
Mark Rowe is our kind BuildBot admin who updated our copy to the
latest BuildBot version including this new feature.  I was not
involved. :)


Then great thanks to both Nicolas and Mark!! :)

tor arne

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Question about PopupMenuClient

2010-01-08 Thread Kenneth Christiansen

 Maybe add a virtual like:

virtual PlatformPopupMenu platformPopupMenu() const = 0;

 to HostWindow.h ?


That is an option but I do not know if that is the purpose of HostWindow.


 Much like Qt already returns QWebPageClient for 'platformPageClient()' ?
 Maybe you can even re-use this QWebPageClient for the popup menu delegation
 too?


That was discussed, but then we would have to reimplement the method at
least twise and maybe more in the future, or totally change the scope of
that class.


 Cheers,
 Adam




-- 
Kenneth Rohde Christiansen
Technical Lead / Senior Software Engineer
Qt Labs Americas, Nokia Technology Institute, INdT
Phone  +55 81 8895 6002 / E-mail kenneth.christiansen at openbossa.org
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Question about PopupMenuClient

2010-01-08 Thread Kenneth Christiansen
Thanks for the hints. I took a look at the code, and this seems easy to
implement.

Kenneth

On Thu, Jan 7, 2010 at 7:51 PM, Darin Fisher da...@chromium.org wrote:

 Chromium actually does something like this.  See ChromeClientChromium.

 In our case, we have two modes:  one where the embedder just has to wrap
 the given PopupContainer with a window frame, and in another mode, where the
 embedder is responsible for drawing the popup menu.

 We are forced to delegate out to the embedding application because of
 Chromium's sandbox, which prevents WebKit from directly communicating with
 the native widget system (cannot directly create an HWND for example).

 In the case where the embedder only supplies framing, the popup menu is
 drawn by embedding a ScrollView.  Then, all of the drawing happens in
 WebCore.  You can see this code in PopupMenuChromium.cpp.

 -Darin



 On Thu, Jan 7, 2010 at 2:44 PM, Kenneth Christiansen 
 kenneth.christian...@openbossa.org wrote:

 Hi there,

 A co-worker of mine is implementing the ability to reimplement how popup
 menus (comboboxes) etc will appear from our Qt WebKit API.

 As these UI delegates are per page, we thought about adding a method to
 our ChromeClientQt like AbstractPopupMenu* createPopupMenu(PopupMenuClient*
 client), but currently PopupMenuClient has no access to the page so that we
 can get hold of that.

 I guess that it is not safe to assume that PopupMenuClient::hostWindow()
 is always a Chrome, so would it be acceptable substituting the
 PopupMenuClient::hostWindow()  with a PopupMenuClient::page() [1]  method
 and then change the uses to page-chrome() ?

 Cheers,
 Kenneth

 [1] easily implemented as return document()-page() instead of return
 document()-view-hostWindow()

 --
 Kenneth Rohde Christiansen
 Technical Lead / Senior Software Engineer
 Qt Labs Americas, Nokia Technology Institute, INdT
 Phone  +55 81 8895 6002 / E-mail kenneth.christiansen at openbossa.org

 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev





-- 
Kenneth Rohde Christiansen
Technical Lead / Senior Software Engineer
Qt Labs Americas, Nokia Technology Institute, INdT
Phone  +55 81 8895 6002 / E-mail kenneth.christiansen at openbossa.org
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Alexey Proskuryakov

08.01.2010, в 02:22, e...@webkit.org написал(а):

 * platform/mac/Skipped: Add http/tests/uri/escaped-entity.html to 
 Skipped list since it affects later tests.

I think that having this particular test enabled is much more important than 
having the patch it was affecting landed. Also, looks like this didn't even 
help, see http://trac.webkit.org/changeset/52990.
 * platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt: Check 
 in correct results.


This should have included pixel results.

08.01.2010, в 06:22, o...@webkit.org написал(а):

 * platform/mac-snowleopard/Skipped: 
 platform/mac/editing/input/devanagari-ligature.html skipped.

Same for this test. How will we notice regressions in text input support if we 
disable tests?

- WBR, Alexey Proskuryakov

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] File::Spec-tmpdir() on Leopard and Snow Leopard bots

2010-01-08 Thread David Kilzer
On Fri, January 8, 2010 at 12:39:41 AM, Andras Becsi wrote:

   in the process of making it possible to run more than one instance of 
 run-webkit-tests at the same time 
 (https://bugs.webkit.org/show_bug.cgi?id=33153), I'm trying to make the 
 handling 
 of running httpd processes more platform independent.
 My tries failed only on the Leopard bots. Unfortunately I have no access to a 
 Leopard machine, so I had to guess, but now I have a strong supposition why 
 the 
 new script fails.
 The Leopard bots (Leopard and Snow Leopard) have set something like this: 
 TMPDIR=/var/folders/FF/FFsVLEwYHre8vU9Sax877k+++TI/-Tmp-/ shown in the bot 
 logs 
 (http://build.webkit.org/builders/SnowLeopard%20Intel%20Release%20%28Tests%29/builds/4018/steps/layout-test/logs/stdio).
 My assumption is, that calling File::Spec-tmpdir() in perl returns this 
 path, 
 not /tmp as expected, that is why there is no PID file where the script 
 expects 
 it to be (httpd.conf sets it to /tmp/WebKit).
 Is there any particular reason for setting a non-POSIX standard TMPDIR on 
 these 
 machines, especially because Tiger does not set this and thus has no problems 
 with File::Spec-tmpdir()? Or am I wrong with my assumption?


On Leopard and newer, the tmp directory under /var/folders is a per-user tmp 
directory (IIRC), which the Perl module apparently prefers over the shared tmp 
directory at /tmp.

If you read the man page for File::Spec, tmpdir() simply returns the first 
directory in a list, and its implementation is platform-specific.  It sounds 
like this method should not be used if there is code that expects the same 
directory to be returned on every platform.

Dave

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Osztrogonac Csaba

Hi,

The r52976 revealed this strange sideeffect bug, we filed some bug on it.
We skipped these tests, because commit-queue doesn't work if one of the
core builder is red.

I don't think it is a good idea to land different, platform dependent expected
files with false data. On the one hand layout tests protect against regression
(verification) and on the other hand they test a correctness of specific feature
(validation). What is the more important? I think both of them.

I hope fixing the bug ASAP is much more important than paper over the problem
with rolling out a good and working patch which only revealed the bug.

Alexey, what do you think, if we use this new feature on the basis of
our original idea until fix? I mean it can be disabled by default, but
we can use it with --http-as-last option and/or enverionment variable.

br,
Ossy

Alexey Proskuryakov wrote:

* platform/mac/Skipped: Add http/tests/uri/escaped-entity.html to 
Skipped list since it affects later tests.


I think that having this particular test enabled is much more important 
than having the patch it was affecting landed. Also, looks like this 
didn't even help, see http://trac.webkit.org/changeset/52990.



* platform/mac-snowleopard/Skipped: 
platform/mac/editing/input/devanagari-ligature.html skipped.


Same for this test. How will we notice regressions in text input support 
if we disable tests?

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] postProgressFinishedNotification

2010-01-08 Thread Darin Adler
That’s not a question about development of WebKit. The place to ask is the 
webkit-help mailing list http://webkit.org/contact.html.

-- Darin

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Running pixel tests on build.webkit.org

2010-01-08 Thread Pam Greene
And one very quick, short-term solution:

3. Generate new pixel results to match the current behavior, and check them
in as hypothetically correct.

And of course if someone notices an existing problem and fixes it, they
check in corrected images then. It doesn't help find current problems, but
those are being missed now anyway. It does let the tests be run again
approximately immediately, even faster than waiting for test expectations
functionality, so we can catch regressions moving forward.

- Pam

On Thu, Jan 7, 2010 at 5:01 PM, Ojan Vafai o...@chromium.org wrote:

 On Thu, Jan 7, 2010 at 10:22 AM, Darin Adler da...@apple.com wrote:

 On Jan 7, 2010, at 10:19 AM, Dimitri Glazkov wrote:
  Are we planning to run pixel tests on the build bots?

 If we can get them green, we should. It’s a lot of work. We need a
 volunteer to do that work. We’ve tried before.


 Two possible long-term solutions come to mind:
 1. Turn the bots orange on pixel failures. They still need fixing, but are
 not as severe as text diff failures. I'm not a huge fan of this, but it's an
 option.
 2. Add in a concept of expected failures and only turn the bots red for
 *unexpected* failurs. More details on this below.

 In chromium-land, there's an expectations file that lists expected failures
 and allows for distinguishing different types of failures (e.g. IMAGE vs.
 TEXT). It's like Skipped lists, but doesn't necessarily skip the test.
 Fixing the expected failures still needs doing of course, but can be done
 asynchronously. The primary advantage of this approach is that we can turn
 on pixel tests, keep the bots green and avoid further regressions.

 Would something like that make sense for WebKit as a whole? To be clear, we
 would be nearly as loathe to add tests to this file as we are about adding
 them to the Skipped lists. This just provides a way forward.

 While it's true that the bots used to be red more frequently with pixel
 tests turned on, for the most part, there weren't significant pixel
 regressions. Now, if you run the pixel tests on a clean build, there are a
 number of failures and a very large number of hash-mismatches that are
 within the failure tolerance level.

 -Ojan

 For reference, the format of the expectations file is something like this:

 // Fails the image diff but not the text diff.
 fast/forms/foo.html = IMAGE

 // Fails just the text diff.
 fast/forms/bar.html = TEXT

 // Fails both the image and text diffs.
 fast/forms/baz.html = IMAGE+TEXT

 // Skips this test (e.g. because it hangs run-webkit-tests or causes other
 tests to fail).
 SKIP : fast/forms/foo1.html = IMAGE

 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Did I break the build?

2010-01-08 Thread Chris Jerdonek
 Date: Thu, 7 Jan 2010 16:21:49 -0800
 From: Eric Seidel e...@webkit.org

 http://build.webkit.org/console

 Will let you know.

If possible, it might be good to add this link to the
http://build.webkit.org/ home page.  Is it linked elsewhere?  It
doesn't look like the home page is stored in source control.

Thanks,
--Chris
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Running pixel tests on build.webkit.org

2010-01-08 Thread Jeremy Orlow
Plan 3 seems like the best (and simplest) one until the infrastructure for
the others (and/or a champion for fixing currently failing tests) is
available.

What would it take to go with plan 3?  I guess someone needs to rebaseline
everything that's currently failing, check them in, and then someone (like
bdash?) needs to flip a switch on the bots...?  Did I miss anything?

Are there instructions on how to do the rebaselining anywhere?  I've only
ever created pixel baselines for Chromium before (where we have a pretty
neat tool that pretty much does it for you).

J

On Fri, Jan 8, 2010 at 9:23 AM, Pam Greene p...@chromium.org wrote:

 And one very quick, short-term solution:

 3. Generate new pixel results to match the current behavior, and check them
 in as hypothetically correct.

 And of course if someone notices an existing problem and fixes it, they
 check in corrected images then. It doesn't help find current problems, but
 those are being missed now anyway. It does let the tests be run again
 approximately immediately, even faster than waiting for test expectations
 functionality, so we can catch regressions moving forward.

 - Pam

 On Thu, Jan 7, 2010 at 5:01 PM, Ojan Vafai o...@chromium.org wrote:

 On Thu, Jan 7, 2010 at 10:22 AM, Darin Adler da...@apple.com wrote:

 On Jan 7, 2010, at 10:19 AM, Dimitri Glazkov wrote:
  Are we planning to run pixel tests on the build bots?

 If we can get them green, we should. It’s a lot of work. We need a
 volunteer to do that work. We’ve tried before.


 Two possible long-term solutions come to mind:
 1. Turn the bots orange on pixel failures. They still need fixing, but are
 not as severe as text diff failures. I'm not a huge fan of this, but it's an
 option.
 2. Add in a concept of expected failures and only turn the bots red for
 *unexpected* failurs. More details on this below.

 In chromium-land, there's an expectations file that lists expected
 failures and allows for distinguishing different types of failures (e.g.
 IMAGE vs. TEXT). It's like Skipped lists, but doesn't necessarily skip the
 test. Fixing the expected failures still needs doing of course, but can be
 done asynchronously. The primary advantage of this approach is that we can
 turn on pixel tests, keep the bots green and avoid further regressions.

 Would something like that make sense for WebKit as a whole? To be clear,
 we would be nearly as loathe to add tests to this file as we are about
 adding them to the Skipped lists. This just provides a way forward.

 While it's true that the bots used to be red more frequently with pixel
 tests turned on, for the most part, there weren't significant pixel
 regressions. Now, if you run the pixel tests on a clean build, there are a
 number of failures and a very large number of hash-mismatches that are
 within the failure tolerance level.

 -Ojan

 For reference, the format of the expectations file is something like this:

 // Fails the image diff but not the text diff.
 fast/forms/foo.html = IMAGE

 // Fails just the text diff.
 fast/forms/bar.html = TEXT

 // Fails both the image and text diffs.
 fast/forms/baz.html = IMAGE+TEXT

 // Skips this test (e.g. because it hangs run-webkit-tests or causes other
 tests to fail).
 SKIP : fast/forms/foo1.html = IMAGE

 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev



 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Darin Adler
On Jan 8, 2010, at 8:15 AM, Osztrogonac Csaba wrote:

 I don't think it is a good idea to land different, platform dependent 
 expected files with false data.

This is where I think the difference comes in. I don’t think these different 
expected files are accurately characterized as “false data”. I believe the 
differences are not major significant ones. And by landing new results we test 
all other aspects of the test, whereas if we use Skipped files, we turn off the 
entire test.

-- Darin

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] Scrolling / redraw issue on WinCE platform

2010-01-08 Thread Jason Rukman
I'm working on a port of webKit to WinCE, and am currently encountering what 
appears to be a redraw/paint issue when scrolling (horizontally, in this case) 
to a widget that is originally partially off-screen (an input button in a 
form). The text all appears to scroll just fine, and the image of the start of 
the button (which is initially on screen) is moved correctly as well through 
the backingStore. However, when a paintButton is issued, the button appears in 
the same location on the screen post-scroll as it does pre-scroll, i.e. in the 
same position and still partially off the screen, even though the rest of the 
screen has scrolled.

I'm looking for someone that can help debug this a bit further; hopefully can 
someone point me at some places to break and look to see which values are being 
set wrong and why; or if you'd like some specific stack traces I can get those 
too.

I've tracked the code from WebView::scrollBackingStore (where the correct dx,dy 
values are being used to scroll the entire screen), through 
WebView::updateBackingStore, through paint code in RenderBlock, into 
RenderTheme and finally RenderThemeWin::paint (and subsequently paintButton). 
At this last stage, the x,y,width,height values for my  button are still 
holding their original values (positioning the button partially offscreen in 
its initial paint), which I believe is correct. drawControl in RenderThemeWin 
is called, which ends up at DrawFrameControl. However, at this point, the paint 
still positions the button incorrectly. It is interesting to note that button's 
text IS positioned correctly after the scroll, however the frame of the button 
is not. 

I've downloaded and built webkit in safari, stepped through and verified this 
code works correctly on a pc and screen coords, etc are the same, so I suspect 
the culprit is WinCE-specific code, however I've been unable to get further.

The html that produces this behavior is:

table
form id=one method=post action=/
    tr
    td
    nobr
    Much more text here 
    to offset the whole input field area and require scrolling. 
    It looks like more and more is why
    input type=submit value=Submit More Please! /
    And read this!
    /nobr 
    /td
    /tr
/form
/table

I can also send in some screen shots of the issue but I wasn't sure if this 
mailing list supported that.

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Language Bindings

2010-01-08 Thread Kevin Ollivier
Hi,

On Jan 7, 2010, at 5:15 PM, AS wrote:

 Hello
 
 I'm looking into adding bindings for Python to the webkit DOM objects. 
 
 Ideally, what I would like to create is WebKit based application that can use 
 Python for DHTML manipulation. 
 
 From the code, I can see how there are perl scripts that parse the idl files 
 and generate binding files, such as those for Javascript and Objective C, I 
 would like to add a set that does the same for Python. 
 
 From the generated files, I a bit unclear as to where the actual objects are 
 instaniated, i.e. if some jscript created a new say node, is there a table of 
 class names / ctores somewhere?
 
 Would it be possible for someone to give a quick overview of what process 
 should be followed to create a new language binding. 

The wx port actually has this capability to some degree. (Not sure if it has 
been implemented elsewhere yet.) You can check the wxPython release for Mac and 
Win (Ubuntu is coming hopefully soon) here: 

http://wxwebkit.wxcommunity.com/index.php?n=Main.Downloads

There's also a sample HTML editor app that uses DOM APIs to do all it's 
property changes. The source for it is here: 

http://eclass.svn.sourceforge.net/viewvc/eclass/trunk/htmleditor/htmleditor.py?revision=862view=markup

Some methods in that code that touch the DOM are the GetParent method (finds if 
the current selection is inside a particular tag, such as A) and 
ShowEditorForTag, which uses a pre-defined attribute list to grab the current 
value from the DOM, show an editor, and then set the user-specified value on 
the DOM element when the editor is closed.

I haven't landed the bindings yet in trunk as they are a somewhat large project 
and I'm still working on them. To create them, what I did was add a new 
bindings generator in WebCore/bindings/scripts that generated C++ bindings. (I 
based it off the CodeGeneratorCOM.pm script but I had to modify it quite a bit 
to output COM-free C++ code.) Then I used SWIG to wrap those as Python objects. 

Regards,

Kevin

 thanks
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Alexey Proskuryakov


On 08.01.2010, at 8:15, Osztrogonac Csaba wrote:

I hope fixing the bug ASAP is much more important than paper over  
the problem

with rolling out a good and working patch which only revealed the bug.


Do you have a plan for re-enabling the skipped test? The failures were  
mysterious, and it's not clear if the root cause can be promptly fixed  
- especially since no one seems to have volunteered. I'd like to get  
the tests back soon, even if that means rolling out http-as-last  
patches again.


While it's true that changing the order of test execution just  
uncovered a bug somewhere, we still want to ensure that we don't  
regress Devanagari input handling or escaped URI characters processing.


- WBR, Alexey Proskuryakov


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Eric Seidel
On Fri, Jan 8, 2010 at 7:37 AM, Alexey Proskuryakov a...@webkit.org wrote:

 * platform/mac/Skipped: Add http/tests/uri/escaped-entity.html to
 Skipped list since it affects later tests.

 I think that having this particular test enabled is much more important than
 having the patch it was affecting landed.

Agreed.  But, I think it's inexcusable for a test to affect later
results.  I skipped it more on those grounds than that the test it was
enabling was important.

 Also, looks like this didn't even
 help, see http://trac.webkit.org/changeset/52990.

Yes, it seems that either other test trigger this same bug in
webcore on Windows.  We still don't know why earlier tests are able to
cause the line box for that one SVG text run to change in size by 2
pixels.

 * platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt: Check
 in correct results.

 This should have included pixel results.
 08.01.2010, в 06:22, o...@webkit.org написал(а):

 * platform/mac-snowleopard/Skipped:
 platform/mac/editing/input/devanagari-ligature.html skipped.

 Same for this test. How will we notice regressions in text input support if
 we disable tests?

I agree, disabling tests is bad.
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Eric Seidel
Two things which could very quickly resolve this issue is if these
commands fail on their respective platforms or not:

run-webkit-tests --skipped=ignore
platform/mac/editing/input/devanagari-ligature.html

run-webkit-testsw --skipped=ignore
platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f.svg

I suspect that both will fail when run alone, suggesting that the
results currently checked in are affected by previous tests.
Using the methodology outlined in
https://bugs.webkit.org/show_bug.cgi?id=33372 it would be
straightforward for someone to find out what previous tests are
affecting these results.  That would give us a clearer picture of why
these test are failing, and bring us closer to a fixed, or a
more-appropriate set of skipped files.

It's possible to simply unskip the URL test and nothing will fail,
now.  However at some later point something may fail, since that test
has been demonstrated to cause at least one later test to fail.

-eric

On Fri, Jan 8, 2010 at 11:55 AM, Alexey Proskuryakov a...@webkit.org wrote:

 On 08.01.2010, at 8:15, Osztrogonac Csaba wrote:

 I hope fixing the bug ASAP is much more important than paper over the
 problem
 with rolling out a good and working patch which only revealed the bug.

 Do you have a plan for re-enabling the skipped test? The failures were
 mysterious, and it's not clear if the root cause can be promptly fixed -
 especially since no one seems to have volunteered. I'd like to get the tests
 back soon, even if that means rolling out http-as-last patches again.

 While it's true that changing the order of test execution just uncovered a
 bug somewhere, we still want to ensure that we don't regress Devanagari
 input handling or escaped URI characters processing.

 - WBR, Alexey Proskuryakov



___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Alexey Proskuryakov


On 08.01.2010, at 11:56, Eric Seidel wrote:

I think that having this particular test enabled is much more  
important than

having the patch it was affecting landed.


Agreed.  But, I think it's inexcusable for a test to affect later
results.  I skipped it more on those grounds than that the test it was
enabling was important.



It's not clear where the bug is though. If there is an uninitialized  
memory read in a later test, then earlier tests that randomly affect  
it can be perfectly correct. The fact that on other platforms the  
problem was not fixed support this hypothesis to some degree.


The opposite is sometimes true, as well - there were whole series of  
randomly crashing tests added to Skipped list by different persons,  
even though the fault lied with an earlier test.


As I said before, it's good when flaky tests cause pain and impede  
progress (as long as those tests are correct, of course). That's their  
way of making us investigate problems which can quickly turn into  
exploitable security bugs in shipping software otherwise.


- WBR, Alexey Proskuryakov

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] [webkit-changes] [52980] trunk/LayoutTests

2010-01-08 Thread Eric Seidel
On Fri, Jan 8, 2010 at 12:14 PM, Alexey Proskuryakov a...@webkit.org wrote:

 It's not clear where the bug is though. If there is an uninitialized memory
 read in a later test, then earlier tests that randomly affect it can be
 perfectly correct. The fact that on other platforms the problem was not
 fixed support this hypothesis to some degree.

Agreed, we don't fully understand this issue, thus things are still
broken.  They're just differently broken than they were before.

We could continue a slightly altered version of the previous
brokenness by checking in failing results.  I encouraged Ossy to skip
them instead because at least with a skipped list we have a single
list of issues to fix.  With checked in failures it's never clear
whether they're failures or not.  I'm happy with either solution if
you'd prefer checking in failing results, that's doable.

Although I think rolling out the run-webkit-tests change is OK, I
don't think it's the best solution.  We shouldn't be afraid of
re-ordering tests.  We just have to make sure we try and discover the
tests which affect other tests and properly skip them as we tried to
do here.

 As I said before, it's good when flaky tests cause pain and impede progress
 (as long as those tests are correct, of course). That's their way of making
 us investigate problems which can quickly turn into exploitable security
 bugs in shipping software otherwise.

I disagree.  I see flaky tests as no value to the project whatsoever.
The build bots are about maintaining a known good state, not about
being a todo list.  Skipped lists and bug lists should be our todo
lists.  A green bot running a few fewer tests is much more valuable
than a bot which is occasionally red but runs all the tests.  WebKit
just needs to make an effort to drive our Skipped list to zero over
time and be less scared to use it to keep the bots green.

-eric
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Running pixel tests on build.webkit.org

2010-01-08 Thread Dirk Pranke
On Thu, Jan 7, 2010 at 8:18 PM, Darin Fisher da...@chromium.org wrote:
 On Thu, Jan 7, 2010 at 5:17 PM, Ojan Vafai o...@chromium.org wrote:

 Do we really need a separate set of bots for pixel tests? Lets just turn
 the pixel tests on for the current bots. The only thing stopping us doing
 that is the currently failing tests, hence the suggestion for adding an
 expectations file (or we could skip all the failures).
 I don't know enough about text metrics changes between Mac releases. With
 Windows releases, we've been able to support XP, Vista and 7 pretty easily
 by using a generic theme for OS controls. Also, I think we have some hooks
 to turn off cleartype or something.


 ...and making sure all of the right / same fonts are installed :)
 -darin


We disable ClearType and do some minimal checking of the system UI
theme to make sure you don't have custom font or widget sizes. All of
our baselines use the fonts installed with the system, so there are no
custom fonts that need to be installed. You do need QuickTime
installed, or a few tests will fail, but otherwise it's pretty stock.

IIRC, there are far fewer diffs between Leopard and Snow Leopard than
there were between XP and Vista, so I doubt you would need the
generic theme that we did on Windows; it's probably easier to just
rebaseline the few files that do diff. I can't speak to the diffs
between Tiger and Leopard.

-- Dirk


 There are only ~10 tests that needed custom results for Vista  Windows
 7. I wonder if a similar set of steps could be taken for supporting
 different Mac releases.
 Ojan
 On Thu, Jan 7, 2010 at 5:08 PM, Eric Seidel e...@webkit.org wrote:

 I'm totally in favor of adding test_expectations.txt like
 functionality to webkit (and we'll get it for free when Dirk finishes
 up-streaming run_webkit_tests.py)

 But the troubles with the pixel tests in the past were more to do with
 text metrics changing between OS releases, and individual font
 differences between machines.  I suspect that those issues are very
 solvable.

 I think we mostly need someone willing to set up the pixel test bots.

 -eric

 On Thu, Jan 7, 2010 at 5:01 PM, Ojan Vafai o...@chromium.org wrote:
  On Thu, Jan 7, 2010 at 10:22 AM, Darin Adler da...@apple.com wrote:
 
  On Jan 7, 2010, at 10:19 AM, Dimitri Glazkov wrote:
   Are we planning to run pixel tests on the build bots?
 
  If we can get them green, we should. It’s a lot of work. We need a
  volunteer to do that work. We’ve tried before.
 
  Two possible long-term solutions come to mind:
  1. Turn the bots orange on pixel failures. They still need fixing, but
  are
  not as severe as text diff failures. I'm not a huge fan of this, but
  it's an
  option.
  2. Add in a concept of expected failures and only turn the bots red for
  *unexpected* failurs. More details on this below.
  In chromium-land, there's an expectations file that lists expected
  failures
  and allows for distinguishing different types of failures (e.g. IMAGE
  vs.
  TEXT). It's like Skipped lists, but doesn't necessarily skip the test.
  Fixing the expected failures still needs doing of course, but can be
  done
  asynchronously. The primary advantage of this approach is that we can
  turn
  on pixel tests, keep the bots green and avoid further regressions.
  Would something like that make sense for WebKit as a whole? To be
  clear, we
  would be nearly as loathe to add tests to this file as we are about
  adding
  them to the Skipped lists. This just provides a way forward.
  While it's true that the bots used to be red more frequently with pixel
  tests turned on, for the most part, there weren't significant pixel
  regressions. Now, if you run the pixel tests on a clean build, there
  are a
  number of failures and a very large number of hash-mismatches that are
  within the failure tolerance level.
  -Ojan
  For reference, the format of the expectations file is something like
  this:
  // Fails the image diff but not the text diff.
  fast/forms/foo.html = IMAGE
  // Fails just the text diff.
  fast/forms/bar.html = TEXT
  // Fails both the image and text diffs.
  fast/forms/baz.html = IMAGE+TEXT
  // Skips this test (e.g. because it hangs run-webkit-tests or causes
  other
  tests to fail).
  SKIP : fast/forms/foo1.html = IMAGE
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 


 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev



 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] how does webkit handle special layout requirement

2010-01-08 Thread Fei Wang
I am just curious how des webkit rendering engine handle the special layout 
format?

For example, I do not want to have horizontal scroll and I have a fixed width 
widnow. But inside a html page, I have a image which size is bigger than the 
fixed width, how does webkit handle that case? Can we change the some render 
info on the fly to change the layout infomation or webkit will handle it 
automatically?

BTW, where could I set the windth for the display window or those info will be 
get in the runtime from some system vairable?

Frank 
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] Status bubbles and you

2010-01-08 Thread Adam Barth
If you've been using bugs.webkit.org today, you might have noticed
some new status indicators in the attachments list.  These status
bubbles show how the patch fared when it was run through the various
review bots.  Here's what the different colors mean:

* Green.  Everything went great!  You rock!
* Red.  The patch failed.  :(  The failing bots should post a comment
explaining what went wrong.
* Yellow.  The patch is currently being processed.  If a patch is
yellow for a long time, the bot probably died while processing it
(this is rare).
* Purple.  The bot wasn't able to test your patch for some reason.

There's currently a bug that patches that don't apply cleanly to the
most recent revision (and so aren't tested by the bots) are shown in
red instead of purple.  Hopefully I have this fixed soon.

If you hover your mouse over a bubble, a tool tip will show you how
old the information is.  If you click on a bubble, you'll see more
detailed information about the patch's run, including log files for
errors.

One benefit of this new display is that the style-queue no longer
spams the bug comments with pass messages.  Instead, you can see
that a patch passed style by looking for a green bubble labeled
style.

Enjoy!
Adam
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] Upstreaming an OpenVG graphics backend

2010-01-08 Thread Jakob Petsovits
Hi list,

with help from Adam Treat, Eli Fidler, Yong Li and Genevieve Mak, I've 
implemented a graphics backend for native OpenVG. Now is (finally) the time to 
upstream that stuff, and for now I've started with two patches:
https://bugs.webkit.org/show_bug.cgi?id=33403
https://bugs.webkit.org/show_bug.cgi?id=33405

More will follow as the preceding ones are being landed.
It's still missing out on a couple of minor points - e.g. pattern fills for 
GraphicsContext, handling of system fonts, oh, and a build system for public 
demonstration - but apart from that, the backend is pretty functional and 
cross-platform by now, without adding much overhead.

I hope you like it, and hopefully I can also get plenty of reviews and general 
advice :)

Thanks, cheers,
  Jakob
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev