[chromium-dev] Re: Chromium core principles and multiplatform development?

2009-09-14 Thread Ben Laurie

On Thu, Sep 10, 2009 at 6:19 PM, Paweł Hajdan
Jr.phajdan...@chromium.org wrote:
 On Thu, Sep 10, 2009 at 10:16, Dan Kegel d...@kegel.com wrote:

 In this case, the code may have been submitted by a committer
 without  using the trybots (tsk, tsk).  We don't currently mention
 the trybots on dev.chromium.org.  Is it time to?

 Submitting without trybots and breaking the compile? Doesn't look good to
 me. I think we should mention that all committers should use the trybots
 (they have access to them).

You can break the compile while the trybots are green - my very first
commit did this. Seems like we need more trybots, maybe?

 


--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-11 Thread Amanda Walker

On Thu, Sep 10, 2009 at 2:05 PM, Jacob Mandelson ja...@mandelson.org wrote:
 It was more surprised that I was expected to have built chrome at home
 under multiple platforms.

I wouldn't say that we expect people to build chrome at home under
multiple platforms.  We expect patches not to break any platform--how
you do that if you're touching shared code is up to you.  Committers
have access to try bots specifically so that they can test
compilation on platforms they don't have handy, or try patches on
behalf of people who don't have commit access yet.  There are also
plenty of people who can help review patches with an eye towards
catching potential platform problems before they land in the tree.

 I think most coders out there don't have
 set ups that let them build on all of the three.  Requiring that substantially
 restricts your contributor pool.

We don't put any requirements on what setups contributors use.  We
only put requirements on the effects on the tree.  You could submit
patches without building them at all, as long as they didn't break
anything :-).

  It's not an unreasonable policy, but it
 is an atypical one, so I think it should be spelled out in the
 contributing pages.

Yes, we can certainly spell things out better,

 It's not that in other cross-platform projects Mac or Linux developers
 don't have to worry about Windows, it's that they aren't expected to
 have Visual Studio and people that do have it will cooperate with them on
 problems.  Plus there's all the Windows developers that don't happen to have
 Macintoshes with XCode around...

We have many people on all platforms who are happy to cooperate with
anyone on problems.

--Amanda

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-11 Thread Marc-Antoine Ruel

On Fri, Sep 11, 2009 at 4:28 PM, Jacob Mandelson ja...@mandelson.org wrote:
 The trybot is restricted access to committers only.
 I'm not a committer, and as such I don't have access.

go/chrometryserver

M-A

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-11 Thread Evan Stade

I agree it should be the responsibility of the committer to make sure
the code passes the trybots on all platforms (I have in the past made
the mistake of thinking the trybots were open to everyone, but they
are not). I think many committers will not be willing to go through
very many iterations of download/apply patch, send to try bot, sort
out whether the errors are due to the patch, send errors back to
contributor, so non-committers will likely meet with difficulty when
trying to get patches in that they only tried on a single platform. So
I don't think it's necessarily a _requirement_ to have all three
platforms sitting around but having at least one windows and one posix
will greatly expedite the process.

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-11 Thread Evan Martin

I generally leave the figure out the errors bit to the committer.

Once you've made sure a patch isn't malicious:
  git checkout origin
  git cl patch -b theirname 12345  # code review number
  git try
  git checkout branch_i_was_working_on
You can then point them to the try server build page and say search
for your name for errors if it fails.

On Fri, Sep 11, 2009 at 6:58 PM, Evan Stade est...@chromium.org wrote:

 I agree it should be the responsibility of the committer to make sure
 the code passes the trybots on all platforms (I have in the past made
 the mistake of thinking the trybots were open to everyone, but they
 are not). I think many committers will not be willing to go through
 very many iterations of download/apply patch, send to try bot, sort
 out whether the errors are due to the patch, send errors back to
 contributor, so non-committers will likely meet with difficulty when
 trying to get patches in that they only tried on a single platform. So
 I don't think it's necessarily a _requirement_ to have all three
 platforms sitting around but having at least one windows and one posix
 will greatly expedite the process.

 


--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-11 Thread Evan Stade

On Fri, Sep 11, 2009 at 7:03 PM, Evan Martin e...@chromium.org wrote:
 I generally leave the figure out the errors bit to the committer.

