Re: Changes to our Git infrastructure

2015-01-05 Thread Jan Kundrát

On Sunday, 4 January 2015 19:32:28 CEST, Jeff Mitchell wrote:
I don't follow this line of logic. The end result is software 
stored in git trees, but how it gets there is a totally 
different concern. Whether it comes from patches that are then 
accepted and merged, or direct merging of branches, the end 
result is the same.


- Existing KDE account holders can and do use git for their workflow.
- Using non-git workflow for others introduces a different workflow to the 
mix.

- Having two workflows is more complex than having just a single one.

Does it make it more understandable?

My goal is to help bridge the gap between the existing project 
maintainers (who produce software in git trees) and the new 
contributors (who produce patches).


KDE purposefully has a very low barrier to entry. A contributor 
can normally push anywhere.


When I said a contributor, I was referring to somebody who is not a KDE 
developer yet. Please re-read what I wrote again because your understanding 
assumed that a contributor is someone who can push to git. I can see why 
you arrived at what you said in that case, but that's not what I said.



.NET is a framework, not a language. Maybe you meant C#. ...


Thanks for educating me, but I don't think it helps move this 
discussion forward in a productive manner.


I do. Because there are a huge number of languages that have 
compilers to produce .NET CLI. Some of them are indeed 
relatively obscure. Saying .NET doesn't mean anything in terms 
of which languages you are taking issue with. Let's be clear 
what we're talking about.


I was quite obviously referring to any tools which make use of the .NET 
runtime environment. I do think that mandating these for efficient work 
with our code review system is a pretty big no-go.


As other people have added to the list of requirements, patch 
management needs to be able to be done via the web UI. Nobody 
has to install any runtime environment.


The requirement I listed was make the changes available as git refs so 
that I do not use any other tool to work with them. If that is not 
available, then another requirement is have a nice CLI implemented in a 
language that is common on KDE desktop.


The fact that I can fetch and upload patches via a website does not satisfy 
this requirement. It's a bandaid help, not a fully usable solution.


Those that want to contribute will be required to install a 
whole slew of development packages.


Unless they have e.g. done something with Qt already, or unless they're C++ 
developers already, etc.


Especially if it's only needed if they want to do advanced CLI 
stuff.


Fetching patches is not advanced stuff. It's cool to have a manual bypass 
for fetching stuff by hand, but that is a hotfix, not a productive 
solution.


The sysadmins appear to have a strong preference for a unified 
tool to do both.


No, our preference is for well-integrated tools, which is the 
same preference you previously stated.


I'm happy to hear this, but then I don't know how to interpret Ben's 
earlier responses in this thread and our conversations on IRC. Anyway, it's 
cool that we agree on something :).


To put my money where my mouth is, yes, I am willing to 
maintain the extra systems, and I have been doing this with 
Gerrit (and CI) for a couple of months already.


Yes, because Gerrit is not a tool being provided by the 
sysadmin team and as such is not in scope for us to maintain. 
It's great that you're willing to help out, but your offer to 
help maintain Gerrit has no bearing on whether or not it's what 
we end up proposing to the community.


I'm simply stating that any possible argument saying we prefer a single 
tool because we don't have manpower to maintain more of them is moot 
because that manpower is waving its hand and saying I'm gonna do this 
right now.


With kind regards,
Jan

--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: Changes to our Git infrastructure

2015-01-05 Thread Jan Kundrát

On Sunday, 4 January 2015 13:21:12 CEST, Thomas Friedrichsmeier wrote:

True, but don't forget about the other side of the story:
- potential contributors will have to learn more stuff, before they
  can even _start_ contributing, which may be a real turn-off in some
  cases.


That's a valid concern, so the core question is whether this scenario:

- make changes
- make a commit
- push that commit

is any more complex than:

- make changes
- create a diff
- upload that diff via a browser.

I have to admit I have no idea which one is *really* easier for a total 
newbie, and which one is easier for an average contributor.



Your project's situation may be very different from mine. Personally,
I'm much more worried about keeping the entry barrier as low as
possible, than about reducing the amount of effort that I have to put
into supporting and educating contributors.


That's also a possibility. However, in my experience with Gerrit, GCI 
students (which are kids aged 12-18, IIRC) were able to upload patches 
without substantial problems. That's despite our rudimentary state of 
KDE-specific documentation, and Gerrit having a oh no, let's run away from 
that beast reputation. In short, I think that there's actually a solution 
which can be both a low enough barier to entry *and* help maintainers do 
their job easier.


Cheers,
Jan

--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: Changes to our Git infrastructure

2015-01-05 Thread Ben Cooksley
On Mon, Jan 5, 2015 at 10:05 PM, Jan Kundrát j...@kde.org wrote:
 On Monday, 5 January 2015 06:05:33 CEST, Ben Cooksley wrote:

 Ease of installation and it's the availability of the necessary
 interpreters within mainstream distributions should be more than
 sufficient criteria here. Limiting it by any other criteria is playing
 pure favouritism to a given set of language(s) and unnecessarily
 limits our options.


 Ben, you and Jeff appear to disagree with my point that e.g. requiring a PHP
 tool to be installed client-side on each developers' and contributors'
 machine might be a little bit discouraging. It is OK to say that you
 disagree, but it doesn't prove the point to be any less valid. It's fine to
 have people assign varying importance to different evaluation criteria, so
 please do not use your sysadmin hat to unilaterally remove this pure
 favoritism just because you do not see any value in it.

 My impression was that we're gathering a list of possible requirements and
 *then* we, as a community, are going to assign some importance factor to
 each and every item raised. It is therefore acceptable to have mutually
 exclusive criteria at this point, or even bits which some of us might find
 to be totally irrelevant. They are going to be sorted out be community's
 consensus, I suppose.

The list of requirements is first gathered from the community. We then
summarize it with items being weighted based on the level of support
mentioned by various people and send it back. If everyone is broadly
happy we then go ahead and prepare solutions which meet this list of
requirements. There is no community level sorting of the items because
items don't have a priority - it is a best effort basis to meet all of
the requested features and functions.

These proposals are accompanied by the pros and cons each faces, along
with a recommendation for the one we believe best fits the needs of
the community.
You can see an example of this in the initial git.kde.org setup which
Sysadmin did many years ago (2010 I think).



 With kind regards,
 Jan

Cheers,
Ben


 --
 Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: libkgeomap

2015-01-05 Thread Martin Klapetek
On Sun, Jan 4, 2015 at 8:21 PM, Michael G. Hansen m...@mghansen.de wrote:


 We also had a Google Summer of Code student work on the library, and the
 project was not rejected by Google.


I would actually be surprised if it was. GSoC is run by the Google Open
Source Office
and this program particularly is done by about 3 people; I don't believe
they are actually
reviewing all the applications, that's up to the mentoring orgs (KDE). Then
Google has
tens of thousands employees, I also don't believe everyone of them knows
terms to 3rd
party usage of some of their products.

Just sayin... :)

Cheers
-- 
Martin Klapetek | KDE Developer


Re: libkgeomap

2015-01-05 Thread Gilles Caulier
Hi,

Happy New Year to all in this room.

Thanks Micheal for all details about libkgeomap history, especially
GoogleMaps rules.

Just few words about libkgeomap KF5 port :

- Library is fully ported as QT5/KF5 and sound work fine.
- Alin Marin Elen alinm.el...@gmail.com currently work on
KGeoMap::HTMLWidget class to port from KHTML to Qt5::Webkit.

All details are listed in this wiki page section :

https://techbase.kde.org/Projects/Digikam/CodingSprint2014#Libkgeomap

Michael, if you have some free time to review code later, it will be
great. Thanks in advance.

Best

Gilles Caulier

2015-01-04 20:21 GMT+01:00 Michael G. Hansen m...@mghansen.de:
 On 03.01.2015 15:09, Tobias Leupold wrote:

 IMHO, the real question is, shouldn't that pointless wrapper be
 deprecated
 in favor of just using Marble directly?


 Can marble be used in an identical way as libkgeomap, as a QWidget only
 displaying a map with not only coordinates but also photo thumbnails
 (grouping
 the coordinates when the zoom factor is too low to display them all etc.),
 GPX
 tracks and so on?

 If so, we (at KPA) should rethink our implementation (but I don't think
 that
 libkgeomap has been written for no reason ...). But after all, it's a
 eligible
 question (which surely can be answered by Gilles Caulier and/or Michael
 Hansen).


 In the beginning, there was code in digikam that displayed and grouped
 thumbnails of images on Marble, while in kipi-plugins there was a
 KHTML-based viewer for Google Maps, which only showed a marker at the
 position of the photo. Since we wanted both Marble and Google Maps in both
 places, we went the natural way of turning that code into a library so that
 it can be used in both places without duplicating code. Originally, we also
 wanted to show a web-based OpenStreetMap directly via KHTML to allow for
 more interaction with OpenStreetMap's layering options, but that option was
 abandoned because of incompatibilities between KHTML and OpenStreetMap's
 OpenLayer Javascript code at that time.

 Apart from that: If Google's terms of service allow using Google maps like
 libkgeomap does, I think it should be a decision of the user which map
 he/she
 wants to see.


 From the way I understood the terms of service, yes, this usage is ok. We
 also had a Google Summer of Code student work on the library, and the
 project was not rejected by Google. Of course I would rather see a
 collection of open data satellite imagery to be used instead, but I could
 not find any yet.

 Best regards,

 Michael Hansen



