[chromium-dev] buildbot failure in Chromium on Chromium Builder (dbg), revision 36338

2010-01-15 Thread buildbot
Automatically closing tree for compile on Chromium Builder (dbg)

http://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder%20%28dbg%29/builds/15588

http://build.chromium.org/buildbot/waterfall/waterfall?builder=Chromium%20Builder%20%28dbg%29

--=  Automatically closing tree for compile on Chromium Builder (dbg)  =--

Revision: 36337, 36338
Blame list: a...@chromium.org

Buildbot waterfall: http://build.chromium.org/
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Re: Keyboard codes to use for a chrome extension api that enables automation?

2010-01-15 Thread Simon Stewart
I still believe that basing anything on keycode, although an obvious
thing to do, will leave lead to unnecessary fragility in the users of
this API. I understand that we ultimately will be generating
WebInputEvents, but the level of abstraction used by the API should be
a level higher than as proposed here.

I say this as a potential user of the API --- this would allow me to
significantly reduce the amount of code necessary for providing good
browser automation support for Chrome via WebDriver. With the current
suggested API, I'd have to wrap it with a large amount of additional
code to ensure it does what my users expect when the keyboard mapping
isn't a straight 104 key Windows US keyboard.

Please reconsider.

Simon

On Fri, Jan 15, 2010 at 7:27 AM, Darin Fisher da...@chromium.org wrote:
 Ultimately, I believe we'll need to generate a sequence of WebKeyboardEvent
 objects from this data.
  (See http://trac.webkit.org/browser/trunk/WebKit/chromium/public/WebInputEvent.h)
 WebKeyboardEvent is the data that we send to WebKit corresponding to a
 keyboard event.  I think it is reasonable to base the extension API on this
 structure.
 -Darin

 On Thu, Jan 14, 2010 at 7:26 AM, Dominic Mazzoni dmazz...@google.com
 wrote:

 Hi Darin,

 Erik suggested you might have some thoughts. In my proposed extension
 api for accessibility (http://codereview.chromium.org/402099) one of
 the functions is to simulate a key press. How should the client
 express the key they would like to press?  The current proposed
 function prototype is:

      {
        name: simulateKeyPress,
        type: function,
        description: Simulate pressing a key.,
        parameters: [
          {
            type: object,
            name: keyInfo,
            properties: {
              key: {type: integer, description: The code of
 the key to press, corresponding to event.keyCode.},
              control: {type: boolean, optional: true,
 description: True if the control key is down.},
              shift: {type: boolean, optional: true,
 description: True if the shift key is down.},
              alt: {type: boolean, optional: true,
 description: True if the alt key is down.}
            }
          }
        ]
      }

 What do you think?  Should the key be a keyCode? A charCode?

 Should it be cross-platform, or should it match what would be returned
 by an onKeyDown handler? Are those even mutually exclusive?

 My current thinking is: the symmetry of using the same key codes
 returned by onKeyDown is appealing. Also, even though there are some
 differences, the most common keys needed to automate the UI (tab,
 enter, arrows, alphanumerics) are already consistent across platforms.

 Thanks,
 - Dominic


 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
    http://groups.google.com/group/chromium-dev

-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Date of M5 drop?

2010-01-15 Thread PhistucK
I agree, it would be helpful, that is part of why the calendar was set up in
the first place (it seems).

☆PhistucK


On Thu, Jan 14, 2010 at 23:35, Robert Sesek rse...@chromium.org wrote:

 On Thu, Jan 14, 2010 at 4:21 PM, Peter Kasting pkast...@google.comwrote:

 On Thu, Jan 14, 2010 at 4:48 AM, OwenCM owencmo...@googlemail.comwrote:

 Hi, I've been scouring the groups and can't find the answer anywhere,
 what time scale are we looking at until the dev branch hits m5?


 If you're looking for a branch date for version 5, we don't generally
 announce those, I don't think.


 There used to be dates for M4 on the release 
 calendarhttp://dev.chromium.org/developers/calendar. There
 aren't any events for M5, though. As an external contributor, I think it'd
 be helpful to have this information available.

 rsesek / @chromium.org

 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
http://groups.google.com/group/chromium-dev

-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] How to rebuild after modifying extension_api.json?

2010-01-15 Thread Dominic Mazzoni
I've observed that after modifying extension_api.json and rebuilding
on Linux (using make via distcc), often the entire extension api
stops working, with no error message. A clean build always solves the
problem. Is there some file I need to touch after modifying
extension_api.json in order for the correct dependencies to rebuild?

I noticed that json_schema.js has a note at the top saying you should
touch renderer_resources.grd after modifying it. Is this related? How
hard would it be to make the build system handle this?

- Dominic
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] How to rebuild after modifying extension_api.json?

2010-01-15 Thread Evan Martin
On Fri, Jan 15, 2010 at 9:19 AM, Dominic Mazzoni dmazz...@google.com wrote:
 I've observed that after modifying extension_api.json and rebuilding
 on Linux (using make via distcc), often the entire extension api
 stops working, with no error message. A clean build always solves the
 problem. Is there some file I need to touch after modifying
 extension_api.json in order for the correct dependencies to rebuild?

$ git grep extension_api.json -- '*.gyp*' | wc -l
0

That is, this file is not ever mentioned to the build system.
The problem is that a .grd file uses the .json file when building but
that isn't explicitly told to gyp.
In C++ we rely on the per-platform build system to figure out they do
the same thing (an #include); for gyp we should just require people to
keep the gyp file in sync.

The place to look at fixing this is the .gyp* files where
common_resources.grd is built; it should list this .json file as an
input and it doesn't.
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] How to rebuild after modifying extension_api.json?

2010-01-15 Thread Thomas Van Lenten
Actually, it think it's sorta captured --

chrome.gyp has chrome_resources_inputs, which is created by running a script
to figure out the input from the grd files.  Looking at my xcode project,
there is a dependency on common/extensions/api/extension_api.json for the
grd files listed in chrome_resources_grds.

TVL


On Fri, Jan 15, 2010 at 12:50 PM, Evan Martin e...@chromium.org wrote:

 On Fri, Jan 15, 2010 at 9:19 AM, Dominic Mazzoni dmazz...@google.com
 wrote:
  I've observed that after modifying extension_api.json and rebuilding
  on Linux (using make via distcc), often the entire extension api
  stops working, with no error message. A clean build always solves the
  problem. Is there some file I need to touch after modifying
  extension_api.json in order for the correct dependencies to rebuild?

 $ git grep extension_api.json -- '*.gyp*' | wc -l
 0

 That is, this file is not ever mentioned to the build system.
 The problem is that a .grd file uses the .json file when building but
 that isn't explicitly told to gyp.
 In C++ we rely on the per-platform build system to figure out they do
 the same thing (an #include); for gyp we should just require people to
 keep the gyp file in sync.

 The place to look at fixing this is the .gyp* files where
 common_resources.grd is built; it should list this .json file as an
 input and it doesn't.

 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
http://groups.google.com/group/chromium-dev

-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] How to rebuild after modifying extension_api.json?

2010-01-15 Thread Evan Martin
On Fri, Jan 15, 2010 at 9:57 AM, Thomas Van Lenten
thoma...@chromium.org wrote:
 Actually, it think it's sorta captured --
 chrome.gyp has chrome_resources_inputs, which is created by running a script
 to figure out the input from the grd files.  Looking at my xcode project,
 there is a dependency on common/extensions/api/extension_api.json for the
 grd files listed in chrome_resources_grds.

I stand corrected!


In the makefile it ends up with a layer of indirection due to grit
having two outputs, so it works like this:
- gen/chrome/grit/browser_resources.h depends on the .json
- gen/chrome/browser_resources.pak depends on
gen/chrome/grit/browser_resources.h
- and then the eventual browser .pak files depend on those

