Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Python: Dev

Re: Community buildbots and Python release quality metrics

 

 

Python dev RSS feed   Index | Next | Previous | View Threaded


martin at v

Jun 26, 2008, 10:14 AM

Post #1 of 9 (541 views)
Permalink
Re: Community buildbots and Python release quality metrics

> That's also why the alpha is called an alpha. My informal understanding
> is that a beta should have no (or at least very few) known issues

No, that's not the purpose. Instead, it is a promise that no further
features will be added, i.e. that the code is stable from a feature
point of view.

It certainly will contain bugs. The final release will certainly contain
bugs, just look at the long list of open bug reports.

> The issue, for me, is not specifically that tests are red. It's that
> there's no clear policy about what to do about that. Can a release go
> out with some of the tests being red? If so, what are the extenuating
> circumstances?

The final release, no. The beta release: sure (in particular if it's the
first beta release).

Also make a difference between the Python buildbots, and the community
buildbots. I think few if any core committers ever look at the status
of the community buildbots - the community has to bring breakage to
our attention (as you just did).

> Does this have to be fixed? If not, why not?

Here, I'm confused what specifically you talk about. That Django doesn't
import? It is certainly not part of the release procedure to verify that
Django can still be imported.

> Why are
> we talking about this now? Shouldn't the change which caused Django to
> become unimportable have been examined at the time, rather than months
> later?

Somebody should have pointed it out when it happened. Unfortunately,
nobody did, so apparently, the community doesn't really care.

> I don't know. JP is already addressing the issues affecting Twisted in
> another thread (incompatible changes in the private-but-necessary-to-
> get-any-testing-done API of the warnings module). But I really think
> that whoever made the change which broke it should be the one
> investigating it, not me.

How could they have known that they broke it?

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jun 26, 2008, 10:23 AM

Post #2 of 9 (516 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

> A big part of why I wrote this message is that I wanted a clear
> understanding of the relationship between the definition of "alpha",
> "beta" and "RC" and the state of various buildbots. If that
> relationship exists already, just linking to it from
> http://python.org/download/releases/2.6/ would be good. By the way,
> that page still says these are "alpha" releases.

I think its significantly simpler to answer specific questions on the
mailing list, to educate the specific set of people who have this
question, than to put an official answer on the web page.

So I'm skeptical that anybody will change the web page - just continue
asking questions as you encounter them.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


glyph at divmod

Jun 26, 2008, 12:35 PM

Post #3 of 9 (501 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

On 05:14 pm, martin [at] v wrote:
>>I don't know. JP is already addressing the issues affecting Twisted
>>in
>>another thread (incompatible changes in the private-but-necessary-to-
>>get-any-testing-done API of the warnings module). But I really think
>>that whoever made the change which broke it should be the one
>>investigating it, not me.
>
>How could they have known that they broke it?

Because the relevant community buildbot turned red with that revision of
trunk. Keep in mind I'm not talking about every piece of Python code in
the universe; just the ones selected for the community buildbots. It
would be nice if there were a dozen or so projects on there, but paying
attention to the two builders that do actually run right now would be a
good start.
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jun 26, 2008, 1:00 PM

Post #4 of 9 (507 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

> I want python developers to pay attention to the community buildbots

I don't think that goal is realistic. Instead, somebody who has actual
interest in this matter should pay this attention, and then bring it up
on python-dev when something breaks.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jun 26, 2008, 1:23 PM

Post #5 of 9 (505 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

> I don't ascribe this to malice -
> it really *would* be much harder to fix it now, for us as well as for him.

I think I disagree. It's easier to fix it now than it was to fix it back
then. Fixing it back then would have meant to constantly observe the
buildbots, and keep them running, so it would be a huge effort to
maintain the infrastructure just to find a the few changes that
unintentially broke something.

Looking at them now is a lot of effort, also. But this effort is
feasible, once the root cause is identified, the patch causing it might
just get backed out. Maintaining the community buildbots has proven
infeasible.

It's unfortunate that many package authors don't understand that not
all breakage is deliberate, and that their only chance to get undesired
breakage reverted is to report bugs NOW.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


ncoghlan at gmail

Jun 27, 2008, 4:18 AM

Post #6 of 9 (492 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

glyph [at] divmod wrote:
>
> I do tend to ramble on, so here's an executive summary of my response:
>
> I want python developers to pay attention to the community buildbots and
> to treat breakages of existing projects as a serious issue.

Counter-proposal:

* Interested developers or users of the major third party projects
tested by the community buildbots should monitor the community
buildbots, and start filing bug reports with the appropriate party as
soon as the upcoming Python release hits 2.Xa1 (i.e. first alpha).

* If the failure is due to an incompatibility between Python 2.X and
2.X-1, then the bug report should be filed against Python. While these
issues may or may not be addressed before the first beta, they *must* be
addressed before the first release candidate.

* If the failure is due to an incompatibility between Python 2.X and
2.X-2 that was properly deprecated in 2.X-1, then the bug report should
be filed against the third party project. Prioritising these is a
question for the developers of that project.