Re: libkgeomap

2015-01-05 Thread Michael G. Hansen

On 03.01.2015 15:09, Tobias Leupold wrote:

IMHO, the real question is, shouldn't that pointless wrapper be deprecated
in favor of just using Marble directly?


Can marble be used in an identical way as libkgeomap, as a QWidget only
displaying a map with not only coordinates but also photo thumbnails (grouping
the coordinates when the zoom factor is too low to display them all etc.), GPX
tracks and so on?

If so, we (at KPA) should rethink our implementation (but I don't think that
libkgeomap has been written for no reason ...). But after all, it's a eligible
question (which surely can be answered by Gilles Caulier and/or Michael
Hansen).


In the beginning, there was code in digikam that displayed and grouped 
thumbnails of images on Marble, while in kipi-plugins there was a 
KHTML-based viewer for Google Maps, which only showed a marker at the 
position of the photo. Since we wanted both Marble and Google Maps in 
both places, we went the natural way of turning that code into a library 
so that it can be used in both places without duplicating code. 
Originally, we also wanted to show a web-based OpenStreetMap directly 
via KHTML to allow for more interaction with OpenStreetMap's layering 
options, but that option was abandoned because of incompatibilities 
between KHTML and OpenStreetMap's OpenLayer Javascript code at that time.



Apart from that: If Google's terms of service allow using Google maps like
libkgeomap does, I think it should be a decision of the user which map he/she
wants to see.


From the way I understood the terms of service, yes, this usage is ok. 
We also had a Google Summer of Code student work on the library, and the 
project was not rejected by Google. Of course I would rather see a 
collection of open data satellite imagery to be used instead, but I 
could not find any yet.


Best regards,

Michael Hansen



Re: Changes to our Git infrastructure

2015-01-05 Thread Jan Kundrát

On Monday, 5 January 2015 06:05:33 CEST, Ben Cooksley wrote:

Ease of installation and it's the availability of the necessary
interpreters within mainstream distributions should be more than
sufficient criteria here. Limiting it by any other criteria is playing
pure favouritism to a given set of language(s) and unnecessarily
limits our options.


Ben, you and Jeff appear to disagree with my point that e.g. requiring a 
PHP tool to be installed client-side on each developers' and contributors' 
machine might be a little bit discouraging. It is OK to say that you 
disagree, but it doesn't prove the point to be any less valid. It's fine to 
have people assign varying importance to different evaluation criteria, so 
please do not use your sysadmin hat to unilaterally remove this pure 
favoritism just because you do not see any value in it.


My impression was that we're gathering a list of possible requirements and 
*then* we, as a community, are going to assign some importance factor to 
each and every item raised. It is therefore acceptable to have mutually 
exclusive criteria at this point, or even bits which some of us might find 
to be totally irrelevant. They are going to be sorted out be community's 
consensus, I suppose.


With kind regards,
Jan

--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: Changes to our Git infrastructure

2015-01-05 Thread Milian Wolff
On Monday 05 January 2015 23:57:40 Ben Cooksley wrote:
 On Mon, Jan 5, 2015 at 10:05 PM, Jan Kundrát j...@kde.org wrote:
  On Monday, 5 January 2015 06:05:33 CEST, Ben Cooksley wrote:
  Ease of installation and it's the availability of the necessary
  interpreters within mainstream distributions should be more than
  sufficient criteria here. Limiting it by any other criteria is playing
  pure favouritism to a given set of language(s) and unnecessarily
  limits our options.
  
  Ben, you and Jeff appear to disagree with my point that e.g. requiring a
  PHP tool to be installed client-side on each developers' and
  contributors' machine might be a little bit discouraging. It is OK to say
  that you disagree, but it doesn't prove the point to be any less valid.
  It's fine to have people assign varying importance to different
  evaluation criteria, so please do not use your sysadmin hat to
  unilaterally remove this pure favoritism just because you do not see
  any value in it.
  
  My impression was that we're gathering a list of possible requirements and
  *then* we, as a community, are going to assign some importance factor to
  each and every item raised. It is therefore acceptable to have mutually
  exclusive criteria at this point, or even bits which some of us might find
  to be totally irrelevant. They are going to be sorted out be community's
  consensus, I suppose.
 
 The list of requirements is first gathered from the community. We then
 summarize it with items being weighted based on the level of support
 mentioned by various people and send it back. If everyone is broadly
 happy we then go ahead and prepare solutions which meet this list of
 requirements. There is no community level sorting of the items because
 items don't have a priority - it is a best effort basis to meet all of
 the requested features and functions.
 
 These proposals are accompanied by the pros and cons each faces, along
 with a recommendation for the one we believe best fits the needs of
 the community.
 You can see an example of this in the initial git.kde.org setup which
 Sysadmin did many years ago (2010 I think).

Hm, why don't we do a prioritization poll? Quite some items raised by others 
are totally unimportant to me, and probably vice versa. While I agree that it 
would be nice to make everyone happy, I doubt that's going to work out. If we 
concentrate on the important aspects first, the admins would have less work 
and most people are still happy.

Bye
-- 
Milian Wolff
m...@milianw.de
http://milianw.de


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 4 Jan 2015, at 20:41, Thiago Macieira wrote:


On Saturday 03 January 2015 15:35:12 Jeff Mitchell wrote:

- Not needing a CLI tool in an obscure language (PHP, Java,
.NET,...).


.NET is a framework, not a language. Maybe you meant C#. Regardless, 
I

fail to see how any of those are obscure. They're three of the most
popular and widespread languages in the world.


For command-line applications on Linux?


A binary's a binary.

As I stated in my example, I use git-annex, which is coded in Haskell. 
It's not a common language for command-line applications on Linux, but 
it works and is useful. I don't see why it being in an obscure 
language matters.


--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Jan Kundrát

On Monday, 5 January 2015 12:43:06 CEST, Milian Wolff wrote:
Hm, why don't we do a prioritization poll? Quite some items 
raised by others 
are totally unimportant to me, and probably vice versa. While I 
agree that it 
would be nice to make everyone happy, I doubt that's going to 
work out. If we 
concentrate on the important aspects first, the admins would have less work 
and most people are still happy.


+1, this is exactly what I wanted to say.

Cheers,
Jan

--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: Changes to our Git infrastructure

2015-01-05 Thread Milian Wolff
On Monday 05 January 2015 09:14:36 Jeff Mitchell wrote:
 On 5 Jan 2015, at 4:05, Jan Kundrát wrote:
  Ben, you and Jeff appear to disagree with my point that e.g. requiring
  a PHP tool to be installed client-side on each developers' and
  contributors' machine might be a little bit discouraging.
 
 Yes, because you are repeatedly assuming that such a tool would be
 required on all developers' and contributors' machines, and are ignoring
 our repeated statements that this is not a requirement to be a developer
 or contributor.

I think you two are misunderstanding each other. Jan is worried about the cli 
tools for developers, i.e. what currently is rbt tools. You, otoh, speak about 
the server-side tools, which of course can be written in any language you are 
willing to install on the server side.

Bye
-- 
Milian Wolff
m...@milianw.de
http://milianw.de


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 4:37, Jan Kundrát wrote:


On Sunday, 4 January 2015 13:21:12 CEST, Thomas Friedrichsmeier wrote:

True, but don't forget about the other side of the story:
- potential contributors will have to learn more stuff, before they
can even _start_ contributing, which may be a real turn-off in some
cases.


That's a valid concern, so the core question is whether this scenario:

- make changes
- make a commit
- push that commit

is any more complex than:

- make changes
- create a diff
- upload that diff via a browser.

I have to admit I have no idea which one is *really* easier for a 
total newbie, and which one is easier for an average contributor.


Obviously, you forgot another workflow that has been discussed:

- make changes
- make a commit
- use a CLI tool to push the change up for review

--Jeff


Re: Review Request 121805: kconfig: fix building when KDE_INSTALL_DIRS_NO_DEPRECATED is set