I would try: build once, touch, the .json file, then build again and
see which piece is failing to rebuild.
(Also try the same but try running the build twice in a row; there are
probably still some bugs there.)
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] Two Students Looking to work on Chromium for a Semester-Long Class Project (and beyond)

2010-01-15 Thread Alex Gartrell
Hey everyone,

My name's Alex Gartrell and my friend Mark Hahnenberg and I are taking
a class at CMU called Software Engineering Practicum, and the sole
purpose of this class is to participate in a large project.  This
semester, they've opened the door to working with open source
projects, and we would really love to do work on Chrome, a browser we
both use.  For this project, we'll be offering up 20 hours a week (10
hours each) in exchange for weekly guidance from a 'client' as well as
two progress reports for our professor.  More information is available
at http://www.cs.cmu.edu/~aldrich/courses/15-413/clients.html

Experience:
- We're juniors at Carnegie Mellon and have worked our way through
many of the hard project courses, including Operating Systems
Implementation
- We both submitted patches that were accepted to Mozilla as part of
the prerequisite course to this one (So we know about dvcs, the patch
submission process, etc.)
- We both have worked as interns in industry after our Sophomore Year
(Mark at Mozilla, myself at Cisco)

We're pretty open minded as far as the actual project is concerned.
One thing that was suggested to me in the irc by rubenbb was working
with SPDY.  I'm kind of a networks geek (doing some research stuff in
that arena), so that'd be cool.  But really, anything cool would be
good.

Another thing worth noting is that I also TA'ed the prereq course last
semester and two students (one of whom actually lives with us) were
able to submit some patches that were accepted to Chromium, so we know
that people have had good experiences working with you guys, and we're
excited to continue that.

Thanks!

Alex Gartrell (agartr...@cmu.edu)
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Keyboard codes to use for a chrome extension api that enables automation?

2010-01-15 Thread Dominic Mazzoni
The problem I have with using only explicitly defined action functions
is that the whole point of simulating keyboard events is to test
whether or not the user interface is accessible using the keyboard!
(This is not just an issue for people using assistive technology like
a screen reader: there are a few things in Chrome that are impossible
to access without using a mouse now.)

I want to be able to write tests that try to edit bookmarks using the
Bookmark Manager, or change settings using the Options dialog, for
example. Having functions like selectNextBookmark() wouldn't help test
that they're actually accessible via the keyboard.

There aren't that many different keys needed for keyboard
accessibility: off the top of my head, you mostly need tab, shift-tab,
space, enter, and arrow keys - plus a few shortcuts to open a menu or
move the focus to a certain panel.  What about having functions for
each of these keys plus other actions that can be triggered via a
keyboard shortcut?

  tabToNextControl()
  tabToPreviousControl()
  pressSpaceBar()
  pressEnterKey()
  pressEscapeKey()
  arrowUp()
  arrowDown()
  arrowLeft()
  arrowRight()
  openOptionsDialog()
  openBookmarksManager()
  focusLocationBar()
  ...

Then, in order to enter text into a text box in a dialog, perhaps a
function that pastes unicode text at the current cursor position would
be much easier than trying to deal with key codes and input methods.

- Dominic

On Fri, Jan 15, 2010 at 3:24 AM, James Su su...@google.com wrote:
 Hi Nico,
   I totally agree with your point. Using fake keyboard events for
 accessibility things would lead to compatibility nightmare. We should
 consider the approach of using explicitly defined action functions rather
 than emulating keyboard events. The keyboard events approach has at least
 following unsolvable problems:
 1. Compatibility issue among different OS platforms.
 2. Compatibility issue caused by user customized shortcuts.
 3. Supports of different keyboard layouts.
 4. Supports of inputting non-Latin text.
 Regards
 James Su
 2010/1/15 Nico Weber tha...@chromium.org

 On Thu, Jan 14, 2010 at 8:37 AM, Dominic Mazzoni dmazz...@google.com
 wrote:
  On Thu, Jan 14, 2010 at 8:19 AM, Nico Weber tha...@google.com wrote:
  It probably depends if you want to use this for text input or action
  inputs. A text-to-speech extension would probably want to set unicode
  characters, while something that (say) hits cmd-f to open the find bar
  probably wants to use keycodes.
 
  Text-to-speech is a different problem; this is for actions.
 
  For example, on OS X hitting cmd-f with a hiragana keyboard layout
  opens the findbar, while just pressing f opens an IME.
 
  If you want to use this for actons, I would find it more useful to
  have a performUiAction() function instead though, since keyboard
  shortcuts are different across platforms (all mac shortcuts use cmd
  instead of ctrl for example, and the letters for a few shortcuts are
  different on OS X too for various reasons).
 
  I completely agree; I would like to add many functions along the lines
  of performUiAction. However, there are a few actions for which typing
  a key really is the right thing to do - for example pressing Tab to
  move to the next control.

 Maybe performUiAction('focusNextViewInKeyLoop')?

 (By the way, OS X has a system-level setting that configures if tab
 should focus only text fields or all controls such as buttons etc. I
 don't think Chrome/Mac honors it, but I think there are plans to
 support it. Stuff like this is surprising for a caller that sends
 tab characters, while an explicit focus next element function
 could have clearly defined semantics).

 
  There's also testing. This function will allow you to use only
  javascript to test that a particular capability can be accessed using
  only the keyboard. I'm already using this for testing this API, by
  simulating pressing Ctrl+L to focus the location bar and then checking
  to see that the proper focus event is generated.

 Some (most?) accessibility shortcuts will vary by platform too. For
 example, focus toolbar is ctrl-f5 on OS X, but only if full keyboard
 access has been enabled (ctrl-f1). Cocoa the OS X framework don't
 always trigger with synthetic keyboard events. (I'm not an a11y expert
 – Avi, comments?)

 
  So the way I look at it is: there are some great uses for this
  function. There are also things that this function could be used for
  but there'd be a better way. It could also be abused to do things that
  make no sense.
 
  I don't think that's an argument not to allow the function; I think it
  just means we should make sure it's defined properly for the intended
  use, and over time try to provide better alternatives for other
  possible uses.
 
  - Dominic
 
  Nico
 
  On Thu, Jan 14, 2010 at 7:26 AM, Dominic Mazzoni dmazz...@google.com
  wrote:
  Hi Darin,
 
  Erik suggested you might have some thoughts. In my proposed extension
  api for accessibility 

[chromium-dev] Ajax maximum response size

2010-01-15 Thread Rryk
Hello,

I am implementing 3D rendering engine for Chromium and I need to
download huge scenes via Ajax. However I've noticed that asyncronous
Ajax requests are limited to 7-8 MB in size. If I try to download more
-- tab crashes (and in --single-process-mode everything crashes in
onNoMemory function).

Synchronous requests work better -- I was able to download 100M file,
but the browser footprint in memory grew like a monster -- it took a
whole of 3GB to download a single 100M file. Interesting enough that
after downloading it it remained to take all this place. Does it make
30 copies out of it? There should be something wring with it. I am
using jQuery for ajax and the code is here http://tinypaste.com/6f7d9.
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Two Students Looking to work on Chromium for a Semester-Long Class Project (and beyond)

2010-01-15 Thread Peter Kasting
On Thu, Jan 14, 2010 at 9:54 PM, Alex Gartrell alexgartr...@gmail.comwrote:

 - We both submitted patches that were accepted to Mozilla as part of
 the prerequisite course to this one (So we know about dvcs, the patch
 submission process, etc.)


One thing to note is that Chromium uses neither a distributed VC system nor
Bugzilla, so your development process will look a little different than with
Mozilla patches.  That said, hopefully it shouldn't be hard to accommodate.


 We're pretty open minded as far as the actual project is concerned.
 One thing that was suggested to me in the irc by rubenbb was working
 with SPDY.  I'm kind of a networks geek (doing some research stuff in
 that arena), so that'd be cool.  But really, anything cool would be
 good.


