This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Enable Treat Warning as Error on 32-bit Windows
Type: enhancement Stage: resolved
Components: Build, Windows Versions: Python 3.4, Python 3.5
process
Status: closed Resolution: rejected
Dependencies: Superseder:
Assigned To: Nosy List: loewis, paul.moore, steve.dower, tim.golden, zach.ware
Priority: low Keywords:

Created on 2014-05-01 20:30 by zach.ware, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (7)
msg217722 - (view) Author: Zachary Ware (zach.ware) * (Python committer) Date: 2014-05-01 20:30
Python 3.4 and 3.5 both compile without warnings on 32-bit Windows, so we should turn on Treat Warning as Error (/WX option to cl.exe).  Setting that property in pyproject.props sets it for all projects, and the setting does not affect "Makefile projects" so warnings from OpenSSL, Tcl, Tk, or Tix will not kill the build.  It will need to be explicitly disabled on 64-bit Windows; setting it in x64.props does the trick.

One small issue is that /WX does pick up the "no profile information" warning in the PGUpdate build.  I'm unsure whether we should turn off /WX in pgupdate.props, or just force PGUpdate builders to have run something for each PGI'd project.
msg218046 - (view) Author: Tim Golden (tim.golden) * (Python committer) Date: 2014-05-07 10:29
I'm at least +0.5 on this: I rather like the idea of forcing these things out into the open.

The reason I'm not +1 is the danger of relatively benign or trivial warnings-turned-errors getting in the way of real, possibly critical, development.
msg240300 - (view) Author: Zachary Ware (zach.ware) * (Python committer) Date: 2015-04-09 01:48
This has been complicated by the migration to VS2015, which added a bunch of new warnings.  Obviously we can't enable this now without either fixing all the warnings (unlikely, I think; most of them are just about shadowing vars) or disabling particular ones.

So at this point, fix, disable, or reject?
msg240317 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-04-09 10:50
I think we should fix all the warnings, but turning this on is a great way to make the build bots red often. I believe they already go yellow for warnings, so people are somewhat informed, but I don't think we want to be more aggressive than that.

Also, I know someone who has a patch coming that fixes most of these, so we can ignore this for a bit more and just get the fix that way if we want.
msg240318 - (view) Author: Tim Golden (tim.golden) * (Python committer) Date: 2015-04-09 10:51
Sounds good to me. It's really a question as to the point where
practicality beats purity...
msg240320 - (view) Author: Zachary Ware (zach.ware) * (Python committer) Date: 2015-04-09 13:06
Steve Dower added the comment:
> I think we should fix all the warnings, but turning this on is a great
way to make the build bots red often.

That is the obvious downside. On the other hand, we do have a very old open
issue (though I don't have the number handy) in which Guido made clear that
a build with no warnings on every possible platform would be ideal and is
desired, and this would help make sure we stay there when we reach that
point.

> I believe they already go yellow for warnings, so people are somewhat
informed, but I don't think we want to be more aggressive than that.

The individual step is colored yellow, but not the whole build. So if
you're just looking at the headings on the waterfall page, you'll never
notice. I'm not sure if we can change that setting, but that might be a
nicer solution.

> Also, I know someone who has a patch coming that fixes most of these, so
we can ignore this for a bit more and just get the fix that way if we want.

Ok, that sounds good. When that issue opens, would you mind linking it as a
dependency of this one?
msg303428 - (view) Author: Zachary Ware (zach.ware) * (Python committer) Date: 2017-09-30 20:58
We've introduced enough new warnings in the past 3 years that this is not viable at this point.  If we decide we want warnings in the compile stage to set the whole build to warnings, we can open an issue in https://github.com/python/buildmaster-config for that.
History
Date User Action Args
2022-04-11 14:58:03adminsetgithub: 65610
2017-09-30 20:58:00zach.waresetstatus: open -> closed
resolution: rejected
messages: + msg303428

stage: resolved
2015-04-09 13:06:24zach.waresetmessages: + msg240320
2015-04-09 10:51:34tim.goldensetmessages: + msg240318
2015-04-09 10:50:31steve.dowersetmessages: + msg240317
2015-04-09 01:48:12zach.waresetnosy: + paul.moore, steve.dower
messages: + msg240300
2014-05-07 10:29:06tim.goldensetmessages: + msg218046
2014-05-01 20:30:16zach.warecreate