The previous version of the procedure could miss breakpoints when extra `EXTENDED_ARG` instructions are added before the injected code. This happened because in some corner cases after updating the opcodes to lines mapping an `EXTENDED_ARG` instruction could land as the last instruction in a line, and the instruction which argument it extends - on another. This lead to the situation when it was impossible to detect that we have hit the next line. These changes also add the ability to trace opcodes when the `PYDEVD_TRACE_OPCODES` environment variable is set to `True` (available only for Cython) to ease the debugging of such cases in the future.
(cherry picked from commit 77399d3b7b2b9bc6aac1b85d59ae305500cb6ecb)
GitOrigin-RevId: 105bf9d3d2cc51a940b03b1cb11c07e97074048b
* Do not provide references for "open" in Django (already done by another code)
* Do not use full resolve for class and functions names. In most cases "resolve", "ManyToMany" and "ModelForm" are imported as-is, not with aliases.
GitOrigin-RevId: 8a0803e6b19482654c91186aa9754ea3d91da282
On platforms where "fork" is not available or not used by multiprocessing
root logger configuration is not automatically inherited and, thus, we loose
messages sent by worker processes. So as not to depend on particular
implementation of the module, e.g. by checking sys.platform or
multiprocessing.get_start_method(), we now explicitly reset and setup
logging anew in every created process.
GitOrigin-RevId: 572b5a1a77346f46421a6dd1e0ed0b1ed9c4ca6f
The problem was that an implementation of IdeLanguageCustomization for Python got excluded from PyCharm builds due
to recent refactoring of the Python-related modules. This change brings it back and restores Python as the first
language in the list of languages in the Editor | Code Style settings.
GitOrigin-RevId: 0e00c712ee1b24a88babec78084b27956a9b53e7
With the new version of skeleton generator we kept process stderr in logs but
stopped reflecting a failed to start generator run anyhow in UI.
GitOrigin-RevId: 9cffaa0bd89655faf43d542a22249458801cfbd6
On the whole, such stub calls look shaggy and could probably be replaced by
plain parameterless invocations altogether. It's also doubtful why we use
them only when analyzing docstrings of non-function callables, but questioning
whether they are needed in the first place seems out of scope of the current
issue. At least we don't produce warnings while generating them anymore.
GitOrigin-RevId: 25650f121e88141df081874f346d0cff2d31e3bb
Make PythonSdkConfigurator to be a project listener. It will catch opening project with .idea inside, or from recent projects list, or getting it from vcs.
GitOrigin-RevId: fcf3a7a37b4675670fad654efcc786f9f7fe9df1
in production InspectionEP#displayName should be used; highlighting tests just do not use default names
GitOrigin-RevId: f0c172e568219499e7b96982fe352c7d1d3acc69
If a process was started with `-m` key (and converted to `--module` flag), this parameter will be passed to all its child processes. So we need to clear this flag in SetupHolder before patching arguments
GitOrigin-RevId: 00ae0b23fc6107bee75272a03a5bd15ca474fbc7