Are you looking to work together on the project or separately?  And are you
looking for a single, larger task, or a lot of smaller issues?  I have a
number of smaller bugs I could throw at you but I'd only want to do that if
that's your interest :)

Your first task should be to get the code checked out, built, and perhaps
running in a debugger.  Start at http://dev.chromium.org/Home and look for
your OS of choice in the second bullet point; that should get you going.
 The majority of Chromium developers work in Windows with MSVC, but there
are healthy numbers of Mac and Linux folks too.  If you have problems, come
hang out on irc.freenode.net #chromium; that's the best place to get quick
answers.

PK
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Ajax maximum response size

2010-01-15 Thread Peter Kasting
Ever think of using Web Sockets?

PK
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] buildbot failure in Chromium on Chromium Builder, revision 36378

2010-01-15 Thread buildbot
Automatically closing tree for compile on Chromium Builder

http://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515

http://build.chromium.org/buildbot/waterfall/waterfall?builder=Chromium%20Builder

--=  Automatically closing tree for compile on Chromium Builder  =--

Revision: 36378
Blame list: jia...@chromium.org

Buildbot waterfall: http://build.chromium.org/
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] Re: buildbot failure in Chromium on Chromium Builder, revision 36378

2010-01-15 Thread Stephen White
Fix is in as of r36382; reopening.

Stephen

On Fri, Jan 15, 2010 at 1:57 PM, build...@chromium.org wrote:

  http://build.chromium.org/buildbot/waterfall/

 Automatically closing tree for compile on Chromium Builder


 http://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515

 Revision: 36378
 Blame list: jia...@chromium.org

  Chromium Builder
 Build 
 21515http://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515
 svnkill
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515/steps/shell/logs/stdio
   update
 scripts
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515/steps/shell_1/logs/stdio
 taskkill
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515/steps/shell_2/logs/stdio
 update
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515/steps/gclient/logs/stdio
 compile
 failed
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/Chromium%20Builder/builds/21515/steps/compile/logs/stdio

 Changed by: *jia...@chromium.org*
 Changed at: *Fri 15 Jan 2010 10:50:08*
 Branch: *src*
 Revision: 
 *36378*http://src.chromium.org/viewvc/chrome?view=revrevision=36378
 Changed files:

- *app/clipboard/clipboard_util_win.cc*
- *app/os_exchange_data.cc*
- *app/os_exchange_data.h*
- *app/os_exchange_data_provider_win.cc*
- *app/os_exchange_data_provider_win.h*
- *app/os_exchange_data_win_unittest.cc*
- *base/base_drag_source.cc*
- *base/base_drag_source.h*
- *base/base_drop_target.cc*
- *base/base_drop_target.h*
- *base/file_util.h*
- *base/file_util_win.cc*
- *base/message_loop_unittest.cc*
- *base/message_pump_win.cc*
- *base/message_pump_win.h*
- *chrome/browser/cocoa/download_item_mac.h*
- *chrome/browser/dom_ui/downloads_dom_handler.h*
- *chrome/browser/download/download_exe.cc*
- *chrome/browser/download/download_file.cc*
- *chrome/browser/download/download_file.h*
- *chrome/browser/download/download_manager.cc*
- *chrome/browser/download/download_manager.h*
- *chrome/browser/download/download_manager_unittest.cc*
- *chrome/browser/download/download_util.h*
- *chrome/browser/download/drag_download_file_win.cc*
- *chrome/browser/download/drag_download_file_win.h*
- *chrome/browser/download/save_package.cc*
- *chrome/browser/download/save_package.h*
- *chrome/browser/download/save_package_unittest.cc*
- *chrome/browser/gtk/download_item_gtk.h*
- *chrome/browser/history/download_types.h*
- *chrome/browser/renderer_host/download_resource_handler.cc*
- *chrome/browser/renderer_host/download_resource_handler.h*
- *chrome/browser/renderer_host/download_throttling_resource_handler.cc
*
- *chrome/browser/renderer_host/resource_dispatcher_host.cc*
- *chrome/browser/renderer_host/resource_dispatcher_host.h*
- *chrome/browser/renderer_host/resource_message_filter.cc*
- *chrome/browser/tab_contents/web_drag_source_win.cc*
- *chrome/browser/views/download_item_view.h*
- *chrome/browser/views/tab_contents/tab_contents_drag_win.cc*
- *chrome/browser/views/tab_contents/tab_contents_drag_win.h*
- *chrome/browser/views/tab_contents/tab_contents_view_win.cc*
- *chrome/browser/views/tab_contents/tab_contents_view_win.h*
- *chrome/chrome_browser.gypi*
- *chrome/common/render_messages.h*
- *chrome/test/ui_test_utils.cc*
- *webkit/glue/webdropdata.cc*
- *webkit/glue/webdropdata.h*

 Comments:

 Support dragging a virtual file out of the browser.

 BUG=none
 TEST=none

 Review URL: http://codereview.chromium.org/351029

 Properties:





-- 
All truth passes through three stages. First, it is ridiculed. Second, it is
violently opposed. Third, it is accepted as being self-evident. --
Schopenhauer
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Ajax maximum response size

2010-01-15 Thread Jeremy Orlow
Either way, it seems like these are bugs that are worthy of being filed.

Greg, any advice?

J

On Fri, Jan 15, 2010 at 10:20 AM, Rryk rryk...@gmail.com wrote:

 Hello,

 I am implementing 3D rendering engine for Chromium and I need to
 download huge scenes via Ajax. However I've noticed that asyncronous
 Ajax requests are limited to 7-8 MB in size. If I try to download more
 -- tab crashes (and in --single-process-mode everything crashes in
 onNoMemory function).

 Synchronous requests work better -- I was able to download 100M file,
 but the browser footprint in memory grew like a monster -- it took a
 whole of 3GB to download a single 100M file. Interesting enough that
 after downloading it it remained to take all this place. Does it make
 30 copies out of it? There should be something wring with it. I am
 using jQuery for ajax and the code is here http://tinypaste.com/6f7d9.

 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
http://groups.google.com/group/chromium-dev

-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Two Students Looking to work on Chromium for a Semester-Long Class Project (and beyond)

2010-01-15 Thread Jens Alfke


On Jan 15, 2010, at 10:37 AM, Peter Kasting wrote:

One thing to note is that Chromium uses neither a distributed VC  
system nor Bugzilla, so your development process will look a little  
different than with Mozilla patches.


Actually you can work on Chrome using git; it just takes a bit more  
work to get it set up, and you have to use special commands to push or  
pull. But IMHO it's worth the up-front cost.


You should probably decide beforehand whether to use git or SVN, since  
the two checkouts aren't compatible, so switching from one to the  
other requires a lengthy download.


—Jens-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Ajax maximum response size

2010-01-15 Thread Jens Alfke

On Fri, Jan 15, 2010 at 10:20 AM, Rryk rryk...@gmail.com wrote:


I am implementing 3D rendering engine for Chromium and I need to
download huge scenes via Ajax. However I've noticed that asyncronous
Ajax requests are limited to 7-8 MB in size. If I try to download more
-- tab crashes (and in --single-process-mode everything crashes in
onNoMemory function).
Synchronous requests work better -- I was able to download 100M file,
but the browser footprint in memory grew like a monster -- it took a
whole of 3GB to download a single 100M file. Interesting enough that
after downloading it it remained to take all this place. Does it make
30 copies out of it? There should be something wring with it. I am
using jQuery for ajax and the code is here http://tinypaste.com/6f7d9.


These sound like known issues with XMLHTTPRequest and tcmalloc that  
were fixed a few months ago by James Robinson. What version of Chrome  
are you using? This should be fixed in any build from December or later.


(Also, which OS? The tcmalloc issue only affected Windows, IIRC.)

—Jens-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Process Model Extension API Proposal

2010-01-15 Thread Rafael Weinstein
LGTM also.