2015-01-05 Thread Marko Käning

---
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121805/#review73185
---

Ship it!


Thanks for fixing this, Jeremy! :)

- Marko Käning


On Jan. 3, 2015, 3:20 nachm., Jeremy Whiting wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://git.reviewboard.kde.org/r/121805/
 ---
 
 (Updated Jan. 3, 2015, 3:20 nachm.)
 
 
 Review request for kdelibs and Marko Käning.
 
 
 Repository: kconfig
 
 
 Description
 ---
 
 Use KF5_INSTALL_TARGETS_DEFAULT_ARGS so kconfig will configure when 
 KDE_INSTALL_DIRS_NO_DEPRECATED is set.
 
 
 Diffs
 -
 
   src/kreadconfig/CMakeLists.txt 3804e16 
 
 Diff: https://git.reviewboard.kde.org/r/121805/diff/
 
 
 Testing
 ---
 
 It builds again on osx where it didn't previously.
 
 
 Thanks,
 
 Jeremy Whiting
 




Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 10:40, Jan Kundrát wrote:


On Monday, 5 January 2015 16:23:15 CEST, Thomas Lübking wrote:

To sum up my understanding:
- Nobody wants to install/use PHP (or, good god, .NET/Mono ;-) on a 
client.
- Nobody remotely intends to *require* this (but one can oc. *offer* 
tools written on any whatsoever exotic requirement)


Phabricator has an equivalent of rbtools/rbt called Arcanist which is 
written in PHP. There are AFAIK no other tools for automating working 
with Phabricator's code review subsystem.


No, but it's all API driven so you are free to write whatever tools you 
may like.


I claim that requiring PHP or JVM or .NET for each 
developers'/contributors' productive work is bad.


I claim that apt-get install php5-cli is not any more difficult than 
any other package installations developers may have to perform. Since 
you brought up Java, if we were talking about a Java tool, I would make 
the same claim about apt-get install (your pick of default-jre, 
default-jre-headless, openjdk-7-jre). .NET, apt-get install 
mono-runtime.


Jeff's response is that PHP is not really required because they can 
just juggle patches by hand and paste them to web interfaces or pipe 
to `git am`. While this is technically correct, I find this logic 
misleading


So is your characterization of my claims. For one, I've never said 
anything about juggling patches by hand or piping to git am, only 
about web interfaces.


You have claimed that for the occasional contributor with one to two 
patches a year that installing such a tool is onerous. I disagree with 
that, but regardless, I've said that submitting patches via a web 
interface should be perfectly fine for such occasional contributors and 
that those that will want the power of the CLI tool are likely to be 
more advanced developers/contributors -- who I don't believe would find 
the setup of such a tool to be difficult or onerous.


I do not claim that in a Phabricator world that advanced/regular 
developers would be required to always copy and paste diffs into a web 
UI (and realistically if using the web UI you'd probably save the diff 
to a file and then just upload it). Those that prefer such a workflow 
could use it. Those that don't -- and that don't have unwavering 
language preferences for their tools -- would have command-line options.


and say that in absence of tools which are on-par with Arcanist, PHP 
is effectively required, and I do find this situation a downside of 
Phabricator.


Your hatred of PHP is well noted. I do not feel so strongly as you about 
the languages in which useful tools are written. As I said before, I 
can't speak for the broader KDE development community about that (and I 
doubt you can either).


I also point out that there are other tools which do not require a 
client-side PHP script.


Yes, you've made that abundantly clear.

--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Thomas Lübking

On Montag, 5. Januar 2015 17:46:51 CEST, Jeff Mitchell wrote:


Your hatred of PHP is well noted.


I don't think it's hate - but it remains an undeniable fact that it's of little 
use on typical client systems.
Therefore it's a valid concern that people might very well be pushed off by the 
requirement to install it for the only purpose of pushing reviews via cli.

Cheers,
Thomas


Re: Review Request 121805: kconfig: fix building when KDE_INSTALL_DIRS_NO_DEPRECATED is set

2015-01-05 Thread Jeremy Whiting

---
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121805/
---

(Updated Jan. 5, 2015, 9:57 a.m.)


Status
--

This change has been discarded.


Review request for kdelibs and Marko Käning.


Repository: kconfig


Description
---

Use KF5_INSTALL_TARGETS_DEFAULT_ARGS so kconfig will configure when 
KDE_INSTALL_DIRS_NO_DEPRECATED is set.


Diffs
-

  src/kreadconfig/CMakeLists.txt 3804e16 

Diff: https://git.reviewboard.kde.org/r/121805/diff/


Testing
---

It builds again on osx where it didn't previously.


Thanks,

Jeremy Whiting



Re: Changes to our Git infrastructure

2015-01-05 Thread Milian Wolff
On Monday 05 January 2015 12:06:57 Jeff Mitchell wrote:
 On 5 Jan 2015, at 11:57, Thomas Lübking wrote:
  On Montag, 5. Januar 2015 17:46:51 CEST, Jeff Mitchell wrote:
  Your hatred of PHP is well noted.
  
  I don't think it's hate - but it remains an undeniable fact that it's
  of little use on typical client systems.
  Therefore it's a valid concern that people might very well be pushed
  off by the requirement to install it for the only purpose of pushing
  reviews via cli.
 
 I really, really don't understand this concern. We're not in the days of
 500MB hard drives and nobody is asking anyone to install
 constantly-running daemons with open ports. I don't shiver with fear
 when I apt-get install a package and it wants to pull in a bunch of
 (non-daemon) libraries. Whatever you need to do your job, man.
 
 But I recognize that this may be a limitation of my own psyche.

Personally, I also fail to see the issue here. PHP is 15.23MiB on my Arch box. 
Compare that with 34M of karchive build dir when you enable debug symbols (and 
karchive is small!).

Bye
-- 
Milian Wolff
m...@milianw.de
http://milianw.de


Help solving this month's Bug of the Month

2015-01-05 Thread Christoph Feck
Hi developers!

The KDE Gardening Team nominates one particular annoying bug as “The 
Bug of the Month”, see https://community.kde.org/Gardening

This time, kded memory leaks await investigation: 
https://bugs.kde.org/show_bug.cgi?id=271934

To trace memory leaks in running processes, Milian Wolff created a new 
tool heaptrack, so if you can reproduce memory leaks, please try it.
See http://milianw.de/tag/heaptrack

Please help solving it, by adding ideas or patches to the relevant 
pages, review requests, or bugzilla pages. Anyone is invited to 
participate and our users will appreciate this bug getting solved.

Suggestions for next month's bug to the kde-gardening mailing list.

Thanks in advance!

-- 
Christoph Feck
http://kdepepo.wordpress.com/
KDE Quality Team


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 11:06, Jan Kundrát wrote:


On Monday, 5 January 2015 16:05:07 CEST, Jeff Mitchell wrote:
- Existing KDE account holders can and do use git for their 
workflow.
- Using non-git workflow for others introduces a different workflow 
to the mix.
- Having two workflows is more complex than having just a single 
one.


Does it make it more understandable?


No. What you're saying is having two tools is more complex. It's 
still one workflow.


I feel like you're just language-lawyering here. The workflow I 
propose pushes the burden of producing clean patches to the 
contributor. The workflow you're advocating for appears to center 
around sending patches around


Sending patches around? That's quite the stretch from submitting a 
diff to a web interface and recalls the KDE 1.0 days. And you're 
accusing me of language-lawyering?


The problem here is that you believe -- incorrectly -- that a single 
workflow cannot include more than one tool. The reason I can 
definitively say that you are incorrect is because your own preferred 
workflow involves more than one tool, regardless of how they interact. 
And if yours does, you can't complain about other workflows that do.


GitHub is a notable example showing that people don't seem to have an 
issue with a workflow that uses Git + a web-based tool to manage 
their code reviews. I'm not saying we need to end up with that, I 
just don't think it's credible to claim that it's too difficult or 
complex.


That isn't an example that proves your point, though.


It does if my point was (and it was) that a workflow consisting of 
producing a commit in Git and having the review take place via a web UI 
is a very broadly accepted paradigm in software development, and one 
that is often considered to be friendly to newcomers.


and I believe you were saying that it's fine for a CR tool to work on 
patches and not git trees.


Correct. Although I recognize the merits of such an approach, I do not 
believe that the only acceptable way for a code review tool to work is 
on git trees instead of via patches. And I do not believe that this one 
feature is enough to outright dismiss all other options.


