https://github.com/python/cpython/commit/4c56563f7aaed8548b604b28d65ebdbcecde7a16
commit: 4c56563f7aaed8548b604b28d65ebdbcecde7a16
branch: main
author: Adam Turner <[email protected]>
committer: AA-Turner <[email protected]>
date: 2025-05-05T15:09:19Z
summary:
GH-133336: Remove reserved ``-J`` flag for Jython (#133444)
files:
A
Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst
M Doc/using/cmdline.rst
M Doc/whatsnew/2.6.rst
M Doc/whatsnew/3.14.rst
M Python/getopt.c
diff --git a/Doc/using/cmdline.rst b/Doc/using/cmdline.rst
index fa7c9cddf9c6d6..a4889cfc36440f 100644
--- a/Doc/using/cmdline.rst
+++ b/Doc/using/cmdline.rst
@@ -670,6 +670,13 @@ Miscellaneous options
.. versionchanged:: 3.10
Removed the ``-X oldparser`` option.
+.. versionremoved:: next
+
+ :option:`!-J` is no longer reserved for use by Jython_,
+ and now has no special meaning.
+
+ .. _Jython: https://www.jython.org/
+
.. _using-on-controlling-color:
Controlling color
@@ -694,15 +701,6 @@ output. To control the color output only in the Python
interpreter, the
precedence over ``NO_COLOR``, which in turn takes precedence over
``FORCE_COLOR``.
-Options you shouldn't use
-~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. option:: -J
-
- Reserved for use by Jython_.
-
-.. _Jython: https://www.jython.org/
-
.. _using-on-envvars:
diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst
index fdccfb7deb1ed7..9dbc07a34e20a1 100644
--- a/Doc/whatsnew/2.6.rst
+++ b/Doc/whatsnew/2.6.rst
@@ -1747,7 +1747,7 @@ Interpreter Changes
-------------------------------
Two command-line options have been reserved for use by other Python
-implementations. The :option:`-J` switch has been reserved for use by
+implementations. The :option:`!-J` switch has been reserved for use by
Jython for Jython-specific options, such as switches that are passed to
the underlying JVM. :option:`-X` has been reserved for options
specific to a particular implementation of Python such as CPython,
diff --git a/Doc/whatsnew/3.14.rst b/Doc/whatsnew/3.14.rst
index d75ba9ab97373c..f09e517d4569c5 100644
--- a/Doc/whatsnew/3.14.rst
+++ b/Doc/whatsnew/3.14.rst
@@ -805,6 +805,11 @@ Other language changes
:keyword:`async with`).
(Contributed by Bénédikt Tran in :gh:`128398`.)
+* :option:`!-J` is no longer a reserved flag for Jython_,
+ and now has no special meaning.
+ (Contributed by Adam Turner in :gh:`133336`.)
+
+ .. _Jython: https://www.jython.org/
.. _whatsnew314-pep765:
diff --git
a/Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst
b/Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst
new file mode 100644
index 00000000000000..851658245d78f9
--- /dev/null
+++
b/Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst
@@ -0,0 +1,2 @@
+:option:`!-J` is no longer reserved for use by Jython.
+Patch by Adam Turner.
diff --git a/Python/getopt.c b/Python/getopt.c
index 39a6938dec7663..79bea2359ffffc 100644
--- a/Python/getopt.c
+++ b/Python/getopt.c
@@ -37,7 +37,7 @@ static const wchar_t *opt_ptr = L"";
/* Python command line short and long options */
-#define SHORT_OPTS L"bBc:dEhiIJm:OPqRsStuvVW:xX:?"
+#define SHORT_OPTS L"bBc:dEhiIm:OPqRsStuvVW:xX:?"
static const _PyOS_LongOption longopts[] = {
/* name, has_arg, val (used in switch in initconfig.c) */
@@ -133,13 +133,6 @@ int _PyOS_GetOpt(Py_ssize_t argc, wchar_t * const *argv,
int *longindex)
return opt->val;
}
- if (option == 'J') {
- if (_PyOS_opterr) {
- fprintf(stderr, "-J is reserved for Jython\n");
- }
- return '_';
- }
-
if ((ptr = wcschr(SHORT_OPTS, option)) == NULL) {
if (_PyOS_opterr) {
fprintf(stderr, "Unknown option: -%c\n", (char)option);
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]