One thought: I've seen a few requests on the crx-dev mailing list for
API capabilities for both finding out when a process has crashed and
also when it has become unresponsive. I'm unfamiliar with our code
that checks for a hung renderer. Would the process.cpu value be a
proxy for this? Would there be another way to expose it?

Also, my preference would be for avoiding adding processId to Tab and
using processes.get(tabId) instead, just for the sake of keeping the
API completely contained within the experimental namespace.

R

On Wed, Jan 13, 2010 at 2:49 PM, Erik Kay erik...@chromium.org wrote:
 On Wed, Jan 13, 2010 at 1:21 PM, Charlie Reis cr...@chromium.org wrote:

 Thanks.  I've updated the proposal doc based on suggestions from this
 discussion, including a global onUpdated event, notes about only providing
 cross-platform statistics, and adding a tabs array to each Process for the
 tabs associated with it (at least for renderer processes).
 http://docs.google.com/View?id=dhr988kp_4f76886hc
 As Aaron mentions, most of this can start out in the chrome.experimental
 namespace.  I'd like to add the processId property to Tab, which has value
 on its own without the rest of the chrome.experimental.processes module.
  (e.g., I used it to build the first example use case: a Browser Action that
 shows all the tabs sharing the current tab's process.)  Can I add that
 property to Tab directly, or should I temporarily add an experimental API to
 get a processId given a tabId?

 Yeah, unfortunately we don't have a way of adding experimental fields to
 non-experimental APIs.  In this case, I'd say processId is a relatively safe
 addition, so go for it.
 Erik


 Charlie


 On Tue, Jan 12, 2010 at 5:09 PM, Erik Kay erik...@chromium.org wrote:

 LGTM.
 I agree that you should look into the broad (global, not per-process)
 onUpdated event.  For any active monitoring extension (vs. static display),
 I would wager that this would result in a more efficient implementation than
 having them poll.
 I also agree with Aaron's answers to your open questions.
 Erik

 On Tue, Jan 12, 2010 at 1:08 PM, Charlie Reis cr...@chromium.org wrote:

 On Tue, Jan 12, 2010 at 12:44 PM, James Robinson jam...@google.com
 wrote:

 Getting this information in a cross-platform way is a huge pain (do we
 even do it properly for mac yet?), so it seems like a decent idea to let
 extensions reuse the work done rather than reimplementing everything.

 I agree.  Plus NPAPI is a really big hammer that throws out most of
 the protections that Chromium's process model and sandbox offer extensions,
 so I'd find it ironic to rely on that for people interested in data about
 the process model...


 I'd suggest having the browser fire some sort of update event to the
 extension whenever the metrics are updated rather than forcing the 
 extension
 to poll.  This is how the task manager works currently.

 - James

 I'm happy to add an onUpdated event, but I thought it might be fired too
 often to expose it as an extension event.  If we're not concerned about the
 frequency, I'll put it in the proposal.
 Charlie



 On Tue, Jan 12, 2010 at 12:38 PM, Matt Perry mpcompl...@chromium.org
 wrote:

 Would it be possible to implement the same functionality using an
 NPAPI plugin? Extensions are allowed to bundle native plugins and 
 interact
 with them from script.
 On Tue, Jan 12, 2010 at 10:48 AM, Charlie Reis cr...@chromium.org
 wrote:

 Hi folks--
   I've put together a proposal for a Chromium extensions module that
 exposes
 data about the browser's processes.  I think this could be useful for
 things
 like per-tab CPU/memory utilization graphs, custom task managers, or
 visualizing which tabs are sharing processes.
 http://docs.google.com/View?id=dhr988kp_4f76886hc
 Please let me know what you think.
 Thanks!
 Charlie Reis
 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
    http://groups.google.com/group/chromium-dev


 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
    http://groups.google.com/group/chromium-dev



 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
    http://groups.google.com/group/chromium-dev




 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
    http://groups.google.com/group/chromium-dev

-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Ajax maximum response size

2010-01-15 Thread James Robinson
On Fri, Jan 15, 2010 at 11:47 AM, Jens Alfke s...@google.com wrote:

 On Fri, Jan 15, 2010 at 10:20 AM, Rryk rryk...@gmail.com wrote:

  I am implementing 3D rendering engine for Chromium and I need to
 download huge scenes via Ajax. However I've noticed that asyncronous
 Ajax requests are limited to 7-8 MB in size. If I try to download more
 -- tab crashes (and in --single-process-mode everything crashes in
 onNoMemory function).
 Synchronous requests work better -- I was able to download 100M file,
 but the browser footprint in memory grew like a monster -- it took a
 whole of 3GB to download a single 100M file. Interesting enough that
 after downloading it it remained to take all this place. Does it make
 30 copies out of it? There should be something wring with it. I am
 using jQuery for ajax and the code is here http://tinypaste.com/6f7d9.



What version of Chromium are you using on what OS?  Given that you mentioned
3GB of memory, I'm guessing this is a 64 bit system?  What's the content of
the payload (i.e. text, binary, some special encoding)?

Synchronous requests are going to be terrible, memory wise.  The whole
thing's buffered in the browser process due to some code structure issues.
 You should not be doing this anyway - it's really bad for the users to have
the page locked up while a 100MB download occurs.

- James


 These sound like known issues with XMLHTTPRequest and tcmalloc that were
 fixed a few months ago by James Robinson. What version of Chrome are you
 using? This should be fixed in any build from December or later.

 (Also, which OS? The tcmalloc issue only affected Windows, IIRC.)

 —Jens
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Two Students Looking to work on Chromium for a Semester-Long Class Project (and beyond)

2010-01-15 Thread Pam Greene
Not to put words into Alex's mouth, but my impression from his first email
is that he and Mark are mostly looking for the weekly guidance from a
'client' piece -- i.e., a Chromium mentor for the semester. I'd gladly
volunteer, but I won't be around the whole time.

- Pam

On Fri, Jan 15, 2010 at 11:42 AM, Jens Alfke s...@google.com wrote:


 On Jan 15, 2010, at 10:37 AM, Peter Kasting wrote:

 One thing to note is that Chromium uses neither a distributed VC system nor
 Bugzilla, so your development process will look a little different than with
 Mozilla patches.


 Actually you can work on Chrome using 
 githttp://code.google.com/p/chromium/wiki/UsingGit;
 it just takes a bit more work to get it set up, and you have to use special
 commands to push or pull. But IMHO it's worth the up-front cost.

 You should probably decide beforehand whether to use git or SVN, since the
 two checkouts aren't compatible, so switching from one to the other requires
 a lengthy download.

 —Jens

 --
 Chromium Developers mailing list: chromium-dev@googlegroups.com
 View archives, change email options, or unsubscribe:
http://groups.google.com/group/chromium-dev

-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] buildbot failure in Chromium on Chromium Linux, revision 36400

2010-01-15 Thread buildbot
Automatically closing tree for compile on Chromium Linux

http://build.chromium.org/buildbot/waterfall/builders/Chromium%20Linux/builds/9132

http://build.chromium.org/buildbot/waterfall/waterfall?builder=Chromium%20Linux

--=  Automatically closing tree for compile on Chromium Linux  =--

Revision: 36394, 36395, 36396, 36397, 36398, 36399, 36400
Blame list: 
aka...@chromium.org,al...@chromium.org,avay...@google.com,hc...@chromium.org,jsc...@chromium.org,mun...@chromium.org,pi...@chromium.org

Buildbot waterfall: http://build.chromium.org/
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] Re: Two Students Looking to work on Chromium for a Semester-Long Class Project (and beyond)

2010-01-15 Thread Alex Gartrell
Pam's right in that we're looking for a 'Chromium mentor'.  This is
kind of a new idea for this school, so I guess Mark and I are kind of
refining is for the benefit of future generations or something.  The
downside (and arguably the upside) to this is that there's not really
an established way of doing anything, so we're more or less writing
the book as we go.