I assume you mean the contributor. The problem is then that you are
trusting a non-committer to tell you whether to commit, which defeats
the purpose of having committer access.


 Once you've made sure a patch isn't malicious:
  git checkout origin
  git cl patch -b theirname 12345  # code review number
  git try
  git checkout branch_i_was_working_on
 You can then point them to the try server build page and say search
 for your name for errors if it fails.

 On Fri, Sep 11, 2009 at 6:58 PM, Evan Stade est...@chromium.org wrote:

 I agree it should be the responsibility of the committer to make sure
 the code passes the trybots on all platforms (I have in the past made
 the mistake of thinking the trybots were open to everyone, but they
 are not). I think many committers will not be willing to go through
 very many iterations of download/apply patch, send to try bot, sort
 out whether the errors are due to the patch, send errors back to
 contributor, so non-committers will likely meet with difficulty when
 trying to get patches in that they only tried on a single platform. So
 I don't think it's necessarily a _requirement_ to have all three
 platforms sitting around but having at least one windows and one posix
 will greatly expedite the process.

 



--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-11 Thread Mohamed Mansour
We could do this instead:gcl try --url http://url/to/patch.diff --email
contribut...@email.com --issue rietveldIssueNumber

No need to download and apply the patch.

- Mohamed Mansour


On Fri, Sep 11, 2009 at 10:03 PM, Evan Martin e...@chromium.org wrote:


 I generally leave the figure out the errors bit to the committer.

 Once you've made sure a patch isn't malicious:
  git checkout origin
  git cl patch -b theirname 12345  # code review number
  git try
  git checkout branch_i_was_working_on
 You can then point them to the try server build page and say search
 for your name for errors if it fails.

 On Fri, Sep 11, 2009 at 6:58 PM, Evan Stade est...@chromium.org wrote:
 
  I agree it should be the responsibility of the committer to make sure
  the code passes the trybots on all platforms (I have in the past made
  the mistake of thinking the trybots were open to everyone, but they
  are not). I think many committers will not be willing to go through
  very many iterations of download/apply patch, send to try bot, sort
  out whether the errors are due to the patch, send errors back to
  contributor, so non-committers will likely meet with difficulty when
  trying to get patches in that they only tried on a single platform. So
  I don't think it's necessarily a _requirement_ to have all three
  platforms sitting around but having at least one windows and one posix
  will greatly expedite the process.
 
  
 

 


--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Amanda Walker