* Before filing a bug report against Python for a community buildbot
failure, check if the relevant regression is also causing failures of
the core buildbots. If it is, skip the bug report until the core
buildbots are passing again.

It's currently a fact of life that we do NOT keep the trunk in an
always-releasable state. We just don't. It might be nice if we did,
there are lots of reasons why that's a good way to run a project, but at
this point in time it isn't the case with Python. Reacting every time a
community buildbot goes red would be a serious waste of effort.

Cheers,
Nick.

--
Nick Coghlan | ncoghlan [at] gmail | Brisbane, Australia
---------------------------------------------------------------
http://www.boredomandlaziness.org
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jul 6, 2008, 10:29 AM

Post #7 of 9 (426 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

> (I'd also like to improve the labels of the build slaves. What exactly
> is "x86 Red Hat 9 trunk" testing? Trunk of what? What project?)

It seems like you would like to edit the master configuration file.
That can be arranged fairly easily.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


stephen at xemacs

Jul 6, 2008, 10:40 AM

Post #8 of 9 (422 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

glyph [at] divmod writes:
> On 01:02 am, grig.gheorghiu [at] gmail wrote:
> >To bring my $0.02 to this discussion: the Pybots 'community buildbots'
> >turned out largely to be a failure.
>
> Let's not say it's a failure. Let's instead say that it hasn't yet
> become a success :-).

+1

> >I still haven't given up, and I hope this thread will spur project
> >leaders into donating time, or resources, to the Pybots project.

> I think this list is the wrong place to go to reach the people who need
> to be reached. It's python core developers and other people already
> involved in and aware of core development. That said I'm not sure what
> the *right* place is; I think your blog is syndicated on the unofficial
> planet python, so maybe that's a good place to start. Sadly, the right
> thing to do in terms of drumming up support is to get someone interested
> in PR and have them go to each project individually, but that might be
> more effort than setting up the buildbots themselves, at least
> initially...

Exactly, and that's why nobody should be "bitter" about it. The
problem is that the while overall the effort and rewards look to be
balanced in favor of the rewards, the startup costs for individuals
are quite high.

I think this *is* the place to start, though. The project leaders
"should" be, and probably generally are, "here". They have the
strongest interest in any individual 'bot, while Guido is quite
correct in saying python-dev can't afford to have strong interest in
all the bots.

> However, let's say that this were tremendously successful, and lots of
> people start paying attention. I think pybots.org needs to be updated
> to say exactly what a participant interested in python testing needs to
> do, beyond "here's how you set up a buildbot" (a page that is actually a
> daunting-looking blog post which admits it may be somewhat outdated),
> because setting up a buildbot might not be the only thing that the
> project needs. It's one thing to tell people that they need to be
> helping out (and I'm sure you're right) but it's much more useful to get
> the message out that "we really need people to do X, Y, and Z". One
> thing I will definitely commit to is that if you make a "cry for help"
> page, I'll blog about it to drive attention to it, and I'll encourage
> the other, perhaps better-read Python bloggers I know to do so as
> well.

Two suggestions in this vein: First, I think it's established that
some but not all "red community bots" *are* of interest to Python core
development. While I'm not aware of the technical details, I estimate
that triaging the community 'bot failures is probably similar to
reviewing bugs in the Python tracker. Perhaps Martin van Loewis and
others who have offered the 5-for-1 review deal would be willing to
extend the definition of "review" to include initial bug reports based
on a red community bot (ie, you review the community 'bot failure and
decide it is something that should concern Python core development).
Perhaps that's not appropriate, but a similar system could be set up.

Second, something intermediate between the occasional half-hour of
triaging bugs and a full-blown PR campaign at the projects would be
documenting the criteria for reporting a failure on a community 'bot
to the Python tracker as a bug, etc. This would also serve as a basis
for talking to project lurker who might have the odd half-hour to do
some "red bot" triaging. (By criteria I mean the kinds of things that
Python core considers necessary breakage in new versions that
downstream must address in their own code, vs. regressions in a x.y.z
patchlevel, etc. The kind of thing that glyph and Guido were
discussing earlier.)

> It would be good to remove the perception that it's somebody else's
> problem as much as possible.

To the extent that a 'bot is running prerelease project against
prerelease Python, this is probably not very doable. If Python is
stable and the project version is prerelease, it's the project's bug
until proven otherwise, and vice versa. If both are stable, again
some expertise is probably needed for triage.

I guess that means that one important task is to classfy the bots in a
two-by-two matrix according to stability of project and Python
respectively.

_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


glyph at divmod

Jul 8, 2008, 12:30 PM

Post #9 of 9 (412 views)
Permalink
Re: Community buildbots and Python release quality metrics [In reply to]

On 6 Jul, 05:29 pm, martin [at] v wrote:
>>(I'd also like to improve the labels of the build slaves. What
>>exactly
>>is "x86 Red Hat 9 trunk" testing? Trunk of what? What project?)
>
>It seems like you would like to edit the master configuration file.
>That can be arranged fairly easily.

How shall we arrange it, then? :)

Whoever is interested, I've got a recent SSH key on
https://launchpad.net/~glyph/+sshkeys
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com

Python dev RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.