We were also interested to see what suggestions you had for things to
work on.  Right now, we're thinking about taking on a couple 'lay of
the land' type bugs and then hopefully doing a more non-trivial patch
later.  Of course, we're still trying to figure stuff out with our
professor right now, but we're very interested in hearing suggestions.

As far as the technical stuff, we're getting the necessary tools
together this afternoon (downloading and building the tree, getting
the appropriate IDEs, etc.).  We'll likely build for both windows 7
and OS X for right now.

Thanks for all the help and suggestions!

Alex

On Jan 15, 3:19 pm, Pam Greene p...@chromium.org wrote:
 Not to put words into Alex's mouth, but my impression from his first email
 is that he and Mark are mostly looking for the weekly guidance from a
 'client' piece -- i.e., a Chromium mentor for the semester. I'd gladly
 volunteer, but I won't be around the whole time.

 - Pam



 On Fri, Jan 15, 2010 at 11:42 AM, Jens Alfke s...@google.com wrote:

  On Jan 15, 2010, at 10:37 AM, Peter Kasting wrote:

  One thing to note is that Chromium uses neither a distributed VC system nor
  Bugzilla, so your development process will look a little different than with
  Mozilla patches.

  Actually you can work on Chrome using 
  githttp://code.google.com/p/chromium/wiki/UsingGit;
  it just takes a bit more work to get it set up, and you have to use special
  commands to push or pull. But IMHO it's worth the up-front cost.

  You should probably decide beforehand whether to use git or SVN, since the
  two checkouts aren't compatible, so switching from one to the other requires
  a lengthy download.

  —Jens

  --
  Chromium Developers mailing list: chromium-dev@googlegroups.com
  View archives, change email options, or unsubscribe:
     http://groups.google.com/group/chromium-dev
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] buildbot failure in Chromium on XP Tests, revision 36403

2010-01-15 Thread buildbot
Automatically closing tree for unit_tests on XP Tests

http://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429

http://build.chromium.org/buildbot/waterfall/waterfall?builder=XP%20Tests

--=  Automatically closing tree for unit_tests on XP Tests  =--

Revision: 36401, 36402, 36403
Blame list: a...@chromium.org,hc...@chromium.org,jhawk...@chromium.org

Buildbot waterfall: http://build.chromium.org/
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Process Model Extension API Proposal

2010-01-15 Thread Charlie Reis
On Fri, Jan 15, 2010 at 12:04 PM, Rafael Weinstein rafa...@chromium.orgwrote:

 LGTM also.

 One thought: I've seen a few requests on the crx-dev mailing list for
 API capabilities for both finding out when a process has crashed and
 also when it has become unresponsive. I'm unfamiliar with our code
 that checks for a hung renderer. Would the process.cpu value be a
 proxy for this? Would there be another way to expose it?


I have the onExited event to listen for crashed tabs.

For hung tabs, I don't think cpu is a good proxy for it.  Maybe we could add
a onHung event that fires when Chrome decides a process is unresponsive?


 Also, my preference would be for avoiding adding processId to Tab and
 using processes.get(tabId) instead, just for the sake of keeping the
 API completely contained within the experimental namespace.

 R


Darn, I was just getting ready to submit that CL for review.  :)

I'd like to still pass a process ID to the get() method, so that it can be
useful for browser, plugin, and renderer processes as well.  Maybe
chrome.experimental.processes.getProcessId(tabId), with the expectation that
it will be removed when processId is later added to Tab?