Given your earlier statements I imagine, but this is only supposition, 
that one of the reasons you desire such an approach is so that you can 
have all review actions be performed via SSH commands without requiring 
either a web UI or external tool. While this is certainly nice to have, 
I don't believe that it is very usable for newcomers (we've weathered 
enough complaints over the years about Gitolite SSH commands). Given the 
earlier distinction you made between contributors and developers, it 
also requires those that want to contribute patches to have full KDE 
developer accounts with commit/push access in order to push those diffs 
up for code review...something not required from a web interface 
requiring only an Identity account.


--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 11:57, Thomas Lübking wrote:


On Montag, 5. Januar 2015 17:46:51 CEST, Jeff Mitchell wrote:


Your hatred of PHP is well noted.


I don't think it's hate - but it remains an undeniable fact that it's 
of little use on typical client systems.
Therefore it's a valid concern that people might very well be pushed 
off by the requirement to install it for the only purpose of pushing 
reviews via cli.


I really, really don't understand this concern. We're not in the days of 
500MB hard drives and nobody is asking anyone to install 
constantly-running daemons with open ports. I don't shiver with fear 
when I apt-get install a package and it wants to pull in a bunch of 
(non-daemon) libraries. Whatever you need to do your job, man.


But I recognize that this may be a limitation of my own psyche.

--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Thomas Lübking

On Montag, 5. Januar 2015 18:01:12 CEST, Jeff Mitchell wrote:

Sending patches around? That's quite the stretch from 
submitting a diff to a web interface and recalls the KDE 1.0 
days. And you're accusing me of language-lawyering?


The problem here is that you believe -- incorrectly -- that a 
single workflow cannot include more than one tool.


I believe this discussions heat turned into talking in absolutes.
Your truth - my truth.

It's not a matter of what is possible, but of preferences (while we probably 
all prefer to not return to send patches on mailing lists ;-)

Since they may obviously cover a large range, scale seems a major requirement 
on workflow and tools. Pure CLI access on alinged syntax for efficient pros is as 
relevant as an easy GUI access for starters.


Correct. Although I recognize the merits of such an approach, I 
do not believe that the only acceptable way for a code review 
tool to work is on git trees instead of via patches.


I'd assume operating on git trees is certainly far more important for CI than 
for reviewing patches.


And I do not believe that this one feature is enough to outright dismiss 
all other options.


See? Absolutes ;-)
No feature trumps all others, but it's a matter of ranking and thus all must be 
taken into fair and objective consideration.

distinction you made between contributors and developers, it 
also requires those that want to contribute patches to have full 
KDE developer accounts with commit/push access in order to push 
those diffs up for code review


I don't think this is actually a requirement - the review repo (maybe even 
branches) could easily have other/lower credential requirements than the 
vanilla one.

Cheers,
Thomas


Re: Changes to our Git infrastructure

2015-01-05 Thread Jan Kundrát

On Monday, 5 January 2015 18:01:12 CEST, Jeff Mitchell wrote:
The problem here is that you believe -- incorrectly -- that a 
single workflow cannot include more than one tool. The reason I 
can definitively say that you are incorrect is because your own 
preferred workflow involves more than one tool, regardless of 
how they interact. And if yours does, you can't complain about 
other workflows that do.


I was complaining about an IMHO artificial split where drive-by people 
submit changes in a different way than core developers. I stated that this 
introduces some needless difference to the way devs and contributors work, 
and that we should check whether there are tools that remove this 
difference. I know that e.g. Gerrit removes that difference, so I am not 
thrilled by the idea of using something without that feature.


It does if my point was (and it was) that a workflow consisting 
of producing a commit in Git and having the review take place 
via a web UI is a very broadly accepted paradigm in software 
development, and one that is often considered to be friendly to 
newcomers.


You're right, and I apologise for not understanding you correctly, we're in 
violent agreement after all.


and I believe you were saying that it's fine for a CR tool to 
work on patches and not git trees.


Correct. Although I recognize the merits of such an approach, I 
do not believe that the only acceptable way for a code review 
tool to work is on git trees instead of via patches. And I do 
not believe that this one feature is enough to outright dismiss 
all other options.


That's another thing where I should have probably worded my responses 
better. The requirements I listed were things which I found valuable for my 
work. I did not mean to say that it's the only possible way of doing 
reviews, or that I found everybody who disagrees with me to be a moron. 
It's just that these features are important for me, so I would like to see 
them and I wanted to make sure they are listed as a requirement in a list 
of points gathered by the community.


Maybe this misunderstanding is caused by sysadmins likely perceiving the 
requrements as hard ones which MUST be provided by any solution, while my 
impression is that we were asked to say what is important for us, and the 
evaluation is to be performed by us all together, not just the sysadmins.


Given your earlier statements I imagine, but this is only 
supposition, that one of the reasons you desire such an approach 
is so that you can have all review actions be performed via SSH 
commands without requiring either a web UI or external tool. 
While this is certainly nice to have, I don't believe that it is 
very usable for newcomers.


I agree that *that* would suck :).

Given the earlier 
distinction you made between contributors and developers, it 
also requires those that want to contribute patches to have full 
KDE developer accounts with commit/push access in order to push 
those diffs up for code review...something not required from a 
web interface requiring only an Identity account.


There is no need for full KDE developer account to upload changes for 
review with Gerrit. All that is needed is a regular Identity account.


Behind the scenes, it works by Gerrit being a special git server which 
intercepts pushes and stores each of these changes in a separate ref. I'll 
be happy to go into more detail in another thread, off-list or on IRC.


Cheers,
Jan

--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 12:15, Thomas Lübking wrote:


On Montag, 5. Januar 2015 18:01:12 CEST, Jeff Mitchell wrote:
It's not a matter of what is possible, but of preferences (while we 
probably all prefer to not return to send patches on mailing lists ;-)


Since they may obviously cover a large range, scale seems a major 
requirement on workflow and tools. Pure CLI access on alinged syntax 
for efficient pros is as relevant as an easy GUI access for starters.


Totally agree.

Correct. Although I recognize the merits of such an approach, I do 
not believe that the only acceptable way for a code review tool to 
work is on git trees instead of via patches.


I'd assume operating on git trees is certainly far more important for 
CI than for reviewing patches.


Yes, that's correct. But then we need to remember that there is a social 
component that is not finalized (and discussed in another thread), which 
is branch policy. Without operating on git trees, a developer could 
still be working on a feature branch and have a review going for the 
commits in that feature branch, and the CI could operate on that branch.


The harder integration (and by no means should be assumed impossible, 
I'm just not sure how easy it would be at the moment since I haven't 
looked) for CI with respect to git trees vs. patches would be for 
one-off patches that aren't keyed to branches. But, if we're talking 
about contributors, not KDE developers with commit access, then they 
can't work with git trees anyways; if someone is already a KDE 
developer, they could work in a feature branch.


Or not. Generally I'm happy providing tools and letting the various 
projects decide on their own preferred method for handling branches and 
patches.


distinction you made between contributors and developers, it also 
requires those that want to contribute patches to have full KDE 
developer accounts with  commit/push access in order to push those 
diffs up for code review


I don't think this is actually a requirement - the review repo (maybe 
even branches) could easily have other/lower credential requirements 
than the vanilla one.


There aren't such things as review repos right now, even on the current 
infrastructure (you could consider clones to be that, but creating 
clones and scratch requires full KDE developer accounts). Yes, you are 
right that highly flexible branch policy may allow something like this, 
but right now there is no such thing as commit access without having a 
full developer account. I think changing that -- assuming tool support 
for this -- would be a deeper policy discussion that is probably best 
had in a different thread.


--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 22:26:24, Boudewijn Rempt va escriure:
 Well, _obviously_ reviewboard supports raising issues and adding comments
 , but neither facilitates actual conversation, i.e. discussion on what's
 up with a particular patch at a deeper level.
 
 In short, what I meant is that as a tool to dicuss code changes,
 Reviewboard is a poor thing. It facilitates nit-picking, which is
 off-putting and useless, but at least gives the reviewer the feeling he's
 done his job, while it fails at making it easy to discuss the why,
 wherefore and how of a particular change.

Well, how would you want to have a proper discussion then?
What's your desired workflow/UI for it?
I see what you mean, but to me it seems more a misuse of the tool by the 
community, not a fault of the tool itself.

Cheers,
  Albert

 
 On Mon, 5 Jan 2015, Albert Astals Cid wrote:
  El Dilluns, 5 de gener de 2015, a les 18:40:54, Boudewijn Rempt va 
escriure:
  I do agree, btw, with Ian, that the current reviewboard workflow is badly
  broken and can be very discouraging. It doesn't support conversation
  
  What do you mean it doesn't support conversation?
  
  Cheers,
  
   Albert



Re: Changes to our Git infrastructure

2015-01-05 Thread Thomas Lübking

