Issue 32043: Add a new -X dev option: "developer mode" (original) (raw)

This issue has been migrated to GitHub: https://github.com/python/cpython/issues/76224

classification

Title: Add a new -X dev option: "developer mode"
Type: enhancement Stage: resolved
Components: Interpreter Core Versions: Python 3.7

process

Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: barry, vstinner
Priority: normal Keywords: patch

Created on 2017-11-16 02:43 by vstinner, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 4413 merged vstinner,2017-11-16 02:47
PR 4478 merged vstinner,2017-11-20 17:33
Messages (7)
msg306330 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-16 02:43
I propose to add a new "developer mode": a new "-X dev" command line option. In short: python3 -X dev script.py behaves as: PYTHONMALLOC=debug python3 -W default -X faulthandler script.py For the rationale, please see: https://mail.python.org/pipermail/python-dev/2017-November/150514.html
msg306331 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-16 02:48
I rewrote Py_Main() in bpo-32030 to make it very easy to implement this new feature. I wrote PR 4413 to implement -X dev.
msg306351 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-16 11:20
New changeset ccb0442a338066bf40fe417455e5a374e5238afb by Victor Stinner in branch 'master': bpo-32043: New "developer mode": "-X dev" option (#4413) https://github.com/python/cpython/commit/ccb0442a338066bf40fe417455e5a374e5238afb
msg306357 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-16 13:04
Antoine Pitrou asked me to document the performance and memory overhead of -X dev: https://mail.python.org/pipermail/python-dev/2017-November/150578.html For example, I measured an increase of +50% on the peak memory usage (measured by tracemalloc) when running test_os. Antoine proposed: """Currently, developer mode adds negligible CPU time overhead, but can increase memory consumption significantly if many small objects are allocated. This is subject to change in the future.""" https://mail.python.org/pipermail/python-dev/2017-November/150579.html
msg306619 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-21 02:59
I created bpo-32101: Add PYTHONDEVMODE=1 to enable the developer mode.
msg306620 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-21 02:59
New changeset bc9b6e29cb52f8da15613f9174af2f603131b56d by Victor Stinner in branch 'master': bpo-32043: Rephrase -X dev documentation (#4478) https://github.com/python/cpython/commit/bc9b6e29cb52f8da15613f9174af2f603131b56d
msg306621 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2017-11-21 03:03
While the discussion is not done, I close this issue to focus on other more specific issues. I completed the documentation and fixed warnings filters (bpo-32089). The option now also enables asyncio debug mode (bpo-32047). It was proposed to add an environment variable to enable the developer mode: see bpo-32101 ("Add PYTHONDEVMODE=1 to enable the developer mode"). Note: I also fixed subprocess._args_from_interpreter_flags: bpo-32094.
History
Date User Action Args
2022-04-11 14:58:54 admin set github: 76224
2017-11-21 03:03:29 vstinner set status: open -> closedresolution: fixedmessages: + stage: patch review -> resolved
2017-11-21 02:59:52 vstinner set messages: +
2017-11-21 02:59:27 vstinner set messages: +
2017-11-20 17:33:28 vstinner set pull_requests: + <pull%5Frequest4415>
2017-11-16 13:04:17 vstinner set messages: +
2017-11-16 11:20:33 vstinner set messages: +
2017-11-16 02:48:51 vstinner set messages: +
2017-11-16 02:47:58 vstinner set keywords: + patchstage: patch reviewpull_requests: + <pull%5Frequest4363>
2017-11-16 02:47:55 barry set nosy: + barry
2017-11-16 02:43:27 vstinner create