Charlie





 On Wed, Jan 13, 2010 at 2:49 PM, Erik Kay erik...@chromium.org wrote:
  On Wed, Jan 13, 2010 at 1:21 PM, Charlie Reis cr...@chromium.org
 wrote:
 
  Thanks.  I've updated the proposal doc based on suggestions from this
  discussion, including a global onUpdated event, notes about only
 providing
  cross-platform statistics, and adding a tabs array to each Process for
 the
  tabs associated with it (at least for renderer processes).
  http://docs.google.com/View?id=dhr988kp_4f76886hc
  As Aaron mentions, most of this can start out in the chrome.experimental
  namespace.  I'd like to add the processId property to Tab, which has
 value
  on its own without the rest of the chrome.experimental.processes module.
   (e.g., I used it to build the first example use case: a Browser Action
 that
  shows all the tabs sharing the current tab's process.)  Can I add that
  property to Tab directly, or should I temporarily add an experimental
 API to
  get a processId given a tabId?
 
  Yeah, unfortunately we don't have a way of adding experimental fields to
  non-experimental APIs.  In this case, I'd say processId is a relatively
 safe
  addition, so go for it.
  Erik
 
 
  Charlie
 
 
  On Tue, Jan 12, 2010 at 5:09 PM, Erik Kay erik...@chromium.org wrote:
 
  LGTM.
  I agree that you should look into the broad (global, not per-process)
  onUpdated event.  For any active monitoring extension (vs. static
 display),
  I would wager that this would result in a more efficient implementation
 than
  having them poll.
  I also agree with Aaron's answers to your open questions.
  Erik
 
  On Tue, Jan 12, 2010 at 1:08 PM, Charlie Reis cr...@chromium.org
 wrote:
 
  On Tue, Jan 12, 2010 at 12:44 PM, James Robinson jam...@google.com
  wrote:
 
  Getting this information in a cross-platform way is a huge pain (do
 we
  even do it properly for mac yet?), so it seems like a decent idea to
 let
  extensions reuse the work done rather than reimplementing everything.
 
  I agree.  Plus NPAPI is a really big hammer that throws out most of
  the protections that Chromium's process model and sandbox offer
 extensions,
  so I'd find it ironic to rely on that for people interested in data
 about
  the process model...
 
 
  I'd suggest having the browser fire some sort of update event to the
  extension whenever the metrics are updated rather than forcing the
 extension
  to poll.  This is how the task manager works currently.
 
  - James
 
  I'm happy to add an onUpdated event, but I thought it might be fired
 too
  often to expose it as an extension event.  If we're not concerned
 about the
  frequency, I'll put it in the proposal.
  Charlie
 
 
 
  On Tue, Jan 12, 2010 at 12:38 PM, Matt Perry 
 mpcompl...@chromium.org
  wrote:
 
  Would it be possible to implement the same functionality using an
  NPAPI plugin? Extensions are allowed to bundle native plugins and
 interact
  with them from script.
  On Tue, Jan 12, 2010 at 10:48 AM, Charlie Reis cr...@chromium.org
  wrote:
 
  Hi folks--
I've put together a proposal for a Chromium extensions module
 that
  exposes
  data about the browser's processes.  I think this could be useful
 for
  things
  like per-tab CPU/memory utilization graphs, custom task managers,
 or
  visualizing which tabs are sharing processes.
  http://docs.google.com/View?id=dhr988kp_4f76886hc
  Please let me know what you think.
  Thanks!
  Charlie Reis
  --
  Chromium Developers mailing list: chromium-dev@googlegroups.com
  View archives, change email options, or unsubscribe:
 http://groups.google.com/group/chromium-dev
 
 
  --
  Chromium Developers mailing list: chromium-dev@googlegroups.com
  View archives, change email options, or unsubscribe:
 http://groups.google.com/group/chromium-dev
 
 
 
  --
  Chromium Developers 

[chromium-dev] Re: buildbot failure in Chromium on XP Tests, revision 36403

2010-01-15 Thread Stephen White
XP Tests clobbered due to .grd changes; should cycle green.  Tree reopened
as of r36407.

Stephen

On Fri, Jan 15, 2010 at 4:21 PM, build...@chromium.org wrote:

  http://build.chromium.org/buildbot/waterfall/

 Automatically closing tree for unit_tests on XP Tests


 http://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429

 Revision: 36401, 36402, 36403
 Blame list: a...@chromium.org,hc...@chromium.org,jhawk...@chromium.org

  XP Tests
 Build 
 16429http://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429
 svnkill
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/shell/logs/stdio
   update
 scripts
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/shell_1/logs/stdio
 taskkill
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/shell_2/logs/stdio
 update
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/gclient/logs/stdio
   extract
 build
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/extract%20build/logs/stdio
   Start
 Crash Handler
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/Start%20Crash%20Handler/logs/stdio
 ipc_tests
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/ipc_tests/logs/stdio
 installer_util_unittests
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/installer_util_unittests/logs/stdio
 mini_installer_test
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/mini_installer_test/logs/stdio
 sync_unit_tests
 1 disabled
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/sync_unit_tests/logs/stdio
 unit_tests
 15 disabled
 1 flaky
 failed 1
 stdiohttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/unit_tests/logs/stdio
 TestDownloadFilenamehttp://build.chromium.org/buildbot/waterfall/builders/XP%20Tests/builds/16429/steps/unit_tests/logs/TestDownloadFilename

 Changed by: *hc...@chromium.org*
 Changed at: *Fri 15 Jan 2010 12:48:30*
 Branch: *src*
 Revision: 
 *36401*http://src.chromium.org/viewvc/chrome?view=revrevision=36401
 Changed files:

- *media/omx/omx_test.cc*

 Comments:

 Fix build caused by omx_test

 TBR=scherkus

 Initialize struct variables by memset()ing them.

 Review URL: http://codereview.chromium.org/552017

 Properties:


  Changed by: *jhawk...@chromium.org*
 Changed at: *Fri 15 Jan 2010 12:58:48*
 Branch: *src*
 Revision: 
 *36402*http://src.chromium.org/viewvc/chrome?view=revrevision=36402
 Changed files:

- *chrome/app/generated_resources.grd*
- *chrome/app/resources/locale_settings.grd*
- *chrome/browser/autofill/autofill_dialog_gtk.cc*
- *chrome/browser/gtk/bookmark_manager_gtk.cc*
- *chrome/browser/gtk/clear_browsing_data_dialog_gtk.cc*
- *chrome/browser/gtk/create_application_shortcuts_dialog_gtk.cc*
- *chrome/browser/gtk/first_run_dialog.cc*
- *chrome/browser/gtk/import_dialog_gtk.cc*
- *chrome/browser/gtk/keyword_editor_view.cc*
- *chrome/browser/gtk/options/passwords_exceptions_window_gtk.cc*
- *chrome/browser/gtk/options/url_picker_dialog_gtk.cc*
- *chrome/common/gtk_util.cc*
- *chrome/common/gtk_util.h*

 Comments:

 Simplify the gtk AutoFill dialog and bring it more in line with the mocks.

 BUG=none
 TEST=none
 Review URL: http://codereview.chromium.org/551034

 Properties:


  Changed by: *a...@chromium.org*
 Changed at: *Fri 15 Jan 2010 12:59:18*
 Branch: *src*
 Revision: 
 *36403*http://src.chromium.org/viewvc/chrome?view=revrevision=36403
 Changed files:

- *chrome_frame/crash_reporting/crash_report.cc*
- *chrome_frame/crash_reporting/crash_report.h*
- *chrome_frame/crash_reporting/crash_reporting.gyp*
- *chrome_frame/crash_reporting/vectored_handler-impl.h*
- *chrome_frame/crash_reporting/vectored_handler.h*
- *chrome_frame/crash_reporting/vectored_handler_unittest.cc*

 Comments:

 Suppress crash dump generation due to IsBadXXX functions.

 IsBad[Read/Write]Ptr etc functions cause access violations
 which we catch and take crash dump if we are on stack. Adding
 code to suppress these false positives.

 BUG=none
 TEST=added new tests cases to ChromeFrame.ExceptionReport

 Review URL: http://codereview.chromium.org/536073

 Properties:





-- 
All truth passes through three stages. First, it is ridiculed. Second, it is
violently opposed. Third, it is accepted as being self-evident. --
Schopenhauer
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Process Model Extension API Proposal

2010-01-15 Thread Rafael Weinstein
On Fri, Jan 15, 2010 at 1:27 PM, Charlie Reis cr...@chromium.org wrote:


 On Fri, Jan 15, 2010 at 12:04 PM, Rafael Weinstein rafa...@chromium.org
 wrote:

 LGTM also.

 One thought: I've seen a few requests on the crx-dev mailing list for
 API capabilities for both finding out when a process has crashed and
 also when it has become unresponsive. I'm unfamiliar with our code
 that checks for a hung renderer. Would the process.cpu value be a
 proxy for this? Would there be another way to expose it?

 I have the onExited event to listen for crashed tabs.
 For hung tabs, I don't think cpu is a good proxy for it.  Maybe we could add
 a onHung event that fires when Chrome decides a process is unresponsive?

Sounds good.


 Also, my preference would be for avoiding adding processId to Tab and
 using processes.get(tabId) instead, just for the sake of keeping the
 API completely contained within the experimental namespace.

 R

 Darn, I was just getting ready to submit that CL for review.  :)
 I'd like to still pass a process ID to the get() method, so that it can be
 useful for browser, plugin, and renderer processes as well.  Maybe
 chrome.experimental.processes.getProcessId(tabId), with the expectation that
 it will be removed when processId is later added to Tab?
 Charlie

Sorry, I didn't noticed that get() was taking a processId (duh).