On Montag, 5. Januar 2015 22:26:24 CEST, Boudewijn Rempt wrote:
In short, what I meant is that as a tool to dicuss code 
changes, Reviewboard is a poor thing. It facilitates 
nit-picking, which is off-putting and useless, but at least 
gives the reviewer the feeling he's done his job, while it fails 
at making it easy to discuss the why, wherefore and how of a 
particular change.


I don't think this is a problem w/ RB.
When RRs get on k-c-d, many devs who can provide an abstract review are 
addressed. They can take /this/ load from the actual maintainer/main developer.
But if nobody feels in charge for the addressed component, you won't get an 
informed response.

Before Ian started the DrKonqui patches I had not seen the drkonqui code even 
one single time and my idea who worked on it was from the git history

Bottom line: things are maintained by an individuum or not at all. If everybody 
is in charge, nobody actually is.

Cheers,
Thomas


Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 22:29:36, Thomas Lübking va escriure:
 On Montag, 5. Januar 2015 21:36:54 CEST, Albert Astals Cid wrote:
  What's the problem with php?
 
 Dynamic typing ;-)
 
 I don't think there's a particular issue with php in this context.
 To me the concern seemed to have more been around try to not require stuff
 that's not likely around anyway
  We have ruby scripts
 
 Where (wrt code submission?)?

Oh, rbtools is python, somehow i thought it was ruby. Well goes to show it 
doesn't matter the least what a tool is written on, you just install it and 
run it :)

Cheers,
  Albert


Re: Changes to our Git infrastructure

2015-01-05 Thread Boudewijn Rempt
Well, this getting to a pretty useless discussion. You set out to prove 
that you find it all very simple, and I am sure you find it simple.


You don't have to rebut everything I say point by point to prove whatever 
you think you are proving because the point is this: you find it simple, 
others don't. What you have to do is accept is this: others don't. The 
rest of the world is fine with accepting that you think it's simple, 
that's not the point of the discussion.


So, yes, you cannot write a git-for-dummies manual, for that we need 
a genius like David Revoy. Just get this: you hope everyone has met a 
DVCS. I regularly meet people for whom git is a magic way of getting new 
features, and who have _no_ idea at all about what version control is, or 
what source code is. And many of them turn out to be awesome contributors, 
and some even, after a year or two, help with git bisecting a particular 
bug.


So all I want to make sure here is that participation in KDE is as 
accessible as possible to the great majority of the world that doesn't 
want to play the 'serious software engineer', qt-project.org-style.


That is why I've given the link to what non-engineers active in #krita 
think about KDE's infrastructure, and that's why I've tried to show you 
how intimidating something you find very simple actually is, how many 
steps that you know are optional, or necessary, you actually forgot to 
mention in your little list.


 On Mon, 5 Jan 2015, Albert Astals Cid wrote:


El Dilluns, 5 de gener de 2015, a les 22:22:19, Boudewijn Rempt va escriure:

On Mon, 5 Jan 2015, Albert Astals Cid wrote:

I think this is due to the fact that it's quite simple
git clone kde:repo


This requires:

* setting up gitconfig with the kde: alias. That requires finding the
right info on techbase, as well as the awareness that techbase exists.

You can always just use the full url.


* figuring out the reponame for a particular project (and that isn't as
easy as just downloading the entire trunk of kde's svn repo -- even if I
never did that myself)

Sure, if you don't know the repo name you're out of luck, not that downloading
the whole trunk would help you much more (you can still grep but it may take
ages)




do coding
git commit


* using the commit template

You don't really need a commit template (though it's nice if you use it)


* with the relevant keywords

You don't really need to use the keywrods (though it's nice if you use it)


* having a grasp of what a git commit is, especially that a commit isn't
visbile to anyone else

Any modern (i.e. DVCS) has that concept, sure it's complicated for cvs/svn
people, i'd like to think most of us has worked with a DVCS at the moment.


git push


But not before you have

* realized that you need to push, i.e. what local and remote is

Same as above, it's DCVS.


* figured out what branches are for, and how different projects handle
those

Right, that's hardly documentable though (and will get old soon most probably)


* got your kde indenity

Every system needs it's own identity system, we use ours.


* posted it on the right reviewboard

Reviewboard is not mandatory (though it's nice)


* to the right reviewers

Yes, you either have to pick the reviewers or let a robot do your job.

That said, i'm not saying contributing is easy, i'm just saying the pure git
part is not that hard, it's all the project overhead (branches, review,
account, etc) that really makes it harder (in my opinion).

Cheers,
 Albert




Re: Changes to our Git infrastructure

2015-01-05 Thread Thomas Lübking

On Montag, 5. Januar 2015 22:58:43 CEST, Boudewijn Rempt wrote:


For me, personally, RB's mails are even worse.

Ok, but that's pretty much OT, isn't?

(Same problem with this thread, or rather mailing list. Why the 
heck do I need to get two copies of every reply to a mail of 
mine... One is _enough_. And yes, I know about the whole 
reply-to-mangling-is-dangerous lunacy.)

You get them, because you send them. kcd is cc'd by your mails what will in the end make 
mail clients reply to all rather than just to the mailing list.




Reviewboard isn't limited to kde-core-devel.

It's not only not limited, it's not even bound to kcd.
The receivers depend on the groups you attach to the RR.



And it doesn't answer my main complaint: reviewboard, by its design, is made
to whine about whitespace, extra white at the end of lines and 
other one-line complaints.


a) breaking coding style is bad style anyway. Get a better editor, don't 
introduce tabs and trailing spaces and weird indention etc. and there'll be no 
complains.

b) You missed my argument.
MANY ppl. can give you an abstract review (whitespace, hot loop, performs crap, 
this may crash) but only VERY FEW ppl. can make a feature comment.
If none of the latter ever shows up because the component has vacant maintainance, you 
might oc. feel that ppl. only nitpick, but the alternative is that your patch 
remains entirely uncommented and if you at some point just push it, you'd introduce 
unnecessary style breaks and bad code on top of that.


It gives the reviewer a happy feeling of a job well-done

That's nonsense. It ideally maintains general code quality by many eyes.
If you are in charge of a component and have fundamental comments, you 
certainly won't restrict yourself to comment the patch on an abstract level.


and the submitter a cold shower.

Eye of the beholder?
It's a tasklist. Nothing more, nothing less.
If that scares you, you probably would not want to hear fundamental concerns at 
all.

There might be a cultural gap between rather polite (lying) and rather direct 
(offending) societies, but that won't be fixed by any communcation tool in the near future.

Cheers,
Thomas


Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 23:46:18, Alexander Neundorf va 
escriure:
 On Monday, January 05, 2015 22:35:23 Albert Astals Cid wrote:
  El Dilluns, 5 de gener de 2015, a les 22:22:19, Boudewijn Rempt va 
escriure:
 ...
 
   * figured out what branches are for, and how different projects handle
   those
  
  Right, that's hardly documentable though (and will get old soon most
  probably)
 
 this is IMO one of the main issues. This really should be documented, and
 ideally should be consistent for all KDE repositories. And this policy
 also shouldn't change often.
 How to deal with branches correctly, i.e. how the project maintainers
 expect it, is a big part what can make using git hard.

But that hasn't changed since svn, no? (Not saying it's good or bad, just 
saying i don't see this is a difference in git)

Cheers,
  Albert

 E.g. using git for cmake is easier, because there the workflow (how to
 branch etc.) is fully documented.
 
 Alex



Re: Changes to our Git infrastructure

2015-01-05 Thread Boudewijn Rempt
I'm just trying to make clear that reviewboard is a crappy tool inciting 
people to write crappy reviews that drive people away. Apart from any 
other nonsense about cultural differences (the standard cop-out from 
Dutchmen and Germans -- I ain't rude, I'm just honest, it's cultural!), I 
think that people should read Ian's mail, with attention:


Speaking for myself, I find this a huge turnoff in the KDE world and am 
now planning to retire from KDE as soon as I can.  But then I am 76 and 
git is my 10th source-code control system since 1965-66, so I have little 
interest in mastering it.


I have also found ReviewBoard utterly counter-productive this year, either 
because one writes an entry and nobody reviews it, or nobody understands 
it, or because one gets nitpicked about syntax and white space when one is 
really looking for helpful advice about how better to solve the problem at 
hand. I think I must have lost a month or two on ReviewBoard during the 
year, with very little helpful advice gained.


I consider nitpick reviews harmful. If you have nothing better to do than 
nitpick, don't, and reviewboard is a tool which encourages you to do.


On Mon, 5 Jan 2015, Thomas Lübking wrote:


On Montag, 5. Januar 2015 22:58:43 CEST, Boudewijn Rempt wrote:


For me, personally, RB's mails are even worse.

Ok, but that's pretty much OT, isn't?

(Same problem with this thread, or rather mailing list. Why the 
heck do I need to get two copies of every reply to a mail of 
mine... One is _enough_. And yes, I know about the whole 
reply-to-mangling-is-dangerous lunacy.)
You get them, because you send them. kcd is cc'd by your mails what will in 
the end make mail clients reply to all rather than just to the mailing 
list.





Reviewboard isn't limited to kde-core-devel.

It's not only not limited, it's not even bound to kcd.
The receivers depend on the groups you attach to the RR.


And it doesn't answer my main complaint: reviewboard, by its design, is 

made
to whine about whitespace, extra white at the end of lines and 
other one-line complaints.


a) breaking coding style is bad style anyway. Get a better editor, don't 
introduce tabs and trailing spaces and weird indention etc. and there'll be 
no complains.