On Thu, Sep 10, 2009 at 1:03 PM, Dan Kegel d...@kegel.com wrote:
 An external contributor was recently surprised that a change tested
 on linux was reverted because it broke the build on windows.
 (His mental model was that linux developers don't have to
 worry about other platforms, that's what windows developers are for.)
 [...]
 Anyone think we need to add some text that emphasizes that developers need
 to worry about more than just their own platform?

Yes--since One product, multiple platforms is also a core principle
in practice even if it didn't make it into Ben's list.  I'll volunteer
to write up something on the topic this weekend if no one else beats
me to it.

--Amanda

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Paweł Hajdan Jr .
For me it was obvious, but if people are surprised by this, then improving
the documentation is probably a good idea.
Just curious...  the change has been submitted to trybots before landing,
hasn't it?

On Thu, Sep 10, 2009 at 10:03, Dan Kegel d...@kegel.com wrote:


 An external contributor was recently surprised that a change tested
 on linux was reverted because it broke the build on windows.
 (His mental model was that linux developers don't have to
 worry about other platforms, that's what windows developers are for.)
 He said that none of the doc at dev.chromium.org covered this, so I had a
 look.

 http://dev.chromium.org/developers/core-principles
 lists four core categories:  Speed, Security, Stability, and Simplicity.
 Under Stability, it says

 We try to write as many automated tests as we can, to make sure that
 the product is still functioning as intended. We close the tree when
 the tests fail. We revert changes that break them.

 That seems to cover it, but it is a bit buried, and it doesn't
 really announce our commitment to full support of all three
 platforms.

 Anyone think we need to add some text that emphasizes that developers need
 to worry about more than just their own platform?

 


--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Dan Kegel

OK, we should probably improve
http://dev.chromium.org/developers/contributing-code
similarly, then.

In this case, the code may have been submitted by a committer
without  using the trybots (tsk, tsk).  We don't currently mention
the trybots on dev.chromium.org.  Is it time to?

On Thu, Sep 10, 2009 at 10:07 AM, Paweł Hajdan
Jr.phajdan...@chromium.org wrote:
 For me it was obvious, but if people are surprised by this, then improving
 the documentation is probably a good idea.
 Just curious...  the change has been submitted to trybots before landing,
 hasn't it?

 On Thu, Sep 10, 2009 at 10:03, Dan Kegel d...@kegel.com wrote:

 An external contributor was recently surprised that a change tested
 on linux was reverted because it broke the build on windows.
 (His mental model was that linux developers don't have to
 worry about other platforms, that's what windows developers are for.)
 He said that none of the doc at dev.chromium.org covered this, so I had a
 look.

 http://dev.chromium.org/developers/core-principles
 lists four core categories:  Speed, Security, Stability, and Simplicity.
 Under Stability, it says

 We try to write as many automated tests as we can, to make sure that
 the product is still functioning as intended. We close the tree when
 the tests fail. We revert changes that break them.

 That seems to cover it, but it is a bit buried, and it doesn't
 really announce our commitment to full support of all three
 platforms.

 Anyone think we need to add some text that emphasizes that developers need
 to worry about more than just their own platform?

 



--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Paweł Hajdan Jr .
On Thu, Sep 10, 2009 at 10:16, Dan Kegel d...@kegel.com wrote:

 In this case, the code may have been submitted by a committer
 without  using the trybots (tsk, tsk).  We don't currently mention
 the trybots on dev.chromium.org.  Is it time to?


Submitting without trybots and breaking the compile? Doesn't look good to
me. I think we should mention that all committers should use the trybots
(they have access to them).

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Nico Weber

  An external contributor was recently surprised that a change tested
  on linux was reverted because it broke the build on windows.
  (His mental model was that linux developers don't have to
  worry about other platforms, that's what windows developers are for.)
  [...]
  Anyone think we need to add some text that emphasizes that developers
 need
  to worry about more than just their own platform?

 Yes--since One product, multiple platforms is also a core principle
 in practice even if it didn't make it into Ben's list.  I'll volunteer
 to write up something on the topic this weekend if no one else beats
 me to it.


While you're on it, could you add something like

In general, be consistent with the platform. We believe that users
switch between applications more often than between operating systems, so it
is more important to be consistent with the platform than to be consistent
with chrome on other platforms. This is not true in areas where chrome tries
to innovate, or where the platform behavior is measurably more confusing for
users of that platform.

or similar. As far as I understand, that's a guiding principle for the
cross-platform work, and having that somewhere I can link to would be
useful.

Nico

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Amanda Walker

I blogged about that when we kicked off the additional platform
efforts, though it's probably a good idea to say something about it on
the site as well.

--Amanda


On Thu, Sep 10, 2009 at 1:20 PM, Nico Weber tha...@chromium.org wrote:
  An external contributor was recently surprised that a change tested
  on linux was reverted because it broke the build on windows.
  (His mental model was that linux developers don't have to
  worry about other platforms, that's what windows developers are for.)
  [...]
  Anyone think we need to add some text that emphasizes that developers
  need
  to worry about more than just their own platform?

 Yes--since One product, multiple platforms is also a core principle
 in practice even if it didn't make it into Ben's list.  I'll volunteer
 to write up something on the topic this weekend if no one else beats
 me to it.

 While you're on it, could you add something like
     In general, be consistent with the platform. We believe that users
 switch between applications more often than between operating systems, so it
 is more important to be consistent with the platform than to be consistent
 with chrome on other platforms. This is not true in areas where chrome tries
 to innovate, or where the platform behavior is measurably more confusing for
 users of that platform.
 or similar. As far as I understand, that's a guiding principle for the
 cross-platform work, and having that somewhere I can link to would be
 useful.
 Nico



-- 
Portability is generally the result of advance planning rather than trench
warfare involving #ifdef -- Henry Spencer (1992)

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Amanda Walker

Sure.  I'd run anything I write up past Ben, brian, etc. first before
posting anything.

--Amanda

On Thu, Sep 10, 2009 at 3:07 PM, Peter Kasting pkast...@google.com wrote:
 On Thu, Sep 10, 2009 at 10:20 AM, Nico Weber tha...@chromium.org wrote:

 While you're on it, could you add something like
     In general, be consistent with the platform. We believe that users
 switch between applications more often than between operating systems, so it
 is more important to be consistent with the platform than to be consistent
 with chrome on other platforms. This is not true in areas where chrome tries
 to innovate, or where the platform behavior is measurably more confusing for
 users of that platform.
 or similar. As far as I understand, that's a guiding principle for the
 cross-platform work, and having that somewhere I can link to would be
 useful.

 Be careful that whatever you say here gets Ben's approval as his position on
 platform consistency is not necessarily equivalent to this.
 PK



-- 
Portability is generally the result of advance planning rather than trench
warfare involving #ifdef -- Henry Spencer (1992)

--~--~-~--~~~---~--~~
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: Chromium core principles and multiplatform development?

2009-09-10 Thread Darin Fisher
On Thu, Sep 10, 2009 at 10:19 AM, Paweł Hajdan Jr.
phajdan...@chromium.orgwrote:

 On Thu, Sep 10, 2009 at 10:16, Dan Kegel d...@kegel.com wrote:

 In this case, the code may have been submitted by a committer
 without  using the trybots (tsk, tsk).  We don't currently mention
 the trybots on dev.chromium.org.  Is it time to?


 Submitting without trybots and breaking the compile? Doesn't look good to
 me. I think we should mention that all committers should use the trybots
 (they have access to them).


+1

The tooling makes it very obvious that you have to not break any of the main
platforms.

-Darin

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