Sound good. Or even getProcessForTab(tabId), just because it's most
likely you'll just turn around and call processes.get() on the result
of getProcessId()




 On Wed, Jan 13, 2010 at 2:49 PM, Erik Kay erik...@chromium.org wrote:
  On Wed, Jan 13, 2010 at 1:21 PM, Charlie Reis cr...@chromium.org
  wrote:
 
  Thanks.  I've updated the proposal doc based on suggestions from this
  discussion, including a global onUpdated event, notes about only
  providing
  cross-platform statistics, and adding a tabs array to each Process for
  the
  tabs associated with it (at least for renderer processes).
  http://docs.google.com/View?id=dhr988kp_4f76886hc
  As Aaron mentions, most of this can start out in the
  chrome.experimental
  namespace.  I'd like to add the processId property to Tab, which has
  value
  on its own without the rest of the chrome.experimental.processes
  module.
   (e.g., I used it to build the first example use case: a Browser Action
  that
  shows all the tabs sharing the current tab's process.)  Can I add that
  property to Tab directly, or should I temporarily add an experimental
  API to
  get a processId given a tabId?
 
  Yeah, unfortunately we don't have a way of adding experimental fields to
  non-experimental APIs.  In this case, I'd say processId is a relatively
  safe
  addition, so go for it.
  Erik
 
 
  Charlie
 
 
  On Tue, Jan 12, 2010 at 5:09 PM, Erik Kay erik...@chromium.org wrote:
 
  LGTM.
  I agree that you should look into the broad (global, not per-process)
  onUpdated event.  For any active monitoring extension (vs. static
  display),
  I would wager that this would result in a more efficient
  implementation than
  having them poll.
  I also agree with Aaron's answers to your open questions.
  Erik
 
  On Tue, Jan 12, 2010 at 1:08 PM, Charlie Reis cr...@chromium.org
  wrote:
 
  On Tue, Jan 12, 2010 at 12:44 PM, James Robinson jam...@google.com
  wrote:
 
  Getting this information in a cross-platform way is a huge pain (do
  we
  even do it properly for mac yet?), so it seems like a decent idea to
  let
  extensions reuse the work done rather than reimplementing
  everything.
 
  I agree.  Plus NPAPI is a really big hammer that throws out most of
  the protections that Chromium's process model and sandbox offer
  extensions,
  so I'd find it ironic to rely on that for people interested in data
  about
  the process model...
 
 
  I'd suggest having the browser fire some sort of update event to the
  extension whenever the metrics are updated rather than forcing the
  extension
  to poll.  This is how the task manager works currently.
 
  - James
 
  I'm happy to add an onUpdated event, but I thought it might be fired
  too
  often to expose it as an extension event.  If we're not concerned
  about the
  frequency, I'll put it in the proposal.
  Charlie
 
 
 
  On Tue, Jan 12, 2010 at 12:38 PM, Matt Perry
  mpcompl...@chromium.org
  wrote:
 
  Would it be possible to implement the same functionality using an
  NPAPI plugin? Extensions are allowed to bundle native plugins and
  interact
  with them from script.
  On Tue, Jan 12, 2010 at 10:48 AM, Charlie Reis cr...@chromium.org
  wrote:
 
  Hi folks--
    I've put together a proposal for a Chromium extensions module
  that
  exposes
  data about the browser's processes.  I think this could be useful
  for
  things
  like per-tab CPU/memory utilization graphs, custom task managers,
  or
  visualizing which tabs are sharing processes.
  http://docs.google.com/View?id=dhr988kp_4f76886hc
  Please let me know what you think.
  Thanks!
  Charlie Reis
  --
  Chromium Developers mailing list: 

Re: [chromium-dev] Re: Two Students Looking to work on Chromium for a Semester-Long Class Project (and beyond)

2010-01-15 Thread Peter Kasting
On Fri, Jan 15, 2010 at 12:35 PM, Alex Gartrell alexgartr...@gmail.comwrote:

 Pam's right in that we're looking for a 'Chromium mentor'.


Right.  I understood that, and might be willing to do it; I was more
concerned with what you were actually interested in working on (in terms of
size and style) to get an idea of who'd be appropriate.

We were also interested to see what suggestions you had for things to
 work on.  Right now, we're thinking about taking on a couple 'lay of
 the land' type bugs and then hopefully doing a more non-trivial patch
 later.  Of course, we're still trying to figure stuff out with our
 professor right now, but we're very interested in hearing suggestions.


I once made a list of some of the smaller, but not completely pointless,
bugs I was aware of that I thought someone coming up to speed might be able
to handle.  This list doesn't have anything from the last four months, and
is heavily biased towards the areas I have worked on (== a lot of address
bar stuff especially), but maybe there is something in here that catches
your eye.  Some of these are more difficult than others, but I would be
happy to handhold you through solving any of them.  They would probably
prepare you for tackling bigger projects.

crbug.com/4005
crbug.com/4095
crbug.com/6177
crbug.com/6770
*crbug.com/6872*
crbug.com/6888
crbug.com/7438
crbug.com/7982
crbug.com/9044
crbug.com/9694
crbug.com/9885
crbug.com/12305
crbug.com/13279
crbug.com/13703
crbug.com/14748
crbug.com/16746
crbug.com/18107
crbug.com/18587
crbug.com/20005
crbug.com/20250
crbug.com/22853
crbug.com/22982

PK
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

[chromium-dev] buildbot failure in Chromium on Modules Linux, revision 36414

2010-01-15 Thread buildbot
Automatically closing tree for unit_tests on Modules Linux

http://build.chromium.org/buildbot/waterfall/builders/Modules%20Linux/builds/15260

http://build.chromium.org/buildbot/waterfall/waterfall?builder=Modules%20Linux

--=  Automatically closing tree for unit_tests on Modules Linux  =--

Revision: 36410, 36411, 36412, 36413, 36414
Blame list: a...@chromium.org,al...@chromium.org,e...@chromium.org

Buildbot waterfall: http://build.chromium.org/
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Process Model Extension API Proposal

2010-01-15 Thread Charlie Reis
On Fri, Jan 15, 2010 at 1:33 PM, Rafael Weinstein rafa...@chromium.orgwrote:

 On Fri, Jan 15, 2010 at 1:27 PM, Charlie Reis cr...@chromium.org wrote:
 
 
  On Fri, Jan 15, 2010 at 12:04 PM, Rafael Weinstein rafa...@chromium.org
 
  wrote:
 
  LGTM also.
 
  One thought: I've seen a few requests on the crx-dev mailing list for
  API capabilities for both finding out when a process has crashed and
  also when it has become unresponsive. I'm unfamiliar with our code
  that checks for a hung renderer. Would the process.cpu value be a
  proxy for this? Would there be another way to expose it?
 
  I have the onExited event to listen for crashed tabs.
  For hung tabs, I don't think cpu is a good proxy for it.  Maybe we could
 add
  a onHung event that fires when Chrome decides a process is unresponsive?

 Sounds good.

 
  Also, my preference would be for avoiding adding processId to Tab and
  using processes.get(tabId) instead, just for the sake of keeping the
  API completely contained within the experimental namespace.
 
  R
 
  Darn, I was just getting ready to submit that CL for review.  :)
  I'd like to still pass a process ID to the get() method, so that it can
 be
  useful for browser, plugin, and renderer processes as well.  Maybe
  chrome.experimental.processes.getProcessId(tabId), with the expectation
 that
  it will be removed when processId is later added to Tab?
  Charlie

 Sorry, I didn't noticed that get() was taking a processId (duh).

 Sound good. Or even getProcessForTab(tabId), just because it's most
 likely you'll just turn around and call processes.get() on the result
 of getProcessId()


Makes sense-- it's easy it get the processId from the Process object if
that's what you want.

I added it to the doc, along with a new onUnresponsive event (rather than
onHung).

Charlie



 
 
 
  On Wed, Jan 13, 2010 at 2:49 PM, Erik Kay erik...@chromium.org wrote:
   On Wed, Jan 13, 2010 at 1:21 PM, Charlie Reis cr...@chromium.org
   wrote:
  
   Thanks.  I've updated the proposal doc based on suggestions from this
   discussion, including a global onUpdated event, notes about only
   providing
   cross-platform statistics, and adding a tabs array to each Process
 for
   the
   tabs associated with it (at least for renderer processes).
   http://docs.google.com/View?id=dhr988kp_4f76886hc
   As Aaron mentions, most of this can start out in the
   chrome.experimental
   namespace.  I'd like to add the processId property to Tab, which has
   value
   on its own without the rest of the chrome.experimental.processes
   module.
