Re: [Python-Dev] MSI: Remove dependency from win32com.client module (issue4080047)
There is no b.p.o issue as it's not a bug, but a tiny copy/paste patch to clean up the code a bit while I am trying to understand how to add Python to the PATH. I see no reason for b.p.o bureaucracy. Mercurial-style workflow [1] is more beneficial to development as it doesn't require switching from console to browser for submitting changes. This way tiny changes can be integrated/updated more rapidly. 1. http://mercurial.selenic.com/wiki/ContributingChanges#The_basics:_patches_by... http://codereview.appspot.com/4080047/
On Mon, Jan 31, 2011 at 14:45, <techtonik@gmail.com> wrote:
There is no b.p.o issue as it's not a bug, but a tiny copy/paste patch to clean up the code a bit while I am trying to understand how to add Python to the PATH.
I see no reason for b.p.o bureaucracy. Mercurial-style workflow [1] is more beneficial to development as it doesn't require switching from console to browser for submitting changes. This way tiny changes can be integrated/updated more rapidly.
1.
http://mercurial.selenic.com/wiki/ContributingChanges#The_basics:_patches_by...
Please create an issue.
On Mon, 31 Jan 2011 20:45:45 +0000 techtonik@gmail.com wrote:
I see no reason for b.p.o bureaucracy. Mercurial-style workflow [1] is more beneficial to development as it doesn't require switching from console to browser for submitting changes.
Ok, why don't you contribute to Mercurial instead?
Am 31.01.2011 21:45, schrieb techtonik@gmail.com:
There is no b.p.o issue as it's not a bug, but a tiny copy/paste patch to clean up the code a bit while I am trying to understand how to add Python to the PATH.
I see no reason for b.p.o bureaucracy. Mercurial-style workflow [1] is more beneficial to development as it doesn't require switching from console to browser for submitting changes. This way tiny changes can be integrated/updated more rapidly.
The tracker is not bureaucracy, it's how our development process works. I know that Mercurial uses a different process, with patches always going to the mailing list and being reviewed there, but that would be way too much volume for python-dev considering our number of patches. BTW, you should be able to send emails to report@bugs.python.org in order to create new issues, and attachments will automatically become attached to the bug reports. Georg
On Mon, Jan 31, 2011 at 11:09 PM, Ethan Furman <ethan@stoneleaf.us> wrote:
techtonik@gmail.com wrote:
I see no reason for b.p.o bureaucracy.
It provides a place for discussion, and makes it easier to coordinate multiple efforts.
Code review system provides a better space for discussion if we are speaking about simple code cleanup. To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome. -- anatoly t.
On Mon, Jan 31, 2011 at 10:58 PM, Georg Brandl <g.brandl@gmx.net> wrote:
Am 31.01.2011 21:45, schrieb techtonik@gmail.com:
There is no b.p.o issue as it's not a bug, but a tiny copy/paste patch to clean up the code a bit while I am trying to understand how to add Python to the PATH.
I see no reason for b.p.o bureaucracy. Mercurial-style workflow [1] is more beneficial to development as it doesn't require switching from console to browser for submitting changes. This way tiny changes can be integrated/updated more rapidly.
The tracker is not bureaucracy, it's how our development process works.
Don't you want to improve this process? Code review system is a much better place to review patches than mailing list or bug tracker. Especially patches that are not related to actual bugs.
I know that Mercurial uses a different process, with patches always going to the mailing list and being reviewed there, but that would be way too much volume for python-dev considering our number of patches.
Seems reasonable. Do you have any stats how many patches are sent weekly and how many of them are actually integrated?
BTW, you should be able to send emails to report@bugs.python.org in order to create new issues, and attachments will automatically become attached to the bug reports.
Thanks. I'll keep this in mind. -- anatoly t.
2011/1/31 anatoly techtonik <techtonik@gmail.com>:
On Mon, Jan 31, 2011 at 11:09 PM, Ethan Furman <ethan@stoneleaf.us> wrote:
techtonik@gmail.com wrote:
I see no reason for b.p.o bureaucracy.
It provides a place for discussion, and makes it easier to coordinate multiple efforts.
Code review system provides a better space for discussion if we are speaking about simple code cleanup. To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
If it's not a bug or a feature request, why does it need to change? -- Regards, Benjamin
On Tue, Feb 1, 2011 at 7:58 AM, anatoly techtonik <techtonik@gmail.com> wrote:
To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
Anatoly, your constant efforts to try to force python-dev to adapt to *your* way of doing things, instead of being willing to work with the documented processes are *seriously* annoying. Which is a shame, since it obscures the fact that your underlying suggestions are often quite reasonable. Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia
On Tue, Feb 1, 2011 at 12:59 AM, Benjamin Peterson <benjamin@python.org> wrote:
I see no reason for b.p.o bureaucracy.
It provides a place for discussion, and makes it easier to coordinate multiple efforts.
Code review system provides a better space for discussion if we are speaking about simple code cleanup. To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
If it's not a bug or a feature request, why does it need to change?
Because code cleanup patches pave road for more complex pieces of work. Clean code makes patches easier to review. It saves developer's time and as a result useful patches are integrated into codebase more quickly. -- anatoly t.
Am 31.01.2011 22:58, schrieb anatoly techtonik:
On Mon, Jan 31, 2011 at 11:09 PM, Ethan Furman <ethan@stoneleaf.us> wrote:
techtonik@gmail.com wrote:
I see no reason for b.p.o bureaucracy.
It provides a place for discussion, and makes it easier to coordinate multiple efforts.
Code review system provides a better space for discussion if we are speaking about simple code cleanup. To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
Note that while the domain may be "bugs.python.org" (because that is a traditional name used by many projects), it really is an *issue tracker*, and for us, all patches are issues that should be tracked there. A mailing list works only if you have a small group of core developers who can independently organize the incoming mails using local tools, such as the read/unread marking of the email client. For a larger group this doesn't work (how do you assign a patch to someone using a mailing list?). It sure is more convenient to do patch review, but that's why we are working on Rietveld integration in the tracker. Georg
Am 31.01.2011 23:05, schrieb anatoly techtonik:
On Mon, Jan 31, 2011 at 10:58 PM, Georg Brandl <g.brandl@gmx.net> wrote:
Am 31.01.2011 21:45, schrieb techtonik@gmail.com:
There is no b.p.o issue as it's not a bug, but a tiny copy/paste patch to clean up the code a bit while I am trying to understand how to add Python to the PATH.
I see no reason for b.p.o bureaucracy. Mercurial-style workflow [1] is more beneficial to development as it doesn't require switching from console to browser for submitting changes. This way tiny changes can be integrated/updated more rapidly.
The tracker is not bureaucracy, it's how our development process works.
Don't you want to improve this process? Code review system is a much better place to review patches than mailing list or bug tracker. Especially patches that are not related to actual bugs.
If there are patches only on the code review system, others only on the issue tracker, and still others on both, people will get confused quickly. There needs to be a single canonical place to collect issues, and that needs to be the issue tracker (since bug reports cannot go anywhere else). I'm enthusiastic about anything that *improves* this process, but you're proposing to *change* it.
I know that Mercurial uses a different process, with patches always going to the mailing list and being reviewed there, but that would be way too much volume for python-dev considering our number of patches.
Seems reasonable. Do you have any stats how many patches are sent weekly and how many of them are actually integrated?
No, but you can have a look at the weekly "Summary of Python tracker issues" emails that are sent to this list by a script. Georg
On Tue, Feb 1, 2011 at 5:35 PM, anatoly techtonik <techtonik@gmail.com> wrote:
Because code cleanup patches pave road for more complex pieces of work. Clean code makes patches easier to review. It saves developer's time and as a result useful patches are integrated into codebase more quickly.
While I've occasionally wished for the ability to enter "clarification" as the issue type (especially for docs patches), simply leaving the issue type blank when none of the available categories fits has worked well enough as an alternative. If it helps, try to think of it as "this code isn't clear as it could be, which is a readability bug" Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia
On Tue, Feb 1, 2011 at 01:35, anatoly techtonik <techtonik@gmail.com> wrote:
On Tue, Feb 1, 2011 at 12:59 AM, Benjamin Peterson <benjamin@python.org> wrote:
I see no reason for b.p.o bureaucracy.
It provides a place for discussion, and makes it easier to coordinate multiple efforts.
Code review system provides a better space for discussion if we are speaking about simple code cleanup. To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
If it's not a bug or a feature request, why does it need to change?
Because code cleanup patches pave road for more complex pieces of work. Clean code makes patches easier to review. It saves developer's time and as a result useful patches are integrated into codebase more quickly. -- anatoly t.
Code cleanup patches, if you mean minor refactoring, are generally not where developer time is best spent. We could all come in and make 50 check-ins each of refactoring but the net benefit is even, if not negative. Yes, clean code is easier to work with, easier to review, etc., but keep in mind we're working with multiple branches that also need to be kept in sync. Refactoring some function in py3k should probably be replicated in release31-maint, and possibly release27-maint, otherwise patching between the branches becomes more time intensive. Adding time intensive work with no net gain is probably the last thing we want to do.
On Tue, Feb 1, 2011 at 1:38 AM, Nick Coghlan <ncoghlan@gmail.com> wrote:
On Tue, Feb 1, 2011 at 7:58 AM, anatoly techtonik <techtonik@gmail.com> wrote:
To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
Anatoly, your constant efforts to try to force python-dev to adapt to *your* way of doing things, instead of being willing to work with the documented processes are *seriously* annoying. Which is a shame, since it obscures the fact that your underlying suggestions are often quite reasonable.
I'll abandon my efforts when you prove me that current "documented process" is a top-notch way for all interested parties to do a quality contributions to make Python better. So that the process is open, straightforward, transparent and doesn't waste people's time more than necessary to communicate a change, make it visible for all interested parties, get feedback, polish and finally integrate. There are many ways for improvement, but if people won't try alternative approaches, they won't see them. I am not sure if I can manage to get to PyCon, so I didn't do any talk preparation, but if by chance I get there and there will be an Open Space, we can definitely find a lot of ways to improve Python development process for general public. As well as discuss ways to get around stdlib graveyard and dealing with really complicated problems that won't budge over the years - like out of the box UTC support. The most valuable contributions are coming from professionals, and these people often don't have enough time to follow "documented process". In the era of information abundance you often have only 140 symbols to communicate the idea, and instead of blaming people of annoying behavior, it might be more useful to make process intuitive and easy to follow. If that's not possible, there should always be an exact link to a reasonable explanation about why you need the process to be so complicated. So far only Georg explained what patches sent to mailing list will not be reviewed, because there is too much volume. But bugtracker is not a patch tracker. It doesn't allow to monitor incoming patches by module, its search is very poor. Of course mailing lists are even worse in this regard, but there is nothing Python community can't deal with. The problem is to keep non-core people outside motivated, and the biggest problem with current "documented process" is that nobody even thinks about it. -- anatoly t.
2011/2/1 anatoly techtonik <techtonik@gmail.com>:
we can definitely find a lot of ways to improve Python development process for general public
Definitely. And the future migration to Mercurial will certainly help as well. But this thread started with a patch review, not with a proposal to change the development process! For the moment, we use svn and the issue tracker. If every patch comes with its own workflow, no coordination is possible. -- Amaury Forgeot d'Arc
On Tue, Feb 1, 2011 at 09:51, anatoly techtonik <techtonik@gmail.com> wrote:
On Tue, Feb 1, 2011 at 1:38 AM, Nick Coghlan <ncoghlan@gmail.com> wrote:
On Tue, Feb 1, 2011 at 7:58 AM, anatoly techtonik <techtonik@gmail.com> wrote:
To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
Anatoly, your constant efforts to try to force python-dev to adapt to *your* way of doing things, instead of being willing to work with the documented processes are *seriously* annoying. Which is a shame, since it obscures the fact that your underlying suggestions are often quite reasonable.
I'll abandon my efforts when you prove me that current "documented process" is a top-notch way for all interested parties to do a quality contributions to make Python better. So that the process is open, straightforward, transparent and doesn't waste people's time more than necessary to communicate a change, make it visible for all interested parties, get feedback, polish and finally integrate.
The burden of proof should not be on us to prove to you why we do things the way we do them. I'm not even sure you are familiar with the process that you want to change so badly. You do realize that no one else, from the people in Misc/developers.txt to the one-time patch submitters, has a monthly process gripe, correct? It's certainly working for a few of us. There are many ways for improvement, but if people won't try
alternative approaches, they won't see them.
This is true of just about anything in the world, but I don't think it's a bad thing. We decided on something, it works, and we use it. I umpire college baseball in my free time and people like to propose tweaks to our on-field mechanics all the time because they think certain alternatives work better. To even get me to think about that stuff is a tall task because not only is my time on the job limited, my actual ability to practice these alternatives is more limited. I'll stick to what's in our book -- it works.
I am not sure if I can manage to get to PyCon, so I didn't do any talk preparation, but if by chance I get there and there will be an Open Space, we can definitely find a lot of ways to improve Python development process for general public.
I could list a few ways to improve it as well. Do we need any of them to survive? No.
The most valuable contributions are coming from professionals, and these people often don't have enough time to follow "documented process".
Sorry, but sometimes that's the cost of doing business. Just because the court system has a lengthy process for suing people doesn't mean you can skip to the end if you just want to get your money. You have to tell your story first.
In the era of information abundance you often have only 140 symbols to communicate the idea, and instead of blaming people of annoying behavior, it might be more useful to make process intuitive and easy to follow.
Thankfully Twitter is not our bug tracker.
If that's not possible, there should always be an exact link to a reasonable explanation about why you need the process to be so complicated.
There's a few things the process is, and complicated it is not. In most cases it is as simple as: report a bug, provide a failing test case, provide a complete patch, review the patch, commit the patch. To an outsider, they don't have to worry about the bug tracker fields, who's doing the commit, what branches it goes into, etc. Just write the code and it'll speak for itself. So far only Georg explained what patches sent to mailing list will not
be reviewed, because there is too much volume. But bugtracker is not a patch tracker.
Yes it is, or at least that is one of the functions it is currently serving. It doesn't allow to monitor incoming patches by module,
its search is very poor.
Patches are certainly welcome if you want to make it happen. I think it would be a nice addition.
On 2011-02-01, at 4:51 PM, anatoly techtonik wrote:
I'll abandon my efforts when you prove me that current "documented process" is a top-notch way for all interested parties to do a quality contributions to make Python better. So that the process is open, straightforward, transparent and doesn't waste people's time more than necessary to communicate a change, make it visible for all interested parties, get feedback, polish and finally integrate.
There are many ways for improvement, but if people won't try alternative approaches, they won't see them. I am not sure if I can manage to get to PyCon, so I didn't do any talk preparation, but if by chance I get there and there will be an Open Space, we can definitely find a lot of ways to improve Python development process for general public. As well as discuss ways to get around stdlib graveyard and dealing with really complicated problems that won't budge over the years - like out of the box UTC support.
The most valuable contributions are coming from professionals, and these people often don't have enough time to follow "documented process". In the era of information abundance you often have only 140 symbols to communicate the idea, and instead of blaming people of annoying behavior, it might be more useful to make process intuitive and easy to follow. If that's not possible, there should always be an exact link to a reasonable explanation about why you need the process to be so complicated.
So far only Georg explained what patches sent to mailing list will not be reviewed, because there is too much volume. But bugtracker is not a patch tracker. It doesn't allow to monitor incoming patches by module, its search is very poor. Of course mailing lists are even worse in this regard, but there is nothing Python community can't deal with. The problem is to keep non-core people outside motivated, and the biggest problem with current "documented process" is that nobody even thinks about it.
It's nice to see that you want to improve the tracker. I'm happy to point you to the appropriate place for such proposals: http://psf.upfronthosting.co.za/roundup/meta/ The mailing list about the tracker is: http://mail.python.org/mailman/listinfo/tracker-discuss As for the "mailing list/patch" proposal, I think you should drop it. It's been made abundantly clear, by people much more knowledgable about the dev process of Python than you, why it can't work. Also, not being keen on "following the documented process" is a good indication, IMHO, of unprofessionalism. -- Virgil Dupras
anatoly techtonik writes:
I'll abandon my efforts when you prove me that current "documented process" is a top-notch way for all interested parties to do a quality contributions to make Python better.
I think the product of the process speaks very well for the process.
The most valuable contributions are coming from professionals, and these people often don't have enough time to follow "documented process".
I think you have that exactly backward. It is precisely the seasoned professionals who value process most. Professionals are good at managing their own time and can handle process if they can make it routine; but they get annoyed and go away if you break their routine. It's non-professional newcomers who are most attracted by minimal process.
the biggest problem with current "documented process" is that nobody even thinks about it.
Look harder. People thinking about the "Python process" are all over this list, not to mention featured PEP authors. (It's this kind of gratuitous exaggeration that Nick speaks of.) In general, you remind me of the "let's import Japanese practices" management consultancies of the '80s. They failed dismally, because none of the famous Japanese process innovations are standalone. They depend on each other and on a common culture, both lacking in the U.S. and Europe. That doesn't mean that quality circles, JIT, and the like haven't been successfully applied outside of Japan, but they work differently and organizations had to adapt both the Japanese practices and their existing processes to get any advantage from the innovations. I think the analogy to software process, including in open, open source projects like Python, is quite strong. If you want to change the process, I believe that the most effective way is kaizen, ie, gradually improving by sanding down some rough spots, not by whacking off whole subprocesses that you believe are wasteful. Truly wasteful subprocesses generally don't survive in this environment. You should look harder to figure out what they're good for, and then gradually wean the project from them by providing alternative ways to accomplish those goals that are less wasteful, but compatible with other aspects of the existing process.
Am 01.02.2011 16:51, schrieb anatoly techtonik:
On Tue, Feb 1, 2011 at 1:38 AM, Nick Coghlan <ncoghlan@gmail.com> wrote:
On Tue, Feb 1, 2011 at 7:58 AM, anatoly techtonik <techtonik@gmail.com> wrote:
To me polluting tracker with the issues that are neither bugs nor feature requests only makes bug triaging process and search more cumbersome.
Anatoly, your constant efforts to try to force python-dev to adapt to *your* way of doing things, instead of being willing to work with the documented processes are *seriously* annoying. Which is a shame, since it obscures the fact that your underlying suggestions are often quite reasonable.
I'll abandon my efforts when you prove me that current "documented process" is a top-notch way for all interested parties to do a quality contributions to make Python better.
And who or what decides what this "top-notch way" is?
So that the process is open, straightforward, transparent
Ah. Well, that's definitely very a concise spec.
and doesn't waste people's time more than necessary to communicate a change, make it visible for all interested parties, get feedback, polish and finally integrate.
[...]
The most valuable contributions are coming from professionals, and these people often don't have enough time to follow "documented process". In the era of information abundance you often have only 140 symbols to communicate the idea,
That's a great idea for a change: report bugs by twitter. We need to set up a twitter search for #PythonBug, and then you simply enter #PythonBug the process is slow and it is converted to an issue on b.p.o. Very open, very transparent, and of course very straightforward. Let's not care about how to reach the submitter when clarification is needed, or what to do about patches. If it doesn't fit into 140 characters, it doesn't exist!
and instead of blaming people of annoying behavior, it might be more useful to make process intuitive and easy to follow. If that's not possible, there should always be an exact link to a reasonable explanation about why you need the process to be so complicated.
The new devguide (docs.python.org/devguide) should provide exactly that, and in a central location.
So far only Georg explained what patches sent to mailing list will not be reviewed, because there is too much volume. But bugtracker is not a patch tracker.
As I explained, it is an *issue tracker*. And since in 99% of cases there is an actual issue underlying a patch, it is more than justified to use it to track issues that have patches.
It doesn't allow to monitor incoming patches by module, its search is very poor. Of course mailing lists are even worse in this regard, but there is nothing Python community can't deal with.
Exactly, so let us continue the ongoing work in improving the tracker.
The problem is to keep non-core people outside motivated, and the biggest problem with current "documented process" is that nobody even thinks about it.
I think others already wrote enough about that. Georg
On 02/01/2011 09:51 AM, anatoly techtonik wrote:
So far only Georg explained what patches sent to mailing list will not be reviewed, because there is too much volume. But bugtracker is not a patch tracker. It doesn't allow to monitor incoming patches by module, its search is very poor. Of course mailing lists are even worse in this regard, but there is nothing Python community can't deal with. The problem is to keep non-core people outside motivated, and the biggest problem with current "documented process" is that nobody even thinks about it.
I've seen quite a bit of changes over the years. Yes, it's happens over years because the release schedule is fairly long. They try not to interrupt the current schedule too much, so bigger changes to the development process are usually made after a major release is done, rather than during the middle. Lately (the last two years) things have been quite a bit busier with the addition of python3.x. Once we get to where we are (mostly) only concentrating on one major version again, then it will be easer to make process changes. (Less things to mess up if it goes wrong.) I think after this next release is completed you will see more efforts turning to improving the process. Some of the vary things you have been trying to pointed out I think. As far as patches getting attention, it's getting better there too. Every time you make a comment or update an issue with a patch change, it gets reported to the bugs list. Many of the core developers watch that and will add them self to the nosey list on that issue if it has something to do with the parts of python they know. If you have a patch that you feel is complete and is ready to go into the next release or a bug fix for the current one, post a comment on the issue asking for a review. Chances are you will get a reply in a few days. I've found searching for other patches related to my patches helps. I can search the tracker or the bug list for the module or problem I'm working on. It's really not that hard to find related issues. Then I can post a comment on those issues when I can be of help, and also post on that issue a link to the related issue I'm working on. Python is a large project with a *huge* user base. So changes are considered very carefully. Probably the hardest part is making changes in a way that is very unlikely to break someone's program. Mess up someone's pay role process some place (even by the smallest change) and people will get very unhappy really quick. It's also not good to crash space shuttles or google. ;-) Cheers, Ron
participants (12)
-
Amaury Forgeot d'Arc
-
anatoly techtonik
-
Antoine Pitrou
-
Benjamin Peterson
-
Brian Curtin
-
Ethan Furman
-
Georg Brandl
-
Nick Coghlan
-
Ron Adam
-
Stephen J. Turnbull
-
techtonik@gmail.com
-
Virgil Dupras