b) You missed my argument.
MANY ppl. can give you an abstract review (whitespace, hot loop, performs 
crap, this may crash) but only VERY FEW ppl. can make a feature comment.
If none of the latter ever shows up because the component has vacant 
maintainance, you might oc. feel that ppl. only nitpick, but the 
alternative is that your patch remains entirely uncommented and if you at 
some point just push it, you'd introduce unnecessary style breaks and bad 
code on top of that.



It gives the reviewer a happy feeling of a job well-done

That's nonsense. It ideally maintains general code quality by many eyes.
If you are in charge of a component and have fundamental comments, you 
certainly won't restrict yourself to comment the patch on an abstract level.



and the submitter a cold shower.

Eye of the beholder?
It's a tasklist. Nothing more, nothing less.
If that scares you, you probably would not want to hear fundamental concerns 
at all.


There might be a cultural gap between rather polite (lying) and rather 
direct (offending) societies, but that won't be fixed by any communcation 
tool in the near future.


Cheers,
Thomas


Re: Changes to our Git infrastructure

2015-01-05 Thread Alexander Neundorf
On Monday, January 05, 2015 23:53:02 Boudewijn Rempt wrote:
 I'm just trying to make clear that reviewboard is a crappy tool inciting
 people to write crappy reviews that drive people away. Apart from any
 other nonsense about cultural differences (the standard cop-out from
 Dutchmen and Germans -- I ain't rude, I'm just honest, it's cultural!), I
 think that people should read Ian's mail, with attention:
 
 Speaking for myself, I find this a huge turnoff in the KDE world and am
 now planning to retire from KDE as soon as I can.  But then I am 76 and
 git is my 10th source-code control system since 1965-66, so I have little
 interest in mastering it.
 
 I have also found ReviewBoard utterly counter-productive this year, either
 because one writes an entry and nobody reviews it, or nobody understands
 it, or because one gets nitpicked about syntax and white space when one is
 really looking for helpful advice about how better to solve the problem at
 hand. I think I must have lost a month or two on ReviewBoard during the
 year, with very little helpful advice gained.
 
 I consider nitpick reviews harmful. If you have nothing better to do than
 nitpick, don't, and reviewboard is a tool which encourages you to do.

I wouldn't blame it on reviewboard, I don't have the impression it differs in 
this regard e.g. from gerrit.

Alex



Re: Changes to our Git infrastructure

2015-01-05 Thread Aaron J. Seigo
On Monday, January 5, 2015 22.26:24 Boudewijn Rempt wrote:
 In short, what I meant is that as a tool to dicuss code changes,
 Reviewboard is a poor thing. It facilitates nit-picking, which is
 off-putting and useless, but at least gives the reviewer the feeling he's
 done his job, while it fails at making it easy to discuss the why,
 wherefore and how of a particular change.

That is a development culture issue than no tool can fix. Reviewboard is great 
for discussing changes in the hands of people who value that sort of 
interaction. It also can be used to deliver only nitpicking in a non-
constructive manner. The difference in experience comes down to the what the 
people using it value.

Where reviewboard is not good enough is in making it easy to quickly try the 
patch (bi-directional scm integration) ... but the commenting and discussion 
features are pretty much as good as it gets.

-- 
Aaron J. Seigo

signature.asc
Description: This is a digitally signed message part.


Re: Changes to our Git infrastructure

2015-01-05 Thread Boudewijn Rempt

On Mon, 5 Jan 2015, Aaron J. Seigo wrote:


On Monday, January 5, 2015 22.26:24 Boudewijn Rempt wrote:

In short, what I meant is that as a tool to dicuss code changes,
Reviewboard is a poor thing. It facilitates nit-picking, which is
off-putting and useless, but at least gives the reviewer the feeling he's
done his job, while it fails at making it easy to discuss the why,
wherefore and how of a particular change.


That is a development culture issue than no tool can fix.


Not fix, but a tool can encourage one way or another.


Reviewboard is great
for discussing changes in the hands of people who value that sort of
interaction. It also can be used to deliver only nitpicking in a non-
constructive manner. The difference in experience comes down to the what the
people using it value.

Where reviewboard is not good enough is in making it easy to quickly try the
patch (bi-directional scm integration) ... but the commenting and discussion
features are pretty much as good as it gets.

--
Aaron J. Seigo


Re: Changes to our Git infrastructure

2015-01-05 Thread Thomas Lübking

On Montag, 5. Januar 2015 23:53:02 CEST, Boudewijn Rempt wrote:
I'm just trying to make clear that reviewboard is a crappy tool 
inciting people to write crappy reviews that drive people away. 


And I was trying to make clear that those crappy reviews are just the house 
cleaning stuff that should ideally go along w/ the functional reviews.
That you believe it's the only kind of review you get implies that you would 
simply not have gotten any other review otherwise. Not ideal, but rather 
unrelated.

Apart from any other nonsense about cultural differences (the 
standard cop-out from Dutchmen and Germans -- I ain't rude, I'm 
just honest, it's cultural!)


Sorry, I was just trying to understand what could get anyone scared about a very simple 
and direct please fix this, this and that list - it would have to be fixed 
anyway at some point.

I'm sorry if you or anyone feels offended by the way it's presented, but to 
change that, one would first need to have a remote idea, what's so driving away 
about it. And sorry again, but I really cannot even imagine - wheter you may 
call that rude or dumb.



Ian and the DrKonqui bug:
---

I think that people should read Ian's mail, with attention:

I have read Ian's mail and I do recall his review requests on DrKonqi.

I agree that the process was anything but fluid - though ultimately successful.

Apparently nobody actually felt in charge of DrKonqi then (and now, since Ian 
will apparently be sadly lost, again), so other developers, unfamiliar w/ 
DrKonqi commented on the patches - the first two of them actually focussing on 
OSX specific (or rather triggered) issues.


The last one addressed DrKonqi being broken due to bugzilla changes.

It was presented first on 30/9/2014, saw an immediate coding style and function 
design review, resolved 3/10/2014.
Followed up by a minor nitpick to not use fprintf, but kdebug and a call for 
someone w/ experience on the codebase to review on 5/10/2014

On 6/10/2014 Ian worried that he's perhaps the person most familiar with the 
codebase of Dr Konqi, having worked on it for a few months now and sugested to push 
the patch within the next 24h.

This raised immediate concerns from the release team about the size of the patch, 
discouraging to submit it to 4.14 what caused a hyperactive 7/10/2014 with the discussion 
leading to the consensus that a vastly simplified version of the patch would still be the 
best option for 4.14 (and suggestions on how to simplify things) with the result being 
finally presented 9/10/2014 and submitted and submitted in time 23h later.

I would fully agree that 7/10/2014 should have been 30/9/2014, but the most 
important thing is:

  IT TOOK A VETO FROM THE RELEASE TEAM 
   and thus

  THE THREAT OF A BROKEN DR KONQI FOR KDE SC4

to cause major interest in the patch, what is, given the DrKonqi bug was 
reported long before, a clear sign that nobody actually had a special interest.
In the end, blind ppl. were supposed to guide the one-eyed.

AND NO TOOL ON EARTH WILL EVER FIX SUCH A SITUATION.

Tools are as good or bad as the ppl. that use them. The problem is *not* that 
RB encourages nitpicks, but the problem is that there's completely unmaintained 
code where nobody feels qualified to sign off patches.

Ian is certainly the one person permitted to retire whenever he feels like, but 
/actually/, now that the worst time is passed, he would be the one to fix 
*this* problem for DrKonqi, ie. become the person to sign off patches.

Cheers,
Thomas


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 12:40, Boudewijn Rempt wrote:

All this back-and-forth about cli tools actually sounds weird to me. I 
know that the beginners who start hacking on Krita would never use any 
of them. Git on the command line is often already something they can 
be rightly proud of when they master the beginnings. Heck, I myself 
haven't used rbtools, even though the reviewboard site urges it 
strongly. Let the real experts use cli tools, and they can handle a 
bit of obscurity.


So I don't think obscure cli tools matter even one whit -- what 
matters is having the nicest possible web tools that make life for 
people as easy as possible. Ideally, people shouldn't need a kde 
identity to submit something (patch, bug report, idea, screenshot, 
plea for help), and reviewers should be able to drop into a private 
conversation with only very little effort.


Agreed. We've been looking for more friendly, better-integrated, and 
more usable tools for a long time. Not just for newcomers, but 
especially for newcomers. When you're an old hand at development, 
minimal setup of a useful tool is just not a huge burden.


I do disagree about needing a KDE identity to submit things like bug 
reports; it is not useful to be unable to follow-up with someone, and if 
they don't have an email address they're much less likely to remember to 
check back. Not to mention link spam and all sorts of other nastiness. 
Possibly allowing non-Identity account providers for non-developers is a 
good middle ground (Google, Twitter, Facebook, GitHub).


--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Boudewijn Rempt

On Mon, 5 Jan 2015, Jeff Mitchell wrote:

I do disagree about needing a KDE identity to submit things like bug reports; 
it is not useful to be unable to follow-up with someone, and if they don't 
have an email address they're much less likely to remember to check back. Not 
to mention link spam and all sorts of other nastiness. Possibly allowing 
non-Identity account providers for non-developers is a good middle ground 
(Google, Twitter, Facebook, GitHub).



Yes, that should be totally fine. The intersection of people who don't 
want a kde identity (or find it too much bother) and those people who feel 
g, t, f, gh are too invasive is really small, and, honestly, likely too 
individual to be helpful.


Boudewijn


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 12:39, Jan Kundrát wrote:


On Monday, 5 January 2015 18:01:12 CEST, Jeff Mitchell wrote:
The problem here is that you believe -- incorrectly -- that a single 
workflow cannot include more than one tool. The reason I can 
definitively say that you are incorrect is because your own preferred 
workflow involves more than one tool, regardless of how they 
interact. And if yours does, you can't complain about other workflows 
that do.


I was complaining about an IMHO artificial split where drive-by people 
submit changes in a different way than core developers. I stated that 
this introduces some needless difference to the way devs and 
contributors work, and that we should check whether there are tools 
that remove this difference. I know that e.g. Gerrit removes that 
difference, so I am not thrilled by the idea of using something 
without that feature.


Understandable, although I think that as our policy currently stands 
over who can commit to repos, this is necessary anyways (since you need 
a developer account to commit, and once you have that you could work on 
a topic branch). It's also pretty common -- e.g. most GitHub repos don't 
allow people to commit directly, but rather go through a merge request 
workflow. But I understand why you feel that this would be a regression.


That's another thing where I should have probably worded my responses 
better. The requirements I listed were things which I found valuable 
for my work. I did not mean to say that it's the only possible way of 
doing reviews, or that I found everybody who disagrees with me to be a 
moron. It's just that these features are important for me, so I would 
like to see them and I wanted to make sure they are listed as a 
requirement in a list of points gathered by the community.


OK, sorry for misunderstanding.

Maybe this misunderstanding is caused by sysadmins likely perceiving 
the requrements as hard ones which MUST be provided by any solution, 
while my impression is that we were asked to say what is important for 
us, and the evaluation is to be performed by us all together, not just 
the sysadmins.


It's definitely why Ben put out a call for people to list requirements. 
We want to make sure that we understand what people are looking for. But 
it did seem like some people (not just you) were essentially saying if 
it doesn't have X we must not use it, regardless of whether a solution 
has A, B, C, ...


Given the earlier distinction you made between contributors and 
developers, it also requires those that want to contribute patches to 
have full KDE developer accounts with commit/push access in order to 
push those diffs up for code review...something not required from a 
web interface requiring only an Identity account.


There is no need for full KDE developer account to upload changes for 
review with Gerrit. All that is needed is a regular Identity account.


OK. I was unaware of that since (normally speaking) Gerrit intercepts 
pushed refs and then pushes them into g.k.o.


--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Frank Reininghaus
Hi,

2015-01-05 19:03 GMT+01:00 Jeff Mitchell:
 On 5 Jan 2015, at 12:40, Boudewijn Rempt wrote:

 All this back-and-forth about cli tools actually sounds weird to me. I
 know that the beginners who start hacking on Krita would never use any of
 them. Git on the command line is often already something they can be rightly
 proud of when they master the beginnings. Heck, I myself haven't used
 rbtools, even though the reviewboard site urges it strongly. Let the real
 experts use cli tools, and they can handle a bit of obscurity.

 So I don't think obscure cli tools matter even one whit -- what matters is
 having the nicest possible web tools that make life for people as easy as
 possible. Ideally, people shouldn't need a kde identity to submit something
 (patch, bug report, idea, screenshot, plea for help), and reviewers should
 be able to drop into a private conversation with only very little effort.

 Agreed. We've been looking for more friendly, better-integrated, and more
 usable tools for a long time. Not just for newcomers, but especially for
 newcomers.

yes, I fully agree. It certainly makes sense to improve our tools such
that they are more convenient for maintainers and others who
contribute very frequently, but taking the needs of newcomers into
account is also very important. Ultimately, a constant stream of
newcomers is the only thing that keeps a free software project alive
in the long term.

I have read a large number of bug reports during the past few years,
and I have very often seen first-time contributions which consisted of
a patch which was generated by redirecting the output of git diff to
a file and then attached to the bug report. In my experience, thanking
the new contributor for their efforts and asking them to upload their
patch file to http://reviewboard.kde.org/ via the web interface has a
success rate of close to 100%, and often, the contributors will then
continue to fix bugs and submit more patches. I'm a bit worried that
any new patch review system which requires more effort before one can
submit a patch for review might put some potential new contributors
off. And I'm not talking about the requirement to not introduce unit
test regressions or follow the coding style or fix white space issues
here - that certainly makes sense! - but the effort that is required
before one can even use the patch review system.

Having said that, I do acknowledge that tools which are best suited
for newcomers may not be the most efficient to use for frequent
contributors and maintainers (and I appreciate all efforts that try to
improve the situation for the latter). I just wanted to highlight that
as little setup effort as possible may be a desirable property of a
patch review system if attracting many newcomers is considered an
important goal.

Cheers,
Frank


Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 17:57:19, Thomas Lübking va escriure:
 On Montag, 5. Januar 2015 17:46:51 CEST, Jeff Mitchell wrote:
  Your hatred of PHP is well noted.
 
 I don't think it's hate - but it remains an undeniable fact that it's of
 little use on typical client systems. Therefore it's a valid concern that
 people might very well be pushed off by the requirement to install it for
 the only purpose of pushing reviews via cli.

Is there any logical reason people would people be pushed off? Or is it just 
irrational?

Cheers,
  Albert

 
 Cheers,
 Thomas



Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 12:47, Thomas Lübking wrote:
Stuff that relies on present and known libraries/executables has a 
lower barrier. I've no gtk3 installation atm. and when I need to pick 
among different tools, the one that doesn't require gtk3 wins.

That may be irrational, but still happens.


I'd put window-oriented tools in a different class than CLI tools, 
because the tool using gtk3 may have a very different look and feel, 
which many users can find legitimately jarring.



Whatever you need to do your job, man.
Erheemmm i doubt need to do your job holds for potential new 
contributors in any aspect :-P


This was a comment to package X wanting to pull in a bunch of non-daemon 
libraries...not to people. :-)


--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Thomas Lübking

On Montag, 5. Januar 2015 16:10:51 CEST, Jeff Mitchell wrote:

Not at all. I perfectly understand what Jan is talking about.


To sum up my understanding:
- Nobody wants to install/use PHP (or, good god, .NET/Mono ;-) on a client.
- Nobody remotely intends to *require* this (but one can oc. *offer* tools 
written on any whatsoever exotic requirement)

Is that correct?

In case and as this does not imply a real disagreement, the issue necessarily 
/is/ a simple misunderstanding - and apparent ambiguity on the other side :-P

Cheers,
Thomas


Re: Changes to our Git infrastructure

2015-01-05 Thread Jeff Mitchell

On 5 Jan 2015, at 10:23, Thomas Lübking wrote:


On Montag, 5. Januar 2015 16:10:51 CEST, Jeff Mitchell wrote:

Not at all. I perfectly understand what Jan is talking about.


To sum up my understanding:
- Nobody wants to install/use PHP (or, good god, .NET/Mono ;-) on a 
client.


Jan doesn't want to. I can't speak for the entire developer community.

- Nobody remotely intends to *require* this (but one can oc. *offer* 
tools written on any whatsoever exotic requirement)


Correct.

--Jeff


Re: Changes to our Git infrastructure

2015-01-05 Thread Jan Kundrát

On Monday, 5 January 2015 16:05:07 CEST, Jeff Mitchell wrote:

- Existing KDE account holders can and do use git for their workflow.
- Using non-git workflow for others introduces a different 
workflow to the mix.

- Having two workflows is more complex than having just a single one.

Does it make it more understandable?


No. What you're saying is having two tools is more complex. 
It's still one workflow.


I feel like you're just language-lawyering here. The workflow I propose 
pushes the burden of producing clean patches to the contributor. The 
workflow you're advocating for appears to center around sending patches 
around, so by definition in your workflow there's a big difference in the 
way 3rd party contributors work as opposed to what KDE developers do. My 
proposal aims at closing this gap.


GitHub is a notable example showing that people don't seem to 
have an issue with a workflow that uses Git + a web-based tool 
to manage their code reviews. I'm not saying we need to end up 
with that, I just don't think it's credible to claim that it's 
too difficult or complex.


That isn't an example that proves your point, though. The GitHub workflow 
actually involves a `git push` to be done by the contributor. That means 
that the GitHub workflow relies on contributors to curate git trees, and as 
such I like that workflow [1] because both core developers and contributors 
produce the same sort of artefacts. It's a different workflow from 
uploading patches via browser or via some client-side tool, though, and I 
believe you were saying that it's fine for a CR tool to work on patches and 
not git trees.


[1] GitHub manages to screwup things when one does a rebase, but that's an 
implementation detail for the purposes of this discussion. Yes, it does 
make the workflow hardly usable for me.


Cheers,
Jan

--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/


Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 18:40:54, Boudewijn Rempt va escriure:
 I do agree, btw, with Ian, that the current reviewboard workflow is badly
 broken and can be very discouraging. It doesn't support conversation 

What do you mean it doesn't support conversation?

Cheers,
  Albert


Re: Changes to our Git infrastructure

2015-01-05 Thread Alexander Neundorf
On Monday, January 05, 2015 16:15:09 Ian Wadham wrote:
...
 I wonder also how many people have just tiptoed quietly away from the KDE
 Community rather than speak out about frustrations they may have been
 feeling.  Where *did* all those people go in the last few years?  And why?

I didn't really walk away, but the move from svn to git has made contributing 
to KDE for me harder/less fun. Just svn up in trunk/ was really nice.
Now we have hundreds of repositories, and as far as I know there is still no 
using-git-for-KDE-development-for-dummies documentation (maybe because there 
is no common workflow for all of these many repositories).

Having said that, the mail flood I get from Qt gerrit also isn't fun. After 
every comment a new review is requested... I don't have that time.

Having a system where every repository (project) automatically has its own 
wiki and bug tracker is something I would really like to have. I think this is 
especially useful with the frameworks effort. I'd really like to see a 
homepage for each of the frameworks, and such a wiki page would be a natural 
place to put it.

Alex



Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 21:51:34, Alexander Neundorf va 
escriure:
 On Monday, January 05, 2015 16:15:09 Ian Wadham wrote:
 ...
 
  I wonder also how many people have just tiptoed quietly away from the KDE
  Community rather than speak out about frustrations they may have been
  feeling.  Where *did* all those people go in the last few years?  And why?
 
 I didn't really walk away, but the move from svn to git has made
 contributing to KDE for me harder/less fun. Just svn up in trunk/ was
 really nice. Now we have hundreds of repositories, and as far as I know
 there is still no using-git-for-KDE-development-for-dummies documentation
 (maybe because there is no common workflow for all of these many
 repositories).

I think this is due to the fact that it's quite simple
git clone kde:repo
do coding
git commit
git push

Obviously i think it is simple but you think it's not, i can't write a guide 
for dummies because i think it's simple and you can't write it because you 
don't know how to write it, it'd need to people to collaborate on it.

If you can write somewhere your questions I'm sure we can find people to write 
the answers :)

Cheers,
  Albert

 Having said that, the mail flood I get from Qt gerrit also isn't fun. After
 every comment a new review is requested... I don't have that time.
 
 Having a system where every repository (project) automatically has its own
 wiki and bug tracker is something I would really like to have. I think this
 is especially useful with the frameworks effort. I'd really like to see a
 homepage for each of the frameworks, and such a wiki page would be a
 natural place to put it.
 
 Alex



Re: Changes to our Git infrastructure

2015-01-05 Thread Albert Astals Cid
El Dilluns, 5 de gener de 2015, a les 17:25:48, Thomas Lübking va escriure:
 On Montag, 5. Januar 2015 16:40:52 CEST, Jan Kundrát wrote:
  Phabricator has an equivalent of rbtools/rbt called Arcanist
  which is written in PHP.
 
 So this is actually a concern on a particular tool.
 
 Leaving aside that Phabricator seems to be owned/maintained by Facebook Inc.
 (what alone may cause significant, though irrational, veto...) this is sth.
 that needed to be accounted.

You should check your facts before calling for an irrational veto :)

http://phabricator.org - Phabricator's development is lead by Phacility, Inc.

Cheers,
  Albert

 
 How much of a problem it is is imo. atm out of scope, but eg. it would be
 less a problem on a fork/pullrequest driven workflow (esp. if a smart git
 hook would eg. support a PULLTHIS! keyword) but pretty much a showstopper
 for a RB/gerrit like approach.
 
 == The only relevant question to be answered in the current discussion is
 whether Just install php!
 is an acceptable answer to such concerns.
 
 I'd say no (because php /is/ uncommon on client systems...) - but there's
 also phc which *might* cure this particular problem for Phabricator.
 
 Cheers,
 Thomas



Re: Changes to our Git infrastructure

2015-01-05 Thread Boudewijn Rempt

On Mon, 5 Jan 2015, Albert Astals Cid wrote:



I think this is due to the fact that it's quite simple
git clone kde:repo


This requires:

* setting up gitconfig with the kde: alias. That requires finding the 
right info on techbase, as well as the awareness that techbase exists.
* figuring out the reponame for a particular project (and that isn't as 
easy as just downloading the entire trunk of kde's svn repo -- even if I 
never did that myself)



do coding
git commit


* using the commit template
* with the relevant keywords
* having a grasp of what a git commit is, especially that a commit isn't 
visbile to anyone else



git push


But not before you have

* realized that you need to push, i.e. what local and remote is
* figured out what branches are for, and how different projects handle 
those

* got your kde indenity
* posted it on the right reviewboard
* to the right reviewers

Of course it's doable, but even with cats just getting source and building 
it poses hurdles that need articles like 
http://www.davidrevoy.com/article193/building-krita-on-linux-for-cats to 
help people jump them.


I am a very fortunate and happy person: there is hardly a week when I 
don't have to guide someone through the process. Usually, half-way through 
they ask me, why doesn't KDE use github (or, less often) phabricator. Then 
I point them at the manifesto, and we usually spend another half hour 
discussing that -- most often with good results! Our story about not using 
github is not hard, but our contribution process often is.





Obviously i think it is simple but you think it's not, i can't write a guide
for dummies because i think it's simple and you can't write it because you
don't know how to write it, it'd need to people to collaborate on it.

If you can write somewhere your questions I'm sure we can find people to write
the answers :)

Cheers,
 Albert


Having said that, the mail flood I get from Qt gerrit also isn't fun. After
every comment a new review is requested... I don't have that time.

Having a system where every repository (project) automatically has its own
wiki and bug tracker is something I would really like to have. I think this
is especially useful with the frameworks effort. I'd really like to see a
homepage for each of the frameworks, and such a wiki page would be a
natural place to put it.

Alex





Re: Changes to our Git infrastructure

2015-01-05 Thread Boudewijn Rempt


Well, _obviously_ reviewboard supports raising issues and adding comments 
, but neither facilitates actual conversation, i.e. discussion on what's 
up with a particular patch at a deeper level.


In short, what I meant is that as a tool to dicuss code changes, 
Reviewboard is a poor thing. It facilitates nit-picking, which is 
off-putting and useless, but at least gives the reviewer the feeling he's 
done his job, while it fails at making it easy to discuss the why, 
wherefore and how of a particular change.


On Mon, 5 Jan 2015, Albert Astals Cid wrote:


El Dilluns, 5 de gener de 2015, a les 18:40:54, Boudewijn Rempt va escriure:

I do agree, btw, with Ian, that the current reviewboard workflow is badly
broken and can be very discouraging. It doesn't support conversation


What do you mean it doesn't support conversation?

Cheers,
 Albert