(e.g., I used it to build the first example use case: a Browser
 Action
   that
   shows all the tabs sharing the current tab's process.)  Can I add
 that
   property to Tab directly, or should I temporarily add an experimental
   API to
   get a processId given a tabId?
  
   Yeah, unfortunately we don't have a way of adding experimental fields
 to
   non-experimental APIs.  In this case, I'd say processId is a
 relatively
   safe
   addition, so go for it.
   Erik
  
  
   Charlie
  
  
   On Tue, Jan 12, 2010 at 5:09 PM, Erik Kay erik...@chromium.org
 wrote:
  
   LGTM.
   I agree that you should look into the broad (global, not
 per-process)
   onUpdated event.  For any active monitoring extension (vs. static
   display),
   I would wager that this would result in a more efficient
   implementation than
   having them poll.
   I also agree with Aaron's answers to your open questions.
   Erik
  
   On Tue, Jan 12, 2010 at 1:08 PM, Charlie Reis cr...@chromium.org
   wrote:
  
   On Tue, Jan 12, 2010 at 12:44 PM, James Robinson 
 jam...@google.com
   wrote:
  
   Getting this information in a cross-platform way is a huge pain
 (do
   we
   even do it properly for mac yet?), so it seems like a decent idea
 to
   let
   extensions reuse the work done rather than reimplementing
   everything.
  
   I agree.  Plus NPAPI is a really big hammer that throws out most
 of
   the protections that Chromium's process model and sandbox offer
   extensions,
   so I'd find it ironic to rely on that for people interested in data
   about
   the process model...
  
  
   I'd suggest having the browser fire some sort of update event to
 the
   extension whenever the metrics are updated rather than forcing the
   extension
   to poll.  This is how the task manager works currently.
  
   - James
  
   I'm happy to add an onUpdated event, but I thought it might be
 fired
   too
   often to expose it as an extension event.  If we're not concerned
   about the
   frequency, I'll put it in the proposal.
   Charlie
  
  
  
   On Tue, Jan 12, 2010 at 12:38 PM, Matt Perry
   mpcompl...@chromium.org
   wrote:
  
   Would it be possible to implement the same functionality using an
   NPAPI plugin? Extensions are allowed to bundle native plugins and
   interact
   with them from script.
   On Tue, Jan 12, 2010 at 10:48 AM, Charlie Reis 
 cr...@chromium.org
   wrote:
  
   Hi folks--
 I've put together a 

Re: [chromium-dev] [LTTF] Finders Pool Drained, Under 300 Failures on Win XP Release

2010-01-15 Thread Peter Kasting
Dimitri, the LTTF, and anyone else involved, you are awesome, and I consider
your work to have the largest importance / (satisfaction + recognition)
value on the team.  This is a thankless task.  You have given me hope that
someday we could conceivably reach 0 failures.

PK
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev

Re: [chromium-dev] Keyboard codes to use for a chrome extension api that enables automation?

2010-01-15 Thread James Su
What's the motivation of implementing such tests as extensions? The
automation framework already supports simulating keyboard events, can we
just use it for such kind of tests?

Regards
James Su

2010/1/16 Dominic Mazzoni dmazz...@google.com

 The problem I have with using only explicitly defined action functions
 is that the whole point of simulating keyboard events is to test
 whether or not the user interface is accessible using the keyboard!
 (This is not just an issue for people using assistive technology like
 a screen reader: there are a few things in Chrome that are impossible
 to access without using a mouse now.)

 I want to be able to write tests that try to edit bookmarks using the
 Bookmark Manager, or change settings using the Options dialog, for
 example. Having functions like selectNextBookmark() wouldn't help test
 that they're actually accessible via the keyboard.

 There aren't that many different keys needed for keyboard
 accessibility: off the top of my head, you mostly need tab, shift-tab,
 space, enter, and arrow keys - plus a few shortcuts to open a menu or
 move the focus to a certain panel.  What about having functions for
 each of these keys plus other actions that can be triggered via a
 keyboard shortcut?

  tabToNextControl()
  tabToPreviousControl()
  pressSpaceBar()
  pressEnterKey()
  pressEscapeKey()
  arrowUp()
  arrowDown()
  arrowLeft()
  arrowRight()
  openOptionsDialog()
  openBookmarksManager()
  focusLocationBar()
  ...

 Then, in order to enter text into a text box in a dialog, perhaps a
 function that pastes unicode text at the current cursor position would
 be much easier than trying to deal with key codes and input methods.

 - Dominic

 On Fri, Jan 15, 2010 at 3:24 AM, James Su su...@google.com wrote:
  Hi Nico,
I totally agree with your point. Using fake keyboard events for
  accessibility things would lead to compatibility nightmare. We should
  consider the approach of using explicitly defined action functions rather
  than emulating keyboard events. The keyboard events approach has at least
  following unsolvable problems:
  1. Compatibility issue among different OS platforms.
  2. Compatibility issue caused by user customized shortcuts.
  3. Supports of different keyboard layouts.
  4. Supports of inputting non-Latin text.
  Regards
  James Su
  2010/1/15 Nico Weber tha...@chromium.org
 
  On Thu, Jan 14, 2010 at 8:37 AM, Dominic Mazzoni dmazz...@google.com
  wrote:
   On Thu, Jan 14, 2010 at 8:19 AM, Nico Weber tha...@google.com
 wrote:
   It probably depends if you want to use this for text input or
 action
   inputs. A text-to-speech extension would probably want to set unicode
   characters, while something that (say) hits cmd-f to open the find
 bar
   probably wants to use keycodes.
  
   Text-to-speech is a different problem; this is for actions.
  
   For example, on OS X hitting cmd-f with a hiragana keyboard layout
   opens the findbar, while just pressing f opens an IME.
  
   If you want to use this for actons, I would find it more useful to
   have a performUiAction() function instead though, since keyboard
   shortcuts are different across platforms (all mac shortcuts use cmd
   instead of ctrl for example, and the letters for a few shortcuts are
   different on OS X too for various reasons).
  
   I completely agree; I would like to add many functions along the lines
   of performUiAction. However, there are a few actions for which typing
   a key really is the right thing to do - for example pressing Tab to
   move to the next control.
 
  Maybe performUiAction('focusNextViewInKeyLoop')?
 
  (By the way, OS X has a system-level setting that configures if tab
  should focus only text fields or all controls such as buttons etc. I
  don't think Chrome/Mac honors it, but I think there are plans to
  support it. Stuff like this is surprising for a caller that sends
  tab characters, while an explicit focus next element function
  could have clearly defined semantics).
 
  
   There's also testing. This function will allow you to use only
   javascript to test that a particular capability can be accessed using
   only the keyboard. I'm already using this for testing this API, by
   simulating pressing Ctrl+L to focus the location bar and then checking
   to see that the proper focus event is generated.
 
  Some (most?) accessibility shortcuts will vary by platform too. For
  example, focus toolbar is ctrl-f5 on OS X, but only if full keyboard
  access has been enabled (ctrl-f1). Cocoa the OS X framework don't
  always trigger with synthetic keyboard events. (I'm not an a11y expert
  – Avi, comments?)
 
  
   So the way I look at it is: there are some great uses for this
   function. There are also things that this function could be used for
   but there'd be a better way. It could also be abused to do things that
   make no sense.
  
   I don't think that's an argument not to allow the function; I think it
   just means we should make sure 

[chromium-dev] [LTTF] Finders Pool Drained, Under 300 Failures on Win XP Release

2010-01-15 Thread Dimitri Glazkov
Dear Chromium Folk,

Today, something vaguely significant happened -- if you're into
numbers, statistic, and fixing layout tests. And you have to admit,
all of us are.

First, after a week of relentless triage, I finally drained the
Finders pool. The Finders pool? you ask, flashing back to your last
treasure hunt adventure. No, not that kind of finders pool -- well..
almost. See, over the time of project existence, we accumulated quite
a few layout test failures. As the Layout Test Task Force was
chartered, we split all of our failures into two pools:

1) the failures whose causes are known and are ready for fixing, or
the Fixers Pool
2) the failures that fail for reasons that are yet to be found, or the
Finders Pool

We even have this really neat dashboard
(http://chromiumlttf.appspot.com/ -- thanks for building it, dpranke!)
that shows us these known knowns and known unknowns
(http://www.brainyquote.com/quotes/quotes/d/donaldrums148142.html).
Over the last few months, we've been diminishing the size of the Win
XP Release Finders pool, and last week I decided that the time has
come for it to say buh-bye. And id did! Now we _only_ have 159 bugs to
fix and we'll have 0 layout test failures. But at least we know what
to fix, right? I mean -- right? ;)

Oh -- and we have to keep this pool empty. Any creepage of unknown
failures will not be tolerated. Except when it's a flake -- we'll soon
have a separate triaging bucket for those, but for now all flaky tests
go into the Fixers pool.

My sincere apologies to tkent, jar, nsylvain, jungshik, sdoyon, ericu,
cevans, senorblanco and yuzo for inflicting the barrage of
rebaselining and expectation tweaking commits during their sheriffing
duty. That tree closing yesterday due to too many commits was
partially my fault.


Second, as a result of the aforementioned drainage, the Win XP Release
bot is finally showing under 300 failures! Woo hoo! This means that
over the last 4 months (or the entire length of its existence), the
LTTF eliminated over 500 test failures from the tree. That's big
stuff, folks.

Kudos to you all, LTTF-ers. I salute you on behalf of the entire
Chrome team and WebKit community, since a lot of tests fixed were not
specific to Chrome.


Anyhow, have a good night, y'all. Except for the WebKit gardeners --
who as it's widely known never sleep.

:DG
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev