summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Dahlstrom <dahlstrom@google.com>2022-06-21 11:00:00 -0700
committerDana Dahlstrom <dahlstrom@google.com>2022-06-21 11:00:00 -0700
commite336a4a02d8dcf2d070996dfaf99936434c6957e (patch)
tree912e28aefe511bdb02e98e49cfd82f8963d2c10d
parentef3c07f6f9d86ea9e0821b9cc92614c7092939a5 (diff)
parent064c82b1d564413391cbddaedd073c29a774cb73 (diff)
downloadidea-e336a4a02d8dcf2d070996dfaf99936434c6957e.tar.gz
Merge IntelliJ IDEA 2022.1 221.5080.210
Change-Id: I064c82b1d564413391cbddaedd073c29a774cb73
-rw-r--r--.idea/kotlinc.xml2
-rw-r--r--.idea/libraries/SSHJ.xml6
-rw-r--r--.idea/libraries/fixed_kotlin_jps_plugin_classpath.xml6
-rw-r--r--.idea/libraries/kotlinc_allopen_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_analysis_api_providers.xml6
-rw-r--r--.idea/libraries/kotlinc_analysis_project_structure.xml6
-rw-r--r--.idea/libraries/kotlinc_android_extensions_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_high_level_api.xml6
-rw-r--r--.idea/libraries/kotlinc_high_level_api_fir.xml6
-rw-r--r--.idea/libraries/kotlinc_high_level_api_fir_tests.xml6
-rw-r--r--.idea/libraries/kotlinc_high_level_api_impl_base.xml6
-rw-r--r--.idea/libraries/kotlinc_high_level_api_impl_base_tests.xml6
-rw-r--r--.idea/libraries/kotlinc_incremental_compilation_impl_tests.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_build_common_tests.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_cli.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_common.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_fe10.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_fir.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_ir.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_testdata.xml4
-rw-r--r--.idea/libraries/kotlinc_kotlin_compiler_tests.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_dist.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_gradle_statistics.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_jps_common.xml7
-rw-r--r--.idea/libraries/kotlinc_kotlin_jps_plugin_classpath.xml7
-rw-r--r--.idea/libraries/kotlinc_kotlin_reflect.xml7
-rw-r--r--.idea/libraries/kotlinc_kotlin_scripting_common.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_scripting_compiler_impl.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_scripting_jvm.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlin_stdlib.xml18
-rw-r--r--.idea/libraries/kotlinc_kotlin_stdlib_minimal_for_test.xml6
-rw-r--r--.idea/libraries/kotlinc_kotlinx_serialization_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_lombok_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_low_level_api_fir.xml6
-rw-r--r--.idea/libraries/kotlinc_noarg_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_parcelize_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_sam_with_receiver_compiler_plugin.xml6
-rw-r--r--.idea/libraries/kotlinc_symbol_light_classes.xml6
-rw-r--r--.idea/libraries/tips_pycharm_community.xml4
-rw-r--r--build.txt2
-rw-r--r--build/dependencies/gradle.properties4
-rw-r--r--build/groovy/org/jetbrains/intellij/build/BaseIdeaProperties.groovy1
-rw-r--r--build/groovy/org/jetbrains/intellij/build/CommunityStandaloneJpsBuilder.groovy7
-rw-r--r--build/tasks/src/org/jetbrains/intellij/build/tasks/trace.kt2
-rw-r--r--build/tests/testSrc/org/jetbrains/intellij/build/IdeaCommunityBuildTest.kt4
-rw-r--r--community-resources/src/idea/IdeaApplicationInfo.xml4
-rw-r--r--community-resources/src/idea_community_logo.pngbin100545 -> 86668 bytes
-rw-r--r--community-resources/src/idea_community_logo@2x.pngbin270173 -> 225935 bytes
-rw-r--r--java/compiler/impl/src/com/intellij/compiler/impl/CompileDriver.java4
-rw-r--r--java/execution/impl/src/com/intellij/execution/application/JvmMainMethodRunConfigurationOptions.kt2
-rw-r--r--java/idea-ui/resources/assets/ignore/gradle.gitignore.txt5
-rw-r--r--java/idea-ui/resources/assets/ignore/intellij.gitignore.txt3
-rw-r--r--java/idea-ui/resources/assets/ignore/maven.gitignore.txt5
-rw-r--r--java/idea-ui/src/com/intellij/ide/impl/NewProjectUtil.java15
-rw-r--r--java/idea-ui/src/com/intellij/ide/projectWizard/ProjectTypeStep.java2
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/local/StarterModuleBuilder.kt2
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterInitialStep.kt1
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterLibrariesStep.kt1
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/remote/WebStarterModuleBuilder.kt2
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterInitialStep.kt1
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterLibrariesStep.kt1
-rw-r--r--java/idea-ui/src/com/intellij/ide/starters/shared/FormUiUtil.kt13
-rw-r--r--java/idea-ui/src/com/intellij/ide/util/newProjectWizard/AbstractProjectWizard.java2
-rw-r--r--java/java-features-trainer/resources/messages/JavaLessonsBundle.properties21
-rw-r--r--java/java-features-trainer/src/com/intellij/java/ift/lesson/run/JavaDebugLesson.kt40
-rw-r--r--java/java-impl/src/META-INF/JavaPlugin.xml2
-rw-r--r--java/java-impl/src/com/intellij/codeInsight/daemon/problems/pass/ProjectProblemCodeVisionProvider.kt57
-rw-r--r--java/java-impl/src/com/intellij/codeInsight/highlighting/JavaPairedBraceMatcher.java69
-rw-r--r--java/java-impl/src/com/intellij/codeInsight/highlighting/PairedBraceAndAnglesMatcher.java95
-rw-r--r--java/java-impl/src/com/intellij/codeInsight/hints/AnnotationInlayProvider.kt6
-rw-r--r--java/java-impl/src/com/intellij/codeInsight/hints/JavaVcsCodeVisionContext.kt3
-rw-r--r--java/java-impl/src/com/intellij/codeInspection/deadCode/UnusedDeclarationPresentation.java3
-rw-r--r--java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java6
-rw-r--r--java/java-tests/testSrc/com/intellij/java/navigation/SearchEverywhereTabsCustomizationTest.kt63
-rw-r--r--java/java-tests/testSrc/com/intellij/java/psi/formatter/java/JavadocFormatterTest.kt20
-rw-r--r--jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsModelSerializationDataService.java4
-rw-r--r--jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsPathMacroContributor.java26
-rw-r--r--json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java47
-rw-r--r--platform/analysis-impl/resources/messages/FindBundle.properties2
-rw-r--r--platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/BuildContextImpl.groovy2
-rw-r--r--platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy31
-rw-r--r--platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PluginLayout.groovy41
-rw-r--r--platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/IntellijIconClassGeneratorConfig.kt5
-rw-r--r--platform/build-scripts/resources/linux/scripts/remote-dev-server.sh2
-rw-r--r--platform/build-scripts/resources/win/scripts/executable-template.bat6
-rw-r--r--platform/build-scripts/testFramework/src/org/jetbrains/intellij/build/testFramework/buildScriptTestUtils.kt54
-rw-r--r--platform/configuration-store-impl/src/ProjectStoreBridge.kt7
-rw-r--r--platform/configuration-store-impl/src/ProjectStoreImpl.kt2
-rw-r--r--platform/core-api/src/com/intellij/openapi/application/PathMacroContributor.java8
-rw-r--r--platform/core-api/src/com/intellij/util/graph/GraphAlgorithms.java23
-rw-r--r--platform/core-impl/src/com/intellij/util/graph/impl/Bfs.java53
-rw-r--r--platform/core-impl/src/com/intellij/util/graph/impl/Dfs.java42
-rw-r--r--platform/core-impl/src/com/intellij/util/graph/impl/GraphAlgorithmsImpl.java39
-rw-r--r--platform/core-impl/src/com/intellij/util/graph/impl/SimpleCyclesIterator.java329
-rw-r--r--platform/diff-api/resources/messages/DiffBundle.properties32
-rw-r--r--platform/diff-impl/src/com/intellij/diff/settings/ExternalDiffSettingsPanel.kt17
-rw-r--r--platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsModels.kt23
-rw-r--r--platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTablePanel.kt288
-rw-r--r--platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTreePanel.kt316
-rw-r--r--platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffSettings.kt58
-rw-r--r--platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffToolUtil.java14
-rw-r--r--platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarAdditionAction.kt11
-rw-r--r--platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarEditConfigurationAction.kt2
-rw-r--r--platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/SourceFolderManagerImpl.kt8
-rw-r--r--platform/icons/src/toolbarDecorator/exportSmall.svg5
-rw-r--r--platform/icons/src/toolbarDecorator/exportSmall_dark.svg5
-rw-r--r--platform/ide-core/resources/messages/ApplicationBundle.properties8
-rw-r--r--platform/ide-core/src/com/intellij/openapi/actionSystem/IdeActions.java1
-rw-r--r--platform/indexing-impl/src/com/intellij/psi/search/FilenameIndexImpl.java3
-rw-r--r--platform/lang-api/src/com/intellij/codeInsight/hints/InlayHintsProvider.kt7
-rw-r--r--platform/lang-api/src/com/intellij/codeInsight/hints/InlayParameterHintsProvider.java3
-rw-r--r--platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereContributor.java3
-rw-r--r--platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/TabsCustomizationStrategy.kt18
-rw-r--r--platform/lang-core/src/com/intellij/ide/util/projectWizard/WizardContext.java9
-rw-r--r--platform/lang-impl/resources/codeVisionProviders/problems/preview.java5
-rw-r--r--platform/lang-impl/resources/codeVisionProviders/vcs.code.vision/preview.java5
-rw-r--r--platform/lang-impl/resources/messages/CodeVisionBundle.properties5
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionHost.kt84
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionProvider.kt14
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionState.kt12
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionGroupDefaultSettingModel.kt26
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionSettingsLiveModel.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionListData.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionSelectionController.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/ProjectCodeVisionModel.kt13
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/popup/CodeVisionContextPopup.kt11
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionRichTextPainter.kt17
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionTheme.kt23
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionThemeInfoProvider.kt36
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionVisionTextPainter.kt8
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/DelimiterPainter.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/ParameterHintsPresentationManager.java17
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/InlayHintsUtils.kt31
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionPass.kt38
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionProviderAdapter.kt12
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/DaemonBoundCodeVisionProvider.kt5
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/presentation/TextInlayPresentation.kt2
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/settings/InlaySettingsPanel.kt43
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/NewInlayProviderSettingsModel.kt31
-rw-r--r--platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/ParameterInlayProviderSettingsModel.kt14
-rw-r--r--platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/execution/services/ServiceViewManagerImpl.java10
-rw-r--r--platform/lang-impl/src/com/intellij/find/actions/ShowUsagesAction.java20
-rw-r--r--platform/lang-impl/src/com/intellij/find/impl/JComboboÑ…Action.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/find/impl/TextSearchContributor.kt4
-rw-r--r--platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/ContributorDefinedTabsCustomizationStrategy.kt9
-rw-r--r--platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/FixedTabsListCustomizationStrategy.kt8
-rw-r--r--platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereHeader.java14
-rw-r--r--platform/lang-impl/src/com/intellij/ide/bookmark/BookmarkOccurrence.kt3
-rw-r--r--platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkInEditor.kt10
-rw-r--r--platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkService.kt10
-rw-r--r--platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserCombo.java39
-rw-r--r--platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java7
-rw-r--r--platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexImpl.java8
-rw-r--r--platform/lang-impl/testSources/com/intellij/ide/actions/searcheverywhere/HeaderTabsTest.kt70
-rw-r--r--platform/platform-api/resources/messages/IdeBundle.properties2
-rw-r--r--platform/platform-api/resources/messages/UIBundle.properties2
-rw-r--r--platform/platform-api/src/com/intellij/ide/ui/search/SearchEverywhereTabsCustomization.kt18
-rw-r--r--platform/platform-api/src/com/intellij/openapi/GitRepositoryInitializer.java9
-rw-r--r--platform/platform-api/src/com/intellij/openapi/GitSilentFileAdder.java64
-rw-r--r--platform/platform-api/src/com/intellij/openapi/GitSilentFileAdderProvider.java18
-rw-r--r--platform/platform-api/src/com/intellij/openapi/MnemonicWrapper.java2
-rw-r--r--platform/platform-api/src/com/intellij/util/ui/ListTableModel.java6
-rw-r--r--platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintRenderer.kt2
-rw-r--r--platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintUtil.kt9
-rw-r--r--platform/platform-impl/src/com/intellij/featureStatistics/fusCollectors/OsDataCollector.kt36
-rw-r--r--platform/platform-impl/src/com/intellij/ide/CommandLineProcessor.java2
-rw-r--r--platform/platform-impl/src/com/intellij/ide/IdeTooltipManager.java2
-rw-r--r--platform/platform-impl/src/com/intellij/ide/actionMacro/ActionMacroManager.java7
-rw-r--r--platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java33
-rw-r--r--platform/platform-impl/src/com/intellij/ide/plugins/InstalledPluginsTableModel.java13
-rw-r--r--platform/platform-impl/src/com/intellij/ide/plugins/PluginInstaller.java11
-rw-r--r--platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.java57
-rw-r--r--platform/platform-impl/src/com/intellij/ide/projectWizard/NewProjectWizardCollector.kt136
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/AppearanceConfigurable.kt2
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/PluginBooleanOptionDescriptor.java12
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/UITheme.java5
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/customization/CustomActionsSchema.java4
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/customization/CustomizationUtil.java3
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula.theme.json2
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/laf/intellijlaf.theme.json3
-rw-r--r--platform/platform-impl/src/com/intellij/ide/ui/search/DefaultSearchEverywhereTabsCustomization.kt10
-rw-r--r--platform/platform-impl/src/com/intellij/ide/wizard/AbstractNewProjectWizardMultiStepWithAddButton.kt11
-rw-r--r--platform/platform-impl/src/com/intellij/ide/wizard/GitNewProjectWizardStep.kt2
-rw-r--r--platform/platform-impl/src/com/intellij/ide/wizard/NewProjectWizardStepPanel.kt10
-rw-r--r--platform/platform-impl/src/com/intellij/ide/wizard/UIWizardUtil.kt16
-rw-r--r--platform/platform-impl/src/com/intellij/notification/impl/NotificationsToolWindow.kt34
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButton.java3
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java1
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java2
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/fileChooser/actions/FileDeleteAction.java8
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileSaverDialogImpl.java2
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/fileChooser/impl/FileChooserPanelImpl.java54
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorComposite.java5
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/pluginsAdvertisement/PluginAdvertiserEditorNotificationProvider.kt29
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/wm/impl/DesktopLayout.kt8
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameDecorator.java9
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowManagerImpl.kt13
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentLayout.java16
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java46
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java3
-rw-r--r--platform/platform-impl/src/com/intellij/toolWindow/InternalDecoratorImpl.kt5
-rw-r--r--platform/platform-impl/src/com/intellij/toolWindow/ToolWindowDefaultLayoutManager.kt5
-rw-r--r--platform/platform-impl/src/com/intellij/toolWindow/ToolWindowSetInitializer.kt8
-rw-r--r--platform/platform-impl/src/com/intellij/ui/WindowMouseListener.java2
-rw-r--r--platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt4
-rw-r--r--platform/platform-resources-en/src/inspectionDescriptions/IncorrectFormatting.html12
-rw-r--r--platform/platform-resources-en/src/messages/ActionsBundle.properties8
-rw-r--r--platform/platform-resources/src/META-INF/LangExtensions.xml1
-rw-r--r--platform/platform-resources/src/META-INF/PlatformExtensionPoints.xml4
-rw-r--r--platform/platform-resources/src/META-INF/PlatformExtensions.xml8
-rw-r--r--platform/platform-tests/testSrc/com/intellij/openapi/components/impl/PathMacroManagerTest.java2
-rw-r--r--platform/platform-tests/testSrc/com/intellij/openapi/diagnostic/RollingFileHandlerTest.kt4
-rw-r--r--platform/projectModel-impl/resources/META-INF/ProjectModelImpl.xml2
-rw-r--r--platform/projectModel-impl/src/com/intellij/application/options/PathMacrosImpl.kt3
-rw-r--r--platform/projectModel-impl/src/com/intellij/openapi/components/impl/ModulePathMacroManager.java23
-rw-r--r--platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectPathMacroManager.java32
-rw-r--r--platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectWidePathMacroContributor.java42
-rw-r--r--platform/projectModel-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/roots/ModuleRootComponentBridge.kt10
-rw-r--r--platform/projectModel-impl/src/com/intellij/workspaceModel/ide/jpsEntitySources.kt12
-rw-r--r--platform/remoteDev-util/src/com/intellij/remoteDev/thinClientLink/ClientLinkModels.kt6
-rw-r--r--platform/remoteDev-util/src/com/intellij/remoteDev/util/UrlParameterKeys.kt1
-rw-r--r--platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCase.java35
-rw-r--r--platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCaseBase.java2
-rw-r--r--platform/usageView-impl/src/com/intellij/usages/impl/UsagePreviewPanel.java2
-rw-r--r--platform/util/resources/misc/registry.properties6
-rw-r--r--platform/util/src/com/intellij/icons/AllIcons.java1
-rw-r--r--platform/util/src/com/intellij/openapi/diagnostic/RollingFileHandler.kt16
-rw-r--r--platform/util/src/com/intellij/util/EnvironmentUtil.java14
-rw-r--r--platform/util/ui/src/com/intellij/ui/icons/ImageDescriptor.java8
-rw-r--r--platform/util/ui/src/com/intellij/util/ImageLoader.java3
-rw-r--r--platform/vcs-api/src/com/intellij/openapi/vcs/VcsFileListenerContextHelper.java50
-rw-r--r--platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java17
-rw-r--r--platform/vcs-impl/resources/META-INF/VcsExtensions.xml3
-rw-r--r--platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeAuthorInlayHintsCollector.kt2
-rw-r--r--platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeVisionProvider.kt68
-rw-r--r--platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/apply/GenericPatchApplier.java2
-rw-r--r--platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/formove/TriggerAdditionOrDeletion.java10
-rw-r--r--platform/vcs-impl/src/com/intellij/openapi/vcs/VcsFileListenerContextHelperImpl.java76
-rw-r--r--platform/vcs-impl/src/com/intellij/openapi/vcs/VcsVFSListener.java65
-rw-r--r--platform/vcs-impl/src/com/intellij/openapi/vcs/actions/VcsQuickActionsToolbarPopup.kt7
-rw-r--r--platform/vcs-impl/src/com/intellij/openapi/vcs/impl/projectlevelman/RecursiveFilePathSet.java4
-rw-r--r--platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt6
-rw-r--r--platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogNavigationUtil.kt9
-rw-r--r--platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectEntitiesLoader.kt4
-rw-r--r--platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSerializersImpl.kt11
-rw-r--r--platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/ImlReplaceBySourceTest.kt2
-rw-r--r--platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/DelayedProjectSynchronizerTest.kt6
-rw-r--r--platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectReloadingTest.kt4
-rw-r--r--platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAfterChangesTest.kt4
-rw-r--r--platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAllEntitiesTest.kt14
-rw-r--r--platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/jpsTestUtils.kt34
-rw-r--r--plugins/color-schemes/all-hallows-eve-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/blackboard-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/cobalt-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/github-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/monokai-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/rails-casts-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/twilight-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/vibrant-ink-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/color-schemes/warm-neon-color-scheme/resources/META-INF/plugin.xml3
-rw-r--r--plugins/devkit/devkit-core/gen/org/jetbrains/idea/devkit/DevKitIcons.java (renamed from plugins/devkit/devkit-core/gen/icons/DevkitIcons.java)8
-rw-r--r--plugins/devkit/devkit-core/src/module/IdePluginModuleBuilder.kt3
-rw-r--r--plugins/devkit/devkit-core/src/navigation/DescriptionTypeRelatedItemLineMarkerProvider.java14
-rw-r--r--plugins/devkit/devkit-core/src/navigation/ExtensionDeclarationRelatedItemLineMarkerProvider.java9
-rw-r--r--plugins/devkit/devkit-core/src/navigation/LineMarkerInfoHelper.java34
-rw-r--r--plugins/devkit/devkit-core/src/references/DevKitRelatedPropertiesProvider.java14
-rw-r--r--plugins/devkit/devkit-core/src/run/PluginRunConfiguration.java2
-rw-r--r--plugins/devkit/devkit-core/src/testAssistant/TestDataLineMarkerProvider.java3
-rw-r--r--plugins/devkit/devkit-java-tests/testData/referenceCollector/TestMetadataDataNoTopLevel.java28
-rw-r--r--plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTest.java8
-rw-r--r--plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/ExtensionPointDeclarationRelatedItemLineMarkerProviderTest.java6
-rw-r--r--plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/testAssistant/TestDataReferenceCollectorTest.java7
-rw-r--r--plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTestBase.java6
-rw-r--r--plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/ExtensionDeclarationRelatedItemLineMarkerProviderTestBase.java7
-rw-r--r--plugins/git4idea/resources/META-INF/plugin.xml2
-rw-r--r--plugins/git4idea/resources/messages/GitBundle.properties1
-rw-r--r--plugins/git4idea/src/git4idea/GitNotificationIdsHolder.kt2
-rw-r--r--plugins/git4idea/src/git4idea/GitRefreshUsageCollector.kt36
-rw-r--r--plugins/git4idea/src/git4idea/GitStatisticsCollector.kt22
-rw-r--r--plugins/git4idea/src/git4idea/actions/GitInit.java5
-rw-r--r--plugins/git4idea/src/git4idea/actions/GitQuickActionsToolbarPopup.kt15
-rw-r--r--plugins/git4idea/src/git4idea/ignore/GitIgnoreInStoreDirGenerator.kt2
-rw-r--r--plugins/git4idea/src/git4idea/repo/GitRepositoryInitializerImpl.java25
-rw-r--r--plugins/git4idea/src/git4idea/repo/GitSilentFileAdderProvider.kt88
-rw-r--r--plugins/git4idea/src/git4idea/repo/GitUntrackedFilesHolder.java4
-rw-r--r--plugins/git4idea/src/git4idea/status/GitStagingAreaHolder.java4
-rw-r--r--plugins/git4idea/src/git4idea/util/GitFileUtils.java8
-rw-r--r--plugins/github/resources/messages/GithubBundle.properties3
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/GHPRTimelineFileEditor.kt1
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHMarkdownToHtmlConverter.kt9
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHPRDiffReviewSupportImpl.kt16
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChange.kt (renamed from plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeInfo.kt)20
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeApplier.kt85
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighter.kt2
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRDiffEditorReviewComponentsFactoryImpl.kt12
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponent.kt44
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponentFactory.kt23
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewSuggestedChangeComponentFactory.kt127
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewThreadComponent.kt22
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/data/provider/GHPRReviewDataProviderImpl.kt1
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRDiffRequestChainProducer.kt8
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRSuggestedChangeHelper.kt52
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRFileEditorComponentFactory.kt28
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRTimelineItemComponentFactory.kt9
-rw-r--r--plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/toolwindow/GHPRViewComponentFactory.kt5
-rw-r--r--plugins/github/test/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighterTest.kt2
-rw-r--r--plugins/gradle/java/src/service/project/wizard/AbstractGradleModuleBuilder.java11
-rw-r--r--plugins/gradle/java/src/service/project/wizard/groovy/GradleGroovyNewProjectWizard.kt21
-rw-r--r--plugins/gradle/src/org/jetbrains/plugins/gradle/execution/target/GradleServerEnvironmentSetupImpl.kt6
-rw-r--r--plugins/grazie/resources/META-INF/plugin.xml19
-rw-r--r--plugins/grazie/src/intellij.grazie.core.iml4
-rw-r--r--plugins/groovy/groovy-psi/resources/inlayProviders/groovy.parameters.hints/type.parameter.list.groovy10
-rw-r--r--plugins/groovy/groovy-psi/resources/messages/GroovyBundle.properties5
-rw-r--r--plugins/groovy/resources/inlayProviders/Parameters/preview.groovy5
-rw-r--r--plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/GroovyInlayParameterHintsProvider.kt3
-rw-r--r--plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyLocalVariableTypeHintsInlayProvider.kt36
-rw-r--r--plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsCollector.kt3
-rw-r--r--plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsInlayProvider.kt8
-rw-r--r--plugins/groovy/src/org/jetbrains/plugins/groovy/config/wizard/IntelliJGroovyNewProjectWizard.kt19
-rw-r--r--plugins/ide-features-trainer/intellij.featuresTrainer.iml1
-rw-r--r--plugins/ide-features-trainer/res/META-INF/plugin.xml2
-rw-r--r--plugins/ide-features-trainer/src/training/featuresSuggester/FeatureSuggestersManager.kt1
-rw-r--r--plugins/ide-features-trainer/src/training/featuresSuggester/SuggestingUtils.kt2
-rw-r--r--plugins/ide-features-trainer/src/training/learn/lesson/general/assistance/LocalHistoryLesson.kt15
-rw-r--r--plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/caches/project/KotlinStdlibCache.kt55
-rw-r--r--plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/compiler/configuration/KotlinJpsPluginSettings.kt6
-rw-r--r--plugins/kotlin/frontend-independent/resources-en/messages/KotlinBundle.properties4
-rw-r--r--plugins/kotlin/gradle/gradle-idea/src/org/jetbrains/kotlin/idea/gradle/configuration/cachedCompilerArgumentsRestoring.kt9
-rw-r--r--plugins/kotlin/gradle/gradle-tooling/src/org/jetbrains/kotlin/idea/gradleTooling/reflect/KotlinNativeCompileReflection.kt9
-rw-r--r--plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.receivers.parameters.kt15
-rw-r--r--plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.return.kt12
-rw-r--r--plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.parameter.kt11
-rw-r--r--plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.return.kt6
-rw-r--r--plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.property.kt10
-rw-r--r--plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.variable.kt11
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPairMatcher.kt25
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPluginMacros.kt32
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/codeInsight/hints/KotlinCallChainHintsProvider.kt12
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/inspections/UnnecessaryOptInAnnotationInspection.kt68
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/jps/SetupKotlinJpsPluginBeforeCompileTask.kt4
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/ApplicationWideKotlinBundledPathMacroCleaner.kt24
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/KotlinBundledPathMacroContributor.kt44
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/projectWizard/WizardStatsService.kt3
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/kotlinRefactoringUtil.kt9
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt4
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPropertyProcessor.kt4
-rw-r--r--plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/script/configuration/MultipleScriptDefinitionsChecker.kt3
-rw-r--r--plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/KotlinBraceMatcherTest.kt28
-rw-r--r--plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/TypedHandlerTest.kt17
-rw-r--r--plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java45
-rw-r--r--plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/bottom-mpp/build.gradle26
-rw-r--r--plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/top-mpp/build.gradle56
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument.kt15
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument2.kt15
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionOptionalArgument.kt15
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue.kt15
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue2.kt15
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage1.kt17
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage2.kt19
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage3.kt17
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt16
-rw-r--r--plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt.after15
-rw-r--r--plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/stackFrame/InlineStackTraceCalculator.kt126
-rw-r--r--plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionTestGenerated.java5
-rw-r--r--plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java5
-rw-r--r--plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionTestGenerated.java5
-rw-r--r--plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java5
-rw-r--r--plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt35
-rw-r--r--plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.out47
-rw-r--r--plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/capturedValues2.out2
-rw-r--r--plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/frameSharedVarLocalVar.out2
-rw-r--r--plugins/kotlin/plugin/resources/META-INF/highlighting.xml2
-rw-r--r--plugins/kotlin/plugin/resources/META-INF/kotlin-core.xml3
-rw-r--r--plugins/kotlin/plugin/resources/META-INF/plugin.xml26
-rw-r--r--plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt9
-rw-r--r--plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/testUtils.kt6
-rw-r--r--plugins/kotlin/project-wizard/cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/pom.xml2
-rw-r--r--plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties3
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/Podfile5
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName.xcodeproj/project.pbxproj319
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AccentColor.colorset/Contents.json11
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AppIcon.appiconset/Contents.json98
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/Contents.json6
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/ContentView.swift.vm16
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Info.plist48
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Preview Content/Preview Assets.xcassets/Contents.json6
-rw-r--r--plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/appName.swift.vm10
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/ir/buildsystem/BuildSystemPluginIR.kt5
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/IOSModuleConfigurator.kt45
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/NativeTargetConfigurator.kt21
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt2
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/buildSystem/BuildSystemPlugin.kt9
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/ModuleType.kt6
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt13
-rw-r--r--plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/mpp/MobileMppTemplate.kt17
-rw-r--r--plugins/kotlin/project-wizard/gradle/src/org/jetbrains/kotlin/tools/projectWizard/gradle/GradleKotlinNewProjectWizard.kt19
-rw-r--r--plugins/kotlin/project-wizard/idea/resources/messages/KotlinNewProjectWizardUIBundle.properties5
-rw-r--r--plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/IntelliJKotlinNewProjectWizard.kt20
-rw-r--r--plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/BuildSystemTypeSettingComponent.kt17
-rw-r--r--plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/FirstWizardStepComponent.kt33
-rw-r--r--plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt14
-rw-r--r--plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/setting/TitledComponentsList.kt10
-rw-r--r--plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt3
-rw-r--r--plugins/kotlin/project-wizard/maven/src/org/jetbrains/kotlin/tools/projectWizard/maven/MavenKotlinNewProjectWizard.kt18
-rw-r--r--plugins/kotlin/util/project-model-updater/resources/model.properties2
-rw-r--r--plugins/kotlin/util/project-model-updater/src/org/jetbrains/tools/model/updater/kotlincLibraries.kt8
-rw-r--r--plugins/markdown/core/resources/inlayProviders/MarkdownTableInlayProviderSettingsKey/preview.md5
-rw-r--r--plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenArtifactResolveResult.java34
-rw-r--r--plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenServerEmbedder.java11
-rw-r--r--plugins/maven/maven2-server-impl/src/org/jetbrains/idea/maven/server/embedder/Maven2ServerEmbedderImpl.java29
-rw-r--r--plugins/maven/maven3-server-impl/src/org/jetbrains/idea/maven/server/Maven3XServerEmbedder.java59
-rw-r--r--plugins/maven/maven30-server-impl/src/org/jetbrains/idea/maven/server/Maven30ServerEmbedderImpl.java8
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenCompilerAnnotationProcessorPathsImporter.java11
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenProjectImporter.kt7
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/configurers/MavenAnnotationProcessorConfigurer.java2
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/tree/MavenProjectImportContextProvider.java7
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/indices/MavenArchetypeManager.java27
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectBuilder.kt60
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectWizard.kt18
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettings.java23
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.form49
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.java3
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java20
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManagerWatcher.java2
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenResolveResultProcessor.java21
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/server/DummyMavenServerConnector.kt6
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/server/MavenEmbedderWrapper.java11
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/statistics/MavenSettingsCollector.kt6
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenTreeStructureProvider.kt2
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.java9
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/AbstractMavenModuleBuilder.java2
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/InternalMavenModuleBuilder.java3
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenModuleBuilderHelper.java68
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenProjectBuilder.java2
-rw-r--r--plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/archetype/MavenArchetypeNewProjectWizard.kt10
-rw-r--r--plugins/maven/src/main/resources/META-INF/plugin.xml4
-rw-r--r--plugins/maven/src/main/resources/messages/MavenConfigurableBundle.properties3
-rw-r--r--plugins/maven/src/main/resources/messages/MavenSyncBundle.properties2
-rw-r--r--plugins/maven/src/test/java/org/jetbrains/idea/maven/importing/tree/MavenProjectTreeImporterTest.java10
-rw-r--r--plugins/maven/src/test/java/org/jetbrains/idea/maven/project/MavenSettingsTest.java6
-rw-r--r--plugins/ui-designer/src/com/intellij/uiDesigner/palette/Palette.java16
-rw-r--r--python/build/testSrc/org/jetbrains/intellij/build/pycharm/PyCharmCommunityBuildTest.kt7
-rw-r--r--python/helpers/pydev/_pydev_bundle/pydev_console_utils.py2
-rw-r--r--python/helpers/pydev/_pydev_bundle/pydev_log.py2
-rw-r--r--python/helpers/pydev/_pydev_bundle/pydev_monkey.py4
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_additional_thread_info_regular.py2
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_breakpoints.py2
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_comm.py8
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_console_integration.py2
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_custom_frames.py2
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython.c5948
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython.pyx7
-rwxr-xr-xpython/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_27_64.sobin601608 -> 601616 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_310_64.cpython-310-darwin.sobin717152 -> 717152 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_36_64.cpython-36m-darwin.sobin699136 -> 699136 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_37_64.cpython-37m-darwin.sobin715528 -> 715536 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_38_64.cpython-38-darwin.sobin699544 -> 699544 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_39_64.cpython-39-darwin.sobin715888 -> 715888 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_32.pydbin326656 -> 326656 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_64.pydbin376320 -> 375808 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_32.cp310-win32.pydbin334336 -> 334336 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_64.cp310-win_amd64.pydbin387584 -> 387584 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_32.cp36-win32.pydbin366080 -> 365568 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_64.cp36-win_amd64.pydbin408064 -> 408064 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_32.cp37-win32.pydbin356352 -> 356352 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_64.cp37-win_amd64.pydbin399360 -> 399360 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_32.cp38-win32.pydbin368128 -> 367616 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_64.cp38-win_amd64.pydbin422912 -> 422912 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_32.cp39-win32.pydbin335360 -> 335360 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_64.cp39-win_amd64.pydbin388608 -> 388096 bytes
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_dont_trace_files.py4
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_trace_dispatch_regular.py4
-rw-r--r--python/helpers/pydev/_pydevd_bundle/pydevd_vars.py6
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.c6
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win32.pydbin75264 -> 75264 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win_amd64.pydbin94208 -> 94208 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win32.pydbin86528 -> 86528 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win_amd64.pydbin104448 -> 104448 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win32.pydbin76800 -> 76800 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win_amd64.pydbin94720 -> 94720 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win32.pydbin75776 -> 75776 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win_amd64.pydbin94720 -> 94720 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win32.pydbin75776 -> 75776 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win_amd64.pydbin94208 -> 94208 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-310-darwin.sobin165680 -> 165680 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-36m-darwin.sobin165512 -> 165512 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-37m-darwin.sobin165648 -> 165648 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-38-darwin.sobin165672 -> 165672 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-darwin.sobin165680 -> 165680 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.pyx2
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_310_64.cpython-310-darwin.sobin93840 -> 110232 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_36_64.cpython-36m-darwin.sobin93680 -> 93680 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_37_64.cpython-37m-darwin.sobin93904 -> 93904 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_38_64.cpython-38-darwin.sobin110128 -> 110128 bytes
-rwxr-xr-xpython/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_39_64.cpython-39-darwin.sobin93760 -> 110144 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_32.cp310-win32.pydbin39936 -> 39936 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_64.cp310-win_amd64.pydbin50176 -> 50176 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_32.cp36-win32.pydbin49152 -> 49152 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_64.cp36-win_amd64.pydbin58880 -> 58880 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_32.cp37-win32.pydbin39936 -> 39936 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_64.cp37-win_amd64.pydbin49664 -> 49664 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_32.cp38-win32.pydbin39936 -> 39936 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_64.cp38-win_amd64.pydbin50176 -> 50176 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_32.cp39-win32.pydbin39936 -> 39936 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_64.cp39-win_amd64.pydbin50176 -> 50176 bytes
-rw-r--r--python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_tracing.py4
-rw-r--r--python/helpers/pydev/pydev_tests/test_pydevconsole.py4
-rw-r--r--python/helpers/pydev/pydevconsole.py6
-rw-r--r--python/helpers/pydev/pydevd.py6
-rw-r--r--python/helpers/pydev/pydevd_concurrency_analyser/pydevd_concurrency_logger.py2
-rw-r--r--python/helpers/typeshed/stdlib/@python2/__builtin__.pyi356
-rw-r--r--python/helpers/typeshed/stdlib/@python2/builtins.pyi356
-rw-r--r--python/helpers/typeshed/stdlib/_typeshed/__init__.pyi45
-rw-r--r--python/helpers/typeshed/stdlib/builtins.pyi1112
-rw-r--r--python/ideCoreSrc/idea/PyCharmCoreApplicationInfo.xml4
-rw-r--r--python/pydevSrc/com/jetbrains/python/debugger/PyTypeHandler.java36
-rw-r--r--python/python-features-trainer/resources/messages/PythonLessonsBundle.properties8
-rw-r--r--python/python-psi-impl/src/com/jetbrains/python/inspections/PyTypedDictInspection.kt4
-rw-r--r--python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyEvaluator.java2
-rw-r--r--python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java45
-rw-r--r--python/resources/pycharm_core_logo.pngbin87622 -> 158115 bytes
-rw-r--r--python/resources/pycharm_core_logo@2x.pngbin239902 -> 453070 bytes
-rw-r--r--python/src/META-INF/python-core-common.xml2
-rw-r--r--python/src/com/jetbrains/python/console/PydevConsoleCommunication.java2
-rw-r--r--python/src/com/jetbrains/python/console/PydevConsoleRunnerImpl.java3
-rw-r--r--python/src/com/jetbrains/python/console/PythonConsoleView.java3
-rw-r--r--python/testData/hierarchy/call/Static/Super/Super_callee_verification.xml4
-rw-r--r--python/testData/inspections/PyTypeCheckerInspection/ListLiteralPassedToIter.py1
-rw-r--r--python/testSrc/com/jetbrains/python/Py3TypeTest.java10
-rw-r--r--python/testSrc/com/jetbrains/python/PyLineBreakpointTypeTest.kt2
-rw-r--r--python/testSrc/com/jetbrains/python/PyPathEvaluatorTest.java20
-rw-r--r--python/testSrc/com/jetbrains/python/PyStructureViewTest.java34
-rw-r--r--python/testSrc/com/jetbrains/python/inspections/Py3TypeCheckerInspectionTest.java5
-rw-r--r--python/testSrc/com/jetbrains/python/inspections/PyTypedDictInspectionTest.java16
-rw-r--r--tools/intellij.ide.starter/src/com/intellij/ide/starter/utils/retry.kt4
536 files changed, 9622 insertions, 6214 deletions
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
index 5bd7f087d0c5..564590a6a488 100644
--- a/.idea/kotlinc.xml
+++ b/.idea/kotlinc.xml
@@ -11,6 +11,6 @@
<option name="additionalArguments" value="-version -Xno-param-assertions -Xno-call-assertions -Xno-receiver-assertions -Xjvm-default=enable -Xuse-old-backend -Xopt-in=kotlin.io.path.ExperimentalPathApi -Xopt-in=kotlin.RequiresOptIn -Xopt-in=com.intellij.openapi.util.IntellijInternalApi" />
</component>
<component name="KotlinJpsPluginSettings">
- <option name="version" value="1.6.10-release-952" />
+ <option name="version" value="1.6.10-release-971" />
</component>
</project> \ No newline at end of file
diff --git a/.idea/libraries/SSHJ.xml b/.idea/libraries/SSHJ.xml
index f91d22afcace..762255df86fe 100644
--- a/.idea/libraries/SSHJ.xml
+++ b/.idea/libraries/SSHJ.xml
@@ -1,6 +1,6 @@
<component name="libraryTable">
<library name="SSHJ" type="repository">
- <properties maven-id="org.jetbrains.intellij.deps:sshj:0.32.0.1">
+ <properties maven-id="org.jetbrains.intellij.deps:sshj:0.32.0-idea2">
<exclude>
<dependency maven-id="org.slf4j:slf4j-api" />
<dependency maven-id="org.bouncycastle:bcprov-jdk15on" />
@@ -9,13 +9,13 @@
</exclude>
</properties>
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/intellij/deps/sshj/0.32.0.1/sshj-0.32.0.1.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/intellij/deps/sshj/0.32.0-idea2/sshj-0.32.0-idea2.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/com/hierynomus/asn-one/0.6.0/asn-one-0.6.0.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/net/i2p/crypto/eddsa/0.3.0/eddsa-0.3.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/intellij/deps/sshj/0.32.0.1/sshj-0.32.0.1-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/intellij/deps/sshj/0.32.0-idea2/sshj-0.32.0-idea2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/com/hierynomus/asn-one/0.6.0/asn-one-0.6.0-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/net/i2p/crypto/eddsa/0.3.0/eddsa-0.3.0-sources.jar!/" />
</SOURCES>
diff --git a/.idea/libraries/fixed_kotlin_jps_plugin_classpath.xml b/.idea/libraries/fixed_kotlin_jps_plugin_classpath.xml
index 372a7030b670..e31baef56ead 100644
--- a/.idea/libraries/fixed_kotlin_jps_plugin_classpath.xml
+++ b/.idea/libraries/fixed_kotlin_jps_plugin_classpath.xml
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<component name="libraryTable">
<library name="fixed.kotlin-jps-plugin-classpath" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-jps-plugin-classpath:1.6.10-release-952" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-jps-plugin-classpath:1.6.10-release-971" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.10-release-952/kotlin-jps-plugin-classpath-1.6.10-release-952.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.10-release-971/kotlin-jps-plugin-classpath-1.6.10-release-971.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.10-release-952/kotlin-jps-plugin-classpath-1.6.10-release-952-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.10-release-971/kotlin-jps-plugin-classpath-1.6.10-release-971-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_allopen_compiler_plugin.xml b/.idea/libraries/kotlinc_allopen_compiler_plugin.xml
index 0d31b28bc63a..bf61ffd052a9 100644
--- a/.idea/libraries/kotlinc_allopen_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_allopen_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.allopen-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:allopen-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:allopen-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/allopen-compiler-plugin-for-ide/1.6.20-RC-release-227/allopen-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/allopen-compiler-plugin-for-ide/1.6.20-release-285/allopen-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/allopen-compiler-plugin-for-ide/1.6.20-RC-release-227/allopen-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/allopen-compiler-plugin-for-ide/1.6.20-release-285/allopen-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_analysis_api_providers.xml b/.idea/libraries/kotlinc_analysis_api_providers.xml
index 40ecbf098b6f..4e3ba1c93b67 100644
--- a/.idea/libraries/kotlinc_analysis_api_providers.xml
+++ b/.idea/libraries/kotlinc_analysis_api_providers.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.analysis-api-providers" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:analysis-api-providers-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:analysis-api-providers-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-api-providers-for-ide/1.6.20-RC-release-227/analysis-api-providers-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-api-providers-for-ide/1.6.20-release-285/analysis-api-providers-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-api-providers-for-ide/1.6.20-RC-release-227/analysis-api-providers-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-api-providers-for-ide/1.6.20-release-285/analysis-api-providers-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_analysis_project_structure.xml b/.idea/libraries/kotlinc_analysis_project_structure.xml
index 3f06de71923c..7765c923bab8 100644
--- a/.idea/libraries/kotlinc_analysis_project_structure.xml
+++ b/.idea/libraries/kotlinc_analysis_project_structure.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.analysis-project-structure" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:analysis-project-structure-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:analysis-project-structure-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-project-structure-for-ide/1.6.20-RC-release-227/analysis-project-structure-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-project-structure-for-ide/1.6.20-release-285/analysis-project-structure-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-project-structure-for-ide/1.6.20-RC-release-227/analysis-project-structure-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/analysis-project-structure-for-ide/1.6.20-release-285/analysis-project-structure-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_android_extensions_compiler_plugin.xml b/.idea/libraries/kotlinc_android_extensions_compiler_plugin.xml
index 9a09a1da8da9..08048fa5b963 100644
--- a/.idea/libraries/kotlinc_android_extensions_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_android_extensions_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.android-extensions-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:android-extensions-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:android-extensions-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/android-extensions-compiler-plugin-for-ide/1.6.20-RC-release-227/android-extensions-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/android-extensions-compiler-plugin-for-ide/1.6.20-release-285/android-extensions-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/android-extensions-compiler-plugin-for-ide/1.6.20-RC-release-227/android-extensions-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/android-extensions-compiler-plugin-for-ide/1.6.20-release-285/android-extensions-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_high_level_api.xml b/.idea/libraries/kotlinc_high_level_api.xml
index 20af3ce5f942..cc8343399e24 100644
--- a/.idea/libraries/kotlinc_high_level_api.xml
+++ b/.idea/libraries/kotlinc_high_level_api.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.high-level-api" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-for-ide/1.6.20-RC-release-227/high-level-api-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-for-ide/1.6.20-release-285/high-level-api-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-for-ide/1.6.20-RC-release-227/high-level-api-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-for-ide/1.6.20-release-285/high-level-api-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_high_level_api_fir.xml b/.idea/libraries/kotlinc_high_level_api_fir.xml
index 3293e1cb2854..f3c6d3e2df9e 100644
--- a/.idea/libraries/kotlinc_high_level_api_fir.xml
+++ b/.idea/libraries/kotlinc_high_level_api_fir.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.high-level-api-fir" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-fir-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-fir-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-for-ide/1.6.20-RC-release-227/high-level-api-fir-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-for-ide/1.6.20-release-285/high-level-api-fir-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-for-ide/1.6.20-RC-release-227/high-level-api-fir-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-for-ide/1.6.20-release-285/high-level-api-fir-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_high_level_api_fir_tests.xml b/.idea/libraries/kotlinc_high_level_api_fir_tests.xml
index 58bfe289d9e1..16f7652f279f 100644
--- a/.idea/libraries/kotlinc_high_level_api_fir_tests.xml
+++ b/.idea/libraries/kotlinc_high_level_api_fir_tests.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.high-level-api-fir-tests" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-fir-tests-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-fir-tests-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-tests-for-ide/1.6.20-RC-release-227/high-level-api-fir-tests-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-tests-for-ide/1.6.20-release-285/high-level-api-fir-tests-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-tests-for-ide/1.6.20-RC-release-227/high-level-api-fir-tests-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-fir-tests-for-ide/1.6.20-release-285/high-level-api-fir-tests-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_high_level_api_impl_base.xml b/.idea/libraries/kotlinc_high_level_api_impl_base.xml
index 37d3eb976d14..ccbc1a12ceae 100644
--- a/.idea/libraries/kotlinc_high_level_api_impl_base.xml
+++ b/.idea/libraries/kotlinc_high_level_api_impl_base.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.high-level-api-impl-base" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-impl-base-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-impl-base-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-for-ide/1.6.20-RC-release-227/high-level-api-impl-base-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-for-ide/1.6.20-release-285/high-level-api-impl-base-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-for-ide/1.6.20-RC-release-227/high-level-api-impl-base-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-for-ide/1.6.20-release-285/high-level-api-impl-base-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_high_level_api_impl_base_tests.xml b/.idea/libraries/kotlinc_high_level_api_impl_base_tests.xml
index 41156fcfeae3..f818a7a1705d 100644
--- a/.idea/libraries/kotlinc_high_level_api_impl_base_tests.xml
+++ b/.idea/libraries/kotlinc_high_level_api_impl_base_tests.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.high-level-api-impl-base-tests" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-impl-base-tests-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:high-level-api-impl-base-tests-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-tests-for-ide/1.6.20-RC-release-227/high-level-api-impl-base-tests-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-tests-for-ide/1.6.20-release-285/high-level-api-impl-base-tests-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-tests-for-ide/1.6.20-RC-release-227/high-level-api-impl-base-tests-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/high-level-api-impl-base-tests-for-ide/1.6.20-release-285/high-level-api-impl-base-tests-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_incremental_compilation_impl_tests.xml b/.idea/libraries/kotlinc_incremental_compilation_impl_tests.xml
index 08b1986ef317..b2087c9f9dc3 100644
--- a/.idea/libraries/kotlinc_incremental_compilation_impl_tests.xml
+++ b/.idea/libraries/kotlinc_incremental_compilation_impl_tests.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.incremental-compilation-impl-tests" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:incremental-compilation-impl-tests-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:incremental-compilation-impl-tests-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/incremental-compilation-impl-tests-for-ide/1.6.20-RC-release-227/incremental-compilation-impl-tests-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/incremental-compilation-impl-tests-for-ide/1.6.20-release-285/incremental-compilation-impl-tests-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/incremental-compilation-impl-tests-for-ide/1.6.20-RC-release-227/incremental-compilation-impl-tests-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/incremental-compilation-impl-tests-for-ide/1.6.20-release-285/incremental-compilation-impl-tests-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_build_common_tests.xml b/.idea/libraries/kotlinc_kotlin_build_common_tests.xml
index 9f489f5b0ca1..976d45960f70 100644
--- a/.idea/libraries/kotlinc_kotlin_build_common_tests.xml
+++ b/.idea/libraries/kotlinc_kotlin_build_common_tests.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-build-common-tests" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-build-common-tests-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-build-common-tests-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-build-common-tests-for-ide/1.6.20-RC-release-227/kotlin-build-common-tests-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-build-common-tests-for-ide/1.6.20-release-285/kotlin-build-common-tests-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-build-common-tests-for-ide/1.6.20-RC-release-227/kotlin-build-common-tests-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-build-common-tests-for-ide/1.6.20-release-285/kotlin-build-common-tests-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_cli.xml b/.idea/libraries/kotlinc_kotlin_compiler_cli.xml
index ebafd2200ea4..c1a7c59674ff 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_cli.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_cli.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-cli" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-cli-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-cli-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-cli-for-ide/1.6.20-RC-release-227/kotlin-compiler-cli-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-cli-for-ide/1.6.20-release-285/kotlin-compiler-cli-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-cli-for-ide/1.6.20-RC-release-227/kotlin-compiler-cli-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-cli-for-ide/1.6.20-release-285/kotlin-compiler-cli-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_common.xml b/.idea/libraries/kotlinc_kotlin_compiler_common.xml
index 14ccda0cac49..c1cac9e9f835 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_common.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_common.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-common" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-common-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-common-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-common-for-ide/1.6.20-RC-release-227/kotlin-compiler-common-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-common-for-ide/1.6.20-release-285/kotlin-compiler-common-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-common-for-ide/1.6.20-RC-release-227/kotlin-compiler-common-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-common-for-ide/1.6.20-release-285/kotlin-compiler-common-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_fe10.xml b/.idea/libraries/kotlinc_kotlin_compiler_fe10.xml
index 99e3bac116ff..1685cc09b4f2 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_fe10.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_fe10.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-fe10" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-fe10-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-fe10-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fe10-for-ide/1.6.20-RC-release-227/kotlin-compiler-fe10-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fe10-for-ide/1.6.20-release-285/kotlin-compiler-fe10-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fe10-for-ide/1.6.20-RC-release-227/kotlin-compiler-fe10-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fe10-for-ide/1.6.20-release-285/kotlin-compiler-fe10-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_fir.xml b/.idea/libraries/kotlinc_kotlin_compiler_fir.xml
index 87a654072ca0..92cfa2d679df 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_fir.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_fir.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-fir" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-fir-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-fir-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fir-for-ide/1.6.20-RC-release-227/kotlin-compiler-fir-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fir-for-ide/1.6.20-release-285/kotlin-compiler-fir-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fir-for-ide/1.6.20-RC-release-227/kotlin-compiler-fir-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-fir-for-ide/1.6.20-release-285/kotlin-compiler-fir-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_ir.xml b/.idea/libraries/kotlinc_kotlin_compiler_ir.xml
index a82fa5bcc9db..6147a6f4c8d7 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_ir.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_ir.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-ir" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-ir-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-ir-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-ir-for-ide/1.6.20-RC-release-227/kotlin-compiler-ir-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-ir-for-ide/1.6.20-release-285/kotlin-compiler-ir-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-ir-for-ide/1.6.20-RC-release-227/kotlin-compiler-ir-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-ir-for-ide/1.6.20-release-285/kotlin-compiler-ir-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_testdata.xml b/.idea/libraries/kotlinc_kotlin_compiler_testdata.xml
index bfefd5a42de1..9b396d723951 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_testdata.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_testdata.xml
@@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-testdata" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-testdata-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-testdata-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-testdata-for-ide/1.6.20-RC-release-227/kotlin-compiler-testdata-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-testdata-for-ide/1.6.20-release-285/kotlin-compiler-testdata-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
diff --git a/.idea/libraries/kotlinc_kotlin_compiler_tests.xml b/.idea/libraries/kotlinc_kotlin_compiler_tests.xml
index 05865ef799a5..c028e39c7ca8 100644
--- a/.idea/libraries/kotlinc_kotlin_compiler_tests.xml
+++ b/.idea/libraries/kotlinc_kotlin_compiler_tests.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-compiler-tests" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-tests-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-compiler-tests-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-tests-for-ide/1.6.20-RC-release-227/kotlin-compiler-tests-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-tests-for-ide/1.6.20-release-285/kotlin-compiler-tests-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-tests-for-ide/1.6.20-RC-release-227/kotlin-compiler-tests-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-compiler-tests-for-ide/1.6.20-release-285/kotlin-compiler-tests-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_dist.xml b/.idea/libraries/kotlinc_kotlin_dist.xml
index 420a8d61d1ff..97ead1d66b7f 100644
--- a/.idea/libraries/kotlinc_kotlin_dist.xml
+++ b/.idea/libraries/kotlinc_kotlin_dist.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-dist" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-dist-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-dist-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-dist-for-ide/1.6.20-RC-release-227/kotlin-dist-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-dist-for-ide/1.6.20-release-285/kotlin-dist-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-dist-for-ide/1.6.20-RC-release-227/kotlin-dist-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-dist-for-ide/1.6.20-release-285/kotlin-dist-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_gradle_statistics.xml b/.idea/libraries/kotlinc_kotlin_gradle_statistics.xml
index 96e8a985f4c5..5d3188c3c5ad 100644
--- a/.idea/libraries/kotlinc_kotlin_gradle_statistics.xml
+++ b/.idea/libraries/kotlinc_kotlin_gradle_statistics.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-gradle-statistics" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-gradle-statistics-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-gradle-statistics-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-gradle-statistics-for-ide/1.6.20-RC-release-227/kotlin-gradle-statistics-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-gradle-statistics-for-ide/1.6.20-release-285/kotlin-gradle-statistics-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-gradle-statistics-for-ide/1.6.20-RC-release-227/kotlin-gradle-statistics-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-gradle-statistics-for-ide/1.6.20-release-285/kotlin-gradle-statistics-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_jps_common.xml b/.idea/libraries/kotlinc_kotlin_jps_common.xml
index 9ca842068a80..c2c1ea42a218 100644
--- a/.idea/libraries/kotlinc_kotlin_jps_common.xml
+++ b/.idea/libraries/kotlinc_kotlin_jps_common.xml
@@ -1,13 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
<component name="libraryTable">
<library name="kotlinc.kotlin-jps-common" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-jps-common-for-ide:1.6.20-RC-release-227" />
+ <properties maven-id="org.jetbrains.kotlin:kotlin-jps-common-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-common-for-ide/1.6.20-RC-release-227/kotlin-jps-common-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-common-for-ide/1.6.20-release-285/kotlin-jps-common-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-common-for-ide/1.6.20-RC-release-227/kotlin-jps-common-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-common-for-ide/1.6.20-release-285/kotlin-jps-common-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_jps_plugin_classpath.xml b/.idea/libraries/kotlinc_kotlin_jps_plugin_classpath.xml
index b025454f038c..69b9fc4ad2dd 100644
--- a/.idea/libraries/kotlinc_kotlin_jps_plugin_classpath.xml
+++ b/.idea/libraries/kotlinc_kotlin_jps_plugin_classpath.xml
@@ -1,13 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
<component name="libraryTable">
<library name="kotlinc.kotlin-jps-plugin-classpath" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-jps-plugin-classpath:1.6.20-RC-release-227" />
+ <properties maven-id="org.jetbrains.kotlin:kotlin-jps-plugin-classpath:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.20-RC-release-227/kotlin-jps-plugin-classpath-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.20-release-285/kotlin-jps-plugin-classpath-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.20-RC-release-227/kotlin-jps-plugin-classpath-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/1.6.20-release-285/kotlin-jps-plugin-classpath-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_reflect.xml b/.idea/libraries/kotlinc_kotlin_reflect.xml
index 2925967be532..0d37ca18e6b9 100644
--- a/.idea/libraries/kotlinc_kotlin_reflect.xml
+++ b/.idea/libraries/kotlinc_kotlin_reflect.xml
@@ -1,17 +1,16 @@
-<?xml version="1.0" encoding="UTF-8"?>
<component name="libraryTable">
<library name="kotlinc.kotlin-reflect" type="repository">
- <properties maven-id="org.jetbrains.kotlin:kotlin-reflect:1.6.20-RC-release-227">
+ <properties maven-id="org.jetbrains.kotlin:kotlin-reflect:1.6.20-release-285">
<exclude>
<dependency maven-id="org.jetbrains.kotlin:kotlin-stdlib" />
</exclude>
</properties>
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.20-RC-release-227/kotlin-reflect-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.20-release-285/kotlin-reflect-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.20-RC-release-227/kotlin-reflect-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.20-release-285/kotlin-reflect-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_scripting_common.xml b/.idea/libraries/kotlinc_kotlin_scripting_common.xml
index 7c0d60ecdb8d..134b67cee1e6 100644
--- a/.idea/libraries/kotlinc_kotlin_scripting_common.xml
+++ b/.idea/libraries/kotlinc_kotlin_scripting_common.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-scripting-common" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-scripting-common:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-scripting-common:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-common/1.6.20-RC-release-227/kotlin-scripting-common-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-common/1.6.20-release-285/kotlin-scripting-common-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-common/1.6.20-RC-release-227/kotlin-scripting-common-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-common/1.6.20-release-285/kotlin-scripting-common-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_scripting_compiler_impl.xml b/.idea/libraries/kotlinc_kotlin_scripting_compiler_impl.xml
index 07f9b653cc09..78d48a6d91fc 100644
--- a/.idea/libraries/kotlinc_kotlin_scripting_compiler_impl.xml
+++ b/.idea/libraries/kotlinc_kotlin_scripting_compiler_impl.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-scripting-compiler-impl" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-scripting-compiler-impl:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-scripting-compiler-impl:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-compiler-impl/1.6.20-RC-release-227/kotlin-scripting-compiler-impl-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-compiler-impl/1.6.20-release-285/kotlin-scripting-compiler-impl-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-compiler-impl/1.6.20-RC-release-227/kotlin-scripting-compiler-impl-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-compiler-impl/1.6.20-release-285/kotlin-scripting-compiler-impl-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_scripting_jvm.xml b/.idea/libraries/kotlinc_kotlin_scripting_jvm.xml
index 9786de445360..5c6df4c2b335 100644
--- a/.idea/libraries/kotlinc_kotlin_scripting_jvm.xml
+++ b/.idea/libraries/kotlinc_kotlin_scripting_jvm.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-scripting-jvm" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-scripting-jvm:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-scripting-jvm:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20-RC-release-227/kotlin-scripting-jvm-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20-release-285/kotlin-scripting-jvm-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20-RC-release-227/kotlin-scripting-jvm-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20-release-285/kotlin-scripting-jvm-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_stdlib.xml b/.idea/libraries/kotlinc_kotlin_stdlib.xml
index bda74e785c79..6977dc5ce0c5 100644
--- a/.idea/libraries/kotlinc_kotlin_stdlib.xml
+++ b/.idea/libraries/kotlinc_kotlin_stdlib.xml
@@ -1,6 +1,6 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-stdlib" type="repository">
- <properties maven-id="org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.20-RC-release-227" >
+ <properties maven-id="org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.20-release-285">
<exclude>
<dependency maven-id="org.jetbrains:annotations" />
</exclude>
@@ -9,17 +9,17 @@
<root url="file://$PROJECT_DIR$/lib/annotations/kotlin" />
</ANNOTATIONS>
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.20-RC-release-227/kotlin-stdlib-jdk8-1.6.20-RC-release-227.jar!/" />
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/1.6.20-RC-release-227/kotlin-stdlib-1.6.20-RC-release-227.jar!/" />
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.20-RC-release-227/kotlin-stdlib-common-1.6.20-RC-release-227.jar!/" />
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20-RC-release-227/kotlin-stdlib-jdk7-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.20-release-285/kotlin-stdlib-jdk8-1.6.20-release-285.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/1.6.20-release-285/kotlin-stdlib-1.6.20-release-285.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.20-release-285/kotlin-stdlib-common-1.6.20-release-285.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20-release-285/kotlin-stdlib-jdk7-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.20-RC-release-227/kotlin-stdlib-jdk8-1.6.20-RC-release-227-sources.jar!/" />
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/1.6.20-RC-release-227/kotlin-stdlib-1.6.20-RC-release-227-sources.jar!/" />
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.20-RC-release-227/kotlin-stdlib-common-1.6.20-RC-release-227-sources.jar!/" />
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20-RC-release-227/kotlin-stdlib-jdk7-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.20-release-285/kotlin-stdlib-jdk8-1.6.20-release-285-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/1.6.20-release-285/kotlin-stdlib-1.6.20-release-285-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.20-release-285/kotlin-stdlib-common-1.6.20-release-285-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20-release-285/kotlin-stdlib-jdk7-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlin_stdlib_minimal_for_test.xml b/.idea/libraries/kotlinc_kotlin_stdlib_minimal_for_test.xml
index 9f7ba2425f0c..b5f84de2719b 100644
--- a/.idea/libraries/kotlinc_kotlin_stdlib_minimal_for_test.xml
+++ b/.idea/libraries/kotlinc_kotlin_stdlib_minimal_for_test.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlin-stdlib-minimal-for-test" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-stdlib-minimal-for-test-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlin-stdlib-minimal-for-test-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-minimal-for-test-for-ide/1.6.20-RC-release-227/kotlin-stdlib-minimal-for-test-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-minimal-for-test-for-ide/1.6.20-release-285/kotlin-stdlib-minimal-for-test-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-minimal-for-test-for-ide/1.6.20-RC-release-227/kotlin-stdlib-minimal-for-test-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-minimal-for-test-for-ide/1.6.20-release-285/kotlin-stdlib-minimal-for-test-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_kotlinx_serialization_compiler_plugin.xml b/.idea/libraries/kotlinc_kotlinx_serialization_compiler_plugin.xml
index c5e74078afb1..1594fde6621c 100644
--- a/.idea/libraries/kotlinc_kotlinx_serialization_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_kotlinx_serialization_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.kotlinx-serialization-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlinx-serialization-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:kotlinx-serialization-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlinx-serialization-compiler-plugin-for-ide/1.6.20-RC-release-227/kotlinx-serialization-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlinx-serialization-compiler-plugin-for-ide/1.6.20-release-285/kotlinx-serialization-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlinx-serialization-compiler-plugin-for-ide/1.6.20-RC-release-227/kotlinx-serialization-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlinx-serialization-compiler-plugin-for-ide/1.6.20-release-285/kotlinx-serialization-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_lombok_compiler_plugin.xml b/.idea/libraries/kotlinc_lombok_compiler_plugin.xml
index 3757793a3627..3a74db8e0393 100644
--- a/.idea/libraries/kotlinc_lombok_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_lombok_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.lombok-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:lombok-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:lombok-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/lombok-compiler-plugin-for-ide/1.6.20-RC-release-227/lombok-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/lombok-compiler-plugin-for-ide/1.6.20-release-285/lombok-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/lombok-compiler-plugin-for-ide/1.6.20-RC-release-227/lombok-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/lombok-compiler-plugin-for-ide/1.6.20-release-285/lombok-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_low_level_api_fir.xml b/.idea/libraries/kotlinc_low_level_api_fir.xml
index d2eab13f5c86..7c765f537aed 100644
--- a/.idea/libraries/kotlinc_low_level_api_fir.xml
+++ b/.idea/libraries/kotlinc_low_level_api_fir.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.low-level-api-fir" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:low-level-api-fir-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:low-level-api-fir-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/low-level-api-fir-for-ide/1.6.20-RC-release-227/low-level-api-fir-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/low-level-api-fir-for-ide/1.6.20-release-285/low-level-api-fir-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/low-level-api-fir-for-ide/1.6.20-RC-release-227/low-level-api-fir-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/low-level-api-fir-for-ide/1.6.20-release-285/low-level-api-fir-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_noarg_compiler_plugin.xml b/.idea/libraries/kotlinc_noarg_compiler_plugin.xml
index bb66888fb19c..8432053801b6 100644
--- a/.idea/libraries/kotlinc_noarg_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_noarg_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.noarg-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:noarg-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:noarg-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/noarg-compiler-plugin-for-ide/1.6.20-RC-release-227/noarg-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/noarg-compiler-plugin-for-ide/1.6.20-release-285/noarg-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/noarg-compiler-plugin-for-ide/1.6.20-RC-release-227/noarg-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/noarg-compiler-plugin-for-ide/1.6.20-release-285/noarg-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_parcelize_compiler_plugin.xml b/.idea/libraries/kotlinc_parcelize_compiler_plugin.xml
index 7941b98e224c..545efaa124e1 100644
--- a/.idea/libraries/kotlinc_parcelize_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_parcelize_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.parcelize-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:parcelize-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:parcelize-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/parcelize-compiler-plugin-for-ide/1.6.20-RC-release-227/parcelize-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/parcelize-compiler-plugin-for-ide/1.6.20-release-285/parcelize-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/parcelize-compiler-plugin-for-ide/1.6.20-RC-release-227/parcelize-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/parcelize-compiler-plugin-for-ide/1.6.20-release-285/parcelize-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_sam_with_receiver_compiler_plugin.xml b/.idea/libraries/kotlinc_sam_with_receiver_compiler_plugin.xml
index 153808110d7c..030dea241eb6 100644
--- a/.idea/libraries/kotlinc_sam_with_receiver_compiler_plugin.xml
+++ b/.idea/libraries/kotlinc_sam_with_receiver_compiler_plugin.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.sam-with-receiver-compiler-plugin" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:sam-with-receiver-compiler-plugin-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:sam-with-receiver-compiler-plugin-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/sam-with-receiver-compiler-plugin-for-ide/1.6.20-RC-release-227/sam-with-receiver-compiler-plugin-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/sam-with-receiver-compiler-plugin-for-ide/1.6.20-release-285/sam-with-receiver-compiler-plugin-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/sam-with-receiver-compiler-plugin-for-ide/1.6.20-RC-release-227/sam-with-receiver-compiler-plugin-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/sam-with-receiver-compiler-plugin-for-ide/1.6.20-release-285/sam-with-receiver-compiler-plugin-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/kotlinc_symbol_light_classes.xml b/.idea/libraries/kotlinc_symbol_light_classes.xml
index 37b8e56d9977..f0cdc4a42400 100644
--- a/.idea/libraries/kotlinc_symbol_light_classes.xml
+++ b/.idea/libraries/kotlinc_symbol_light_classes.xml
@@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="kotlinc.symbol-light-classes" type="repository">
- <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:symbol-light-classes-for-ide:1.6.20-RC-release-227" />
+ <properties include-transitive-deps="false" maven-id="org.jetbrains.kotlin:symbol-light-classes-for-ide:1.6.20-release-285" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/symbol-light-classes-for-ide/1.6.20-RC-release-227/symbol-light-classes-for-ide-1.6.20-RC-release-227.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/symbol-light-classes-for-ide/1.6.20-release-285/symbol-light-classes-for-ide-1.6.20-release-285.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/symbol-light-classes-for-ide/1.6.20-RC-release-227/symbol-light-classes-for-ide-1.6.20-RC-release-227-sources.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/jetbrains/kotlin/symbol-light-classes-for-ide/1.6.20-release-285/symbol-light-classes-for-ide-1.6.20-release-285-sources.jar!/" />
</SOURCES>
</library>
</component> \ No newline at end of file
diff --git a/.idea/libraries/tips_pycharm_community.xml b/.idea/libraries/tips_pycharm_community.xml
index 84fb87d30283..283376a8299c 100644
--- a/.idea/libraries/tips_pycharm_community.xml
+++ b/.idea/libraries/tips_pycharm_community.xml
@@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="tips-pycharm-community" type="repository">
- <properties maven-id="com.jetbrains.intellij.documentation:tips-pycharm-community:213.17" />
+ <properties maven-id="com.jetbrains.intellij.documentation:tips-pycharm-community:221.18" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/com/jetbrains/intellij/documentation/tips-pycharm-community/213.17/tips-pycharm-community-213.17.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/com/jetbrains/intellij/documentation/tips-pycharm-community/221.18/tips-pycharm-community-221.18.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
diff --git a/build.txt b/build.txt
index a1edc7c9327f..5046b5976f2a 100644
--- a/build.txt
+++ b/build.txt
@@ -1 +1 @@
-221.5080.9.2211.SNAPSHOT
+221.5080.210.2211.SNAPSHOT
diff --git a/build/dependencies/gradle.properties b/build/dependencies/gradle.properties
index f448b4a0f38e..cd82fb422097 100644
--- a/build/dependencies/gradle.properties
+++ b/build/dependencies/gradle.properties
@@ -3,7 +3,7 @@
VulnerabilitySearchPluginVersion=0.7.19
bundledMavenVersion=3.8.1
gradleApiVersion=5.2.1
-jdkBuild=11_0_14_1b2043.14
+jdkBuild=11_0_14_1b2043.25
rkernelVersion=master.214
-runtimeBuild=11_0_14_1b2043.14
+runtimeBuild=11_0_14_1b2043.25
zkmVersion=17.0.1
diff --git a/build/groovy/org/jetbrains/intellij/build/BaseIdeaProperties.groovy b/build/groovy/org/jetbrains/intellij/build/BaseIdeaProperties.groovy
index 36af63abc1e3..3e8b6c30a453 100644
--- a/build/groovy/org/jetbrains/intellij/build/BaseIdeaProperties.groovy
+++ b/build/groovy/org/jetbrains/intellij/build/BaseIdeaProperties.groovy
@@ -104,6 +104,7 @@ abstract class BaseIdeaProperties extends JetBrainsProductProperties {
"lib/annotations.jar" : "1.6",
// JAR contains class files for Java 1.8 and 11 (several modules packed into it)
"lib/util.jar!/com/intellij/serialization/" : "1.8",
+ "lib/util_rt.jar" : "1.6",
"lib/external-system-rt.jar" : "1.6",
"plugins/coverage/lib/coverage_rt.jar" : "1.6",
"plugins/javaFX/lib/rt/sceneBuilderBridge.jar" : "11",
diff --git a/build/groovy/org/jetbrains/intellij/build/CommunityStandaloneJpsBuilder.groovy b/build/groovy/org/jetbrains/intellij/build/CommunityStandaloneJpsBuilder.groovy
index 39c0c23900a6..57e327a0c657 100644
--- a/build/groovy/org/jetbrains/intellij/build/CommunityStandaloneJpsBuilder.groovy
+++ b/build/groovy/org/jetbrains/intellij/build/CommunityStandaloneJpsBuilder.groovy
@@ -27,13 +27,18 @@ final class CommunityStandaloneJpsBuilder {
new LayoutBuilder(buildContext).process(targetDir, projectStructureMapping, copyFiles) {
zip(getZipName(buildNumber)) {
jar("util.jar") {
- module("intellij.platform.util.rt")
module("intellij.platform.util")
module("intellij.platform.util.classLoader")
module("intellij.platform.util.text.matching")
module("intellij.platform.util.base")
module("intellij.platform.util.xmlDom")
module("intellij.platform.tracing.rt")
+ module("intellij.platform.util.diff")
+ module("intellij.platform.util.rt.java8")
+ }
+
+ jar("util_rt.jar") {
+ module("intellij.platform.util.rt")
}
jar("jps-launcher.jar") {
diff --git a/build/tasks/src/org/jetbrains/intellij/build/tasks/trace.kt b/build/tasks/src/org/jetbrains/intellij/build/tasks/trace.kt
index 42e807fc9145..b9802e5760a1 100644
--- a/build/tasks/src/org/jetbrains/intellij/build/tasks/trace.kt
+++ b/build/tasks/src/org/jetbrains/intellij/build/tasks/trace.kt
@@ -12,7 +12,7 @@ import java.util.concurrent.Callable
import java.util.concurrent.ForkJoinTask
import java.util.function.Supplier
-internal val tracer: Tracer by lazy(LazyThreadSafetyMode.NONE) { GlobalOpenTelemetry.getTracer("build-script") }
+internal val tracer: Tracer by lazy { GlobalOpenTelemetry.getTracer("build-script") }
fun <T> createTask(spanBuilder: SpanBuilder, task: Supplier<T>): ForkJoinTask<T> {
val context = Context.current()
diff --git a/build/tests/testSrc/org/jetbrains/intellij/build/IdeaCommunityBuildTest.kt b/build/tests/testSrc/org/jetbrains/intellij/build/IdeaCommunityBuildTest.kt
index 6f33a941517e..92b516fab3f7 100644
--- a/build/tests/testSrc/org/jetbrains/intellij/build/IdeaCommunityBuildTest.kt
+++ b/build/tests/testSrc/org/jetbrains/intellij/build/IdeaCommunityBuildTest.kt
@@ -11,9 +11,9 @@ class IdeaCommunityBuildTest {
val homePath = PathManager.getHomePathFor(javaClass)!!
val communityHomePath = "$homePath/community"
runTestBuild(
- homePath = communityHomePath, communityHomePath = communityHomePath,
+ homePath = communityHomePath,
+ communityHomePath = communityHomePath,
productProperties = IdeaCommunityProperties(communityHomePath),
- buildTools = ProprietaryBuildTools.DUMMY
) {
it.projectClassesOutputDirectory = System.getProperty(BuildOptions.PROJECT_CLASSES_OUTPUT_DIRECTORY_PROPERTY)
?: "$homePath/out/classes"
diff --git a/community-resources/src/idea/IdeaApplicationInfo.xml b/community-resources/src/idea/IdeaApplicationInfo.xml
index c943466534a7..259c5bbd032c 100644
--- a/community-resources/src/idea/IdeaApplicationInfo.xml
+++ b/community-resources/src/idea/IdeaApplicationInfo.xml
@@ -1,9 +1,9 @@
<component xmlns="http://jetbrains.org/intellij/schema/application-info"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jetbrains.org/intellij/schema/application-info http://jetbrains.org/intellij/schema/ApplicationInfo.xsd">
- <version major="2022" minor="1" eap="true"/>
+ <version major="2022" minor="1"/>
<company name="JetBrains s.r.o." url="https://www.jetbrains.com"/>
- <build number="IC-__BUILD__" date="__BUILD_DATE__"/> <!--majorReleaseDate="20170321"-->
+ <build number="IC-__BUILD__" date="__BUILD_DATE__" majorReleaseDate="20220412" />
<logo url="/idea_community_logo.png" textcolor="ffffff" progressColor="ffae00" progressY="396" progressHeight="4" />
<about url="/idea_community_about.png" foreground="ffffff" copyrightForeground="ffffff" linkColor="095fdc" logoX="540" logoY="300" logoW="100" logoH="100"/>
<icon ico="idea_CE.ico" svg="/idea-ce.svg" svg-small="/idea-ce_16.svg"/>
diff --git a/community-resources/src/idea_community_logo.png b/community-resources/src/idea_community_logo.png
index 11fa356176f3..bdcd17724cfd 100644
--- a/community-resources/src/idea_community_logo.png
+++ b/community-resources/src/idea_community_logo.png
Binary files differ
diff --git a/community-resources/src/idea_community_logo@2x.png b/community-resources/src/idea_community_logo@2x.png
index f8f4b08e62ac..a2f29bdf8f5f 100644
--- a/community-resources/src/idea_community_logo@2x.png
+++ b/community-resources/src/idea_community_logo@2x.png
Binary files differ
diff --git a/java/compiler/impl/src/com/intellij/compiler/impl/CompileDriver.java b/java/compiler/impl/src/com/intellij/compiler/impl/CompileDriver.java
index a467cba3fed5..0e6a7f8e9bc1 100644
--- a/java/compiler/impl/src/com/intellij/compiler/impl/CompileDriver.java
+++ b/java/compiler/impl/src/com/intellij/compiler/impl/CompileDriver.java
@@ -100,7 +100,7 @@ public final class CompileDriver {
startup(scope, false, false, withModalProgress, callback, null);
}
else {
- callback.finished(true, 0, 0, DummyCompileContext.create(myProject));
+ SwingUtilities.invokeLater(() -> callback.finished(true, 0, 0, DummyCompileContext.create(myProject)));
}
}
@@ -445,7 +445,7 @@ public final class CompileDriver {
final ProgressIndicator indicator = compileContext.getProgressIndicator();
if (indicator.isCanceled() || myProject.isDisposed()) {
if (callback != null) {
- callback.finished(true, 0, 0, compileContext);
+ SwingUtilities.invokeLater(() -> callback.finished(true, 0, 0, compileContext));
}
return;
}
diff --git a/java/execution/impl/src/com/intellij/execution/application/JvmMainMethodRunConfigurationOptions.kt b/java/execution/impl/src/com/intellij/execution/application/JvmMainMethodRunConfigurationOptions.kt
index ba3c45c2ec19..e26232db522d 100644
--- a/java/execution/impl/src/com/intellij/execution/application/JvmMainMethodRunConfigurationOptions.kt
+++ b/java/execution/impl/src/com/intellij/execution/application/JvmMainMethodRunConfigurationOptions.kt
@@ -16,7 +16,7 @@ open class JvmMainMethodRunConfigurationOptions : JvmConfigurationOptions() {
open var workingDirectory by string()
@get:OptionTag("INCLUDE_PROVIDED_SCOPE")
- var isIncludeProvidedScope by property(false)
+ open var isIncludeProvidedScope by property(false)
@get:OptionTag("PASS_PARENT_ENVS")
var isPassParentEnv by property(true)
diff --git a/java/idea-ui/resources/assets/ignore/gradle.gitignore.txt b/java/idea-ui/resources/assets/ignore/gradle.gitignore.txt
index ca6d52bffb10..b63da4551b2e 100644
--- a/java/idea-ui/resources/assets/ignore/gradle.gitignore.txt
+++ b/java/idea-ui/resources/assets/ignore/gradle.gitignore.txt
@@ -6,6 +6,8 @@ build/
### IntelliJ IDEA ###
.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
.idea/libraries/
*.iws
*.iml
@@ -35,3 +37,6 @@ bin/
### VS Code ###
.vscode/
+
+### Mac OS ###
+.DS_Store \ No newline at end of file
diff --git a/java/idea-ui/resources/assets/ignore/intellij.gitignore.txt b/java/idea-ui/resources/assets/ignore/intellij.gitignore.txt
index f4a532972411..f68d1099657e 100644
--- a/java/idea-ui/resources/assets/ignore/intellij.gitignore.txt
+++ b/java/idea-ui/resources/assets/ignore/intellij.gitignore.txt
@@ -24,3 +24,6 @@ bin/
### VS Code ###
.vscode/
+
+### Mac OS ###
+.DS_Store \ No newline at end of file
diff --git a/java/idea-ui/resources/assets/ignore/maven.gitignore.txt b/java/idea-ui/resources/assets/ignore/maven.gitignore.txt
index a809267a5ea3..5ff6309b7199 100644
--- a/java/idea-ui/resources/assets/ignore/maven.gitignore.txt
+++ b/java/idea-ui/resources/assets/ignore/maven.gitignore.txt
@@ -5,6 +5,8 @@ target/
### IntelliJ IDEA ###
.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
.idea/libraries/
*.iws
*.iml
@@ -31,3 +33,6 @@ build/
### VS Code ###
.vscode/
+
+### Mac OS ###
+.DS_Store \ No newline at end of file
diff --git a/java/idea-ui/src/com/intellij/ide/impl/NewProjectUtil.java b/java/idea-ui/src/com/intellij/ide/impl/NewProjectUtil.java
index cb8bcd047445..6976393df367 100644
--- a/java/idea-ui/src/com/intellij/ide/impl/NewProjectUtil.java
+++ b/java/idea-ui/src/com/intellij/ide/impl/NewProjectUtil.java
@@ -37,6 +37,7 @@ import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.wm.ToolWindow;
import com.intellij.openapi.wm.ToolWindowId;
import com.intellij.openapi.wm.ToolWindowManager;
+import com.intellij.util.TimeoutUtil;
import com.intellij.util.ui.UIUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -64,22 +65,22 @@ public final class NewProjectUtil {
Runnable warmUp = () -> ProjectManager.getInstance().getDefaultProject(); // warm-up components
boolean proceed = ProgressManager.getInstance().runProcessWithProgressSynchronously(warmUp, title, true, null);
- StructuredIdeActivity activity = null;
+ long time = 0;
+ WizardContext context = wizard.getWizardContext();
if (isNewWizard()) {
- WizardContext context = wizard.getWizardContext();
- activity = NewProjectWizardCollector.logStarted(context.getProject());
+ time = System.nanoTime();
NewProjectWizardCollector.logOpen(context);
}
if (proceed && wizard.showAndGet()) {
createFromWizard(wizard);
- if (isNewWizard() && activity != null) {
- NewProjectWizardCollector.logFinished(activity, true);
+ if (isNewWizard()) {
+ NewProjectWizardCollector.logFinish(context, true, TimeoutUtil.getDurationMillis(time));
}
return;
}
- if (isNewWizard() && activity != null) {
- NewProjectWizardCollector.logFinished(activity, false);
+ if (isNewWizard()) {
+ NewProjectWizardCollector.logFinish(context, false, TimeoutUtil.getDurationMillis(time));
}
}
diff --git a/java/idea-ui/src/com/intellij/ide/projectWizard/ProjectTypeStep.java b/java/idea-ui/src/com/intellij/ide/projectWizard/ProjectTypeStep.java
index 91a498634420..f9764777defc 100644
--- a/java/idea-ui/src/com/intellij/ide/projectWizard/ProjectTypeStep.java
+++ b/java/idea-ui/src/com/intellij/ide/projectWizard/ProjectTypeStep.java
@@ -558,7 +558,7 @@ public final class ProjectTypeStep extends ModuleWizardStep implements SettingsS
}
NewProjectWizardCollector.logGeneratorSelected(myContext, builder.getClass());
- NewProjectWizardCollector.logScreen(myContext, 1);
+ myContext.setScreen(1);
showCard(card);
diff --git a/java/idea-ui/src/com/intellij/ide/starters/local/StarterModuleBuilder.kt b/java/idea-ui/src/com/intellij/ide/starters/local/StarterModuleBuilder.kt
index 9af932ed0eff..8addd910c5d5 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/local/StarterModuleBuilder.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/local/StarterModuleBuilder.kt
@@ -360,7 +360,7 @@ abstract class StarterModuleBuilder : ModuleBuilder() {
if (starterContext.gitIntegration) {
runBackgroundableTask(IdeBundle.message("progress.title.creating.git.repository"), module.project) {
- GitRepositoryInitializer.getInstance()?.initRepository(module.project, moduleContentRoot)
+ GitRepositoryInitializer.getInstance()?.initRepository(module.project, moduleContentRoot, true)
}
}
diff --git a/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterInitialStep.kt b/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterInitialStep.kt
index d84bef920b1a..88e808eb0e2c 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterInitialStep.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterInitialStep.kt
@@ -4,6 +4,7 @@ package com.intellij.ide.starters.local.wizard
import com.intellij.ide.starters.JavaStartersBundle
import com.intellij.ide.starters.local.*
import com.intellij.ide.starters.shared.*
+import com.intellij.ide.wizard.withVisualPadding
import com.intellij.openapi.Disposable
import com.intellij.openapi.application.PathManager
import com.intellij.openapi.application.impl.ApplicationInfoImpl
diff --git a/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterLibrariesStep.kt b/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterLibrariesStep.kt
index f8023da16350..a6aa414648e6 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterLibrariesStep.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/local/wizard/StarterLibrariesStep.kt
@@ -8,6 +8,7 @@ import com.intellij.ide.starters.shared.*
import com.intellij.ide.starters.shared.ui.LibraryDescriptionPanel
import com.intellij.ide.starters.shared.ui.SelectedLibrariesPanel
import com.intellij.ide.util.projectWizard.ModuleWizardStep
+import com.intellij.ide.wizard.withVisualPadding
import com.intellij.openapi.ui.ComboBox
import com.intellij.openapi.ui.DialogPanel
import com.intellij.openapi.util.NlsSafe
diff --git a/java/idea-ui/src/com/intellij/ide/starters/remote/WebStarterModuleBuilder.kt b/java/idea-ui/src/com/intellij/ide/starters/remote/WebStarterModuleBuilder.kt
index ac4e778b321c..0a5114a71ebd 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/remote/WebStarterModuleBuilder.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/remote/WebStarterModuleBuilder.kt
@@ -266,7 +266,7 @@ abstract class WebStarterModuleBuilder : ModuleBuilder() {
?: throw IllegalStateException("Module root not found")
runBackgroundableTask(IdeBundle.message("progress.title.creating.git.repository"), module.project) {
- GitRepositoryInitializer.getInstance()?.initRepository(module.project, moduleContentRoot)
+ GitRepositoryInitializer.getInstance()?.initRepository(module.project, moduleContentRoot, true)
}
}
diff --git a/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterInitialStep.kt b/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterInitialStep.kt
index 61c374923efb..60793e9f6a18 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterInitialStep.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterInitialStep.kt
@@ -10,6 +10,7 @@ import com.intellij.ide.starters.shared.*
import com.intellij.ide.starters.shared.ValidationFunctions.*
import com.intellij.ide.util.PropertiesComponent
import com.intellij.ide.wizard.AbstractWizard
+import com.intellij.ide.wizard.withVisualPadding
import com.intellij.openapi.Disposable
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.application.ModalityState
diff --git a/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterLibrariesStep.kt b/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterLibrariesStep.kt
index 5876b94c0484..e482723f13c6 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterLibrariesStep.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/remote/wizard/WebStarterLibrariesStep.kt
@@ -11,6 +11,7 @@ import com.intellij.ide.starters.shared.ui.SelectedLibrariesPanel
import com.intellij.ide.util.projectWizard.ModuleWizardStep
import com.intellij.ide.util.projectWizard.WizardContext
import com.intellij.ide.wizard.AbstractWizard
+import com.intellij.ide.wizard.withVisualPadding
import com.intellij.openapi.Disposable
import com.intellij.openapi.application.ModalityState
import com.intellij.openapi.diagnostic.logger
diff --git a/java/idea-ui/src/com/intellij/ide/starters/shared/FormUiUtil.kt b/java/idea-ui/src/com/intellij/ide/starters/shared/FormUiUtil.kt
index 16771c258b48..ca6aeedb1c39 100644
--- a/java/idea-ui/src/com/intellij/ide/starters/shared/FormUiUtil.kt
+++ b/java/idea-ui/src/com/intellij/ide/starters/shared/FormUiUtil.kt
@@ -25,19 +25,6 @@ import javax.swing.event.DocumentEvent
import javax.swing.tree.DefaultMutableTreeNode
import javax.swing.tree.TreeNode
-fun DialogPanel.withVisualPadding(topField: Boolean = false): DialogPanel {
- if (Experiments.getInstance().isFeatureEnabled("new.project.wizard")) {
- val top = if (topField) 20 else 15
- border = IdeBorderFactory.createEmptyBorder(JBInsets(top, 20, 20, 20))
- }
- else {
- val top = if (topField) 15 else 5
- border = IdeBorderFactory.createEmptyBorder(JBInsets(top, 5, 0, 5))
- }
-
- return this
-}
-
internal fun gridConstraint(col: Int, row: Int): GridBagConstraints {
return GridBagConstraints().apply {
fill = GridBagConstraints.BOTH
diff --git a/java/idea-ui/src/com/intellij/ide/util/newProjectWizard/AbstractProjectWizard.java b/java/idea-ui/src/com/intellij/ide/util/newProjectWizard/AbstractProjectWizard.java
index 5000eba5c70d..106e22058ca9 100644
--- a/java/idea-ui/src/com/intellij/ide/util/newProjectWizard/AbstractProjectWizard.java
+++ b/java/idea-ui/src/com/intellij/ide/util/newProjectWizard/AbstractProjectWizard.java
@@ -259,7 +259,7 @@ public abstract class AbstractProjectWizard extends AbstractWizard<ModuleWizardS
super.doNextAction();
if (isNewWizard()) {
NewProjectWizardCollector.logNext(myWizardContext, -1);
- NewProjectWizardCollector.logScreen(myWizardContext, 2);
+ myWizardContext.setScreen(2);
}
}
diff --git a/java/java-features-trainer/resources/messages/JavaLessonsBundle.properties b/java/java-features-trainer/resources/messages/JavaLessonsBundle.properties
index bca89e2ccf70..66088668657d 100644
--- a/java/java-features-trainer/resources/messages/JavaLessonsBundle.properties
+++ b/java/java-features-trainer/resources/messages/JavaLessonsBundle.properties
@@ -7,40 +7,40 @@ java.onboarding.module.description=A brief overview of the main features in {0}.
java.onboarding.lesson.name=Get Acquainted with IDEA
java.onboarding.change.ui.settings=For this lesson, IDEA changes some UI settings to the default state. \
Your preferences will be restored when you complete or exit the lesson.
-java.onboarding.project.view.description=The <strong>Project view</strong> is one of the main tool windows. It contains the project directory, SDK-specific external libraries, and scratch files. Use the striped button to open it, and you will see a simple demo project. You can also open it by pressing {0}.
+java.onboarding.project.view.description=The <strong>Project view</strong> is one of the main tool windows. It contains the project directory, SDK-specific external libraries, and scratch files. Click the striped button to preview the demo project content. You can also open it by pressing {0}.
java.onboarding.balloon.project.view=Click to open the <strong>Project view</strong>
java.onboarding.balloon.source.directory=Expand the {0} directory to view the project source files
java.onboarding.balloon.open.file=Double-click to open {0}
java.onboarding.balloon.open.learn.toolbar=Switch to the {0} tool window to continue this lesson
java.onboarding.indexing.description=When you open a project for the first time, <ide/> scans the JDK and the project itself \
to collect details required for coding assistance. To continue, wait until indexing completes.
-java.onboarding.context.menu=You have opened the demo, now let's run it. Click the one of the highlighted gutter icons to invoke the context menu.
-java.onboarding.run.sample=Choose {0} or try the {1}.
+java.onboarding.context.menu=You have opened the demo, now let's run it. Click one of the highlighted gutter icons to invoke the context menu.
+java.onboarding.run.sample=Choose {0} or try {1}.
java.onboarding.temporary.configuration.description=<ide/> has just created a temporary run configuration. You can find it in the Run toolbar. With this toolbar, you can execute popular running actions for the selected configuration, such as running {0}, debugging {1}, profiling code {2}, and running your code with coverage {3}.
java.onboarding.balloon.click.here=Click here to set a breakpoint
java.onboarding.toggle.breakpoint.1=You may notice that instead of the expected value of {0}, the {1} method returns {2}. \
Let''s stop at the return statement to debug the problematic code.
-java.onboarding.toggle.breakpoint.2=Click the gutter in the highlighted area to set a breakpoint.
+java.onboarding.toggle.breakpoint.2=Click the gutter within the highlighted area to set a breakpoint.
java.onboarding.balloon.start.debugging=Click the icon to start debugging
java.onboarding.start.debugging=Click the {0} icon to start the debugging process.
java.onboarding.balloon.about.debug.panel=The {0} tool window provides {1,choice,0#a toolbar|1#toolbars} with various debugging actions. \
You can take the {2} lesson later to try them.
java.onboarding.balloon.stop.debugging=Click the icon to stop debugging
java.onboarding.stop.debugging=Let''s stop debugging. Click the {0} icon.
-java.onboarding.type.division=Once you discovered the problem in the code, let''s fix it. Divide the resulting sum by the length of the values. \
+java.onboarding.type.division=Once you have discovered the problem in the code, let''s fix it. Divide the resulting sum by the length of the values. \
The lesson script inserts {0} already.
java.onboarding.invoke.completion=Now let's type a dot to show all available completion options.
-java.onboarding.choose.values.item=Now you can start typing {0} to reduce the completion list or just select this item and press {1}.
+java.onboarding.choose.values.item=Now you can start typing {0} to reduce the completion list or select this item and press {1}.
java.onboarding.invoke.completion.tip=<strong>Tip</strong>: <ide/> shows completion options automatically as you type. \
- Also you can press {0} to show completion items in any place of the code.
+ Also, you can press {0} to show completion items in any place of the code.
java.onboarding.invoke.intention.for.warning.1=You have just fixed a bug, but you can make this code look even better. \
IDEA highlights and adds a yellow bulb to the code lines that can be improved.
java.onboarding.invoke.intention.for.warning.2=Press {0} to preview the warnings and apply a quick fix.
-java.onboarding.select.fix=Apply the first item: {0}. In this case <strong>for-each</strong> loop will make code easier to understand.
+java.onboarding.select.fix=Apply the first item: {0}. In this case, the <strong>for-each</strong> loop will make code easier to understand.
java.onboarding.invoke.intention.for.code=Intentions also save your time and make coding easier. Let''s use an intention to reformat string concatenation. \
Press {0} to show possible options.
java.onboarding.apply.intention=Select {0} and press {1}.
-java.onboarding.invoke.search.everywhere.1=While working in <ide/> you might want to search for files in your project, symbols, classes, or even IDE actions. In this lesson, let''s search for the {0} action to make the {1} string low-case.
+java.onboarding.invoke.search.everywhere.1=While working in <ide/>, you might want to search for files in your project, symbols, classes, or even IDE actions. In this lesson, let''s search for the {0} action to make the {1} string low-case.
java.onboarding.invoke.search.everywhere.2=Press {0} two times to open the {1} dialog.
java.onboarding.search.everywhere.description=As you can see, the selected text, {0}, has been automatically copied into the input string. Let''s type {1} instead of {0}.
java.onboarding.apply.action=Select the {0} action and press {1}.
@@ -145,4 +145,5 @@ java.debug.workflow.rebuild=For big programs, rerun can take a long time. When y
java.debug.workflow.confirm.hot.swap=Confirm the <strong>Hot Swap</strong> replacement.
java.debug.workflow.no.confirmation=<strong>Hot Swap</strong> is done automatically in the background. You may see a corresponding message in the lower-left corner.
java.debug.workflow.drop.frame=We patched our method, but right now we are still executing obsolete {0}, and it will throw the \
- exception again. Let''s drop the frame and return to the state before the {1} call. Click {2} the debug panel or press {3}.
+ exception again. Let''s drop the frame and return to the state before the {1} call. Click {2} near the top method in the stack frame or press {3}.
+java.debug.workflow.invalid.drop=Oops, it seems that you performed an action that was not planned by the lesson. Please, restart the lesson.
diff --git a/java/java-features-trainer/src/com/intellij/java/ift/lesson/run/JavaDebugLesson.kt b/java/java-features-trainer/src/com/intellij/java/ift/lesson/run/JavaDebugLesson.kt
index 1be3fdf2d0ba..bb60cb9552f4 100644
--- a/java/java-features-trainer/src/com/intellij/java/ift/lesson/run/JavaDebugLesson.kt
+++ b/java/java-features-trainer/src/com/intellij/java/ift/lesson/run/JavaDebugLesson.kt
@@ -2,18 +2,21 @@
package com.intellij.java.ift.lesson.run
import com.intellij.debugger.JavaDebuggerBundle
+import com.intellij.debugger.engine.JavaStackFrame
import com.intellij.debugger.settings.DebuggerSettings
import com.intellij.icons.AllIcons
import com.intellij.java.ift.JavaLessonsBundle
import com.intellij.openapi.editor.LogicalPosition
import com.intellij.openapi.options.OptionsBundle
+import com.intellij.openapi.util.text.StringUtil
import com.intellij.xdebugger.XDebuggerBundle
-import training.dsl.LessonContext
-import training.dsl.TaskTestContext
-import training.dsl.highlightButtonById
-import training.dsl.restoreChangedSettingsInformer
+import com.intellij.xdebugger.XDebuggerManager
+import training.dsl.*
+import training.learn.CourseManager
import training.learn.lesson.general.run.CommonDebugLesson
+import training.statistic.LessonStartingWay
import training.ui.LearningUiManager
+import training.util.isToStringContains
import javax.swing.JEditorPane
class JavaDebugLesson : CommonDebugLesson("java.debug.workflow") {
@@ -24,6 +27,7 @@ class JavaDebugLesson : CommonDebugLesson("java.debug.workflow") {
override val configurationName: String = demoClassName
override val sample = JavaRunLessonsUtils.demoSample
override var logicalPosition: LogicalPosition = LogicalPosition(10, 6)
+ private val debugLineNumber = StringUtil.offsetToLineNumber(sample.text, sample.getPosition (2).startOffset)
override val confNameForWatches: String = "Application"
override val quickEvaluationArgument = "Integer.parseInt"
@@ -32,7 +36,6 @@ class JavaDebugLesson : CommonDebugLesson("java.debug.workflow") {
override val stepIntoDirectionToRight = true
override fun LessonContext.applyProgramChangeTasks() {
-
if (isHotSwapDisabled()) {
task {
val feature = stateCheck { !isHotSwapDisabled() }
@@ -88,12 +91,29 @@ class JavaDebugLesson : CommonDebugLesson("java.debug.workflow") {
}
}
- highlightButtonById("Debugger.PopFrame")
+ task {
+ triggerAndBorderHighlight { usePulsation = true }.listItem { item ->
+ (item as? JavaStackFrame)?.descriptor.isToStringContains("extractNumber")
+ }
+ }
- actionTask("Debugger.PopFrame") {
- proposeModificationRestore(afterFixText)
- JavaLessonsBundle.message("java.debug.workflow.drop.frame", code("extractNumber"), code("extractNumber"),
- icon(AllIcons.Actions.PopFrame), action(it))
+ task("Debugger.PopFrame") {
+ text(JavaLessonsBundle.message("java.debug.workflow.drop.frame", code("extractNumber"), code("extractNumber"),
+ icon(AllIcons.Actions.InlineDropFrame), action(it)))
+ stateCheck {
+ val currentSession = XDebuggerManager.getInstance(project).currentSession ?: return@stateCheck false
+ currentSession.currentPosition?.line == logicalPosition.line
+ }
+ proposeRestore {
+ val currentSession = XDebuggerManager.getInstance(project).currentSession
+ val line = currentSession?.currentPosition?.line
+ if (line == null || !(line == debugLineNumber || line == logicalPosition.line)) {
+ TaskContext.RestoreNotification(JavaLessonsBundle.message("java.debug.workflow.invalid.drop")) {
+ CourseManager.instance.openLesson(project, this@JavaDebugLesson, LessonStartingWay.RESTORE_LINK)
+ }
+ } else null
+ }
+ test { actions(it) }
}
}
diff --git a/java/java-impl/src/META-INF/JavaPlugin.xml b/java/java-impl/src/META-INF/JavaPlugin.xml
index 5c6c32373324..6873ddb00edf 100644
--- a/java/java-impl/src/META-INF/JavaPlugin.xml
+++ b/java/java-impl/src/META-INF/JavaPlugin.xml
@@ -1742,7 +1742,7 @@
implementationClass="com.intellij.codeInspection.javaDoc.JavadocDeclarationInspection" alternativeId="javadoc"/>
<inspectionElementsMerger implementation="com.intellij.codeInspection.javaDoc.JavadocDeclarationMerger" />
<localInspection groupPath="Java" language="JAVA" shortName="JavadocBlankLines" bundle="messages.JavaBundle" key="inspection.javadoc.blank.lines.display.name"
- groupKey="group.names.javadoc.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
+ groupKey="group.names.javadoc.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="false" level="WARNING"
implementationClass="com.intellij.codeInspection.javaDoc.JavadocBlankLinesInspection" alternativeId="javadoc"/>
<localInspection groupPath="Java" language="JAVA" shortName="JavadocLinkAsPlainText" bundle="messages.JavaBundle" key="inspection.javadoc.link.as.plain.text.display.name"
groupKey="group.names.javadoc.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/problems/pass/ProjectProblemCodeVisionProvider.kt b/java/java-impl/src/com/intellij/codeInsight/daemon/problems/pass/ProjectProblemCodeVisionProvider.kt
index 6ca31fa48028..be342686c464 100644
--- a/java/java-impl/src/com/intellij/codeInsight/daemon/problems/pass/ProjectProblemCodeVisionProvider.kt
+++ b/java/java-impl/src/com/intellij/codeInsight/daemon/problems/pass/ProjectProblemCodeVisionProvider.kt
@@ -5,6 +5,7 @@ import com.intellij.codeInsight.codeVision.CodeVisionAnchorKind
import com.intellij.codeInsight.codeVision.CodeVisionEntry
import com.intellij.codeInsight.codeVision.CodeVisionHost
import com.intellij.codeInsight.codeVision.CodeVisionRelativeOrdering
+import com.intellij.codeInsight.codeVision.settings.CodeVisionSettings
import com.intellij.codeInsight.codeVision.settings.PlatformCodeVisionIds
import com.intellij.codeInsight.codeVision.ui.model.ClickableRichTextCodeVisionEntry
import com.intellij.codeInsight.codeVision.ui.model.richText.RichText
@@ -26,6 +27,8 @@ import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.colors.CodeInsightColors
import com.intellij.openapi.editor.colors.EditorColorsManager
import com.intellij.openapi.fileEditor.FileEditorManager
+import com.intellij.openapi.project.Project
+import com.intellij.openapi.util.Key
import com.intellij.openapi.util.TextRange
import com.intellij.psi.*
import com.intellij.util.ObjectUtils
@@ -35,14 +38,31 @@ import java.awt.event.MouseEvent
import java.util.function.Consumer
class ProjectProblemCodeVisionProvider : JavaCodeVisionProviderBase() {
+ companion object {
+ private val PREVIEW_PROBLEMS_KEY = Key.create<Set<Problem>>("preview.problems.key")
+ }
+
override fun computeLenses(editor: Editor, psiFile: PsiFile): List<Pair<TextRange, CodeVisionEntry>> {
// we want to let this provider work only in tests dedicated for code vision, otherwise they harm performance
if (ApplicationManager.getApplication().isUnitTestMode && !CodeVisionHost.isCodeLensTest(editor)) return emptyList()
- val prevState = FileStateUpdater.getState(psiFile)
- if (prevState == null) return emptyList()
val project = editor.project ?: return emptyList()
-
+ val previewProblems = PREVIEW_PROBLEMS_KEY.get(editor)
+ if (previewProblems != null) {
+ val problem = previewProblems.first()
+ val lenseColor = getCodeVisionColor()
+ val lensPair = createLensPair(problem.context as PsiMethod, lenseColor, previewProblems) ?: return emptyList()
+ return listOf(lensPair)
+ }
val problems = ProjectProblemUtils.getReportedProblems(editor)
+ if (!CodeVisionSettings.instance().isProviderEnabled(PlatformCodeVisionIds.PROBLEMS.key)) {
+ if (!problems.isEmpty()) {
+ ProjectProblemUtils.reportProblems(editor, emptyMap())
+ updateHighlighters(project, psiFile, editor, SmartList())
+ }
+ return emptyList()
+ }
+ val prevState = FileStateUpdater.getState(psiFile)
+ if (prevState == null) return emptyList()
val prevChanges = getPrevChanges(prevState.changes, problems.keys)
val curState = findState(psiFile, prevState.snapshot, prevChanges)
val changes = curState.changes
@@ -59,7 +79,6 @@ class ProjectProblemCodeVisionProvider : JavaCodeVisionProviderBase() {
val fileState = FileState(snapshot, allChanges)
updateState(psiFile, fileState)
- val document = editor.document
val highlighters: MutableList<HighlightInfo> = SmartList()
val lenses: MutableList<Pair<TextRange, CodeVisionEntry>> = ArrayList()
@@ -69,23 +88,43 @@ class ProjectProblemCodeVisionProvider : JavaCodeVisionProviderBase() {
psiMember,
PsiNameIdentifierOwner::class.java) ?: return@forEach
val identifier = namedElement.nameIdentifier ?: return@forEach
- val text = JavaBundle.message("project.problems.hint.text", memberProblems.size)
- lenses.add(InlayHintsUtils.getTextRangeWithoutLeadingCommentsAndWhitespaces(psiMember) to ClickableRichTextCodeVisionEntry(id, RichText(text).apply { this.setForeColor(lenseColor) }, longPresentation = text, onClick = ClickHandler(psiMember)))
+ val lensPair = createLensPair(psiMember, lenseColor, memberProblems) ?: return@forEach
+ lenses.add(lensPair)
highlighters.add(ProjectProblemUtils.createHighlightInfo(editor, psiMember!!, identifier))
}
+ updateHighlighters(project, psiFile, editor, highlighters)
+
+ return lenses
+ }
+
+ private fun createLensPair(psiMember: PsiMember, lenseColor: Color, memberProblems: Set<Problem?>): Pair<TextRange, ClickableRichTextCodeVisionEntry>? {
+ val text = JavaBundle.message("project.problems.hint.text", memberProblems.size)
+ val richText = RichText(text)
+ richText.setForeColor(lenseColor)
+ val entry = ClickableRichTextCodeVisionEntry(id, richText, longPresentation = text, onClick = ClickHandler(psiMember))
+ return InlayHintsUtils.getTextRangeWithoutLeadingCommentsAndWhitespaces(psiMember) to entry
+ }
+
+ override fun preparePreview(editor: Editor, file: PsiFile) {
+ val method = (file as PsiJavaFile).classes[0].methods[0]
+ editor.putUserData(PREVIEW_PROBLEMS_KEY, setOf(Problem(method, method)))
+ }
+
+ private fun updateHighlighters(project: Project,
+ psiFile: PsiFile,
+ editor: Editor,
+ highlighters: MutableList<HighlightInfo>) {
ApplicationManager.getApplication()
.invokeLater({
if (project.isDisposed || !psiFile.isValid) return@invokeLater
val fileTextLength: Int = psiFile.textLength
val colorsScheme = editor.colorsScheme
- UpdateHighlightersUtil.setHighlightersToEditor(project, document, 0, fileTextLength,
+ UpdateHighlightersUtil.setHighlightersToEditor(project, editor.document, 0, fileTextLength,
highlighters, colorsScheme, -1)
},
ModalityState.NON_MODAL
)
-
- return lenses
}
private fun getCodeVisionColor(): Color {
diff --git a/java/java-impl/src/com/intellij/codeInsight/highlighting/JavaPairedBraceMatcher.java b/java/java-impl/src/com/intellij/codeInsight/highlighting/JavaPairedBraceMatcher.java
index df5b0e5b1060..7f7d37a9aaaa 100644
--- a/java/java-impl/src/com/intellij/codeInsight/highlighting/JavaPairedBraceMatcher.java
+++ b/java/java-impl/src/com/intellij/codeInsight/highlighting/JavaPairedBraceMatcher.java
@@ -16,17 +16,14 @@
package com.intellij.codeInsight.highlighting;
import com.intellij.ide.highlighter.JavaFileType;
-import com.intellij.lang.BracePair;
import com.intellij.lang.java.JavaLanguage;
-import com.intellij.openapi.editor.highlighter.HighlighterIterator;
-import com.intellij.openapi.fileTypes.FileType;
import com.intellij.psi.JavaTokenType;
import com.intellij.psi.impl.source.tree.StdTokenSets;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.tree.TokenSet;
import org.jetbrains.annotations.NotNull;
-public class JavaPairedBraceMatcher extends PairedBraceMatcherAdapter {
+public class JavaPairedBraceMatcher extends PairedBraceAndAnglesMatcher {
private static class Holder {
private static final TokenSet TYPE_TOKENS =
TokenSet.orSet(StdTokenSets.WHITE_SPACE_OR_COMMENT_BIT_SET,
@@ -37,70 +34,16 @@ public class JavaPairedBraceMatcher extends PairedBraceMatcherAdapter {
}
public JavaPairedBraceMatcher() {
- super(new JavaBraceMatcher(), JavaLanguage.INSTANCE);
+ super(new JavaBraceMatcher(), JavaLanguage.INSTANCE, JavaFileType.INSTANCE, Holder.TYPE_TOKENS);
}
@Override
- public boolean isLBraceToken(@NotNull HighlighterIterator iterator, @NotNull CharSequence fileText, @NotNull FileType fileType) {
- return isBrace(iterator, fileText, fileType, true);
+ public @NotNull IElementType lt() {
+ return JavaTokenType.LT;
}
@Override
- public boolean isRBraceToken(@NotNull HighlighterIterator iterator, @NotNull CharSequence fileText, @NotNull FileType fileType) {
- return isBrace(iterator, fileText, fileType, false);
- }
-
- private boolean isBrace(HighlighterIterator iterator,
- CharSequence fileText,
- FileType fileType,
- boolean left) {
- final BracePair pair = findPair(left, iterator, fileText, fileType);
- if (pair == null) return false;
-
- final IElementType opposite = left ? JavaTokenType.GT : JavaTokenType.LT;
- if ((left ? pair.getRightBraceType() : pair.getLeftBraceType()) != opposite) return true;
-
- if (fileType != JavaFileType.INSTANCE) return false;
-
- final IElementType braceElementType = left ? JavaTokenType.LT : JavaTokenType.GT;
- int count = 0;
- try {
- int paired = 1;
- while (true) {
- count++;
- if (left) {
- iterator.advance();
- } else {
- iterator.retreat();
- }
- if (iterator.atEnd()) break;
- final IElementType tokenType = iterator.getTokenType();
- if (tokenType == opposite) {
- paired--;
- if (paired == 0) return true;
- continue;
- }
-
- if (tokenType == braceElementType) {
- paired++;
- continue;
- }
-
- if (!Holder.TYPE_TOKENS.contains(tokenType)) {
- return false;
- }
- }
- return false;
- }
- finally {
- while (count-- > 0) {
- if (left) {
- iterator.retreat();
- } else {
- iterator.advance();
- }
- }
- }
+ public @NotNull IElementType gt() {
+ return JavaTokenType.GT;
}
}
-
diff --git a/java/java-impl/src/com/intellij/codeInsight/highlighting/PairedBraceAndAnglesMatcher.java b/java/java-impl/src/com/intellij/codeInsight/highlighting/PairedBraceAndAnglesMatcher.java
new file mode 100644
index 000000000000..e85fec2ae524
--- /dev/null
+++ b/java/java-impl/src/com/intellij/codeInsight/highlighting/PairedBraceAndAnglesMatcher.java
@@ -0,0 +1,95 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.codeInsight.highlighting;
+
+import com.intellij.lang.BracePair;
+import com.intellij.lang.Language;
+import com.intellij.lang.PairedBraceMatcher;
+import com.intellij.openapi.editor.highlighter.HighlighterIterator;
+import com.intellij.openapi.fileTypes.FileType;
+import com.intellij.openapi.fileTypes.LanguageFileType;
+import com.intellij.psi.tree.IElementType;
+import com.intellij.psi.tree.TokenSet;
+import org.jetbrains.annotations.NotNull;
+
+public abstract class PairedBraceAndAnglesMatcher extends PairedBraceMatcherAdapter {
+ private final TokenSet myTokenSetAllowedInsideAngleBrackets;
+ private final LanguageFileType myFileType;
+
+ public PairedBraceAndAnglesMatcher(@NotNull PairedBraceMatcher matcher,
+ @NotNull Language language,
+ @NotNull LanguageFileType fileType,
+ @NotNull TokenSet tokenSetAllowedInsideAngleBrackets) {
+ super(matcher, language);
+ myTokenSetAllowedInsideAngleBrackets = tokenSetAllowedInsideAngleBrackets;
+ myFileType = fileType;
+ }
+
+ @Override
+ public boolean isLBraceToken(@NotNull HighlighterIterator iterator, @NotNull CharSequence fileText, @NotNull FileType fileType) {
+ return isBrace(iterator, fileText, fileType, true);
+ }
+
+ @Override
+ public boolean isRBraceToken(@NotNull HighlighterIterator iterator, @NotNull CharSequence fileText, @NotNull FileType fileType) {
+ return isBrace(iterator, fileText, fileType, false);
+ }
+
+ public abstract @NotNull IElementType lt();
+
+ public abstract @NotNull IElementType gt();
+
+ private boolean isBrace(HighlighterIterator iterator,
+ CharSequence fileText,
+ FileType fileType,
+ boolean left) {
+ final BracePair pair = findPair(left, iterator, fileText, fileType);
+ if (pair == null) return false;
+
+ final IElementType opposite = left ? gt() : lt();
+ if ((left ? pair.getRightBraceType() : pair.getLeftBraceType()) != opposite) return true;
+
+ if (fileType != myFileType) return false;
+
+ final IElementType braceElementType = left ? lt() : gt();
+ int count = 0;
+ try {
+ int paired = 1;
+ while (true) {
+ count++;
+ if (left) {
+ iterator.advance();
+ }
+ else {
+ iterator.retreat();
+ }
+ if (iterator.atEnd()) break;
+ final IElementType tokenType = iterator.getTokenType();
+ if (tokenType == opposite) {
+ paired--;
+ if (paired == 0) return true;
+ continue;
+ }
+
+ if (tokenType == braceElementType) {
+ paired++;
+ continue;
+ }
+
+ if (!myTokenSetAllowedInsideAngleBrackets.contains(tokenType)) {
+ return false;
+ }
+ }
+ return false;
+ }
+ finally {
+ while (count-- > 0) {
+ if (left) {
+ iterator.retreat();
+ }
+ else {
+ iterator.advance();
+ }
+ }
+ }
+ }
+}
diff --git a/java/java-impl/src/com/intellij/codeInsight/hints/AnnotationInlayProvider.kt b/java/java-impl/src/com/intellij/codeInsight/hints/AnnotationInlayProvider.kt
index 380d027086bd..d96351180133 100644
--- a/java/java-impl/src/com/intellij/codeInsight/hints/AnnotationInlayProvider.kt
+++ b/java/java-impl/src/com/intellij/codeInsight/hints/AnnotationInlayProvider.kt
@@ -180,11 +180,9 @@ class AnnotationInlayProvider : InlayHintsProvider<AnnotationInlayProvider.Setti
val psiMethod = (file as PsiJavaFile).classes[0].methods[0]
val factory = PsiElementFactory.getInstance(file.project)
if (psiMethod.parameterList.isEmpty) {
- if (settings.showExternal) {
- PREVIEW_ANNOTATION_KEY.set(psiMethod, factory.createAnnotationFromText("@Deprecated", psiMethod))
- }
+ PREVIEW_ANNOTATION_KEY.set(psiMethod, factory.createAnnotationFromText("@Deprecated", psiMethod))
}
- else if (settings.showInferred)
+ else
PREVIEW_ANNOTATION_KEY.set(psiMethod.parameterList.getParameter(0), factory.createAnnotationFromText("@NotNull", psiMethod))
}
diff --git a/java/java-impl/src/com/intellij/codeInsight/hints/JavaVcsCodeVisionContext.kt b/java/java-impl/src/com/intellij/codeInsight/hints/JavaVcsCodeVisionContext.kt
index 59441060e39e..06183692dc65 100644
--- a/java/java-impl/src/com/intellij/codeInsight/hints/JavaVcsCodeVisionContext.kt
+++ b/java/java-impl/src/com/intellij/codeInsight/hints/JavaVcsCodeVisionContext.kt
@@ -7,11 +7,12 @@ import com.intellij.psi.PsiClass
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiMember
import com.intellij.psi.PsiMethod
+import com.intellij.psi.PsiTypeParameter
import java.awt.event.MouseEvent
class JavaVcsCodeVisionContext : VcsCodeVisionLanguageContext {
override fun isAccepted(element: PsiElement): Boolean {
- return element is PsiMethod || element is PsiClass
+ return element is PsiMethod || (element is PsiClass && element !is PsiTypeParameter)
}
override fun handleClick(mouseEvent: MouseEvent, editor: Editor, element: PsiElement) {
diff --git a/java/java-impl/src/com/intellij/codeInspection/deadCode/UnusedDeclarationPresentation.java b/java/java-impl/src/com/intellij/codeInspection/deadCode/UnusedDeclarationPresentation.java
index 57e722ce51b7..542a57ad4ad3 100644
--- a/java/java-impl/src/com/intellij/codeInspection/deadCode/UnusedDeclarationPresentation.java
+++ b/java/java-impl/src/com/intellij/codeInspection/deadCode/UnusedDeclarationPresentation.java
@@ -14,6 +14,7 @@ import com.intellij.concurrency.ConcurrentCollectionFactory;
import com.intellij.icons.AllIcons;
import com.intellij.ide.util.PsiNavigationSupport;
import com.intellij.lang.annotation.HighlightSeverity;
+import com.intellij.lang.java.JavaLanguage;
import com.intellij.openapi.actionSystem.ActionManager;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.application.ApplicationManager;
@@ -429,6 +430,8 @@ public class UnusedDeclarationPresentation extends DefaultInspectionToolPresenta
(myFixedElements.containsKey(refElement) ||
isExcluded(refEntity) ||
isSuppressed(refElement))) && refElement.isValid() && getFilter().accepts(refElement)) {
+ PsiElement psiElement = refElement.getPsiElement();
+ if (psiElement != null && psiElement.getLanguage() != JavaLanguage.INSTANCE) return;
if (skipEntryPoints(refElement)) return;
registerContentEntry(refEntity, RefJavaUtil.getInstance().getPackageName(refEntity));
}
diff --git a/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java b/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java
index 67c6ce968077..99a6c8af5ef2 100644
--- a/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java
+++ b/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java
@@ -1892,6 +1892,12 @@ public final class JavaSpacePropertyProcessor extends JavaElementVisitor {
}
}
+ @Override
+ public void visitSnippetAttributeList(PsiSnippetAttributeList attributeList) {
+ if (myType1 == JavaDocElementType.DOC_SNIPPET_ATTRIBUTE && myType2 == JavaDocElementType.DOC_SNIPPET_ATTRIBUTE) {
+ createSpaceInCode(true);
+ }
+ }
public static Spacing getSpacing(Block node, CommonCodeStyleSettings settings, JavaCodeStyleSettings javaSettings) {
return new JavaSpacePropertyProcessor(node, settings, javaSettings).myResult;
diff --git a/java/java-tests/testSrc/com/intellij/java/navigation/SearchEverywhereTabsCustomizationTest.kt b/java/java-tests/testSrc/com/intellij/java/navigation/SearchEverywhereTabsCustomizationTest.kt
new file mode 100644
index 000000000000..55dce203be06
--- /dev/null
+++ b/java/java-tests/testSrc/com/intellij/java/navigation/SearchEverywhereTabsCustomizationTest.kt
@@ -0,0 +1,63 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.java.navigation
+
+import com.intellij.ide.actions.searcheverywhere.*
+import com.intellij.openapi.application.ApplicationManager
+import com.intellij.openapi.progress.ProgressIndicator
+import com.intellij.openapi.util.Disposer
+import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase
+import com.intellij.testFramework.replaceService
+import com.intellij.util.Processor
+import org.junit.Assert
+import java.util.function.Function
+import javax.swing.JPanel
+import javax.swing.ListCellRenderer
+
+class SearchEverywhereTabsCustomizationTest : LightJavaCodeInsightFixtureTestCase() {
+
+ private val contributors : Map<SearchEverywhereContributor<*>, SearchEverywhereTabDescriptor?> = mapOf(
+ dumb("c1", true) to null,
+ dumb("c2", true) to null,
+ dumb("c3", true) to null,
+ dumb("c4", false) to null,
+ dumb("c5", false) to null
+ )
+
+ private lateinit var ui : SearchEverywhereUI
+
+ override fun setUp() {
+ super.setUp()
+ ui = SearchEverywhereUI(project, contributors).apply { Disposer.register(testRootDisposable, this) }
+ }
+
+ fun testFixedTabsListStrategy() {
+ val strategy = object : FixedTabsListCustomizationStrategy(listOf("c1", "c3", "c5")) {}
+ ApplicationManager.getApplication().replaceService(TabsCustomizationStrategy::class.java, strategy, testRootDisposable)
+ val header = SearchEverywhereHeader(project, contributors, Runnable { }, Function { _ -> null }, null, ui)
+ val tabIDs = header.tabs.map { it.id }
+ val expected = listOf(SearchEverywhereManagerImpl.ALL_CONTRIBUTORS_GROUP_ID, "c1", "c3")
+ Assert.assertEquals(expected, tabIDs)
+ }
+
+ fun testContributorDefinedStrategy() {
+ val strategy = ContributorDefinedTabsCustomizationStrategy()
+ ApplicationManager.getApplication().replaceService(TabsCustomizationStrategy::class.java, strategy, testRootDisposable)
+ val header = SearchEverywhereHeader(project, contributors, Runnable { }, Function { _ -> null }, null, ui)
+ val tabIDs = header.tabs.map { it.id }
+ val expected = listOf(SearchEverywhereManagerImpl.ALL_CONTRIBUTORS_GROUP_ID, "c1", "c2", "c3")
+ Assert.assertEquals(expected, tabIDs)
+ }
+
+ private fun dumb(id: String, showTab: Boolean): SearchEverywhereContributor<Unit> =
+ object : SearchEverywhereContributor<Unit> {
+ override fun getSearchProviderId(): String = id
+ override fun getGroupName(): String = id
+ override fun getSortWeight(): Int = 0
+ override fun showInFindResults(): Boolean = false
+ override fun isShownInSeparateTab(): Boolean = showTab
+ override fun getElementsRenderer(): ListCellRenderer<in Unit> = ListCellRenderer { _, _, _, _, _ -> JPanel() }
+ override fun getDataForItem(element: Unit, dataId: String): Any? = null
+ override fun processSelectedItem(selected: Unit, modifiers: Int, searchText: String): Boolean = false
+ override fun fetchElements(pattern: String, progressIndicator: ProgressIndicator, consumer: Processor<in Unit>) {}
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testSrc/com/intellij/java/psi/formatter/java/JavadocFormatterTest.kt b/java/java-tests/testSrc/com/intellij/java/psi/formatter/java/JavadocFormatterTest.kt
index 6e43b75a6d53..c713e40ad6f6 100644
--- a/java/java-tests/testSrc/com/intellij/java/psi/formatter/java/JavadocFormatterTest.kt
+++ b/java/java-tests/testSrc/com/intellij/java/psi/formatter/java/JavadocFormatterTest.kt
@@ -1818,4 +1818,24 @@ public class Test {
""".trimIndent()
)
}
+
+ fun testSnippetHasSpacesBetweenSnippetAttributes() {
+ doTextTest(
+ """
+ /**
+ * {@snippet class = ExternalSnippets region = join2}
+ */
+ public class Main {
+ }
+ """.trimIndent(),
+
+ """
+ /**
+ * {@snippet class = ExternalSnippets region = join2}
+ */
+ public class Main {
+ }
+ """.trimIndent()
+ )
+ }
} \ No newline at end of file
diff --git a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsModelSerializationDataService.java b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsModelSerializationDataService.java
index b9e4f4799d39..31038eaf01b7 100644
--- a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsModelSerializationDataService.java
+++ b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsModelSerializationDataService.java
@@ -10,6 +10,7 @@ import org.jetbrains.jps.model.serialization.impl.JpsModuleSerializationDataExte
import org.jetbrains.jps.model.serialization.impl.JpsPathVariablesConfigurationImpl;
import org.jetbrains.jps.model.serialization.impl.JpsProjectSerializationDataExtensionImpl;
import org.jetbrains.jps.model.serialization.module.JpsModuleSerializationDataExtension;
+import org.jetbrains.jps.service.JpsServiceManager;
import java.io.File;
import java.util.HashMap;
@@ -23,6 +24,9 @@ public final class JpsModelSerializationDataService {
if (configuration != null) {
pathVariables.putAll(configuration.getAllUserVariables());
}
+ for (JpsPathMacroContributor extension : JpsServiceManager.getInstance().getExtensions(JpsPathMacroContributor.class)) {
+ pathVariables.putAll(extension.getPathMacros());
+ }
return pathVariables;
}
diff --git a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsPathMacroContributor.java b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsPathMacroContributor.java
new file mode 100644
index 000000000000..39dcfde76c2b
--- /dev/null
+++ b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsPathMacroContributor.java
@@ -0,0 +1,26 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package org.jetbrains.jps.model.serialization;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * This is an alternative Path Macro contributor specifically for JPS.
+ * </p>
+ * <p>
+ * Note: all path macros contributed by {@link com.intellij.openapi.application.PathMacroContributor} are already handled by the JPS.
+ * Contrary, path macros contributed by {@link com.intellij.openapi.components.impl.ProjectWidePathMacroContributor} are not
+ * automatically handled by the JPS so in such cases you may want to use this {@link JpsPathMacroContributor}
+ * </p>
+ *
+ * @see com.intellij.openapi.components.impl.ProjectWidePathMacroContributor
+ */
+public interface JpsPathMacroContributor {
+ /**
+ * You are supposed to pass path macros into JPS process via System properties. You can pass custom
+ * System properties to the JPS process using {@link com.intellij.compiler.server.BuildProcessParametersProvider}
+ */
+ @NotNull Map<@NotNull String, @NotNull String> getPathMacros();
+}
diff --git a/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java b/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java
index 9bfc8184c277..02bb2cf856f8 100644
--- a/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java
+++ b/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java
@@ -65,8 +65,7 @@ class JsonSchemaStatusWidget extends EditorBasedStatusBarPopup {
private final AtomicReference<Pair<VirtualFile, Boolean>> mySuppressInfoRef = new AtomicReference<>();
- private volatile VirtualFile myLastUpdatedFile;
- private volatile WidgetState mySchemaWidgetState;
+ private volatile Pair<WidgetState, VirtualFile> myLastWidgetStateAndFilePair;
private ProgressIndicator myCurrentProgress;
JsonSchemaStatusWidget(@NotNull Project project) {
@@ -198,14 +197,18 @@ class JsonSchemaStatusWidget extends EditorBasedStatusBarPopup {
return WidgetStatus.ENABLED;
}
- @NotNull
@Override
- protected WidgetState getWidgetState(@Nullable VirtualFile file) {
+ protected @NotNull WidgetState getWidgetState(@Nullable VirtualFile file) {
+ Pair<WidgetState, VirtualFile> lastStateAndFilePair = myLastWidgetStateAndFilePair;
+ WidgetState widgetState = calcWidgetState(file, Pair.getFirst(lastStateAndFilePair), Pair.getSecond(lastStateAndFilePair));
+ myLastWidgetStateAndFilePair = new Pair<>(widgetState, file);
+ return widgetState;
+ }
+
+ private @NotNull WidgetState calcWidgetState(@Nullable VirtualFile file,
+ @Nullable WidgetState lastWidgetState,
+ @Nullable VirtualFile lastFile) {
Pair<VirtualFile, Boolean> suppressInfo = mySuppressInfoRef.getAndSet(null);
- WidgetState schemaWidgetState = mySchemaWidgetState;
- mySchemaWidgetState = null;
- VirtualFile lastUpdatedFile = myLastUpdatedFile;
- myLastUpdatedFile = file;
if (myCurrentProgress != null && !myCurrentProgress.isCanceled()) {
myCurrentProgress.cancel();
}
@@ -232,7 +235,7 @@ class JsonSchemaStatusWidget extends EditorBasedStatusBarPopup {
scheduleSuppressCheck(file, myCurrentProgress);
// show 'loading' only when switching between files and previous state was not hidden, otherwise the widget will "jump"
- if (!Comparing.equal(lastUpdatedFile, file) && schemaWidgetState != null && schemaWidgetState != WidgetState.HIDDEN) {
+ if (!Comparing.equal(lastFile, file) && lastWidgetState != null && lastWidgetState != WidgetState.HIDDEN) {
return new WidgetState(JsonBundle.message("schema.widget.checking.state.tooltip"),
JsonBundle.message("schema.widget.checking.state.text",
isJsonFile ? JsonBundle.message("schema.widget.prefix.json.files")
@@ -248,12 +251,10 @@ class JsonSchemaStatusWidget extends EditorBasedStatusBarPopup {
}
}
- WidgetState state = doGetWidgetState(file, isJsonFile);
- mySchemaWidgetState = state;
- return state;
+ return doGetWidgetState(file, isJsonFile);
}
- private WidgetState doGetWidgetState(@NotNull VirtualFile file, boolean isJsonFile) {
+ private @NotNull WidgetState doGetWidgetState(@NotNull VirtualFile file, boolean isJsonFile) {
JsonSchemaService service = getService();
if (service == null) {
return getNoSchemaState();
@@ -463,17 +464,19 @@ class JsonSchemaStatusWidget extends EditorBasedStatusBarPopup {
@Nullable
@Override
protected ListPopup createPopup(DataContext context) {
- final VirtualFile virtualFile = CommonDataKeys.VIRTUAL_FILE.getData(context);
- if (virtualFile == null) return null;
+ VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(context);
+ if (file == null) return null;
Project project = getProject();
- WidgetState popupState = mySchemaWidgetState;
- if (!(popupState instanceof MyWidgetState) || !virtualFile.equals(myLastUpdatedFile)) return null;
-
- JsonSchemaService service = getService();
- if (service == null) return null;
-
- return JsonSchemaStatusPopup.createPopup(service, project, virtualFile, ((MyWidgetState)popupState).isWarning());
+ Pair<WidgetState, VirtualFile> lastWidgetStateAndFilePair = myLastWidgetStateAndFilePair;
+ WidgetState lastWidgetState = Pair.getFirst(lastWidgetStateAndFilePair);
+ if (lastWidgetState instanceof MyWidgetState && file.equals(Pair.getSecond(lastWidgetStateAndFilePair))) {
+ JsonSchemaService service = getService();
+ if (service != null) {
+ return JsonSchemaStatusPopup.createPopup(service, project, file, ((MyWidgetState)lastWidgetState).isWarning());
+ }
+ }
+ return null;
}
@Override
diff --git a/platform/analysis-impl/resources/messages/FindBundle.properties b/platform/analysis-impl/resources/messages/FindBundle.properties
index d9a3935845b0..f9ec46f0d71b 100644
--- a/platform/analysis-impl/resources/messages/FindBundle.properties
+++ b/platform/analysis-impl/resources/messages/FindBundle.properties
@@ -176,4 +176,4 @@ show.usages.more.usages.label=more usages
show.usages.current.usage.label=Current
search.everywhere.group.name=Text
-se.text.header.action.all.filetypes=All filetypes \ No newline at end of file
+se.text.header.action.all.filetypes=All file types \ No newline at end of file
diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/BuildContextImpl.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/BuildContextImpl.groovy
index eab68547a5a4..bd056cea7ed8 100644
--- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/BuildContextImpl.groovy
+++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/BuildContextImpl.groovy
@@ -84,7 +84,7 @@ final class BuildContextImpl extends BuildContext {
buildNumber = options.buildNumber ?: readSnapshotBuildNumber(paths.communityHomeDir)
xBootClassPathJarNames = productProperties.xBootClassPathJarNames
- bootClassPathJarNames = List.of("util.jar")
+ bootClassPathJarNames = List.of("util.jar", "util_rt.jar")
applicationInfo = new ApplicationInfoProperties(project, productProperties, options, messages) // Android Studio: don't .patch(this)
if (productProperties.productCode == null && applicationInfo.productCode != null) {
productProperties.productCode = applicationInfo.productCode
diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy
index 5be4586bfb3a..c9683fbcde6d 100644
--- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy
+++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy
@@ -126,6 +126,8 @@ final class PlatformModules {
private static final String UTIL_JAR = "util.jar"
+ private static final String UTIL_RT_JAR = "util_rt.jar"
+
public static final Map<String, PackMode> CUSTOM_PACK_MODE = Map.of(
// jna uses native lib
"jna", PackMode.STANDALONE_MERGED,
@@ -203,12 +205,16 @@ final class PlatformModules {
layout.moduleExcludes.putValues(entry.key, entry.value)
}
+ jar(UTIL_RT_JAR, List.of(
+ "intellij.platform.util.rt",
+ ), productLayout, layout)
+
+
jar(UTIL_JAR, List.of(
"intellij.platform.util.rt.java8",
"intellij.platform.util.zip",
"intellij.platform.util.classLoader",
"intellij.platform.bootstrap",
- "intellij.platform.util.rt",
"intellij.platform.util",
"intellij.platform.util.text.matching",
"intellij.platform.util.base",
@@ -217,7 +223,7 @@ final class PlatformModules {
"intellij.platform.extensions",
"intellij.platform.tracing.rt",
"intellij.platform.boot",
- ), productLayout, layout)
+ ), productLayout, layout)
jar("externalProcess-rt.jar", List.of(
"intellij.platform.externalProcessAuthHelper.rt"
@@ -231,7 +237,7 @@ final class PlatformModules {
"intellij.platform.ide.util.io",
"intellij.platform.ide.util.io.impl",
"intellij.platform.ide.util.netty",
- ), productLayout, layout)
+ ), productLayout, layout)
jar(BaseLayout.APP_JAR, List.of(
"intellij.relaxng",
@@ -295,7 +301,7 @@ final class PlatformModules {
layout.projectLibrariesToUnpack.putValues(UTIL_JAR, List.of(
"JDOM",
"Trove4j",
- ))
+ ))
for (ProjectLibraryData item in additionalProjectLevelLibraries) {
String name = item.libraryName
@@ -330,20 +336,19 @@ final class PlatformModules {
}
Files.newInputStream(file).withCloseable {
- NodeList contentList = DocumentBuilderFactory.newDefaultInstance().newDocumentBuilder()
- .parse(it, file.toString()).getDocumentElement().getElementsByTagName("content")
+ NodeList contentList = DocumentBuilderFactory.newDefaultInstance()
+ .newDocumentBuilder()
+ .parse(it, file.toString())
+ .getDocumentElement()
+ .getElementsByTagName("content")
if (contentList.length != 0) {
NodeList modules = ((Element)contentList.item(0)).getElementsByTagName("module")
Set<String> result = new LinkedHashSet<>(modules.length)
for (int i = 0; i < modules.length; i++) {
- String rawName = ((Element)modules.item(i))
- .getAttribute("name")
-
- int index = rawName.indexOf('/')
- String name = index == -1 ? rawName : rawName.substring(0, index)
- result.add(name)
+ Element element = (Element)modules.item(i)
+ result.add(element.getAttribute("name"))
}
- return Collections.unmodifiableSet(result)
+ return Set.copyOf(result)
}
return Set.<String> of()
}
diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PluginLayout.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PluginLayout.groovy
index 3effeea54e80..a636e8c183b2 100644
--- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PluginLayout.groovy
+++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PluginLayout.groovy
@@ -2,6 +2,7 @@
package org.jetbrains.intellij.build.impl
import com.intellij.openapi.util.Pair
+import com.intellij.util.containers.MultiMap
import groovy.transform.CompileStatic
import org.jetbrains.annotations.NotNull
import org.jetbrains.intellij.build.BuildContext
@@ -132,6 +133,38 @@ final class PluginLayout extends BaseLayout {
}, ""))
}
+ void mergeServiceFiles() {
+ patchers.add(new BiConsumer<ModuleOutputPatcher, BuildContext>() {
+ @Override
+ void accept(ModuleOutputPatcher patcher, BuildContext context) {
+ MultiMap<String, Pair<String, Path>> discoveredServiceFiles = MultiMap.createLinkedSet()
+
+ moduleJars.get(mainJarName).each { String moduleName ->
+ Path path = context.findFileInModuleSources(moduleName, "META-INF/services")
+ if (path == null) return
+
+ Files.list(path).each { Path serviceFile ->
+ if (!Files.isRegularFile(serviceFile)) return
+ discoveredServiceFiles.putValue(serviceFile.fileName.toString(), Pair.create(moduleName, serviceFile))
+ }
+ }
+
+ discoveredServiceFiles.entrySet().each { Map.Entry<String, Collection<Pair<String, Path>>> entry ->
+ String serviceFileName = entry.key
+ Collection<Pair<String, Path>> serviceFiles = entry.value
+
+ if (serviceFiles.size() <= 1) return
+ String content = serviceFiles.collect { Files.readString(it.second) }.join("\n")
+
+ context.messages.info("Merging service file " + serviceFileName + " (" + serviceFiles.collect { it.first }.join(", ") + ")")
+ patcher.patchModuleOutput(serviceFiles.first().first, // first one wins
+ "META-INF/services/$serviceFileName",
+ content)
+ }
+ }
+ })
+ }
+
@CompileStatic
static final class PluginLayoutSpec extends BaseLayoutSpec {
final PluginLayout layout
@@ -368,6 +401,14 @@ final class PluginLayout extends BaseLayout {
void filterScrambleClasspath(BiPredicate<BuildContext, Path> filter) {
layout.scrambleClasspathFilter = filter
}
+
+ /**
+ * Concatenates `META-INF/services` files with the same name from different modules together.
+ * By default the first service file silently wins.
+ */
+ void mergeServiceFiles() {
+ layout.mergeServiceFiles()
+ }
}
interface VersionEvaluator {
diff --git a/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/IntellijIconClassGeneratorConfig.kt b/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/IntellijIconClassGeneratorConfig.kt
index 38b9fa730279..de82cd977e18 100644
--- a/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/IntellijIconClassGeneratorConfig.kt
+++ b/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/IntellijIconClassGeneratorConfig.kt
@@ -13,6 +13,10 @@ class IntellijIconClassGeneratorConfig : IconsClasses() {
override fun getConfigForModule(moduleName: String): IntellijIconClassGeneratorModuleConfig? {
@Suppress("SpellCheckingInspection")
return when (moduleName) {
+ "intellij.devkit" -> IntellijIconClassGeneratorModuleConfig(
+ className = "DevKitIcons",
+ packageName = "org.jetbrains.idea.devkit",
+ )
// force generating "Groovy" inner class to preserve backward compatiblity
"intellij.groovy.psi" -> IntellijIconClassGeneratorModuleConfig(className = "JetgroovyIcons", iconDirectory = "icons")
"intellij.clouds.docker" -> IntellijIconClassGeneratorModuleConfig(className = "DockerIcons", packageName = "com.intellij.docker")
@@ -21,6 +25,7 @@ class IntellijIconClassGeneratorConfig : IconsClasses() {
packageName = "com.intellij.lang.ognl",
iconDirectory = "icons",
)
+
"intellij.struts2.dom" -> IntellijIconClassGeneratorModuleConfig(
className = "Struts2Icons",
packageName = "com.intellij.struts2",
diff --git a/platform/build-scripts/resources/linux/scripts/remote-dev-server.sh b/platform/build-scripts/resources/linux/scripts/remote-dev-server.sh
index bbc0ac2e3e15..608702bd28c1 100644
--- a/platform/build-scripts/resources/linux/scripts/remote-dev-server.sh
+++ b/platform/build-scripts/resources/linux/scripts/remote-dev-server.sh
@@ -21,8 +21,10 @@ REMOTE_DEV_LAUNCHER_NAME_FOR_USAGE_WITH_EXIT_CODE_CHECK="${REMOTE_DEV_LAUNCHER_N
export REMOTE_DEV_LAUNCHER_NAME_FOR_USAGE=$REMOTE_DEV_LAUNCHER_NAME_FOR_USAGE_WITH_EXIT_CODE_CHECK
while true; do
+ set +e
"$REMOTE_DEV_SERVER_LAUNCHER_PATH" "__script_name__" "__product_code__" "__product_uc__" "__vm_options__" "__ide_default_xmx__" "$@"
host_exit_code=$?
+ set -e
# restart on special exit code, otherwise forward the exit code to caller
if [ $host_exit_code -ne $IDEA_RESTART_VIA_EXIT_CODE ]; then
exit $host_exit_code
diff --git a/platform/build-scripts/resources/win/scripts/executable-template.bat b/platform/build-scripts/resources/win/scripts/executable-template.bat
index 4db3b7e9d08f..6eef9c7daec2 100644
--- a/platform/build-scripts/resources/win/scripts/executable-template.bat
+++ b/platform/build-scripts/resources/win/scripts/executable-template.bat
@@ -84,13 +84,13 @@ IF NOT "%USER_VM_OPTIONS_FILE%" == "" (
)
IF NOT "%VM_OPTIONS_FILE%" == "" (
IF "%USER_GC%" == "" (
- FOR /F "eol=# usebackq delims=" %%i IN ("%VM_OPTIONS_FILE%") DO CALL SET ACC=%%ACC%% "%%i"
+ FOR /F "eol=# usebackq delims=" %%i IN ("%VM_OPTIONS_FILE%") DO CALL SET "ACC=%%ACC%% %%i"
) ELSE (
- FOR /F "eol=# usebackq delims=" %%i IN (`FINDSTR /R /V /C:"-XX:\+Use.*GC" "%VM_OPTIONS_FILE%"`) DO CALL SET ACC=%%ACC%% "%%i"
+ FOR /F "eol=# usebackq delims=" %%i IN (`FINDSTR /R /V /C:"-XX:\+Use.*GC" "%VM_OPTIONS_FILE%"`) DO CALL SET "ACC=%%ACC%% %%i"
)
)
IF NOT "%USER_VM_OPTIONS_FILE%" == "" (
- FOR /F "eol=# usebackq delims=" %%i IN ("%USER_VM_OPTIONS_FILE%") DO CALL SET ACC=%%ACC%% "%%i"
+ FOR /F "eol=# usebackq delims=" %%i IN ("%USER_VM_OPTIONS_FILE%") DO CALL SET "ACC=%%ACC%% %%i"
)
IF "%VM_OPTIONS_FILE%%USER_VM_OPTIONS_FILE%" == "" (
ECHO ERROR: cannot find a VM options file
diff --git a/platform/build-scripts/testFramework/src/org/jetbrains/intellij/build/testFramework/buildScriptTestUtils.kt b/platform/build-scripts/testFramework/src/org/jetbrains/intellij/build/testFramework/buildScriptTestUtils.kt
index f8eb8f16e4fe..28db23b611e1 100644
--- a/platform/build-scripts/testFramework/src/org/jetbrains/intellij/build/testFramework/buildScriptTestUtils.kt
+++ b/platform/build-scripts/testFramework/src/org/jetbrains/intellij/build/testFramework/buildScriptTestUtils.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.intellij.build.testFramework
import com.intellij.openapi.util.io.FileUtil
@@ -29,11 +29,13 @@ private val initializeTracer by lazy {
}
}
-fun createBuildContext(homePath: String, productProperties: ProductProperties,
- buildTools: ProprietaryBuildTools,
- skipDependencySetup: Boolean = false,
- communityHomePath: String = "$homePath/community",
- buildOptionsCustomizer: (BuildOptions) -> Unit = {}): BuildContext {
+fun createBuildContext(
+ homePath: String, productProperties: ProductProperties,
+ buildTools: ProprietaryBuildTools = ProprietaryBuildTools.DUMMY,
+ skipDependencySetup: Boolean = false,
+ communityHomePath: String = "$homePath/community",
+ buildOptionsCustomizer: (BuildOptions) -> Unit = {},
+): BuildContext {
val options = BuildOptions()
options.isSkipDependencySetup = skipDependencySetup
options.isIsTestBuild = true
@@ -45,15 +47,40 @@ fun createBuildContext(homePath: String, productProperties: ProductProperties,
return BuildContext.createContext(communityHomePath, homePath, productProperties, buildTools, options)
}
-fun runTestBuild(homePath: String,
- productProperties: ProductProperties,
- buildTools: ProprietaryBuildTools,
- communityHomePath: String = "$homePath/community",
- traceSpanName: String? = null,
- verifier: (paths: BuildPaths) -> Unit = {},
- buildOptionsCustomizer: (BuildOptions) -> Unit = {}) {
+fun runTestBuild(
+ homePath: String,
+ productProperties: ProductProperties,
+ buildTools: ProprietaryBuildTools = ProprietaryBuildTools.DUMMY,
+ communityHomePath: String = "$homePath/community",
+ traceSpanName: String? = null,
+ verifier: (paths: BuildPaths) -> Unit = {},
+ buildOptionsCustomizer: (BuildOptions) -> Unit = {},
+) {
+ val buildContext = createBuildContext(
+ homePath = homePath,
+ productProperties = productProperties,
+ buildTools = buildTools,
+ skipDependencySetup = false,
+ communityHomePath = communityHomePath,
+ buildOptionsCustomizer = buildOptionsCustomizer,
+ )
+
+ runTestBuild(
+ buildContext = buildContext,
+ traceSpanName = traceSpanName,
+ verifier = verifier,
+ )
+}
+
+fun runTestBuild(
+ buildContext: BuildContext,
+ traceSpanName: String? = null,
+ verifier: (paths: BuildPaths) -> Unit = {},
+) {
initializeTracer
+ val productProperties = buildContext.productProperties
+
// to see in Jaeger as a one trace
val traceFileName = "${productProperties.baseFileName}-trace.json"
val span = TracerManager.spanBuilder(traceSpanName ?: "test build of ${productProperties.baseFileName}").startSpan()
@@ -61,7 +88,6 @@ fun runTestBuild(homePath: String,
val spanScope = span.makeCurrent()
try {
- val buildContext = createBuildContext(homePath, productProperties, buildTools, false, communityHomePath, buildOptionsCustomizer)
val outDir = buildContext.paths.buildOutputDir
span.setAttribute("outDir", outDir.toString())
val messages = buildContext.messages as BuildMessagesImpl
diff --git a/platform/configuration-store-impl/src/ProjectStoreBridge.kt b/platform/configuration-store-impl/src/ProjectStoreBridge.kt
index a64258168044..76024557cc79 100644
--- a/platform/configuration-store-impl/src/ProjectStoreBridge.kt
+++ b/platform/configuration-store-impl/src/ProjectStoreBridge.kt
@@ -17,6 +17,7 @@ import com.intellij.project.stateStore
import com.intellij.util.PathUtil
import com.intellij.util.containers.HashingStrategy
import com.intellij.util.io.systemIndependentPath
+import com.intellij.workspaceModel.ide.JpsProjectConfigLocation
import com.intellij.workspaceModel.ide.impl.jps.serialization.*
import org.jdom.Element
import org.jetbrains.jps.util.JpsPathUtil
@@ -67,7 +68,7 @@ private class JpsStorageContentWriter(private val session: ProjectWithModulesSav
override fun getReplacePathMacroMap(fileUrl: String): PathMacroMap {
val filePath = JpsPathUtil.urlToPath(fileUrl)
return if (FileUtil.extensionEquals(filePath, "iml") || isExternalModuleFile(filePath)) {
- ModulePathMacroManager.createInstance(Supplier { filePath }).replacePathMap
+ ModulePathMacroManager.createInstance(project::getProjectFilePath, Supplier { filePath }).replacePathMap
}
else {
ProjectPathMacroManager.getInstance(project).replacePathMap
@@ -125,7 +126,7 @@ private class ProjectWithModulesSaveSessionProducerManager(project: Project) : P
}
internal class StorageJpsConfigurationReader(private val project: Project,
- private val baseDirUrl: String) : JpsFileContentReaderWithCache {
+ private val configLocation: JpsProjectConfigLocation) : JpsFileContentReaderWithCache {
@Volatile
private var fileContentCachingReader: CachingJpsFileContentReader? = null
@@ -159,7 +160,7 @@ internal class StorageJpsConfigurationReader(private val project: Project,
}
private fun getCachingReader(): CachingJpsFileContentReader {
- val reader = fileContentCachingReader ?: CachingJpsFileContentReader(baseDirUrl)
+ val reader = fileContentCachingReader ?: CachingJpsFileContentReader(configLocation)
if (fileContentCachingReader == null) {
fileContentCachingReader = reader
}
diff --git a/platform/configuration-store-impl/src/ProjectStoreImpl.kt b/platform/configuration-store-impl/src/ProjectStoreImpl.kt
index 2ba818b78f98..6edeef1aaa85 100644
--- a/platform/configuration-store-impl/src/ProjectStoreImpl.kt
+++ b/platform/configuration-store-impl/src/ProjectStoreImpl.kt
@@ -184,7 +184,7 @@ open class ProjectWithModulesStoreImpl(project: Project) : ProjectStoreImpl(proj
}
override fun createContentReader(): JpsFileContentReaderWithCache {
- return StorageJpsConfigurationReader(project, getJpsProjectConfigLocation(project)!!.baseDirectoryUrlString)
+ return StorageJpsConfigurationReader(project, getJpsProjectConfigLocation(project)!!)
}
private fun commitModuleComponents(moduleStore: ComponentStoreImpl, moduleSaveSessionManager: SaveSessionProducerManager,
diff --git a/platform/core-api/src/com/intellij/openapi/application/PathMacroContributor.java b/platform/core-api/src/com/intellij/openapi/application/PathMacroContributor.java
index 2d51f1b37065..dfc23f31d736 100644
--- a/platform/core-api/src/com/intellij/openapi/application/PathMacroContributor.java
+++ b/platform/core-api/src/com/intellij/openapi/application/PathMacroContributor.java
@@ -5,6 +5,14 @@ import org.jetbrains.annotations.NotNull;
import java.util.Map;
+/**
+ * <p>
+ * Application-wide Path Macro contributor.
+ * </p>
+ * <p>
+ * See {@link com.intellij.openapi.components.impl.ProjectWidePathMacroContributor} for the project-wide analog
+ * </p>
+ */
public interface PathMacroContributor {
/**
* Register path.macros
diff --git a/platform/core-api/src/com/intellij/util/graph/GraphAlgorithms.java b/platform/core-api/src/com/intellij/util/graph/GraphAlgorithms.java
index 1c65f1961b2c..bf00a41d4039 100644
--- a/platform/core-api/src/com/intellij/util/graph/GraphAlgorithms.java
+++ b/platform/core-api/src/com/intellij/util/graph/GraphAlgorithms.java
@@ -10,12 +10,25 @@ import org.jetbrains.annotations.Nullable;
import java.util.Collection;
import java.util.List;
import java.util.Set;
+import java.util.function.Consumer;
public abstract class GraphAlgorithms {
public static GraphAlgorithms getInstance() {
return ApplicationManager.getApplication().getService(GraphAlgorithms.class);
}
+ public abstract <Node> @NotNull Collection<Node> findNodesWhichBelongToAnyPathBetweenTwoNodes(
+ @NotNull Graph<Node> graph,
+ @NotNull Node start,
+ @NotNull Node finish
+ );
+
+ public abstract <Node> @NotNull Collection<Node> findNodeNeighbourhood(
+ @NotNull Graph<Node> graph,
+ @NotNull Node node,
+ int levelBound
+ );
+
@Nullable
public abstract <Node> List<Node> findShortestPath(@NotNull InboundSemiGraph<Node> graph, @NotNull Node start, @NotNull Node finish);
@@ -26,6 +39,11 @@ public abstract class GraphAlgorithms {
@NotNull
public abstract <Node> Set<List<Node>> findCycles(@NotNull Graph<Node> graph, @NotNull Node node);
+ public abstract <Node> void iterateOverAllSimpleCycles(
+ @NotNull Graph<Node> graph,
+ @NotNull Consumer<List<Node>> cycleConsumer
+ );
+
@NotNull
public abstract <Node> List<List<Node>> removePathsWithCycles(@NotNull List<? extends List<Node>> paths);
@@ -41,8 +59,9 @@ public abstract class GraphAlgorithms {
/**
* Adds start node and all its outs to given set recursively.
* Nodes which are already in set aren't processed.
- * @param start node to start from
- * @param set set to be populated
+ *
+ * @param start node to start from
+ * @param set set to be populated
*/
public abstract <Node> void collectOutsRecursively(@NotNull Graph<Node> graph, Node start, Set<? super Node> set);
}
diff --git a/platform/core-impl/src/com/intellij/util/graph/impl/Bfs.java b/platform/core-impl/src/com/intellij/util/graph/impl/Bfs.java
new file mode 100644
index 000000000000..b7c8d7e2be77
--- /dev/null
+++ b/platform/core-impl/src/com/intellij/util/graph/impl/Bfs.java
@@ -0,0 +1,53 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.util.graph.impl;
+
+import com.intellij.util.graph.OutboundSemiGraph;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.ArrayDeque;
+import java.util.HashSet;
+import java.util.Queue;
+import java.util.Set;
+import java.util.function.BiConsumer;
+
+
+public final class Bfs {
+
+ private Bfs() { }
+
+ public static <Node> void performBfs(
+ @NotNull OutboundSemiGraph<Node> graph,
+ @NotNull Node root,
+ @NotNull BiConsumer<Node, Integer> visitor
+ ) {
+ final Set<Node> visited = new HashSet<>();
+ final Queue<WithIndex<Node>> queue = new ArrayDeque<>();
+ queue.add(new WithIndex<>(root, 0));
+
+ while (!queue.isEmpty()) {
+ final WithIndex<Node> curr = queue.poll();
+
+ if (!visited.contains(curr)) {
+ visitor.accept(curr.node, curr.index);
+ visited.add(curr.node);
+ }
+
+ graph.getOut(curr.node).forEachRemaining(next -> {
+ if (!visited.contains(next)) {
+ queue.add(new WithIndex<>(next, curr.index + 1));
+ }
+ });
+ }
+ }
+
+
+ private static final class WithIndex<Node> {
+ private final @NotNull Node node;
+ private final int index;
+
+ private WithIndex(@NotNull Node node, int index) {
+ this.node = node;
+ this.index = index;
+ }
+ }
+}
diff --git a/platform/core-impl/src/com/intellij/util/graph/impl/Dfs.java b/platform/core-impl/src/com/intellij/util/graph/impl/Dfs.java
new file mode 100644
index 000000000000..0928d0cd2392
--- /dev/null
+++ b/platform/core-impl/src/com/intellij/util/graph/impl/Dfs.java
@@ -0,0 +1,42 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.util.graph.impl;
+
+import com.intellij.util.graph.OutboundSemiGraph;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.ArrayDeque;
+import java.util.Deque;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.function.Consumer;
+
+
+public final class Dfs {
+
+ private Dfs() { }
+
+ public static <Node> void performDfs(
+ @NotNull OutboundSemiGraph<Node> graph,
+ @NotNull Node root,
+ @NotNull Consumer<Node> visitor
+ ) {
+ final Set<Node> visited = new HashSet<>();
+ final Deque<Node> stack = new ArrayDeque<>();
+ stack.push(root);
+
+ while (!stack.isEmpty()) {
+ final Node curr = stack.pop();
+
+ if (!visited.contains(curr)) {
+ visitor.accept(curr);
+ visited.add(curr);
+ }
+
+ graph.getOut(curr).forEachRemaining(next -> {
+ if (!visited.contains(next)) {
+ stack.push(next);
+ }
+ });
+ }
+ }
+}
diff --git a/platform/core-impl/src/com/intellij/util/graph/impl/GraphAlgorithmsImpl.java b/platform/core-impl/src/com/intellij/util/graph/impl/GraphAlgorithmsImpl.java
index 37d98c2300b2..01f3ca7e8521 100644
--- a/platform/core-impl/src/com/intellij/util/graph/impl/GraphAlgorithmsImpl.java
+++ b/platform/core-impl/src/com/intellij/util/graph/impl/GraphAlgorithmsImpl.java
@@ -3,13 +3,46 @@ package com.intellij.util.graph.impl;
import com.intellij.openapi.progress.ProgressIndicator;
import com.intellij.util.Chunk;
+import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.graph.*;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.*;
+import java.util.function.Consumer;
public final class GraphAlgorithmsImpl extends GraphAlgorithms {
+
+ @Override
+ public @NotNull <Node> Collection<Node> findNodesWhichBelongToAnyPathBetweenTwoNodes(
+ @NotNull Graph<Node> graph,
+ @NotNull Node start,
+ @NotNull Node finish
+ ) {
+ final Set<Node> reachableFromStart = new HashSet<>();
+ final Set<Node> leadToFinish = new HashSet<>();
+
+ Dfs.performDfs(graph, start, reachableFromStart::add);
+ Dfs.performDfs(invertEdgeDirections(graph), finish, leadToFinish::add);
+
+ return ContainerUtil.intersection(reachableFromStart, leadToFinish);
+ }
+
+ @Override
+ public @NotNull <Node> Collection<Node> findNodeNeighbourhood(
+ @NotNull Graph<Node> graph,
+ @NotNull Node node,
+ int levelBound
+ ) {
+ final Set<Node> neighbourhood = new HashSet<>();
+ Bfs.performBfs(graph, node, (neighbour, level) -> {
+ if (level <= levelBound) {
+ neighbourhood.add(neighbour);
+ }
+ });
+ return neighbourhood;
+ }
+
@Nullable
@Override
public <Node> List<Node> findShortestPath(@NotNull InboundSemiGraph<Node> graph, @NotNull Node start, @NotNull Node finish) {
@@ -29,6 +62,11 @@ public final class GraphAlgorithmsImpl extends GraphAlgorithms {
return new CycleFinder<>(graph).getNodeCycles(node);
}
+ @Override
+ public <Node> void iterateOverAllSimpleCycles(@NotNull Graph<Node> graph, @NotNull Consumer<List<Node>> cycleConsumer) {
+ new SimpleCyclesIterator<>(graph).iterateSimpleCycles(cycleConsumer);
+ }
+
@NotNull
@Override
public <Node> Graph<Node> invertEdgeDirections(@NotNull final Graph<Node> graph) {
@@ -50,7 +88,6 @@ public final class GraphAlgorithmsImpl extends GraphAlgorithms {
public Iterator<Node> getOut(final Node n) {
return graph.getIn(n);
}
-
};
}
diff --git a/platform/core-impl/src/com/intellij/util/graph/impl/SimpleCyclesIterator.java b/platform/core-impl/src/com/intellij/util/graph/impl/SimpleCyclesIterator.java
new file mode 100644
index 000000000000..0c76791d35d9
--- /dev/null
+++ b/platform/core-impl/src/com/intellij/util/graph/impl/SimpleCyclesIterator.java
@@ -0,0 +1,329 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.util.graph.impl;
+
+import com.intellij.openapi.util.Pair;
+import com.intellij.util.graph.Graph;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.*;
+import java.util.function.Consumer;
+
+
+/**
+ * Find all simple cycles of a directed graph using the Johnson's algorithm.
+ * The implementation is copied and adapted from JGraphT one.
+ *
+ * @see <a href="https://github.com/jgrapht/jgrapht/blob/master/jgrapht-core/src/main/java/org/jgrapht/alg/cycle/JohnsonSimpleCycles.java">JGraphT implementation</a>
+ */
+public class SimpleCyclesIterator<Node> {
+ // The graph.
+ private Graph<Node> myGraph;
+
+ // The main state of the algorithm.
+ private Consumer<List<Node>> myCycleConsumer = null;
+ private Node[] myIToV = null;
+ private Map<Node, Integer> myVToI = null;
+ private Set<Node> myBlocked = null;
+ private Map<Node, Set<Node>> myBSets = null;
+ private ArrayDeque<Node> myStack = null;
+
+ // The state of the embedded Tarjan SCC algorithm.
+ private List<Set<Node>> myFoundSCCs = null;
+ private int myIndex = 0;
+ private Map<Node, Integer> myVIndex = null;
+ private Map<Node, Integer> myVLowlink = null;
+ private ArrayDeque<Node> myPath = null;
+ private Set<Node> myPathSet = null;
+
+ /**
+ * Create a simple cycle finder for the specified graph.
+ *
+ * @param graph - the DirectedGraph in which to find cycles.
+ * @throws IllegalArgumentException if the graph argument is <code>
+ * null</code>.
+ */
+ public SimpleCyclesIterator(@NotNull Graph<Node> graph) {
+ myGraph = graph;
+ }
+
+ public void iterateSimpleCycles(@NotNull Consumer<List<Node>> consumer) {
+ if (myGraph == null) {
+ throw new IllegalArgumentException("Null graph.");
+ }
+ initState(consumer);
+
+ int startIndex = 0;
+ int size = myGraph.getNodes().size();
+ while (startIndex < size) {
+ Pair<Graph<Node>, Integer> minSCCGResult = findMinSCSG(startIndex);
+ if (minSCCGResult != null) {
+ startIndex = minSCCGResult.getSecond();
+ Graph<Node> scg = minSCCGResult.getFirst();
+ Node startV = toV(startIndex);
+
+ //for (E e : scg.outgoingEdgesOf(startV)) {
+ // Node Node = myGraph.getEdgeTarget(e);
+ scg.getOut(startV).forEachRemaining(Node -> {
+ myBlocked.remove(Node);
+ getBSet(Node).clear();
+ });
+ findCyclesInSCG(startIndex, startIndex, scg);
+ startIndex++;
+ }
+ else {
+ break;
+ }
+ }
+
+ clearState();
+ }
+
+ private Pair<Graph<Node>, Integer> findMinSCSG(int startIndex) {
+ /*
+ * Per Johnson : "adjacency structure of strong component $K$ with least vertex in subgraph
+ * of $G$ induced by $(s, s + 1, n)$". Or in contemporary terms: the strongly connected
+ * component of the subgraph induced by $(v_1, \dotso ,v_n)$ which contains the minimum
+ * (among those SCCs) vertex index. We return that index together with the graph.
+ */
+ initMinSCGState();
+
+ List<Set<Node>> foundSCCs = findSCCS(startIndex);
+
+ // find the SCC with the minimum index
+ int minIndexFound = Integer.MAX_VALUE;
+ Set<Node> minSCC = null;
+ for (Set<Node> scc : foundSCCs) {
+ for (Node Node : scc) {
+ int t = toI(Node);
+ if (t < minIndexFound) {
+ minIndexFound = t;
+ minSCC = scc;
+ }
+ }
+ }
+ if (minSCC == null) {
+ return null;
+ }
+
+ // build a graph for the SCC found
+ Map<Node, Set<Node>> resultGraph = new HashMap<>();
+
+ for (Node Node : minSCC) {
+ resultGraph.putIfAbsent(Node, new HashSet<>());
+ }
+ for (Node Node : minSCC) {
+ for (Node w : minSCC) {
+ if (containsEdge(myGraph, Node, w)) {
+ resultGraph.get(Node).add(w);
+ }
+ }
+ }
+
+ Pair<Graph<Node>, Integer> result = Pair.create(toGraph(resultGraph), minIndexFound);
+ clearMinSCCState();
+ return result;
+ }
+
+ private @NotNull Graph<Node> toGraph(Map<Node, Set<Node>> resultGraph) {
+ return new Graph<Node>() {
+ @Override
+ public @NotNull Collection<Node> getNodes() {
+ return resultGraph.keySet();
+ }
+
+ @Override
+ public @NotNull Iterator<Node> getIn(Node node) {
+ return Collections.emptyIterator();
+ }
+
+ @Override
+ public @NotNull Iterator<Node> getOut(Node node) {
+ Set<Node> nodes = resultGraph.get(node);
+ return nodes != null ? nodes.iterator() : Collections.emptyIterator();
+ }
+ };
+ }
+
+ private boolean containsEdge(Graph<Node> graph, Node source, Node target) {
+ Iterator<Node> successors = graph.getOut(source);
+ while (successors.hasNext()) {
+ Node successor = successors.next();
+ if (successor.equals(target)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private List<Set<Node>> findSCCS(int startIndex) {
+ // Find SCCs in the subgraph induced
+ // by vertices startIndex and beyond.
+ // A call to StrongConnectivityAlgorithm
+ // would be too expensive because of the
+ // need to materialize the subgraph.
+ // So - do a local search by the Tarjan's
+ // algorithm and pretend that vertices
+ // with an index smaller than startIndex
+ // do not exist.
+ for (Node Node : myGraph.getNodes()) {
+ int vI = toI(Node);
+ if (vI < startIndex) {
+ continue;
+ }
+ if (!myVIndex.containsKey(Node)) {
+ getSCCs(startIndex, vI);
+ }
+ }
+ List<Set<Node>> result = myFoundSCCs;
+ myFoundSCCs = null;
+ return result;
+ }
+
+ private void getSCCs(int startIndex, int vertexIndex) {
+ Node vertex = toV(vertexIndex);
+ myVIndex.put(vertex, myIndex);
+ myVLowlink.put(vertex, myIndex);
+ myIndex++;
+ myPath.push(vertex);
+ myPathSet.add(vertex);
+
+ Set<Node> successors = new HashSet<>();
+ myGraph.getOut(vertex).forEachRemaining(successors::add);
+ for (Node successor : successors) {
+ int successorIndex = toI(successor);
+ if (successorIndex < startIndex) {
+ continue;
+ }
+ if (!myVIndex.containsKey(successor)) {
+ getSCCs(startIndex, successorIndex);
+ myVLowlink.put(vertex, Math.min(myVLowlink.get(vertex), myVLowlink.get(successor)));
+ }
+ else if (myPathSet.contains(successor)) {
+ myVLowlink.put(vertex, Math.min(myVLowlink.get(vertex), myVIndex.get(successor)));
+ }
+ }
+ if (myVLowlink.get(vertex).equals(myVIndex.get(vertex))) {
+ Set<Node> result = new HashSet<>();
+ Node temp;
+ do {
+ temp = myPath.pop();
+ myPathSet.remove(temp);
+ result.add(temp);
+ }
+ while (!vertex.equals(temp));
+ if (result.size() == 1) {
+ Node Node = result.iterator().next();
+ if (successors.contains(Node)) {
+ myFoundSCCs.add(result);
+ }
+ }
+ else {
+ myFoundSCCs.add(result);
+ }
+ }
+ }
+
+ private boolean findCyclesInSCG(int startIndex, int vertexIndex, Graph<Node> scg) {
+ /*
+ * Find cycles in a strongly connected graph per Johnson.
+ */
+ boolean foundCycle = false;
+ Node vertex = toV(vertexIndex);
+ myStack.push(vertex);
+ myBlocked.add(vertex);
+
+ Set<Node> successors = new HashSet<>();
+ scg.getOut(vertex).forEachRemaining(successors::add);
+ for (Node successor : successors) {
+ int successorIndex = toI(successor);
+ if (successorIndex == startIndex) {
+ List<Node> cycle = new ArrayList<>(myStack.size());
+ myStack.descendingIterator().forEachRemaining(cycle::add);
+ myCycleConsumer.accept(cycle);
+ foundCycle = true;
+ }
+ else if (!myBlocked.contains(successor)) {
+ boolean gotCycle = findCyclesInSCG(startIndex, successorIndex, scg);
+ foundCycle = foundCycle || gotCycle;
+ }
+ }
+ if (foundCycle) {
+ unblock(vertex);
+ }
+ else {
+ for (Node w : successors) {
+ Set<Node> bSet = getBSet(w);
+ bSet.add(vertex);
+ }
+ }
+ myStack.pop();
+ return foundCycle;
+ }
+
+ private void unblock(@NotNull Node vertex) {
+ myBlocked.remove(vertex);
+ Set<Node> bSet = getBSet(vertex);
+ while (bSet.size() > 0) {
+ Node w = bSet.iterator().next();
+ bSet.remove(w);
+ if (myBlocked.contains(w)) {
+ unblock(w);
+ }
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ private void initState(@NotNull Consumer<List<Node>> consumer) {
+ myCycleConsumer = consumer;
+ myIToV = (Node[])myGraph.getNodes().toArray();
+ myVToI = new HashMap<>();
+ myBlocked = new HashSet<>();
+ myBSets = new HashMap<>();
+ myStack = new ArrayDeque<>();
+
+ for (int i = 0; i < myIToV.length; i++) {
+ myVToI.put(myIToV[i], i);
+ }
+ }
+
+ private void clearState() {
+ myCycleConsumer = null;
+ myIToV = null;
+ myVToI = null;
+ myBlocked = null;
+ myBSets = null;
+ myStack = null;
+ }
+
+ private void initMinSCGState() {
+ myIndex = 0;
+ myFoundSCCs = new ArrayList<>();
+ myVIndex = new HashMap<>();
+ myVLowlink = new HashMap<>();
+ myPath = new ArrayDeque<>();
+ myPathSet = new HashSet<>();
+ }
+
+ private void clearMinSCCState() {
+ myIndex = 0;
+ myFoundSCCs = null;
+ myVIndex = null;
+ myVLowlink = null;
+ myPath = null;
+ myPathSet = null;
+ }
+
+ private @NotNull Integer toI(@NotNull Node vertex) {
+ return myVToI.get(vertex);
+ }
+
+ private @NotNull Node toV(@NotNull Integer i) {
+ return myIToV[i];
+ }
+
+ private @NotNull Set<Node> getBSet(@NotNull Node Node) {
+ // B sets typically not all needed,
+ // so instantiate lazily.
+ return myBSets.computeIfAbsent(Node, k -> new HashSet<>());
+ }
+}
diff --git a/platform/diff-api/resources/messages/DiffBundle.properties b/platform/diff-api/resources/messages/DiffBundle.properties
index e15e278c9dac..173bc8b811c4 100644
--- a/platform/diff-api/resources/messages/DiffBundle.properties
+++ b/platform/diff-api/resources/messages/DiffBundle.properties
@@ -28,8 +28,7 @@ diff.inactive.count.differences.status.text=({0} inactive)
diff.all.differences.ignored.text=Differences ignored
diff.highlighting.disabled.text=Differences highlighting is off
error.cant.show.diff.message=Error: Cannot show diff
-select.external.diff.program.dialog.title=Select External Diff Program
-select.external.merge.program.dialog.title=Select External Merge Program
+select.external.program.dialog.title=Select External Program
diff.cant.calculate.diff=Can not calculate diff
diff.contents.are.identical.message.text=Contents are identical
error.files.too.large.to.compare.text=Files are too large to compare
@@ -94,14 +93,8 @@ settings.merge.text=Merge
settings.automatically.apply.non.conflicting.changes=Automatically apply non-conflicting changes
settings.highlight.modified.lines.in.gutter=Highlight modified lines in gutter
settings.external.diff.enable.external.tools=Enable external tools
-settings.external.diff.path.to.executable=Path to executable:
-settings.external.diff.parameters=Parameters:
-settings.external.diff.use.by.default=Use by default
settings.external.diff.test.diff=Test Diff
settings.external.diff.test.three.side.diff=Test Three-Side Diff
-settings.external.diff.enable.external.merge.tool=Enable external merge tool
-settings.external.diff.path.to.executable.merge=Path to executable:
-settings.external.diff.parameters.merge=Parameters:
settings.external.diff.trust.process.exit.code=Trust process exit code
settings.external.diff.test.merge=Test Merge
settings.external.diff.left.file.content=Left file content
@@ -118,25 +111,18 @@ settings.external.tools.parameters.description=Different tools have different pa
settings.external.tools.parameters.diff=<b>%1</b> - left (Local changes)<br><b>%2</b> - right (Server content)<br><b>%3</b> - base (Current version without local changes)
settings.external.tools.parameters.merge=<b>%1</b> - left (Local changes)<br><b>%2</b> - right (Server content)<br><b>%3</b> - base (Current version without local changes)<br><b>%4</b> - output (Merge result)
-settings.external.diff.table.default.tool.name=Default
-settings.external.diff.table.default.tool.builtin=Built-in
-settings.external.diff.table.filetype.column=File type
-settings.external.diff.table.difftool.column=External diff tool
-settings.external.diff.table.mergetool.column=External merge tool
-settings.external.diff.table.add.dialog.title=Configure external diff with file type
-settings.external.diff.table.add.dialog.filetype=File type:
-settings.external.diff.table.add.dialog.difftool=External diff tool:
-settings.external.diff.table.add.dialog.mergetool=External merge tool:
-settings.external.diff.table.remove.dialog.title=Remove external diff tool
+settings.external.diff.table.filetype.column=File Type
+settings.external.diff.table.difftool.column=Diff Tool
+settings.external.diff.table.mergetool.column=Merge Tool
+settings.external.diff.table.remove.dialog.title=Remove External Diff Tool
settings.external.diff.table.remove.dialog.message=Are you sure you want to delete the entry?
-settings.external.diff.table.validation.empty=Tool must be selected
-settings.external.diff.table.validation.filetype.registered=FileType already registered
-settings.external.tool.tree.remove.group.warning.title=Unable to delete a tool group
+settings.external.tool.tree.remove.group.warning.title=Unable to Delete a Tool Group
settings.external.tool.tree.remove.group.warning.message=Select the tool to be removed
-settings.external.tool.tree.remove.warning.title=Unable to delete selected tool
+settings.external.tool.tree.remove.warning.title=Unable to Delete Selected Tool
settings.external.tool.tree.remove.warning.message=This tool is used in configuration. First remove the configuration in table
-settings.external.tool.tree.add.dialog.title=Add an external tool
+settings.external.tool.tree.add.dialog.title=Add An External Tool
+settings.external.tool.tree.edit.dialog.title=Edit An External Tool
settings.external.tool.tree.add.dialog.field.group=Tool group
settings.external.tool.tree.add.dialog.field.tool.name=Tool name
settings.external.tool.tree.add.dialog.field.program.path=Program path
diff --git a/platform/diff-impl/src/com/intellij/diff/settings/ExternalDiffSettingsPanel.kt b/platform/diff-impl/src/com/intellij/diff/settings/ExternalDiffSettingsPanel.kt
index ba2da5eec95d..192878d487b1 100644
--- a/platform/diff-impl/src/com/intellij/diff/settings/ExternalDiffSettingsPanel.kt
+++ b/platform/diff-impl/src/com/intellij/diff/settings/ExternalDiffSettingsPanel.kt
@@ -19,8 +19,10 @@ import com.intellij.diff.tools.external.ExternalDiffSettings
import com.intellij.openapi.diff.DiffBundle
import com.intellij.openapi.ui.DialogPanel
import com.intellij.ui.components.JBCheckBox
-import com.intellij.ui.dsl.builder.*
+import com.intellij.ui.dsl.builder.BottomGap
import com.intellij.ui.dsl.builder.Cell
+import com.intellij.ui.dsl.builder.LabelPosition
+import com.intellij.ui.dsl.builder.bindSelected
import com.intellij.ui.dsl.builder.panel
import com.intellij.ui.dsl.gridLayout.HorizontalAlign
import com.intellij.ui.layout.*
@@ -39,18 +41,17 @@ class ExternalDiffSettingsPanel {
.bindSelected(settings::isExternalToolsEnabled)
}
- val externalToolsTablePanel = ExternalToolsTablePanel()
+ val models = ExternalToolsModels()
+ val externalToolsTablePanel = ExternalToolsTablePanel(models)
indent {
row {
- val treePanel = ExternalToolsTreePanel(externalToolsTablePanel.model)
+ val treePanel = ExternalToolsTreePanel(models)
cell(treePanel.component)
.label(DiffBundle.message("settings.external.diff.panel.tree.title"), LabelPosition.TOP)
.horizontalAlign(HorizontalAlign.FILL)
- .bind(
- { treePanel.getData() },
- { _, value -> treePanel.updateData(value) },
- settings::externalTools.toMutableProperty()
- )
+ .onIsModified { treePanel.onModified(settings) }
+ .onApply { treePanel.onApply(settings) }
+ .onReset { treePanel.onReset(settings) }
}.bottomGap(BottomGap.MEDIUM)
row {
diff --git a/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsModels.kt b/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsModels.kt
new file mode 100644
index 000000000000..40949c87a32a
--- /dev/null
+++ b/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsModels.kt
@@ -0,0 +1,23 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.diff.settings
+
+import com.intellij.diff.tools.external.ExternalDiffSettings.ExternalToolConfiguration
+import com.intellij.diff.tools.external.ExternalDiffSettings.ExternalToolGroup
+import com.intellij.openapi.diff.DiffBundle
+import com.intellij.ui.CheckedTreeNode
+import com.intellij.util.ui.ListTableModel
+import javax.swing.tree.DefaultTreeModel
+
+internal class ExternalToolsModels {
+ val treeModel = DefaultTreeModel(CheckedTreeNode())
+
+ val tableModel = ListTableModel<ExternalToolConfiguration>(
+ ExternalToolsTablePanel.FileTypeColumn(this),
+ ExternalToolsTablePanel.ExternalToolColumn(ExternalToolGroup.DIFF_TOOL,
+ treeModel,
+ DiffBundle.message("settings.external.diff.table.difftool.column")),
+ ExternalToolsTablePanel.ExternalToolColumn(ExternalToolGroup.MERGE_TOOL,
+ treeModel,
+ DiffBundle.message("settings.external.diff.table.mergetool.column"))
+ )
+} \ No newline at end of file
diff --git a/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTablePanel.kt b/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTablePanel.kt
index 4975a2e45ef2..06ca2297102b 100644
--- a/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTablePanel.kt
+++ b/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTablePanel.kt
@@ -2,55 +2,45 @@
package com.intellij.diff.settings
import com.intellij.diff.tools.external.ExternalDiffSettings
-import com.intellij.diff.tools.external.ExternalDiffSettings.ExternalToolConfiguration
+import com.intellij.diff.tools.external.ExternalDiffSettings.*
import com.intellij.openapi.diff.DiffBundle
import com.intellij.openapi.fileTypes.FileTypeManager
-import com.intellij.openapi.ui.ComboBox
-import com.intellij.openapi.ui.DialogWrapper
+import com.intellij.openapi.ui.ComboBoxTableRenderer
import com.intellij.openapi.ui.MessageDialogBuilder
-import com.intellij.openapi.ui.ValidationInfo
-import com.intellij.ui.ColoredListCellRenderer
-import com.intellij.ui.ColoredTableCellRenderer
+import com.intellij.openapi.util.NlsContexts
+import com.intellij.ui.CheckedTreeNode
+import com.intellij.ui.SimpleColoredComponent
import com.intellij.ui.SimpleTextAttributes
import com.intellij.ui.ToolbarDecorator
-import com.intellij.ui.dsl.builder.Row
-import com.intellij.ui.dsl.builder.panel
-import com.intellij.ui.dsl.gridLayout.HorizontalAlign
import com.intellij.ui.table.TableView
import com.intellij.util.ui.ColumnInfo
-import com.intellij.util.ui.JBUI
import com.intellij.util.ui.ListTableModel
import com.intellij.util.ui.components.BorderLayoutPanel
-import java.awt.event.MouseAdapter
-import java.awt.event.MouseEvent
+import java.awt.Component
+import javax.swing.Icon
import javax.swing.JComponent
-import javax.swing.JList
import javax.swing.JTable
+import javax.swing.table.TableCellEditor
import javax.swing.table.TableCellRenderer
+import javax.swing.tree.DefaultMutableTreeNode
+import javax.swing.tree.DefaultTreeModel
-internal class ExternalToolsTablePanel : BorderLayoutPanel() {
- private val columnInfos = arrayOf(FileTypeColumn(), ExternalDiffToolColumn(), ExternalMergeToolColumn())
-
- val model: ListTableModel<ExternalToolConfiguration> = ListTableModel<ExternalToolConfiguration>(columnInfos, mutableListOf(), 0)
+internal class ExternalToolsTablePanel(private val models: ExternalToolsModels) : BorderLayoutPanel() {
+ val component: JComponent
+ private val model: ListTableModel<ExternalToolConfiguration> = models.tableModel
private val table: TableView<ExternalToolConfiguration> = TableView(model).apply {
visibleRowCount = 8
- addMouseListener(object : MouseAdapter() {
- override fun mousePressed(mouseEvent: MouseEvent) {
- if (mouseEvent.clickCount == 2 && selectedRow != -1) {
- editData()
- }
- }
- })
- }
+ rowSelectionAllowed = false
+ tableHeader.reorderingAllowed = false
- val component: JComponent
+ setExpandableItemsEnabled(false)
+ }
init {
val toolbarTable = ToolbarDecorator.createDecorator(table)
.setAddAction { addData() }
.setRemoveAction { removeData() }
- .setEditAction { editData() }
.disableUpDownActions()
.createPanel()
@@ -79,15 +69,16 @@ internal class ExternalToolsTablePanel : BorderLayoutPanel() {
fun onReset(settings: ExternalDiffSettings) {
repeat(model.items.size) { model.removeRow(0) }
- model.addRow(settings.defaultToolConfiguration)
- model.addRows(settings.externalToolsConfiguration)
+ model.addRow(settings.defaultToolConfiguration.copy())
+ model.addRows(settings.externalToolsConfiguration.map { it.copy() })
}
private fun addData() {
- val dialog = AddToolConfigurationDialog()
- if (dialog.showAndGet()) {
- model.addRow(dialog.createExternalToolConfiguration())
- }
+ val fileTypes = FileTypeManager.getInstance().registeredFileTypes.map { it.displayName }.toSet()
+ val configuredFileTypes = models.tableModel.items.map { it.fileTypeName }.toSet()
+ val availableFileTypes = fileTypes - configuredFileTypes
+
+ model.addRow(ExternalToolConfiguration(availableFileTypes.first()))
}
private fun removeData() {
@@ -102,212 +93,101 @@ internal class ExternalToolsTablePanel : BorderLayoutPanel() {
}
}
- private fun editData() {
- val selectedRow = table.selectedRow
- val selectedToolConfiguration = model.getItem(selectedRow)
- val dialog = AddToolConfigurationDialog(selectedToolConfiguration)
-
- if (dialog.showAndGet()) {
- val toolConfiguration = dialog.createExternalToolConfiguration()
-
- model.removeRow(selectedRow)
- model.insertRow(selectedRow, toolConfiguration)
- }
- }
-
- private class FileTypeColumn : ColumnInfo<ExternalToolConfiguration, String>(
+ class FileTypeColumn(private val models: ExternalToolsModels) : ColumnInfo<ExternalToolConfiguration, String>(
DiffBundle.message("settings.external.diff.table.filetype.column")
) {
- override fun valueOf(externalToolConfiguration: ExternalToolConfiguration): String {
- return externalToolConfiguration.fileTypeName
- }
+ private val fileTypes = FileTypeManager.getInstance().registeredFileTypes.map { it.displayName }.toSet()
- override fun getRenderer(item: ExternalToolConfiguration): TableCellRenderer {
- return object : ColoredTableCellRenderer() {
- override fun customizeCellRenderer(table: JTable, value: Any?, selected: Boolean, hasFocus: Boolean, row: Int, column: Int) {
- if (item.fileTypeName == ExternalToolConfiguration.DEFAULT_TOOL_NAME) {
- append(DiffBundle.message("settings.external.diff.table.default.tool.name"), SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES)
- return
- }
-
- val fileTypeManager = FileTypeManager.getInstance()
- val fileType = fileTypeManager.findFileTypeByName(item.fileTypeName)
-
- icon = fileType.icon
- append(fileType.description)
- }
- }
- }
- }
-
- private class ExternalDiffToolColumn : ColumnInfo<ExternalToolConfiguration, String>(
- DiffBundle.message("settings.external.diff.table.difftool.column")
- ) {
- override fun valueOf(externalToolConfiguration: ExternalToolConfiguration): String {
- return externalToolConfiguration.diffToolName
- }
-
- override fun getRenderer(item: ExternalToolConfiguration): TableCellRenderer {
- return ToolCellRenderer(item.diffToolName)
- }
- }
-
- private class ExternalMergeToolColumn : ColumnInfo<ExternalToolConfiguration, String>(
- DiffBundle.message("settings.external.diff.table.mergetool.column")
- ) {
override fun valueOf(externalToolConfiguration: ExternalToolConfiguration): String {
- return externalToolConfiguration.mergeToolName
+ return externalToolConfiguration.fileTypeName
}
- override fun getRenderer(item: ExternalToolConfiguration): TableCellRenderer {
- return ToolCellRenderer(item.mergeToolName)
+ override fun setValue(item: ExternalToolConfiguration, value: String) {
+ item.fileTypeName = value
}
- }
- private class ToolCellRenderer(private val toolName: String) : ColoredTableCellRenderer() {
- override fun customizeCellRenderer(table: JTable, value: Any?, selected: Boolean, hasFocus: Boolean, row: Int, column: Int) {
- if (toolName == ExternalToolConfiguration.BUILTIN_TOOL) {
- append(DiffBundle.message("settings.external.diff.table.default.tool.builtin"), SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES)
- return
- }
+ override fun getEditor(item: ExternalToolConfiguration): TableCellEditor = createComboBoxRendererAndEditor()
- append(toolName) // NON-NLS
- }
- }
+ override fun getRenderer(item: ExternalToolConfiguration): TableCellRenderer = createComboBoxRendererAndEditor()
- private inner class AddToolConfigurationDialog(private val oldFileType: String? = null) : DialogWrapper(null) {
- private val fileTypeManager = FileTypeManager.getInstance()
- private val fileTypes = fileTypeManager.registeredFileTypes.map { it.name }.toList()
+ override fun isCellEditable(item: ExternalToolConfiguration): Boolean = true
- private val builtinTool = ExternalDiffSettings.ExternalTool(ExternalToolConfiguration.BUILTIN_TOOL)
- private val tools = ExternalDiffSettings.instance.externalTools
- private val externalDiffTools = mutableListOf(builtinTool).apply {
- tools[ExternalDiffSettings.ExternalToolGroup.DIFF_TOOL]?.let { addAll(it) }
- }
- private val externalMergeTools = mutableListOf(builtinTool).apply {
- tools[ExternalDiffSettings.ExternalToolGroup.MERGE_TOOL]?.let { addAll(it) }
- }
+ private fun createComboBoxRendererAndEditor(): ComboBoxTableRenderer<String> {
+ val configuredFileTypes = models.tableModel.items.map { it.fileTypeName }.toSet()
+ val availableFileTypes = fileTypes - configuredFileTypes
- private val fileTypeField = ComboBox(fileTypes.toTypedArray()).apply {
- renderer = FileTypeCellRenderer()
- }
- private val diffToolField = ComboBox(externalDiffTools.toTypedArray()).apply {
- renderer = ExternalToolCellRenderer()
- }
- private val mergeToolField = ComboBox(externalMergeTools.toTypedArray()).apply {
- renderer = ExternalToolCellRenderer()
+ return FileTypeCellComboBox(availableFileTypes.toTypedArray()).withClickCount(1)
}
- private lateinit var fileTypeRow: Row
+ private class FileTypeCellComboBox(values: Array<String>) : ComboBoxTableRenderer<String>(values) {
+ private val fileTypeManager = FileTypeManager.getInstance()
- constructor(externalToolConfiguration: ExternalToolConfiguration) : this(externalToolConfiguration.fileTypeName) {
- if (externalToolConfiguration.fileTypeName == ExternalToolConfiguration.DEFAULT_TOOL_NAME) {
- customizeWithDefaultTool(externalToolConfiguration)
- return
- }
-
- fileTypeField.selectedItem = externalToolConfiguration.fileTypeName // NON-NLS
- diffToolField.selectedItem = externalDiffTools.find { it.name == externalToolConfiguration.diffToolName }
- mergeToolField.selectedItem = externalMergeTools.find { it.name == externalToolConfiguration.mergeToolName }
- }
+ override fun getTableCellRendererComponent(table: JTable, value: Any,
+ isSelected: Boolean, hasFocus: Boolean,
+ row: Int, column: Int): Component {
+ if ((value as String) == ExternalToolConfiguration.DEFAULT_TOOL_NAME) {
+ return SimpleColoredComponent().apply {
+ append(value, SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES) // NON-NLS
+ }
+ }
- init {
- JBUI.size(400, 200).let {
- rootPane.minimumSize = it
- rootPane.preferredSize = it
+ return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column)
}
- title = DiffBundle.message("settings.external.diff.table.add.dialog.title")
- init()
- }
+ override fun getTableCellEditorComponent(table: JTable, value: Any, isSelected: Boolean, row: Int, column: Int): Component? {
+ if ((value as String) == ExternalToolConfiguration.DEFAULT_TOOL_NAME) {
+ return null
+ }
- override fun createCenterPanel(): JComponent = panel {
- fileTypeRow = row(DiffBundle.message("settings.external.diff.table.add.dialog.filetype")) {
- cell(fileTypeField).horizontalAlign(HorizontalAlign.FILL).validationOnApply { fileTypeValidation(it.item) }
- }
- row(DiffBundle.message("settings.external.diff.table.add.dialog.difftool")) {
- cell(diffToolField).horizontalAlign(HorizontalAlign.FILL).validationOnApply { comboBoxValidation(it.item) }
+ return super.getTableCellEditorComponent(table, value, isSelected, row, column)
}
- row(DiffBundle.message("settings.external.diff.table.add.dialog.mergetool")) {
- cell(mergeToolField).horizontalAlign(HorizontalAlign.FILL).validationOnApply { comboBoxValidation(it.item) }
- }
- }
-
- fun createExternalToolConfiguration(): ExternalToolConfiguration = ExternalToolConfiguration(fileTypeField.item,
- diffToolField.item.name,
- mergeToolField.item.name)
-
- private fun customizeWithDefaultTool(externalToolConfiguration: ExternalToolConfiguration) {
- fileTypeField.removeAllItems()
- fileTypeField.addItem(ExternalToolConfiguration.DEFAULT_TOOL_NAME) // NON-NLS
- fileTypeField.item = ExternalToolConfiguration.DEFAULT_TOOL_NAME // NON-NLS
- diffToolField.selectedItem = getExternalToolOrDefault(externalToolConfiguration.diffToolName, externalDiffTools)
- mergeToolField.selectedItem = getExternalToolOrDefault(externalToolConfiguration.mergeToolName, externalMergeTools)
-
- fileTypeRow.visible(false)
+ override fun getIconFor(value: String): Icon? = fileTypeManager.findFileTypeByName(value)?.icon
}
+ }
- private fun fileTypeValidation(fileTypeName: String): ValidationInfo? {
- model.fireTableDataChanged()
- if (model.items.any { it.fileTypeName == fileTypeName } && fileTypeName != oldFileType) {
- return ValidationInfo(DiffBundle.message("settings.external.diff.table.validation.filetype.registered"))
- }
-
- return null
+ class ExternalToolColumn(
+ private val externalToolGroup: ExternalToolGroup,
+ private val treeModel: DefaultTreeModel,
+ @NlsContexts.ColumnName columnMessage: String
+ ) : ColumnInfo<ExternalToolConfiguration, String>(columnMessage) {
+ override fun valueOf(externalToolConfiguration: ExternalToolConfiguration): String = when (externalToolGroup) {
+ ExternalToolGroup.DIFF_TOOL -> externalToolConfiguration.diffToolName
+ ExternalToolGroup.MERGE_TOOL -> externalToolConfiguration.mergeToolName
}
- private fun comboBoxValidation(externalTool: ExternalDiffSettings.ExternalTool?): ValidationInfo? {
- if (externalTool == null) {
- return ValidationInfo(DiffBundle.message("settings.external.diff.table.validation.empty"))
+ override fun setValue(item: ExternalToolConfiguration, value: String) {
+ when (externalToolGroup) {
+ ExternalToolGroup.DIFF_TOOL -> item.diffToolName = value
+ ExternalToolGroup.MERGE_TOOL -> item.mergeToolName = value
}
-
- return null
}
- private fun getExternalToolOrDefault(toolName: String,
- tools: List<ExternalDiffSettings.ExternalTool>): ExternalDiffSettings.ExternalTool? {
- return if (toolName == ExternalToolConfiguration.BUILTIN_TOOL) builtinTool
- else tools.find { tool -> tool.name == toolName }
- }
+ override fun getRenderer(item: ExternalToolConfiguration): TableCellRenderer = createComboBoxRendererAndEditor()
- private inner class FileTypeCellRenderer : ColoredListCellRenderer<String>() {
- override fun customizeCellRenderer(list: JList<out String>,
- value: String,
- index: Int,
- selected: Boolean,
- hasFocus: Boolean) {
- if (value == ExternalToolConfiguration.DEFAULT_TOOL_NAME) {
- append(DiffBundle.message("settings.external.diff.table.default.tool.name"), SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES)
- return
- }
+ override fun getEditor(item: ExternalToolConfiguration): TableCellEditor = createComboBoxRendererAndEditor()
- val fileType = fileTypeManager.findFileTypeByName(value)
- if (fileType == null) return
+ override fun isCellEditable(item: ExternalToolConfiguration): Boolean = true
- icon = fileType.icon
- append(fileType.description)
- }
+ private fun createComboBoxRendererAndEditor(): ComboBoxTableRenderer<String> {
+ val values = treeModel.collectTools(externalToolGroup).toTypedArray()
+ return ComboBoxTableRenderer(values).withClickCount(1)
}
- private inner class ExternalToolCellRenderer : ColoredListCellRenderer<ExternalDiffSettings.ExternalTool>() {
- override fun customizeCellRenderer(list: JList<out ExternalDiffSettings.ExternalTool>,
- value: ExternalDiffSettings.ExternalTool?,
- index: Int,
- selected: Boolean,
- hasFocus: Boolean) {
- if (value == null) {
- append("")
- return
+ private fun DefaultTreeModel.collectTools(externalToolGroup: ExternalToolGroup): List<String> {
+ val tools = mutableListOf(ExternalToolConfiguration.BUILTIN_TOOL)
+ for (child in (root as CheckedTreeNode).children()) {
+ val treeNode = child as DefaultMutableTreeNode
+ if (treeNode.userObject as ExternalToolGroup == externalToolGroup) {
+ tools.addAll(treeNode.children().asSequence().map {
+ val node = it as DefaultMutableTreeNode
+ val tool = node.userObject as ExternalTool
+ tool.name
+ }.toList())
}
-
- if (value.name == ExternalToolConfiguration.BUILTIN_TOOL) {
- append(DiffBundle.message("settings.external.diff.table.default.tool.builtin"), SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES)
- return
- }
-
- append(value.name) // NON-NLS
}
+
+ return tools
}
}
} \ No newline at end of file
diff --git a/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTreePanel.kt b/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTreePanel.kt
index 492c831e4f01..f8ac861a6e49 100644
--- a/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTreePanel.kt
+++ b/platform/diff-impl/src/com/intellij/diff/settings/ExternalToolsTreePanel.kt
@@ -6,7 +6,10 @@ import com.intellij.diff.DiffRequestFactory
import com.intellij.diff.merge.MergeResult
import com.intellij.diff.merge.ThreesideMergeRequest
import com.intellij.diff.tools.external.ExternalDiffSettings
+import com.intellij.diff.tools.external.ExternalDiffSettings.ExternalTool
+import com.intellij.diff.tools.external.ExternalDiffSettings.ExternalToolGroup
import com.intellij.diff.tools.external.ExternalDiffToolUtil
+import com.intellij.ide.util.treeView.TreeState
import com.intellij.openapi.diff.DiffBundle
import com.intellij.openapi.editor.impl.DocumentImpl
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory
@@ -14,57 +17,71 @@ import com.intellij.openapi.fileTypes.FileTypes
import com.intellij.openapi.fileTypes.PlainTextFileType
import com.intellij.openapi.ui.*
import com.intellij.openapi.util.text.StringUtil
-import com.intellij.ui.CheckboxTree
-import com.intellij.ui.CheckedTreeNode
import com.intellij.ui.ColoredListCellRenderer
+import com.intellij.ui.SimpleColoredComponent
+import com.intellij.ui.SmartExpander
import com.intellij.ui.ToolbarDecorator
import com.intellij.ui.components.JBCheckBox
import com.intellij.ui.components.JBTextField
-import com.intellij.ui.dsl.builder.MAX_LINE_LENGTH_WORD_WRAP
+import com.intellij.ui.dsl.builder.DEFAULT_COMMENT_WIDTH
import com.intellij.ui.dsl.builder.TopGap
import com.intellij.ui.dsl.builder.components.DslLabel
import com.intellij.ui.dsl.builder.components.DslLabelType
import com.intellij.ui.dsl.builder.panel
import com.intellij.ui.dsl.gridLayout.HorizontalAlign
import com.intellij.ui.layout.*
-import com.intellij.util.ui.JBUI
+import com.intellij.ui.treeStructure.Tree
+import com.intellij.util.PathUtilRt
import com.intellij.util.ui.ListTableModel
import com.intellij.util.ui.components.BorderLayoutPanel
import com.intellij.util.ui.tree.TreeUtil
+import java.awt.Component
import java.awt.event.MouseAdapter
import java.awt.event.MouseEvent
-import javax.swing.JButton
-import javax.swing.JComponent
-import javax.swing.JList
-import javax.swing.JTree
+import javax.swing.*
import javax.swing.event.DocumentEvent
import javax.swing.event.DocumentListener
+import javax.swing.event.TreeExpansionEvent
+import javax.swing.event.TreeExpansionListener
import javax.swing.tree.DefaultMutableTreeNode
import javax.swing.tree.DefaultTreeModel
+import javax.swing.tree.TreeCellRenderer
import javax.swing.tree.TreePath
-internal class ExternalToolsTreePanel(
- private val tableModel: ListTableModel<ExternalDiffSettings.ExternalToolConfiguration>
-) : BorderLayoutPanel() {
- private val root = CheckedTreeNode()
- private val treeModel = DefaultTreeModel(root)
- private val tree = CheckboxTree(ExternalToolsTreeCellRenderer(), root).apply {
+internal class ExternalToolsTreePanel(private val models: ExternalToolsModels) : BorderLayoutPanel() {
+ private var treeState: TreeState
+ private val treeModel = models.treeModel
+ private val root = treeModel.root as DefaultMutableTreeNode
+ private val tree = Tree(treeModel).apply {
visibleRowCount = 8
- model = treeModel
+ isRootVisible = false
+ cellRenderer = ExternalToolsTreeCellRenderer()
+ treeState = TreeState.createOn(this)
+
addMouseListener(object : MouseAdapter() {
override fun mousePressed(mouseEvent: MouseEvent) {
- if (mouseEvent.clickCount == 2 && selectionPath != null) {
- when ((selectionPath.lastPathComponent as DefaultMutableTreeNode).userObject) {
- is ExternalDiffSettings.ExternalToolGroup -> {
- if (isExpanded(selectionPath)) collapsePath(selectionPath)
- else expandPath(selectionPath)
- }
- is ExternalDiffSettings.ExternalTool -> editData()
+ val treePath = selectionPath ?: return
+ if (mouseEvent.clickCount == 2 && SwingUtilities.isLeftMouseButton(mouseEvent)) {
+ mouseEvent.consume()
+ val node = treePath.lastPathComponent as DefaultMutableTreeNode
+ when (node.userObject) {
+ is ExternalTool -> editData()
else -> {}
}
}
}
})
+ addTreeExpansionListener(object : TreeExpansionListener {
+ override fun treeExpanded(event: TreeExpansionEvent) {
+ treeState = TreeState.createOn(this@apply)
+ }
+
+ override fun treeCollapsed(event: TreeExpansionEvent) {
+ treeState = TreeState.createOn(this@apply)
+ }
+ })
+
+ SmartExpander.installOn(this)
}
val component: JComponent
@@ -72,7 +89,9 @@ internal class ExternalToolsTreePanel(
init {
val decoratedTree = ToolbarDecorator.createDecorator(tree)
.setAddAction { addTool() }
+ .setRemoveActionUpdater { isExternalToolSelected(tree.selectionPath) }
.setRemoveAction { removeData() }
+ .setEditActionUpdater { isExternalToolSelected(tree.selectionPath) }
.setEditAction { editData() }
.disableUpDownActions()
.createPanel()
@@ -80,36 +99,16 @@ internal class ExternalToolsTreePanel(
component = decoratedTree
}
- fun getData(): MutableMap<ExternalDiffSettings.ExternalToolGroup, List<ExternalDiffSettings.ExternalTool>> {
- val data = mutableMapOf<ExternalDiffSettings.ExternalToolGroup, List<ExternalDiffSettings.ExternalTool>>()
-
- for (group in root.children()) {
- val groupNode = group as DefaultMutableTreeNode
-
- val tools = mutableListOf<ExternalDiffSettings.ExternalTool>()
- for (child in group.children()) {
- val childNode = child as DefaultMutableTreeNode
- val tool = childNode.userObject as ExternalDiffSettings.ExternalTool
- tools.add(tool)
- }
-
- data[groupNode.userObject as ExternalDiffSettings.ExternalToolGroup] = tools
- }
+ fun onModified(settings: ExternalDiffSettings): Boolean = treeModel.toMap() != settings.externalTools
- return data
+ fun onApply(settings: ExternalDiffSettings) {
+ settings.externalTools = treeModel.toMap()
+ treeState = TreeState.createOn(tree)
}
- fun updateData(value: Map<ExternalDiffSettings.ExternalToolGroup, List<ExternalDiffSettings.ExternalTool>>) {
- root.removeAllChildren()
-
- value.toSortedMap().forEach { (group, tools) ->
- val groupNode = DefaultMutableTreeNode(group)
- tools.forEach { groupNode.add(DefaultMutableTreeNode(it)) }
- treeModel.insertNodeInto(groupNode, root, root.childCount)
- }
-
- treeModel.nodeStructureChanged(root)
- TreeUtil.expandAll(tree)
+ fun onReset(settings: ExternalDiffSettings) {
+ treeModel.update(settings.externalTools)
+ treeState.applyTo(tree)
}
private fun addTool() {
@@ -125,10 +124,10 @@ internal class ExternalToolsTreePanel(
}
}
- private fun findGroupNode(externalToolGroup: ExternalDiffSettings.ExternalToolGroup): DefaultMutableTreeNode {
+ private fun findGroupNode(externalToolGroup: ExternalToolGroup): DefaultMutableTreeNode {
for (child in root.children()) {
val treeNode = child as DefaultMutableTreeNode
- val valueNode = treeNode.userObject as ExternalDiffSettings.ExternalToolGroup
+ val valueNode = treeNode.userObject as ExternalToolGroup
if (valueNode == externalToolGroup) return treeNode
}
@@ -141,14 +140,11 @@ internal class ExternalToolsTreePanel(
private fun removeData() {
val treePath = tree.selectionPath ?: return
val node = treePath.lastPathComponent as DefaultMutableTreeNode
- if (node.userObject !is ExternalDiffSettings.ExternalTool) {
- Messages.showWarningDialog(DiffBundle.message("settings.external.tool.tree.remove.group.warning.message"),
- DiffBundle.message("settings.external.tool.tree.remove.group.warning.title"))
- return
- }
+ val parentNode = treePath.parentPath.lastPathComponent as DefaultMutableTreeNode
+ val toolGroup = parentNode.userObject as ExternalToolGroup
- val externalTool = node.userObject as ExternalDiffSettings.ExternalTool
- if (ExternalDiffSettings.isConfigurationRegistered(externalTool)) {
+ val externalTool = node.userObject as ExternalTool
+ if (isConfigurationRegistered(externalTool, toolGroup)) {
Messages.showWarningDialog(DiffBundle.message("settings.external.tool.tree.remove.warning.message"),
DiffBundle.message("settings.external.tool.tree.remove.warning.title"))
return
@@ -158,57 +154,83 @@ internal class ExternalToolsTreePanel(
DiffBundle.message("settings.external.diff.table.remove.dialog.message"))
if (dialog.guessWindowAndAsk()) {
treeModel.removeNodeFromParent(node)
+ if (parentNode.childCount == 0) {
+ treeModel.removeNodeFromParent(parentNode)
+ }
}
}
private fun editData() {
val treePath = tree.selectionPath ?: return
val node = treePath.lastPathComponent as DefaultMutableTreeNode
- if (node.userObject !is ExternalDiffSettings.ExternalTool) {
+ if (node.userObject !is ExternalTool) {
return
}
- val currentTool = node.userObject as ExternalDiffSettings.ExternalTool
+ val currentTool = node.userObject as ExternalTool
val dialog = AddToolDialog(currentTool)
if (dialog.showAndGet()) {
val editedTool = dialog.createExternalTool()
val groupNode = findGroupNode(dialog.getToolGroup())
- val toolGroup = groupNode.userObject as ExternalDiffSettings.ExternalToolGroup
+ val toolGroup = groupNode.userObject as ExternalToolGroup
node.userObject = editedTool
treeModel.nodeChanged(node)
- tableModel.updateEntities(toolGroup, currentTool, editedTool)
+ models.tableModel.updateEntities(toolGroup, currentTool, editedTool)
}
}
- private class ExternalToolsTreeCellRenderer : CheckboxTree.CheckboxTreeCellRenderer() {
- override fun customizeRenderer(tree: JTree?,
- value: Any?,
- selected: Boolean,
- expanded: Boolean,
- leaf: Boolean,
- row: Int,
- hasFocus: Boolean) {
- val renderer = textRenderer
- val text = when (val item = (value as DefaultMutableTreeNode).userObject) {
- null -> return
- is ExternalDiffSettings.ExternalToolGroup -> item.groupName // NON-NLS
- is ExternalDiffSettings.ExternalTool -> item.name // NON-NLS
- else -> item.toString() // NON-NLS
- }
+ private fun isConfigurationRegistered(externalTool: ExternalTool, externalToolGroup: ExternalToolGroup): Boolean {
+ val configurations = models.tableModel.items
+
+ return when (externalToolGroup) {
+ ExternalToolGroup.DIFF_TOOL -> configurations.any { it.diffToolName == externalTool.name }
+ ExternalToolGroup.MERGE_TOOL -> configurations.any { it.mergeToolName == externalTool.name }
+ }
+ }
+
+ private fun isExternalToolSelected(selectionPath: TreePath?): Boolean {
+ if (selectionPath == null) return false
+
+ val node = selectionPath.lastPathComponent as DefaultMutableTreeNode
+ return when (node.userObject) {
+ is ExternalTool -> true
+ else -> false
+ }
+ }
- renderer.append(text)
+ private class ExternalToolsTreeCellRenderer : TreeCellRenderer {
+ private val renderer = SimpleColoredComponent()
+
+ override fun getTreeCellRendererComponent(tree: JTree, value: Any,
+ selected: Boolean, expanded: Boolean,
+ leaf: Boolean, row: Int, hasFocus: Boolean): Component {
+ return renderer.apply {
+ val node = value as DefaultMutableTreeNode
+ val text = when (val userObject = node.userObject) {
+ null -> "" // Special for root (not visible in tree)
+ is ExternalToolGroup -> userObject.groupName // NON-NLS
+ is ExternalTool -> userObject.name // NON-NLS
+ else -> userObject.toString() // NON-NLS
+ }
+
+ clear()
+ append(text)
+ }
}
}
- private inner class AddToolDialog(private val oldToolName: String? = null) : DialogWrapper(null) {
+ private inner class AddToolDialog(
+ private val oldToolName: String? = null,
+ private val isEditMode: Boolean = false,
+ ) : DialogWrapper(null) {
private val groupField = ComboBox(
- arrayOf(ExternalDiffSettings.ExternalToolGroup.DIFF_TOOL, ExternalDiffSettings.ExternalToolGroup.MERGE_TOOL)
+ arrayOf(ExternalToolGroup.DIFF_TOOL, ExternalToolGroup.MERGE_TOOL)
).apply {
- renderer = object : ColoredListCellRenderer<ExternalDiffSettings.ExternalToolGroup>() {
- override fun customizeCellRenderer(list: JList<out ExternalDiffSettings.ExternalToolGroup>,
- value: ExternalDiffSettings.ExternalToolGroup,
+ renderer = object : ColoredListCellRenderer<ExternalToolGroup>() {
+ override fun customizeCellRenderer(list: JList<out ExternalToolGroup>,
+ value: ExternalToolGroup,
index: Int,
selected: Boolean,
hasFocus: Boolean) {
@@ -229,14 +251,12 @@ internal class ExternalToolsTreePanel(
})
}
private val programPathField = TextFieldWithBrowseButton().apply {
- addBrowseFolderListener(DiffBundle.message("select.external.diff.program.dialog.title"),
- null,
- null,
+ addBrowseFolderListener(DiffBundle.message("select.external.program.dialog.title"), null, null,
FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor())
textField.document.addDocumentListener(object : DocumentListener {
override fun insertUpdate(event: DocumentEvent) {
if (isAutocompleteToolName) {
- val guessToolName = StringUtil.capitalize(text.split("/").last())
+ val guessToolName = StringUtil.capitalize(PathUtilRt.getFileName(text))
toolNameField.text = guessToolName
}
}
@@ -258,24 +278,23 @@ internal class ExternalToolsTreePanel(
addActionListener { showTestMerge() }
}
private val argumentPatternDescription = DslLabel(DslLabelType.COMMENT).apply {
- maxLineLength = MAX_LINE_LENGTH_WORD_WRAP
- text = createDescription(ExternalDiffSettings.ExternalToolGroup.DIFF_TOOL)
+ maxLineLength = DEFAULT_COMMENT_WIDTH
+ text = createDescription(ExternalToolGroup.DIFF_TOOL)
}
- constructor(externalTool: ExternalDiffSettings.ExternalTool) : this(externalTool.name) {
+ constructor(externalTool: ExternalTool) : this(externalTool.name, true) {
+ isAutocompleteToolName = false
+
toolNameField.text = externalTool.name
programPathField.text = externalTool.programPath
argumentPatternField.text = externalTool.argumentPattern
+ isMergeTrustExitCode.isSelected = externalTool.isMergeTrustExitCode
+ groupField.selectedItem = externalTool.groupName
- groupField.isEnabled = false
+ title = DiffBundle.message("settings.external.tool.tree.edit.dialog.title")
}
init {
- JBUI.size(WINDOW_WIDTH, WINDOW_HEIGHT).let {
- rootPane.minimumSize = it
- rootPane.preferredSize = it
- }
-
title = DiffBundle.message("settings.external.tool.tree.add.dialog.title")
init()
@@ -284,7 +303,7 @@ internal class ExternalToolsTreePanel(
override fun createCenterPanel(): JComponent = panel {
row(DiffBundle.message("settings.external.tool.tree.add.dialog.field.group")) {
cell(groupField).horizontalAlign(HorizontalAlign.FILL)
- }
+ }.visible(!isEditMode)
row(DiffBundle.message("settings.external.tool.tree.add.dialog.field.program.path")) {
cell(programPathField).horizontalAlign(HorizontalAlign.FILL)
}
@@ -296,52 +315,50 @@ internal class ExternalToolsTreePanel(
}
row {
cell(isMergeTrustExitCode).horizontalAlign(HorizontalAlign.FILL)
- .enabledIf(object : ComponentPredicate() {
+ .visibleIf(object : ComponentPredicate() {
override fun addListener(listener: (Boolean) -> Unit) {
groupField.addItemListener {
- val isMergeEnabled = invoke()
- testDiffButton.isVisible = !isMergeEnabled
- testThreeSideDiffButton.isVisible = !isMergeEnabled
- testMergeButton.isVisible = isMergeEnabled
+ val isMergeGroup = invoke()
+ testDiffButton.isVisible = !isMergeGroup
+ testThreeSideDiffButton.isVisible = !isMergeGroup
+ testMergeButton.isVisible = isMergeGroup
argumentPatternField.text =
- if (isMergeEnabled) MERGE_TOOL_DEFAULT_ARGUMENT_PATTERN
+ if (isMergeGroup) MERGE_TOOL_DEFAULT_ARGUMENT_PATTERN
else DIFF_TOOL_DEFAULT_ARGUMENT_PATTERN
argumentPatternDescription.text =
- if (isMergeEnabled) createDescription(ExternalDiffSettings.ExternalToolGroup.MERGE_TOOL)
- else createDescription(ExternalDiffSettings.ExternalToolGroup.DIFF_TOOL)
+ if (isMergeGroup) createDescription(ExternalToolGroup.MERGE_TOOL)
+ else createDescription(ExternalToolGroup.DIFF_TOOL)
- listener(isMergeEnabled)
+ listener(isMergeGroup)
}
}
override fun invoke(): Boolean {
- val item = groupField.selectedItem as ExternalDiffSettings.ExternalToolGroup
- return item == ExternalDiffSettings.ExternalToolGroup.MERGE_TOOL
+ val item = groupField.selectedItem as ExternalToolGroup
+ return item == ExternalToolGroup.MERGE_TOOL
}
})
}
row { cell(argumentPatternDescription) }
row {
- val isMergeEnabled = isMergeTrustExitCode.isEnabled
- cell(testDiffButton).visible(!isMergeEnabled)
- cell(testThreeSideDiffButton).visible(!isMergeEnabled)
- cell(testMergeButton).visible(isMergeEnabled)
+ val isMergeGroup = isMergeTrustExitCode.isVisible
+ cell(testDiffButton).visible(!isMergeGroup)
+ cell(testThreeSideDiffButton).visible(!isMergeGroup)
+ cell(testMergeButton).visible(isMergeGroup)
}.topGap(TopGap.MEDIUM)
}
- fun createExternalTool(): ExternalDiffSettings.ExternalTool = ExternalDiffSettings.ExternalTool(
- toolNameField.text,
- programPathField.text,
- argumentPatternField.text,
- isMergeTrustExitCode.isEnabled && isMergeTrustExitCode.isSelected,
- groupField.item
- )
+ fun createExternalTool(): ExternalTool = ExternalTool(toolNameField.text,
+ programPathField.text,
+ argumentPatternField.text,
+ isMergeTrustExitCode.isVisible && isMergeTrustExitCode.isSelected,
+ groupField.item)
- fun getToolGroup(): ExternalDiffSettings.ExternalToolGroup = groupField.item
+ fun getToolGroup(): ExternalToolGroup = groupField.item
- private fun toolFieldValidation(toolGroup: ExternalDiffSettings.ExternalToolGroup, toolName: String): ValidationInfo? {
+ private fun toolFieldValidation(toolGroup: ExternalToolGroup, toolName: String): ValidationInfo? {
if (toolName.isEmpty()) {
return ValidationInfo(DiffBundle.message("settings.external.tool.tree.validation.empty"))
}
@@ -353,10 +370,10 @@ internal class ExternalToolsTreePanel(
return null
}
- private fun isToolAlreadyExist(toolGroup: ExternalDiffSettings.ExternalToolGroup, toolName: String): Boolean {
+ private fun isToolAlreadyExist(toolGroup: ExternalToolGroup, toolName: String): Boolean {
val isNodeExist = TreeUtil.findNode(findGroupNode(toolGroup)) { node ->
when (val externalTool = node.userObject) {
- is ExternalDiffSettings.ExternalTool -> externalTool.name == toolName
+ is ExternalTool -> externalTool.name == toolName
else -> false // skip root
}
}
@@ -364,11 +381,11 @@ internal class ExternalToolsTreePanel(
return isNodeExist != null
}
- private fun createDescription(toolGroup: ExternalDiffSettings.ExternalToolGroup): String {
+ private fun createDescription(toolGroup: ExternalToolGroup): String {
val title = DiffBundle.message("settings.external.tools.parameters.description")
val argumentPattern = when (toolGroup) {
- ExternalDiffSettings.ExternalToolGroup.DIFF_TOOL -> DiffBundle.message("settings.external.tools.parameters.diff")
- ExternalDiffSettings.ExternalToolGroup.MERGE_TOOL -> DiffBundle.message("settings.external.tools.parameters.merge")
+ ExternalToolGroup.DIFF_TOOL -> DiffBundle.message("settings.external.tools.parameters.diff")
+ ExternalToolGroup.MERGE_TOOL -> DiffBundle.message("settings.external.tools.parameters.merge")
}
return "$title<br>$argumentPattern"
@@ -428,13 +445,49 @@ internal class ExternalToolsTreePanel(
}
}
+ private fun DefaultTreeModel.toMap(): MutableMap<ExternalToolGroup, List<ExternalTool>> {
+ val root = this.root as DefaultMutableTreeNode
+ val model = mutableMapOf<ExternalToolGroup, List<ExternalTool>>()
+
+ for (group in root.children()) {
+ if (group.childCount == 0) continue
+
+ val groupNode = group as DefaultMutableTreeNode
+ val tools = mutableListOf<ExternalTool>()
+ for (child in group.children()) {
+ val childNode = child as DefaultMutableTreeNode
+ val tool = childNode.userObject as ExternalTool
+ tools.add(tool)
+ }
+
+ model[groupNode.userObject as ExternalToolGroup] = tools
+ }
+
+ return model
+ }
+
+ private fun DefaultTreeModel.update(value: Map<ExternalToolGroup, List<ExternalTool>>) {
+ val root = this.root as DefaultMutableTreeNode
+ root.removeAllChildren()
+
+ value.toSortedMap().forEach { (group, tools) ->
+ if (tools.isEmpty()) return@forEach
+
+ val groupNode = DefaultMutableTreeNode(group)
+ tools.forEach { groupNode.add(DefaultMutableTreeNode(it)) }
+ insertNodeInto(groupNode, root, root.childCount)
+ }
+
+ nodeStructureChanged(root)
+ }
+
private fun ListTableModel<ExternalDiffSettings.ExternalToolConfiguration>.updateEntities(
- toolGroup: ExternalDiffSettings.ExternalToolGroup,
- oldTool: ExternalDiffSettings.ExternalTool,
- newTool: ExternalDiffSettings.ExternalTool
+ toolGroup: ExternalToolGroup,
+ oldTool: ExternalTool,
+ newTool: ExternalTool
) {
items.forEach { configuration ->
- if (toolGroup == ExternalDiffSettings.ExternalToolGroup.DIFF_TOOL) {
+ if (toolGroup == ExternalToolGroup.DIFF_TOOL) {
if (configuration.diffToolName == oldTool.name) {
configuration.diffToolName = newTool.name
}
@@ -448,9 +501,6 @@ internal class ExternalToolsTreePanel(
}
companion object {
- private const val WINDOW_WIDTH = 400
- private const val WINDOW_HEIGHT = 400
-
private const val DIFF_TOOL_DEFAULT_ARGUMENT_PATTERN = "%1 %2 %3"
private const val MERGE_TOOL_DEFAULT_ARGUMENT_PATTERN = "%1 %2 %3 %4"
}
diff --git a/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffSettings.kt b/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffSettings.kt
index 06a4ee810463..8dcfcc26d45c 100644
--- a/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffSettings.kt
+++ b/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffSettings.kt
@@ -5,6 +5,8 @@ import com.intellij.diff.util.DiffUtil
import com.intellij.openapi.components.*
import com.intellij.openapi.fileTypes.FileType
import com.intellij.openapi.fileTypes.FileTypeManager
+import com.intellij.openapi.util.text.StringUtil
+import com.intellij.util.PathUtilRt
import com.intellij.util.xmlb.annotations.OptionTag
import org.jetbrains.annotations.NonNls
@@ -87,27 +89,6 @@ class ExternalDiffSettings : BaseState(), PersistentStateComponent<ExternalDiffS
private fun nonNullString(initialValue: String = "") = property(initialValue) { it == initialValue }
- private fun migrateOldSettings(state: ExternalDiffSettings) {
- if (!state.isSettingsMigrated) {
- // load old settings
- state.isExternalToolsEnabled = isDiffEnabled
- val oldDiffTool = ExternalTool(state.diffExePath, state.diffExePath, state.diffParameters,
- false, ExternalToolGroup.DIFF_TOOL)
- val oldMergeTool = ExternalTool(state.mergeExePath, state.mergeExePath, state.mergeParameters,
- state.isMergeTrustExitCode, ExternalToolGroup.MERGE_TOOL)
- state.externalTools[ExternalToolGroup.DIFF_TOOL] = listOf(oldDiffTool)
- state.externalTools[ExternalToolGroup.MERGE_TOOL] = listOf(oldMergeTool)
-
- // save old settings
- state.defaultToolConfiguration = defaultToolConfiguration.apply {
- if (state.isDiffEnabled && diffExePath.isNotEmpty()) diffToolName = oldDiffTool.name
- if (state.isMergeEnabled && mergeExePath.isNotEmpty()) mergeToolName = oldMergeTool.name
- }
-
- state.isSettingsMigrated = true
- }
- }
-
companion object {
@JvmStatic
val instance: ExternalDiffSettings
@@ -148,17 +129,38 @@ class ExternalDiffSettings : BaseState(), PersistentStateComponent<ExternalDiffS
return instance.defaultToolConfiguration.mergeToolName != ExternalToolConfiguration.BUILTIN_TOOL
}
- @JvmStatic
- fun isConfigurationRegistered(externalTool: ExternalTool): Boolean {
- return instance.defaultToolConfiguration.diffToolName == externalTool.name ||
- instance.defaultToolConfiguration.mergeToolName == externalTool.name ||
- instance.externalToolsConfiguration.any { it.diffToolName == externalTool.name || it.mergeToolName == externalTool.name }
- }
-
private fun findTool(tools: List<ExternalTool>, toolName: String): ExternalTool? = tools.find { it.name == toolName }
private fun findToolConfiguration(fileType: FileType): ExternalToolConfiguration? = instance.externalToolsConfiguration.find {
fileTypeManager.findFileTypeByName(it.fileTypeName) == fileType
}
+
+ private fun migrateOldSettings(state: ExternalDiffSettings) {
+ if (!state.isSettingsMigrated) {
+ // load old settings
+ state.isExternalToolsEnabled = state.isDiffEnabled || state.isMergeEnabled
+
+ // save old settings
+ state.defaultToolConfiguration = ExternalToolConfiguration().apply {
+ if (state.diffExePath.isNotEmpty()) {
+ val oldDiffTool = ExternalTool(StringUtil.capitalize(PathUtilRt.getFileName(state.diffExePath)),
+ state.diffExePath, state.diffParameters,
+ false, ExternalToolGroup.DIFF_TOOL)
+ state.externalTools[ExternalToolGroup.DIFF_TOOL] = listOf(oldDiffTool)
+ diffToolName = oldDiffTool.name
+ }
+
+ if (state.mergeExePath.isNotEmpty()) {
+ val oldMergeTool = ExternalTool(StringUtil.capitalize(PathUtilRt.getFileName(state.mergeExePath)),
+ state.mergeExePath, state.mergeParameters,
+ state.isMergeTrustExitCode, ExternalToolGroup.MERGE_TOOL)
+ state.externalTools[ExternalToolGroup.MERGE_TOOL] = listOf(oldMergeTool)
+ mergeToolName = oldMergeTool.name
+ }
+ }
+
+ state.isSettingsMigrated = true
+ }
+ }
}
}
diff --git a/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffToolUtil.java b/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffToolUtil.java
index 7594b9c6c17b..21e89addee57 100644
--- a/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffToolUtil.java
+++ b/platform/diff-impl/src/com/intellij/diff/tools/external/ExternalDiffToolUtil.java
@@ -21,7 +21,6 @@ import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.util.Ref;
import com.intellij.openapi.util.io.FileUtil;
-import com.intellij.openapi.util.io.StreamUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.CharsetToolkit;
import com.intellij.openapi.vfs.VfsUtil;
@@ -42,9 +41,7 @@ import org.jetbrains.annotations.Nullable;
import javax.swing.*;
import java.io.File;
import java.io.IOException;
-import java.io.InputStreamReader;
import java.nio.charset.Charset;
-import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -323,7 +320,7 @@ public final class ExternalDiffToolUtil {
@NotNull
private static Process execute(@NotNull String exePath, @NotNull String parametersTemplate, @NotNull Map<String, String> patterns)
- throws ExecutionException, IOException {
+ throws ExecutionException {
List<String> parameters = ParametersListUtil.parse(parametersTemplate, true);
List<String> from = new ArrayList<>();
@@ -342,14 +339,7 @@ public final class ExternalDiffToolUtil {
GeneralCommandLine commandLine = new GeneralCommandLine();
commandLine.setExePath(exePath);
commandLine.addParameters(args);
-
- Process process = commandLine.createProcess();
- String infoMessage = StreamUtil.readText(new InputStreamReader(process.getInputStream(), StandardCharsets.UTF_8)); // NON-NLS
- if (!infoMessage.isEmpty()) {
- throw new ExecutionException(infoMessage);
- }
-
- return process;
+ return commandLine.createProcess();
}
//
diff --git a/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarAdditionAction.kt b/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarAdditionAction.kt
index 4fb1717dd48c..134a3f2b44d3 100644
--- a/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarAdditionAction.kt
+++ b/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarAdditionAction.kt
@@ -11,22 +11,25 @@ internal class RunToolbarAdditionAction(val executorGroup: ExecutorGroup<*>,
val process: RunToolbarProcess, val selectedAction: () -> AnAction?) : AnAction() {
init {
- updatePresentation(templatePresentation)
+ updateAndGetVisibility(templatePresentation)
}
override fun update(e: AnActionEvent) {
- updatePresentation(e.presentation)
+ e.presentation.isVisible = updateAndGetVisibility(e.presentation)
e.project?.let {
e.presentation.isEnabled = !e.isActiveProcess()
}
}
- private fun updatePresentation(presentation: Presentation) {
+ private fun updateAndGetVisibility(presentation: Presentation): Boolean {
val action = selectedAction()
- if (action is ExecutorRegistryImpl.ExecutorAction) {
+ return if (action is ExecutorRegistryImpl.ExecutorAction) {
presentation.copyFrom(action.getTemplatePresentation())
presentation.text = executorGroup.getRunToolbarActionText(action.templatePresentation.text)
+ true
+ } else {
+ false
}
}
diff --git a/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarEditConfigurationAction.kt b/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarEditConfigurationAction.kt
index 5a772525e1c3..1b7c0a8854f2 100644
--- a/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarEditConfigurationAction.kt
+++ b/platform/execution-impl/src/com/intellij/execution/runToolbar/RunToolbarEditConfigurationAction.kt
@@ -67,7 +67,7 @@ class RunToolbarMoveToTopAction : DumbAwareAction() {
override fun actionPerformed(e: AnActionEvent) {
e.project?.let { project ->
val manager = RunToolbarSlotManager.getInstance(project)
- if (manager.getState().isSinglePlain()) {
+ if (manager.getState().isSinglePlain() && manager.mainSlotData == e.runToolbarData()) {
manager.activeProcesses.activeSlots.firstOrNull()?.let {
manager.moveToTop(it.id)
}
diff --git a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/SourceFolderManagerImpl.kt b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/SourceFolderManagerImpl.kt
index d75481449625..74e338501212 100644
--- a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/SourceFolderManagerImpl.kt
+++ b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/SourceFolderManagerImpl.kt
@@ -16,7 +16,7 @@ import com.intellij.openapi.module.ModuleManager
import com.intellij.openapi.project.ModuleListener
import com.intellij.openapi.project.Project
import com.intellij.openapi.roots.ModifiableRootModel
-import com.intellij.openapi.roots.ModuleRootManagerEx
+import com.intellij.openapi.roots.ModuleRootManager
import com.intellij.openapi.roots.SourceFolder
import com.intellij.openapi.roots.impl.RootConfigurationAccessor
import com.intellij.openapi.util.Disposer
@@ -31,6 +31,7 @@ import com.intellij.util.containers.MultiMap
import com.intellij.util.xmlb.annotations.XCollection
import com.intellij.workspaceModel.ide.WorkspaceModel
import com.intellij.workspaceModel.ide.impl.legacyBridge.RootConfigurationAccessorForWorkspaceModel
+import com.intellij.workspaceModel.ide.impl.legacyBridge.module.roots.ModuleRootComponentBridge
import com.intellij.workspaceModel.ide.legacyBridge.ModifiableRootModelBridge
import com.intellij.workspaceModel.storage.WorkspaceEntityStorageBuilder
import com.intellij.workspaceModel.storage.toBuilder
@@ -199,8 +200,9 @@ class SourceFolderManagerImpl(private val project: Project) : SourceFolderManage
private fun batchUpdateModels(project: Project, modules: Collection<Module>, modifier: (ModifiableRootModel) -> Unit) {
val diffBuilder = WorkspaceModel.getInstance(project).entityStorage.current.toBuilder()
val modifiableRootModels = modules.asSequence().filter { !it.isDisposed }.map { module ->
- val modifiableRootModel = ModuleRootManagerEx.getInstanceEx(module).getModifiableModelForMultiCommit(
- ExternalSystemRootConfigurationAccessor(diffBuilder))
+ val moduleRootComponentBridge = ModuleRootManager.getInstance(module) as ModuleRootComponentBridge
+ val modifiableRootModel = moduleRootComponentBridge.getModifiableModelForMultiCommit(ExternalSystemRootConfigurationAccessor(diffBuilder),
+ false)
modifiableRootModel as ModifiableRootModelBridge
modifier.invoke(modifiableRootModel)
modifiableRootModel.prepareForCommit()
diff --git a/platform/icons/src/toolbarDecorator/exportSmall.svg b/platform/icons/src/toolbarDecorator/exportSmall.svg
new file mode 100644
index 000000000000..0bb58c3a8d70
--- /dev/null
+++ b/platform/icons/src/toolbarDecorator/exportSmall.svg
@@ -0,0 +1,5 @@
+<!-- Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
+<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12 8V4H8L9.4697 5.4697L6.46973 8.46967L7.53039 9.53033L10.5304 6.53036L12 8Z" fill="#6E6E6E"/>
+<path d="M4 5H5.5V10.5H11V12H4V5Z" fill="#6E6E6E"/>
+</svg>
diff --git a/platform/icons/src/toolbarDecorator/exportSmall_dark.svg b/platform/icons/src/toolbarDecorator/exportSmall_dark.svg
new file mode 100644
index 000000000000..dfc4a38f8141
--- /dev/null
+++ b/platform/icons/src/toolbarDecorator/exportSmall_dark.svg
@@ -0,0 +1,5 @@
+<!-- Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
+<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12 8V4H8L9.4697 5.4697L6.46973 8.46967L7.53039 9.53033L10.5304 6.53036L12 8Z" fill="#AFB1B3"/>
+<path d="M4 5H5.5V10.5H11V12H4V5Z" fill="#AFB1B3"/>
+</svg>
diff --git a/platform/ide-core/resources/messages/ApplicationBundle.properties b/platform/ide-core/resources/messages/ApplicationBundle.properties
index b07c644f44ef..c925d6e20f17 100644
--- a/platform/ide-core/resources/messages/ApplicationBundle.properties
+++ b/platform/ide-core/resources/messages/ApplicationBundle.properties
@@ -787,14 +787,14 @@ checkbox.advanced.settings.modified=Show modified only
advanced.setting.ide.show.fileType.icon.in.titleBar=Show file type icon in IDE frame header
advanced.setting.ide.show.fileType.icon.in.titleBar.description=On macOS, the icon can be used to drag a file to a different application
advanced.setting.ide.max.recent.projects=Maximum number of recent projects
-advanced.setting.temporary.configurations.limit=Temporary Run/Debug configurations limit
+advanced.setting.temporary.configurations.limit=Temporary configurations limit
advanced.setting.confirm.rerun.with.termination=Confirm rerun with process termination
-advanced.setting.start.run.configurations.pinned=Make run configurations pinned by default
+advanced.setting.start.run.configurations.pinned=Make configurations pinned by default
advanced.setting.localHistory.daysToKeep=Duration of storing changes in Local History
advanced.setting.localHistory.daysToKeep.description=Do not use Local History as the primary version control system since it may become corrupted if the IDE hangs
advanced.setting.localHistory.daysToKeep.trailingLabel=days
-advanced.setting.se.enable.text.search=Show text search results in Search Everywhere
-advanced.setting.se.enable.text.search.description=Show text search results in the "All" tab and display the "Text" tab in Search Everywhere
+advanced.setting.se.text.search=Show text search results in Search Everywhere
+advanced.setting.se.text.search.description=Show text search results in the "All" tab and display the "Text" tab in Search Everywhere
advanced.setting.edit.source.on.enter.key.request.focus.in.editor=Move focus to editor when Enter is pressed
advanced.setting.ide.open.readme.md.on.startup=Open README.md file if there are no open files on project startup
advanced.setting.editor.skip.copy.and.cut.for.empty.selection=Don't copy/cut the current line when invoking the Copy or Cut action with no selection
diff --git a/platform/ide-core/src/com/intellij/openapi/actionSystem/IdeActions.java b/platform/ide-core/src/com/intellij/openapi/actionSystem/IdeActions.java
index 310eefc51db1..3d0fc9faeca3 100644
--- a/platform/ide-core/src/com/intellij/openapi/actionSystem/IdeActions.java
+++ b/platform/ide-core/src/com/intellij/openapi/actionSystem/IdeActions.java
@@ -156,6 +156,7 @@ public interface IdeActions {
String ACTION_FIND_USAGES = "FindUsages";
String ACTION_FIND_IN_PATH = "FindInPath";
+ String ACTION_REPLACE_IN_PATH = "ReplaceInPath";
String ACTION_TYPE_HIERARCHY = "TypeHierarchy";
String ACTION_METHOD_HIERARCHY = "MethodHierarchy";
diff --git a/platform/indexing-impl/src/com/intellij/psi/search/FilenameIndexImpl.java b/platform/indexing-impl/src/com/intellij/psi/search/FilenameIndexImpl.java
index 11e937dbf76a..553297430a46 100644
--- a/platform/indexing-impl/src/com/intellij/psi/search/FilenameIndexImpl.java
+++ b/platform/indexing-impl/src/com/intellij/psi/search/FilenameIndexImpl.java
@@ -2,6 +2,7 @@
package com.intellij.psi.search;
+import com.intellij.openapi.util.registry.Registry;
import com.intellij.util.indexing.*;
import com.intellij.util.io.EnumeratorStringDescriptor;
import com.intellij.util.io.KeyDescriptor;
@@ -46,7 +47,7 @@ public class FilenameIndexImpl extends ScalarIndexExtension<String> {
@Override
public int getVersion() {
- return 3;
+ return 3 + (Registry.is("indexing.filename.over.vfs") ? 0xff : 0);
}
@Override
diff --git a/platform/lang-api/src/com/intellij/codeInsight/hints/InlayHintsProvider.kt b/platform/lang-api/src/com/intellij/codeInsight/hints/InlayHintsProvider.kt
index e697707736e9..fce21fe7fdd3 100644
--- a/platform/lang-api/src/com/intellij/codeInsight/hints/InlayHintsProvider.kt
+++ b/platform/lang-api/src/com/intellij/codeInsight/hints/InlayHintsProvider.kt
@@ -108,6 +108,7 @@ interface InlayHintsProvider<T : Any> {
@JvmDefault
val description: String?
+ @Nls
get() {
return getProperty("inlay." + key.id + ".description")
}
@@ -141,6 +142,12 @@ interface InlayHintsProvider<T : Any> {
fun preparePreview(editor: Editor, file: PsiFile, settings: T) {
}
+ @Nls
+ @JvmDefault
+ fun getCaseDescription(case: ImmediateConfigurable.Case): String? {
+ return getProperty("inlay." + this.key.id + "." + case.id)
+ }
+
val isVisibleInSettings: Boolean
get() = true
}
diff --git a/platform/lang-api/src/com/intellij/codeInsight/hints/InlayParameterHintsProvider.java b/platform/lang-api/src/com/intellij/codeInsight/hints/InlayParameterHintsProvider.java
index b7b46d76d600..9b74eb6be14d 100644
--- a/platform/lang-api/src/com/intellij/codeInsight/hints/InlayParameterHintsProvider.java
+++ b/platform/lang-api/src/com/intellij/codeInsight/hints/InlayParameterHintsProvider.java
@@ -149,6 +149,9 @@ public interface InlayParameterHintsProvider {
return SyntaxTraverser.psiTraverser(root);
}
+ @Nls
+ default String getDescription() { return null; }
+
/**
* @param key bundle key of the option.
* @return description of the given option or null (in this case it won't be shown).
diff --git a/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereContributor.java b/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereContributor.java
index 50636c73f563..6d220b5b39d4 100644
--- a/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereContributor.java
+++ b/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereContributor.java
@@ -74,10 +74,7 @@ public interface SearchEverywhereContributor<Item> extends PossiblyDumbAware, Di
* <p>Defines if separate tab should be shown for this contributor in <i>Search Everywhere</i> dialog.</p>
* <p>Please do not override this method unless absolutely necessary. Too many separate tabs make the <i>Search Everywhere</i>
* dialog unusable.</p>
- *
- * @deprecated method is not used since 2022.1
*/
- @Deprecated(since = "2022.1")
default boolean isShownInSeparateTab() {
return false;
}
diff --git a/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/TabsCustomizationStrategy.kt b/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/TabsCustomizationStrategy.kt
new file mode 100644
index 000000000000..82064a24d707
--- /dev/null
+++ b/platform/lang-api/src/com/intellij/ide/actions/searcheverywhere/TabsCustomizationStrategy.kt
@@ -0,0 +1,18 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.ide.actions.searcheverywhere
+
+import com.intellij.openapi.application.ApplicationManager
+import org.jetbrains.annotations.ApiStatus
+
+@ApiStatus.Internal
+@ApiStatus.Experimental
+interface TabsCustomizationStrategy {
+
+ companion object {
+ @JvmStatic fun getInstance(): TabsCustomizationStrategy =
+ ApplicationManager.getApplication().getService(TabsCustomizationStrategy::class.java)
+ }
+
+ fun getSeparateTabContributors(contributors: List<SearchEverywhereContributor<*>>) : List<SearchEverywhereContributor<*>>
+
+} \ No newline at end of file
diff --git a/platform/lang-core/src/com/intellij/ide/util/projectWizard/WizardContext.java b/platform/lang-core/src/com/intellij/ide/util/projectWizard/WizardContext.java
index e8204bf4f362..9ee062d162ae 100644
--- a/platform/lang-core/src/com/intellij/ide/util/projectWizard/WizardContext.java
+++ b/platform/lang-core/src/com/intellij/ide/util/projectWizard/WizardContext.java
@@ -44,6 +44,7 @@ public class WizardContext extends UserDataHolderBase {
private ModulesProvider myModulesProvider;
private boolean myProjectFileDirectorySetExplicitly;
private String myDefaultModuleName = "untitled";
+ private int myScreen = 1;
public void setProjectStorageFormat(StorageScheme format) {
myProjectStorageFormat = format;
@@ -233,4 +234,12 @@ public class WizardContext extends UserDataHolderBase {
public Session getSessionId() {
return mySessionId;
}
+
+ public int getScreen() {
+ return myScreen;
+ }
+
+ public void setScreen(int screen) {
+ myScreen = screen;
+ }
}
diff --git a/platform/lang-impl/resources/codeVisionProviders/problems/preview.java b/platform/lang-impl/resources/codeVisionProviders/problems/preview.java
new file mode 100644
index 000000000000..8a4b0f4cb6c4
--- /dev/null
+++ b/platform/lang-impl/resources/codeVisionProviders/problems/preview.java
@@ -0,0 +1,5 @@
+class Thing {
+ void changedMethod(String s) {
+
+ }
+} \ No newline at end of file
diff --git a/platform/lang-impl/resources/codeVisionProviders/vcs.code.vision/preview.java b/platform/lang-impl/resources/codeVisionProviders/vcs.code.vision/preview.java
new file mode 100644
index 000000000000..f74088d87f83
--- /dev/null
+++ b/platform/lang-impl/resources/codeVisionProviders/vcs.code.vision/preview.java
@@ -0,0 +1,5 @@
+class Thing {
+ void doThing() {
+
+ }
+} \ No newline at end of file
diff --git a/platform/lang-impl/resources/messages/CodeVisionBundle.properties b/platform/lang-impl/resources/messages/CodeVisionBundle.properties
index 539f9863eede..efde2a8b5d8e 100644
--- a/platform/lang-impl/resources/messages/CodeVisionBundle.properties
+++ b/platform/lang-impl/resources/messages/CodeVisionBundle.properties
@@ -7,9 +7,10 @@ CodeVisionConfigurable.column.name.metric=Metric
CodeVisionConfigurable.column.name.position=Position
ShowCodeVisionPopupAction.action.show.code.vision.text=Show Code Vision
-LensListPopup.tooltip.settings=&Settings
+LensListPopup.tooltip.settings=&Configure...
-action.hide.this.metric.text=&Hide this metric
+action.hide.this.metric.text=&Hide `Code Vision: {0}` Inlay Hints
+action.hide.all.text=&Hide All `Code Vision` Inlay Hints
CodeLensGlobalSettingsProvider.defaultPosition.description=Default position for metrics:
CodeLensGlobalSettingsProvider.visibleMetricsAbove.description=Visible metrics above declaration:
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionHost.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionHost.kt
index 97c97f070d55..4226e7b71380 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionHost.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionHost.kt
@@ -1,9 +1,14 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.codeInsight.codeVision
+import com.intellij.codeInsight.codeVision.settings.CodeVisionGroupDefaultSettingModel
import com.intellij.codeInsight.codeVision.settings.CodeVisionSettings
import com.intellij.codeInsight.codeVision.settings.CodeVisionSettingsLiveModel
import com.intellij.codeInsight.codeVision.ui.CodeVisionView
import com.intellij.codeInsight.codeVision.ui.model.PlaceholderCodeVisionEntry
+import com.intellij.codeInsight.codeVision.ui.model.RichTextCodeVisionEntry
+import com.intellij.codeInsight.codeVision.ui.model.richText.RichText
+import com.intellij.codeInsight.daemon.DaemonCodeAnalyzer
import com.intellij.codeInsight.hints.InlayGroup
import com.intellij.codeInsight.hints.settings.InlayHintsConfigurable
import com.intellij.codeInsight.hints.settings.language.isInlaySettingsEditor
@@ -14,7 +19,8 @@ import com.intellij.openapi.Disposable
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.application.ModalityState
import com.intellij.openapi.application.runReadAction
-import com.intellij.openapi.components.ServiceManager
+import com.intellij.openapi.components.service
+import com.intellij.openapi.diagnostic.ControlFlowException
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.EditorKind
import com.intellij.openapi.editor.event.DocumentEvent
@@ -32,7 +38,10 @@ import com.intellij.openapi.roots.ProjectRootManager
import com.intellij.openapi.util.Key
import com.intellij.openapi.util.TextRange
import com.intellij.psi.PsiFile
+import com.intellij.psi.PsiManager
import com.intellij.psi.SyntaxTraverser
+import com.intellij.psi.util.PsiModificationTracker
+import com.intellij.ui.SimpleTextAttributes
import com.intellij.util.Alarm
import com.intellij.util.application
import com.intellij.util.concurrency.AppExecutorUtil
@@ -95,7 +104,7 @@ open class CodeVisionHost(val project: Project) {
init {
- lifeSettingModel.isEnabledWithRegistry.whenTrue(codeVisionLifetime) { enableCodeVisionLifetime ->
+ lifeSettingModel.isRegistryEnabled.whenTrue(codeVisionLifetime) { enableCodeVisionLifetime ->
ApplicationManager.getApplication().invokeLater {
runReadAction {
if (project.isDisposed) return@runReadAction
@@ -106,7 +115,7 @@ open class CodeVisionHost(val project: Project) {
}
}
- val viewService = ServiceManager.getService(project, CodeVisionView::class.java)
+ val viewService = project.service<CodeVisionView>()
viewService.setPerAnchorLimits(
CodeVisionAnchorKind.values().associateWith { (lifeSettingModel.getAnchorLimit(it) ?: defaultVisibleLenses) })
@@ -147,6 +156,17 @@ open class CodeVisionHost(val project: Project) {
recollectAndRearrangeProviders()
}
})
+ project.messageBus.connect(enableCodeVisionLifetime.createNestedDisposable())
+ .subscribe(CodeVisionSettings.CODE_LENS_SETTINGS_CHANGED, object : CodeVisionSettings.CodeVisionSettingsListener {
+ override fun groupPositionChanged(id: String, position: CodeVisionAnchorKind) {
+
+ }
+
+ override fun providerAvailabilityChanged(id: String, isEnabled: Boolean) {
+ PsiManager.getInstance(project).dropPsiCaches()
+ DaemonCodeAnalyzer.getInstance(project).restart()
+ }
+ })
}
}
}
@@ -162,7 +182,7 @@ open class CodeVisionHost(val project: Project) {
val placeholders = ArrayList<Pair<TextRange, CodeVisionEntry>>()
val settings = CodeVisionSettings.instance()
for (provider in providers) {
- if (!settings.isProviderEnabled(provider.id)) continue
+ if (!settings.isProviderEnabled(provider.groupId)) continue
if (getAnchorForProvider(provider) != CodeVisionAnchorKind.Top) continue
val placeholderCollector: CodeVisionPlaceholderCollector = provider.getPlaceholderCollector(editor, psiFile) ?: continue
if (placeholderCollector is BypassBasedPlaceholderCollector) {
@@ -230,6 +250,12 @@ open class CodeVisionHost(val project: Project) {
}
open fun handleLensExtraAction(editor: Editor, range: TextRange, entry: CodeVisionEntry, actionId: String) {
+ if (actionId == settingsLensProviderId) {
+ val provider = getProviderById(entry.providerId)
+ openCodeVisionSettings(provider?.groupId)
+ return
+ }
+
val frontendProvider = providers.firstOrNull { it.id == entry.providerId }
if (frontendProvider != null) {
frontendProvider.handleExtraAction(editor, range, actionId)
@@ -248,14 +274,14 @@ open class CodeVisionHost(val project: Project) {
}
private fun getAnchorForProvider(provider: CodeVisionProvider<*>): CodeVisionAnchorKind{
- return lifeSettingModel.codeVisionGroupToPosition[provider.name].nullIfDefault() ?: lifeSettingModel.defaultPosition.value
+ return lifeSettingModel.codeVisionGroupToPosition[provider.groupId].nullIfDefault() ?: lifeSettingModel.defaultPosition.value
}
private fun getPriorityForId(id: String): Int {
return defaultSortedProvidersList.indexOf(id)
}
- protected open fun getProviderById(id: String): CodeVisionProvider<*>? {
+ open fun getProviderById(id: String): CodeVisionProvider<*>? {
return providers.firstOrNull { it.id == id }
}
@@ -350,36 +376,56 @@ open class CodeVisionHost(val project: Project) {
}
executeOnPooledThread(calcLifetime, inTestSyncMode) {
ProgressManager.checkCanceled()
- val results = mutableListOf<Pair<TextRange, CodeVisionEntry>>()
+ var results = mutableListOf<Pair<TextRange, CodeVisionEntry>>()
val providerWhoWantToUpdate = mutableListOf<String>()
var everyProviderReadyToUpdate = true
+ val inlaySettingsEditor = isInlaySettingsEditor(editor)
providers.forEach {
@Suppress("UNCHECKED_CAST")
it as CodeVisionProvider<Any?>
+ if (!inlaySettingsEditor && !lifeSettingModel.disabledCodeVisionProviderIds.contains(it.groupId)) {
+ if (!it.shouldRecomputeForEditor(editor, precalculatedUiThings[it.id])) {
+ everyProviderReadyToUpdate = false
+ return@forEach
+ }
+ }
if (groupsToRecalculate.isNotEmpty() && !groupsToRecalculate.contains(it.id)) return@forEach
ProgressManager.checkCanceled()
if (project.isDisposed) return@executeOnPooledThread
- if (lifeSettingModel.disabledCodeVisionProviderIds.contains(it.groupId)) {
+ if (!inlaySettingsEditor && lifeSettingModel.disabledCodeVisionProviderIds.contains(it.groupId)) {
if (editor.lensContextOrThrow.hasProviderCodeVision(it.id)) {
providerWhoWantToUpdate.add(it.id)
}
return@forEach
}
- if (!it.shouldRecomputeForEditor(editor, precalculatedUiThings[it.id])) {
- everyProviderReadyToUpdate = false
- return@forEach
- }
providerWhoWantToUpdate.add(it.id)
try {
- val result = it.computeForEditor(editor, precalculatedUiThings[it.id])
- results.addAll(result)
+ val state = it.computeCodeVision(editor, precalculatedUiThings[it.id])
+ if (state.isReady.not()) {
+ everyProviderReadyToUpdate = false
+ }
+ else {
+ results.addAll(state.result)
+ }
}
catch (e: Exception) {
+ if (e is ControlFlowException) throw e
+
logger.error("Exception during computeForEditor for ${it.id}", e)
}
}
+ val previewData = CodeVisionGroupDefaultSettingModel.isEnabledInPreview(editor)
+ if (previewData == false) {
+ results = results.map {
+ val richText = RichText()
+ richText.append(it.second.longPresentation, SimpleTextAttributes(SimpleTextAttributes.STYLE_STRIKEOUT, null))
+ val entry = RichTextCodeVisionEntry(it.second.providerId, richText)
+ it.first to entry
+ }.toMutableList()
+ }
+
if (!everyProviderReadyToUpdate) {
editor.lensContextOrThrow.discardPending()
return@executeOnPooledThread
@@ -390,10 +436,6 @@ open class CodeVisionHost(val project: Project) {
return@executeOnPooledThread
}
- if(results.isEmpty() && editor.lensContextOrThrow.hasOnlyPlaceholders()){
- editor.lensContextOrThrow.discardPending()
- return@executeOnPooledThread
- }
if (!inTestSyncMode) {
application.invokeLater({
@@ -427,9 +469,11 @@ open class CodeVisionHost(val project: Project) {
return indicator
}
- private fun openCodeVisionSettings() {
+ private fun openCodeVisionSettings(groupId: String? = null) {
InlayHintsConfigurable.showSettingsDialogForLanguage(project, Language.ANY) {
- return@showSettingsDialogForLanguage it.group == InlayGroup.CODE_VISION_GROUP_NEW
+ if(groupId == null) return@showSettingsDialogForLanguage it.group == InlayGroup.CODE_VISION_GROUP_NEW
+
+ return@showSettingsDialogForLanguage it.group == InlayGroup.CODE_VISION_GROUP_NEW && it.id == groupId
}
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionProvider.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionProvider.kt
index 1c640a02ccc9..b4c60ab35cc2 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionProvider.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionProvider.kt
@@ -34,6 +34,10 @@ interface CodeVisionProvider<T> {
*/
@JvmDefault
fun isAvailableFor(project: Project) = true
+
+ @JvmDefault
+ fun preparePreview(editor: Editor, file: PsiFile) {
+ }
/**
* Computes some data on UI thread, before the background thread invocation
@@ -52,9 +56,17 @@ interface CodeVisionProvider<T> {
*
* Note that this method is not executed under read action.
*/
- fun computeForEditor(editor: Editor, uiData: T): List<Pair<TextRange, CodeVisionEntry>>
+ @Deprecated("Use computeCodeVision instead", ReplaceWith("computeCodeVision"))
+ fun computeForEditor(editor: Editor, uiData: T): List<Pair<TextRange, CodeVisionEntry>> = emptyList()
/**
+ * Should return text ranges and applicable hints for them, invoked on background thread.
+ *
+ * Note that this method is not executed under read action.
+ */
+ fun computeCodeVision(editor: Editor, uiData: T): CodeVisionState = CodeVisionState.Ready(computeForEditor(editor, uiData))
+
+ /**
* Handle click on a lens at given range
* [java.awt.event.MouseEvent] accessible with [codeVisionEntryMouseEventKey] data key from [CodeVisionEntry]
*/
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionState.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionState.kt
new file mode 100644
index 000000000000..ee8ba40fa51d
--- /dev/null
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/CodeVisionState.kt
@@ -0,0 +1,12 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.codeInsight.codeVision
+
+import com.intellij.openapi.util.TextRange
+
+sealed class CodeVisionState(val isReady: Boolean, val result: List<Pair<TextRange, CodeVisionEntry>>) {
+ companion object{
+ val READY_EMPTY = Ready(emptyList())
+ }
+ class Ready(lenses: List<Pair<TextRange, CodeVisionEntry>>) : CodeVisionState(true, lenses)
+ object NotReady : CodeVisionState(false, emptyList())
+} \ No newline at end of file
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionGroupDefaultSettingModel.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionGroupDefaultSettingModel.kt
index 74f5c471ab2e..208322b4904a 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionGroupDefaultSettingModel.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionGroupDefaultSettingModel.kt
@@ -3,12 +3,14 @@ package com.intellij.codeInsight.codeVision.settings
import com.intellij.codeInsight.codeVision.CodeVisionAnchorKind
import com.intellij.codeInsight.codeVision.CodeVisionBundle
+import com.intellij.codeInsight.codeVision.CodeVisionHost
import com.intellij.codeInsight.codeVision.CodeVisionProvider
import com.intellij.codeInsight.hints.codeVision.CodeVisionPass
import com.intellij.codeInsight.hints.codeVision.CodeVisionProviderAdapter
import com.intellij.lang.Language
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.ui.ComboBox
+import com.intellij.openapi.util.Key
import com.intellij.psi.PsiFile
import com.intellij.ui.dsl.builder.panel
import com.intellij.util.ResourceUtil
@@ -19,16 +21,30 @@ open class CodeVisionGroupDefaultSettingModel(override val name: String,
override val description: String?,
isEnabled: Boolean,
val providers: List<CodeVisionProvider<*>>) : CodeVisionGroupSettingModel(isEnabled, id = groupId) {
+ companion object {
+ private val CODE_VISION_PREVIEW_ENABLED = Key<Boolean>("code.vision.preview.data")
+
+ internal fun isEnabledInPreview(editor: Editor) : Boolean? {
+ return editor.getUserData(CODE_VISION_PREVIEW_ENABLED)
+ }
+ }
+
private val settings = CodeVisionSettings.instance()
private lateinit var positionComboBox: ComboBox<CodeVisionAnchorKind>
override fun collectData(editor: Editor, file: PsiFile): Runnable {
- val visionProviders = providers.filterIsInstance<CodeVisionProviderAdapter>().map { it.delegate }
- val codeVisionData = CodeVisionPass.collectData(editor, file, visionProviders)
+ for (provider in providers) {
+ provider.preparePreview(editor, file)
+ }
+ val daemonBoundProviders = providers.filterIsInstance<CodeVisionProviderAdapter>().map { it.delegate }
+ val codeVisionData = CodeVisionPass.collectData(editor, file, daemonBoundProviders)
return Runnable {
+ editor.putUserData(CODE_VISION_PREVIEW_ENABLED, isEnabled)
val project = editor.project ?: return@Runnable
codeVisionData.applyTo(editor, project)
+ CodeVisionHost.getInstance(project).invalidateProviderSignal
+ .fire(CodeVisionHost.LensInvalidateSignal(editor))
}
}
@@ -47,17 +63,17 @@ open class CodeVisionGroupDefaultSettingModel(override val name: String,
override fun isModified(): Boolean {
return (isEnabled != (settings.isProviderEnabled(id) && settings.codeVisionEnabled)
- || positionComboBox.item != (settings.getPositionForGroup(name) ?: settings.defaultPosition))
+ || positionComboBox.item != (settings.getPositionForGroup(id) ?: settings.defaultPosition))
}
override fun apply() {
settings.setProviderEnabled(id, isEnabled)
- settings.setPositionForGroup(name, positionComboBox.item)
+ settings.setPositionForGroup(id, positionComboBox.item)
}
override fun reset() {
isEnabled = settings.isProviderEnabled(id) && settings.codeVisionEnabled
- positionComboBox.item = settings.getPositionForGroup(name) ?: CodeVisionAnchorKind.Default
+ positionComboBox.item = settings.getPositionForGroup(id) ?: CodeVisionAnchorKind.Default
}
private fun getCasePreview(): String? {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionSettingsLiveModel.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionSettingsLiveModel.kt
index 27d8314299d0..51e350cd9196 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionSettingsLiveModel.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/settings/CodeVisionSettingsLiveModel.kt
@@ -39,13 +39,12 @@ class CodeVisionSettingsLiveModel(lifetime: Lifetime) {
val defaultPosition: Property<CodeVisionAnchorKind> = Property(CodeVisionSettings.instance().defaultPosition)
val visibleMetricsAboveDeclarationCount: Property<Int> = Property(CodeVisionSettings.instance().visibleMetricsAboveDeclarationCount)
val visibleMetricsNextToDeclarationCount: Property<Int> = Property(CodeVisionSettings.instance().visibleMetricsNextToDeclarationCount)
- val disabledCodeVisionProviderIds: ViewableSet<String> = ViewableSet(CodeVisionSettings.instance().state.disabledCodeVisionProviderIds)
+ val disabledCodeVisionProviderIds: ViewableSet<String> = ViewableSet(CodeVisionSettings.instance().state.disabledCodeVisionProviderIds.toMutableSet())
val codeVisionGroupToPosition: ViewableMap<String, CodeVisionAnchorKind> = ViewableMap<String, CodeVisionAnchorKind>().apply {
putAll(CodeVisionSettings.instance().state.codeVisionGroupToPosition.map { it.key to CodeVisionAnchorKind.valueOf(it.value) })
}
init {
-
application.messageBus.connect(lifetime.createNestedDisposable())
.subscribe(CodeVisionSettings.CODE_LENS_SETTINGS_CHANGED,
object : CodeVisionSettings.CodeVisionSettingsListener {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionListData.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionListData.kt
index 42bad6d3da06..c2bfe43d179d 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionListData.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionListData.kt
@@ -5,6 +5,7 @@ import com.intellij.codeInsight.codeVision.CodeVisionEntry
import com.intellij.openapi.editor.Inlay
import com.intellij.openapi.editor.impl.EditorImpl
import com.intellij.openapi.util.Key
+import com.intellij.openapi.util.registry.Registry
import com.jetbrains.rd.util.lifetime.Lifetime
import com.jetbrains.rd.util.reactive.map
import com.jetbrains.rd.util.throttleLast
@@ -63,7 +64,7 @@ class CodeVisionListData(
}
fun state() = rangeCodeVisionModel.state()
- fun isMoreLensActive() = throttle
+ fun isMoreLensActive() = throttle && Registry.`is`("editor.codeVision.more.inlay")
fun isHoveredEntry(entry: CodeVisionEntry) = projectModel.hoveredEntry.value == entry && projectModel.hoveredInlay.value == inlay
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionSelectionController.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionSelectionController.kt
index 92bcba3045ed..e15773011d93 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionSelectionController.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/CodeVisionSelectionController.kt
@@ -15,7 +15,6 @@ import com.intellij.openapi.editor.impl.EditorImpl
import com.intellij.openapi.rd.createLifetime
import com.intellij.ui.awt.RelativePoint
import com.intellij.util.ui.UIUtil
-import com.jetbrains.rd.swing.componentHoverPoint
import com.jetbrains.rd.util.asProperty
import com.jetbrains.rd.util.debounceNotNull
import com.jetbrains.rd.util.lifetime.Lifetime
@@ -72,7 +71,7 @@ class CodeVisionSelectionController private constructor(val lifetime: Lifetime,
editor.mouseReleased().advise(entryLifetime) {
val mouseEvent: MouseEvent = it.mouseEvent
- checkEditorMousePosition(editor.contentComponent.componentHoverPoint()) ?: return@advise
+ checkEditorMousePosition(mouseEvent.point) ?: return@advise
if (mouseEvent.isPopupTrigger) it.consume()
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/ProjectCodeVisionModel.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/ProjectCodeVisionModel.kt
index 19a6b0385e77..2b5e919b6780 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/ProjectCodeVisionModel.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/model/ProjectCodeVisionModel.kt
@@ -19,6 +19,7 @@ class ProjectCodeVisionModel private constructor(val project: Project) {
const val MORE_PROVIDER_ID = "!More"
const val HIDE_PROVIDER_ID = "!Hide"
+ const val HIDE_ALL = "!HideAll"
}
val maxVisibleLensCount = ViewableMap<CodeVisionAnchorKind, Int>()
@@ -28,7 +29,6 @@ class ProjectCodeVisionModel private constructor(val project: Project) {
val moreEntry = AdditionalCodeVisionEntry(MORE_PROVIDER_ID, "More...")
- val hideLens = CodeVisionEntryExtraActionModel(CodeVisionBundle.message("action.hide.this.metric.text"), HIDE_PROVIDER_ID)
private fun getCodeVisionHost() = CodeVisionHost.getInstance(project)
@@ -47,8 +47,15 @@ class ProjectCodeVisionModel private constructor(val project: Project) {
fun handleLensExtraAction(editor: Editor, range: TextRange, entry: CodeVisionEntry, actionId: String) {
if (actionId == HIDE_PROVIDER_ID) {
- CodeVisionSettings.instance().setProviderEnabled(entry.providerId, false)
- CodeVisionHost.getInstance(project).invalidateProviderSignal.fire(CodeVisionHost.LensInvalidateSignal(null, listOf(entry.providerId)))
+ val id = CodeVisionHost.getInstance(project).getProviderById(entry.providerId)?.groupId ?: entry.providerId
+ CodeVisionSettings.instance().setProviderEnabled(id, false)
+ CodeVisionHost.getInstance(project).invalidateProviderSignal.fire(CodeVisionHost.LensInvalidateSignal(null))
+ return
+ }
+
+ if (actionId == HIDE_ALL) {
+ CodeVisionSettings.instance().codeVisionEnabled = false
+ CodeVisionHost.getInstance(project).invalidateProviderSignal.fire(CodeVisionHost.LensInvalidateSignal(null))
return
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/popup/CodeVisionContextPopup.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/popup/CodeVisionContextPopup.kt
index bb8bc89122f5..4d34a8454308 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/popup/CodeVisionContextPopup.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/popup/CodeVisionContextPopup.kt
@@ -1,8 +1,11 @@
package com.intellij.codeInsight.codeVision.ui.popup
+import com.intellij.codeInsight.codeVision.CodeVisionBundle
import com.intellij.codeInsight.codeVision.CodeVisionEntry
import com.intellij.codeInsight.codeVision.CodeVisionEntryExtraActionModel
+import com.intellij.codeInsight.codeVision.CodeVisionHost
import com.intellij.codeInsight.codeVision.ui.model.CodeVisionListData
+import com.intellij.codeInsight.codeVision.ui.model.ProjectCodeVisionModel
import com.intellij.openapi.project.Project
import com.intellij.openapi.ui.popup.ListPopupStep
import com.intellij.openapi.ui.popup.ListSeparator
@@ -15,7 +18,11 @@ class CodeVisionContextPopup private constructor(project: Project, aStep: ListPo
companion object {
fun createLensList(entry: CodeVisionEntry, model: CodeVisionListData, project: Project): CodeVisionContextPopup {
- val lst = entry.extraActions + model.projectModel.hideLens
+ val activeProvider = CodeVisionHost.getInstance(project).getProviderById(entry.providerId) ?: error("Can't find provider with id: ${entry.providerId}")
+ val lst = entry.extraActions +
+ CodeVisionEntryExtraActionModel(CodeVisionBundle.message("action.hide.this.metric.text", activeProvider.name), ProjectCodeVisionModel.HIDE_PROVIDER_ID) +
+ CodeVisionEntryExtraActionModel(CodeVisionBundle.message("action.hide.all.text"), ProjectCodeVisionModel.HIDE_ALL) +
+ CodeVisionEntryExtraActionModel(CodeVisionBundle.message("LensListPopup.tooltip.settings"), CodeVisionHost.settingsLensProviderId)
val aStep = object : SubCodeVisionMenu(lst,
{
@@ -24,7 +31,7 @@ class CodeVisionContextPopup private constructor(project: Project, aStep: ListPo
override fun getSeparatorAbove(value: CodeVisionEntryExtraActionModel): ListSeparator? {
- return super.getSeparatorAbove(value) ?: if (value == model.projectModel.hideLens) ListSeparator() else null
+ return null
}
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionRichTextPainter.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionRichTextPainter.kt
index 4e393dd615ec..be6a4275f584 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionRichTextPainter.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionRichTextPainter.kt
@@ -3,6 +3,7 @@ package com.intellij.codeInsight.codeVision.ui.renderers.painters
import com.intellij.codeInsight.codeVision.ui.model.RangeCodeVisionModel
import com.intellij.codeInsight.codeVision.ui.model.richText.RichText
+import com.intellij.openapi.components.service
import com.intellij.openapi.diagnostic.Logger
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.markup.TextAttributes
@@ -31,10 +32,13 @@ class CodeVisionRichTextPainter<T>(
g as Graphics2D
val richSegments = printer.invoke(value).parts
+ val themeInfoProvider = service<CodeVisionThemeInfoProvider>()
val inSelectedBlock = textAttributes.backgroundColor == editor.selectionModel.textAttributes.backgroundColor
g.color = if (inSelectedBlock) editor.selectionModel.textAttributes.foregroundColor ?: editor.colorsScheme.defaultForeground
- else CodeVisionTheme.foregroundColor(editor, hovered)
+ else {
+ themeInfoProvider.foregroundColor(editor, hovered)
+ }
val x = point.x + theme.left
val y = point.y + theme.top
@@ -49,18 +53,22 @@ class CodeVisionRichTextPainter<T>(
val foregroundColor = it.attributes.fgColor
if (underlineColor == null) underlineColor = foregroundColor
else if(underlineColor != foregroundColor) underlineColor = g.color
- val font = CodeVisionTheme.font(editor, it.attributes.fontStyle)
+ val font = themeInfoProvider.font(editor, it.attributes.fontStyle)
g.font = font
withColor(g, foregroundColor) {
g.drawString(it.text, xOffset, y)
}
val metrics = g.fontMetrics
+ if (it.attributes.isStrikeout) {
+ withColor(g, foregroundColor) {
+ EffectPainter2D.STRIKE_THROUGH.paint(g, xOffset.toDouble(), (y + JBUI.scale(1)).toDouble(), metrics.stringWidth(it.text).toDouble(), 5.0, g.font)
+ }
+ }
xOffset += metrics.stringWidth(it.text)
}
if (hovered) {
val size = size(editor, state, value)
-
withColor(g, underlineColor) {
EffectPainter2D.LINE_UNDERSCORE.paint(g, x.toDouble(), (y + JBUI.scale(1)).toDouble(), size.width.toDouble(), 5.0, g.font)
}
@@ -78,9 +86,10 @@ class CodeVisionRichTextPainter<T>(
val richSegments = printer.invoke(value).parts
var width = theme.left
var height = theme.top
+ val themeInfoProvider = service<CodeVisionThemeInfoProvider>()
richSegments.forEach {
- val font = CodeVisionTheme.font(editor, it.attributes.fontStyle)
+ val font = themeInfoProvider.font(editor, it.attributes.fontStyle)
val metrics = editor.component.getFontMetrics(font)
width += metrics.stringWidth(it.text)
height = maxOf(height, metrics.height)
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionTheme.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionTheme.kt
index ed7d3c741dec..a7adda2487f0 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionTheme.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionTheme.kt
@@ -2,14 +2,9 @@ package com.intellij.codeInsight.codeVision.ui.renderers.painters
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.colors.EditorFontType
-import com.intellij.ui.JBColor
import com.intellij.util.ui.JBUI
-import com.intellij.util.ui.UIUtil
-import java.awt.Color
import java.awt.Font
import java.awt.Rectangle
-import kotlin.math.max
-import kotlin.math.min
class CodeVisionTheme(
var iconGap: Int = JBUI.scale(2),
@@ -19,24 +14,6 @@ class CodeVisionTheme(
var bottom: Int = 0
) {
companion object {
- //todo rider proper color keys
- fun foregroundColor(editor: Editor, hovered: Boolean): Color {
- return if (hovered) {
- JBUI.CurrentTheme.Link.Foreground.ENABLED
- }
- else {
- JBColor.GRAY
- }
- }
-
- fun font(editor: Editor, style: Int = Font.PLAIN): Font {
- val size = lensFontSize(editor)
- return UIUtil.getLabelFont().deriveFont(style, size)
- }
-
- fun lensFontSize(editor: Editor) =
- min(max(editor.colorsScheme.editorFontSize * 80f / 100, 10f), editor.colorsScheme.editorFontSize.toFloat())
-
fun editorFont(editor: Editor, style: EditorFontType = EditorFontType.PLAIN): Font = editor.colorsScheme.getFont(style)
fun yInInlayBounds(y: Int, size: Rectangle): Boolean {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionThemeInfoProvider.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionThemeInfoProvider.kt
new file mode 100644
index 000000000000..b2dd87823844
--- /dev/null
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionThemeInfoProvider.kt
@@ -0,0 +1,36 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.codeInsight.codeVision.ui.renderers.painters
+
+import com.intellij.codeInsight.daemon.impl.HintUtil
+import com.intellij.openapi.editor.Editor
+import com.intellij.openapi.editor.ex.EditorSettingsExternalizable
+import com.intellij.openapi.editor.ex.util.EditorUtil
+import com.intellij.ui.JBColor
+import com.intellij.util.ui.JBUI
+import com.intellij.util.ui.UIUtil
+import java.awt.Color
+import java.awt.Font
+
+open class CodeVisionThemeInfoProvider {
+ open fun foregroundColor(editor: Editor, hovered: Boolean): Color {
+ return if (hovered) {
+ JBUI.CurrentTheme.Link.Foreground.ENABLED
+ }
+ else {
+ JBColor.GRAY
+ }
+ }
+
+ open fun font(editor: Editor, style: Int = Font.PLAIN): Font {
+ val size = lensFontSize(editor)
+ return if (EditorSettingsExternalizable.getInstance().isUseEditorFontInInlays) {
+ val editorFont = EditorUtil.getEditorFont()
+ editorFont.deriveFont(style, size)
+ }
+ else {
+ UIUtil.getLabelFont().deriveFont(style, size)
+ }
+ }
+
+ open fun lensFontSize(editor: Editor) = HintUtil.getSize(editor)
+} \ No newline at end of file
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionVisionTextPainter.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionVisionTextPainter.kt
index 05b2d4cd7077..d948c89766cf 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionVisionTextPainter.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/CodeVisionVisionTextPainter.kt
@@ -1,6 +1,7 @@
package com.intellij.codeInsight.codeVision.ui.renderers.painters
import com.intellij.codeInsight.codeVision.ui.model.RangeCodeVisionModel
+import com.intellij.openapi.components.service
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.markup.TextAttributes
import com.intellij.ui.paint.EffectPainter2D
@@ -27,12 +28,13 @@ open class CodeVisionVisionTextPainter<T>(
hovered: Boolean
) {
g as Graphics2D
+ val themeInfoProvider = service<CodeVisionThemeInfoProvider>()
val inSelectedBlock = textAttributes.backgroundColor == editor.selectionModel.textAttributes.backgroundColor
g.color = if (inSelectedBlock) editor.selectionModel.textAttributes.foregroundColor ?: editor.colorsScheme.defaultForeground
- else CodeVisionTheme.foregroundColor(editor, hovered)
+ else themeInfoProvider.foregroundColor(editor, hovered)
- g.font = CodeVisionTheme.font(editor)
+ g.font = themeInfoProvider.font(editor)
val x = point.x + theme.left
var y = point.y + theme.top
g.drawString(printer.invoke(value), x, y)
@@ -49,7 +51,7 @@ open class CodeVisionVisionTextPainter<T>(
state: RangeCodeVisionModel.InlayState,
value: T
): Dimension {
- val fontMetrics = editor.component.getFontMetrics(CodeVisionTheme.font(editor))
+ val fontMetrics = editor.component.getFontMetrics(service<CodeVisionThemeInfoProvider>().font(editor))
return Dimension(
fontMetrics.stringWidth(printer.invoke(value)) + theme.left + theme.right,
fontMetrics.height + theme.top + theme.bottom
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/DelimiterPainter.kt b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/DelimiterPainter.kt
index 5653ca05bbc5..8e3c30fd0df2 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/DelimiterPainter.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/codeVision/ui/renderers/painters/DelimiterPainter.kt
@@ -1,6 +1,7 @@
package com.intellij.codeInsight.codeVision.ui.renderers.painters
import com.intellij.codeInsight.codeVision.ui.model.RangeCodeVisionModel
+import com.intellij.openapi.components.service
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.markup.TextAttributes
import com.intellij.util.ui.JBUI
@@ -20,7 +21,7 @@ class DelimiterPainter : ICodeVisionGraphicPainter {
}
override fun size(editor: Editor, state: RangeCodeVisionModel.InlayState): Dimension {
- val width = CodeVisionTheme.lensFontSize(editor)
+ val width = service<CodeVisionThemeInfoProvider>().lensFontSize(editor)
return Dimension(JBUI.scale(width.toInt()), editor.lineHeight)
}
} \ No newline at end of file
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/ParameterHintsPresentationManager.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/ParameterHintsPresentationManager.java
index 05a44292366e..8ead18b9f457 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/ParameterHintsPresentationManager.java
+++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/ParameterHintsPresentationManager.java
@@ -2,6 +2,7 @@
package com.intellij.codeInsight.daemon.impl;
import com.intellij.codeInsight.hints.HintWidthAdjustment;
+import com.intellij.codeInsight.hints.InlayHintsUtilsKt;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
@@ -26,6 +27,7 @@ import java.util.Set;
public final class ParameterHintsPresentationManager implements Disposable {
private static final Key<AnimationStep> ANIMATION_STEP = Key.create("ParameterHintAnimationStep");
+ private static final Key<Boolean> PREVIEW_MODE = Key.create("ParameterHintsPreviewMode");
private static final int ANIMATION_STEP_MS = 25;
private static final int ANIMATION_CHARS_PER_STEP = 3;
@@ -109,6 +111,10 @@ public final class ParameterHintsPresentationManager implements Disposable {
return renderer.current;
}
+ public void setPreviewMode(Editor editor, boolean b) {
+ PREVIEW_MODE.set(editor, b);
+ }
+
private void updateRenderer(@NotNull Editor editor, @NotNull Inlay hint, @Nullable String newText, HintWidthAdjustment widthAdjuster,
boolean useAnimation) {
MyRenderer renderer = (MyRenderer)hint.getRenderer();
@@ -167,10 +173,13 @@ public final class ParameterHintsPresentationManager implements Disposable {
@Override
protected TextAttributes getTextAttributes(@NotNull Editor editor) {
if (step > steps || startWidth != 0) {
- return editor.getColorsScheme().getAttributes(current
- ? DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT_CURRENT
- : highlighted ? DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT_HIGHLIGHTED
- : DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT);
+ TextAttributes attributes = editor.getColorsScheme().getAttributes(current
+ ? DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT_CURRENT
+ : highlighted
+ ? DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT_HIGHLIGHTED
+ : DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT);
+ Boolean aBoolean = PREVIEW_MODE.get(editor);
+ return aBoolean != null && aBoolean ? InlayHintsUtilsKt.strikeOutBuilder(editor).applyTo(attributes.clone()) : attributes;
}
return null;
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/InlayHintsUtils.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/InlayHintsUtils.kt
index 46e0a9430050..339666649422 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/InlayHintsUtils.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/InlayHintsUtils.kt
@@ -1,6 +1,7 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.codeInsight.hints
+import com.intellij.codeInsight.hints.presentation.AttributesTransformerPresentation
import com.intellij.codeInsight.hints.presentation.InlayPresentation
import com.intellij.codeInsight.hints.presentation.RecursivelyUpdatingRootPresentation
import com.intellij.codeInsight.hints.presentation.RootInlayPresentation
@@ -9,12 +10,16 @@ import com.intellij.configurationStore.serialize
import com.intellij.lang.Language
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.application.invokeLater
+import com.intellij.openapi.editor.DefaultLanguageHighlighterColors
import com.intellij.openapi.editor.Editor
+import com.intellij.openapi.editor.markup.EffectType
+import com.intellij.openapi.editor.markup.TextAttributesEffectsBuilder
import com.intellij.openapi.util.TextRange
import com.intellij.psi.*
import com.intellij.refactoring.suggested.endOffset
import com.intellij.refactoring.suggested.startOffset
import com.intellij.util.SmartList
+import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
import org.jetbrains.annotations.Nls.Capitalization.Title
@@ -71,6 +76,11 @@ internal fun <T : Any> copySettings(from: T, provider: InlayHintsProvider<T>): T
return settings
}
+internal fun strikeOutBuilder(editor: Editor): TextAttributesEffectsBuilder {
+ val effectColor = editor.colorsScheme.getAttributes(DefaultLanguageHighlighterColors.INLAY_DEFAULT).foregroundColor
+ return TextAttributesEffectsBuilder.create().coverWith(EffectType.STRIKEOUT, effectColor)
+}
+
class CollectorWithSettings<T : Any>(
val collector: InlayHintsCollector,
val key: SettingsKey<T>,
@@ -95,7 +105,13 @@ class CollectorWithSettings<T : Any>(
* Same as [collectTraversingAndApply] but invoked on bg thread
*/
fun collectTraversingAndApplyOnEdt(editor: Editor, file: PsiFile, enabled: Boolean) {
- val hintsBuffer = collectTraversing(editor, file, enabled)
+ val hintsBuffer = collectTraversing(editor, file, true)
+ if (!enabled) {
+ val builder = strikeOutBuilder(editor)
+ addStrikeout(hintsBuffer.inlineHints, builder) { root, constraints -> HorizontalConstrainedPresentation(root, constraints) }
+ addStrikeout(hintsBuffer.blockAboveHints, builder) { root, constraints -> BlockConstrainedPresentation(root, constraints) }
+ addStrikeout(hintsBuffer.blockBelowHints, builder) { root, constraints -> BlockConstrainedPresentation(root, constraints) }
+ }
invokeLater { applyToEditor(file, editor, hintsBuffer) }
}
@@ -114,6 +130,19 @@ class CollectorWithSettings<T : Any>(
}
}
+internal fun <T: Any> addStrikeout(inlineHints: Int2ObjectOpenHashMap<MutableList<ConstrainedPresentation<*, T>>>,
+ builder: TextAttributesEffectsBuilder,
+ factory: (RootInlayPresentation<*>, T?) -> ConstrainedPresentation<*, T>
+) {
+ inlineHints.forEach {
+ it.value.replaceAll { presentation ->
+ val transformer = AttributesTransformerPresentation(presentation.root) { builder.applyTo(it) }
+ val rootPresentation = RecursivelyUpdatingRootPresentation(transformer)
+ factory(rootPresentation, presentation.constraints)
+ }
+ }
+}
+
fun InlayPresentation.fireContentChanged() {
fireContentChanged(Rectangle(width, height))
}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionPass.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionPass.kt
index 1a141d5b15d3..9a68792b0178 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionPass.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionPass.kt
@@ -3,7 +3,11 @@ package com.intellij.codeInsight.hints.codeVision
import com.intellij.codeHighlighting.EditorBoundHighlightingPass
import com.intellij.codeInsight.codeVision.CodeVisionHost
+import com.intellij.codeInsight.codeVision.CodeVisionProviderFactory
+import com.intellij.codeInsight.codeVision.settings.CodeVisionSettings
import com.intellij.codeInsight.codeVision.ui.model.ProjectCodeVisionModel
+import com.intellij.codeInsight.codeVision.ui.model.RichTextCodeVisionEntry
+import com.intellij.codeInsight.codeVision.ui.model.richText.RichText
import com.intellij.concurrency.JobLauncher
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.editor.Editor
@@ -15,10 +19,13 @@ import com.intellij.openapi.rd.createLifetime
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiFile
import com.intellij.psi.util.PsiModificationTracker
+import com.intellij.ui.SimpleTextAttributes
import com.intellij.util.Processor
import com.jetbrains.rd.util.reactive.adviseUntil
import org.jetbrains.annotations.ApiStatus.Internal
import java.util.concurrent.ConcurrentHashMap
+import java.util.stream.Collectors
+import kotlin.streams.toList
/**
* Prepares data for [com.intellij.codeInsight.codeVision.CodeVisionHost].
@@ -37,7 +44,16 @@ class CodeVisionPass(
fun collectData(editor: Editor, file: PsiFile, providers: List<DaemonBoundCodeVisionProvider>) : CodeVisionData {
val providerIdToLenses = ConcurrentHashMap<String, DaemonBoundCodeVisionCacheService.CodeVisionWithStamp>()
collect(EmptyProgressIndicator(), editor, file, providerIdToLenses, providers)
- return CodeVisionData(providerIdToLenses)
+ val allProviders = CodeVisionProviderFactory.createAllProviders(file.project)
+ val dataForAllProviders = HashMap<String, DaemonBoundCodeVisionCacheService.CodeVisionWithStamp>()
+ val modificationStamp = file.modificationStamp
+ for (provider in allProviders) {
+ if (provider !is CodeVisionProviderAdapter) continue
+ val providerId = provider.id
+ dataForAllProviders[providerId] = providerIdToLenses[providerId]
+ ?: DaemonBoundCodeVisionCacheService.CodeVisionWithStamp(emptyList(), modificationStamp)
+ }
+ return CodeVisionData(dataForAllProviders)
}
private fun collect(progress: ProgressIndicator,
@@ -54,18 +70,16 @@ class CodeVisionPass(
})
}
- private fun updateProviders(project: Project,
- editor: Editor,
- providerIdToLenses: Map<String, DaemonBoundCodeVisionCacheService.CodeVisionWithStamp>) {
+ internal fun updateProviders(project: Project,
+ editor: Editor,
+ providerIdToLenses: Map<String, DaemonBoundCodeVisionCacheService.CodeVisionWithStamp>) {
val codeVisionHost = CodeVisionHost.getInstance(project)
- for (providerId in providerIdToLenses.keys) {
- codeVisionHost.invalidateProviderSignal.fire(CodeVisionHost.LensInvalidateSignal(editor, providerIdToLenses.keys))
- }
+ codeVisionHost.invalidateProviderSignal.fire(CodeVisionHost.LensInvalidateSignal(editor, providerIdToLenses.keys))
}
internal fun saveToCache(project: Project,
- editor: Editor,
- providerIdToLenses: Map<String, DaemonBoundCodeVisionCacheService.CodeVisionWithStamp>) {
+ editor: Editor,
+ providerIdToLenses: Map<String, DaemonBoundCodeVisionCacheService.CodeVisionWithStamp>) {
val cacheService = DaemonBoundCodeVisionCacheService.getInstance(project)
for ((providerId, results) in providerIdToLenses) {
cacheService.storeVisionDataForEditor(editor, providerId, results)
@@ -77,7 +91,11 @@ class CodeVisionPass(
private val currentIndicator = ProgressManager.getGlobalProgressIndicator()
override fun doCollectInformation(progress: ProgressIndicator) {
- collect(progress, editor, myFile, providerIdToLenses, DaemonBoundCodeVisionProvider.extensionPoint.extensionList)
+ val settings = CodeVisionSettings.instance()
+ val providers = DaemonBoundCodeVisionProvider.extensionPoint.extensions()
+ .filter { settings.isProviderEnabled(it.groupId) }
+ .collect(Collectors.toList())
+ collect(progress, editor, myFile, providerIdToLenses, providers)
}
override fun doApplyInformationToEditor() {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionProviderAdapter.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionProviderAdapter.kt
index 2ed40473f96f..fcf6bced7040 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionProviderAdapter.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/CodeVisionProviderAdapter.kt
@@ -18,6 +18,10 @@ class CodeVisionProviderAdapter(internal val delegate: DaemonBoundCodeVisionProv
// nothing
}
+ override fun preparePreview(editor: Editor, file: PsiFile) {
+ delegate.preparePreview(editor, file)
+ }
+
override fun collectPlaceholders(editor: Editor): List<TextRange> {
return delegate.collectPlaceholders(editor)
}
@@ -37,10 +41,10 @@ class CodeVisionProviderAdapter(internal val delegate: DaemonBoundCodeVisionProv
}
- override fun computeForEditor(editor: Editor, uiData: Unit): List<Pair<TextRange, CodeVisionEntry>> {
- val project = editor.project ?: return emptyList()
+ override fun computeCodeVision(editor: Editor, uiData: Unit): CodeVisionState {
+ val project = editor.project ?: return CodeVisionState.NotReady
val cacheService = DaemonBoundCodeVisionCacheService.getInstance(project)
- val cached = cacheService.getVisionDataForEditor(editor, id) ?: return emptyList()
+ val cached = cacheService.getVisionDataForEditor(editor, id) ?: return CodeVisionState.NotReady
val document = editor.document
// ranges may be slightly outdated, so we have to unsure that they fit the document
val lenses = cached.codeVisionEntries.map {
@@ -53,7 +57,7 @@ class CodeVisionProviderAdapter(internal val delegate: DaemonBoundCodeVisionProv
it
}
}
- return lenses
+ return CodeVisionState.Ready(lenses)
}
override fun handleClick(editor: Editor, textRange: TextRange, entry: CodeVisionEntry) {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/DaemonBoundCodeVisionProvider.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/DaemonBoundCodeVisionProvider.kt
index db72e97d2ed8..32e5b37ee140 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/DaemonBoundCodeVisionProvider.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/codeVision/DaemonBoundCodeVisionProvider.kt
@@ -23,6 +23,11 @@ interface DaemonBoundCodeVisionProvider {
val extensionPoint = ExtensionPointName.create<DaemonBoundCodeVisionProvider>(EP_NAME)
}
+ @JvmDefault
+ fun preparePreview(editor: Editor, file: PsiFile) {
+
+ }
+
/**
* Computes code lens data in read action in background for a given editor.
*/
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/presentation/TextInlayPresentation.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/presentation/TextInlayPresentation.kt
index 55e9255e260e..c2d2da643a06 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/presentation/TextInlayPresentation.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/presentation/TextInlayPresentation.kt
@@ -43,7 +43,7 @@ class TextInlayPresentation(
when (attributes.effectType) {
EffectType.LINE_UNDERSCORE -> EffectPainter.LINE_UNDERSCORE.paint(g, 0, metrics.ascent, width, metrics.descent, font)
EffectType.BOLD_LINE_UNDERSCORE -> EffectPainter.BOLD_LINE_UNDERSCORE.paint(g, 0, metrics.ascent, width, metrics.descent, font)
- EffectType.STRIKEOUT -> EffectPainter.STRIKE_THROUGH.paint(g, 0, metrics.ascent, width, height, font)
+ EffectType.STRIKEOUT -> EffectPainter.STRIKE_THROUGH.paint(g, 0, metrics.fontBaseline, width, height, font)
EffectType.WAVE_UNDERSCORE -> EffectPainter.WAVE_UNDERSCORE.paint(g, 0, metrics.ascent, width, metrics.descent, font)
EffectType.BOLD_DOTTED_LINE -> EffectPainter.BOLD_DOTTED_UNDERSCORE.paint(g, 0, metrics.ascent, width, metrics.descent, font)
else -> {}
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/InlaySettingsPanel.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/InlaySettingsPanel.kt
index 76e6dbb2510a..94909679c69d 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/InlaySettingsPanel.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/InlaySettingsPanel.kt
@@ -14,6 +14,7 @@ import com.intellij.openapi.editor.colors.EditorColorsManager
import com.intellij.openapi.fileTypes.PlainTextFileType
import com.intellij.openapi.project.Project
import com.intellij.openapi.util.Condition
+import com.intellij.openapi.util.Key
import com.intellij.openapi.util.registry.Registry
import com.intellij.openapi.util.text.StringUtil
import com.intellij.ui.*
@@ -35,6 +36,8 @@ import javax.swing.tree.DefaultMutableTreeNode
import javax.swing.tree.DefaultTreeModel
import javax.swing.tree.TreeNode
+val CASE_KEY = Key.create<ImmediateConfigurable.Case>("inlay.case.key")
+
class InlaySettingsPanel(val project: Project): JPanel(BorderLayout()) {
val tree: CheckboxTree
@@ -42,6 +45,11 @@ class InlaySettingsPanel(val project: Project): JPanel(BorderLayout()) {
private val groups: MutableMap<InlayGroup, List<InlayProviderSettingsModel>>
private var currentEditor: Editor? = null
+ companion object {
+ @kotlin.jvm.JvmField
+ val PREVIEW_KEY = Key.create<Any>("inlay.preview.key")
+ }
+
init {
val models = InlaySettingsProvider.EP.getExtensions().flatMap { provider ->
provider.getSupportedLanguages(project).flatMap { provider.createModels(project, it) }
@@ -183,13 +191,13 @@ class InlaySettingsPanel(val project: Project): JPanel(BorderLayout()) {
rightPanel.add(item.component)
}
is InlayProviderSettingsModel -> {
- if (treeNode.isLeaf) {
+ if (item.description != null) {
addDescription(item.description)
}
item.component.border = JBUI.Borders.empty()
rightPanel.add(item.component)
if (treeNode.isLeaf) {
- addPreview(item.getCasePreview(null) ?: item.previewText, item)
+ addPreview(item.getCasePreview(null) ?: item.previewText, item, null)
}
}
is ImmediateConfigurable.Case -> {
@@ -197,7 +205,7 @@ class InlaySettingsPanel(val project: Project): JPanel(BorderLayout()) {
val model = parent.userObject as InlayProviderSettingsModel
addDescription(model.getCaseDescription(item))
val preview = model.getCasePreview(item)
- addPreview(preview, model)
+ addPreview(preview, model, item)
}
}
if (treeNode != null) {
@@ -207,10 +215,12 @@ class InlaySettingsPanel(val project: Project): JPanel(BorderLayout()) {
rightPanel.repaint()
}
- private fun addPreview(previewText: String?, model: InlayProviderSettingsModel) {
+ private fun addPreview(previewText: String?, model: InlayProviderSettingsModel, case: ImmediateConfigurable.Case?) {
if (previewText != null) {
val editorTextField = createEditor(model.getCasePreviewLanguage(null) ?: model.language, project) { editor ->
currentEditor = editor
+ PREVIEW_KEY.set(editor, "")
+ CASE_KEY.set(editor, case)
updateHints(editor, model)
}
editorTextField.text = previewText
@@ -229,20 +239,19 @@ class InlaySettingsPanel(val project: Project): JPanel(BorderLayout()) {
private fun updateHints(editor: Editor, model: InlayProviderSettingsModel) {
val fileType = model.getCasePreviewLanguage(null)?.associatedFileType ?: PlainTextFileType.INSTANCE
- ApplicationManager.getApplication().invokeLater {
- ReadAction.nonBlocking(Callable {
- val file = model.createFile(project, fileType, editor.document)
- val continuation = model.collectData(editor, file)
- continuation
- })
- .finishOnUiThread(ModalityState.current()) { continuation ->
- ApplicationManager.getApplication().runWriteAction {
- continuation.run()
- }
+ ReadAction.nonBlocking(Callable {
+ val file = model.createFile(project, fileType, editor.document)
+ val continuation = model.collectData(editor, file)
+ continuation
+ })
+ .finishOnUiThread(ModalityState.stateForComponent(this)) { continuation ->
+ ApplicationManager.getApplication().runWriteAction {
+ continuation.run()
}
- .inSmartMode(project)
- .submit(AppExecutorUtil.getAppExecutorService())
- }
+ }
+ .expireWhen { editor.isDisposed }
+ .inSmartMode(project)
+ .submit(AppExecutorUtil.getAppExecutorService())
}
private fun addDescription(@Nls s: String?) {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/NewInlayProviderSettingsModel.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/NewInlayProviderSettingsModel.kt
index 980779adba00..38b5945cea9f 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/NewInlayProviderSettingsModel.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/NewInlayProviderSettingsModel.kt
@@ -2,6 +2,7 @@
package com.intellij.codeInsight.hints.settings.language
import com.intellij.codeInsight.hints.*
+import com.intellij.codeInsight.hints.settings.CASE_KEY
import com.intellij.codeInsight.hints.settings.InlayProviderSettingsModel
import com.intellij.configurationStore.deserializeInto
import com.intellij.configurationStore.serialize
@@ -43,7 +44,24 @@ class NewInlayProviderSettingsModel<T : Any>(
override fun collectData(editor: Editor, file: PsiFile) : Runnable {
providerWithSettings.provider.preparePreview(editor, file, providerWithSettings.settings)
val collectorWrapper = providerWithSettings.getCollectorWrapperFor(file, editor, providerWithSettings.language) ?: return Runnable {}
- val hintsBuffer: HintsBuffer = collectorWrapper.collectTraversing(editor, file, true)
+ val case = CASE_KEY.get(editor)
+ val enabled = case?.value ?: isEnabled
+ val backup = cases.map { it.value }
+ val hintsBuffer: HintsBuffer
+ try {
+ cases.forEach { it.value = false }
+ case?.let { it.value = true }
+ hintsBuffer = collectorWrapper.collectTraversing(editor, file, true)
+ if (!enabled) {
+ val builder = strikeOutBuilder(editor)
+ addStrikeout(hintsBuffer.inlineHints, builder) { root, constraints -> HorizontalConstrainedPresentation(root, constraints) }
+ addStrikeout(hintsBuffer.blockAboveHints, builder) { root, constraints -> BlockConstrainedPresentation(root, constraints) }
+ addStrikeout(hintsBuffer.blockBelowHints, builder) { root, constraints -> BlockConstrainedPresentation(root, constraints) }
+ }
+ }
+ finally {
+ cases.forEachIndexed { index, c -> c.value = backup[index] }
+ }
return Runnable {
collectorWrapper.applyToEditor(file, editor, hintsBuffer)
}
@@ -65,7 +83,7 @@ class NewInlayProviderSettingsModel<T : Any>(
override fun getCaseDescription(case: ImmediateConfigurable.Case): String? {
val key = "inlay." + providerWithSettings.provider.key.id + "." + case.id
- return providerWithSettings.provider.getProperty(key)
+ return providerWithSettings.provider.getCaseDescription(case)
}
override fun apply() {
@@ -96,7 +114,14 @@ class NewInlayProviderSettingsModel<T : Any>(
fun getCasePreview(language: Language, provider: Any, case: ImmediateConfigurable.Case?): String? {
val key = (provider as? InlayHintsProvider<*>)?.key?.id ?: "Parameters"
val fileType = language.associatedFileType ?: PlainTextFileType.INSTANCE
- val path = "inlayProviders/" + key + "/" + (case?.id ?: "preview") + "." + fileType.defaultExtension
+ return getStream(key, case, provider, fileType.defaultExtension) ?: getStream(key, case, provider, "dockerfile")
+}
+
+private fun getStream(key: String,
+ case: ImmediateConfigurable.Case?,
+ provider: Any,
+ extension: String): String? {
+ val path = "inlayProviders/" + key + "/" + (case?.id ?: "preview") + "." + extension
val stream = provider.javaClass.classLoader.getResourceAsStream(path)
return if (stream != null) ResourceUtil.loadText(stream) else null
} \ No newline at end of file
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/ParameterInlayProviderSettingsModel.kt b/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/ParameterInlayProviderSettingsModel.kt
index c2cf333f474f..e115593ce1f5 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/ParameterInlayProviderSettingsModel.kt
+++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/settings/language/ParameterInlayProviderSettingsModel.kt
@@ -3,11 +3,13 @@ package com.intellij.codeInsight.hints.settings.language
import com.intellij.codeInsight.CodeInsightBundle
import com.intellij.codeInsight.daemon.impl.DaemonProgressIndicator
+import com.intellij.codeInsight.daemon.impl.ParameterHintsPresentationManager
import com.intellij.codeInsight.hints.*
+import com.intellij.codeInsight.hints.settings.CASE_KEY
import com.intellij.codeInsight.hints.settings.InlayProviderSettingsModel
import com.intellij.codeInsight.hints.settings.ParameterHintsSettingsPanel
+import com.intellij.codeInsight.hints.settings.ParameterNameHintsSettings
import com.intellij.lang.Language
-import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.progress.ProgressManager
import com.intellij.openapi.progress.util.ProgressIndicatorBase
@@ -65,22 +67,28 @@ class ParameterInlayProviderSettingsModel(
val pass = ParameterHintsPass(file, editor, HintInfoFilter { true }, true)
ProgressManager.getInstance().runProcess({
val backup = ParameterInlayProviderSettingsModel(provider, language)
+ val enabled = ParameterNameHintsSettings.getInstance().isEnabledForLanguage(getLanguageForSettingKey(language))
backup.reset()
try {
apply()
+ val case = CASE_KEY.get(editor)
+ ParameterHintsPresentationManager.getInstance().setPreviewMode(editor, !isEnabled || case != null && !case.value)
+ provider.supportedOptions.forEach { it.set(true) }
+ setShowParameterHintsForLanguage(true, language)
pass.collectInformation(ProgressIndicatorBase())
}
finally {
backup.apply()
+ setShowParameterHintsForLanguage(enabled, language)
}
}, DaemonProgressIndicator())
return Runnable {
+ ParameterHintsPass(file, editor, HintInfoFilter { true }, true).doApplyInformationToEditor() // clean up hints
pass.doApplyInformationToEditor()
}
}
- override val description: String?
- get() = null
+ override val description: String? = provider.description
override fun toString(): String = name
diff --git a/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt b/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt
index ef17d4ea33e4..01646aedfc36 100644
--- a/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt
+++ b/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt
@@ -47,7 +47,8 @@ object ReformatQuickFix : LocalQuickFix {
override fun getFamilyName() = LangBundle.message("inspection.incorrect.formatting.fix.reformat")
override fun applyFix(project: Project, descriptor: ProblemDescriptor) {
- val file = descriptor.psiElement.containingFile
+ val innerFile = descriptor.psiElement.containingFile
+ val file = innerFile.viewProvider.run { getPsi(baseLanguage) }
CodeStyleManager.getInstance(project).reformatText(file, 0, file.textLength)
}
}
diff --git a/platform/lang-impl/src/com/intellij/execution/services/ServiceViewManagerImpl.java b/platform/lang-impl/src/com/intellij/execution/services/ServiceViewManagerImpl.java
index 5db24dfc57dd..6769b7a4fff1 100644
--- a/platform/lang-impl/src/com/intellij/execution/services/ServiceViewManagerImpl.java
+++ b/platform/lang-impl/src/com/intellij/execution/services/ServiceViewManagerImpl.java
@@ -167,7 +167,8 @@ public final class ServiceViewManagerImpl implements ServiceViewManager, Persist
ToolWindow toolWindow = toolWindowManager.registerToolWindow(toolWindowId, builder -> {
builder.contentFactory = new ServiceViewToolWindowFactory();
builder.icon = AllIcons.Toolwindows.ToolWindowServices;
- if (toolWindowId == ToolWindowId.SERVICES) {
+ builder.hideOnEmptyContent = false;
+ if (toolWindowId.equals(ToolWindowId.SERVICES)) {
builder.stripeTitle = () -> {
@NlsSafe String title = toolWindowId;
return title;
@@ -178,9 +179,7 @@ public final class ServiceViewManagerImpl implements ServiceViewManager, Persist
if (active) {
myActiveToolWindowIds.add(toolWindowId);
}
- else {
- toolWindow.setShowStripeButton(false);
- }
+ toolWindow.setShowStripeButton(true);
}
finally {
myRegisteringToolWindowAvailable = false;
@@ -200,7 +199,7 @@ public final class ServiceViewManagerImpl implements ServiceViewManager, Persist
}
if (active) {
- boolean doShow = show && !myActiveToolWindowIds.contains(toolWindowId) && !toolWindow.isShowStripeButton();
+ boolean doShow = show && !myActiveToolWindowIds.contains(toolWindowId);
myActiveToolWindowIds.add(toolWindowId);
if (doShow) {
toolWindow.show();
@@ -209,7 +208,6 @@ public final class ServiceViewManagerImpl implements ServiceViewManager, Persist
else if (myActiveToolWindowIds.remove(toolWindowId)) {
// Hide tool window only if model roots became empty and there were some services shown before update.
toolWindow.hide();
- toolWindow.setShowStripeButton(false);
}
}, ModalityState.NON_MODAL, myProject.getDisposed());
}
diff --git a/platform/lang-impl/src/com/intellij/find/actions/ShowUsagesAction.java b/platform/lang-impl/src/com/intellij/find/actions/ShowUsagesAction.java
index 1d3ae912200c..e40a6427a8c0 100644
--- a/platform/lang-impl/src/com/intellij/find/actions/ShowUsagesAction.java
+++ b/platform/lang-impl/src/com/intellij/find/actions/ShowUsagesAction.java
@@ -1178,18 +1178,14 @@ public class ShowUsagesAction extends AnAction implements PopupAction, HintManag
Dimension toolbarSize = toolbarComponent != null ? toolbarComponent.getPreferredSize() : JBUI.emptySize();
Dimension headerSize = popup.getHeaderPreferredSize();
- var newWidth = 0;
- if(calcMaxWidth(table) < minWidth.get()){
- newWidth = calcMaxWidth(table);
- } else {
- int width = Math.max(d.width, calcMaxWidth(table));
- width = Math.max(Math.max(headerSize.width, width), toolbarSize.width);
- width = Math.max(minWidth.get(), width);
-
- int delta = minWidth.get() == -1 ? 0 : width - minWidth.get();
- newWidth = Math.max(width, d.width + delta);
- minWidth.set(newWidth);
- }
+ int width = Math.max(d.width, calcMaxWidth(table));
+ width = Math.max(Math.max(headerSize.width, width), toolbarSize.width);
+ width = Math.max(minWidth.get(), width);
+
+ int delta = minWidth.get() == -1 ? 0 : width - minWidth.get();
+ int newWidth = Math.max(width, d.width + delta);
+
+ minWidth.set(newWidth);
int minHeight = headerSize.height + toolbarSize.height;
diff --git a/platform/lang-impl/src/com/intellij/find/impl/JComboboÑ…Action.kt b/platform/lang-impl/src/com/intellij/find/impl/JComboboÑ…Action.kt
index 9d0086c47eb5..351cf86a0f15 100644
--- a/platform/lang-impl/src/com/intellij/find/impl/JComboboÑ…Action.kt
+++ b/platform/lang-impl/src/com/intellij/find/impl/JComboboÑ…Action.kt
@@ -46,6 +46,7 @@ class JComboboxAction(val project: Project, val onChanged: () -> Unit) : AnActio
init {
setEditor(BasicComboBoxEditor())
maximumRowCount = 12
+ prototypeDisplayValue = emptyText
isOpaque = false
insertItemAt(emptyText, 0)
selectedItem = FindSettings.getInstance().fileMask ?: emptyText
@@ -77,7 +78,7 @@ class JComboboxAction(val project: Project, val onChanged: () -> Unit) : AnActio
}
}
- override fun getPreferredSize() = Dimension(super.getPreferredSize().width,
+ override fun getPreferredSize() = Dimension(JBUI.scale(120),
ActionToolbar.NAVBAR_MINIMUM_BUTTON_SIZE.height + insets.top + insets.bottom - JBUI.scale(
1))
diff --git a/platform/lang-impl/src/com/intellij/find/impl/TextSearchContributor.kt b/platform/lang-impl/src/com/intellij/find/impl/TextSearchContributor.kt
index 0286546f75b3..9e5b82d9ad67 100644
--- a/platform/lang-impl/src/com/intellij/find/impl/TextSearchContributor.kt
+++ b/platform/lang-impl/src/com/intellij/find/impl/TextSearchContributor.kt
@@ -81,7 +81,7 @@ class TextSearchContributor(val event: AnActionEvent) : WeightedSearchEverywhere
override fun getSearchProviderId() = ID
override fun getGroupName() = FindBundle.message("search.everywhere.group.name")
override fun getSortWeight() = 1500
- override fun showInFindResults() = true
+ override fun showInFindResults() = enabled()
override fun isShownInSeparateTab() = true
override fun fetchWeightedElements(pattern: String,
@@ -189,7 +189,7 @@ class TextSearchContributor(val event: AnActionEvent) : WeightedSearchEverywhere
companion object {
private const val ID = "TextSearchContributor"
- private const val ADVANCED_OPTION_ID = "se.enable.text.search"
+ private const val ADVANCED_OPTION_ID = "se.text.search"
private val SE_TEXT_SELECTED_SCOPE = Key.create<String>("SE_TEXT_SELECTED_SCOPE")
private fun enabled() = AdvancedSettings.getBoolean(ADVANCED_OPTION_ID)
diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/ContributorDefinedTabsCustomizationStrategy.kt b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/ContributorDefinedTabsCustomizationStrategy.kt
new file mode 100644
index 000000000000..e9950f74ed8d
--- /dev/null
+++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/ContributorDefinedTabsCustomizationStrategy.kt
@@ -0,0 +1,9 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.ide.actions.searcheverywhere
+
+class ContributorDefinedTabsCustomizationStrategy: TabsCustomizationStrategy {
+
+ override fun getSeparateTabContributors(contributors: List<SearchEverywhereContributor<*>>): List<SearchEverywhereContributor<*>> =
+ contributors.filter { it.isShownInSeparateTab }
+
+} \ No newline at end of file
diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/FixedTabsListCustomizationStrategy.kt b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/FixedTabsListCustomizationStrategy.kt
new file mode 100644
index 000000000000..35064236a9a1
--- /dev/null
+++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/FixedTabsListCustomizationStrategy.kt
@@ -0,0 +1,8 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.ide.actions.searcheverywhere
+abstract class FixedTabsListCustomizationStrategy(private val shownIds: List<String>): TabsCustomizationStrategy {
+
+ override fun getSeparateTabContributors(contributors: List<SearchEverywhereContributor<*>>)
+ : List<SearchEverywhereContributor<*>> =
+ contributors.filter { it.searchProviderId in shownIds && it.isShownInSeparateTab}
+} \ No newline at end of file
diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereHeader.java b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereHeader.java
index e9de4f6e6ebb..8ff4b60aea0a 100644
--- a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereHeader.java
+++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereHeader.java
@@ -4,7 +4,6 @@ package com.intellij.ide.actions.searcheverywhere;
import com.google.common.collect.Lists;
import com.intellij.ide.IdeBundle;
import com.intellij.ide.actions.searcheverywhere.statistics.SearchEverywhereUsageTriggerCollector;
-import com.intellij.ide.ui.search.SearchEverywhereTabsCustomization;
import com.intellij.ide.util.ElementsChooser;
import com.intellij.ide.util.gotoByName.SearchEverywhereConfiguration;
import com.intellij.ide.util.scopeChooser.ScopeDescriptor;
@@ -266,19 +265,16 @@ public class SearchEverywhereHeader {
res.add(allTab);
}
- Map<String, ? extends SearchEverywhereContributor<?>> contributorsMap =
- ContainerUtil.map2Map(contributors, c -> Pair.create(c.getSearchProviderId(), c));
-
- SearchEverywhereTabsCustomization.getInstance().getContributorsWithTab().forEach(id -> {
- SearchEverywhereContributor<?> contributor = contributorsMap.get(id);
- if (contributor != null) {
+ TabsCustomizationStrategy.getInstance()
+ .getSeparateTabContributors(contributors)
+ .forEach(contributor -> {
SETab tab = createTab(contributor, () -> {
myToolbar.updateActionsImmediately();
myScopeChangedCallback.run();
});
res.add(tab);
- }
- });
+ });
+
return res;
}
diff --git a/platform/lang-impl/src/com/intellij/ide/bookmark/BookmarkOccurrence.kt b/platform/lang-impl/src/com/intellij/ide/bookmark/BookmarkOccurrence.kt
index 587afa74bf36..ce4c7a457d70 100644
--- a/platform/lang-impl/src/com/intellij/ide/bookmark/BookmarkOccurrence.kt
+++ b/platform/lang-impl/src/com/intellij/ide/bookmark/BookmarkOccurrence.kt
@@ -51,7 +51,8 @@ class BookmarkOccurrence internal constructor(
companion object {
private fun manager(project: Project) = BookmarksManager.getInstance(project) as? BookmarksManagerImpl
- private val cyclic
+
+ val cyclic
get() = Registry.`is`("ide.bookmark.occurrence.cyclic.iteration.allowed", false)
fun firstFileBookmark(project: Project) = first(project) { it.bookmark is FileBookmark }
diff --git a/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkInEditor.kt b/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkInEditor.kt
index 951da0b35c90..bf836ab618bd 100644
--- a/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkInEditor.kt
+++ b/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkInEditor.kt
@@ -1,7 +1,8 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ide.bookmark.actions
import com.intellij.ide.bookmark.BookmarkBundle.messagePointer
+import com.intellij.ide.bookmark.BookmarkOccurrence
import com.intellij.ide.bookmark.BookmarksManager
import com.intellij.ide.bookmark.LineBookmark
import com.intellij.openapi.actionSystem.CommonDataKeys
@@ -55,9 +56,10 @@ private class NextBookmarkInEditor(val forward: Boolean) : EditorActionHandler()
if (bookmark.line < line) return bookmark
}
}
- // cyclic selection
- val bookmark = bookmarks[0]
- if (bookmark.line != line) return bookmark
+ if (BookmarkOccurrence.cyclic) {
+ val bookmark = bookmarks[0]
+ if (bookmark.line != line) return bookmark
+ }
}
return null
}
diff --git a/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkService.kt b/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkService.kt
index 81fcf162deb5..837566a01475 100644
--- a/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkService.kt
+++ b/platform/lang-impl/src/com/intellij/ide/bookmark/actions/NextBookmarkService.kt
@@ -1,9 +1,10 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ide.bookmark.actions
import com.intellij.ide.bookmark.BookmarkBundle.messagePointer
import com.intellij.ide.bookmark.Bookmark
import com.intellij.ide.bookmark.BookmarkGroup
+import com.intellij.ide.bookmark.BookmarkOccurrence
import com.intellij.ide.bookmark.BookmarksListener
import com.intellij.ide.bookmark.BookmarksManager
import com.intellij.ide.bookmark.LineBookmark
@@ -65,8 +66,11 @@ internal class NextBookmarkService(private val project: Project) : BookmarksList
fun next(forward: Boolean, bookmark: LineBookmark?): LineBookmark? {
val bookmarks = getCachedBookmarks().ifEmpty { return null }
- bookmark ?: return if (forward) bookmarks.first() else bookmarks.last()
- return bookmarks.getOrNull(next(forward, bookmarks.binarySearch(bookmark, this)))
+ if (bookmark != null) {
+ val next = bookmarks.getOrNull(next(forward, bookmarks.binarySearch(bookmark, this)))
+ if (next != null || !BookmarkOccurrence.cyclic) return next
+ }
+ return if (forward) bookmarks.first() else bookmarks.last()
}
init {
diff --git a/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserCombo.java b/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserCombo.java
index 4808a3601a0f..1e36c2e5c0b8 100644
--- a/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserCombo.java
+++ b/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserCombo.java
@@ -59,6 +59,8 @@ public class ScopeChooserCombo extends ComboboxWithBrowseButton implements Dispo
private Condition<? super ScopeDescriptor> myScopeFilter;
private BrowseListener myBrowseListener;
+ private SearchScope preselectedScope;
+
public ScopeChooserCombo() {
super(new MyComboBox());
}
@@ -106,6 +108,23 @@ public class ScopeChooserCombo extends ComboboxWithBrowseButton implements Dispo
combo.setRenderer(createDefaultRenderer());
combo.setSwingPopup(false);
+ if (selection != null) {
+ var provider = PredefinedSearchScopeProvider.getInstance();
+ var scopes = provider.getPredefinedScopes(project,
+ null,
+ suggestSearchInLibs,
+ prevSearchWholeFiles,
+ false,
+ false,
+ false);
+ for (SearchScope s : scopes) {
+ if (selection.equals(s.getDisplayName())) {
+ preselectedScope = s;
+ break;
+ }
+ }
+ }
+
return rebuildModelAndSelectScopeOnSuccess(selection);
}
@@ -230,6 +249,7 @@ public class ScopeChooserCombo extends ComboboxWithBrowseButton implements Dispo
.onSuccess(__ -> {
getComboBox().setModel(model);
selectItem(selection);
+ preselectedScope = null;
})
);
}
@@ -276,17 +296,30 @@ public class ScopeChooserCombo extends ComboboxWithBrowseButton implements Dispo
@Nullable
public SearchScope getSelectedScope() {
ScopeDescriptor item = (ScopeDescriptor)getComboBox().getSelectedItem();
- return item == null ? null : item.getScope();
+ return item == null ? preselectedScope : item.getScope();
}
public @Nullable @Nls String getSelectedScopeName() {
ScopeDescriptor item = (ScopeDescriptor)getComboBox().getSelectedItem();
- return item == null ? null : item.getDisplayName();
+ if (item == null) {
+ return preselectedScope == null ? null : preselectedScope.getDisplayName();
+ }
+ return item.getDisplayName();
}
public @Nullable @NonNls String getSelectedScopeId() {
ScopeDescriptor item = (ScopeDescriptor)getComboBox().getSelectedItem();
- String scopeName = item != null ? item.getDisplayName() : null;
+ String scopeName;
+ if (item != null) {
+ scopeName = item.getDisplayName();
+ }
+ else {
+ if (preselectedScope != null) {
+ scopeName = preselectedScope.getDisplayName();
+ } else {
+ scopeName = null;
+ }
+ }
return scopeName != null ? ScopeIdMapper.getInstance().getScopeSerializationId(scopeName) : null;
}
diff --git a/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java b/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java
index 840bacd53359..6e85888d1ccc 100644
--- a/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java
+++ b/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java
@@ -18,6 +18,7 @@ import com.intellij.openapi.vfs.newvfs.ManagingFS;
import com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl;
import com.intellij.psi.search.FilenameIndex;
import com.intellij.util.ThrowableRunnable;
+import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.indexing.impl.storage.DefaultIndexStorageLayout;
import com.intellij.util.indexing.impl.storage.FileBasedIndexLayoutSettings;
import com.intellij.util.io.DataOutputStream;
@@ -219,8 +220,8 @@ final class FileBasedIndexDataInitialization extends IndexDataInitializer<IndexC
}
}
+ boolean dropFilenameIndex = Registry.is("indexing.filename.over.vfs") && indicesToDrop.contains(FilenameIndex.NAME.getName());
if (!exceptionThrown) {
- boolean dropFilenameIndex = Registry.is("indexing.filename.over.vfs") && indicesToDrop.contains(FilenameIndex.NAME.getName());
for (ID<?, ?> key : ids) {
if (dropFilenameIndex && key == FilenameIndex.NAME) continue;
indicesToDrop.remove(key.getName());
@@ -228,7 +229,9 @@ final class FileBasedIndexDataInitialization extends IndexDataInitializer<IndexC
}
if (!indicesToDrop.isEmpty()) {
- LOG.info("Dropping indices:" + String.join(",", indicesToDrop));
+ Collection<String> filtered = !dropFilenameIndex ? indicesToDrop :
+ ContainerUtil.filter(indicesToDrop, o -> !FilenameIndex.NAME.getName().equals(o));
+ if (!filtered.isEmpty()) LOG.info("Dropping indices:" + String.join(",", filtered));
for (String s : indicesToDrop) {
try {
FileUtil.deleteWithRenaming(IndexInfrastructure.getFileBasedIndexRootDir(s).toFile());
diff --git a/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexImpl.java b/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexImpl.java
index a336b9f20813..352418c88cb2 100644
--- a/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexImpl.java
+++ b/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexImpl.java
@@ -811,9 +811,7 @@ public final class FileBasedIndexImpl extends FileBasedIndexEx {
if (!ActionUtil.isDumbMode(project) || getCurrentDumbModeAccessType_NoDumbChecks() == null) {
forceUpdate(project, filter, restrictedFile);
}
- if (!areUnsavedDocumentsIndexed(indexId)) { // todo: check scope ?
- indexUnsavedDocuments(indexId, project, filter, restrictedFile);
- }
+ indexUnsavedDocuments(indexId, project, filter, restrictedFile);
}
catch (RuntimeException e) {
final Throwable cause = e.getCause();
@@ -842,10 +840,6 @@ public final class FileBasedIndexImpl extends FileBasedIndexEx {
return super.processAllKeys(indexId, processor, scope, idFilter);
}
- private boolean areUnsavedDocumentsIndexed(@NotNull ID<?, ?> indexId) {
- return myUpToDateIndicesForUnsavedOrTransactedDocuments.contains(indexId);
- }
-
private static void handleDumbMode(@Nullable Project project) throws IndexNotReadyException {
ProgressManager.checkCanceled();
throw IndexNotReadyException.create(project == null ? null : DumbServiceImpl.getInstance(project).getDumbModeStartTrace());
diff --git a/platform/lang-impl/testSources/com/intellij/ide/actions/searcheverywhere/HeaderTabsTest.kt b/platform/lang-impl/testSources/com/intellij/ide/actions/searcheverywhere/HeaderTabsTest.kt
new file mode 100644
index 000000000000..3009a6a59aa9
--- /dev/null
+++ b/platform/lang-impl/testSources/com/intellij/ide/actions/searcheverywhere/HeaderTabsTest.kt
@@ -0,0 +1,70 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.ide.actions.searcheverywhere
+
+import com.intellij.openapi.progress.ProgressIndicator
+import com.intellij.util.Processor
+import org.junit.Assert
+import org.junit.Test
+import javax.swing.JPanel
+import javax.swing.ListCellRenderer
+
+class HeaderTabsTest {
+
+ @Test
+ fun contributorDefinedStrategyTest() {
+ ContributorDefinedTabsCustomizationStrategy().doTest(
+ mapOf(
+ emptyList<Pair<String, Boolean>>() to emptyList(),
+ listOf("c1" to true, "c2" to true, "c3" to false, "c4" to true, "c5" to false) to listOf("c1", "c2", "c4"),
+ listOf("c1" to false, "c2" to false, "c3" to false, "c4" to false, "c5" to false) to emptyList()
+ )
+ )
+ }
+
+ @Test
+ fun fixedListDefinedStrategyTest() {
+ createFixedListStrategy(listOf("c1", "c2", "c5")).doTest(
+ mapOf(
+ emptyList<Pair<String, Boolean>>() to emptyList(),
+ listOf("c1" to true, "c2" to true, "c3" to false, "c4" to true, "c5" to false) to listOf("c1", "c2"),
+ listOf("c1" to false, "c2" to false, "c3" to false, "c4" to false, "c5" to false) to emptyList()
+ )
+ )
+
+ createFixedListStrategy(emptyList()).doTest(
+ mapOf(
+ emptyList<Pair<String, Boolean>>() to emptyList(),
+ listOf("c1" to true, "c2" to true, "c3" to false, "c4" to true, "c5" to false) to emptyList(),
+ listOf("c1" to false, "c2" to false, "c3" to false, "c4" to false, "c5" to false) to emptyList()
+ )
+ )
+ }
+
+ private fun createFixedListStrategy(ids: List<String>): TabsCustomizationStrategy {
+ return object : FixedTabsListCustomizationStrategy(ids) {}
+ }
+
+ private fun TabsCustomizationStrategy.doTest(map: Map<List<Pair<String, Boolean>>, List<String>>) {
+ map.forEach { (contributors, expected) ->
+ val actual = contributors
+ .map { createDumbContributor(it.first, it.second) }
+ .let { getSeparateTabContributors(it) }
+ .map { it.searchProviderId }
+
+ Assert.assertEquals(expected, actual)
+ }
+ }
+
+ private fun createDumbContributor(id: String, showTab: Boolean): SearchEverywhereContributor<Unit> =
+ object : SearchEverywhereContributor<Unit> {
+ override fun getSearchProviderId(): String = id
+ override fun getGroupName(): String = id
+ override fun getSortWeight(): Int = 0
+ override fun showInFindResults(): Boolean = false
+ override fun isShownInSeparateTab(): Boolean = showTab
+ override fun getElementsRenderer(): ListCellRenderer<in Unit> = ListCellRenderer { _, _, _, _, _ -> JPanel() }
+ override fun getDataForItem(element: Unit, dataId: String): Any? = null
+ override fun processSelectedItem(selected: Unit, modifiers: Int, searchText: String): Boolean = false
+ override fun fetchElements(pattern: String, progressIndicator: ProgressIndicator, consumer: Processor<in Unit>) {}
+ }
+} \ No newline at end of file
diff --git a/platform/platform-api/resources/messages/IdeBundle.properties b/platform/platform-api/resources/messages/IdeBundle.properties
index accfb717cf5d..97ae99ddd104 100644
--- a/platform/platform-api/resources/messages/IdeBundle.properties
+++ b/platform/platform-api/resources/messages/IdeBundle.properties
@@ -2707,7 +2707,7 @@ project.widget.open=Open...
project.widget.from.vcs=Get from Version Control...
to.create.new.file.tooltip=To create a new file, press <b>{0}</b>. Alternatively, right-click any folder and select <b>New | \\&lt;file type\\&gt;</b>
-general.module.type.description=A basic project that allows working with separate files and compile Java and Kotlin classes.
+general.module.type.description=A basic project that allows working with separate files and compiling Java and Kotlin classes.
main.toolbar.menu.button=Main menu
label.project.wizard.install.plugin=Install Plugin
diff --git a/platform/platform-api/resources/messages/UIBundle.properties b/platform/platform-api/resources/messages/UIBundle.properties
index 70edde9f5665..73e3ba7e5b71 100644
--- a/platform/platform-api/resources/messages/UIBundle.properties
+++ b/platform/platform-api/resources/messages/UIBundle.properties
@@ -277,7 +277,7 @@ label.project.wizard.module.generator.name=New Module
label.project.wizard.module.generator.description=Create new module with predefined language and build system
label.project.wizard.empty.project.generator.name=Empty Project
label.project.wizard.empty.project.generator.description=Create Empty Project
-label.project.wizard.empty.project.generator.full.description=A basic project that allows working with separate files and compile Java and Kotlin classes.
+label.project.wizard.empty.project.generator.full.description=A basic project that allows working with separate files and compiling Java and Kotlin classes.
label.project.wizard.multi.project.generator.name=Multi-module Project
label.project.wizard.multi.project.generator.description=Create Multi-module Project
label.project.wizard.multi.project.generator.full.description=Multi-module project allows creating free-style module structure.\
diff --git a/platform/platform-api/src/com/intellij/ide/ui/search/SearchEverywhereTabsCustomization.kt b/platform/platform-api/src/com/intellij/ide/ui/search/SearchEverywhereTabsCustomization.kt
deleted file mode 100644
index 15e23fac8ef9..000000000000
--- a/platform/platform-api/src/com/intellij/ide/ui/search/SearchEverywhereTabsCustomization.kt
+++ /dev/null
@@ -1,18 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
-package com.intellij.ide.ui.search
-
-import com.intellij.openapi.application.ApplicationManager
-import org.jetbrains.annotations.ApiStatus
-
-@ApiStatus.Internal
-@ApiStatus.Experimental
-interface SearchEverywhereTabsCustomization {
-
- companion object {
- @JvmStatic fun getInstance():SearchEverywhereTabsCustomization =
- ApplicationManager.getApplication().getService(SearchEverywhereTabsCustomization::class.java)
- }
-
- fun getContributorsWithTab(): List<String>
-
-} \ No newline at end of file
diff --git a/platform/platform-api/src/com/intellij/openapi/GitRepositoryInitializer.java b/platform/platform-api/src/com/intellij/openapi/GitRepositoryInitializer.java
index 09af616ce391..1e1caf6fef5a 100644
--- a/platform/platform-api/src/com/intellij/openapi/GitRepositoryInitializer.java
+++ b/platform/platform-api/src/com/intellij/openapi/GitRepositoryInitializer.java
@@ -10,12 +10,19 @@ import org.jetbrains.annotations.Nullable;
/**
* Initializes a Git repository in the specified place.
+ *
+ * @see GitSilentFileAdderProvider#create(Project)
*/
public interface GitRepositoryInitializer {
ExtensionPointName<GitRepositoryInitializer> EP_NAME = ExtensionPointName.create("com.intellij.gitRepositoryInitializer");
@RequiresBackgroundThread
- void initRepository(@NotNull Project project, @NotNull VirtualFile root);
+ default void initRepository(@NotNull Project project, @NotNull VirtualFile root) {
+ initRepository(project, root, false);
+ }
+
+ @RequiresBackgroundThread
+ void initRepository(@NotNull Project project, @NotNull VirtualFile root, boolean addFilesToVcs);
@Nullable
static GitRepositoryInitializer getInstance() {
diff --git a/platform/platform-api/src/com/intellij/openapi/GitSilentFileAdder.java b/platform/platform-api/src/com/intellij/openapi/GitSilentFileAdder.java
new file mode 100644
index 000000000000..3a01ec4979fe
--- /dev/null
+++ b/platform/platform-api/src/com/intellij/openapi/GitSilentFileAdder.java
@@ -0,0 +1,64 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.openapi;
+
+import com.intellij.openapi.vfs.VirtualFile;
+import org.jetbrains.annotations.ApiStatus;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.SystemIndependent;
+
+import java.io.File;
+import java.nio.file.Path;
+
+/**
+ * To be used in async Project initialization tasks to add files silently,
+ * preventing triggering of 'add new files to vcs' notifications/dialogs
+ * by {@link com.intellij.openapi.vcs.VcsVFSListener}.
+ *
+ * @see GitRepositoryInitializer
+ * @see com.intellij.openapi.vcs.VcsFileListenerContextHelper
+ */
+@ApiStatus.Internal
+public interface GitSilentFileAdder {
+ /**
+ * Schedule file to be added into vcs silently
+ * <p>
+ * Method should be called before firing the corresponding VFS event.
+ * Meaning, inside the same write command or before VFS refresh for externally changed files.
+ */
+ void markFileForAdding(@NotNull @SystemIndependent String path, boolean isDirectory);
+
+ void markFileForAdding(@NotNull VirtualFile file);
+
+ void markFileForAdding(@NotNull File file, boolean isDirectory);
+
+ void markFileForAdding(@NotNull Path path, boolean isDirectory);
+
+ /**
+ * Notify that marked files can be added on pooled thread.
+ * <p>
+ * Should be called after explicit VFS refresh if files are added externally (ex: using NIO).
+ */
+ void finish();
+
+ class Empty implements GitSilentFileAdder {
+ @Override
+ public void markFileForAdding(@NotNull @SystemIndependent String path, boolean isDirectory) {
+ }
+
+ @Override
+ public void markFileForAdding(@NotNull VirtualFile file) {
+ }
+
+ @Override
+ public void markFileForAdding(@NotNull File file, boolean isDirectory) {
+ }
+
+ @Override
+ public void markFileForAdding(@NotNull Path path, boolean isDirectory) {
+ }
+
+ @Override
+ public void finish() {
+ }
+ }
+}
diff --git a/platform/platform-api/src/com/intellij/openapi/GitSilentFileAdderProvider.java b/platform/platform-api/src/com/intellij/openapi/GitSilentFileAdderProvider.java
new file mode 100644
index 000000000000..85fe0d3a4093
--- /dev/null
+++ b/platform/platform-api/src/com/intellij/openapi/GitSilentFileAdderProvider.java
@@ -0,0 +1,18 @@
+// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+package com.intellij.openapi;
+
+import com.intellij.openapi.extensions.ProjectExtensionPointName;
+import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.NotNull;
+
+public interface GitSilentFileAdderProvider {
+ ProjectExtensionPointName<GitSilentFileAdderProvider> EP_NAME = new ProjectExtensionPointName<>("com.intellij.gitSilentFileAdder");
+
+ @NotNull
+ GitSilentFileAdder create();
+
+ @NotNull
+ static GitSilentFileAdder create(@NotNull Project project) {
+ return EP_NAME.extensions(project).findFirst().map(it -> it.create()).orElse(new GitSilentFileAdder.Empty());
+ }
+}
diff --git a/platform/platform-api/src/com/intellij/openapi/MnemonicWrapper.java b/platform/platform-api/src/com/intellij/openapi/MnemonicWrapper.java
index 97a5e90c9824..6b401f2449e1 100644
--- a/platform/platform-api/src/com/intellij/openapi/MnemonicWrapper.java
+++ b/platform/platform-api/src/com/intellij/openapi/MnemonicWrapper.java
@@ -18,7 +18,7 @@ import java.beans.PropertyChangeListener;
abstract class MnemonicWrapper<T extends JComponent> implements Runnable, PropertyChangeListener {
public static MnemonicWrapper<?> getWrapper(Component component) {
- if (component == null || component.getClass().getName().equals("com.intellij.openapi.wm.impl.StripeButton")) {
+ if (component == null || component.getClass().getName().equals("com.intellij.toolWindow.StripeButton")) {
return null;
}
for (PropertyChangeListener listener : component.getPropertyChangeListeners()) {
diff --git a/platform/platform-api/src/com/intellij/util/ui/ListTableModel.java b/platform/platform-api/src/com/intellij/util/ui/ListTableModel.java
index 81f03298c7db..722ae6f087c2 100644
--- a/platform/platform-api/src/com/intellij/util/ui/ListTableModel.java
+++ b/platform/platform-api/src/com/intellij/util/ui/ListTableModel.java
@@ -5,6 +5,7 @@ import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;
import javax.swing.*;
+import javax.swing.event.TableModelEvent;
import java.util.*;
public class ListTableModel<Item> extends TableViewModel<Item> implements EditableModel {
@@ -86,6 +87,11 @@ public class ListTableModel<Item> extends TableViewModel<Item> implements Editab
fireTableDataChanged();
}
+ public void setItem(int rowIndex, @NotNull Item item) {
+ myItems.set(rowIndex, item);
+ fireTableCellUpdated(rowIndex, TableModelEvent.ALL_COLUMNS);
+ }
+
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
return myColumnInfos[columnIndex].valueOf(getItem(rowIndex));
diff --git a/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintRenderer.kt b/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintRenderer.kt
index 60f75b20bf3c..1f7ad13167f2 100644
--- a/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintRenderer.kt
+++ b/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintRenderer.kt
@@ -234,7 +234,7 @@ open class HintRenderer(var text: String?) : EditorCustomElementRenderer {
@JvmStatic
protected fun getFontMetrics(editor: Editor, useEditorFont: Boolean): MyFontMetrics {
- val size = max(1f, editor.colorsScheme.editorFontSize2D - 1f)
+ val size = HintUtil.getSize(editor)
var metrics = editor.getUserData(HINT_FONT_METRICS)
val attributes = editor.colorsScheme.getAttributes(DefaultLanguageHighlighterColors.INLINE_PARAMETER_HINT)
val fontType = attributes.fontType
diff --git a/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintUtil.kt b/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintUtil.kt
new file mode 100644
index 000000000000..661d9bc74cc3
--- /dev/null
+++ b/platform/platform-impl/src/com/intellij/codeInsight/daemon/impl/HintUtil.kt
@@ -0,0 +1,9 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.codeInsight.daemon.impl
+
+import com.intellij.openapi.editor.Editor
+import kotlin.math.max
+
+object HintUtil {
+ fun getSize(editor: Editor): Float = max(1f, editor.colorsScheme.editorFontSize2D - 1f)
+} \ No newline at end of file
diff --git a/platform/platform-impl/src/com/intellij/featureStatistics/fusCollectors/OsDataCollector.kt b/platform/platform-impl/src/com/intellij/featureStatistics/fusCollectors/OsDataCollector.kt
index 5467a4e5f5e8..dd385b19aeb8 100644
--- a/platform/platform-impl/src/com/intellij/featureStatistics/fusCollectors/OsDataCollector.kt
+++ b/platform/platform-impl/src/com/intellij/featureStatistics/fusCollectors/OsDataCollector.kt
@@ -16,6 +16,7 @@ import java.nio.file.Files
import java.nio.file.Path
import java.time.OffsetDateTime
import java.util.*
+import kotlin.io.path.name
import kotlin.streams.asSequence
internal class OsDataCollector : ApplicationUsagesCollector(), AllowedDuringStartupCollector {
@@ -27,17 +28,21 @@ internal class OsDataCollector : ApplicationUsagesCollector(), AllowedDuringStar
"te", "th", "tr", "uk", "ur", "uz", "vi", "yo", "zh", "zu")
@Suppress("SpellCheckingInspection")
+ private val SHELLS = listOf("sh", "ash", "bash", "csh", "dash", "fish", "ksh", "tcsh", "xonsh", "zsh", "nu", "other", "unknown")
+
+ @Suppress("SpellCheckingInspection")
private val DISTROS = listOf(
- "almalinux", "alpine", "amzn", "arch", "bunsenlabs", "centos", "chromeos", "debian", "deepin", "devuan", "elementary", "fedora",
- "galliumos", "garuda", "gentoo", "kali", "linuxmint", "mageia", "manjaro", "neon", "nixos", "ol", "opensuse-leap", "opensuse-tumbleweed",
- "parrot", "pop", "pureos", "raspbian", "rhel", "rocky", "rosa", "sabayon", "slackware", "solus", "ubuntu", "void", "zorin",
- "other", "unknown")
+ "almalinux", "alpine", "amzn", "arch", "bunsenlabs", "centos", "chromeos", "debian", "deepin", "devuan", "elementary",
+ "endeavouros", "fedora", "galliumos", "garuda", "gentoo", "kali", "linuxmint", "mageia", "manjaro", "neon", "nixos", "ol",
+ "opensuse-leap", "opensuse-tumbleweed", "parrot", "pop", "pureos", "raspbian", "rhel", "rocky", "rosa", "sabayon",
+ "slackware", "solus", "ubuntu", "void", "zorin", "other", "unknown")
- private val GROUP = EventLogGroup("system.os", 14)
+ private val GROUP = EventLogGroup("system.os", 16)
private val OS_NAME = String("name", OS_NAMES)
private val OS_LANG = String("locale", LOCALES)
private val OS_TZ = StringValidatedByRegexp("time_zone", "time_zone")
- private val OS = GROUP.registerVarargEvent("os.name", OS_NAME, Version, OS_LANG, OS_TZ)
+ private val OS_SHELL = String("shell", SHELLS)
+ private val OS = GROUP.registerVarargEvent("os.name", OS_NAME, Version, OS_LANG, OS_TZ, OS_SHELL)
@ApiStatus.ScheduledForRemoval(inVersion = "2024.1")
@Suppress("MissingDeprecatedAnnotationOnScheduledForRemovalApi")
private val TIMEZONE = GROUP.registerEvent("os.timezone", StringValidatedByRegexp("value", "time_zone")) // backward compatibility
@@ -49,7 +54,7 @@ internal class OsDataCollector : ApplicationUsagesCollector(), AllowedDuringStar
override fun getMetrics(): Set<MetricEvent> {
val tz = getTimeZone()
val metrics = mutableSetOf(
- OS.metric(OS_NAME.with(getOSName()), Version.with(SystemInfo.OS_VERSION), OS_LANG.with(getLanguage()), OS_TZ.with(tz)),
+ OS.metric(OS_NAME.with(getOSName()), Version.with(SystemInfo.OS_VERSION), OS_LANG.with(getLanguage()), OS_TZ.with(tz), OS_SHELL.with(getShell())),
TIMEZONE.metric(tz))
when {
@@ -80,6 +85,10 @@ internal class OsDataCollector : ApplicationUsagesCollector(), AllowedDuringStar
private fun getTimeZone(): String = OffsetDateTime.now().offset.toString()
+ private fun getShell(): String? =
+ if (SystemInfo.isWindows) null
+ else SHELLS.coerce(runCatching { System.getenv("SHELL")?.let { Path.of(it).name } }.getOrNull())
+
// https://www.freedesktop.org/software/systemd/man/os-release.html
private fun getReleaseData(): Pair<String, String?> =
try {
@@ -89,11 +98,7 @@ internal class OsDataCollector : ApplicationUsagesCollector(), AllowedDuringStar
.map { it.split('=') }
.filter { it.size == 2 && it[0] in fields }
.associate { it[0] to it[1].trim('"') }
- val distro = when (val id = values["ID"]) {
- null -> "unknown"
- in DISTROS -> id
- else -> "other"
- }
+ val distro = DISTROS.coerce(values["ID"])
distro to values["VERSION_ID"]
}
}
@@ -109,4 +114,11 @@ internal class OsDataCollector : ApplicationUsagesCollector(), AllowedDuringStar
catch(e: IOException) {
false
}
+
+ private fun List<String>.coerce(value: String?): String =
+ when (value) {
+ null -> "unknown"
+ in this -> value
+ else -> "other"
+ }
}
diff --git a/platform/platform-impl/src/com/intellij/ide/CommandLineProcessor.java b/platform/platform-impl/src/com/intellij/ide/CommandLineProcessor.java
index d81d3f500246..c9a3fec987c9 100644
--- a/platform/platform-impl/src/com/intellij/ide/CommandLineProcessor.java
+++ b/platform/platform-impl/src/com/intellij/ide/CommandLineProcessor.java
@@ -72,7 +72,7 @@ public final class CommandLineProcessor {
if (!LightEditUtil.isForceOpenInLightEditMode()) {
OpenProjectTask options = PlatformProjectOpenProcessor.createOptionsToOpenDotIdeaOrCreateNewIfNotExists(file, null);
// do not check for .ipr files in the specified directory (@develar: it is existing behaviour, I am not fully sure that it is correct)
- ProjectUtil.FORCE_CHECK_DIRECTORY_KEY.set(options, Boolean.TRUE);
+ ProjectUtil.PREVENT_IPR_LOOKUP_KEY.set(options, Boolean.TRUE);
OpenResult openResult = ProjectUtil.tryOpenOrImport(file, options);
if (openResult instanceof OpenResult.Success) {
project = ((OpenResult.Success)openResult).getProject();
diff --git a/platform/platform-impl/src/com/intellij/ide/IdeTooltipManager.java b/platform/platform-impl/src/com/intellij/ide/IdeTooltipManager.java
index d0e3ee3ccce4..4f41ed1e1cb3 100644
--- a/platform/platform-impl/src/com/intellij/ide/IdeTooltipManager.java
+++ b/platform/platform-impl/src/com/intellij/ide/IdeTooltipManager.java
@@ -705,7 +705,7 @@ public class IdeTooltipManager implements Disposable, AWTEventListener {
JLayeredPane lp = layeredPane;
if (lp == null) {
JRootPane rootPane = UIUtil.getRootPane(this);
- if (rootPane != null) {
+ if (rootPane != null && rootPane.getSize().width > 0) {
lp = rootPane.getLayeredPane();
}
}
diff --git a/platform/platform-impl/src/com/intellij/ide/actionMacro/ActionMacroManager.java b/platform/platform-impl/src/com/intellij/ide/actionMacro/ActionMacroManager.java
index e53f24838bd2..c3573656b1f4 100644
--- a/platform/platform-impl/src/com/intellij/ide/actionMacro/ActionMacroManager.java
+++ b/platform/platform-impl/src/com/intellij/ide/actionMacro/ActionMacroManager.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ide.actionMacro;
import com.intellij.icons.AllIcons;
@@ -52,7 +52,6 @@ import java.awt.*;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
-import java.util.List;
import java.util.*;
@State(name = "ActionMacroManager", storages = @Storage("macros.xml"), category = SettingsCategory.UI)
@@ -471,14 +470,12 @@ public final class ActionMacroManager implements PersistentStateComponent<Elemen
// fix references to and icons of renamed macros in the custom actions schema
final CustomActionsSchema customActionsSchema = CustomActionsSchema.getInstance();
- final List<ActionUrl> actions = customActionsSchema.getActions();
- for (final ActionUrl actionUrl : actions) {
+ for (ActionUrl actionUrl : customActionsSchema.getActions()) {
final String newId = renamingMap.get(actionUrl.getComponent());
if (newId != null) {
actionUrl.setComponent(newId);
}
}
- customActionsSchema.setActions(actions);
for (Map.Entry<String, String> entry : renamingMap.entrySet()) {
final String oldId = entry.getKey();
final String path = customActionsSchema.getIconPath(oldId);
diff --git a/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java b/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java
index de431fd548a3..a36fe7754e75 100644
--- a/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java
+++ b/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java
@@ -63,7 +63,7 @@ public final class ProjectUtil extends ProjectUtilCore {
public static final String PROPERTY_PROJECT_PATH = "%s.project.path";
@ApiStatus.Internal
- public static final Key<Boolean> FORCE_CHECK_DIRECTORY_KEY = Key.create("project.util.processor.chooser");
+ public static final Key<Boolean> PREVENT_IPR_LOOKUP_KEY = Key.create("project.util.prevent.ipr.lookup");
@ApiStatus.Internal
public static final Key<Function<List<? extends ProjectOpenProcessor>, ProjectOpenProcessor>> PROCESSOR_CHOOSER_KEY =
@@ -179,7 +179,7 @@ public final class ProjectUtil extends ProjectUtilCore {
return openResult(project, OpenResult.failure());
}
- if (FORCE_CHECK_DIRECTORY_KEY.get(options) == Boolean.TRUE && Files.isDirectory(file)) {
+ if (PREVENT_IPR_LOOKUP_KEY.get(options) != Boolean.TRUE && Files.isDirectory(file)) {
try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(file)) {
for (Path child : directoryStream) {
String childPath = child.toString();
@@ -256,7 +256,7 @@ public final class ProjectUtil extends ProjectUtilCore {
return ProjectManagerEx.getInstanceEx().openProjectAsync(file, options.withRunConfigurators());
}
- if (FORCE_CHECK_DIRECTORY_KEY.get(options) == Boolean.TRUE && Files.isDirectory(file)) {
+ if (PREVENT_IPR_LOOKUP_KEY.get(options) != Boolean.TRUE && Files.isDirectory(file)) {
try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(file)) {
for (Path child : directoryStream) {
String childPath = child.toString();
@@ -768,15 +768,25 @@ public final class ProjectUtil extends ProjectUtilCore {
public static @Nullable Path getProjectFile(@NotNull String name) {
Path projectDir = getProjectPath(name);
- return Files.isDirectory(projectDir.resolve(Project.DIRECTORY_STORE_FOLDER)) ? projectDir : null;
+ return isProjectFile(projectDir) ? projectDir : null;
+ }
+
+ private static boolean isProjectFile(@NotNull Path projectDir) {
+ return Files.isDirectory(projectDir.resolve(Project.DIRECTORY_STORE_FOLDER));
}
public static @Nullable Project openOrCreateProject(@NotNull String name) {
return openOrCreateProject(name, null);
}
- public static @Nullable Project openOrCreateProject(@NotNull String name, @Nullable ProjectCreatedCallback projectCreatedCallback) {
- return ProgressManager.getInstance().computeInNonCancelableSection(() -> openOrCreateProjectInner(name, projectCreatedCallback));
+ public static @Nullable Project openOrCreateProject(@NotNull String name, @Nullable ProjectCreatedCallback projectCreatedCallback) {
+ return openOrCreateProject(name, getProjectPath(name), projectCreatedCallback);
+ }
+
+ public static @Nullable Project openOrCreateProject(@NotNull String name, @NotNull Path file, @Nullable ProjectCreatedCallback projectCreatedCallback) {
+ return ProgressManager.getInstance().computeInNonCancelableSection(() -> {
+ return openOrCreateProjectInner(name, file, projectCreatedCallback);
+ });
}
public interface ProjectCreatedCallback {
@@ -795,7 +805,13 @@ public final class ProjectUtil extends ProjectUtilCore {
}
private static @Nullable Project openOrCreateProjectInner(@NotNull String name, @Nullable ProjectCreatedCallback projectCreatedCallback) {
- Path existingFile = getProjectFile(name);
+ Path file = getProjectPath(name);
+ return openOrCreateProjectInner(name, file, projectCreatedCallback);
+ }
+
+ @Nullable
+ private static Project openOrCreateProjectInner(@NotNull String name, @NotNull Path file, @Nullable ProjectCreatedCallback projectCreatedCallback) {
+ Path existingFile = isProjectFile(file) ? file : null;
if (existingFile != null) {
Project[] openProjects = ProjectManager.getInstance().getOpenProjects();
for (Project p : openProjects) {
@@ -807,7 +823,6 @@ public final class ProjectUtil extends ProjectUtilCore {
return ProjectManagerEx.getInstanceEx().openProject(existingFile, new OpenProjectTask().withRunConfigurators());
}
- Path file = getProjectPath(name);
boolean created;
try {
created = (!Files.exists(file) && Files.createDirectories(file) != null) || Files.isDirectory(file);
@@ -825,7 +840,7 @@ public final class ProjectUtil extends ProjectUtilCore {
projectCreatedCallback.projectCreated(project);
}
saveAndDisposeProject(project);
- projectFile = getProjectFile(name);
+ projectFile = file;
}
}
if (projectFile == null) return null;
diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/InstalledPluginsTableModel.java b/platform/platform-impl/src/com/intellij/ide/plugins/InstalledPluginsTableModel.java
index d05622504565..cdd0fa0eb608 100644
--- a/platform/platform-impl/src/com/intellij/ide/plugins/InstalledPluginsTableModel.java
+++ b/platform/platform-impl/src/com/intellij/ide/plugins/InstalledPluginsTableModel.java
@@ -89,12 +89,13 @@ public class InstalledPluginsTableModel {
(descriptor, pair) -> {
});
+ Map<PluginId, IdeaPluginDescriptorImpl> pluginIdMap = PluginManagerCore.buildPluginIdMap();
List<IdeaPluginDescriptorImpl> impls = descriptors.stream()
- .filter(IdeaPluginDescriptorImpl.class::isInstance)
- .map(IdeaPluginDescriptorImpl.class::cast)
+ .map(descriptor -> descriptor instanceof IdeaPluginDescriptorImpl ?
+ (IdeaPluginDescriptorImpl)descriptor :
+ findByPluginId(descriptor.getPluginId(), pluginIdMap))
.collect(Collectors.toCollection(ArrayList::new));
- Map<PluginId, IdeaPluginDescriptorImpl> pluginIdMap = PluginManagerCore.buildPluginIdMap();
List<IdeaPluginDescriptorImpl> descriptorsToUpdate = action.isEnable() ?
getDependenciesToEnable(impls, tempEnabled, pluginIdMap) :
getDependentsToDisable(impls, tempEnabled, pluginIdMap);
@@ -116,6 +117,12 @@ public class InstalledPluginsTableModel {
updatePluginDependencies(pluginIdMap);
}
+ private static @NotNull IdeaPluginDescriptorImpl findByPluginId(@NotNull PluginId pluginId,
+ @NotNull Map<PluginId, IdeaPluginDescriptorImpl> pluginIdMap) {
+ return Objects.requireNonNull(pluginIdMap.get(pluginId),
+ "'" + pluginId + "' not found");
+ }
+
private static void setNewEnabled(@NotNull Collection<? extends IdeaPluginDescriptor> descriptors,
@NotNull Map<PluginId, PluginEnabledState> enabledMap,
@NotNull PluginEnableDisableAction action,
diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/PluginInstaller.java b/platform/platform-impl/src/com/intellij/ide/plugins/PluginInstaller.java
index 355ca7c5d321..38ffbaaf359e 100644
--- a/platform/platform-impl/src/com/intellij/ide/plugins/PluginInstaller.java
+++ b/platform/platform-impl/src/com/intellij/ide/plugins/PluginInstaller.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ide.plugins;
import com.intellij.CommonBundle;
@@ -88,7 +88,8 @@ public final class PluginInstaller {
return false;
}
- private static void uninstallAfterRestart(@NotNull Path pluginPath) throws IOException {
+ @ApiStatus.Internal
+ public static void uninstallAfterRestart(@NotNull Path pluginPath) throws IOException {
addActionCommand(new DeleteCommand(pluginPath));
}
@@ -97,7 +98,8 @@ public final class PluginInstaller {
boolean isUpdate) {
boolean uninstalledWithoutRestart = true;
if (pluginDescriptor.isEnabled()) {
- DynamicPlugins.UnloadPluginOptions options = new DynamicPlugins.UnloadPluginOptions().withDisable(false)
+ DynamicPlugins.UnloadPluginOptions options = new DynamicPlugins.UnloadPluginOptions()
+ .withDisable(false)
.withUpdate(isUpdate)
.withWaitForClassloaderUnload(true);
@@ -395,7 +397,8 @@ public final class PluginInstaller {
return false;
}
- return DynamicPlugins.INSTANCE.loadPlugin(targetDescriptor);
+ return PluginEnabler.HEADLESS.isDisabled(targetDescriptor.getPluginId()) ||
+ DynamicPlugins.INSTANCE.loadPlugin(targetDescriptor);
}
private static @NotNull Set<String> findNotInstalledPluginDependencies(@NotNull List<? extends IdeaPluginDependency> dependencies,
diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.java b/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.java
index 4aeef6508ad7..5d15dcf82848 100644
--- a/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.java
+++ b/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.java
@@ -73,7 +73,7 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
public boolean needRestart;
public boolean createShutdownCallback = true;
- private boolean myInstallsRequiringRestart;
+
private final List<PluginDetailsPageComponent> myDetailPanels = new ArrayList<>();
private final @Nullable StatusBarEx myStatusBar;
@@ -138,8 +138,18 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
myDiff.remove(pluginDescriptor);
PluginId pluginId = pluginDescriptor.getPluginId();
- if (!PluginInstaller.uninstallDynamicPlugin(parent, pluginDescriptor, false)) {
+ if (!needRestart) {
+ needRestart = !PluginInstaller.uninstallDynamicPlugin(parent, pluginDescriptor, false);
+ }
+
+ if (needRestart) {
uninstallsRequiringRestart.add(pluginId);
+ try {
+ PluginInstaller.uninstallAfterRestart(pluginDescriptor.getPluginPath());
+ }
+ catch (IOException e) {
+ LOG.error(e);
+ }
}
else {
getEnabledMap().remove(pluginId);
@@ -150,25 +160,21 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
}
}
- boolean installsRequiringRestart = myInstallsRequiringRestart;
- List<PluginId> dynamicPluginsRequiringRestart = new ArrayList<>();
-
for (PendingDynamicPluginInstall pendingPluginInstall : myDynamicPluginsToInstall.values()) {
PluginId pluginId = pendingPluginInstall.getPluginDescriptor().getPluginId();
- if (!uninstallsRequiringRestart.contains(pluginId)) {
+ if (!needRestart &&
+ !uninstallsRequiringRestart.contains(pluginId)) {
InstalledPluginsState.getInstance().trackPluginInstallation(() -> {
- if (!PluginInstaller.installAndLoadDynamicPlugin(pendingPluginInstall.getFile(),
- parent,
- pendingPluginInstall.getPluginDescriptor())) {
- dynamicPluginsRequiringRestart.add(pluginId);
- }
+ needRestart = !PluginInstaller.installAndLoadDynamicPlugin(pendingPluginInstall.getFile(),
+ parent,
+ pendingPluginInstall.getPluginDescriptor());
});
}
- else {
+
+ if (needRestart) {
try {
PluginInstaller.installAfterRestart(pendingPluginInstall.getFile(), !Registry.is("ide.plugins.keep.archive", true),
null, pendingPluginInstall.getPluginDescriptor());
- installsRequiringRestart = true;
}
catch (IOException e) {
LOG.error(e);
@@ -176,21 +182,21 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
}
}
+ if (needRestart) {
+ InstalledPluginsState.getInstance().setRestartRequired(true);
+ }
+
myDynamicPluginsToInstall.clear();
myPluginsToRemoveOnCancel.clear();
- boolean enableDisableAppliedWithoutRestart = applyEnableDisablePlugins(pluginEnabler, parent);
+ needRestart |= !applyEnableDisablePlugins(pluginEnabler, parent);
myDynamicPluginsToUninstall.clear();
myDiff.clear();
- boolean changesAppliedWithoutRestart = enableDisableAppliedWithoutRestart &&
- uninstallsRequiringRestart.isEmpty() &&
- !installsRequiringRestart &&
- dynamicPluginsRequiringRestart.isEmpty();
- if (!changesAppliedWithoutRestart) {
+ if (needRestart) {
InstalledPluginsState.getInstance().setRestartRequired(true);
}
- return changesAppliedWithoutRestart;
+ return !needRestart;
}
public void clear(@Nullable JComponent parentComponent) {
@@ -613,10 +619,9 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
info.indicator.cancel();
if (success) {
- needRestart = true;
- myInstallsRequiringRestart |= restartRequired;
+ needRestart |= restartRequired;
}
- if (!success && showErrors) {
+ else if (showErrors) {
Messages.showErrorDialog(getProject(), IdeBundle.message("plugins.configurable.plugin.installing.failed", descriptor.getName()),
IdeBundle.message("action.download.and.install.plugin"));
}
@@ -717,9 +722,8 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
setEnabled(id, PluginEnabledState.ENABLED);
}
- if (restartNeeded) {
- needRestart = myInstallsRequiringRestart = true;
- }
+ needRestart |= restartNeeded;
+
if (myDownloaded == null) {
return;
}
@@ -991,7 +995,6 @@ public class MyPluginModel extends InstalledPluginsTableModel implements PluginE
void uninstallAndUpdateUi(@NotNull IdeaPluginDescriptor descriptor) {
boolean needRestartForUninstall = performUninstall((IdeaPluginDescriptorImpl)descriptor);
needRestart |= descriptor.isEnabled() && needRestartForUninstall;
- myInstallsRequiringRestart |= needRestartForUninstall;
List<ListPluginComponent> listComponents = myInstalledPluginComponentMap.get(descriptor.getPluginId());
if (listComponents != null) {
diff --git a/platform/platform-impl/src/com/intellij/ide/projectWizard/NewProjectWizardCollector.kt b/platform/platform-impl/src/com/intellij/ide/projectWizard/NewProjectWizardCollector.kt
index 6b4ed7ce6bc7..f919edca7e55 100644
--- a/platform/platform-impl/src/com/intellij/ide/projectWizard/NewProjectWizardCollector.kt
+++ b/platform/platform-impl/src/com/intellij/ide/projectWizard/NewProjectWizardCollector.kt
@@ -5,7 +5,6 @@ import com.intellij.ide.util.projectWizard.WizardContext
import com.intellij.ide.wizard.BuildSystemNewProjectWizardData
import com.intellij.ide.wizard.NewProjectWizardLanguageStep
import com.intellij.ide.wizard.NewProjectWizardStep
-import com.intellij.internal.statistic.StructuredIdeActivity
import com.intellij.internal.statistic.eventLog.EventLogGroup
import com.intellij.internal.statistic.eventLog.FeatureUsageData
import com.intellij.internal.statistic.eventLog.events.*
@@ -20,10 +19,10 @@ class NewProjectWizardCollector : CounterUsagesCollector() {
companion object {
// @formatter:off
- private val GROUP = EventLogGroup("new.project.wizard.interactions", 5)
+ private val GROUP = EventLogGroup("new.project.wizard.interactions", 7)
private val sessionIdField = EventFields.Int("wizard_session_id")
- private val screenNumField = IntEventField("screen")
+ private val screenNumField = EventFields.Int("screen")
private val typedCharsField = IntEventField("typed_chars")
private val hitsField = IntEventField("hits")
private val generatorTypeField = ClassEventField("generator")
@@ -37,86 +36,87 @@ class NewProjectWizardCollector : CounterUsagesCollector() {
private val buildSystemParentField = EventFields.Boolean("build_system_parent")
private val groovyVersionField = EventFields.Version
private val groovySourceTypeField = BoundedStringEventField("groovy_sdk_type", "maven", "local")
+ private val pluginField = EventFields.String("plugin_selected", NewProjectWizardLanguageStep.allLanguages.keys.toList())
//events
- private val activity = GROUP.registerIdeActivity("new_project_wizard", finishEventAdditionalFields = arrayOf(isSucceededField))
-
- private val open = GROUP.registerEvent("wizard.dialog.open", sessionIdField)
- private val screen = GROUP.registerEvent("screen", sessionIdField, screenNumField)
- private val next = GROUP.registerEvent("navigate.next", sessionIdField, inputMaskField)
- private val prev = GROUP.registerEvent("navigate.prev", sessionIdField, inputMaskField)
- private val projectCreated = GROUP.registerEvent("project.created", sessionIdField)
- private val search = GROUP.registerEvent("search", sessionIdField, typedCharsField, hitsField)
- private val generator = GROUP.registerEvent("search", sessionIdField, generatorTypeField)
- private val location = GROUP.registerEvent("project.location.changed", sessionIdField, generatorTypeField)
- private val name = GROUP.registerEvent("project.name.changed", sessionIdField, generatorTypeField)
- private val languageSelected = GROUP.registerEvent("select.language", sessionIdField, languageField)
- private val gitChanged = GROUP.registerEvent("git.changed", sessionIdField)
- private val templateSelected = GROUP.registerEvent("select.custom.template", sessionIdField)
- private val helpNavigation = GROUP.registerEvent("navigate.help", sessionIdField)
- private val buildSystemChangedEvent = GROUP.registerEvent("build.system.changed", sessionIdField, languageField, buildSystemField)
- private val sdkChangedEvent = GROUP.registerVarargEvent("build.system.sdk.changed", sessionIdField, languageField, buildSystemField, buildSystemSdkField)
- private val dslChangedEvent = GROUP.registerVarargEvent("build.system.dsl.changed", sessionIdField, languageField, buildSystemField, buildSystemDslField)
- private val parentChangedEvent = GROUP.registerVarargEvent("build.system.parent.changed", sessionIdField, languageField, buildSystemField, buildSystemParentField)
- private val addSampleCodeChangedEvent = GROUP.registerEvent("build.system.add.sample.code.changed", sessionIdField, languageField, buildSystemField)
- private val moduleNameChangedEvent = GROUP.registerEvent("build.system.module.name.changed", sessionIdField, languageField, buildSystemField)
- private val contentRootChangedEvent = GROUP.registerEvent("build.system.content.root.changed", sessionIdField, languageField, buildSystemField)
- private val moduleFileLocationChangedEvent = GROUP.registerEvent("build.system.module.file.location.changed", sessionIdField, languageField, buildSystemField)
- private val groupIdChangedEvent = GROUP.registerEvent("build.system.group.id.changed", sessionIdField, languageField, buildSystemField)
- private val artifactIdChangedEvent = GROUP.registerEvent("build.system.artifact.id.changed", sessionIdField, languageField, buildSystemField)
- private val versionChangedEvent = GROUP.registerEvent("build.system.version.changed", sessionIdField, languageField, buildSystemField)
- private val groovyLibraryChanged = GROUP.registerEvent("groovy.lib.changed", sessionIdField, groovySourceTypeField, groovyVersionField)
+ private val open = GROUP.registerVarargEvent("wizard.dialog.open", sessionIdField, screenNumField)
+ private val finish = GROUP.registerVarargEvent("wizard.dialog.finish", sessionIdField, screenNumField, isSucceededField, EventFields.DurationMs)
+ private val next = GROUP.registerVarargEvent("navigate.next", sessionIdField, screenNumField, inputMaskField)
+ private val prev = GROUP.registerVarargEvent("navigate.prev", sessionIdField, screenNumField, inputMaskField)
+ private val projectCreated = GROUP.registerVarargEvent("project.created", screenNumField)
+ private val search = GROUP.registerVarargEvent("search", sessionIdField, screenNumField, typedCharsField, hitsField)
+ private val generator = GROUP.registerVarargEvent("generator.selected", sessionIdField, screenNumField, generatorTypeField)
+ private val location = GROUP.registerVarargEvent("project.location.changed", sessionIdField, screenNumField, generatorTypeField)
+ private val name = GROUP.registerVarargEvent("project.name.changed", sessionIdField, screenNumField, generatorTypeField)
+ private val languageSelected = GROUP.registerVarargEvent("select.language", sessionIdField, screenNumField, languageField)
+ private val gitChanged = GROUP.registerVarargEvent("git.changed", screenNumField)
+ private val templateSelected = GROUP.registerVarargEvent("select.custom.template", screenNumField)
+ private val helpNavigation = GROUP.registerVarargEvent("navigate.help", screenNumField)
+ private val buildSystemChangedEvent = GROUP.registerVarargEvent("build.system.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val sdkChangedEvent = GROUP.registerVarargEvent("build.system.sdk.changed", sessionIdField, screenNumField, languageField, buildSystemField, buildSystemSdkField)
+ private val dslChangedEvent = GROUP.registerVarargEvent("build.system.dsl.changed", sessionIdField, screenNumField, languageField, buildSystemField, buildSystemDslField)
+ private val parentChangedEvent = GROUP.registerVarargEvent("build.system.parent.changed", sessionIdField, screenNumField, languageField, buildSystemField, buildSystemParentField)
+ private val addSampleCodeChangedEvent = GROUP.registerVarargEvent("build.system.add.sample.code.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val moduleNameChangedEvent = GROUP.registerVarargEvent("build.system.module.name.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val contentRootChangedEvent = GROUP.registerVarargEvent("build.system.content.root.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val moduleFileLocationChangedEvent = GROUP.registerVarargEvent("build.system.module.file.location.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val groupIdChangedEvent = GROUP.registerVarargEvent("build.system.group.id.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val artifactIdChangedEvent = GROUP.registerVarargEvent("build.system.artifact.id.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val versionChangedEvent = GROUP.registerVarargEvent("build.system.version.changed", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val groovyLibraryChanged = GROUP.registerVarargEvent("groovy.lib.changed", sessionIdField, screenNumField, groovySourceTypeField, groovyVersionField)
+ private val addPlugin = GROUP.registerVarargEvent("add.plugin.clicked", screenNumField)
+ private val pluginSelected = GROUP.registerVarargEvent("plugin.selected", sessionIdField, screenNumField, pluginField)
//finish events
- private val gitFinish = GROUP.registerEvent("create.git.repo", sessionIdField, gitField)
- private val generatorFinished = GROUP.registerEvent("generator.finished", sessionIdField, generatorTypeField)
- private val languageFinished = GROUP.registerEvent("language.finished", sessionIdField, languageField)
- private val buildSystemFinishedEvent = GROUP.registerEvent("build.system.finished", sessionIdField, languageField, buildSystemField)
- private val sdkFinishedEvent = GROUP.registerVarargEvent("build.system.sdk.finished", sessionIdField, languageField, buildSystemField, buildSystemSdkField)
- private val groovyLibraryFinished = GROUP.registerEvent("groovy.lib.finished", sessionIdField, groovySourceTypeField, groovyVersionField)
+ private val gitFinish = GROUP.registerVarargEvent("create.git.repo", sessionIdField, screenNumField, gitField)
+ private val generatorFinished = GROUP.registerVarargEvent("generator.finished", sessionIdField, screenNumField, generatorTypeField)
+ private val languageFinished = GROUP.registerVarargEvent("language.finished", sessionIdField, screenNumField, languageField)
+ private val buildSystemFinishedEvent = GROUP.registerVarargEvent("build.system.finished", sessionIdField, screenNumField, languageField, buildSystemField)
+ private val sdkFinishedEvent = GROUP.registerVarargEvent("build.system.sdk.finished", sessionIdField, screenNumField, languageField, buildSystemField, buildSystemSdkField)
+ private val groovyLibraryFinished = GROUP.registerVarargEvent("groovy.lib.finished", sessionIdField, screenNumField, groovySourceTypeField, groovyVersionField)
//logs
- @JvmStatic fun logStarted(project: Project?) = activity.started(project)
- @JvmStatic fun logScreen(context: WizardContext, screenNumber: Int) = screen.log(context.project, context.sessionId.id, screenNumber)
- @JvmStatic fun logOpen(context: WizardContext) = open.log(context.project, context.sessionId.id)
- @JvmStatic fun logSearchChanged(context: WizardContext, chars: Int, results: Int) = search.log(context.project, context.sessionId.id, min(chars, 10), results)
- @JvmStatic fun logLocationChanged(context: WizardContext, generator: Class<*>) = location.log(context.project, context.sessionId.id, generator)
- @JvmStatic fun logNameChanged(context: WizardContext, generator: Class<*>) = name.log(context.project, context.sessionId.id, generator)
- @JvmStatic fun logLanguageChanged(context: WizardContext, language: String) = languageSelected.log(context.project, context.sessionId.id, language)
- @JvmStatic fun logGitChanged(context: WizardContext) = gitChanged.log(context.project, context.sessionId.id)
- @JvmStatic fun logGeneratorSelected(context: WizardContext, title: Class<*>) = generator.log(context.project, context.sessionId.id, title)
- @JvmStatic fun logCustomTemplateSelected(context: WizardContext) = templateSelected.log(context.project, context.sessionId.id)
- @JvmStatic fun logNext(context: WizardContext, inputMask: Long = -1) = next.log(context.project, context.sessionId.id, inputMask)
- @JvmStatic fun logPrev(context: WizardContext, inputMask: Long = -1) = prev.log(context.project, context.sessionId.id, inputMask)
- @JvmStatic fun logHelpNavigation(context: WizardContext) = helpNavigation.log(context.project, context.sessionId.id)
+ @JvmStatic fun logOpen(context: WizardContext) = open.log(context.project,sessionIdField with context.sessionId.id, screenNumField with context.screen)
+ @JvmStatic fun logFinish(context: WizardContext, success: Boolean, duration: Long) = finish.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, isSucceededField with success, EventFields.DurationMs with duration)
+ @JvmStatic fun logSearchChanged(context: WizardContext, chars: Int, results: Int) = search.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, typedCharsField with min(chars, 10), hitsField with results)
+ @JvmStatic fun logLocationChanged(context: WizardContext, generator: Class<*>) = location.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, generatorTypeField with generator)
+ @JvmStatic fun logNameChanged(context: WizardContext, generator: Class<*>) = name.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, generatorTypeField with generator)
+ @JvmStatic fun logLanguageChanged(context: WizardContext, language: String) = languageSelected.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, languageField with language)
+ @JvmStatic fun logGitChanged(context: WizardContext) = gitChanged.log(context.project,screenNumField with context.screen)
+ @JvmStatic fun logGeneratorSelected(context: WizardContext, title: Class<*>) = generator.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, generatorTypeField with title)
+ @JvmStatic fun logCustomTemplateSelected(context: WizardContext) = templateSelected.log(context.project,screenNumField with context.screen)
+ @JvmStatic fun logNext(context: WizardContext, inputMask: Long = -1) = next.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, inputMaskField with inputMask)
+ @JvmStatic fun logPrev(context: WizardContext, inputMask: Long = -1) = prev.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, inputMaskField with inputMask)
+ @JvmStatic fun logHelpNavigation(context: WizardContext) = helpNavigation.log(context.project,screenNumField with context.screen)
//finish
- @JvmStatic fun logFinished(activity: StructuredIdeActivity, success: Boolean) = activity.finished { listOf(isSucceededField with success)}
- @JvmStatic fun logProjectCreated(project: Project?, context: WizardContext) = projectCreated.log(project, context.sessionId.id)
- @JvmStatic fun logLanguageFinished(context: WizardContext, language: String) = languageFinished.log(context.project, context.sessionId.id, language)
- @JvmStatic fun logGitFinished(context: WizardContext, git: Boolean) = gitFinish.log(context.project, context.sessionId.id, git)
- @JvmStatic fun logGeneratorFinished(context: WizardContext, generator: Class<*>) = generatorFinished.log(context.project, context.sessionId.id, generator)
+ @JvmStatic fun logProjectCreated(project: Project?, context: WizardContext) = projectCreated.log(project,screenNumField with context.screen)
+ @JvmStatic fun logLanguageFinished(context: WizardContext, language: String) = languageFinished.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, languageField with language)
+ @JvmStatic fun logGitFinished(context: WizardContext, git: Boolean) = gitFinish.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, gitField with git)
+ @JvmStatic fun logGeneratorFinished(context: WizardContext, generator: Class<*>) = generatorFinished.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, generatorTypeField with generator)
+ @JvmStatic fun logAddPlugin(context: WizardContext) = addPlugin.log(context.project,screenNumField with context.screen)
+ @JvmStatic fun logPluginSelected(context: WizardContext, plugin: String) = pluginSelected.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, pluginField with plugin)
// @formatter:on
}
object BuildSystem {
// @formatter:off
- fun logBuildSystemChanged(context: WizardContext, language: String, buildSystem: String) = buildSystemChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logBuildSystemFinished(context: WizardContext, language: String, buildSystem: String) = buildSystemFinishedEvent.log(context.project, context.sessionId.id, language, buildSystem)
+ fun logBuildSystemChanged(context: WizardContext, language: String, buildSystem: String) = buildSystemChangedEvent.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logBuildSystemFinished(context: WizardContext, language: String, buildSystem: String) = buildSystemFinishedEvent.log(context.project, sessionIdField with context.sessionId.id,screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
fun logSdkChanged(context: WizardContext, language: String, buildSystem: String, sdk: Sdk?) = logSdkChanged(context, language, buildSystem, sdk?.featureVersion ?: -1)
fun logSdkChanged(context: WizardContext, language: String, buildSystem: String, version: Int) = sdkChangedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemSdkField, version))
fun logSdkFinished(context: WizardContext, language: String, buildSystem: String, sdk: Sdk?) = logSdkFinished(context, language, buildSystem, sdk?.featureVersion ?: -1)
- fun logSdkFinished(context: WizardContext, language: String, buildSystem: String, version: Int) = sdkFinishedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemSdkField, version))
+ fun logSdkFinished(context: WizardContext, language: String, buildSystem: String, version: Int) = sdkFinishedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(screenNumField, context.screen), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemSdkField, version))
fun logDslChanged(context: WizardContext, language: String, buildSystem: String, isUseKotlinDsl: Boolean) = logDslChanged(context, language, buildSystem, if (isUseKotlinDsl) "kotlin" else "groovy")
- fun logDslChanged(context: WizardContext, language: String, buildSystem: String, dsl: String) = dslChangedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemDslField, dsl))
- fun logParentChanged(context: WizardContext, language: String, buildSystem: String, isNone: Boolean) = parentChangedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemParentField, isNone))
- fun logAddSampleCodeChanged(context: WizardContext, language: String, buildSystem: String) = addSampleCodeChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logModuleNameChanged(context: WizardContext, language: String, buildSystem: String) = moduleNameChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logContentRootChanged(context: WizardContext, language: String, buildSystem: String) = contentRootChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logModuleFileLocationChanged(context: WizardContext, language: String, buildSystem: String) = moduleFileLocationChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logGroupIdChanged(context: WizardContext, language: String, buildSystem: String) = groupIdChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logArtifactIdChanged(context: WizardContext, language: String, buildSystem: String) = artifactIdChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
- fun logVersionChanged(context: WizardContext, language: String, buildSystem: String) = versionChangedEvent.log(context.project, context.sessionId.id, language, buildSystem)
+ fun logDslChanged(context: WizardContext, language: String, buildSystem: String, dsl: String) = dslChangedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(screenNumField, context.screen), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemDslField, dsl))
+ fun logParentChanged(context: WizardContext, language: String, buildSystem: String, isNone: Boolean) = parentChangedEvent.log(context.project, EventPair(sessionIdField, context.sessionId.id), EventPair(screenNumField, context.screen), EventPair(languageField, language), EventPair(buildSystemField, buildSystem), EventPair(buildSystemParentField, isNone))
+ fun logAddSampleCodeChanged(context: WizardContext, language: String, buildSystem: String) = addSampleCodeChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logModuleNameChanged(context: WizardContext, language: String, buildSystem: String) = moduleNameChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logContentRootChanged(context: WizardContext, language: String, buildSystem: String) = contentRootChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logModuleFileLocationChanged(context: WizardContext, language: String, buildSystem: String) = moduleFileLocationChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logGroupIdChanged(context: WizardContext, language: String, buildSystem: String) = groupIdChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logArtifactIdChanged(context: WizardContext, language: String, buildSystem: String) = artifactIdChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
+ fun logVersionChanged(context: WizardContext, language: String, buildSystem: String) = versionChangedEvent.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, languageField with language, buildSystemField with buildSystem)
fun <S> S.logBuildSystemChanged() where S: BuildSystemNewProjectWizardData, S: NewProjectWizardStep = logBuildSystemChanged(context, language, buildSystem)
fun <S> S.logBuildSystemFinished() where S: BuildSystemNewProjectWizardData, S: NewProjectWizardStep = logBuildSystemFinished(context, language, buildSystem)
@@ -138,8 +138,8 @@ class NewProjectWizardCollector : CounterUsagesCollector() {
}
object Groovy {
- fun logGroovyLibraryChanged(context: WizardContext, groovyLibrarySource: String, groovyLibraryVersion: String) = groovyLibraryChanged.log(context.project, context.sessionId.id, groovyLibrarySource, groovyLibraryVersion)
- fun logGroovyLibraryFinished(context: WizardContext, groovyLibrarySource: String, groovyLibraryVersion: String) = groovyLibraryFinished.log(context.project, context.sessionId.id, groovyLibrarySource, groovyLibraryVersion)
+ fun logGroovyLibraryChanged(context: WizardContext, groovyLibrarySource: String, groovyLibraryVersion: String) = groovyLibraryChanged.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, groovySourceTypeField with groovyLibrarySource, groovyVersionField with groovyLibraryVersion)
+ fun logGroovyLibraryFinished(context: WizardContext, groovyLibrarySource: String, groovyLibraryVersion: String) = groovyLibraryFinished.log(context.project, sessionIdField with context.sessionId.id, screenNumField with context.screen, groovySourceTypeField with groovyLibrarySource, groovyVersionField with groovyLibraryVersion)
}
private class BoundedStringEventField(name: String, vararg allowedValues: String) : StringEventField(name) {
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/AppearanceConfigurable.kt b/platform/platform-impl/src/com/intellij/ide/ui/AppearanceConfigurable.kt
index 4a8dfb7ebd9c..12377361c58d 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/AppearanceConfigurable.kt
+++ b/platform/platform-impl/src/com/intellij/ide/ui/AppearanceConfigurable.kt
@@ -254,7 +254,7 @@ internal class AppearanceConfigurable : BoundSearchableConfigurable(message("tit
contextHelp(message("checkbox.smooth.scrolling.description"))
})
yield({ checkBox(cdDnDWithAlt) })
- if (IdeFrameDecorator.isCustomDecorationAvailable()) {
+ if (SystemInfo.isWindows && IdeFrameDecorator.isCustomDecorationAvailable()) {
yield({
val overridden = UISettings.isMergeMainMenuWithWindowTitleOverridden
checkBox(cdMergeMainMenuWithWindowTitle)
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/PluginBooleanOptionDescriptor.java b/platform/platform-impl/src/com/intellij/ide/ui/PluginBooleanOptionDescriptor.java
index 251510e1adea..8cce37807f7f 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/PluginBooleanOptionDescriptor.java
+++ b/platform/platform-impl/src/com/intellij/ide/ui/PluginBooleanOptionDescriptor.java
@@ -171,13 +171,11 @@ public final class PluginBooleanOptionDescriptor extends BooleanOptionDescriptio
}
Notification notification = ourPreviousNotification.get();
- if (notification == null) {
- return;
- }
-
- Balloon balloon = notification.getBalloon();
- if (balloon != null && !balloon.isDisposed()) {
- return;
+ if (notification != null) {
+ Balloon balloon = notification.getBalloon();
+ if (balloon != null && !balloon.isDisposed()) {
+ return;
+ }
}
Notification newNotification = UpdateChecker.getNotificationGroupForIdeUpdateResults()
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java b/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java
index 4642c807d817..794c6fd2270a 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java
+++ b/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java
@@ -411,6 +411,11 @@ public final class UITheme {
}
@ApiStatus.Internal
+ public boolean isUnloaded() {
+ return providerClassLoader == null;
+ }
+
+ @ApiStatus.Internal
public void setProviderClassLoader(@Nullable ClassLoader providerClassLoader) {
this.providerClassLoader = providerClassLoader;
}
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomActionsSchema.java b/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomActionsSchema.java
index 3ba50d189e8c..603edb424c14 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomActionsSchema.java
+++ b/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomActionsSchema.java
@@ -144,11 +144,15 @@ public final class CustomActionsSchema implements PersistentStateComponent<Eleme
}
}
+ /**
+ * Mutable list is returned.
+ */
public @NotNull List<ActionUrl> getActions() {
return actions;
}
public void setActions(@NotNull List<ActionUrl> newActions) {
+ assert actions != newActions;
actions.clear();
actions.addAll(newActions);
actions.sort(ActionUrlComparator.INSTANCE);
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomizationUtil.java b/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomizationUtil.java
index 996260e450f3..fe86fd56e630 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomizationUtil.java
+++ b/platform/platform-impl/src/com/intellij/ide/ui/customization/CustomizationUtil.java
@@ -86,8 +86,7 @@ public final class CustomizationUtil {
ActionManager actionManager = ActionManager.getInstance();
final ArrayList<AnAction> reorderedChildren = new ArrayList<>();
ContainerUtil.addAll(reorderedChildren, group.getChildren(e));
- final List<ActionUrl> actions = schema.getActions();
- for (ActionUrl actionUrl : actions) {
+ for (ActionUrl actionUrl : schema.getActions()) {
if (actionUrl.getParentGroup() == null) continue;
if ((actionUrl.getParentGroup().equals(text) ||
actionUrl.getParentGroup().equals(defaultGroupName) ||
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula.theme.json b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula.theme.json
index 956215da07ff..45a4b6263b3e 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula.theme.json
+++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula.theme.json
@@ -162,6 +162,8 @@
"underlinedTabBackground": "#4E5254"
},
+ "Editor.SearchField.background": "#45494A",
+
"FileView.fileIcon": "AllIcons.FileTypes.Unknown",
"Focus.color": "ff0000",
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/intellijlaf.theme.json b/platform/platform-impl/src/com/intellij/ide/ui/laf/intellijlaf.theme.json
index 9e2561927e2a..56a7c21ab6a5 100644
--- a/platform/platform-impl/src/com/intellij/ide/ui/laf/intellijlaf.theme.json
+++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/intellijlaf.theme.json
@@ -251,7 +251,8 @@
"Editor": {
"background": "grey09",
"foreground": "infoPanelForeground",
- "shortcutForeground": "#4274A6"
+ "shortcutForeground": "#4274A6",
+ "SearchField.background" : "contentBackground"
},
"EditorPane": {
diff --git a/platform/platform-impl/src/com/intellij/ide/ui/search/DefaultSearchEverywhereTabsCustomization.kt b/platform/platform-impl/src/com/intellij/ide/ui/search/DefaultSearchEverywhereTabsCustomization.kt
deleted file mode 100644
index 8e446ca5a70d..000000000000
--- a/platform/platform-impl/src/com/intellij/ide/ui/search/DefaultSearchEverywhereTabsCustomization.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
-package com.intellij.ide.ui.search
-
-class DefaultSearchEverywhereTabsCustomization: SearchEverywhereTabsCustomization {
-
- override fun getContributorsWithTab(): List<String> =
- listOf("ClassSearchEverywhereContributor", "FileSearchEverywhereContributor", "SymbolSearchEverywhereContributor",
- "ActionSearchEverywhereContributor", "Vcs.Git")
-
-} \ No newline at end of file
diff --git a/platform/platform-impl/src/com/intellij/ide/wizard/AbstractNewProjectWizardMultiStepWithAddButton.kt b/platform/platform-impl/src/com/intellij/ide/wizard/AbstractNewProjectWizardMultiStepWithAddButton.kt
index c6bd25ed9362..85d016c098bc 100644
--- a/platform/platform-impl/src/com/intellij/ide/wizard/AbstractNewProjectWizardMultiStepWithAddButton.kt
+++ b/platform/platform-impl/src/com/intellij/ide/wizard/AbstractNewProjectWizardMultiStepWithAddButton.kt
@@ -3,6 +3,7 @@ package com.intellij.ide.wizard
import com.intellij.icons.AllIcons
import com.intellij.ide.plugins.PluginManagerConfigurable
+import com.intellij.ide.projectWizard.NewProjectWizardCollector
import com.intellij.openapi.actionSystem.*
import com.intellij.openapi.actionSystem.PlatformCoreDataKeys.CONTEXT_COMPONENT
import com.intellij.openapi.actionSystem.impl.ActionButton
@@ -47,7 +48,8 @@ abstract class AbstractNewProjectWizardMultiStepWithAddButton<S : NewProjectWiza
private inner class AdditionalStepsAction : DumbAwareAction(null, null, AllIcons.General.Add) {
override fun actionPerformed(e: AnActionEvent) {
- val additionalSteps = (additionalStepPlugins.keys - steps.keys).map { OpenMarketPlaceAction(it) }
+ NewProjectWizardCollector.logAddPlugin(context)
+ val additionalSteps = (additionalStepPlugins.keys - steps.keys).sorted().map { OpenMarketPlaceAction(it) }
JBPopupFactory.getInstance().createActionGroupPopup(
UIBundle.message("new.project.wizard.popup.title.install.plugin"), DefaultActionGroup(additionalSteps),
e.dataContext,
@@ -56,16 +58,17 @@ abstract class AbstractNewProjectWizardMultiStepWithAddButton<S : NewProjectWiza
}
}
- private inner class OpenMarketPlaceAction(private val language: String) : DumbAwareAction(Supplier { language }) {
+ private inner class OpenMarketPlaceAction(private val step: String) : DumbAwareAction(Supplier { step }) {
override fun actionPerformed(e: AnActionEvent) {
- val pluginId = PluginId.getId(additionalStepPlugins[language]!!)
+ NewProjectWizardCollector.logPluginSelected(context, step)
+ val pluginId = PluginId.getId(additionalStepPlugins[step]!!)
val component = e.dataContext.getData(CONTEXT_COMPONENT)!!
if (Registry.`is`("new.project.wizard.modal.plugin.install", false)) {
ProgressManager.getInstance().run(InstallPluginTask(setOf(pluginId), ModalityState.stateForComponent(component)))
}
else {
ShowSettingsUtil.getInstance().editConfigurable(null, PluginManagerConfigurable(), Consumer {
- it.openMarketplaceTab("/tag:Languages $language")
+ it.openMarketplaceTab("/tag: \"Programming Language\" $step")
})
}
}
diff --git a/platform/platform-impl/src/com/intellij/ide/wizard/GitNewProjectWizardStep.kt b/platform/platform-impl/src/com/intellij/ide/wizard/GitNewProjectWizardStep.kt
index b37f10c8657c..822939452097 100644
--- a/platform/platform-impl/src/com/intellij/ide/wizard/GitNewProjectWizardStep.kt
+++ b/platform/platform-impl/src/com/intellij/ide/wizard/GitNewProjectWizardStep.kt
@@ -40,7 +40,7 @@ class GitNewProjectWizardStep(
val projectBaseDirectory = LocalFileSystem.getInstance().refreshAndFindFileByNioFile(Path.of(path, name))
if (projectBaseDirectory != null) {
runBackgroundableTask(IdeBundle.message("progress.title.creating.git.repository"), project) {
- GitRepositoryInitializer.getInstance()!!.initRepository(project, projectBaseDirectory)
+ GitRepositoryInitializer.getInstance()!!.initRepository(project, projectBaseDirectory, true)
}
}
}
diff --git a/platform/platform-impl/src/com/intellij/ide/wizard/NewProjectWizardStepPanel.kt b/platform/platform-impl/src/com/intellij/ide/wizard/NewProjectWizardStepPanel.kt
index 0a79f45d9fed..7a9af1f0c538 100644
--- a/platform/platform-impl/src/com/intellij/ide/wizard/NewProjectWizardStepPanel.kt
+++ b/platform/platform-impl/src/com/intellij/ide/wizard/NewProjectWizardStepPanel.kt
@@ -19,10 +19,10 @@ class NewProjectWizardStepPanel(val step: NewProjectWizardStep) {
val component by lazy {
panel {
step.setupUI(this)
- }.apply {
- registerValidators(step.context.disposable)
- withBorder(JBUI.Borders.empty(14, 20))
- setMinimumWidthForAllRowLabels(JBUI.scale(90))
- }
+ }.withVisualPadding(topField = true)
+ .apply {
+ registerValidators(step.context.disposable)
+ setMinimumWidthForAllRowLabels(JBUI.scale(90))
+ }
}
} \ No newline at end of file
diff --git a/platform/platform-impl/src/com/intellij/ide/wizard/UIWizardUtil.kt b/platform/platform-impl/src/com/intellij/ide/wizard/UIWizardUtil.kt
index 6632601e2281..382bea9f684e 100644
--- a/platform/platform-impl/src/com/intellij/ide/wizard/UIWizardUtil.kt
+++ b/platform/platform-impl/src/com/intellij/ide/wizard/UIWizardUtil.kt
@@ -4,12 +4,15 @@
package com.intellij.ide.wizard
import com.intellij.ide.util.projectWizard.WizardContext
+import com.intellij.openapi.application.Experiments
import com.intellij.openapi.project.Project
import com.intellij.openapi.project.ProjectManager
import com.intellij.openapi.ui.DialogPanel
+import com.intellij.ui.IdeBorderFactory
import com.intellij.ui.dsl.builder.DslComponentProperty
import com.intellij.ui.dsl.builder.Panel
import com.intellij.ui.dsl.gridLayout.GridLayout
+import com.intellij.util.ui.JBInsets
import com.intellij.util.ui.UIUtil
import javax.swing.JComponent
import javax.swing.JLabel
@@ -86,4 +89,17 @@ private fun isRowLabel(label: JLabel): Boolean {
private fun JComponent.setMinimumWidth(width: Int) {
minimumSize = minimumSize.apply { this.width = width }
+}
+
+fun DialogPanel.withVisualPadding(topField: Boolean = false): DialogPanel {
+ if (Experiments.getInstance().isFeatureEnabled("new.project.wizard")) {
+ val top = if (topField) 20 else 15
+ border = IdeBorderFactory.createEmptyBorder(JBInsets(top, 20, 20, 20))
+ }
+ else {
+ val top = if (topField) 15 else 5
+ border = IdeBorderFactory.createEmptyBorder(JBInsets(top, 5, 0, 5))
+ }
+
+ return this
} \ No newline at end of file
diff --git a/platform/platform-impl/src/com/intellij/notification/impl/NotificationsToolWindow.kt b/platform/platform-impl/src/com/intellij/notification/impl/NotificationsToolWindow.kt
index b07ab3c0c2ba..b9bce711ede2 100644
--- a/platform/platform-impl/src/com/intellij/notification/impl/NotificationsToolWindow.kt
+++ b/platform/platform-impl/src/com/intellij/notification/impl/NotificationsToolWindow.kt
@@ -2,12 +2,10 @@
package com.intellij.notification.impl
import com.intellij.UtilBundle
-import com.intellij.codeInsight.hint.HintUtil
import com.intellij.icons.AllIcons
import com.intellij.ide.DataManager
import com.intellij.ide.IdeBundle
import com.intellij.ide.ui.LafManagerListener
-import com.intellij.ide.util.PropertiesComponent
import com.intellij.idea.ActionsBundle
import com.intellij.notification.ActionCenter
import com.intellij.notification.EventLog
@@ -20,7 +18,6 @@ import com.intellij.openapi.actionSystem.*
import com.intellij.openapi.actionSystem.impl.ActionButton
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.application.ModalityState
-import com.intellij.openapi.editor.colors.EditorColorsManager
import com.intellij.openapi.options.ShowSettingsUtil
import com.intellij.openapi.project.DumbAware
import com.intellij.openapi.project.DumbAwareAction
@@ -28,7 +25,6 @@ import com.intellij.openapi.project.Project
import com.intellij.openapi.ui.Divider
import com.intellij.openapi.ui.NullableComponent
import com.intellij.openapi.ui.OnePixelDivider
-import com.intellij.openapi.ui.ex.MultiLineLabel
import com.intellij.openapi.ui.popup.JBPopup
import com.intellij.openapi.ui.popup.JBPopupListener
import com.intellij.openapi.ui.popup.LightweightWindowEvent
@@ -464,8 +460,6 @@ private class NotificationGroupComponent(private val myMainContent: Notification
private val myTimeComponents = ArrayList<JLabel>()
private val myTimeAlarm = Alarm(myProject)
- private val mySuggestionGotItPanel = JPanel(BorderLayout())
-
private lateinit var myClearCallback: (List<Notification>) -> Unit
private lateinit var myRemoveCallback: Consumer<Notification>
@@ -481,28 +475,6 @@ private class NotificationGroupComponent(private val myMainContent: Notification
myTitle.foreground = NotificationComponent.INFO_COLOR
if (mySuggestionType) {
- mySuggestionGotItPanel.background = JBColor.lazy {
- EditorColorsManager.getInstance().globalScheme.getColor(HintUtil.PROMOTION_PANE_KEY)
- }
- mySuggestionGotItPanel.isVisible = false
- mySuggestionGotItPanel.border = JBUI.Borders.customLineBottom(JBColor.border())
- add(mySuggestionGotItPanel, BorderLayout.NORTH)
-
- val gotItTitle = MultiLineLabel(IdeBundle.message("notifications.toolwindow.suggestion.gotit.title"))
- gotItTitle.mediumFontFunction()
- gotItTitle.border = JBUI.Borders.empty(7, 12, 7, 0)
- mySuggestionGotItPanel.add(gotItTitle, BorderLayout.WEST)
-
- val panel = JPanel(BorderLayout())
- panel.isOpaque = false
- panel.border = JBUI.Borders.empty(7, 0, 0, 12)
- mySuggestionGotItPanel.add(panel, BorderLayout.EAST)
- panel.add(LinkLabel<Any>(IdeBundle.message("notifications.toolwindow.suggestion.gotit.link"), null) { _, _ ->
- mySuggestionGotItPanel.isVisible = false
- myTitle.isVisible = true
- myMainContent.fullRepaint()
- }, BorderLayout.NORTH)
-
myTitle.border = JBUI.Borders.emptyLeft(10)
mainPanel.add(myTitle, BorderLayout.NORTH)
}
@@ -566,12 +538,6 @@ private class NotificationGroupComponent(private val myMainContent: Notification
updateLayout()
myEventHandler.add(component)
- if (mySuggestionType && !PropertiesComponent.getInstance().getBoolean("notification.suggestion.dont.show.gotit")) {
- PropertiesComponent.getInstance().setValue("notification.suggestion.dont.show.gotit", true)
- mySuggestionGotItPanel.isVisible = true
- myTitle.isVisible = false
- }
-
updateContent()
if (mySuggestionType) {
diff --git a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButton.java b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButton.java
index edfb0066de7e..f2beb310a018 100644
--- a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButton.java
+++ b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionButton.java
@@ -242,6 +242,9 @@ public class ActionButton extends JComponent implements ActionButtonComponent, A
myPresentation.removePropertyChangeListener(myPresentationListener);
myPresentationListener = null;
}
+ if (myMouseDown) {
+ ourGlobalMouseDown = false;
+ }
myRollover = false;
myMouseDown = false;
HelpTooltip.dispose(this);
diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java
index 9ebfbb5d52a7..8a19eb790365 100644
--- a/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java
+++ b/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java
@@ -272,6 +272,7 @@ public final class EditorColorsManagerImpl extends EditorColorsManager implement
for (UIThemeBasedLookAndFeelInfo laf : UiThemeProviderListManager.getInstance().getLaFs()) {
UITheme theme = laf.getTheme();
+ if (theme.isUnloaded()) continue;
String path = theme.getEditorScheme();
if (path != null) {
mySchemeManager.loadBundledScheme(path, theme, null);
diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java
index 4e2a2d46229e..0a2fcf2a97dd 100644
--- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java
+++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java
@@ -729,7 +729,7 @@ final class EditorGutterComponentImpl extends EditorGutterComponentEx implements
Icon iconOnTheLine = null;
Icon hoverIcon = null;
- if (ExperimentalUI.isNewUI() && EditorUtil.isRealFileEditor(getEditor())) {
+ if (ExperimentalUI.isNewUI() /*&& EditorUtil.isRealFileEditor(getEditor())*/) {
VisualPosition visualPosition = myEditor.logicalToVisualPosition(new LogicalPosition(logicalLine, 0));
Optional<GutterMark> breakpoint = getGutterRenderers(visualPosition.line).stream()
.filter(r -> r instanceof GutterIconRenderer &&
diff --git a/platform/platform-impl/src/com/intellij/openapi/fileChooser/actions/FileDeleteAction.java b/platform/platform-impl/src/com/intellij/openapi/fileChooser/actions/FileDeleteAction.java
index b07102f62a07..217be79d24d5 100644
--- a/platform/platform-impl/src/com/intellij/openapi/fileChooser/actions/FileDeleteAction.java
+++ b/platform/platform-impl/src/com/intellij/openapi/fileChooser/actions/FileDeleteAction.java
@@ -4,6 +4,7 @@ package com.intellij.openapi.fileChooser.actions;
import com.intellij.CommonBundle;
import com.intellij.ide.IdeBundle;
import com.intellij.openapi.actionSystem.AnActionEvent;
+import com.intellij.openapi.actionSystem.PlatformCoreDataKeys;
import com.intellij.openapi.application.ApplicationBundle;
import com.intellij.openapi.fileChooser.FileChooserPanel;
import com.intellij.openapi.fileChooser.FileSystemTree;
@@ -19,6 +20,8 @@ import com.intellij.util.ui.IoErrorText;
import com.intellij.util.ui.UIUtil;
import org.jetbrains.annotations.NotNull;
+import javax.swing.JTextField;
+import java.awt.event.KeyEvent;
import java.io.IOException;
public class FileDeleteAction extends FileChooserAction {
@@ -72,7 +75,10 @@ public class FileDeleteAction extends FileChooserAction {
protected void update(@NotNull FileSystemTree fileChooser, @NotNull AnActionEvent e) {
boolean visible = !isDisabled(e);
e.getPresentation().setVisible(visible);
- e.getPresentation().setEnabled(visible && new VirtualFileDeleteProvider().canDeleteElement(e.getDataContext()));
+ e.getPresentation().setEnabled(
+ visible &&
+ !(e.getInputEvent() instanceof KeyEvent && e.getData(PlatformCoreDataKeys.CONTEXT_COMPONENT) instanceof JTextField) && // do not override text deletion
+ new VirtualFileDeleteProvider().canDeleteElement(e.getDataContext()));
}
@Override
diff --git a/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileSaverDialogImpl.java b/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileSaverDialogImpl.java
index 0e8d7299c84c..38007fc1b5db 100644
--- a/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileSaverDialogImpl.java
+++ b/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileSaverDialogImpl.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.openapi.fileChooser.ex;
import com.intellij.openapi.fileChooser.FileSaverDescriptor;
diff --git a/platform/platform-impl/src/com/intellij/openapi/fileChooser/impl/FileChooserPanelImpl.java b/platform/platform-impl/src/com/intellij/openapi/fileChooser/impl/FileChooserPanelImpl.java
index 6dc5ac196e04..b4bc71812163 100644
--- a/platform/platform-impl/src/com/intellij/openapi/fileChooser/impl/FileChooserPanelImpl.java
+++ b/platform/platform-impl/src/com/intellij/openapi/fileChooser/impl/FileChooserPanelImpl.java
@@ -116,17 +116,29 @@ final class FileChooserPanelImpl extends JBPanel<FileChooserPanelImpl> implement
myPath = new ComboBox<>(Stream.of(recentPaths).map(PathWrapper::new).toArray(PathWrapper[]::new));
myPath.setVisible(myShowPathBar);
myPath.setEditable(true);
- myPath.addFocusListener(new FocusAdapter() {
+ var pathEditor = (JTextField)myPath.getEditor().getEditorComponent();
+ pathEditor.addFocusListener(new FocusAdapter() {
@Override
public void focusGained(FocusEvent e) {
myPathBarActive = true;
}
});
- var pathEditor = (JTextField)myPath.getEditor().getEditorComponent();
var finder = new LocalFsFinder(false).withBaseDir(null);
FileLookup.LookupFilter filter =
f -> myDescriptor.isFileVisible(new CoreLocalVirtualFile(FS, ((LocalFsFinder.IoFile)f).getFile()), myShowHiddenFiles);
new FileTextFieldImpl(pathEditor, finder, filter, FileChooserFactoryImpl.getMacroMap(), this);
+ pathEditor.getActionMap().put(JTextField.notifyAction, new AbstractAction() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ if (myPath.isPopupVisible()) {
+ myPath.setPopupVisible(false);
+ }
+ var path = typedPath();
+ if (path != null) {
+ load(path, null, 0);
+ }
+ }
+ });
myModel = new SortedListModel<>(FsItem.COMPARATOR);
myList = new JBList<>(myModel);
@@ -222,6 +234,20 @@ final class FileChooserPanelImpl extends JBPanel<FileChooserPanelImpl> implement
}
}
+ private @Nullable Path typedPath() {
+ var object = myPath.getEditor().getItem();
+ if (object instanceof PathWrapper) {
+ return ((PathWrapper)object).path;
+ }
+ if (object instanceof String && !((String)object).isBlank()) {
+ var path = findByPath(FileUtil.expandUserHome(((String)object).trim()));
+ if (path != null && path.isAbsolute()) {
+ return path;
+ }
+ }
+ return null;
+ }
+
private void openItemAtIndex(int idx, InputEvent e) {
FsItem item = myModel.get(idx);
if (item.directory) {
@@ -242,17 +268,8 @@ final class FileChooserPanelImpl extends JBPanel<FileChooserPanelImpl> implement
@NotNull List<@NotNull Path> chosenPaths() {
if (myShowPathBar && myPathBarActive) {
- var object = myPath.getEditor().getItem();
- if (object instanceof PathWrapper) {
- return List.of(((PathWrapper)object).path);
- }
- if (object instanceof String && !((String)object).isBlank()) {
- var path = findByPath(FileUtil.expandUserHome(((String)object).trim()));
- if (path != null && path.isAbsolute()) {
- return List.of(path);
- }
- }
- return List.of();
+ var path = typedPath();
+ return path != null ? List.of(path) : List.of();
}
else {
var items = myList.getSelectedValuesList();
@@ -550,9 +567,14 @@ final class FileChooserPanelImpl extends JBPanel<FileChooserPanelImpl> implement
name = name.substring(0, name.length() - 1);
}
if (SystemInfo.isWindows) {
- var store = Files.getFileStore(root).name();
- if (!store.isBlank()) {
- name += " [" + store + ']';
+ try {
+ var store = Files.getFileStore(root).name();
+ if (!store.isBlank()) {
+ name += " [" + store + ']';
+ }
+ }
+ catch (IOException e) {
+ LOG.debug(e);
}
}
var item = new FsItem(root, name, true, true, myDescriptor.isFileSelectable(virtualFile), AllIcons.Nodes.Folder);
diff --git a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorComposite.java b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorComposite.java
index c3129d2e90c8..5b15a35b127d 100644
--- a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorComposite.java
+++ b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorComposite.java
@@ -452,8 +452,9 @@ public class EditorComposite extends UserDataHolderBase implements Disposable {
public void setSelectedEditor(@NotNull String providerId) {
FileEditorWithProvider newSelection = ContainerUtil.find(myEditorsWithProviders, it -> it.getProvider().getEditorTypeId().equals(providerId));
- LOG.assertTrue(newSelection != null, "Unable to find providerId=" + providerId);
- setSelectedEditor(newSelection);
+ if (newSelection != null) {
+ setSelectedEditor(newSelection);
+ }
}
public void setSelectedEditor(@NotNull FileEditor editor) {
diff --git a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/pluginsAdvertisement/PluginAdvertiserEditorNotificationProvider.kt b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/pluginsAdvertisement/PluginAdvertiserEditorNotificationProvider.kt
index 5c442357d81e..c324f3087cad 100644
--- a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/pluginsAdvertisement/PluginAdvertiserEditorNotificationProvider.kt
+++ b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/pluginsAdvertisement/PluginAdvertiserEditorNotificationProvider.kt
@@ -73,7 +73,7 @@ class PluginAdvertiserEditorNotificationProvider : EditorNotificationProvider,
val suggestedIdes: List<SuggestedIde>,
) : Function<FileEditor, EditorNotificationPanel?> {
- private var disabledPlugin: IdeaPluginDescriptor? = null
+ private var installedPlugin: IdeaPluginDescriptor? = null
private val jbProduced = mutableSetOf<PluginId>()
@VisibleForTesting
@@ -84,11 +84,8 @@ class PluginAdvertiserEditorNotificationProvider : EditorNotificationProvider,
for (data in dataSet) {
val pluginId = data.pluginId
- val installedPlugin: IdeaPluginDescriptor? = descriptorsById[pluginId]
- if (installedPlugin != null) {
- if (!installedPlugin.isEnabled && disabledPlugin == null) {
- disabledPlugin = installedPlugin
- }
+ if (pluginId in descriptorsById) {
+ installedPlugin = descriptorsById[pluginId]
}
else if (!data.isBundled) {
(if (jbPluginsIds.contains(pluginId.idString)) jbProduced else thirdParty) += pluginId
@@ -117,12 +114,20 @@ class PluginAdvertiserEditorNotificationProvider : EditorNotificationProvider,
}
}
- if (disabledPlugin != null) {
- panel.createActionLabel(IdeBundle.message("plugins.advertiser.action.enable.plugin", disabledPlugin!!.name)) {
- pluginAdvertiserExtensionsState.addEnabledExtensionOrFileNameAndInvalidateCache(extensionOrFileName)
- updateAllNotifications(project)
- FUSEventSource.EDITOR.logEnablePlugins(listOf(disabledPlugin!!.pluginId.idString), project)
- PluginManagerConfigurable.showPluginConfigurableAndEnable(project, setOf(disabledPlugin))
+ val installedPlugin = installedPlugin
+ if (installedPlugin != null) {
+ if (!installedPlugin.isEnabled) {
+ panel.createActionLabel(IdeBundle.message("plugins.advertiser.action.enable.plugin", installedPlugin.name)) {
+ pluginAdvertiserExtensionsState.addEnabledExtensionOrFileNameAndInvalidateCache(extensionOrFileName)
+ updateAllNotifications(project)
+ FUSEventSource.EDITOR.logEnablePlugins(listOf(installedPlugin.pluginId.idString), project)
+ PluginManagerConfigurable.showPluginConfigurableAndEnable(project, setOf(installedPlugin))
+ }
+ }
+ else {
+ // Plugin supporting the pattern is installed and enabled but the current file is reassigned to a different
+ // file type
+ return null
}
}
else if (jbProduced.isNotEmpty()) {
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/DesktopLayout.kt b/platform/platform-impl/src/com/intellij/openapi/wm/impl/DesktopLayout.kt
index f792e018efb8..f2cb37c1378c 100644
--- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/DesktopLayout.kt
+++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/DesktopLayout.kt
@@ -140,11 +140,13 @@ class DesktopLayout(private val idToInfo: MutableMap<String, WindowInfoImpl> = H
return null
}
- val state = Element(tagName)
+ var state: Element? = null
for (info in getSortedList()) {
- serialize(info)?.let {
- state.addContent(it)
+ val child = serialize(info) ?: continue
+ if (state == null) {
+ state = Element(tagName)
}
+ state.addContent(child)
}
return state
}
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameDecorator.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameDecorator.java
index edaa33a3057b..14f0b712c8db 100644
--- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameDecorator.java
+++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameDecorator.java
@@ -218,9 +218,8 @@ public abstract class IdeFrameDecorator implements IdeFrameImpl.FrameDecorator {
public static boolean isCustomDecorationActive() {
UISettings settings = UISettings.getInstanceOrNull();
if (settings == null) {
- // true by default if no settings is available (e.g. during the initial IDE setup wizard) and not overridden
- return isCustomDecorationAvailable()
- && !Objects.equals(UISettings.getMergeMainMenuWithWindowTitleOverrideValue(), false);
+ // true by default if no settings is available (e.g. during the initial IDE setup wizard) and not overridden (only for Windows)
+ return isCustomDecorationAvailable() && getDefaultCustomDecorationState();
}
// Cache the initial value received from settings, because this value doesn't support change in runtime (we can't redraw frame headers
@@ -234,4 +233,8 @@ public abstract class IdeFrameDecorator implements IdeFrameImpl.FrameDecorator {
return settings.getMergeMainMenuWithWindowTitle();
});
}
+
+ private static boolean getDefaultCustomDecorationState() {
+ return SystemInfo.isWindows && !Objects.equals(UISettings.getMergeMainMenuWithWindowTitleOverrideValue(), false);
+ }
} \ No newline at end of file
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowManagerImpl.kt b/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowManagerImpl.kt
index 04c2ff06618d..d760c7588df6 100644
--- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowManagerImpl.kt
+++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowManagerImpl.kt
@@ -85,7 +85,7 @@ open class ToolWindowManagerImpl @NonInjectable @TestOnly internal constructor(v
@field:JvmField internal val isNewUi: Boolean,
private val explicitButtonManager: ToolWindowButtonManager?,
private val isEdtRequired: Boolean)
- : ToolWindowManagerEx(), PersistentStateComponent<Element?>, Disposable {
+ : ToolWindowManagerEx(), PersistentStateComponent<Element>, Disposable {
private val dispatcher = EventDispatcher.create(ToolWindowManagerListener::class.java)
private var oldLayout: DesktopLayout? = null
@@ -1681,6 +1681,11 @@ open class ToolWindowManagerImpl @NonInjectable @TestOnly internal constructor(v
override fun loadState(state: Element) {
var layoutIsScheduled = false
for (element in state.children) {
+ if (JDOMUtil.isEmpty(element)) {
+ // make sure that layoutIsScheduled is not set if empty layout for some reason is provided
+ continue
+ }
+
when (element.name) {
DesktopLayout.TAG -> {
val layout = DesktopLayout()
@@ -2027,7 +2032,13 @@ open class ToolWindowManagerImpl @NonInjectable @TestOnly internal constructor(v
}
info.isShowStripeButton = value
+ if (!value) {
+ entry.removeStripeButton()
+ }
entry.applyWindowInfo(info.copy())
+ if (value && entry.stripeButton == null) {
+ entry.stripeButton = buttonManager.createStripeButton(entry.toolWindow, entry.readOnlyWindowInfo, task = null)
+ }
fireStateChanged()
}
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentLayout.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentLayout.java
index 067592b06a9e..7fa2f15aeb92 100644
--- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentLayout.java
+++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentLayout.java
@@ -12,7 +12,9 @@ import com.intellij.ui.content.ContentManagerEvent;
import com.intellij.util.ui.JBUI;
import org.jetbrains.annotations.NotNull;
+import javax.swing.border.Border;
import java.awt.*;
+import java.util.Objects;
abstract class ContentLayout {
ToolWindowContentUi ui;
@@ -51,11 +53,17 @@ abstract class ContentLayout {
if (suffix != null) title += suffix;
label.setText(title);
- label.setBorder(JBUI.Borders.empty(0, 2, 0, 7));
+ Border border = JBUI.Borders.empty(0, 2, 0, 7);
if (ExperimentalUI.isNewUI()) {
- label.setBorder(shouldShowId()
- ? JBUI.Borders.empty(JBUI.CurrentTheme.ToolWindow.headerLabelLeftRightInsets())
- : JBUI.Borders.empty(JBUI.CurrentTheme.ToolWindow.headerTabLeftRightInsets()));
+ border = shouldShowId()
+ ? JBUI.Borders.empty(JBUI.CurrentTheme.ToolWindow.headerLabelLeftRightInsets())
+ : JBUI.Borders.empty(JBUI.CurrentTheme.ToolWindow.headerTabLeftRightInsets());
+ }
+ Border oldBorder = label.getBorder();
+ // Don't update component border (with following revalidation and repainting) if existing border is exactly the same we're going to set
+ if (oldBorder == null || !Objects.equals(oldBorder.getClass(), border.getClass())
+ || !oldBorder.getBorderInsets(label).equals(border.getBorderInsets(label))) {
+ label.setBorder(border);
}
label.setVisible(shouldShowId());
}
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java
index 1e0fc4bdba63..b94cdf141b13 100644
--- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java
+++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/content/ContentTabLabel.java
@@ -10,6 +10,7 @@ import com.intellij.openapi.actionSystem.ex.ActionUtil;
import com.intellij.openapi.keymap.KeymapManager;
import com.intellij.openapi.keymap.KeymapUtil;
import com.intellij.openapi.ui.popup.ActiveIcon;
+import com.intellij.openapi.util.Disposer;
import com.intellij.openapi.util.NlsContexts;
import com.intellij.openapi.wm.impl.content.tabActions.ContentTabAction;
import com.intellij.ui.EngravedTextGraphics;
@@ -18,6 +19,9 @@ import com.intellij.ui.LayeredIcon;
import com.intellij.ui.content.Content;
import com.intellij.ui.content.ContentManager;
import com.intellij.ui.scale.JBUIScale;
+import com.intellij.util.Alarm;
+import com.intellij.util.ObjectUtils;
+import com.intellij.util.SingleAlarm;
import com.intellij.util.ui.JBUI;
import com.intellij.util.ui.UIUtilities;
import org.jetbrains.annotations.NotNull;
@@ -66,24 +70,36 @@ public class ContentTabLabel extends ContentLabel {
}
private void updateText() {
- if (myText != null && myText.startsWith("<html>")) {
- super.setText(myText); // SwingUtilities2.clipString does not support HTML
- return;
- }
- FontMetrics fm = getFontMetrics(getFont());
- int textWidth = UIUtilities.stringWidth(this, fm, myText);
- int prefWidth = myIconWithInsetsWidth + textWidth;
+ try {
+ if (myText != null && myText.startsWith("<html>")) {
+ super.setText(myText); // SwingUtilities2.clipString does not support HTML
+ return;
+ }
+ FontMetrics fm = getFontMetrics(getFont());
+ int textWidth = UIUtilities.stringWidth(this, fm, myText);
+ int prefWidth = myIconWithInsetsWidth + textWidth;
- int maxWidth = getMaximumSize().width;
+ int maxWidth = getMaximumSize().width;
- if (prefWidth > maxWidth) {
- int offset = maxWidth - myIconWithInsetsWidth;
- String s = UIUtilities.clipString(this, fm, myText, offset);
- super.setText(s);
- return;
- }
+ if (prefWidth > maxWidth) {
+ int offset = maxWidth - myIconWithInsetsWidth;
+ String s = UIUtilities.clipString(this, fm, myText, offset);
+ super.setText(s);
+ return;
+ }
- super.setText(myText);
+ super.setText(myText);
+ } finally {
+ //noinspection ConstantConditions
+ if (myContent != null && !Disposer.isDisposed(myContent)) {
+ new SingleAlarm(() -> {
+ ObjectUtils.consumeIfNotNull(getParent(), c -> {
+ c.revalidate();
+ c.repaint();
+ });
+ }, 50, myContent, Alarm.ThreadToUse.SWING_THREAD).request();
+ }
+ }
}
ContentTabLabel(@NotNull Content content, @NotNull TabContentLayout layout) {
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java
index 2d797ec80189..589a071763bb 100644
--- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java
+++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/FlatWelcomeFrame.java
@@ -13,7 +13,6 @@ import com.intellij.ide.plugins.PluginDropHandler;
import com.intellij.ide.ui.LafManager;
import com.intellij.ide.ui.LafManagerListener;
import com.intellij.idea.SplashManager;
-import com.intellij.jdkEx.JdkEx;
import com.intellij.notification.NotificationsManager;
import com.intellij.notification.impl.NotificationsManagerImpl;
import com.intellij.openapi.Disposable;
@@ -77,7 +76,7 @@ public class FlatWelcomeFrame extends JFrame implements IdeFrame, Disposable, Ac
public static boolean USE_TABBED_WELCOME_SCREEN = Boolean.parseBoolean(SystemProperty.get("use.tabbed.welcome.screen", "true"));
public static final String BOTTOM_PANEL = "BOTTOM_PANEL";
- public static final int DEFAULT_HEIGHT = USE_TABBED_WELCOME_SCREEN ? 600 : 460;
+ public static final int DEFAULT_HEIGHT = USE_TABBED_WELCOME_SCREEN ? 650 : 460;
public static final int MAX_DEFAULT_WIDTH = 800;
private final AbstractWelcomeScreen myScreen;
private WelcomeBalloonLayoutImpl myBalloonLayout;
diff --git a/platform/platform-impl/src/com/intellij/toolWindow/InternalDecoratorImpl.kt b/platform/platform-impl/src/com/intellij/toolWindow/InternalDecoratorImpl.kt
index a28790e723eb..7412f9bb87cf 100644
--- a/platform/platform-impl/src/com/intellij/toolWindow/InternalDecoratorImpl.kt
+++ b/platform/platform-impl/src/com/intellij/toolWindow/InternalDecoratorImpl.kt
@@ -584,6 +584,7 @@ class InternalDecoratorImpl internal constructor(
}
override fun reshape(x: Int, y: Int, w: Int, h: Int) {
+ val rectangle = bounds
super.reshape(x, y, w, h)
val topLevelDecorator = findTopLevelDecorator(this)
if (topLevelDecorator == null || !topLevelDecorator.isShowing) {
@@ -603,7 +604,9 @@ class InternalDecoratorImpl internal constructor(
putClientProperty(HIDE_COMMON_TOOLWINDOW_BUTTONS, hideButtons)
putClientProperty(INACTIVE_LOOK, hideActivity)
}
- contentUi.update()
+ if (!rectangle.equals(bounds)) {
+ contentUi.update()
+ }
}
fun setDropInfoIndex(index: Int, width: Int) {
diff --git a/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowDefaultLayoutManager.kt b/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowDefaultLayoutManager.kt
index 43f60ca09ac9..d4dd733501cf 100644
--- a/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowDefaultLayoutManager.kt
+++ b/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowDefaultLayoutManager.kt
@@ -67,8 +67,11 @@ internal class ToolWindowDefaultLayoutManager(private val isNewUi: Boolean)
override fun loadState(state: ToolWindowLayoutStorageManagerState) {
this.state = state
- if (if (isNewUi) state.v2.isEmpty() else state.v1.isEmpty()) {
+ val list = if (isNewUi) state.v2 else state.v1
+ if (list.isEmpty()) {
loadDefaultLayout(isNewUi)
+ } else {
+ setLayout(convertDescriptorListToLayout(list))
}
}
diff --git a/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowSetInitializer.kt b/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowSetInitializer.kt
index f20d129ddc12..4c1376675cd3 100644
--- a/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowSetInitializer.kt
+++ b/platform/platform-impl/src/com/intellij/toolWindow/ToolWindowSetInitializer.kt
@@ -26,13 +26,13 @@ import com.intellij.openapi.wm.impl.DesktopLayout
import com.intellij.openapi.wm.impl.ToolWindowManagerImpl
import com.intellij.ui.ExperimentalUI
import com.intellij.util.concurrency.AppExecutorUtil
-import com.intellij.util.containers.ContainerUtil
import com.intellij.util.containers.addIfNotNull
import com.intellij.util.ui.EDT
import com.intellij.util.ui.UIUtil
import org.jetbrains.annotations.NonNls
import org.jetbrains.annotations.VisibleForTesting
import java.util.concurrent.CompletableFuture
+import java.util.concurrent.ConcurrentLinkedQueue
import java.util.concurrent.Executor
import java.util.concurrent.ForkJoinPool
import java.util.concurrent.atomic.AtomicReference
@@ -87,7 +87,7 @@ internal class ToolWindowSetInitializer(private val project: Project, private va
private val initFuture: CompletableFuture<Ref<List<RegisterToolWindowTask>?>>
private val pendingLayout = AtomicReference<DesktopLayout?>()
- private val pendingTasks = ContainerUtil.createLockFreeCopyOnWriteList<Runnable>()
+ private val pendingTasks = ConcurrentLinkedQueue<Runnable>()
init {
val app = ApplicationManager.getApplication()
@@ -146,7 +146,9 @@ internal class ToolWindowSetInitializer(private val project: Project, private va
ref.set(null)
createAndLayoutToolWindows(manager, tasks ?: return@thenAcceptAsync, toolWindowPane)
- pendingTasks.forEach(Runnable::run)
+ while (true) {
+ (pendingTasks.poll() ?: break).run()
+ }
},
Executor { command ->
if (EDT.isCurrentThreadEdt()) {
diff --git a/platform/platform-impl/src/com/intellij/ui/WindowMouseListener.java b/platform/platform-impl/src/com/intellij/ui/WindowMouseListener.java
index 016552309f32..c766790b79b8 100644
--- a/platform/platform-impl/src/com/intellij/ui/WindowMouseListener.java
+++ b/platform/platform-impl/src/com/intellij/ui/WindowMouseListener.java
@@ -124,7 +124,7 @@ abstract class WindowMouseListener extends MouseAdapter implements MouseInputLis
if (!bounds.equals(viewBounds)) {
boolean moved = bounds.x != viewBounds.x || bounds.y != viewBounds.y;
boolean resized = bounds.width != viewBounds.width || bounds.height != viewBounds.height;
- view.setBounds(bounds);
+ view.reshape(bounds.x, bounds.y, bounds.width, bounds.height);
view.invalidate();
view.validate();
view.repaint();
diff --git a/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt b/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt
index 4af81eb90aaa..e0a3b144f75d 100644
--- a/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt
+++ b/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt
@@ -28,6 +28,7 @@ import com.intellij.openapi.vfs.newvfs.events.VFileCreateEvent
import com.intellij.openapi.vfs.newvfs.events.VFileDeleteEvent
import com.intellij.openapi.vfs.newvfs.events.VFileEvent
import com.intellij.project.stateStore
+import com.intellij.util.PlatformUtils.isIntelliJ
import com.intellij.util.PlatformUtils.isRider
import com.intellij.workspaceModel.ide.*
import com.intellij.workspaceModel.ide.impl.WorkspaceModelImpl
@@ -233,7 +234,8 @@ class JpsProjectModelSynchronizer(private val project: Project) : Disposable {
}
// IDEA-288703
- fun hasNoSerializedJpsModules(): Boolean = !isRider() && (prepareSerializers() as JpsProjectSerializersImpl).moduleSerializers.isEmpty()
+ fun hasNoSerializedJpsModules(): Boolean = !isIntelliJ() && // todo: https://youtrack.jetbrains.com/issue/IDEA-291451#focus=Comments-27-5967781.0-0
+ !isRider() && (prepareSerializers() as JpsProjectSerializersImpl).moduleSerializers.isEmpty()
private fun prepareSerializers(): JpsProjectSerializers {
val existingSerializers = this.serializers.get()
diff --git a/platform/platform-resources-en/src/inspectionDescriptions/IncorrectFormatting.html b/platform/platform-resources-en/src/inspectionDescriptions/IncorrectFormatting.html
index a15fdac18600..3d163cbcfd31 100644
--- a/platform/platform-resources-en/src/inspectionDescriptions/IncorrectFormatting.html
+++ b/platform/platform-resources-en/src/inspectionDescriptions/IncorrectFormatting.html
@@ -1,5 +1,13 @@
<html>
<body>
-Detects formatting issues according your project code style settings.
+<p>
+ Reports formatting issues that appear if your code doesn't
+ follow your project's code style settings.
+</p>
+<p>
+ This inspection is not compatible with languages that require
+ third-party formatters for code formatting, for example, Go or
+ C with CLangFormat enabled.
+</p>
</body>
-</html> \ No newline at end of file
+</html>
diff --git a/platform/platform-resources-en/src/messages/ActionsBundle.properties b/platform/platform-resources-en/src/messages/ActionsBundle.properties
index 8dedcdabefb9..67520b148e5d 100644
--- a/platform/platform-resources-en/src/messages/ActionsBundle.properties
+++ b/platform/platform-resources-en/src/messages/ActionsBundle.properties
@@ -28,6 +28,8 @@ action.Vcs.ShowHistoryForRevision.text=History Up to Here
action.Vcs.ShowHistoryForRevision.description=Show history for file until the selected revision
action.Vcs.ShowTabbedFileHistory.text=Show _History
action.Vcs.ShowTabbedFileHistory.description=Show history of file
+action.Vcs.Toolbar.ShowMoreActions.text=Version Control
+action.Vcs.Toolbar.ShowMoreActions.description=VCS Operations
group.RightToolbarSideGroup.text=Right Side
group.LeftToolbarSideGroup.text=Left Side
action.SegmentedVcsControlAction.text=VCS Widget
@@ -1607,6 +1609,7 @@ action.WelcomeScreen.Configure.Import.text=Import Settings...
action.WelcomeScreen.Configure.Export.text=Export Settings
action.WelcomeScreen.Configure.RestoreDefault.text=Restore Default Settings...
group.WelcomeScreen.Options.text=Options Menu
+action.GatewayCollectLogsAction.text = Collect All Logs
action.CommittedChanges.Revert.text=Revert Changes
action.CommittedChanges.Revert.description=Apply the reverse of the selected changes to the working copy
@@ -2000,6 +2003,8 @@ action.SearchEverywhere.NavigateToNextGroup.text=Next group element
action.SearchEverywhere.NavigateToNextGroup.description=Navigate to next group in Search Everywhere dialog
action.SearchEverywhere.NavigateToPrevGroup.text=Prev group element
action.SearchEverywhere.NavigateToPrevGroup.description=Navigate to prev group in Search Everywhere dialog
+action.SegmentedButton-left.text=Select Previous Segmented Button
+action.SegmentedButton-right.text=Select Next Segmented Button
action.QuickActionPopup.text=Show Quick Actions Popup
action.NavBar-selectHome.text=Select First Item
@@ -2593,3 +2598,6 @@ apply.toolbar.customization=Apply
action.Start.Use.Vcs.Vcs.Toolbar.Widget.text=Other Services...
action.Start.Use.Vcs.text=_Enable Version Control Integration\u2026
+
+action.TextSearchAction.text=Text...
+action.TextSearchAction.description=Show text occurrences in Search Everywhere
diff --git a/platform/platform-resources/src/META-INF/LangExtensions.xml b/platform/platform-resources/src/META-INF/LangExtensions.xml
index d9e90fa85cbf..ca2ed4c456e5 100644
--- a/platform/platform-resources/src/META-INF/LangExtensions.xml
+++ b/platform/platform-resources/src/META-INF/LangExtensions.xml
@@ -396,6 +396,7 @@
<applicationService serviceImplementation="com.intellij.codeInsight.codeVision.settings.CodeVisionSettings" />
<projectService serviceImplementation="com.intellij.codeInsight.codeVision.CodeVisionHost" preload="true" />
<projectService serviceImplementation="com.intellij.codeInsight.codeVision.CodeVisionContextProvider" />
+ <applicationService serviceImplementation="com.intellij.codeInsight.codeVision.ui.renderers.painters.CodeVisionThemeInfoProvider" />
<config.inlaySettingsProvider implementation="com.intellij.codeInsight.codeVision.settings.CodeVisionInlaySettingProvider" />
diff --git a/platform/platform-resources/src/META-INF/PlatformExtensionPoints.xml b/platform/platform-resources/src/META-INF/PlatformExtensionPoints.xml
index d0201b5e7ddf..49b26e33db22 100644
--- a/platform/platform-resources/src/META-INF/PlatformExtensionPoints.xml
+++ b/platform/platform-resources/src/META-INF/PlatformExtensionPoints.xml
@@ -97,6 +97,10 @@
<extensionPoint name="gitRepositoryInitializer"
interface="com.intellij.openapi.GitRepositoryInitializer"
dynamic="true"/>
+ <extensionPoint name="gitSilentFileAdder"
+ interface="com.intellij.openapi.GitSilentFileAdderProvider"
+ area="IDEA_PROJECT"
+ dynamic="true"/>
<extensionPoint name="undoProvider" interface="com.intellij.openapi.command.impl.UndoProvider" dynamic="true"/>
<extensionPoint name="projectUndoProvider" interface="com.intellij.openapi.command.impl.UndoProvider"
diff --git a/platform/platform-resources/src/META-INF/PlatformExtensions.xml b/platform/platform-resources/src/META-INF/PlatformExtensions.xml
index b3fed6f91012..b92355411ed8 100644
--- a/platform/platform-resources/src/META-INF/PlatformExtensions.xml
+++ b/platform/platform-resources/src/META-INF/PlatformExtensions.xml
@@ -208,8 +208,8 @@
serviceImplementation="com.intellij.ide.ui.search.SearchableOptionsRegistrarImpl"/>
<search.optionContributor implementation="com.intellij.ide.ui.search.PluginSearchableOptionContributor"/>
- <applicationService serviceInterface="com.intellij.ide.ui.search.SearchEverywhereTabsCustomization"
- serviceImplementation="com.intellij.ide.ui.search.DefaultSearchEverywhereTabsCustomization"/>
+ <applicationService serviceInterface="com.intellij.ide.actions.searcheverywhere.TabsCustomizationStrategy"
+ serviceImplementation="com.intellij.ide.actions.searcheverywhere.ContributorDefinedTabsCustomizationStrategy"/>
<applicationService serviceImplementation="com.intellij.openapi.fileEditor.impl.EditorEmptyTextPainter"/>
@@ -930,7 +930,7 @@ Android Studio: instead AndroidStudioStatisticsEventLoggerProvider is registered
<bundleName>messages.LangBundle</bundleName>
<categoryKey>intention.category.other</categoryKey>
</intentionAction>
-
+
<intentionAction>
<className>com.intellij.openapi.editor.actions.lists.JoinLinesIntention</className>
<bundleName>messages.LangBundle</bundleName>
@@ -1305,7 +1305,7 @@ Android Studio: instead AndroidStudioStatisticsEventLoggerProvider is registered
<advancedSetting id="temporary.configurations.limit" default="5" groupKey="group.advanced.settings.run"/>
<advancedSetting id="confirm.rerun.with.termination" default="true" groupKey="group.advanced.settings.run"/>
<advancedSetting id="start.run.configurations.pinned" default="false" groupKey="group.advanced.settings.run"/>
- <advancedSetting id="se.enable.text.search" default="false" groupKey="group.advanced.settings.se"/>
+ <advancedSetting id="se.text.search" default="false" groupKey="group.advanced.settings.se"/>
<advancedSetting id="edit.source.on.enter.key.request.focus.in.editor" default="true" groupKey="group.advanced.settings.project.view"/>
<advancedSetting id="ide.tree.collapse.recursively" default="true" groupKey="group.advanced.settings.project.view"/>
<advancedSetting id="ide.open.readme.md.on.startup" default="true" groupKey="group.advanced.settings.startup"/>
diff --git a/platform/platform-tests/testSrc/com/intellij/openapi/components/impl/PathMacroManagerTest.java b/platform/platform-tests/testSrc/com/intellij/openapi/components/impl/PathMacroManagerTest.java
index a9ba64828bd1..8701aaa98508 100644
--- a/platform/platform-tests/testSrc/com/intellij/openapi/components/impl/PathMacroManagerTest.java
+++ b/platform/platform-tests/testSrc/com/intellij/openapi/components/impl/PathMacroManagerTest.java
@@ -62,7 +62,7 @@ public class PathMacroManagerTest {
private MockModule createModule(@NotNull String basePath) {
MockProject project = createProject(basePath);
- return new MockModule(project) {
+ return new MockModule(project, project) {
@Override
public @NotNull Path getModuleNioFile() {
return Paths.get(project.getBasePath()).resolve("module/module.iml");
diff --git a/platform/platform-tests/testSrc/com/intellij/openapi/diagnostic/RollingFileHandlerTest.kt b/platform/platform-tests/testSrc/com/intellij/openapi/diagnostic/RollingFileHandlerTest.kt
index a0f02da30735..f2efc2b27656 100644
--- a/platform/platform-tests/testSrc/com/intellij/openapi/diagnostic/RollingFileHandlerTest.kt
+++ b/platform/platform-tests/testSrc/com/intellij/openapi/diagnostic/RollingFileHandlerTest.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.openapi.diagnostic
import com.intellij.testFramework.TemporaryDirectory
@@ -19,7 +19,7 @@ class RollingFileHandlerTest {
@Test
fun testRollingHandler() {
val logPath = tempDir.newPath("RollingFileHandlerTest.log")
- val handler = RollingFileHandler(logPath, 100, 2, false)
+ val handler = RollingFileHandler(logPath, 100, 10, false)
handler.formatter = object : Formatter() {
override fun format(record: LogRecord): String {
return record.message
diff --git a/platform/projectModel-impl/resources/META-INF/ProjectModelImpl.xml b/platform/projectModel-impl/resources/META-INF/ProjectModelImpl.xml
index 4417fbd16aa1..6c89f8ea1520 100644
--- a/platform/projectModel-impl/resources/META-INF/ProjectModelImpl.xml
+++ b/platform/projectModel-impl/resources/META-INF/ProjectModelImpl.xml
@@ -7,6 +7,8 @@
<extensionPoint name="workspaceModel.moduleExtensionBridgeFactory"
interface="com.intellij.workspaceModel.ide.legacyBridge.ModuleExtensionBridgeFactory"
dynamic="true"/>
+ <extensionPoint name="projectPathMacroContributor" interface="com.intellij.openapi.components.impl.ProjectWidePathMacroContributor"
+ dynamic="true"/>
</extensionPoints>
<extensions defaultExtensionNs="com.intellij">
<projectService serviceInterface="com.intellij.openapi.roots.impl.DirectoryIndex"
diff --git a/platform/projectModel-impl/src/com/intellij/application/options/PathMacrosImpl.kt b/platform/projectModel-impl/src/com/intellij/application/options/PathMacrosImpl.kt
index 0e25d6e6ce33..acd767d8084d 100644
--- a/platform/projectModel-impl/src/com/intellij/application/options/PathMacrosImpl.kt
+++ b/platform/projectModel-impl/src/com/intellij/application/options/PathMacrosImpl.kt
@@ -29,8 +29,6 @@ open class PathMacrosImpl @JvmOverloads constructor(private val loadContributors
private val modificationStamp = AtomicLong()
private val ignoredMacros = ContainerUtil.createLockFreeCopyOnWriteList<String>()
- private var userMacroMapCache: Map<String, String>? = null
-
companion object {
@JvmStatic
private val EP_NAME = ExtensionPointName<PathMacroContributor>("com.intellij.pathMacroContributor")
@@ -133,7 +131,6 @@ open class PathMacrosImpl @JvmOverloads constructor(private val loadContributors
private fun userMacroModified() {
modificationStamp.incrementAndGet()
- userMacroMapCache = null
}
override fun getState(): Element? {
diff --git a/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ModulePathMacroManager.java b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ModulePathMacroManager.java
index 8f51de90e1ff..8749490fe2f6 100644
--- a/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ModulePathMacroManager.java
+++ b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ModulePathMacroManager.java
@@ -8,22 +8,28 @@ import com.intellij.openapi.components.PathMacroManager;
import com.intellij.openapi.module.Module;
import com.intellij.serviceContainer.NonInjectable;
import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.SystemIndependent;
import org.jetbrains.jps.model.serialization.PathMacroUtil;
+import java.util.Map;
import java.util.function.Supplier;
public class ModulePathMacroManager extends PathMacroManager {
- private final Supplier<@SystemIndependent String> myModuleDirPointer;
+ private final @NotNull Supplier<@Nullable @SystemIndependent String> myProjectFilePathPointer;
+ private final @NotNull Supplier<@NotNull @SystemIndependent String> myModuleDirPointer;
public ModulePathMacroManager(@NotNull Module module) {
super(PathMacros.getInstance());
+ myProjectFilePathPointer = module.getProject()::getProjectFilePath;
myModuleDirPointer = module::getModuleFilePath;
}
@NonInjectable
- private ModulePathMacroManager(Supplier<@SystemIndependent String> moduleDirPointer) {
+ private ModulePathMacroManager(@NotNull Supplier<@Nullable @SystemIndependent String> projectFilePathPointer,
+ @NotNull Supplier<@NotNull @SystemIndependent String> moduleDirPointer) {
super(PathMacros.getInstance());
+ myProjectFilePathPointer = projectFilePathPointer;
myModuleDirPointer = moduleDirPointer;
}
@@ -31,6 +37,12 @@ public class ModulePathMacroManager extends PathMacroManager {
public @NotNull ExpandMacroToPathMap getExpandMacroMap() {
ExpandMacroToPathMap result = super.getExpandMacroMap();
addFileHierarchyReplacements(result, PathMacroUtil.MODULE_DIR_MACRO_NAME, PathMacroUtil.getModuleDir(myModuleDirPointer.get()));
+ String projectFile = myProjectFilePathPointer.get();
+ if (projectFile != null) {
+ for (Map.Entry<String, String> entry : ProjectWidePathMacroContributor.getAllMacros(projectFile).entrySet()) {
+ result.addMacroExpand(entry.getKey(), entry.getValue());
+ }
+ }
return result;
}
@@ -45,7 +57,8 @@ public class ModulePathMacroManager extends PathMacroManager {
resetCachedReplacePathMap();
}
- public static ModulePathMacroManager createInstance(Supplier<@SystemIndependent String> moduleDirPointer) {
- return new ModulePathMacroManager(moduleDirPointer);
+ public static ModulePathMacroManager createInstance(@NotNull Supplier<@Nullable @SystemIndependent String> projectFilePathPointer,
+ @NotNull Supplier<@NotNull @SystemIndependent String> moduleDirPointer) {
+ return new ModulePathMacroManager(projectFilePathPointer, moduleDirPointer);
}
-} \ No newline at end of file
+}
diff --git a/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectPathMacroManager.java b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectPathMacroManager.java
index bd97349ca0bb..ba0db4a9df1c 100644
--- a/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectPathMacroManager.java
+++ b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectPathMacroManager.java
@@ -12,47 +12,57 @@ import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.SystemIndependent;
import org.jetbrains.jps.model.serialization.PathMacroUtil;
+import java.util.Map;
import java.util.function.Supplier;
public class ProjectPathMacroManager extends PathMacroManager {
- private final Supplier<@SystemIndependent String> myBasePathPointer;
- private final @Nullable Supplier<@SystemIndependent String> myNamePointer;
+ private final @NotNull Supplier<@Nullable @SystemIndependent String> myProjectFilePathPointer;
+ private final @NotNull Supplier<@Nullable @SystemIndependent String> myBasePathPointer;
+ private final @Nullable Supplier<@NotNull @SystemIndependent String> myNamePointer;
public ProjectPathMacroManager(@NotNull Project project) {
super(PathMacros.getInstance());
+ myProjectFilePathPointer = project::getProjectFilePath;
myBasePathPointer = project::getBasePath;
myNamePointer = !project.isDefault() ? project::getName : null;
}
@NonInjectable
- private ProjectPathMacroManager(Supplier<@SystemIndependent String> basePathPointer,
- @Nullable Supplier<@SystemIndependent String> namePointer) {
+ private ProjectPathMacroManager(@NotNull Supplier<@Nullable @SystemIndependent String> projectFilePathPointer,
+ @NotNull Supplier<@Nullable @SystemIndependent String> basePathPointer,
+ @Nullable Supplier<@NotNull @SystemIndependent String> namePointer) {
super(PathMacros.getInstance());
+ myProjectFilePathPointer = projectFilePathPointer;
myBasePathPointer = basePathPointer;
myNamePointer = namePointer;
}
- @NotNull
@Override
- public ExpandMacroToPathMap getExpandMacroMap() {
+ public @NotNull ExpandMacroToPathMap getExpandMacroMap() {
ExpandMacroToPathMap result = super.getExpandMacroMap();
addFileHierarchyReplacements(result, PathMacroUtil.PROJECT_DIR_MACRO_NAME, myBasePathPointer.get());
if (myNamePointer != null) {
result.addMacroExpand(PathMacroUtil.PROJECT_NAME_MACRO_NAME, myNamePointer.get());
}
+ String projectFile = myProjectFilePathPointer.get();
+ if (projectFile != null) {
+ for (Map.Entry<String, String> entry : ProjectWidePathMacroContributor.getAllMacros(projectFile).entrySet()) {
+ result.addMacroExpand(entry.getKey(), entry.getValue());
+ }
+ }
return result;
}
- @NotNull
@Override
- protected ReplacePathToMacroMap computeReplacePathMap() {
+ protected @NotNull ReplacePathToMacroMap computeReplacePathMap() {
ReplacePathToMacroMap result = super.computeReplacePathMap();
addFileHierarchyReplacements(result, PathMacroUtil.PROJECT_DIR_MACRO_NAME, myBasePathPointer.get(), null);
return result;
}
- public static ProjectPathMacroManager createInstance(Supplier<@SystemIndependent String> basePathPointer,
- @Nullable Supplier<@SystemIndependent String> namePointer) {
- return new ProjectPathMacroManager(basePathPointer, namePointer);
+ public static ProjectPathMacroManager createInstance(@NotNull Supplier<@Nullable @SystemIndependent String> projectFilePathPointer,
+ @NotNull Supplier<@SystemIndependent @Nullable String> basePathPointer,
+ @Nullable Supplier<@SystemIndependent @NotNull String> namePointer) {
+ return new ProjectPathMacroManager(projectFilePathPointer, basePathPointer, namePointer);
}
}
diff --git a/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectWidePathMacroContributor.java b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectWidePathMacroContributor.java
new file mode 100644
index 000000000000..799884b7b935
--- /dev/null
+++ b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/ProjectWidePathMacroContributor.java
@@ -0,0 +1,42 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.openapi.components.impl;
+
+import com.intellij.openapi.extensions.ExtensionPointName;
+import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.ApiStatus;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.SystemIndependent;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * <p>
+ * The extension point allows providing project-wide path macros (contrary to the
+ * {@link com.intellij.openapi.application.PathMacroContributor} which is the application-wide)
+ * </p>
+ * <p>
+ * If you want your custom project-wide path macro to be available in the JPS then consider implementing separate Path Macro
+ * contributor for the JPS too {@link org.jetbrains.jps.model.serialization.JpsPathMacroContributor}
+ * </p>
+ */
+@ApiStatus.Internal
+public interface ProjectWidePathMacroContributor {
+ ExtensionPointName<ProjectWidePathMacroContributor> EP_NAME = new ExtensionPointName<>("com.intellij.projectPathMacroContributor");
+
+ /**
+ * @param projectFilePath See {@link com.intellij.openapi.project.Project#getProjectFilePath}
+ */
+ @NotNull Map<@NotNull String, @NotNull String> getProjectPathMacros(@NotNull @SystemIndependent String projectFilePath);
+
+ /**
+ * @param projectFilePath See {@link com.intellij.openapi.project.Project#getProjectFilePath}
+ */
+ static @NotNull Map<@NotNull String, @NotNull String> getAllMacros(@NotNull @SystemIndependent String projectFilePath) {
+ Map<String, String> result = new HashMap<>();
+ for (ProjectWidePathMacroContributor contributor : EP_NAME.getExtensionList()) {
+ result.putAll(contributor.getProjectPathMacros(projectFilePath));
+ }
+ return result;
+ }
+}
diff --git a/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/roots/ModuleRootComponentBridge.kt b/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/roots/ModuleRootComponentBridge.kt
index dea3adb51c0a..ddd9254c824a 100644
--- a/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/roots/ModuleRootComponentBridge.kt
+++ b/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/roots/ModuleRootComponentBridge.kt
@@ -19,6 +19,7 @@ import com.intellij.workspaceModel.storage.WorkspaceEntityStorage
import com.intellij.workspaceModel.storage.WorkspaceEntityStorageBuilder
import com.intellij.workspaceModel.storage.impl.DisposableCachedValue
import com.intellij.workspaceModel.storage.url.VirtualFileUrl
+import org.jetbrains.annotations.ApiStatus
import org.jetbrains.jps.model.module.JpsModuleSourceRoot
import org.jetbrains.jps.model.module.JpsModuleSourceRootType
@@ -105,11 +106,16 @@ class ModuleRootComponentBridge(
* This method is used in Project Structure dialog to ensure that changes made in {@link ModifiableModuleModel} after creation
* of this {@link ModifiableRootModel} are available in its storage and references in its {@link OrderEntry} can be resolved properly.
*/
- override fun getModifiableModelForMultiCommit(accessor: RootConfigurationAccessor): ModifiableRootModel = ModifiableRootModelBridgeImpl(
+ override fun getModifiableModelForMultiCommit(accessor: RootConfigurationAccessor): ModifiableRootModel =
+ getModifiableModelForMultiCommit(accessor, true)
+
+ @ApiStatus.Internal
+ fun getModifiableModelForMultiCommit(accessor: RootConfigurationAccessor, cacheStorageResult: Boolean): ModifiableRootModel = ModifiableRootModelBridgeImpl(
(moduleBridge.diff as? WorkspaceEntityStorageBuilder) ?: (accessor as? RootConfigurationAccessorForWorkspaceModel)?.actualDiffBuilder
?: WorkspaceEntityStorageBuilder.from(moduleBridge.entityStorage.current),
moduleBridge,
- accessor)
+ accessor,
+ cacheStorageResult)
fun getModifiableModel(diff: WorkspaceEntityStorageBuilder, accessor: RootConfigurationAccessor): ModifiableRootModel {
return ModifiableRootModelBridgeImpl(diff, moduleBridge, accessor, false)
diff --git a/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/jpsEntitySources.kt b/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/jpsEntitySources.kt
index 4b86a75e1731..2496cd6d7086 100644
--- a/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/jpsEntitySources.kt
+++ b/platform/projectModel-impl/src/com/intellij/workspaceModel/ide/jpsEntitySources.kt
@@ -17,6 +17,7 @@ import com.intellij.workspaceModel.storage.url.VirtualFileUrl
import com.intellij.workspaceModel.storage.url.VirtualFileUrlManager
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.TestOnly
+import org.jetbrains.jps.util.JpsPathUtil
import java.util.concurrent.atomic.AtomicInteger
/**
@@ -26,16 +27,27 @@ sealed class JpsProjectConfigLocation {
val baseDirectoryUrlString: String
get() = baseDirectoryUrl.url
+ /**
+ * Same as [Project.getProjectFilePath]
+ */
+ abstract val projectFilePath: String
+
abstract val baseDirectoryUrl: VirtualFileUrl
data class DirectoryBased(val projectDir: VirtualFileUrl, val ideaFolder: VirtualFileUrl) : JpsProjectConfigLocation() {
override val baseDirectoryUrl: VirtualFileUrl
get() = projectDir
+
+ override val projectFilePath: String
+ get() = JpsPathUtil.urlToPath(ideaFolder.append("misc.xml").url)
}
data class FileBased(val iprFile: VirtualFileUrl, val iprFileParent: VirtualFileUrl) : JpsProjectConfigLocation() {
override val baseDirectoryUrl: VirtualFileUrl
get() = iprFileParent
+
+ override val projectFilePath: String
+ get() = JpsPathUtil.urlToPath(iprFile.url)
}
}
diff --git a/platform/remoteDev-util/src/com/intellij/remoteDev/thinClientLink/ClientLinkModels.kt b/platform/remoteDev-util/src/com/intellij/remoteDev/thinClientLink/ClientLinkModels.kt
index ef9a82247822..11179bb3ea49 100644
--- a/platform/remoteDev-util/src/com/intellij/remoteDev/thinClientLink/ClientLinkModels.kt
+++ b/platform/remoteDev-util/src/com/intellij/remoteDev/thinClientLink/ClientLinkModels.kt
@@ -16,6 +16,9 @@ sealed class GtwToClientMessage {
@Serializable
object GatewayClose : GtwToClientMessage()
+
+ @Serializable
+ data class GatewayLogs(val gtwLogs: String) : GtwToClientMessage()
}
@@ -29,6 +32,9 @@ sealed class ClientToGtwMessage {
object ClientRestart : ClientToGtwMessage()
@Serializable
+ object ClientAsksLogs : ClientToGtwMessage()
+
+ @Serializable
data class ProjectOpenFailed(val exitCode: Int) : ClientToGtwMessage()
@Serializable
diff --git a/platform/remoteDev-util/src/com/intellij/remoteDev/util/UrlParameterKeys.kt b/platform/remoteDev-util/src/com/intellij/remoteDev/util/UrlParameterKeys.kt
index ae2943a0540c..c82be2796e09 100644
--- a/platform/remoteDev-util/src/com/intellij/remoteDev/util/UrlParameterKeys.kt
+++ b/platform/remoteDev-util/src/com/intellij/remoteDev/util/UrlParameterKeys.kt
@@ -6,6 +6,7 @@ import org.jetbrains.annotations.ApiStatus
class UrlParameterKeys {
companion object {
const val projectPath = "projectPath"
+ const val downloadLocation = "downloadLocation"
const val idePath = "idePath"
const val host = "host"
const val user = "user"
diff --git a/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCase.java b/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCase.java
index 20d50cfd97bf..e60f3e0d2d46 100644
--- a/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCase.java
+++ b/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCase.java
@@ -273,6 +273,41 @@ public abstract class KeymapsTestCase extends KeymapsTestCaseBase {
{"shift ctrl alt P", "IntroduceFunctionalParameter", "ReformatWithPrettierAction", "VcsShowPrevChangeMarker"},
{"shift ctrl alt UP", "MoveStatementUp", "ResizeToolWindowUp"},
}),
+ Map.entry("Visual Studio OSX", new String[][]{
+ {"meta L", "$Cut", "Terminal.ClearBuffer"},
+ {"alt DELETE", "EditorDeleteToWordEnd", "SafeDelete"},
+ {"shift ctrl RIGHT", "Diff.NextChange", "EditorRightWithSelection"},
+ {"meta F10", "RunToCursor", "UpdateRunningApplication"},
+ {"ctrl alt LEFT", "GotoSuperMethod", "ResizeToolWindowLeft"},
+ {"meta Y", "$Redo", "QuickImplementations"},
+ {"meta alt B", "ViewBreakpoints", "org.jetbrains.r.rendering.chunk.RunChunksAboveAction"},
+ {"meta SUBTRACT", "Back", "CollapseAll", "CollapseExpandableComponent"},
+ {"meta MINUS", "Back", "CollapseAll", "CollapseExpandableComponent"},
+ {"shift F5", "Graph.ApplyCurrentLayout", "Stop"},
+ {"shift meta alt R", "ChooseRunConfiguration", "ForceRefresh"},
+ {"ctrl alt F", "ActivateStructureToolWindow", "EditorNextWord", "ShowFilterPopup"},
+ {"meta alt ENTER", "QuickActionPopup", "ReformatCode", "org.jetbrains.r.actions.DebugSelection"},
+ {"shift meta L", "EditorDeleteLine", "Jdbc.OpenConsole.New", "rspec.LetIntroduce"},
+ {"shift alt ENTER", "JupyterDebugAction", "ToggleFullScreen"},
+ {"shift alt F11", "FindUsagesInFile", "HighlightUsagesInFile"},
+ {"shift meta alt P", "GoFmtProjectAction", "IntroduceFunctionalParameter", "ReformatWithPrettierAction", "VcsShowPrevChangeMarker"},
+ {"alt F11", "ForceStepInto", "RunJsbtTask"},
+ {"meta I", "DatabaseView.PropertiesAction", "IncrementalSearch", "org.intellij.plugins.markdown.ui.actions.styling.ToggleItalicAction"},
+ {"F5", "Graph.RouteEdges", "PoBrowserRefresh", "Resume"},
+ {"meta F1", "ExternalJavaDoc", "ShowErrorDescription"},
+ {"shift meta MINUS", "Forward", "NotebookSplitCellAction"},
+ {"F7", "CompileDirty", "NextDiff"},
+ {"meta ENTER", "Console.Execute.Multiline", "DirDiffMenu.SynchronizeDiff.All", "Docker.RemoteServers.StartComposeService", "EditorStartNewLineBefore", "SplitChooser.Duplicate", "Terminal.SmartCommandExecution.Run", "ViewSource", "org.jetbrains.r.actions.RunSelection"},
+ {"shift meta 8", "ActivateUnitTestsToolWindow", "EditorToggleColumnMode"},
+ {"shift meta H", "ChangesView.ShelveSilently", "ReplaceInPath"},
+ {"meta alt W", "ActivateWebToolWindow", "Vcs.UpdateProject"},
+ {"shift meta S", "SaveAll", "org.intellij.plugins.markdown.ui.actions.styling.ToggleStrikethroughAction"},
+ {"shift ctrl LEFT", "Diff.PrevChange", "EditorLeftWithSelection"},
+ {"ctrl H", "Replace", "Vcs.ShowMessageHistory"},
+ {"meta K", "SECOND_STROKE_SHORTCUT", "Terminal.ClearBuffer"},
+ {"meta R", "SECOND_STROKE_SHORTCUT", "org.jetbrains.plugins.ruby.rails.console.ReloadSources"},
+ {"meta E", "SECOND_STROKE_SHORTCUT", "SwitcherIterateItems", "SwitcherRecentEditedChangedToggleCheckBox"},
+ }),
Map.entry("Default for XWin", new String[][]{
{"ctrl SLASH", "CommentByLineComment", "FileChooserList.Root", "Graph.ActualSize"},
{"shift ctrl C", "CopyPaths", "DatabaseView.CopyDdlAction", "Terminal.CopySelectedText",
diff --git a/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCaseBase.java b/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCaseBase.java
index 1e3bb43ee0e9..e6094cdadeff 100644
--- a/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCaseBase.java
+++ b/platform/testFramework/extensions/src/com/intellij/keymap/KeymapsTestCaseBase.java
@@ -187,7 +187,7 @@ public abstract class KeymapsTestCaseBase extends BareTestFixtureTestCase {
assertThat(newKeymaps)
.overridingErrorMessage("Modify 'known duplicates list' test data. Keymaps were added: %s", newKeymaps)
.isEmpty();
- assertThat(newKeymaps)
+ assertThat(missingKeymaps)
.overridingErrorMessage("Modify 'known duplicates list' test data. Keymaps were removed: %s", missingKeymaps)
.isEmpty();
diff --git a/platform/usageView-impl/src/com/intellij/usages/impl/UsagePreviewPanel.java b/platform/usageView-impl/src/com/intellij/usages/impl/UsagePreviewPanel.java
index 8c4b6cf2aa22..f1918e0d07da 100644
--- a/platform/usageView-impl/src/com/intellij/usages/impl/UsagePreviewPanel.java
+++ b/platform/usageView-impl/src/com/intellij/usages/impl/UsagePreviewPanel.java
@@ -314,7 +314,7 @@ public class UsagePreviewPanel extends UsageContextPanelBase implements DataProv
}
private void customizeEditorSettings(@NotNull EditorSettings settings) {
- settings.setLineMarkerAreaShown(false);
+ settings.setLineMarkerAreaShown(myIsEditor);
settings.setFoldingOutlineShown(false);
settings.setAdditionalColumnsCount(0);
settings.setAdditionalLinesCount(0);
diff --git a/platform/util/resources/misc/registry.properties b/platform/util/resources/misc/registry.properties
index e97d82cae9d1..aba896a24402 100644
--- a/platform/util/resources/misc/registry.properties
+++ b/platform/util/resources/misc/registry.properties
@@ -1720,7 +1720,7 @@ ssr.in.editor.problem.highlighting.description=Show location of search template
jdk.regex.soe.workaround=true
jdk.regex.soe.workaround.description=In regular expression pattern replace choice \\n|. with . (and DOT_ALL option) to prevent stack overflow during matching
-batch.inspections.process.project.usages.in.parallel=true
+batch.inspections.process.project.usages.in.parallel=false
batch.inspections.process.project.usages.in.parallel.description=When enabled batch inspection project usages are processed in parallel for increased speed
batch.inspections.process.external.elements=true
@@ -1783,6 +1783,8 @@ editor.completion.hints.virtual.comma.description=Don't insert commas between co
editor.codeVision.new=true
editor.codeVision.new.description=New code vision hints (inlays)
+editor.codeVision.more.inlay=false
+editor.codeVision.more.inlay.description=Show `More...` hint on hover over code vision entities
folding.signature.validation=false
folding.signature.validation.description=Validate that signature for a PSI element, for which a folding region is generated, can be used to\
@@ -2196,7 +2198,7 @@ ide.gtd.show.error.description=Whether to show "Cannot find declaration to go" e
ide.shift.hover.image.preview=false
ide.shift.hover.image.preview.description=Whether to enable image/color preview hint by shift+hovering in the editor
-ide.ui.new.file.chooser=true
+ide.ui.new.file.chooser=false
ide.ui.new.file.chooser.description=Experimental file chooser implementation (IDEA-101218)
ide.modal.progress.wrapper.refactoring=false
diff --git a/platform/util/src/com/intellij/icons/AllIcons.java b/platform/util/src/com/intellij/icons/AllIcons.java
index ec4e92e6521b..505b5470fd63 100644
--- a/platform/util/src/com/intellij/icons/AllIcons.java
+++ b/platform/util/src/com/intellij/icons/AllIcons.java
@@ -1086,6 +1086,7 @@ public class AllIcons {
/** 16x16 */ public static final @NotNull Icon AddRemoteDatasource = load("toolbarDecorator/addRemoteDatasource.svg", 175893248, 2);
/** 16x16 */ public static final @NotNull Icon AddYouTrack = load("toolbarDecorator/addYouTrack.svg", -178809474, 2);
/** 16x16 */ public static final @NotNull Icon Export = load("toolbarDecorator/export.svg", -1997817006, 2);
+ /** 16x16 */ public static final @NotNull Icon ExportSmall = load("toolbarDecorator/exportSmall.svg", 1616570485, 2);
/** 16x16 */ public static final @NotNull Icon Import = load("toolbarDecorator/import.svg", 1687651157, 2);
}
diff --git a/platform/util/src/com/intellij/openapi/diagnostic/RollingFileHandler.kt b/platform/util/src/com/intellij/openapi/diagnostic/RollingFileHandler.kt
index e7989be035e5..d597ded59ea1 100644
--- a/platform/util/src/com/intellij/openapi/diagnostic/RollingFileHandler.kt
+++ b/platform/util/src/com/intellij/openapi/diagnostic/RollingFileHandler.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.openapi.diagnostic
import java.io.BufferedOutputStream
@@ -18,11 +18,11 @@ class RollingFileHandler @JvmOverloads constructor(
val append: Boolean,
val onRotate: Runnable? = null
) : StreamHandler() {
- private lateinit var meter: MeteredOutputStream
+ @Volatile private lateinit var meter: MeteredOutputStream
private class MeteredOutputStream(
private val delegate: OutputStream,
- var written: Long,
+ @Volatile var written: Long,
) : OutputStream() {
override fun write(b: Int) {
delegate.write(b)
@@ -54,6 +54,7 @@ class RollingFileHandler @JvmOverloads constructor(
}
private fun open(append: Boolean) {
+ Files.createDirectories(logPath.parent)
val fout = Files.newOutputStream(logPath, StandardOpenOption.CREATE, StandardOpenOption.APPEND)
val bout = BufferedOutputStream(fout)
meter = MeteredOutputStream(bout, if (append) Files.size(logPath) else 0)
@@ -65,15 +66,20 @@ class RollingFileHandler @JvmOverloads constructor(
super.publish(record)
flush()
if (limit > 0 && meter.written >= limit) {
- rotate()
+ synchronized(this) {
+ if (meter.written >= limit) {
+ rotate()
+ }
+ }
}
}
+
private fun rotate() {
onRotate?.run()
try {
Files.deleteIfExists(logPathWithIndex(count))
- for (i in 1 until count) {
+ for (i in count-1 downTo 1) {
val path = logPathWithIndex(i)
if (Files.exists(path)) {
Files.move(path, logPathWithIndex(i+1), StandardCopyOption.ATOMIC_MOVE)
diff --git a/platform/util/src/com/intellij/util/EnvironmentUtil.java b/platform/util/src/com/intellij/util/EnvironmentUtil.java
index 610371594a86..9deb11c87fa9 100644
--- a/platform/util/src/com/intellij/util/EnvironmentUtil.java
+++ b/platform/util/src/com/intellij/util/EnvironmentUtil.java
@@ -239,7 +239,7 @@ public final class EnvironmentUtil {
}
public final @NotNull Map<String, String> readShellEnv(@Nullable Path file, @Nullable Map<String, String> additionalEnvironment) throws IOException {
- String reader;
+ String reader;
if (SystemInfoRt.isMac) {
reader = PathManager.findBinFileWithException(MacOS_LOADER_BINARY).toAbsolutePath().toString();
@@ -248,7 +248,8 @@ public final class EnvironmentUtil {
reader = SHELL_ENV_COMMAND + "' '" + ENV_ZERO_ARGUMENT;
}
- Path envDataFile = Files.createTempFile("ij-shell-env-data.", ".tmp");
+ Path envDataFileDir = Files.createTempDirectory("ij-env-tmp-dir");
+ Path envDataFile = envDataFileDir.resolve("ij-shell-env-data.tmp");
StringBuilder readerCmd = new StringBuilder();
if (file != null) {
@@ -272,7 +273,13 @@ public final class EnvironmentUtil {
}
LOG.info("loading shell env: " + String.join(" ", command));
- return runProcessAndReadOutputAndEnvs(command, null, additionalEnvironment, envDataFile).getValue();
+ try {
+ return runProcessAndReadOutputAndEnvs(command, null, additionalEnvironment, envDataFile).getValue();
+ }
+ finally {
+ deleteTempFile(envDataFile);
+ deleteTempFile(envDataFileDir);
+ }
}
/**
@@ -360,7 +367,6 @@ public final class EnvironmentUtil {
return new AbstractMap.SimpleImmutableEntry<>(log, parseEnv(envData));
}
finally {
- deleteTempFile(envDataFile);
deleteTempFile(logFile);
}
}
diff --git a/platform/util/ui/src/com/intellij/ui/icons/ImageDescriptor.java b/platform/util/ui/src/com/intellij/ui/icons/ImageDescriptor.java
index 04e321fdc588..13a79cba4147 100644
--- a/platform/util/ui/src/com/intellij/ui/icons/ImageDescriptor.java
+++ b/platform/util/ui/src/com/intellij/ui/icons/ImageDescriptor.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ui.icons;
import org.jetbrains.annotations.ApiStatus;
@@ -14,19 +14,13 @@ public final class ImageDescriptor {
public final @NotNull String path;
public final float scale; // initial scale factor
public final boolean isSvg;
- public final boolean original; // path is not altered
public ImageDescriptor(@NotNull String path, float scale, boolean isSvg, boolean isDark) {
- this(path, scale, isSvg, isDark, false);
- }
-
- public ImageDescriptor(@NotNull String path, float scale, boolean isSvg, boolean isDark, boolean original) {
assert !path.isEmpty();
this.path = path;
this.scale = scale;
this.isSvg = isSvg;
- this.original = original;
this.isDark = isDark;
}
diff --git a/platform/util/ui/src/com/intellij/util/ImageLoader.java b/platform/util/ui/src/com/intellij/util/ImageLoader.java
index e6f407fb8a87..621fe9acfdff 100644
--- a/platform/util/ui/src/com/intellij/util/ImageLoader.java
+++ b/platform/util/ui/src/com/intellij/util/ImageLoader.java
@@ -257,9 +257,6 @@ public final class ImageLoader {
if (resourceClass == null && (classLoader == null || URLUtil.containsScheme(descriptor.path)) && !descriptor.path.startsWith("file://")) {
URLConnection connection = new URL(descriptor.path).openConnection();
if (connection instanceof HttpURLConnection) {
- if (!descriptor.original) {
- return null;
- }
connection.addRequestProperty("User-Agent", "IntelliJ");
}
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/VcsFileListenerContextHelper.java b/platform/vcs-api/src/com/intellij/openapi/vcs/VcsFileListenerContextHelper.java
index 4c706a3978d5..4e5a9c859dcb 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/VcsFileListenerContextHelper.java
+++ b/platform/vcs-api/src/com/intellij/openapi/vcs/VcsFileListenerContextHelper.java
@@ -2,59 +2,39 @@
package com.intellij.openapi.vcs;
import com.intellij.openapi.project.Project;
-import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.newvfs.events.VFileCreateEvent;
import com.intellij.openapi.vfs.newvfs.events.VFileDeleteEvent;
+import org.jetbrains.annotations.NotNull;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.Collection;
/**
+ * Allows excluding specific files from being processed by {@link VcsVFSListener}.
+ * <p>
* NB: processing order is different for Added and Deleted files, {@link VcsVFSListener} implementation depends on it.
* <p/>
* For DELETED files {@link VFileDeleteEvent} MUST be fired AFTER {@link #ignoreDeleted} method invocation.
* For ADDED files {@link VFileCreateEvent} CAN be fired BEFORE {@link #ignoreAdded} method invocation, in the same command.
*/
-public class VcsFileListenerContextHelper {
- // to ignore by listeners
- private final Set<FilePath> myDeletedContext;
- private final Set<VirtualFile> myAddContext;
-
- VcsFileListenerContextHelper(final Project project) {
- myDeletedContext = new HashSet<>();
- myAddContext = new HashSet<>();
- }
+public interface VcsFileListenerContextHelper {
- public static VcsFileListenerContextHelper getInstance(final Project project) {
+ static VcsFileListenerContextHelper getInstance(@NotNull Project project) {
return project.getService(VcsFileListenerContextHelper.class);
}
- public void ignoreDeleted(final FilePath filePath) {
- myDeletedContext.add(filePath);
- }
+ void ignoreDeleted(@NotNull Collection<FilePath> filePath);
- public boolean isDeletionIgnored(final FilePath filePath) {
- return myDeletedContext.contains(filePath);
- }
+ boolean isDeletionIgnored(@NotNull FilePath filePath);
- public void ignoreAdded(final VirtualFile virtualFile) {
- myAddContext.add(virtualFile);
- }
+ void ignoreAdded(@NotNull Collection<FilePath> filePaths);
- public boolean isAdditionIgnored(final VirtualFile virtualFile) {
- return myAddContext.contains(virtualFile);
- }
+ void ignoreAddedRecursive(@NotNull Collection<FilePath> filePaths);
- public void clearContext() {
- myAddContext.clear();
- myDeletedContext.clear();
- }
+ boolean isAdditionIgnored(@NotNull FilePath filePath);
- public boolean isAdditionContextEmpty() {
- return myAddContext.isEmpty();
- }
+ void clearContext();
- public boolean isDeletionContextEmpty() {
- return myDeletedContext.isEmpty();
- }
+ boolean isAdditionContextEmpty();
+
+ boolean isDeletionContextEmpty();
}
diff --git a/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java b/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java
index a8dc174b036f..54c618fa5a09 100644
--- a/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java
+++ b/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java
@@ -38,6 +38,7 @@ import org.jetbrains.annotations.*;
import javax.swing.*;
import java.io.File;
import java.io.IOException;
+import java.nio.file.Path;
import java.util.*;
import java.util.stream.Collectors;
@@ -209,6 +210,11 @@ public class VcsUtil {
}
@NotNull
+ public static FilePath getFilePath(@NotNull Path path, boolean isDirectory) {
+ return VcsContextFactory.SERVICE.getInstance().createFilePath(path, isDirectory);
+ }
+
+ @NotNull
public static FilePath getFilePath(@NotNull @NonNls String path, boolean isDirectory) {
return VcsContextFactory.SERVICE.getInstance().createFilePath(path, isDirectory);
}
@@ -535,10 +541,17 @@ public class VcsUtil {
}
else if (FileUtil.pathsEqual(mapping.getDirectory(), newMapping.getDirectory())) {
if (!StringUtil.isEmptyOrSpaces(mapping.getVcs())) {
- LOG.warn("Substituting existing mapping [" + mapping.getDirectory() + "] -> [" + mapping.getVcs() + "] with [" + mapping.getVcs() + "]");
+ if (mapping.getVcs().equals(newMapping.getVcs())) {
+ LOG.debug(String.format("Substituting existing mapping with identical [%s] -> [%s]",
+ mapping.getDirectory(), mapping.getVcs()));
+ }
+ else {
+ LOG.warn(String.format("Substituting existing mapping [%s] -> [%s] with [%s]",
+ mapping.getDirectory(), mapping.getVcs(), newMapping.getVcs()));
+ }
}
else {
- LOG.debug("Removing [" + mapping.getDirectory() + "] -> <None> mapping");
+ LOG.debug(String.format("Removing [%s] -> <None> mapping", mapping.getDirectory()));
}
iterator.remove();
}
diff --git a/platform/vcs-impl/resources/META-INF/VcsExtensions.xml b/platform/vcs-impl/resources/META-INF/VcsExtensions.xml
index b1f367816a57..0e5cb1112dad 100644
--- a/platform/vcs-impl/resources/META-INF/VcsExtensions.xml
+++ b/platform/vcs-impl/resources/META-INF/VcsExtensions.xml
@@ -211,7 +211,8 @@
serviceImplementation="com.intellij.openapi.vcs.impl.projectlevelman.AllVcses"/>
<projectService serviceImplementation="com.intellij.openapi.vcs.changes.RemoteRevisionsCache"/>
- <projectService serviceImplementation="com.intellij.openapi.vcs.VcsFileListenerContextHelper"/>
+ <projectService serviceInterface="com.intellij.openapi.vcs.VcsFileListenerContextHelper"
+ serviceImplementation="com.intellij.openapi.vcs.VcsFileListenerContextHelperImpl"/>
<vcs.fileStatusProvider implementation="com.intellij.openapi.vcs.changes.conflicts.ChangelistConflictFileStatusProvider"/>
<writingAccessProvider implementation="com.intellij.openapi.vcs.changes.conflicts.ChangelistConflictAccessProvider"/>
diff --git a/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeAuthorInlayHintsCollector.kt b/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeAuthorInlayHintsCollector.kt
index b523faf148dc..a845ddc92fa1 100644
--- a/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeAuthorInlayHintsCollector.kt
+++ b/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeAuthorInlayHintsCollector.kt
@@ -41,7 +41,7 @@ internal class VcsCodeAuthorInlayHintsCollector(
if (!filter.invoke(element)) return true
val range = getTextRangeWithoutLeadingCommentsAndWhitespaces(element)
- val info = PREVIEW_INFO_KEY.get(element.containingFile) ?: getCodeAuthorInfo(element.project, range, editor)
+ val info = PREVIEW_INFO_KEY.get(editor) ?: getCodeAuthorInfo(element.project, range, editor)
val presentation = buildPresentation(element, info, editor).addContextMenu(element.project)
sink.addCodeVisionElement(editor, range.startOffset, BlockInlayPriority.CODE_AUTHOR, presentation)
diff --git a/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeVisionProvider.kt b/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeVisionProvider.kt
index d9997072c008..22473514e617 100644
--- a/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeVisionProvider.kt
+++ b/platform/vcs-impl/src/com/intellij/codeInsight/hints/VcsCodeVisionProvider.kt
@@ -3,7 +3,9 @@
package com.intellij.codeInsight.hints
import com.intellij.codeInsight.codeVision.*
+import com.intellij.codeInsight.codeVision.CodeVisionState.Companion.READY_EMPTY
import com.intellij.codeInsight.codeVision.ui.model.ClickableTextCodeVisionEntry
+import com.intellij.codeInsight.hints.Result.Companion.SUCCESS_EMPTY
import com.intellij.icons.AllIcons
import com.intellij.lang.Language
import com.intellij.openapi.Disposable
@@ -19,6 +21,7 @@ import com.intellij.openapi.project.Project
import com.intellij.openapi.util.Disposer
import com.intellij.openapi.util.Key
import com.intellij.openapi.util.TextRange
+import com.intellij.openapi.vcs.AbstractVcs
import com.intellij.openapi.vcs.ProjectLevelVcsManager
import com.intellij.openapi.vcs.VcsBundle
import com.intellij.openapi.vcs.actions.ShortNameType
@@ -49,27 +52,33 @@ class VcsCodeVisionProvider : CodeVisionProvider<Unit> {
}
- override fun computeForEditor(editor: Editor, uiData: Unit): List<Pair<TextRange, CodeVisionEntry>> {
+ override fun preparePreview(editor: Editor, file: PsiFile) {
+ addPreviewInfo(editor)
+ }
+
+ override fun computeCodeVision(editor: Editor, uiData: Unit): CodeVisionState {
return runReadAction {
- val project = editor.project ?: return@runReadAction emptyList()
+ val project = editor.project ?: return@runReadAction READY_EMPTY
val document = editor.document
- val file = PsiDocumentManager.getInstance(project).getPsiFile(document) ?: return@runReadAction emptyList()
+ val file = PsiDocumentManager.getInstance(project).getPsiFile(document) ?: return@runReadAction CodeVisionState.NotReady
val language = file.language
- val aspect = getAspect(file, editor) ?: return@runReadAction emptyList()
+ val aspectResult = getAspect(file, editor)
+ if (aspectResult.isSuccess.not()) return@runReadAction CodeVisionState.NotReady
+ val aspect = aspectResult.result ?: return@runReadAction READY_EMPTY
val lenses = ArrayList<Pair<TextRange, CodeVisionEntry>>()
try {
val visionLanguageContext = VcsCodeVisionLanguageContext.providersExtensionPoint.forLanguage(language)
- ?: return@runReadAction emptyList()
+ ?: return@runReadAction READY_EMPTY
val traverser = SyntaxTraverser.psiTraverser(file)
for (element in traverser.preOrderDfsTraversal()) {
if (visionLanguageContext.isAccepted(element)) {
val textRange = InlayHintsUtils.getTextRangeWithoutLeadingCommentsAndWhitespaces(element)
val length = editor.document.textLength
val adjustedRange = TextRange(min(textRange.startOffset, length), min(textRange.endOffset, length))
- val codeAuthorInfo = getCodeAuthorInfo(element.project, adjustedRange, editor, aspect)
+ val codeAuthorInfo = PREVIEW_INFO_KEY.get(editor) ?: getCodeAuthorInfo(element.project, adjustedRange, editor, aspect)
val text = codeAuthorInfo.getText()
val icon = if (codeAuthorInfo.mainAuthor != null) AllIcons.Vcs.Author else null
val clickHandler = CodeAuthorClickHandler(element, language)
@@ -83,7 +92,7 @@ class VcsCodeVisionProvider : CodeVisionProvider<Unit> {
e.printStackTrace()
throw e
}
- return@runReadAction lenses
+ return@runReadAction CodeVisionState.Ready(lenses)
}
}
@@ -180,21 +189,25 @@ private fun getCodeAuthorInfo(project: Project, range: TextRange, editor: Editor
)
}
-fun getAspect(file: PsiFile, editor: Editor): LineAnnotationAspect? {
- if (hasPreviewInfo(file)) return LineAnnotationAspectAdapter.NULL_ASPECT
- val virtualFile = file.virtualFile ?: return null
- val annotation = getAnnotation(file.project, virtualFile, editor) ?: return null
- return annotation.aspects.find { it.id == LineAnnotationAspect.AUTHOR }
+private fun getAspect(file: PsiFile, editor: Editor): Result<LineAnnotationAspect?> {
+ if (hasPreviewInfo(editor)) return Result.Success(LineAnnotationAspectAdapter.NULL_ASPECT)
+ val virtualFile = file.virtualFile ?: return SUCCESS_EMPTY
+ val annotationResult = getAnnotation(file.project, virtualFile, editor)
+ if (annotationResult.isSuccess.not()) return Result.Failure()
+
+ return Result.Success(annotationResult.result?.aspects?.find { it.id == LineAnnotationAspect.AUTHOR })
}
private val VCS_CODE_AUTHOR_ANNOTATION = Key.create<FileAnnotation>("Vcs.CodeAuthor.Annotation")
-private fun getAnnotation(project: Project, file: VirtualFile, editor: Editor): FileAnnotation? {
- editor.getUserData(VCS_CODE_AUTHOR_ANNOTATION)?.let { return it }
+private fun getAnnotation(project: Project, file: VirtualFile, editor: Editor): Result<FileAnnotation?> {
+ editor.getUserData(VCS_CODE_AUTHOR_ANNOTATION)?.let { return Result.Success(it) }
- val vcs = ProjectLevelVcsManager.getInstance(project).getVcsFor(file) ?: return null
- val provider = vcs.annotationProvider as? CacheableAnnotationProvider ?: return null
- val annotation = provider.getFromCache(file) ?: return null
+ val vcs = ProjectLevelVcsManager.getInstance(project).getVcsFor(file) ?: return SUCCESS_EMPTY
+ val provider = vcs.annotationProvider as? CacheableAnnotationProvider ?: return SUCCESS_EMPTY
+ val isFileInVcs = AbstractVcs.fileInVcsByFileStatus(project, file)
+ if (!isFileInVcs) return SUCCESS_EMPTY
+ val annotation = provider.getFromCache(file) ?: return Result.Failure()
val annotationDisposable = Disposable {
unregisterAnnotation(file, annotation)
@@ -214,7 +227,7 @@ private fun getAnnotation(project: Project, file: VirtualFile, editor: Editor):
EditorUtil.disposeWithEditor(editor, annotationDisposable)
}
- return annotation
+ return Result.Success(annotation)
}
private fun registerAnnotation(file: VirtualFile, annotation: FileAnnotation) =
@@ -235,4 +248,21 @@ private fun VcsCodeAuthorInfo.getText(): String {
!isMultiAuthor && isModified -> VcsBundle.message("label.single.author.modified.code", mainAuthorText)
else -> mainAuthorText
}
-} \ No newline at end of file
+}
+
+private sealed class Result<out T>(val isSuccess: Boolean, val result: T?){
+
+ companion object{
+ val SUCCESS_EMPTY = Success(null)
+ }
+ class Success<T>(result: T) : Result<T>(true, result)
+ class Failure<T> : Result<T>(false, null)
+}
+
+private val PREVIEW_INFO_KEY = Key.create<VcsCodeAuthorInfo>("preview.author.info")
+
+private fun addPreviewInfo(editor: Editor) {
+ editor.putUserData(PREVIEW_INFO_KEY, VcsCodeAuthorInfo("John Smith", 2, false))
+}
+
+private fun hasPreviewInfo(editor: Editor) = PREVIEW_INFO_KEY.get(editor) != null \ No newline at end of file
diff --git a/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/apply/GenericPatchApplier.java b/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/apply/GenericPatchApplier.java
index f87e8b93a6bc..81141c62ffeb 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/apply/GenericPatchApplier.java
+++ b/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/apply/GenericPatchApplier.java
@@ -60,7 +60,7 @@ public class GenericPatchApplier {
}
@Nullable
- public static AppliedPatch apply(CharSequence text, List<? extends PatchHunk> hunks) {
+ public static AppliedPatch apply(@NotNull CharSequence text, @NotNull List<? extends PatchHunk> hunks) {
String patchedText = PlainSimplePatchApplier.apply(text, hunks);
if (patchedText != null) {
return new AppliedPatch(patchedText, SUCCESS);
diff --git a/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/formove/TriggerAdditionOrDeletion.java b/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/formove/TriggerAdditionOrDeletion.java
index 9f9165a046f0..ba07e2f4de58 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/formove/TriggerAdditionOrDeletion.java
+++ b/platform/vcs-impl/src/com/intellij/openapi/diff/impl/patch/formove/TriggerAdditionOrDeletion.java
@@ -8,8 +8,6 @@ import com.intellij.openapi.vcs.checkin.CheckinEnvironment;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
-import com.intellij.util.FilePathByPathComparator;
-import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;
import java.util.*;
@@ -135,9 +133,7 @@ public class TriggerAdditionOrDeletion {
myAffected.addAll(toBeDeleted);
if (!vcs.fileListenerIsSynchronous()) {
- for (FilePath filePath : toBeDeleted) {
- myVcsFileListenerContextHelper.ignoreDeleted(filePath);
- }
+ myVcsFileListenerContextHelper.ignoreDeleted(toBeDeleted);
Set<FilePath> paths = myPreparedDeletion.computeIfAbsent(vcs, key -> new HashSet<>());
paths.addAll(toBeDeleted);
@@ -177,9 +173,7 @@ public class TriggerAdditionOrDeletion {
myAffected.addAll(toBeAdded);
if (!vcs.fileListenerIsSynchronous()) {
- for (FilePath filePath : ContainerUtil.sorted(toBeAdded, FilePathByPathComparator.getInstance())) {
- myVcsFileListenerContextHelper.ignoreAdded(filePath.getVirtualFile());
- }
+ myVcsFileListenerContextHelper.ignoreAdded(toBeAdded);
Set<FilePath> paths = myPreparedAddition.computeIfAbsent(vcs, key -> new HashSet<>());
paths.addAll(toBeAdded);
diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsFileListenerContextHelperImpl.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsFileListenerContextHelperImpl.java
new file mode 100644
index 000000000000..b6d4fd514803
--- /dev/null
+++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsFileListenerContextHelperImpl.java
@@ -0,0 +1,76 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package com.intellij.openapi.vcs;
+
+import com.intellij.openapi.util.SystemInfo;
+import com.intellij.openapi.vcs.impl.projectlevelman.RecursiveFilePathSet;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+public class VcsFileListenerContextHelperImpl implements VcsFileListenerContextHelper {
+ private final Object LOCK = new Object();
+ private final Set<FilePath> myIgnoredDeleted = new HashSet<>();
+ private final Set<FilePath> myIgnoredAdded = new HashSet<>();
+ private final RecursiveFilePathSet myIgnoredAddedRecursive = new RecursiveFilePathSet(SystemInfo.isFileSystemCaseSensitive);
+
+ @Override
+ public void ignoreDeleted(@NotNull Collection<FilePath> filePath) {
+ synchronized (LOCK) {
+ myIgnoredDeleted.addAll(filePath);
+ }
+ }
+
+ @Override
+ public boolean isDeletionIgnored(@NotNull FilePath filePath) {
+ synchronized (LOCK) {
+ return myIgnoredDeleted.contains(filePath);
+ }
+ }
+
+ @Override
+ public void ignoreAdded(@NotNull Collection<FilePath> filePaths) {
+ synchronized (LOCK) {
+ myIgnoredAdded.addAll(filePaths);
+ }
+ }
+
+ @Override
+ public void ignoreAddedRecursive(@NotNull Collection<FilePath> filePaths) {
+ synchronized (LOCK) {
+ myIgnoredAddedRecursive.addAll(filePaths);
+ }
+ }
+
+ @Override
+ public boolean isAdditionIgnored(@NotNull FilePath filePath) {
+ synchronized (LOCK) {
+ return myIgnoredAdded.contains(filePath) ||
+ myIgnoredAddedRecursive.hasAncestor(filePath);
+ }
+ }
+
+ @Override
+ public void clearContext() {
+ synchronized (LOCK) {
+ myIgnoredAdded.clear();
+ myIgnoredAddedRecursive.clear();
+ myIgnoredDeleted.clear();
+ }
+ }
+
+ @Override
+ public boolean isAdditionContextEmpty() {
+ synchronized (LOCK) {
+ return myIgnoredAdded.isEmpty() && myIgnoredAddedRecursive.isEmpty();
+ }
+ }
+
+ @Override
+ public boolean isDeletionContextEmpty() {
+ synchronized (LOCK) {
+ return myIgnoredDeleted.isEmpty();
+ }
+ }
+}
diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsVFSListener.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsVFSListener.java
index 26ef9e5ed260..48c45eab88ec 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsVFSListener.java
+++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/VcsVFSListener.java
@@ -200,9 +200,9 @@ public abstract class VcsVFSListener implements Disposable {
private boolean isAnythingToProcess() {
return withLock(PROCESSING_LOCK.readLock(), () -> !myAddedFiles.isEmpty() ||
- !myDeletedFiles.isEmpty() ||
- !myDeletedWithoutConfirmFiles.isEmpty() ||
- !myMovedFiles.isEmpty());
+ !myDeletedFiles.isEmpty() ||
+ !myDeletedWithoutConfirmFiles.isEmpty() ||
+ !myMovedFiles.isEmpty());
}
@RequiresBackgroundThread
@@ -219,7 +219,8 @@ public abstract class VcsVFSListener implements Disposable {
List<VcsException> exceptions = acquireExceptions();
if (!exceptions.isEmpty()) {
- AbstractVcsHelper.getInstance(myProject).showErrors(exceptions, VcsBundle.message("vcs.tab.title.vcs.name.operations.errors", myVcs.getDisplayName()));
+ AbstractVcsHelper.getInstance(myProject)
+ .showErrors(exceptions, VcsBundle.message("vcs.tab.title.vcs.name.operations.errors", myVcs.getDisplayName()));
}
}
@@ -429,7 +430,7 @@ public abstract class VcsVFSListener implements Disposable {
private boolean allowedAddition(@NotNull VFileEvent event) {
if (myVcsFileListenerContextHelper.isAdditionContextEmpty()) return true;
- return !myVcsFileListenerContextHelper.isAdditionIgnored(event.getFile());
+ return !myVcsFileListenerContextHelper.isAdditionIgnored(VcsUtil.getFilePath(event.getPath()));
}
@RequiresBackgroundThread
@@ -544,6 +545,7 @@ public abstract class VcsVFSListener implements Disposable {
/**
* Same as {@link #selectFilePathsToDelete} but for add operation
+ *
* @param addFiles added files set
* @return selected files or empty if {@link VcsShowConfirmationOption.Value#DO_NOTHING_SILENTLY}
*/
@@ -741,37 +743,38 @@ public abstract class VcsVFSListener implements Disposable {
};
}
}
- private class MyCommandAdapter implements CommandListener {
- @Override
- public void commandFinished(@NotNull CommandEvent event) {
- if (myProject != event.getProject()) return;
+ private class MyCommandAdapter implements CommandListener {
- /*
- * Create file events cannot be filtered in afterVfsChange since VcsFileListenerContextHelper populated after actual file creation in PathsVerifier.CheckAdded.check
- * So this commandFinished is the only way to get in sync with VcsFileListenerContextHelper to check if additions need to be filtered.
- */
- List<VFileEvent> events = ContainerUtil.filter(myEventsToProcess, e -> !(e instanceof VFileCreateEvent) || allowedAddition(e));
- myEventsToProcess.clear();
+ @Override
+ public void commandFinished(@NotNull CommandEvent event) {
+ if (myProject != event.getProject()) return;
- if (events.isEmpty() && !myProcessor.isAnythingToProcess()) return;
+ /*
+ * Create file events cannot be filtered in afterVfsChange since VcsFileListenerContextHelper populated after actual file creation in PathsVerifier.CheckAdded.check
+ * So this commandFinished is the only way to get in sync with VcsFileListenerContextHelper to check if additions need to be filtered.
+ */
+ List<VFileEvent> events = ContainerUtil.filter(myEventsToProcess, e -> !(e instanceof VFileCreateEvent) || allowedAddition(e));
+ myEventsToProcess.clear();
- processEventsInBackground(events);
- }
+ if (events.isEmpty() && !myProcessor.isAnythingToProcess()) return;
- /**
- * Not using modal progress here, because it could lead to some focus related assertion (e.g. "showing dialogs from popup" in com.intellij.ui.popup.tree.TreePopupImpl)
- * Assume, that it is a safe to do all processing in background even if "Add to VCS" dialog may appear during such processing.
- */
- private void processEventsInBackground(List<VFileEvent> events) {
- new Task.Backgroundable(myProject, VcsBundle.message("progress.title.version.control.processing.changed.files"), true) {
- @Override
- public void run(@NotNull ProgressIndicator indicator) {
- indicator.checkCanceled();
- myProcessor.process(events);
- }
- }.queue();
- }
+ processEventsInBackground(events);
}
+
+ /**
+ * Not using modal progress here, because it could lead to some focus related assertion (e.g. "showing dialogs from popup" in com.intellij.ui.popup.tree.TreePopupImpl)
+ * Assume, that it is a safe to do all processing in background even if "Add to VCS" dialog may appear during such processing.
+ */
+ private void processEventsInBackground(List<VFileEvent> events) {
+ new Task.Backgroundable(myProject, VcsBundle.message("progress.title.version.control.processing.changed.files"), true) {
+ @Override
+ public void run(@NotNull ProgressIndicator indicator) {
+ indicator.checkCanceled();
+ myProcessor.process(events);
+ }
+ }.queue();
+ }
+ }
}
diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/VcsQuickActionsToolbarPopup.kt b/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/VcsQuickActionsToolbarPopup.kt
index 1075885b1f63..258941882e4f 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/VcsQuickActionsToolbarPopup.kt
+++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/VcsQuickActionsToolbarPopup.kt
@@ -6,6 +6,7 @@ import com.intellij.ide.DataManager
import com.intellij.ide.HelpTooltip
import com.intellij.ide.actions.GotoClassPresentationUpdater.getActionTitlePluralized
import com.intellij.ide.ui.customization.CustomActionsSchema
+import com.intellij.idea.ActionsBundle
import com.intellij.openapi.actionSystem.*
import com.intellij.openapi.actionSystem.ex.CustomComponentAction
import com.intellij.openapi.actionSystem.impl.ActionButtonWithText
@@ -46,12 +47,12 @@ open class VcsQuickActionsToolbarPopup : IconWithTextAction(), CustomComponentAc
if (Registry.`is`("ide.helptooltip.enabled")) {
HelpTooltip.dispose(this)
HelpTooltip()
- .setTitle(VcsBundle.message("action.Vcs.Toolbar.ShowMoreActions.description"))
+ .setTitle(ActionsBundle.message("action.Vcs.Toolbar.ShowMoreActions.description"))
.setShortcut(shortcut)
.installOn(this)
}
else {
- toolTipText = VcsBundle.message("action.Vcs.Toolbar.ShowMoreActions.description", shortcutText, classesTabName)
+ toolTipText = ActionsBundle.message("action.Vcs.Toolbar.ShowMoreActions.description", shortcutText, classesTabName)
}
}
@@ -106,7 +107,7 @@ open class VcsQuickActionsToolbarPopup : IconWithTextAction(), CustomComponentAc
}
presentation.isEnabledAndVisible = true
presentation.icon = AllIcons.Vcs.BranchNode
- presentation.text = VcsBundle.message("action.Vcs.Toolbar.ShowMoreActions.text") + " "
+ presentation.text = ActionsBundle.message("action.Vcs.Toolbar.ShowMoreActions.text") + " "
}
companion object {
diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/impl/projectlevelman/RecursiveFilePathSet.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/impl/projectlevelman/RecursiveFilePathSet.java
index d75ed7e6fc8b..fb54450c492f 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/vcs/impl/projectlevelman/RecursiveFilePathSet.java
+++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/impl/projectlevelman/RecursiveFilePathSet.java
@@ -27,6 +27,10 @@ public class RecursiveFilePathSet {
myMapping.remove(filePath.getPath());
}
+ public boolean isEmpty() {
+ return myMapping.values().isEmpty();
+ }
+
public void clear() {
myMapping.clear();
}
diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt
index aa6ad82fc7a0..41ec78888ff5 100644
--- a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt
+++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.log.impl
import com.intellij.openapi.project.Project
@@ -37,7 +37,7 @@ object VcsLogContentUtil {
return uis.singleOrNull()
}
- internal fun selectLogUi(project: Project, logUi: VcsLogUi): Boolean {
+ internal fun selectLogUi(project: Project, logUi: VcsLogUi, requestFocus: Boolean = true): Boolean {
val toolWindow = ToolWindowManager.getInstance(project).getToolWindow(ChangesViewContentManager.TOOLWINDOW_ID) ?: return false
val manager = toolWindow.contentManager
val component = ContentUtilEx.findContentComponent(manager) { c -> getLogUi(c)?.id == logUi.id } ?: return false
@@ -45,7 +45,7 @@ object VcsLogContentUtil {
if (!toolWindow.isVisible) {
toolWindow.activate(null)
}
- return ContentUtilEx.selectContent(manager, component, true)
+ return ContentUtilEx.selectContent(manager, component, requestFocus)
}
fun getId(content: Content): String? {
diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogNavigationUtil.kt b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogNavigationUtil.kt
index 00f2eac70e02..f1cba0702d58 100644
--- a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogNavigationUtil.kt
+++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogNavigationUtil.kt
@@ -114,6 +114,15 @@ object VcsLogNavigationUtil {
}
}
+ val otherUis = manager.getLogUis(VcsLogTabLocation.TOOL_WINDOW).filterIsInstance<MainVcsLogUi>() - selectedUis.toSet()
+ otherUis.find { ui ->
+ ui.refresher.setValid(true, false)
+ predicate(ui) && ui.showCommit(hash, root, requestFocus)
+ }?.let { ui ->
+ VcsLogContentUtil.selectLogUi(project, ui, requestFocus)
+ return ui
+ }
+
val newUi = VcsProjectLog.getInstance(project).openLogTab(VcsLogFilterObject.EMPTY_COLLECTION,
VcsLogTabLocation.TOOL_WINDOW) ?: return null
if (newUi.showCommit(hash, root, requestFocus)) return newUi
diff --git a/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectEntitiesLoader.kt b/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectEntitiesLoader.kt
index 492107b925b9..dcd504fc330f 100644
--- a/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectEntitiesLoader.kt
+++ b/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectEntitiesLoader.kt
@@ -34,7 +34,7 @@ object JpsProjectEntitiesLoader {
externalStoragePath: Path, errorReporter: ErrorReporter, virtualFileManager: VirtualFileUrlManager,
fileInDirectorySourceNames: FileInDirectorySourceNames = FileInDirectorySourceNames.empty(),
externalStorageConfigurationManager: ExternalStorageConfigurationManager? = null): JpsProjectSerializers {
- val reader = CachingJpsFileContentReader(configLocation.baseDirectoryUrlString)
+ val reader = CachingJpsFileContentReader(configLocation)
val data = createProjectEntitiesSerializers(configLocation, reader, externalStoragePath, true, virtualFileManager,
externalStorageConfigurationManager = externalStorageConfigurationManager,
fileInDirectorySourceNames = fileInDirectorySourceNames)
@@ -54,7 +54,7 @@ object JpsProjectEntitiesLoader {
builder: WorkspaceEntityStorageBuilder,
errorReporter: ErrorReporter,
virtualFileManager: VirtualFileUrlManager) {
- val reader = CachingJpsFileContentReader(configLocation.baseDirectoryUrlString)
+ val reader = CachingJpsFileContentReader(configLocation)
val serializer = ModuleListSerializerImpl.createModuleEntitiesSerializer(moduleFile.toVirtualFileUrl(virtualFileManager), null, source,
virtualFileManager)
serializer.loadEntities(builder, reader, errorReporter, virtualFileManager)
diff --git a/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSerializersImpl.kt b/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSerializersImpl.kt
index e737bb2a1a35..cfc89a196d6b 100644
--- a/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSerializersImpl.kt
+++ b/platform/workspaceModel/jps/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSerializersImpl.kt
@@ -39,6 +39,7 @@ import java.util.*
import java.util.concurrent.Callable
import java.util.concurrent.ConcurrentHashMap
import java.util.concurrent.ForkJoinTask
+import java.util.function.Supplier
import kotlin.streams.toList
class JpsProjectSerializersImpl(directorySerializersFactories: List<JpsDirectoryEntitiesSerializerFactory<*>>,
@@ -834,8 +835,12 @@ class JpsProjectSerializersImpl(directorySerializersFactories: List<JpsDirectory
}
}
-class CachingJpsFileContentReader(projectBaseDirUrl: String) : JpsFileContentReader {
- private val projectPathMacroManager = ProjectPathMacroManager.createInstance({ JpsPathUtil.urlToPath(projectBaseDirUrl) }, null)
+class CachingJpsFileContentReader(private val configLocation: JpsProjectConfigLocation) : JpsFileContentReader {
+ private val projectPathMacroManager = ProjectPathMacroManager.createInstance(
+ configLocation::projectFilePath,
+ { JpsPathUtil.urlToPath(configLocation.baseDirectoryUrlString) },
+ null
+ )
private val fileContentCache = ConcurrentHashMap<String, Map<String, Element>>()
override fun loadComponent(fileUrl: String, componentName: String, customModuleFilePath: String?): Element? {
@@ -860,7 +865,7 @@ class CachingJpsFileContentReader(projectBaseDirUrl: String) : JpsFileContentRea
customModuleFilePath: String?): PathMacroManager {
val path = JpsPathUtil.urlToPath(fileUrl)
return if (FileUtil.extensionEquals(fileUrl, "iml") || isExternalModuleFile(path)) {
- ModulePathMacroManager.createInstance { customModuleFilePath ?: path }
+ ModulePathMacroManager.createInstance(configLocation::projectFilePath, Supplier { customModuleFilePath ?: path })
}
else {
projectPathMacroManager
diff --git a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/ImlReplaceBySourceTest.kt b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/ImlReplaceBySourceTest.kt
index ff14c0cc3b5e..da013942f6d5 100644
--- a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/ImlReplaceBySourceTest.kt
+++ b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/ImlReplaceBySourceTest.kt
@@ -115,7 +115,7 @@ class ImlReplaceBySourceTest {
storageBuilder1, virtualFileManager)
val storageBuilder2 = WorkspaceEntityStorageBuilder.create()
- val reader = CachingJpsFileContentReader(projectFile.asConfigLocation(virtualFileManager).baseDirectoryUrlString)
+ val reader = CachingJpsFileContentReader(projectFile.asConfigLocation(virtualFileManager))
data.loadAll(reader, storageBuilder2, TestErrorReporter, null)
val before = storageBuilder1.toStorage()
diff --git a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/DelayedProjectSynchronizerTest.kt b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/DelayedProjectSynchronizerTest.kt
index f62daff1a2c6..13e6b847d413 100644
--- a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/DelayedProjectSynchronizerTest.kt
+++ b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/DelayedProjectSynchronizerTest.kt
@@ -84,7 +84,7 @@ class DelayedProjectSynchronizerTest {
private fun checkSerializersConsistency(project: Project) {
val storage = WorkspaceModel.getInstance(project).entityStorage.current
val serializers = JpsProjectModelSynchronizer.getInstance(project)!!.getSerializers()
- serializers.checkConsistency(getJpsProjectConfigLocation(project)!!.baseDirectoryUrlString, storage, VirtualFileUrlManager.getInstance(project))
+ serializers.checkConsistency(getJpsProjectConfigLocation(project)!!, storage, VirtualFileUrlManager.getInstance(project))
}
@Test
@@ -123,7 +123,7 @@ class DelayedProjectSynchronizerTest {
LibraryTablesRegistrar.getInstance().getLibraryTable(project).createLibrary("foo")
}
val storage = WorkspaceModel.getInstance(project).entityStorage.current
- JpsProjectModelSynchronizer.getInstance(project)!!.getSerializers().saveAllEntities(storage, projectData.projectDir)
+ JpsProjectModelSynchronizer.getInstance(project)!!.getSerializers().saveAllEntities(storage, projectData.configLocation)
val librariesFolder = projectData.projectDir.toPath().resolve(".idea/libraries/")
val librariesPaths = Files.list(librariesFolder).sorted().toList()
assertEquals(4, librariesPaths.size)
@@ -144,7 +144,7 @@ class DelayedProjectSynchronizerTest {
val configLocation = toConfigLocation(projectData.projectDir.toPath(), virtualFileManager)
val serializers = loadProject(configLocation, originalBuilder, virtualFileManager, fileInDirectorySourceNames) as JpsProjectSerializersImpl
val loadedProjectData = LoadedProjectData(originalBuilder.toStorage(), serializers, configLocation, projectFile)
- serializers.checkConsistency(loadedProjectData.projectDirUrl, loadedProjectData.storage, virtualFileManager)
+ serializers.checkConsistency(configLocation, loadedProjectData.storage, virtualFileManager)
assertThat(projectData.storage.entities(ModuleEntity::class.java).map {
assertTrue(it.entitySource is JpsFileEntitySource.FileInDirectory)
diff --git a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectReloadingTest.kt b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectReloadingTest.kt
index bee9debbf6d9..0f3593adacdf 100644
--- a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectReloadingTest.kt
+++ b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectReloadingTest.kt
@@ -115,10 +115,10 @@ class JpsProjectReloadingTest : HeavyPlatformTestCase() {
val projectData = copyAndLoadProject(originalProjectFile, virtualFileManager)
val change = updateAction(projectData)
val (changedEntities, builder) =
- projectData.serializers.reloadFromChangedFiles(change, CachingJpsFileContentReader(projectData.projectDirUrl), TestErrorReporter)
+ projectData.serializers.reloadFromChangedFiles(change, CachingJpsFileContentReader(projectData.configLocation), TestErrorReporter)
val originalBuilder = WorkspaceEntityStorageBuilder.from(projectData.storage)
originalBuilder.replaceBySource({it in changedEntities}, builder)
- projectData.serializers.checkConsistency(projectData.projectDirUrl, originalBuilder, virtualFileManager)
+ projectData.serializers.checkConsistency(projectData.configLocation, originalBuilder, virtualFileManager)
return ReloadedProjectData(originalBuilder, projectData.projectDirUrl)
}
diff --git a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAfterChangesTest.kt b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAfterChangesTest.kt
index f4ca90e09d26..7c5ae8fd02ec 100644
--- a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAfterChangesTest.kt
+++ b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAfterChangesTest.kt
@@ -163,10 +163,10 @@ class JpsProjectSaveAfterChangesTest {
is EntityChange.Replaced -> listOf(change.oldEntity, change.newEntity)
}
}.map { it.entitySource }}
- val writer = JpsFileContentWriterImpl(projectData.projectDir)
+ val writer = JpsFileContentWriterImpl(projectData.configLocation)
projectData.serializers.saveEntities(builder.toStorage(), changedSources, writer)
writer.writeFiles()
- projectData.serializers.checkConsistency(projectData.projectDirUrl, builder.toStorage(), virtualFileManager)
+ projectData.serializers.checkConsistency(projectData.configLocation, builder.toStorage(), virtualFileManager)
val expectedDir = FileUtil.createTempDirectory("jpsProjectTest", "expected")
FileUtil.copyDir(projectData.originalProjectDir, expectedDir)
diff --git a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAllEntitiesTest.kt b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAllEntitiesTest.kt
index 20ff5521475e..5847bb8ff569 100644
--- a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAllEntitiesTest.kt
+++ b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectSaveAllEntitiesTest.kt
@@ -59,14 +59,14 @@ class JpsProjectSaveAllEntitiesTest {
@Test
fun `add library to empty project`() {
val projectDir = FileUtil.createTempDirectory("jpsSaveTest", null)
- val serializers = createProjectSerializers(projectDir, virtualFileManager)
+ val (serializers, configLocation) = createProjectSerializers(projectDir, virtualFileManager)
val builder = WorkspaceEntityStorageBuilder.create()
val jarUrl = virtualFileManager.fromUrl("jar://${projectDir.systemIndependentPath}/lib/foo.jar!/")
val libraryRoot = LibraryRoot(jarUrl, LibraryRootTypeId.COMPILED)
val source = JpsEntitySourceFactory.createJpsEntitySourceForProjectLibrary(projectDir.asConfigLocation(virtualFileManager))
builder.addLibraryEntity("foo", LibraryTableId.ProjectLibraryTableId, listOf(libraryRoot), emptyList(), source)
val storage = builder.toStorage()
- serializers.saveAllEntities(storage, projectDir)
+ serializers.saveAllEntities(storage, configLocation)
val expectedDir = File(PathManagerEx.getCommunityHomePath(),
"platform/workspaceModel/jps/tests/testData/serialization/fromScratch/addLibrary")
assertDirectoryMatches(projectDir, expectedDir, emptySet(), emptyList())
@@ -75,14 +75,14 @@ class JpsProjectSaveAllEntitiesTest {
@Test
fun `escape special symbols in library name`() {
val projectDir = FileUtil.createTempDirectory("jpsSaveTest", null)
- val serializers = createProjectSerializers(projectDir, virtualFileManager)
+ val (serializers, configLocation) = createProjectSerializers(projectDir, virtualFileManager)
val builder = WorkspaceEntityStorageBuilder.create()
for (libName in listOf("a lib", "my-lib", "group-id:artifact-id")) {
val source = JpsEntitySourceFactory.createJpsEntitySourceForProjectLibrary(projectDir.asConfigLocation(virtualFileManager))
builder.addLibraryEntity(libName, LibraryTableId.ProjectLibraryTableId, emptyList(), emptyList(), source)
}
val storage = builder.toStorage()
- serializers.saveAllEntities(storage, projectDir)
+ serializers.saveAllEntities(storage, configLocation)
val expectedDir = File(PathManagerEx.getCommunityHomePath(),
"platform/workspaceModel/jps/tests/testData/serialization/specialSymbolsInLibraryName")
assertDirectoryMatches(projectDir, expectedDir, emptySet(), emptyList())
@@ -91,7 +91,7 @@ class JpsProjectSaveAllEntitiesTest {
@Test
fun `escape special symbols in library name2`() {
val projectDir = FileUtil.createTempDirectory("jpsSaveTest", null)
- val serializers = createProjectSerializers(projectDir, virtualFileManager)
+ val (serializers, configLocation) = createProjectSerializers(projectDir, virtualFileManager)
val builder = WorkspaceEntityStorageBuilder.create()
@@ -100,7 +100,7 @@ class JpsProjectSaveAllEntitiesTest {
builder.addLibraryEntity(libName, LibraryTableId.ProjectLibraryTableId, emptyList(), emptyList(), source)
}
val storage = builder.toStorage()
- serializers.saveAllEntities(storage, projectDir)
+ serializers.saveAllEntities(storage, configLocation)
val expectedDir = File(PathManagerEx.getCommunityHomePath(),
"platform/workspaceModel/jps/tests/testData/serialization/specialSymbolsInLibraryName")
assertDirectoryMatches(projectDir, expectedDir, emptySet(), emptyList())
@@ -109,7 +109,7 @@ class JpsProjectSaveAllEntitiesTest {
private fun checkLoadSave(originalProjectFile: File) {
val projectData = copyAndLoadProject(originalProjectFile, virtualFileManager)
FileUtil.delete(projectData.projectDir)
- projectData.serializers.saveAllEntities(projectData.storage, projectData.projectDir)
+ projectData.serializers.saveAllEntities(projectData.storage, projectData.configLocation)
assertDirectoryMatches(projectData.projectDir, projectData.originalProjectDir,
setOf(".idea/misc.xml", ".idea/encodings.xml", ".idea/compiler.xml", ".idea/.name"),
listOf("CompilerConfiguration", "Encoding", "ProjectRootManager"))
diff --git a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/jpsTestUtils.kt b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/jpsTestUtils.kt
index fe8c94d07e9f..a7bcbfd7d75d 100644
--- a/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/jpsTestUtils.kt
+++ b/platform/workspaceModel/jps/tests/testSrc/com/intellij/workspaceModel/ide/impl/jps/serialization/jpsTestUtils.kt
@@ -30,6 +30,7 @@ import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import java.io.File
import java.nio.file.Path
+import java.util.function.Supplier
internal val sampleDirBasedProjectFile = File(PathManagerEx.getCommunityHomePath(), "jps/model-serialization/testData/sampleProject")
internal val sampleFileBasedProjectFile = File(PathManagerEx.getCommunityHomePath(),
@@ -54,7 +55,7 @@ internal fun copyAndLoadProject(originalProjectFile: File, virtualFileManager: V
val configLocation = toConfigLocation(projectFile.toPath(), virtualFileManager)
val serializers = loadProject(configLocation, originalBuilder, virtualFileManager) as JpsProjectSerializersImpl
val loadedProjectData = LoadedProjectData(originalBuilder.toStorage(), serializers, configLocation, originalProjectDir)
- serializers.checkConsistency(loadedProjectData.projectDirUrl, loadedProjectData.storage, virtualFileManager)
+ serializers.checkConsistency(loadedProjectData.configLocation, loadedProjectData.storage, virtualFileManager)
return loadedProjectData
}
@@ -74,8 +75,8 @@ internal fun loadProject(configLocation: JpsProjectConfigLocation, originalBuild
externalStorageConfigurationManager)
}
-internal fun JpsProjectSerializersImpl.saveAllEntities(storage: WorkspaceEntityStorage, projectDir: File) {
- val writer = JpsFileContentWriterImpl(projectDir)
+internal fun JpsProjectSerializersImpl.saveAllEntities(storage: WorkspaceEntityStorage, configLocation: JpsProjectConfigLocation) {
+ val writer = JpsFileContentWriterImpl(configLocation)
saveAllEntities(storage, writer)
writer.writeFiles()
}
@@ -111,14 +112,19 @@ internal fun assertDirectoryMatches(actualDir: File, expectedDir: File, filesToI
UsefulTestCase.assertEmpty(expectedFiles.keys - actualFiles.keys)
}
-internal fun createProjectSerializers(projectDir: File, virtualFileManager: VirtualFileUrlManager): JpsProjectSerializersImpl {
- val reader = CachingJpsFileContentReader(VfsUtilCore.pathToUrl(projectDir.systemIndependentPath))
+internal fun createProjectSerializers(projectDir: File,
+ virtualFileManager: VirtualFileUrlManager): Pair<JpsProjectSerializersImpl, JpsProjectConfigLocation> {
+ val configLocation = toConfigLocation(projectDir.toPath(), virtualFileManager)
+ val reader = CachingJpsFileContentReader(configLocation)
val externalStoragePath = projectDir.toPath().resolve("cache")
- return JpsProjectEntitiesLoader.createProjectSerializers(toConfigLocation(projectDir.toPath(), virtualFileManager), reader,
- externalStoragePath, true, virtualFileManager) as JpsProjectSerializersImpl
+ val serializer = JpsProjectEntitiesLoader.createProjectSerializers(configLocation, reader, externalStoragePath, true,
+ virtualFileManager) as JpsProjectSerializersImpl
+ return serializer to configLocation
}
-fun JpsProjectSerializersImpl.checkConsistency(projectBaseDirUrl: String, storage: WorkspaceEntityStorage, virtualFileManager: VirtualFileUrlManager) {
+fun JpsProjectSerializersImpl.checkConsistency(configLocation: JpsProjectConfigLocation,
+ storage: WorkspaceEntityStorage,
+ virtualFileManager: VirtualFileUrlManager) {
fun getNonNullActualFileUrl(source: EntitySource): String {
return getActualFileUrl(source) ?: throw AssertionFailedError("file name is not registered for $source")
}
@@ -133,7 +139,7 @@ fun JpsProjectSerializersImpl.checkConsistency(projectBaseDirUrl: String, storag
moduleListSerializersByUrl.forEach { (url, fileSerializer) ->
assertEquals(url, fileSerializer.fileUrl)
val fileSerializers = moduleSerializers.getKeysByValue(fileSerializer) ?: emptyList()
- val urlsFromFactory = fileSerializer.loadFileList(CachingJpsFileContentReader(projectBaseDirUrl), virtualFileManager)
+ val urlsFromFactory = fileSerializer.loadFileList(CachingJpsFileContentReader(configLocation), virtualFileManager)
assertEquals(urlsFromFactory.map { it.first.url }.sorted(), fileSerializers.map { getNonNullActualFileUrl(it.internalEntitySource) }.sorted())
}
@@ -179,7 +185,7 @@ internal fun toConfigLocation(file: Path, virtualFileManager: VirtualFileUrlMana
}
}
-internal class JpsFileContentWriterImpl(private val baseProjectDir: File) : JpsFileContentWriter {
+internal class JpsFileContentWriterImpl(private val configLocation: JpsProjectConfigLocation) : JpsFileContentWriter {
val urlToComponents = LinkedHashMap<String, LinkedHashMap<String, Element?>>()
override fun saveComponent(fileUrl: String, componentName: String, componentTag: Element?) {
@@ -188,9 +194,11 @@ internal class JpsFileContentWriterImpl(private val baseProjectDir: File) : JpsF
override fun getReplacePathMacroMap(fileUrl: String): PathMacroMap {
return if (isModuleFile(JpsPathUtil.urlToFile(fileUrl)))
- ModulePathMacroManager.createInstance { JpsPathUtil.urlToOsPath(fileUrl) }.replacePathMap
+ ModulePathMacroManager.createInstance(configLocation::projectFilePath, Supplier { JpsPathUtil.urlToOsPath(fileUrl) }).replacePathMap
else
- ProjectPathMacroManager.createInstance({ baseProjectDir.systemIndependentPath }, null).replacePathMap
+ ProjectPathMacroManager.createInstance(configLocation::projectFilePath,
+ { JpsPathUtil.urlToPath(configLocation.baseDirectoryUrlString) },
+ null).replacePathMap
}
internal fun writeFiles() {
@@ -200,7 +208,7 @@ internal class JpsFileContentWriterImpl(private val baseProjectDir: File) : JpsF
val replaceMacroMap = getReplacePathMacroMap(url)
val newRootElement = when {
isModuleFile(file) -> Element("module")
- FileUtil.filesEqual(File(baseProjectDir, ".idea"), file.parentFile.parentFile) -> null
+ FileUtil.filesEqual(File(JpsPathUtil.urlToPath(configLocation.baseDirectoryUrlString), ".idea"), file.parentFile.parentFile) -> null
else -> Element("project")
}
diff --git a/plugins/color-schemes/all-hallows-eve-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/all-hallows-eve-color-scheme/resources/META-INF/plugin.xml
index aecd4cf7523c..16b19a2f574e 100644
--- a/plugins/color-schemes/all-hallows-eve-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/all-hallows-eve-color-scheme/resources/META-INF/plugin.xml
@@ -3,6 +3,9 @@
<id>com.intellij.plugins.all_hallows_eve.colorscheme</id>
<vendor>JetBrains</vendor>
<category>UI</category>
+ <description>
+ All Hallow's Eve editor color scheme for all IntelliJ-based IDEs.
+ </description>
<depends>com.intellij.modules.lang</depends>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/all_hallows_eve"/>
diff --git a/plugins/color-schemes/blackboard-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/blackboard-color-scheme/resources/META-INF/plugin.xml
index 8d0b06a84180..5d7cbc99b4a8 100644
--- a/plugins/color-schemes/blackboard-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/blackboard-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ Blackboard editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/blackboard"/>
</extensions>
diff --git a/plugins/color-schemes/cobalt-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/cobalt-color-scheme/resources/META-INF/plugin.xml
index a277e9d99b1c..210f7b024f8b 100644
--- a/plugins/color-schemes/cobalt-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/cobalt-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ Cobalt editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/cobalt"/>
</extensions>
diff --git a/plugins/color-schemes/github-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/github-color-scheme/resources/META-INF/plugin.xml
index f893a0db193d..10df8b907486 100644
--- a/plugins/color-schemes/github-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/github-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ Github editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/github"/>
</extensions>
diff --git a/plugins/color-schemes/monokai-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/monokai-color-scheme/resources/META-INF/plugin.xml
index 6e184d4018a8..0992315462c4 100644
--- a/plugins/color-schemes/monokai-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/monokai-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ Monokai editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/monokai"/>
</extensions>
diff --git a/plugins/color-schemes/rails-casts-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/rails-casts-color-scheme/resources/META-INF/plugin.xml
index 0d7048d61963..52a42baef335 100644
--- a/plugins/color-schemes/rails-casts-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/rails-casts-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ Railscasts editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/rails_casts"/>
</extensions>
diff --git a/plugins/color-schemes/twilight-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/twilight-color-scheme/resources/META-INF/plugin.xml
index 34f6038defa4..666973d342d9 100644
--- a/plugins/color-schemes/twilight-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/twilight-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ Twilight editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/twilight"/>
</extensions>
diff --git a/plugins/color-schemes/vibrant-ink-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/vibrant-ink-color-scheme/resources/META-INF/plugin.xml
index 53c6528d5a14..202f9f75a314 100644
--- a/plugins/color-schemes/vibrant-ink-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/vibrant-ink-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ VibrantInk editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/vibrant_ink"/>
</extensions>
diff --git a/plugins/color-schemes/warm-neon-color-scheme/resources/META-INF/plugin.xml b/plugins/color-schemes/warm-neon-color-scheme/resources/META-INF/plugin.xml
index 29ea1ae757cf..ec36236de05e 100644
--- a/plugins/color-schemes/warm-neon-color-scheme/resources/META-INF/plugin.xml
+++ b/plugins/color-schemes/warm-neon-color-scheme/resources/META-INF/plugin.xml
@@ -4,6 +4,9 @@
<vendor>JetBrains</vendor>
<category>UI</category>
<depends>com.intellij.modules.lang</depends>
+ <description>
+ WarmNeon editor color scheme for all IntelliJ-based IDEs.
+ </description>
<extensions defaultExtensionNs="com.intellij">
<bundledColorScheme path="/colorSchemes/WarmNeon"/>
</extensions>
diff --git a/plugins/devkit/devkit-core/gen/icons/DevkitIcons.java b/plugins/devkit/devkit-core/gen/org/jetbrains/idea/devkit/DevKitIcons.java
index 12a0c8a0004a..b5892dce39d8 100644
--- a/plugins/devkit/devkit-core/gen/icons/DevkitIcons.java
+++ b/plugins/devkit/devkit-core/gen/org/jetbrains/idea/devkit/DevKitIcons.java
@@ -1,5 +1,5 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-package icons;
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package org.jetbrains.idea.devkit;
import com.intellij.ui.IconManager;
import org.jetbrains.annotations.NotNull;
@@ -10,9 +10,9 @@ import javax.swing.*;
* NOTE THIS FILE IS AUTO-GENERATED
* DO NOT EDIT IT BY HAND, run "Generate icon classes" configuration instead
*/
-public final class DevkitIcons {
+public final class DevKitIcons {
private static @NotNull Icon load(@NotNull String path, int cacheKey, int flags) {
- return IconManager.getInstance().loadRasterizedIcon(path, DevkitIcons.class.getClassLoader(), cacheKey, flags);
+ return IconManager.getInstance().loadRasterizedIcon(path, DevKitIcons.class.getClassLoader(), cacheKey, flags);
}
/** 16x16 */ public static final @NotNull Icon Add_sdk = load("icons/add_sdk.svg", -983487671, 2);
diff --git a/plugins/devkit/devkit-core/src/module/IdePluginModuleBuilder.kt b/plugins/devkit/devkit-core/src/module/IdePluginModuleBuilder.kt
index fcbbca46d73e..52a07fbea7a9 100644
--- a/plugins/devkit/devkit-core/src/module/IdePluginModuleBuilder.kt
+++ b/plugins/devkit/devkit-core/src/module/IdePluginModuleBuilder.kt
@@ -221,7 +221,8 @@ class IdePluginModuleBuilder : StarterModuleBuilder() {
"https://jb.gg/plugin-template")
}
- if (PluginManager.isPluginInstalled(PluginId.findId("org.intellij.scala"))) {
+ val scalaPluginId = PluginId.findId("org.intellij.scala")
+ if (scalaPluginId != null && PluginManager.isPluginInstalled(scalaPluginId)) {
layout.row {
hyperLink(DevKitBundle.message("module.builder.scala.github.template.link"),
"https://github.com/JetBrains/sbt-idea-plugin")
diff --git a/plugins/devkit/devkit-core/src/navigation/DescriptionTypeRelatedItemLineMarkerProvider.java b/plugins/devkit/devkit-core/src/navigation/DescriptionTypeRelatedItemLineMarkerProvider.java
index 8edea9c87dbb..d4211bba1ff9 100644
--- a/plugins/devkit/devkit-core/src/navigation/DescriptionTypeRelatedItemLineMarkerProvider.java
+++ b/plugins/devkit/devkit-core/src/navigation/DescriptionTypeRelatedItemLineMarkerProvider.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.RelatedItemLineMarkerInfo;
@@ -13,9 +13,9 @@ import com.intellij.psi.util.InheritanceUtil;
import com.intellij.util.NotNullFunction;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.SortedList;
-import icons.DevkitIcons;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.idea.devkit.DevKitBundle;
+import org.jetbrains.idea.devkit.DevKitIcons;
import org.jetbrains.idea.devkit.inspections.DescriptionCheckerUtil;
import org.jetbrains.idea.devkit.inspections.DescriptionType;
import org.jetbrains.idea.devkit.inspections.InspectionDescriptionInfo;
@@ -26,7 +26,7 @@ import java.util.Collections;
import java.util.Comparator;
import java.util.List;
-public class DescriptionTypeRelatedItemLineMarkerProvider extends DevkitRelatedClassLineMarkerProviderBase {
+final class DescriptionTypeRelatedItemLineMarkerProvider extends DevkitRelatedClassLineMarkerProviderBase {
private static final NotNullFunction<PsiFile, Collection<? extends PsiElement>> CONVERTER =
psiFile -> ContainerUtil.createMaybeSingletonList(psiFile);
@@ -35,10 +35,10 @@ public class DescriptionTypeRelatedItemLineMarkerProvider extends DevkitRelatedC
private final Option myDescriptionOption = new Option("devkit.description",
DevKitBundle.message("gutter.related.option.description"),
- DevkitIcons.Gutter.DescriptionFile);
+ DevKitIcons.Gutter.DescriptionFile);
private final Option myBeforeAfterOption = new Option("devkit.beforeAfter",
DevKitBundle.message("gutter.related.option.before.after.templates"),
- DevkitIcons.Gutter.Diff);
+ DevKitIcons.Gutter.Diff);
@Override
public Option @NotNull [] getOptions() {
@@ -105,7 +105,7 @@ public class DescriptionTypeRelatedItemLineMarkerProvider extends DevkitRelatedC
PsiFile descriptionFile,
Collection<? super RelatedItemLineMarkerInfo<?>> result) {
final RelatedItemLineMarkerInfo<PsiElement> info = NavigationGutterIconBuilder
- .create(DevkitIcons.Gutter.DescriptionFile, CONVERTER, RELATED_ITEM_PROVIDER)
+ .create(DevKitIcons.Gutter.DescriptionFile, CONVERTER, RELATED_ITEM_PROVIDER)
.setTarget(descriptionFile)
.setTooltipText(DevKitBundle.message("gutter.related.navigation.popup.description.tooltip"))
.setAlignment(GutterIconRenderer.Alignment.RIGHT)
@@ -130,7 +130,7 @@ public class DescriptionTypeRelatedItemLineMarkerProvider extends DevkitRelatedC
//noinspection DialogTitleCapitalization
final RelatedItemLineMarkerInfo<PsiElement> info = NavigationGutterIconBuilder
- .create(DevkitIcons.Gutter.Diff, CONVERTER, RELATED_ITEM_PROVIDER)
+ .create(DevKitIcons.Gutter.Diff, CONVERTER, RELATED_ITEM_PROVIDER)
.setTargets(templateFiles)
.setPopupTitle(DevKitBundle.message("gutter.related.navigation.popup.template.title"))
.setTooltipText(DevKitBundle.message("gutter.related.navigation.popup.template.tooltip"))
diff --git a/plugins/devkit/devkit-core/src/navigation/ExtensionDeclarationRelatedItemLineMarkerProvider.java b/plugins/devkit/devkit-core/src/navigation/ExtensionDeclarationRelatedItemLineMarkerProvider.java
index 0c360aab33b2..f5268f8a6ff6 100644
--- a/plugins/devkit/devkit-core/src/navigation/ExtensionDeclarationRelatedItemLineMarkerProvider.java
+++ b/plugins/devkit/devkit-core/src/navigation/ExtensionDeclarationRelatedItemLineMarkerProvider.java
@@ -1,12 +1,12 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.RelatedItemLineMarkerInfo;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiElement;
-import icons.DevkitIcons;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.idea.devkit.DevKitBundle;
+import org.jetbrains.idea.devkit.DevKitIcons;
import org.jetbrains.idea.devkit.util.ExtensionCandidate;
import org.jetbrains.idea.devkit.util.ExtensionLocatorKt;
@@ -21,10 +21,9 @@ public final class ExtensionDeclarationRelatedItemLineMarkerProvider extends Dev
return DevKitBundle.message("gutter.related.extension.declaration");
}
- @NotNull
@Override
- public Icon getIcon() {
- return DevkitIcons.Gutter.Plugin;
+ public @NotNull Icon getIcon() {
+ return DevKitIcons.Gutter.Plugin;
}
@Override
diff --git a/plugins/devkit/devkit-core/src/navigation/LineMarkerInfoHelper.java b/plugins/devkit/devkit-core/src/navigation/LineMarkerInfoHelper.java
index ec3fb091f029..181822ec3c6f 100644
--- a/plugins/devkit/devkit-core/src/navigation/LineMarkerInfoHelper.java
+++ b/plugins/devkit/devkit-core/src/navigation/LineMarkerInfoHelper.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.RelatedItemLineMarkerInfo;
@@ -19,11 +19,11 @@ import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.ui.UIUtil;
import com.intellij.util.xml.DomElement;
import com.intellij.util.xml.DomUtil;
-import icons.DevkitIcons;
import org.jetbrains.annotations.Nls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.PropertyKey;
import org.jetbrains.idea.devkit.DevKitBundle;
+import org.jetbrains.idea.devkit.DevKitIcons;
import org.jetbrains.idea.devkit.dom.Extension;
import org.jetbrains.idea.devkit.dom.ExtensionPoint;
import org.jetbrains.idea.devkit.util.PointableCandidate;
@@ -32,6 +32,7 @@ import java.util.Collection;
import java.util.List;
final class LineMarkerInfoHelper {
+
private static final NotNullFunction<PointableCandidate, Collection<? extends PsiElement>> CONVERTER =
candidate -> ContainerUtil.createMaybeSingletonList(candidate.pointer.getElement());
private static final NotNullFunction<PointableCandidate, Collection<? extends GotoRelatedItem>> RELATED_ITEM_PROVIDER =
@@ -49,8 +50,7 @@ final class LineMarkerInfoHelper {
return getExtensionPointName(DomUtil.getDomElement(tag));
});
- @NotNull
- private static String getExtensionPointName(DomElement element) {
+ private static @NotNull String getExtensionPointName(DomElement element) {
if (!(element instanceof ExtensionPoint)) return "?";
return ((ExtensionPoint)element).getEffectiveQualifiedName();
}
@@ -58,29 +58,26 @@ final class LineMarkerInfoHelper {
private LineMarkerInfoHelper() {
}
- @NotNull
- static RelatedItemLineMarkerInfo<PsiElement> createExtensionLineMarkerInfo(@NotNull List<? extends PointableCandidate> targets,
- @NotNull PsiElement element) {
+ static @NotNull RelatedItemLineMarkerInfo<PsiElement> createExtensionLineMarkerInfo(@NotNull List<? extends PointableCandidate> targets,
+ @NotNull PsiElement element) {
return createPluginLineMarkerInfo(targets, element,
DevKitBundle.message("gutter.related.navigation.choose.extension"),
EXTENSION_NAMER);
}
- @NotNull
- static RelatedItemLineMarkerInfo<PsiElement> createExtensionPointLineMarkerInfo(@NotNull List<? extends PointableCandidate> targets,
- @NotNull PsiElement element) {
+ static @NotNull RelatedItemLineMarkerInfo<PsiElement> createExtensionPointLineMarkerInfo(@NotNull List<? extends PointableCandidate> targets,
+ @NotNull PsiElement element) {
return createPluginLineMarkerInfo(targets, element,
DevKitBundle.message("gutter.related.navigation.choose.extension.point"),
EXTENSION_POINT_NAMER);
}
- @NotNull
- private static RelatedItemLineMarkerInfo<PsiElement> createPluginLineMarkerInfo(@NotNull List<? extends PointableCandidate> targets,
- @NotNull PsiElement element,
- @Nls(capitalization = Nls.Capitalization.Title) String popup,
- NullableFunction<PointableCandidate, String> namer) {
+ private static @NotNull RelatedItemLineMarkerInfo<PsiElement> createPluginLineMarkerInfo(@NotNull List<? extends PointableCandidate> targets,
+ @NotNull PsiElement element,
+ @Nls(capitalization = Nls.Capitalization.Title) String popup,
+ NullableFunction<PointableCandidate, String> namer) {
return NavigationGutterIconBuilder
- .create(DevkitIcons.Gutter.Plugin, CONVERTER, RELATED_ITEM_PROVIDER)
+ .create(DevKitIcons.Gutter.Plugin, CONVERTER, RELATED_ITEM_PROVIDER)
.setTargets(targets)
.setPopupTitle(popup)
.setNamer(namer)
@@ -88,9 +85,8 @@ final class LineMarkerInfoHelper {
.createLineMarkerInfo(element);
}
- @NotNull
- private static NullableFunction<PointableCandidate, String> createNamer(@PropertyKey(resourceBundle = DevKitBundle.BUNDLE) String tooltipPatternPropertyName,
- NotNullFunction<? super XmlTag, String> nameProvider) {
+ private static @NotNull NullableFunction<PointableCandidate, String> createNamer(@PropertyKey(resourceBundle = DevKitBundle.BUNDLE) String tooltipPatternPropertyName,
+ NotNullFunction<? super XmlTag, String> nameProvider) {
return target -> {
XmlTag tag = target.pointer.getElement();
if (tag == null) {
diff --git a/plugins/devkit/devkit-core/src/references/DevKitRelatedPropertiesProvider.java b/plugins/devkit/devkit-core/src/references/DevKitRelatedPropertiesProvider.java
index dc804bf51e81..f3bc00efbea0 100644
--- a/plugins/devkit/devkit-core/src/references/DevKitRelatedPropertiesProvider.java
+++ b/plugins/devkit/devkit-core/src/references/DevKitRelatedPropertiesProvider.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.references;
import com.intellij.codeInsight.daemon.RelatedItemLineMarkerInfo;
@@ -21,9 +21,9 @@ import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.xml.DomElement;
import com.intellij.util.xml.DomUtil;
import com.intellij.util.xml.GenericDomValue;
-import icons.DevkitIcons;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.idea.devkit.DevKitBundle;
+import org.jetbrains.idea.devkit.DevKitIcons;
import org.jetbrains.idea.devkit.dom.ActionOrGroup;
import org.jetbrains.idea.devkit.dom.OverrideText;
import org.jetbrains.idea.devkit.navigation.DevkitRelatedLineMarkerProviderBase;
@@ -46,16 +46,16 @@ import java.util.Collections;
*
* @see MessageBundleReferenceContributor
*/
-public final class DevKitRelatedPropertiesProvider extends DevkitRelatedLineMarkerProviderBase {
+final class DevKitRelatedPropertiesProvider extends DevkitRelatedLineMarkerProviderBase {
+
@Override
public String getName() {
return DevKitBundle.message("line.marker.related.property.description");
}
- @NotNull
@Override
- public Icon getIcon() {
- return DevkitIcons.Gutter.Properties;
+ public @NotNull Icon getIcon() {
+ return DevKitIcons.Gutter.Properties;
}
@Override
@@ -99,7 +99,7 @@ public final class DevKitRelatedPropertiesProvider extends DevkitRelatedLineMark
if (query.findFirst() == null) return;
result.add(
- NavigationGutterIconBuilder.create(DevkitIcons.Gutter.Properties,
+ NavigationGutterIconBuilder.create(DevKitIcons.Gutter.Properties,
e -> Collections.singletonList(((PsiElement)e)),
e -> Collections.singletonList(new GotoRelatedItem((PsiElement)e)))
.setTargets(NotNullLazyValue.createValue(() -> {
diff --git a/plugins/devkit/devkit-core/src/run/PluginRunConfiguration.java b/plugins/devkit/devkit-core/src/run/PluginRunConfiguration.java
index b2c4bb0b8d20..3bf6d0bab9ca 100644
--- a/plugins/devkit/devkit-core/src/run/PluginRunConfiguration.java
+++ b/plugins/devkit/devkit-core/src/run/PluginRunConfiguration.java
@@ -211,7 +211,7 @@ public class PluginRunConfiguration extends RunConfigurationBase<Element> implem
else {
// log4j, jdom and trove4j needed for running on branch 202 and older
final List<String> jars = List.of("log4j.jar", "jdom.jar", "trove4j.jar",
- "openapi.jar", "util.jar", "bootstrap.jar", "idea_rt.jar", "idea.jar");
+ "openapi.jar", "util.jar", "util_rt.jar", "bootstrap.jar", "idea_rt.jar", "idea.jar");
for (String path : jars) {
params.getClassPath().add(ideaJdkHome + FileUtil.toSystemDependentName("/lib/" + path));
}
diff --git a/plugins/devkit/devkit-core/src/testAssistant/TestDataLineMarkerProvider.java b/plugins/devkit/devkit-core/src/testAssistant/TestDataLineMarkerProvider.java
index e3b6a627acd2..e943ce1cd000 100644
--- a/plugins/devkit/devkit-core/src/testAssistant/TestDataLineMarkerProvider.java
+++ b/plugins/devkit/devkit-core/src/testAssistant/TestDataLineMarkerProvider.java
@@ -116,7 +116,8 @@ public final class TestDataLineMarkerProvider extends LineMarkerProviderDescript
currentPsiClass.equals(psiClass)
? annotationValue(currentPsiClass, TestFrameworkConstants.TEST_METADATA_ANNOTATION_QUALIFIED_NAME)
: null;
- testDataPath = annotationValue(currentPsiClass, TestFrameworkConstants.TEST_DATA_PATH_ANNOTATION_QUALIFIED_NAME);
+ String localTestDataPath = annotationValue(currentPsiClass, TestFrameworkConstants.TEST_DATA_PATH_ANNOTATION_QUALIFIED_NAME);
+ testDataPath = localTestDataPath != null ? localTestDataPath : testDataPath;
PsiClass containingClass = currentPsiClass.getContainingClass();
currentPsiClass = containingClass;
}
diff --git a/plugins/devkit/devkit-java-tests/testData/referenceCollector/TestMetadataDataNoTopLevel.java b/plugins/devkit/devkit-java-tests/testData/referenceCollector/TestMetadataDataNoTopLevel.java
new file mode 100644
index 000000000000..16750a92ed3e
--- /dev/null
+++ b/plugins/devkit/devkit-java-tests/testData/referenceCollector/TestMetadataDataNoTopLevel.java
@@ -0,0 +1,28 @@
+public class ATest extends LightCodeInsightFixtureTestCase {
+
+ @com.intellij.testFramework.TestDataPath("$CONTENT_ROOT")
+ @org.jetbrains.kotlin.test.TestMetadata("testData/refactoring/introduceVariable")
+ public static class IntroduceVariable extends ATest {
+ private void runTest(String testDataFilePath) throws Exception {
+
+ }
+
+ @org.jetbrains.kotlin.test.TestMetadata("AnonymousType.kt")
+ public void testAnonymousType() throws Exception {
+ runTest("testData/refactoring/introduceVariable/AnonymousType.kt");
+ }
+
+ @org.jetbrains.kotlin.test.TestMetadata("testData/refactoring/introduceVariable/extra")
+ public static class IntroduceExtraVariable extends ATest {
+ private void runTest(String testDataFilePath) throws Exception {
+
+ }
+
+ @org.jetbrains.kotlin.test.TestMetadata("AnonymousType.kt")
+ public void testAnonymousType() throws Exception {
+ runTest("testData/refactoring/introduceVariable/extra/AnonymousType.kt");
+ }
+ }
+ }
+
+}
diff --git a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTest.java b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTest.java
index 13e34a29be0b..d8d2703e0537 100644
--- a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTest.java
+++ b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTest.java
@@ -1,9 +1,9 @@
-// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.GutterMark;
import com.intellij.testFramework.TestDataPath;
-import icons.DevkitIcons;
+import org.jetbrains.idea.devkit.DevKitIcons;
import org.jetbrains.idea.devkit.DevkitJavaTestsUtil;
import java.util.Collections;
@@ -38,8 +38,8 @@ public class DescriptionTypeRelatedItemLineMarkerProviderTest extends Descriptio
List<GutterMark> gutters = myFixture.findAllGutters("MyIntentionActionWithDescription.java");
assertThat(gutters.size()).isEqualTo(2);
Collections.sort(gutters, Comparator.comparing(GutterMark::getTooltipText));
- DevKitGutterTargetsChecker.checkGutterTargets(gutters.get(1), "Description", DevkitIcons.Gutter.DescriptionFile, "description.html");
- DevKitGutterTargetsChecker.checkGutterTargets(gutters.get(0), "Before/After Templates", DevkitIcons.Gutter.Diff,
+ DevKitGutterTargetsChecker.checkGutterTargets(gutters.get(1), "Description", DevKitIcons.Gutter.DescriptionFile, "description.html");
+ DevKitGutterTargetsChecker.checkGutterTargets(gutters.get(0), "Before/After Templates", DevKitIcons.Gutter.Diff,
"after.java.template", "before.java.template");
}
} \ No newline at end of file
diff --git a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/ExtensionPointDeclarationRelatedItemLineMarkerProviderTest.java b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/ExtensionPointDeclarationRelatedItemLineMarkerProviderTest.java
index ca8538873e4b..c8ed038cc979 100644
--- a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/ExtensionPointDeclarationRelatedItemLineMarkerProviderTest.java
+++ b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/navigation/ExtensionPointDeclarationRelatedItemLineMarkerProviderTest.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.GutterMark;
@@ -14,7 +14,7 @@ import com.intellij.ui.ColorUtil;
import com.intellij.ui.components.JBList;
import com.intellij.util.PathUtil;
import com.intellij.util.ui.UIUtil;
-import icons.DevkitIcons;
+import org.jetbrains.idea.devkit.DevKitIcons;
import org.jetbrains.idea.devkit.DevkitJavaTestsUtil;
@TestDataPath("$CONTENT_ROOT/testData/navigation/extensionPointDeclaration")
@@ -73,6 +73,6 @@ public class ExtensionPointDeclarationRelatedItemLineMarkerProviderTest extends
"<font color=\"" + color + "\">[" + module.getName() + "]</font><br></body></html>";
final GutterMark gutter = myFixture.findGutter(filePath);
- DevKitGutterTargetsChecker.checkGutterTargets(gutter, expectedTooltip, DevkitIcons.Gutter.Plugin, "extensionPoint");
+ DevKitGutterTargetsChecker.checkGutterTargets(gutter, expectedTooltip, DevKitIcons.Gutter.Plugin, "extensionPoint");
}
} \ No newline at end of file
diff --git a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/testAssistant/TestDataReferenceCollectorTest.java b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/testAssistant/TestDataReferenceCollectorTest.java
index d868f92a1f00..35059d9002d8 100644
--- a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/testAssistant/TestDataReferenceCollectorTest.java
+++ b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/testAssistant/TestDataReferenceCollectorTest.java
@@ -47,6 +47,13 @@ public class TestDataReferenceCollectorTest extends LightJavaCodeInsightFixtureT
assertEquals("/src/testData/refactoring/introduceVariable/extra/AnonymousType.kt", references.get(2));
}
+ public void testTestMetadataDataNoTopLevel() {
+ final List<String> references = doTest();
+ assertEquals(2, references.size());
+ assertEquals("/src/testData/refactoring/introduceVariable/AnonymousType.kt", references.get(0));
+ assertEquals("/src/testData/refactoring/introduceVariable/extra/AnonymousType.kt", references.get(1));
+ }
+
public void testAbstractMethod() {
final List<String> references = doTest();
assertEquals(1, references.size());
diff --git a/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTestBase.java b/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTestBase.java
index 9a022ac713c2..5f5dd379475f 100644
--- a/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTestBase.java
+++ b/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/DescriptionTypeRelatedItemLineMarkerProviderTestBase.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.GutterMark;
@@ -7,8 +7,8 @@ import com.intellij.testFramework.builders.JavaModuleFixtureBuilder;
import com.intellij.testFramework.fixtures.JavaCodeInsightFixtureTestCase;
import com.intellij.ui.components.JBList;
import com.intellij.util.PathUtil;
-import icons.DevkitIcons;
import org.jetbrains.annotations.NotNull;
+import org.jetbrains.idea.devkit.DevKitIcons;
public abstract class DescriptionTypeRelatedItemLineMarkerProviderTestBase extends JavaCodeInsightFixtureTestCase {
@Override
@@ -22,6 +22,6 @@ public abstract class DescriptionTypeRelatedItemLineMarkerProviderTestBase exten
protected void doTestInspectionDescription(@NotNull String inspectionFile, @NotNull String descriptionFile) {
myFixture.copyDirectoryToProject("inspectionDescriptions", "inspectionDescriptions");
GutterMark gutter = myFixture.findGutter(inspectionFile);
- DevKitGutterTargetsChecker.checkGutterTargets(gutter, "Description", DevkitIcons.Gutter.DescriptionFile, descriptionFile);
+ DevKitGutterTargetsChecker.checkGutterTargets(gutter, "Description", DevKitIcons.Gutter.DescriptionFile, descriptionFile);
}
}
diff --git a/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/ExtensionDeclarationRelatedItemLineMarkerProviderTestBase.java b/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/ExtensionDeclarationRelatedItemLineMarkerProviderTestBase.java
index e7a7cce66d6a..839047a23da2 100644
--- a/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/ExtensionDeclarationRelatedItemLineMarkerProviderTestBase.java
+++ b/plugins/devkit/devkit-tests/src/org/jetbrains/idea/devkit/navigation/ExtensionDeclarationRelatedItemLineMarkerProviderTestBase.java
@@ -1,4 +1,4 @@
-// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.codeInsight.daemon.GutterMark;
@@ -12,10 +12,11 @@ import com.intellij.ui.ColorUtil;
import com.intellij.ui.components.JBList;
import com.intellij.util.PathUtil;
import com.intellij.util.ui.UIUtil;
-import icons.DevkitIcons;
import org.jetbrains.annotations.NotNull;
+import org.jetbrains.idea.devkit.DevKitIcons;
public abstract class ExtensionDeclarationRelatedItemLineMarkerProviderTestBase extends JavaCodeInsightFixtureTestCase {
+
@Override
protected void tuneFixture(JavaModuleFixtureBuilder moduleBuilder) {
String extensionsJar = PathUtil.getJarPathForClass(ExtensionPointName.class);
@@ -38,7 +39,7 @@ public abstract class ExtensionDeclarationRelatedItemLineMarkerProviderTestBase
"<font color=\"" + color + "\">[" + module.getName() + "]</font><br></body></html>";
GutterMark gutter = myFixture.findGutter(file);
- DevKitGutterTargetsChecker.checkGutterTargets(gutter, expectedTooltip, DevkitIcons.Gutter.Plugin, "myEp");
+ DevKitGutterTargetsChecker.checkGutterTargets(gutter, expectedTooltip, DevKitIcons.Gutter.Plugin, "myEp");
}
protected void doTestInvalidExtension(@NotNull String file) {
diff --git a/plugins/git4idea/resources/META-INF/plugin.xml b/plugins/git4idea/resources/META-INF/plugin.xml
index e2ae7b6aaaaa..4041680a03b3 100644
--- a/plugins/git4idea/resources/META-INF/plugin.xml
+++ b/plugins/git4idea/resources/META-INF/plugin.xml
@@ -537,9 +537,11 @@
<statistics.projectUsagesCollector implementation="git4idea.GitStatisticsCollector"/>
<statistics.counterUsagesCollector implementationClass="git4idea.GitBranchesUsageCollector"/>
<statistics.counterUsagesCollector implementationClass="git4idea.GitStashUsageCollector"/>
+ <statistics.counterUsagesCollector implementationClass="git4idea.GitRefreshUsageCollector"/>
<statistics.notificationIdsHolder implementation="git4idea.GitNotificationIdsHolder"/>
<vcsRepositoryInitializer implementation="git4idea.repo.GitRepositoryInitializer"/>
<gitRepositoryInitializer implementation="git4idea.repo.GitRepositoryInitializerImpl"/>
+ <gitSilentFileAdder implementation="git4idea.repo.GitSilentFileAdderProviderImpl"/>
<openapi.vcs.changes.actions.diff.ChangeDiffRequestProvider
implementation="git4idea.diff.GitSubmoduleDiffRequestProvider"/>
<vcs.ignoredFilesHolder implementation="git4idea.repo.GitIgnoredFilesHolder$Provider"/>
diff --git a/plugins/git4idea/resources/messages/GitBundle.properties b/plugins/git4idea/resources/messages/GitBundle.properties
index a224e5440dde..084f16667532 100644
--- a/plugins/git4idea/resources/messages/GitBundle.properties
+++ b/plugins/git4idea/resources/messages/GitBundle.properties
@@ -632,6 +632,7 @@ action.Git.BrowseRepoAtRevision.text=Show Repository at Revision
action.Git.Log.text=Show Git Repository Log\u2026
action.Git.Init.text=Create Git Repository\u2026
action.Git.Init.error=Git init failed
+action.Git.Init.Stage.error=Adding files to Git failed
checkbox.dont.warn.again=Don't warn again
checkbox.run.git.hooks=Run Git hooks
tooltip.run.git.hooks=If unchecked, Git hooks will be skipped with the '--no-verify' parameter
diff --git a/plugins/git4idea/src/git4idea/GitNotificationIdsHolder.kt b/plugins/git4idea/src/git4idea/GitNotificationIdsHolder.kt
index 555079bb49a4..e1cea26bc76d 100644
--- a/plugins/git4idea/src/git4idea/GitNotificationIdsHolder.kt
+++ b/plugins/git4idea/src/git4idea/GitNotificationIdsHolder.kt
@@ -48,6 +48,7 @@ class GitNotificationIdsHolder : NotificationIdsHolder {
FIX_TRACKED_NOT_ON_BRANCH,
INIT_ERROR,
INIT_FAILED,
+ INIT_STAGE_FAILED,
LOCAL_CHANGES_NOT_RESTORED,
MERGE_ABORT_FAILED,
MERGE_ABORT_SUCCESS,
@@ -147,6 +148,7 @@ class GitNotificationIdsHolder : NotificationIdsHolder {
const val FIX_TRACKED_NOT_ON_BRANCH = "git.fix.tracked.not.on.branch"
const val INIT_ERROR = "git.init.error"
const val INIT_FAILED = "git.init.failed"
+ const val INIT_STAGE_FAILED = "git.init.stage.failed"
const val LOCAL_CHANGES_NOT_RESTORED = "git.local.changes.not.restored"
const val MERGE_ABORT_FAILED = "git.merge.abort.failed"
const val MERGE_ABORT_SUCCESS ="git.merge.abort.success"
diff --git a/plugins/git4idea/src/git4idea/GitRefreshUsageCollector.kt b/plugins/git4idea/src/git4idea/GitRefreshUsageCollector.kt
new file mode 100644
index 000000000000..ae197dbe73b8
--- /dev/null
+++ b/plugins/git4idea/src/git4idea/GitRefreshUsageCollector.kt
@@ -0,0 +1,36 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package git4idea
+
+import com.intellij.internal.statistic.StructuredIdeActivity
+import com.intellij.internal.statistic.eventLog.EventLogGroup
+import com.intellij.internal.statistic.eventLog.events.EventFields
+import com.intellij.internal.statistic.service.fus.collectors.CounterUsagesCollector
+import com.intellij.openapi.project.Project
+
+class GitRefreshUsageCollector : CounterUsagesCollector() {
+ override fun getGroup(): EventLogGroup = GROUP
+
+ companion object {
+ private val GROUP: EventLogGroup = EventLogGroup("git.status.refresh", 1)
+
+ private val IS_FULL_REFRESH_FIELD = EventFields.Boolean("is_full_refresh")
+ private val STATUS_REFRESH = GROUP.registerIdeActivity(activityName = "status.refresh",
+ startEventAdditionalFields = arrayOf(IS_FULL_REFRESH_FIELD))
+ private val UNTRACKED_REFRESH = GROUP.registerIdeActivity(activityName = "untracked.refresh",
+ startEventAdditionalFields = arrayOf(IS_FULL_REFRESH_FIELD))
+
+ @JvmStatic
+ fun logStatusRefresh(project: Project, everythingDirty: Boolean): StructuredIdeActivity {
+ return STATUS_REFRESH.started(project) {
+ listOf(IS_FULL_REFRESH_FIELD.with(everythingDirty))
+ }
+ }
+
+ @JvmStatic
+ fun logUntrackedRefresh(project: Project, everythingDirty: Boolean): StructuredIdeActivity {
+ return UNTRACKED_REFRESH.started(project) {
+ listOf(IS_FULL_REFRESH_FIELD.with(everythingDirty))
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/git4idea/src/git4idea/GitStatisticsCollector.kt b/plugins/git4idea/src/git4idea/GitStatisticsCollector.kt
index 46dd6470520d..9bdfeb289ffc 100644
--- a/plugins/git4idea/src/git4idea/GitStatisticsCollector.kt
+++ b/plugins/git4idea/src/git4idea/GitStatisticsCollector.kt
@@ -128,7 +128,7 @@ class GitStatisticsCollector : ProjectUsagesCollector() {
}
companion object {
- private val GROUP = EventLogGroup("git.configuration", 9)
+ private val GROUP = EventLogGroup("git.configuration", 10)
private val REPO_SYNC_VALUE: EnumEventField<Value> = EventFields.Enum("value", Value::class.java) { it.name.lowercase() }
private val REPO_SYNC: VarargEventId = GROUP.registerVarargEvent("repo.sync", REPO_SYNC_VALUE)
@@ -190,26 +190,6 @@ class GitStatisticsCollector : ProjectUsagesCollector() {
return null
}
-
- private val IS_FULL_REFRESH_FIELD = EventFields.Boolean("is_full_refresh")
- private val STATUS_REFRESH = GROUP.registerIdeActivity(activityName = "status.refresh",
- startEventAdditionalFields = arrayOf(IS_FULL_REFRESH_FIELD))
- private val UNTRACKED_REFRESH = GROUP.registerIdeActivity(activityName = "untracked.refresh",
- startEventAdditionalFields = arrayOf(IS_FULL_REFRESH_FIELD))
-
- @JvmStatic
- fun logStatusRefresh(project: Project, everythingDirty: Boolean): StructuredIdeActivity {
- return STATUS_REFRESH.started(project) {
- listOf(IS_FULL_REFRESH_FIELD.with(everythingDirty))
- }
- }
-
- @JvmStatic
- fun logUntrackedRefresh(project: Project, everythingDirty: Boolean): StructuredIdeActivity {
- return UNTRACKED_REFRESH.started(project) {
- listOf(IS_FULL_REFRESH_FIELD.with(everythingDirty))
- }
- }
}
}
diff --git a/plugins/git4idea/src/git4idea/actions/GitInit.java b/plugins/git4idea/src/git4idea/actions/GitInit.java
index b8ff63e95568..5b062b40f14e 100644
--- a/plugins/git4idea/src/git4idea/actions/GitInit.java
+++ b/plugins/git4idea/src/git4idea/actions/GitInit.java
@@ -91,4 +91,9 @@ public class GitInit extends DumbAwareAction {
manager.setDirectoryMappings(VcsUtil.addMapping(manager.getDirectoryMappings(), path, GitVcs.NAME));
VcsDirtyScopeManager.getInstance(project).dirDirtyRecursively(root);
}
+
+ public static void configureVcsMappings(@NotNull Project project, @NotNull VirtualFile root) {
+ ProjectLevelVcsManager manager = ProjectLevelVcsManager.getInstance(project);
+ manager.setDirectoryMappings(VcsUtil.addMapping(manager.getDirectoryMappings(), root.getPath(), GitVcs.NAME));
+ }
}
diff --git a/plugins/git4idea/src/git4idea/actions/GitQuickActionsToolbarPopup.kt b/plugins/git4idea/src/git4idea/actions/GitQuickActionsToolbarPopup.kt
index a9051c27e05a..bf8a00c469ef 100644
--- a/plugins/git4idea/src/git4idea/actions/GitQuickActionsToolbarPopup.kt
+++ b/plugins/git4idea/src/git4idea/actions/GitQuickActionsToolbarPopup.kt
@@ -55,21 +55,8 @@ internal class GitQuickActionsToolbarPopup : VcsQuickActionsToolbarPopup() {
presentation.isEnabledAndVisible = true
}
- val repo = GitRepositoryManager.getInstance(project).repositories.isNotEmpty()
- presentation.icon = if (repo) {
- AllIcons.Actions.More.toSize(ActionToolbar.DEFAULT_MINIMUM_BUTTON_SIZE)
- }
- else {
- AllIcons.Vcs.BranchNode
- }
-
- presentation.text = if (repo) {
- ""
- }
- else {
- GitBundle.message("action.Vcs.Toolbar.ShowMoreActions.text") + " "
- }
+ presentation.icon = AllIcons.Actions.More.toSize(ActionToolbar.DEFAULT_MINIMUM_BUTTON_SIZE)
}
class MyGitRepositoryListener(val project: Project) : VcsRepositoryMappingListener {
diff --git a/plugins/git4idea/src/git4idea/ignore/GitIgnoreInStoreDirGenerator.kt b/plugins/git4idea/src/git4idea/ignore/GitIgnoreInStoreDirGenerator.kt
index 82de40192d95..ca1d0939517f 100644
--- a/plugins/git4idea/src/git4idea/ignore/GitIgnoreInStoreDirGenerator.kt
+++ b/plugins/git4idea/src/git4idea/ignore/GitIgnoreInStoreDirGenerator.kt
@@ -104,7 +104,7 @@ class GitIgnoreInStoreDirGenerator(private val project: Project) : Disposable {
}
}
- private fun generateGitignoreInStoreDirIfNeeded() {
+ fun generateGitignoreInStoreDirIfNeeded() {
if (!needGenerate.compareAndSet(true, false)) return
val projectConfigDirPath = project.stateStore.directoryStorePath
diff --git a/plugins/git4idea/src/git4idea/repo/GitRepositoryInitializerImpl.java b/plugins/git4idea/src/git4idea/repo/GitRepositoryInitializerImpl.java
index ae29f5a58649..d2d61c33caa6 100644
--- a/plugins/git4idea/src/git4idea/repo/GitRepositoryInitializerImpl.java
+++ b/plugins/git4idea/src/git4idea/repo/GitRepositoryInitializerImpl.java
@@ -1,9 +1,11 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package git4idea.repo;
+import com.intellij.configurationStore.StoreUtil;
import com.intellij.openapi.GitRepositoryInitializer;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.project.Project;
+import com.intellij.openapi.vcs.VcsException;
import com.intellij.openapi.vcs.VcsNotifier;
import com.intellij.openapi.vfs.VirtualFile;
import git4idea.GitUtil;
@@ -11,13 +13,18 @@ import git4idea.actions.GitInit;
import git4idea.commands.Git;
import git4idea.commands.GitCommandResult;
import git4idea.i18n.GitBundle;
+import git4idea.ignore.GitIgnoreInStoreDirGenerator;
+import git4idea.util.GitFileUtils;
import org.jetbrains.annotations.NotNull;
+import java.util.Collections;
+
import static git4idea.GitNotificationIdsHolder.INIT_FAILED;
+import static git4idea.GitNotificationIdsHolder.INIT_STAGE_FAILED;
public class GitRepositoryInitializerImpl implements GitRepositoryInitializer {
@Override
- public void initRepository(@NotNull Project project, @NotNull VirtualFile root) {
+ public void initRepository(@NotNull Project project, @NotNull VirtualFile root, boolean addFilesToVcs) {
ProgressManager.progress2(GitBundle.message("progress.title.creating.git.repository"));
GitCommandResult result = Git.getInstance().init(project, root);
@@ -27,7 +34,21 @@ public class GitRepositoryInitializerImpl implements GitRepositoryInitializer {
return;
}
- GitInit.refreshAndConfigureVcsMappings(project, root, root.getPath());
+ GitInit.configureVcsMappings(project, root);
GitUtil.generateGitignoreFileIfNeeded(project, root);
+ // make sure .idea/.gitignore is created before adding files
+ project.getService(GitIgnoreInStoreDirGenerator.class).generateGitignoreInStoreDirIfNeeded();
+
+ if (addFilesToVcs) {
+ StoreUtil.saveSettings(project, true); // ensure vcs.xml is up-to-date
+
+ try {
+ GitFileUtils.addFiles(project, root, Collections.singletonList(root));
+ }
+ catch (VcsException e) {
+ VcsNotifier.getInstance(project).notifyError(INIT_STAGE_FAILED, GitBundle.message("action.Git.Init.Stage.error"),
+ result.getErrorOutputAsHtmlString(), true);
+ }
+ }
}
}
diff --git a/plugins/git4idea/src/git4idea/repo/GitSilentFileAdderProvider.kt b/plugins/git4idea/src/git4idea/repo/GitSilentFileAdderProvider.kt
new file mode 100644
index 000000000000..90d187e1e17d
--- /dev/null
+++ b/plugins/git4idea/src/git4idea/repo/GitSilentFileAdderProvider.kt
@@ -0,0 +1,88 @@
+// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+package git4idea.repo
+
+import com.intellij.openapi.GitSilentFileAdder
+import com.intellij.openapi.GitSilentFileAdderProvider
+import com.intellij.openapi.diagnostic.logger
+import com.intellij.openapi.progress.util.BackgroundTaskUtil
+import com.intellij.openapi.project.Project
+import com.intellij.openapi.vcs.FilePath
+import com.intellij.openapi.vcs.ProjectLevelVcsManager
+import com.intellij.openapi.vcs.VcsException
+import com.intellij.openapi.vcs.VcsFileListenerContextHelper
+import com.intellij.openapi.vfs.VirtualFile
+import com.intellij.vcsUtil.VcsUtil
+import git4idea.GitUtil
+import git4idea.GitVcs
+import git4idea.util.GitFileUtils
+import java.io.File
+import java.nio.file.Path
+
+class GitSilentFileAdderProviderImpl(private val project: Project) : GitSilentFileAdderProvider {
+ override fun create(): GitSilentFileAdder = GitSilentFileAdderImpl(project)
+}
+
+class GitSilentFileAdderImpl(private val project: Project) : GitSilentFileAdder {
+ private val gitVcs = GitVcs.getInstance(project)
+ private val vcsManager = ProjectLevelVcsManager.getInstance(project)
+ private val vcsFileListenerContextHelper = VcsFileListenerContextHelper.getInstance(project)
+
+ private val pendingAddition: MutableSet<FilePath> = HashSet()
+
+ override fun markFileForAdding(path: String, isDirectory: Boolean) {
+ addFile(VcsUtil.getFilePath(path, isDirectory))
+ }
+
+ override fun markFileForAdding(file: VirtualFile) {
+ if (file.isInLocalFileSystem) {
+ addFile(VcsUtil.getFilePath(file))
+ }
+ }
+
+ override fun markFileForAdding(file: File, isDirectory: Boolean) {
+ addFile(VcsUtil.getFilePath(file, isDirectory))
+ }
+
+ override fun markFileForAdding(path: Path, isDirectory: Boolean) {
+ addFile(VcsUtil.getFilePath(path, isDirectory))
+ }
+
+ private fun addFile(filePath: FilePath) {
+ val vcsRoot = vcsManager.getVcsRootObjectFor(filePath)
+ if (vcsRoot == null || vcsRoot.vcs != gitVcs) return
+
+ if (filePath.isDirectory) {
+ vcsFileListenerContextHelper.ignoreAddedRecursive(listOf(filePath))
+ }
+ else {
+ vcsFileListenerContextHelper.ignoreAdded(listOf(filePath))
+ }
+
+ pendingAddition.add(filePath)
+ }
+
+ override fun finish() {
+ vcsFileListenerContextHelper.clearContext()
+
+ val filesToAdd = pendingAddition.toList()
+ pendingAddition.clear()
+
+ @Suppress("IncorrectParentDisposable")
+ BackgroundTaskUtil.executeOnPooledThread(project) { addToVcs(filesToAdd) }
+ }
+
+ /**
+ * Called on pooled thread when all operations are completed.
+ */
+ private fun addToVcs(filePaths: Collection<FilePath>) {
+ val map = GitUtil.sortFilePathsByGitRoot(project, filePaths)
+ for ((root, rootPaths) in map) {
+ try {
+ GitFileUtils.addPaths(project, root, rootPaths)
+ }
+ catch (e: VcsException) {
+ logger<GitSilentFileAdderImpl>().warn(e)
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/git4idea/src/git4idea/repo/GitUntrackedFilesHolder.java b/plugins/git4idea/src/git4idea/repo/GitUntrackedFilesHolder.java
index 17014c9c5c95..e7fccfd8cb10 100644
--- a/plugins/git4idea/src/git4idea/repo/GitUntrackedFilesHolder.java
+++ b/plugins/git4idea/src/git4idea/repo/GitUntrackedFilesHolder.java
@@ -25,7 +25,7 @@ import com.intellij.util.ui.update.MergingUpdateQueue;
import com.intellij.util.ui.update.Update;
import com.intellij.vcsUtil.VcsUtil;
import git4idea.GitContentRevision;
-import git4idea.GitStatisticsCollector;
+import git4idea.GitRefreshUsageCollector;
import git4idea.index.GitIndexStatusUtilKt;
import git4idea.index.LightFileStatus.StatusRecord;
import git4idea.status.GitRefreshListener;
@@ -243,7 +243,7 @@ public class GitUntrackedFilesHolder implements Disposable {
BackgroundTaskUtil.syncPublisher(myProject, GitRefreshListener.TOPIC).progressStarted();
try {
boolean everythingDirty = dirtyFiles == null || dirtyFiles.contains(VcsUtil.getFilePath(myRoot));
- StructuredIdeActivity activity = GitStatisticsCollector.logUntrackedRefresh(myProject, everythingDirty);
+ StructuredIdeActivity activity = GitRefreshUsageCollector.logUntrackedRefresh(myProject, everythingDirty);
RefreshResult result = refreshFiles(dirtyFiles);
activity.finished();
diff --git a/plugins/git4idea/src/git4idea/status/GitStagingAreaHolder.java b/plugins/git4idea/src/git4idea/status/GitStagingAreaHolder.java
index 1f1da52cf8ff..404b96c59d46 100644
--- a/plugins/git4idea/src/git4idea/status/GitStagingAreaHolder.java
+++ b/plugins/git4idea/src/git4idea/status/GitStagingAreaHolder.java
@@ -16,7 +16,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.messages.Topic;
import com.intellij.vcsUtil.VcsUtil;
-import git4idea.GitStatisticsCollector;
+import git4idea.GitRefreshUsageCollector;
import git4idea.commands.GitHandler;
import git4idea.index.GitFileStatus;
import git4idea.index.GitIndexStatusUtilKt;
@@ -103,7 +103,7 @@ public class GitStagingAreaHolder {
dirtyScope.addAll(dirtyPaths);
boolean everythingDirty = dirtyScope.contains(VcsUtil.getFilePath(root));
- StructuredIdeActivity activity = GitStatisticsCollector.logStatusRefresh(myProject, everythingDirty);
+ StructuredIdeActivity activity = GitRefreshUsageCollector.logStatusRefresh(myProject, everythingDirty);
List<GitFileStatus> rootRecords = GitIndexStatusUtilKt.getStatus(myProject, root, dirtyPaths, true, false, false);
activity.finished();
diff --git a/plugins/git4idea/src/git4idea/util/GitFileUtils.java b/plugins/git4idea/src/git4idea/util/GitFileUtils.java
index 45658d16aa4d..9d393743e75d 100644
--- a/plugins/git4idea/src/git4idea/util/GitFileUtils.java
+++ b/plugins/git4idea/src/git4idea/util/GitFileUtils.java
@@ -96,7 +96,7 @@ public final class GitFileUtils {
@NotNull Collection<? extends VirtualFile> addedFiles) {
GitRepository repository = GitUtil.getRepositoryManager(project).getRepositoryForRoot(root);
if (repository == null) {
- LOG.error("Repository not found for root " + root.getPresentableUrl());
+ LOG.warn("Repository not found for root " + root.getPresentableUrl());
return;
}
repository.getUntrackedFilesHolder().remove(ContainerUtil.map(addedFiles, VcsUtil::getFilePath));
@@ -106,7 +106,7 @@ public final class GitFileUtils {
@NotNull Collection<VirtualFile> addedFiles) {
GitRepository repository = GitUtil.getRepositoryManager(project).getRepositoryForRoot(root);
if (repository == null) {
- LOG.error("Repository not found for root " + root.getPresentableUrl());
+ LOG.warn("Repository not found for root " + root.getPresentableUrl());
return;
}
repository.getIgnoredFilesHolder().removeIgnoredFiles(ContainerUtil.mapNotNull(addedFiles, VcsUtil::getFilePath));
@@ -116,7 +116,7 @@ public final class GitFileUtils {
@NotNull Collection<? extends VirtualFile> removedFiles) {
GitRepository repository = GitUtil.getRepositoryManager(project).getRepositoryForRoot(root);
if (repository == null) {
- LOG.error("Repository not found for root " + root.getPresentableUrl());
+ LOG.warn("Repository not found for root " + root.getPresentableUrl());
return;
}
repository.getUntrackedFilesHolder().add(ContainerUtil.map(removedFiles, VcsUtil::getFilePath));
@@ -126,7 +126,7 @@ public final class GitFileUtils {
@NotNull Collection<? extends FilePath> resetFiles) {
GitRepository repository = GitUtil.getRepositoryManager(project).getRepositoryForRoot(root);
if (repository == null) {
- LOG.error("Repository not found for root " + root.getPresentableUrl());
+ LOG.warn("Repository not found for root " + root.getPresentableUrl());
return;
}
repository.getUntrackedFilesHolder().markPossiblyUntracked(resetFiles);
diff --git a/plugins/github/resources/messages/GithubBundle.properties b/plugins/github/resources/messages/GithubBundle.properties
index c14fedec05e4..8da9880c67c5 100644
--- a/plugins/github/resources/messages/GithubBundle.properties
+++ b/plugins/github/resources/messages/GithubBundle.properties
@@ -376,7 +376,8 @@ pull.request.timeline.comment.suggested.changes.error.branches.message=The curre
pull.request.timeline.comment.suggested.changes.action.commit.name=Commit...
pull.request.timeline.comment.suggested.changes.action.commit.title=Commit message
pull.request.timeline.comment.suggested.changes.tooltip.outdated=Outdated suggestions cannot be applied
-pull.request.timeline.comment.suggested.changes.tooltip.different.branch=Unable to apply a suggested change from a different branch a pull request
+pull.request.timeline.comment.suggested.changes.tooltip.resolved=This suggestion has been resolved
+pull.request.timeline.comment.suggested.changes.tooltip.different.branch=Unable to apply the suggested change from a pull request in a different branch
#various errors
cannot.collect.additional.data=Can't collect additional data
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/GHPRTimelineFileEditor.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/GHPRTimelineFileEditor.kt
index 82904585dc58..9c7c675946c5 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/GHPRTimelineFileEditor.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/GHPRTimelineFileEditor.kt
@@ -31,6 +31,7 @@ internal class GHPRTimelineFileEditor(private val project: Project,
: FileEditorBase() {
val securityService = dataContext.securityService
+ val repositoryDataService = dataContext.repositoryDataService
val avatarIconsProvider = dataContext.avatarIconsProvider
val detailsData = dataProvider.detailsData
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHMarkdownToHtmlConverter.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHMarkdownToHtmlConverter.kt
index 0e2a652f3343..347b3c21ff8f 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHMarkdownToHtmlConverter.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHMarkdownToHtmlConverter.kt
@@ -17,17 +17,16 @@ import java.net.URI
class GHMarkdownToHtmlConverter(private val project: Project?) {
@NlsSafe
fun convertMarkdown(@NlsSafe markdownText: String): String {
-
val text = markdownText.replace("\r", "") // TODO: fix bug with CRLF line endings from markdown library
val flavourDescriptor = GithubFlavourDescriptor(CodeBlockHtmlSyntaxHighlighter(project))
+
return MarkdownToHtmlConverter(flavourDescriptor).convertMarkdownToHtml(text, null)
}
@NlsSafe
- fun convertMarkdownWithSuggestedChange(@NlsSafe markdownText: String, suggestedChangeInfo: GHSuggestedChangeInfo): String {
-
- val text = markdownText.replace("\r", "") // TODO: fix bug with CRLF line endings from markdown library
- val htmlSyntaxHighlighter = GHSuggestionHtmlSyntaxHighlighter(project, suggestedChangeInfo)
+ fun convertMarkdownWithSuggestedChange(suggestedChange: GHSuggestedChange): String {
+ val text = suggestedChange.commentBody.replace("\r", "") // TODO: fix bug with CRLF line endings from markdown library
+ val htmlSyntaxHighlighter = GHSuggestionHtmlSyntaxHighlighter(project, suggestedChange)
val flavourDescriptor = GithubFlavourDescriptor(htmlSyntaxHighlighter)
return MarkdownToHtmlConverter(flavourDescriptor).convertMarkdownToHtml(text, null)
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHPRDiffReviewSupportImpl.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHPRDiffReviewSupportImpl.kt
index ddcd652caaf4..074493ebda00 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHPRDiffReviewSupportImpl.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHPRDiffReviewSupportImpl.kt
@@ -21,10 +21,12 @@ import org.jetbrains.plugins.github.pullrequest.comment.viewer.GHPRUnifiedDiffVi
import org.jetbrains.plugins.github.pullrequest.data.GHPRChangeDiffData
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
+import org.jetbrains.plugins.github.pullrequest.data.service.GHPRRepositoryDataService
import org.jetbrains.plugins.github.pullrequest.ui.GHCompletableFutureLoadingModel
import org.jetbrains.plugins.github.pullrequest.ui.GHLoadingModel
import org.jetbrains.plugins.github.pullrequest.ui.GHSimpleLoadingModel
import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRCreateDiffCommentParametersHelper
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
import org.jetbrains.plugins.github.util.GHPatchHunkUtil
import java.util.function.Function
@@ -33,8 +35,9 @@ import kotlin.properties.Delegates.observable
class GHPRDiffReviewSupportImpl(private val project: Project,
private val reviewDataProvider: GHPRReviewDataProvider,
private val detailsDataProvider: GHPRDetailsDataProvider,
- private val diffData: GHPRChangeDiffData,
private val avatarIconsProvider: GHAvatarIconsProvider,
+ private val repositoryDataService: GHPRRepositoryDataService,
+ private val diffData: GHPRChangeDiffData,
private val currentUser: GHUser)
: GHPRDiffReviewSupport {
@@ -72,11 +75,14 @@ class GHPRDiffReviewSupportImpl(private val project: Project,
loadReviewThreads(viewer)
val createCommentParametersHelper = GHPRCreateDiffCommentParametersHelper(diffData.commitSha, diffData.filePath, diffData.linesMapper)
+ val suggestedChangesHelper = GHPRSuggestedChangeHelper(project,
+ viewer, repositoryDataService.remoteCoordinates.repository,
+ reviewDataProvider,
+ detailsDataProvider)
val componentsFactory = GHPRDiffEditorReviewComponentsFactoryImpl(project,
- reviewDataProvider,
- detailsDataProvider,
- createCommentParametersHelper,
- avatarIconsProvider, currentUser)
+ reviewDataProvider, avatarIconsProvider,
+ createCommentParametersHelper, suggestedChangesHelper,
+ currentUser)
val cumulative = diffData is GHPRChangeDiffData.Cumulative
when (viewer) {
is SimpleOnesideDiffViewer ->
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeInfo.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChange.kt
index 5b54fc0e9161..d172a62413a0 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeInfo.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChange.kt
@@ -6,22 +6,36 @@ import com.intellij.openapi.diff.impl.patch.PatchLine
import com.intellij.openapi.diff.impl.patch.PatchReader
import org.jetbrains.plugins.github.util.GHPatchHunkUtil
-data class GHSuggestedChangeInfo(
+data class GHSuggestedChange(
+ val commentBody: String,
val patchHunk: PatchHunk,
val filePath: String,
val startLine: Int,
val endLine: Int
) {
+ fun cutContextContent(): List<String> = patchHunk.lines
+ .filter { it.type != PatchLine.Type.REMOVE }
+ .dropLast(endLine - startLine + 1)
+ .takeLast(3)
+ .map { it.text }
+
fun cutChangedContent(): List<String> = patchHunk.lines
.filter { it.type != PatchLine.Type.REMOVE }
.takeLast(endLine - startLine + 1)
.map { it.text }
+ fun cutSuggestedChangeContent(): List<String> {
+ return commentBody.lines()
+ .dropWhile { !it.startsWith("```suggestion") }
+ .drop(1)
+ .takeWhile { !it.startsWith("```") }
+ }
+
companion object {
- fun create(diffHunk: String, filePath: String, startLine: Int, endLine: Int): GHSuggestedChangeInfo {
+ fun create(commentBody: String, diffHunk: String, filePath: String, startLine: Int, endLine: Int): GHSuggestedChange {
val patchHunk = parseDiffHunk(diffHunk, filePath)
- return GHSuggestedChangeInfo(patchHunk, filePath, startLine - 1, endLine - 1)
+ return GHSuggestedChange(commentBody, patchHunk, filePath, startLine - 1, endLine - 1)
}
fun containsSuggestedChange(markdownText: String): Boolean = markdownText.lines().any { it.startsWith("```suggestion") }
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeApplier.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeApplier.kt
index dbce2d7e289b..0d6998c7501e 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeApplier.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestedChangeApplier.kt
@@ -8,40 +8,39 @@ import com.intellij.openapi.diff.impl.patch.TextFilePatch
import com.intellij.openapi.diff.impl.patch.apply.GenericPatchApplier
import com.intellij.openapi.diff.impl.patch.formove.PatchApplier
import com.intellij.openapi.project.Project
-import com.intellij.openapi.project.guessProjectDir
import com.intellij.openapi.vcs.LocalFilePath
-import com.intellij.openapi.vcs.changes.ChangeListManager
-import com.intellij.openapi.vcs.changes.SimpleContentRevision
-import git4idea.GitContentRevision
-import git4idea.GitRevisionNumber
+import com.intellij.vcsUtil.VcsImplUtil
+import git4idea.GitUtil
import git4idea.checkin.GitCheckinEnvironment
import git4idea.checkin.GitCommitOptions
import git4idea.index.GitIndexUtil
-import git4idea.repo.GitRepositoryManager
+import git4idea.repo.GitRepository
+import git4idea.util.GitFileUtils
+import org.jetbrains.plugins.github.util.GithubUtil
import java.nio.charset.Charset
import java.nio.file.Path
-import kotlin.io.path.isExecutable
class GHSuggestedChangeApplier(
private val project: Project,
- private val suggestedChange: String,
- private val suggestedChangeInfo: GHSuggestedChangeInfo,
+ private val repository: GitRepository,
+ private val suggestedChange: GHSuggestedChange
) {
- private val projectDir = project.guessProjectDir()!!
+ private val virtualBaseDir = repository.root
fun applySuggestedChange(): ApplyPatchStatus {
- val suggestedChangePatch = createSuggestedChangePatch(suggestedChange, suggestedChangeInfo)
- val patchApplier = PatchApplier(project, projectDir, listOf(suggestedChangePatch), null, null)
+ val suggestedChangePatch = createSuggestedChangePatch(suggestedChange)
+ val patchApplier = PatchApplier(project, virtualBaseDir, listOf(suggestedChangePatch), null, null)
return patchApplier.execute(true, false)
}
- private fun createSuggestedChangePatchHunk(suggestedChangeContent: List<String>, suggestedChangeInfo: GHSuggestedChangeInfo): PatchHunk {
- val suggestedChangePatchHunk = PatchHunk(suggestedChangeInfo.startLine, suggestedChangeInfo.endLine,
- suggestedChangeInfo.startLine, suggestedChangeInfo.startLine + suggestedChangeContent.size - 1)
+ private fun createSuggestedChangePatchHunk(suggestedChange: GHSuggestedChange): PatchHunk {
+ val suggestedChangeContent = suggestedChange.cutSuggestedChangeContent()
+ val suggestedChangePatchHunk = PatchHunk(suggestedChange.startLine, suggestedChange.endLine,
+ suggestedChange.startLine, suggestedChange.startLine + suggestedChangeContent.size - 1)
- val changedLines = suggestedChangeInfo.cutChangedContent()
- changedLines.forEach { suggestedChangePatchHunk.addLine(PatchLine(PatchLine.Type.REMOVE, it)) }
+ suggestedChange.cutContextContent().forEach { suggestedChangePatchHunk.addLine(PatchLine(PatchLine.Type.CONTEXT, it)) }
+ suggestedChange.cutChangedContent().forEach { suggestedChangePatchHunk.addLine(PatchLine(PatchLine.Type.REMOVE, it)) }
suggestedChangeContent.forEach { suggestedChangePatchHunk.addLine(PatchLine(PatchLine.Type.ADD, it)) }
return suggestedChangePatchHunk
@@ -49,9 +48,9 @@ class GHSuggestedChangeApplier(
fun commitSuggestedChanges(commitMessage: String): ApplyPatchStatus {
// Apply patch
- val suggestedChangePatch = createSuggestedChangePatch(suggestedChange, suggestedChangeInfo)
- val patchApplier = PatchApplier(project, projectDir, listOf(suggestedChangePatch), null, null)
- val patchStatus = patchApplier.execute(true, true)
+ val suggestedChangePatch = createSuggestedChangePatch(suggestedChange)
+ val patchApplier = PatchApplier(project, virtualBaseDir, listOf(suggestedChangePatch), null, null)
+ val patchStatus = patchApplier.execute(true, false)
if (patchStatus == ApplyPatchStatus.ALREADY_APPLIED) {
return patchStatus
}
@@ -60,49 +59,43 @@ class GHSuggestedChangeApplier(
val beforeLocalFilePath = createLocalFilePath(suggestedChangePatch.beforeName)
val afterLocalFilePath = createLocalFilePath(suggestedChangePatch.afterName)
- val beforeRevision = GitContentRevision.createRevision(beforeLocalFilePath, GitRevisionNumber.HEAD, project)
- val appliedPatch = GenericPatchApplier.apply(beforeRevision.content, suggestedChangePatch.hunks)
+ val bytes = GitFileUtils.getFileContent(project, virtualBaseDir, GitUtil.HEAD, suggestedChangePatch.beforeName)
+ val revisionContent = VcsImplUtil.loadTextFromBytes(project, bytes, beforeLocalFilePath)
+ val appliedPatch = GenericPatchApplier.apply(revisionContent, suggestedChangePatch.hunks)
if (appliedPatch == null || appliedPatch.status != ApplyPatchStatus.SUCCESS) {
return appliedPatch?.status ?: ApplyPatchStatus.FAILURE
}
- val repository = GitRepositoryManager.getInstance(project).getRepositoryForRoot(projectDir) ?: return ApplyPatchStatus.FAILURE
val virtualFile = beforeLocalFilePath.virtualFile ?: return ApplyPatchStatus.FAILURE
val fileContent = GitCheckinEnvironment.convertDocumentContentToBytesWithBOM(repository, appliedPatch.patchedText, virtualFile)
- val isExecutable = Path.of(beforeLocalFilePath.path).isExecutable()
- val hash = GitIndexUtil.write(repository, beforeLocalFilePath, fileContent, isExecutable)
- val suggestedChangeRevision = SimpleContentRevision(appliedPatch.patchedText, afterLocalFilePath, hash.asString())
+ val stagedFile = GitIndexUtil.listStaged(repository, beforeLocalFilePath) ?: return ApplyPatchStatus.FAILURE
+ GitIndexUtil.write(repository, beforeLocalFilePath, fileContent, stagedFile.isExecutable)
// Commit suggested change
- val changes = ChangeListManager.getInstance(project).defaultChangeList.changes.map {
- GitCheckinEnvironment.ChangedPath(it.beforeRevision?.file, it.afterRevision?.file)
+ val suggestedChangedPath = GitCheckinEnvironment.ChangedPath(beforeLocalFilePath, afterLocalFilePath)
+ val commitMessageFile = GitCheckinEnvironment.createCommitMessageFile(project, virtualBaseDir, commitMessage)
+ val exceptions = GitCheckinEnvironment.commitUsingIndex(project, repository,
+ listOf(suggestedChangedPath), setOf(suggestedChangedPath),
+ commitMessageFile, GitCommitOptions())
+
+ if (exceptions.isNotEmpty()) {
+ val messages = exceptions.flatMap { it.messages.toList() }.toTypedArray()
+ GithubUtil.LOG.error("Failed to commit suggested change", *messages)
+ return ApplyPatchStatus.FAILURE
}
- val suggestedChangedPath = GitCheckinEnvironment.ChangedPath(beforeRevision.file, suggestedChangeRevision.file)
- val commitMessageFile = GitCheckinEnvironment.createCommitMessageFile(project, projectDir, commitMessage)
- GitCheckinEnvironment.commitUsingIndex(project, repository,
- listOf(suggestedChangedPath), changes.toSet(),
- commitMessageFile, GitCommitOptions())
return ApplyPatchStatus.SUCCESS
}
- private fun createSuggestedChangePatch(suggestedChange: String, suggestedChangeInfo: GHSuggestedChangeInfo): TextFilePatch {
- val suggestedChangeContent = getSuggestedChangeContent(suggestedChange)
- val suggestedChangePatchHunk = createSuggestedChangePatchHunk(suggestedChangeContent, suggestedChangeInfo)
+ private fun createSuggestedChangePatch(suggestedChange: GHSuggestedChange): TextFilePatch {
+ val suggestedChangePatchHunk = createSuggestedChangePatchHunk(suggestedChange)
return TextFilePatch(Charset.defaultCharset()).apply {
- beforeName = suggestedChangeInfo.filePath
- afterName = suggestedChangeInfo.filePath
+ beforeName = suggestedChange.filePath
+ afterName = suggestedChange.filePath
addHunk(suggestedChangePatchHunk)
}
}
- private fun createLocalFilePath(filename: String): LocalFilePath = LocalFilePath(Path.of(projectDir.path, filename), false)
-
- private fun getSuggestedChangeContent(comment: String): List<String> {
- return comment.lines()
- .dropWhile { !it.startsWith("```suggestion") }
- .drop(1)
- .takeWhile { !it.startsWith("```") }
- }
+ private fun createLocalFilePath(filename: String): LocalFilePath = LocalFilePath(Path.of(virtualBaseDir.path, filename), false)
} \ No newline at end of file
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighter.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighter.kt
index ccf05602eb66..ff4d715f409f 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighter.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighter.kt
@@ -20,7 +20,7 @@ import org.jetbrains.annotations.VisibleForTesting
class GHSuggestionHtmlSyntaxHighlighter(
private val project: Project?,
- private val suggestedChangeInfo: GHSuggestedChangeInfo,
+ private val suggestedChangeInfo: GHSuggestedChange,
) : HtmlSyntaxHighlighter {
override fun color(language: String?, rawContent: String): HtmlChunk {
val name = PathUtil.getFileName(suggestedChangeInfo.filePath)
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRDiffEditorReviewComponentsFactoryImpl.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRDiffEditorReviewComponentsFactoryImpl.kt
index b4a112d40df4..f8f831cdcad7 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRDiffEditorReviewComponentsFactoryImpl.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRDiffEditorReviewComponentsFactoryImpl.kt
@@ -3,7 +3,6 @@ package org.jetbrains.plugins.github.pullrequest.comment.ui
import com.intellij.collaboration.async.CompletableFutureUtil.successOnEdt
import com.intellij.collaboration.ui.codereview.comment.ReviewUIUtil
-import com.intellij.collaboration.ui.codereview.comment.RoundedPanel
import com.intellij.diff.util.Side
import com.intellij.openapi.progress.EmptyProgressIndicator
import com.intellij.openapi.project.Project
@@ -14,23 +13,26 @@ import org.jetbrains.plugins.github.api.data.GHUser
import org.jetbrains.plugins.github.api.data.request.GHPullRequestDraftReviewComment
import org.jetbrains.plugins.github.api.data.request.GHPullRequestDraftReviewThread
import org.jetbrains.plugins.github.i18n.GithubBundle
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRCreateDiffCommentParametersHelper
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
import javax.swing.JComponent
class GHPRDiffEditorReviewComponentsFactoryImpl
internal constructor(private val project: Project,
private val reviewDataProvider: GHPRReviewDataProvider,
- private val detailsDataProvider: GHPRDetailsDataProvider,
- private val createCommentParametersHelper: GHPRCreateDiffCommentParametersHelper,
private val avatarIconsProvider: GHAvatarIconsProvider,
+ private val createCommentParametersHelper: GHPRCreateDiffCommentParametersHelper,
+ private val suggestedChangeHelper: GHPRSuggestedChangeHelper,
private val currentUser: GHUser)
: GHPRDiffEditorReviewComponentsFactory {
override fun createThreadComponent(thread: GHPRReviewThreadModel): JComponent =
- GHPRReviewThreadComponent.create(project, thread, reviewDataProvider, detailsDataProvider, avatarIconsProvider, currentUser).apply {
+ GHPRReviewThreadComponent.create(project, thread,
+ reviewDataProvider, avatarIconsProvider,
+ suggestedChangeHelper,
+ currentUser).apply {
border = JBUI.Borders.empty(8, 8)
}.let { ReviewUIUtil.createEditorInlayPanel(it) }
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponent.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponent.kt
index e28b7bec7cf2..93dca3aeea96 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponent.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponent.kt
@@ -18,11 +18,11 @@ import net.miginfocom.layout.LC
import net.miginfocom.swing.MigLayout
import org.jetbrains.plugins.github.api.data.pullrequest.GHPullRequestReviewCommentState
import org.jetbrains.plugins.github.i18n.GithubBundle
-import org.jetbrains.plugins.github.pullrequest.comment.GHSuggestedChangeInfo
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
+import org.jetbrains.plugins.github.pullrequest.comment.GHSuggestedChange
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
import org.jetbrains.plugins.github.pullrequest.ui.GHEditableHtmlPaneHandle
import org.jetbrains.plugins.github.pullrequest.ui.GHTextActions
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
import org.jetbrains.plugins.github.ui.util.GHUIUtil
import org.jetbrains.plugins.github.ui.util.HtmlEditorPane
@@ -33,11 +33,11 @@ import javax.swing.JPanel
object GHPRReviewCommentComponent {
fun create(project: Project,
- reviewDataProvider: GHPRReviewDataProvider,
thread: GHPRReviewThreadModel,
- detailsDataProvider: GHPRDetailsDataProvider,
comment: GHPRReviewCommentModel,
+ reviewDataProvider: GHPRReviewDataProvider,
avatarIconsProvider: GHAvatarIconsProvider,
+ suggestedChangeHelper: GHPRSuggestedChangeHelper,
showResolvedMarker: Boolean = true): JComponent {
val avatarLabel = ActionLink("") {
@@ -65,9 +65,11 @@ object GHPRReviewCommentComponent {
isOpaque = false
}
- Controller(project, thread,
- reviewDataProvider, detailsDataProvider, comment,
- titlePane, pendingLabel, resolvedLabel, commentPanel, showResolvedMarker)
+ Controller(project,
+ thread, comment,
+ suggestedChangeHelper,
+ titlePane, pendingLabel, resolvedLabel, commentPanel,
+ showResolvedMarker)
val editablePaneHandle = GHEditableHtmlPaneHandle(project, commentPanel, comment::body) {
reviewDataProvider.updateComment(EmptyProgressIndicator(), comment.id, it)
@@ -103,9 +105,8 @@ object GHPRReviewCommentComponent {
private class Controller(private val project: Project,
private val thread: GHPRReviewThreadModel,
- private val reviewDataProvider: GHPRReviewDataProvider,
- private val detailsDataProvider: GHPRDetailsDataProvider,
private val comment: GHPRReviewCommentModel,
+ private val suggestedChangeHelper: GHPRSuggestedChangeHelper,
private val titlePane: HtmlEditorPane,
private val pendingLabel: JComponent,
private val resolvedLabel: JComponent,
@@ -120,12 +121,11 @@ object GHPRReviewCommentComponent {
private fun update() {
val commentComponentFactory = GHPRReviewCommentComponentFactory(project)
- val commentComponent = if (GHSuggestedChangeInfo.containsSuggestedChange(comment.body)) {
- val suggestedChangeInfo = GHSuggestedChangeInfo.create(thread.diffHunk, thread.filePath,
- thread.startLine ?: thread.line, thread.line)
- commentComponentFactory.createCommentWithSuggestedChangeComponent(comment.body, thread.id,
- thread.isOutdated, suggestedChangeInfo,
- reviewDataProvider, detailsDataProvider)
+ val commentComponent = if (GHSuggestedChange.containsSuggestedChange(comment.body)) {
+ val suggestedChange = GHSuggestedChange.create(comment.body,
+ thread.diffHunk, thread.filePath,
+ thread.startLine ?: thread.line, thread.line)
+ commentComponentFactory.createCommentWithSuggestedChangeComponent(thread, suggestedChange, suggestedChangeHelper)
}
else {
commentComponentFactory.createCommentComponent(comment.body)
@@ -143,6 +143,7 @@ object GHPRReviewCommentComponent {
pendingLabel.isVisible = true
titlePane.setBody(authorLink)
}
+
GHPullRequestReviewCommentState.SUBMITTED -> {
pendingLabel.isVisible = false
titlePane.setBody(GithubBundle.message("pull.request.review.commented", authorLink,
@@ -154,13 +155,20 @@ object GHPRReviewCommentComponent {
}
}
- fun factory(project: Project, reviewDataProvider: GHPRReviewDataProvider, avatarIconsProvider: GHAvatarIconsProvider,
- detailsDataProvider: GHPRDetailsDataProvider,
+ fun factory(project: Project,
thread: GHPRReviewThreadModel,
+ reviewDataProvider: GHPRReviewDataProvider,
+ avatarIconsProvider: GHAvatarIconsProvider,
+ suggestedChangeHelper: GHPRSuggestedChangeHelper,
showResolvedMarkerOnFirstComment: Boolean = true)
: (GHPRReviewCommentModel) -> JComponent {
return { comment ->
- create(project, reviewDataProvider, thread, detailsDataProvider, comment, avatarIconsProvider, showResolvedMarkerOnFirstComment)
+ create(
+ project,
+ thread, comment,
+ reviewDataProvider, avatarIconsProvider,
+ suggestedChangeHelper,
+ showResolvedMarkerOnFirstComment)
}
}
}
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponentFactory.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponentFactory.kt
index 81ac37896f8e..2acf11184074 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponentFactory.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewCommentComponentFactory.kt
@@ -5,10 +5,9 @@ import com.intellij.openapi.project.Project
import com.intellij.ui.components.panels.VerticalLayout
import org.jetbrains.annotations.VisibleForTesting
import org.jetbrains.plugins.github.pullrequest.comment.GHMarkdownToHtmlConverter
+import org.jetbrains.plugins.github.pullrequest.comment.GHSuggestedChange
import org.jetbrains.plugins.github.pullrequest.comment.GHSuggestedChangeApplier
-import org.jetbrains.plugins.github.pullrequest.comment.GHSuggestedChangeInfo
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.util.HtmlEditorPane
import javax.swing.JComponent
import javax.swing.JPanel
@@ -23,20 +22,16 @@ class GHPRReviewCommentComponentFactory(private val project: Project) {
}
fun createCommentWithSuggestedChangeComponent(
- commentBody: String,
- threadId: String,
- isOutdated: Boolean,
- suggestedChangeInfo: GHSuggestedChangeInfo,
- reviewDataProvider: GHPRReviewDataProvider,
- detailsDataProvider: GHPRDetailsDataProvider
+ thread: GHPRReviewThreadModel,
+ suggestedChange: GHSuggestedChange,
+ suggestedChangeHelper: GHPRSuggestedChangeHelper
): JComponent {
- val htmlBody = markdownConverter.convertMarkdownWithSuggestedChange(commentBody, suggestedChangeInfo)
+ val htmlBody = markdownConverter.convertMarkdownWithSuggestedChange(suggestedChange)
val content = htmlBody.removePrefix("<body>").removeSuffix("</body>")
val commentBlocks = collectCommentBlocks(content)
- val suggestedChangeApplier = GHSuggestedChangeApplier(project, commentBody, suggestedChangeInfo)
- val suggestedChangeComponent = GHPRReviewSuggestedChangeComponentFactory(project, threadId, suggestedChangeApplier,
- reviewDataProvider, detailsDataProvider)
+ val suggestedChangeApplier = GHSuggestedChangeApplier(project, suggestedChangeHelper.repository, suggestedChange)
+ val suggestedChangeComponent = GHPRReviewSuggestedChangeComponentFactory(project, thread, suggestedChangeApplier, suggestedChangeHelper)
return JPanel(VerticalLayout(0)).apply {
isOpaque = false
@@ -44,7 +39,7 @@ class GHPRReviewCommentComponentFactory(private val project: Project) {
commentBlocks.forEach {
when (it.commentType) {
CommentType.COMMENT -> add(HtmlEditorPane(it.content))
- CommentType.SUGGESTED_CHANGE -> add(suggestedChangeComponent.create(it.content, isOutdated))
+ CommentType.SUGGESTED_CHANGE -> add(suggestedChangeComponent.create(it.content))
}
}
}
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewSuggestedChangeComponentFactory.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewSuggestedChangeComponentFactory.kt
index 1a18406f3c4a..a6beb2446324 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewSuggestedChangeComponentFactory.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewSuggestedChangeComponentFactory.kt
@@ -11,12 +11,10 @@ import com.intellij.openapi.editor.Document
import com.intellij.openapi.editor.colors.EditorColorsManager
import com.intellij.openapi.editor.event.DocumentEvent
import com.intellij.openapi.editor.event.DocumentListener
-import com.intellij.openapi.progress.EmptyProgressIndicator
import com.intellij.openapi.progress.ProgressIndicator
import com.intellij.openapi.progress.Task
import com.intellij.openapi.project.Project
import com.intellij.openapi.ui.ComponentContainer
-import com.intellij.openapi.ui.Messages
import com.intellij.openapi.ui.popup.JBPopupFactory
import com.intellij.openapi.util.registry.Registry
import com.intellij.openapi.vcs.VcsBundle
@@ -31,27 +29,22 @@ import com.intellij.ui.dsl.gridLayout.VerticalAlign
import com.intellij.util.ui.JBDimension
import com.intellij.util.ui.JBUI
import com.intellij.util.ui.UIUtil
-import git4idea.branch.GitBranchUtil
import org.jetbrains.plugins.github.i18n.GithubBundle
import org.jetbrains.plugins.github.pullrequest.comment.GHSuggestedChangeApplier
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.util.HtmlEditorPane
import java.awt.BorderLayout
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
-import javax.swing.AbstractAction
-import javax.swing.JButton
-import javax.swing.JComponent
+import javax.swing.*
class GHPRReviewSuggestedChangeComponentFactory(
private val project: Project,
- private val threadId: String,
+ private val thread: GHPRReviewThreadModel,
private val suggestionApplier: GHSuggestedChangeApplier,
- private val reviewDataProvider: GHPRReviewDataProvider,
- private val detailsDataProvider: GHPRDetailsDataProvider
+ private val suggestedChangeHelper: GHPRSuggestedChangeHelper
) {
- fun create(content: String, isOutdated: Boolean): JComponent = RoundedPanel(BorderLayout(), 8).apply {
+ fun create(content: String): JComponent = RoundedPanel(BorderLayout(), 8).apply {
isOpaque = false
border = JBUI.Borders.compound(JBUI.Borders.empty(EMPTY_GAP, 0), border)
@@ -80,35 +73,29 @@ class GHPRReviewSuggestedChangeComponentFactory(
add(topPanel, BorderLayout.NORTH)
add(HtmlEditorPane(content), BorderLayout.CENTER)
- if (isCurrentBranchDifferentWithPullRequest()) {
- optionButton.disableActions()
- optionButton.optionTooltipText = GithubBundle.message("pull.request.timeline.comment.suggested.changes.tooltip.different.branch")
- }
- else if (isOutdated) {
- optionButton.disableActions()
- optionButton.optionTooltipText = GithubBundle.message("pull.request.timeline.comment.suggested.changes.tooltip.outdated")
- }
+ suggestedChangeHelper.isCorrectBranch.addAndInvokeListener { updateUI(optionButton, it, thread.isOutdated, thread.isResolved) }
}
- private fun isCurrentBranchDifferentWithPullRequest(): Boolean {
- val currentRepository = GitBranchUtil.getCurrentRepository(project)
- val currentBranchName = currentRepository?.let { GitBranchUtil.getBranchNameOrRev(it) } ?: return true
-
- val pullRequestSourceBranchName = detailsDataProvider.loadedDetails?.headRefName
+ private fun updateUI(optionButton: JBOptionButton, isCorrectBranch: Boolean, isOutdated: Boolean, isResolved: Boolean) {
+ if (isCorrectBranch && !isOutdated && !isResolved) {
+ optionButton.enableActions()
+ return
+ }
- return currentBranchName != pullRequestSourceBranchName
+ optionButton.apply {
+ disableActions()
+ optionTooltipText = when {
+ isOutdated -> GithubBundle.message("pull.request.timeline.comment.suggested.changes.tooltip.outdated")
+ isResolved -> GithubBundle.message("pull.request.timeline.comment.suggested.changes.tooltip.resolved")
+ else -> GithubBundle.message("pull.request.timeline.comment.suggested.changes.tooltip.different.branch")
+ }
+ }
}
private inner class ApplyLocallySuggestedChangeAction : AbstractAction(
GithubBundle.message("pull.request.timeline.comment.suggested.changes.button")
) {
override fun actionPerformed(event: ActionEvent) {
- if (isCurrentBranchDifferentWithPullRequest()) {
- Messages.showWarningDialog(GithubBundle.message("pull.request.timeline.comment.suggested.changes.error.branches.message"),
- GithubBundle.message("pull.request.timeline.comment.suggested.changes.error.branches.title"))
- return
- }
-
object : Task.Backgroundable(
project,
GithubBundle.message("pull.request.timeline.comment.suggested.changes.progress.bar.apply"),
@@ -122,7 +109,7 @@ class GHPRReviewSuggestedChangeComponentFactory(
override fun onSuccess() {
if (applyStatus == ApplyPatchStatus.SUCCESS) {
- reviewDataProvider.resolveThread(EmptyProgressIndicator(), threadId)
+ suggestedChangeHelper.resolveThread(thread.id)
}
}
}.queue()
@@ -138,7 +125,7 @@ class GHPRReviewSuggestedChangeComponentFactory(
cancelRunnable?.invoke()
}
- val container = createPopupComponentContainer(reviewDataProvider.submitReviewCommentDocument, cancelActionListener)
+ val container = createPopupComponentContainer(suggestedChangeHelper.suggestedChangeCommitMessageDocument, cancelActionListener)
val popup = JBPopupFactory.getInstance()
.createComponentPopupBuilder(container.component, container.preferredFocusableComponent)
.setFocusable(true)
@@ -153,6 +140,33 @@ class GHPRReviewSuggestedChangeComponentFactory(
private fun createPopupComponentContainer(commentDocument: Document, cancelActionListener: ActionListener): ComponentContainer {
return object : ComponentContainer {
+ private val commitAction = ActionListener {
+ if (commitEditor.text.isBlank()) {
+ errorLabel.isVisible = true
+ return@ActionListener
+ }
+
+ object : Task.Backgroundable(
+ project,
+ GithubBundle.message("pull.request.timeline.comment.suggested.changes.progress.bar.commit"),
+ true
+ ) {
+ private var commitStatus = ApplyPatchStatus.FAILURE
+
+ override fun run(indicator: ProgressIndicator) {
+ commitStatus = suggestionApplier.commitSuggestedChanges(commitEditor.text)
+ }
+
+ override fun onSuccess() {
+ cancelActionListener.actionPerformed(it)
+ if (commitStatus == ApplyPatchStatus.SUCCESS) {
+ suggestedChangeHelper.resolveThread(thread.id)
+ runWriteAction { commentDocument.setText("") }
+ }
+ }
+ }.queue()
+ }
+
private val errorLabel = JBLabel().apply {
text = VcsBundle.message("error.no.commit.message")
icon = AllIcons.General.Error
@@ -175,38 +189,7 @@ class GHPRReviewSuggestedChangeComponentFactory(
private val commitButton = JButton(VcsBundle.message("commit.progress.title")).apply {
isOpaque = false
- addActionListener {
- if (commitEditor.text.isBlank()) {
- errorLabel.isVisible = true
- return@addActionListener
- }
-
- if (isCurrentBranchDifferentWithPullRequest()) {
- Messages.showWarningDialog(GithubBundle.message("pull.request.timeline.comment.suggested.changes.error.branches.message"),
- GithubBundle.message("pull.request.timeline.comment.suggested.changes.error.branches.title"))
- return@addActionListener
- }
-
- object : Task.Backgroundable(
- project,
- GithubBundle.message("pull.request.timeline.comment.suggested.changes.progress.bar.commit"),
- true
- ) {
- private var commitStatus = ApplyPatchStatus.FAILURE
-
- override fun run(indicator: ProgressIndicator) {
- commitStatus = suggestionApplier.commitSuggestedChanges(commitEditor.text)
- }
-
- override fun onSuccess() {
- cancelActionListener.actionPerformed(it)
- if (commitStatus == ApplyPatchStatus.SUCCESS) {
- reviewDataProvider.resolveThread(EmptyProgressIndicator(), threadId)
- runWriteAction { commentDocument.setText("") }
- }
- }
- }.queue()
- }
+ addActionListener(commitAction)
}.defaultButton()
private val cancelButton = JButton(CommonBundle.getCancelButtonText()).apply {
@@ -228,15 +211,25 @@ class GHPRReviewSuggestedChangeComponentFactory(
}.apply {
background = EditorColorsManager.getInstance().globalScheme.defaultBackground
preferredSize = JBDimension(450, 165)
+
+ isFocusCycleRoot = true
+ focusTraversalPolicy = LayoutFocusTraversalPolicy()
+
+ registerKeyboardAction(commitAction, KeyStroke.getKeyStroke("ctrl ENTER"), JPanel.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT)
}
- override fun getPreferredFocusableComponent(): JComponent = commitEditor
+ override fun getPreferredFocusableComponent(): JComponent = commitEditor.editorField
override fun dispose() {}
}
}
}
+ private fun JBOptionButton.enableActions() {
+ action.isEnabled = true
+ options?.forEach { it.isEnabled = true }
+ }
+
private fun JBOptionButton.disableActions() {
action.isEnabled = false
options?.forEach { it.isEnabled = false }
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewThreadComponent.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewThreadComponent.kt
index 000f97f82672..0613c96b584b 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewThreadComponent.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/comment/ui/GHPRReviewThreadComponent.kt
@@ -29,8 +29,8 @@ import net.miginfocom.swing.MigLayout
import org.jetbrains.plugins.github.api.data.GHUser
import org.jetbrains.plugins.github.api.data.pullrequest.GHPullRequestReviewCommentState
import org.jetbrains.plugins.github.i18n.GithubBundle
-import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.pullrequest.ui.timeline.GHPRReviewThreadDiffComponentFactory
import org.jetbrains.plugins.github.pullrequest.ui.timeline.GHPRSelectInToolWindowHelper
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
@@ -46,15 +46,15 @@ object GHPRReviewThreadComponent {
fun create(project: Project,
thread: GHPRReviewThreadModel,
reviewDataProvider: GHPRReviewDataProvider,
- detailsDataProvider: GHPRDetailsDataProvider,
avatarIconsProvider: GHAvatarIconsProvider,
+ suggestedChangeHelper: GHPRSuggestedChangeHelper,
currentUser: GHUser): JComponent {
val panel = JPanel(VerticalLayout(12)).apply {
isOpaque = false
}
- panel.add(
- GHPRReviewThreadCommentsPanel.create(thread, GHPRReviewCommentComponent.factory(project, reviewDataProvider, avatarIconsProvider,
- detailsDataProvider, thread)))
+ panel.add(GHPRReviewThreadCommentsPanel.create(thread, GHPRReviewCommentComponent.factory(project, thread,
+ reviewDataProvider, avatarIconsProvider,
+ suggestedChangeHelper)))
if (reviewDataProvider.canComment()) {
panel.add(getThreadActionsComponent(project, reviewDataProvider, thread, avatarIconsProvider, currentUser))
@@ -65,10 +65,10 @@ object GHPRReviewThreadComponent {
fun createWithDiff(project: Project,
thread: GHPRReviewThreadModel,
reviewDataProvider: GHPRReviewDataProvider,
- detailsDataProvider: GHPRDetailsDataProvider,
- selectInToolWindowHelper: GHPRSelectInToolWindowHelper,
- diffComponentFactory: GHPRReviewThreadDiffComponentFactory,
avatarIconsProvider: GHAvatarIconsProvider,
+ diffComponentFactory: GHPRReviewThreadDiffComponentFactory,
+ selectInToolWindowHelper: GHPRSelectInToolWindowHelper,
+ suggestedChangeHelper: GHPRSuggestedChangeHelper,
currentUser: GHUser): JComponent {
val collapseButton = InlineIconButton(AllIcons.General.CollapseComponent, AllIcons.General.CollapseComponentHover,
@@ -94,8 +94,10 @@ object GHPRReviewThreadComponent {
val commentsComponent = JPanel(VerticalLayout(12)).apply {
isOpaque = false
- val reviewCommentComponent = GHPRReviewCommentComponent.factory(project, reviewDataProvider, avatarIconsProvider,
- detailsDataProvider, thread, false)
+ val reviewCommentComponent = GHPRReviewCommentComponent.factory(project, thread,
+ reviewDataProvider, avatarIconsProvider,
+ suggestedChangeHelper,
+ false)
add(GHPRReviewThreadCommentsPanel.create(thread, reviewCommentComponent))
if (reviewDataProvider.canComment()) {
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/data/provider/GHPRReviewDataProviderImpl.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/data/provider/GHPRReviewDataProviderImpl.kt
index 1731ef1f993b..78310b565f4f 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/data/provider/GHPRReviewDataProviderImpl.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/data/provider/GHPRReviewDataProviderImpl.kt
@@ -20,7 +20,6 @@ import org.jetbrains.plugins.github.api.data.pullrequest.GHPullRequestReviewThre
import org.jetbrains.plugins.github.api.data.request.GHPullRequestDraftReviewComment
import org.jetbrains.plugins.github.api.data.request.GHPullRequestDraftReviewThread
import org.jetbrains.plugins.github.pullrequest.data.GHPRIdentifier
-import org.jetbrains.plugins.github.pullrequest.data.service.GHPRCommentService
import org.jetbrains.plugins.github.pullrequest.data.service.GHPRReviewService
import org.jetbrains.plugins.github.util.LazyCancellableBackgroundProcessValue
import java.util.concurrent.CompletableFuture
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRDiffRequestChainProducer.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRDiffRequestChainProducer.kt
index de127e2d11d4..0d75534166de 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRDiffRequestChainProducer.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRDiffRequestChainProducer.kt
@@ -33,6 +33,7 @@ import org.jetbrains.plugins.github.pullrequest.comment.action.GHPRDiffReviewThr
import org.jetbrains.plugins.github.pullrequest.comment.action.GHPRDiffReviewThreadsToggleAction
import org.jetbrains.plugins.github.pullrequest.data.GHPRChangesProvider
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDataProvider
+import org.jetbrains.plugins.github.pullrequest.data.service.GHPRRepositoryDataService
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
import org.jetbrains.plugins.github.util.DiffRequestChainProducer
import org.jetbrains.plugins.github.util.GHToolbarLabelAction
@@ -42,6 +43,7 @@ open class GHPRDiffRequestChainProducer(
private val project: Project,
private val dataProvider: GHPRDataProvider,
private val avatarIconsProvider: GHAvatarIconsProvider,
+ private val repositoryDataService: GHPRRepositoryDataService,
private val currentUser: GHUser
) : DiffRequestChainProducer {
@@ -110,7 +112,11 @@ open class GHPRDiffRequestChainProducer(
private fun getReviewSupport(changesProvider: GHPRChangesProvider, change: Change): GHPRDiffReviewSupport? {
val diffData = changesProvider.findChangeDiffData(change) ?: return null
- return GHPRDiffReviewSupportImpl(project, dataProvider.reviewData, dataProvider.detailsData, diffData, avatarIconsProvider, currentUser)
+ return GHPRDiffReviewSupportImpl(project,
+ dataProvider.reviewData, dataProvider.detailsData, avatarIconsProvider,
+ repositoryDataService,
+ diffData,
+ currentUser)
}
private fun getDiffComputer(changesProvider: GHPRChangesProvider, change: Change): DiffUserDataKeysEx.DiffComputer? {
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRSuggestedChangeHelper.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRSuggestedChangeHelper.kt
new file mode 100644
index 000000000000..497f8cdc28f1
--- /dev/null
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/changes/GHPRSuggestedChangeHelper.kt
@@ -0,0 +1,52 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package org.jetbrains.plugins.github.pullrequest.ui.changes
+
+import com.intellij.collaboration.ui.SingleValueModel
+import com.intellij.openapi.Disposable
+import com.intellij.openapi.editor.EditorFactory
+import com.intellij.openapi.progress.EmptyProgressIndicator
+import com.intellij.openapi.project.Project
+import git4idea.branch.GitBranchUtil
+import git4idea.repo.GitRepository
+import git4idea.repo.GitRepository.GIT_REPO_CHANGE
+import git4idea.repo.GitRepositoryChangeListener
+import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
+import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
+
+class GHPRSuggestedChangeHelper(
+ project: Project,
+ parentDisposable: Disposable,
+ val repository: GitRepository,
+ private val reviewDataProvider: GHPRReviewDataProvider,
+ private val detailsDataProvider: GHPRDetailsDataProvider
+) {
+ val suggestedChangeCommitMessageDocument by lazy(LazyThreadSafetyMode.NONE) {
+ EditorFactory.getInstance().createDocument("")
+ }
+
+ val isCorrectBranch by lazy(LazyThreadSafetyMode.NONE) {
+ SingleValueModel(isCorrectBranchWithPullRequestSource())
+ }
+
+ init {
+ project.messageBus
+ .connect(parentDisposable)
+ .subscribe(GIT_REPO_CHANGE, GitRepositoryChangeListener {
+ val currentBranchName = it.currentBranch?.name ?: return@GitRepositoryChangeListener
+ val pullRequestSourceBranchName = detailsDataProvider.loadedDetails?.headRefName ?: return@GitRepositoryChangeListener
+
+ isCorrectBranch.value = currentBranchName == pullRequestSourceBranchName
+ })
+ }
+
+ fun resolveThread(threadId: String) {
+ reviewDataProvider.resolveThread(EmptyProgressIndicator(), threadId)
+ }
+
+ private fun isCorrectBranchWithPullRequestSource(): Boolean {
+ val currentBranchName = GitBranchUtil.getBranchNameOrRev(repository)
+ val pullRequestSourceBranchName = detailsDataProvider.loadedDetails?.headRefName ?: return false
+
+ return currentBranchName == pullRequestSourceBranchName
+ }
+} \ No newline at end of file
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRFileEditorComponentFactory.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRFileEditorComponentFactory.kt
index 8449a3d8489e..7cfa1903b687 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRFileEditorComponentFactory.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRFileEditorComponentFactory.kt
@@ -36,6 +36,7 @@ import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRCommentsDataPr
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataProvider
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
import org.jetbrains.plugins.github.pullrequest.ui.GHApiLoadingErrorHandler
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
import org.jetbrains.plugins.github.ui.component.GHHandledErrorPanelModel
import org.jetbrains.plugins.github.ui.component.GHHtmlErrorPanel
@@ -104,11 +105,20 @@ internal class GHPRFileEditorComponentFactory(private val project: Project,
val header = GHPRTitleComponent.create(project, detailsModel, editor.detailsData)
+ val suggestedChangesHelper = GHPRSuggestedChangeHelper(project,
+ uiDisposable,
+ editor.repositoryDataService.remoteCoordinates.repository,
+ editor.reviewData,
+ editor.detailsData)
val timeline = GHPRTimelineComponent(detailsModel,
timelineModel,
- createItemComponentFactory(project, editor.detailsData, editor.commentsData, editor.reviewData,
- reviewThreadsModelsProvider,
- editor.avatarIconsProvider, editor.securityService.currentUser)).apply {
+ createItemComponentFactory(
+ project,
+ editor.detailsData, editor.commentsData, editor.reviewData,
+ reviewThreadsModelsProvider, editor.avatarIconsProvider,
+ suggestedChangesHelper,
+ editor.securityService.currentUser
+ )).apply {
border = JBUI.Borders.empty(16, 0)
}
val errorPanel = GHHtmlErrorPanel.create(errorModel)
@@ -201,15 +211,19 @@ internal class GHPRFileEditorComponentFactory(private val project: Project,
reviewDataProvider: GHPRReviewDataProvider,
reviewThreadsModelsProvider: GHPRReviewsThreadsModelsProvider,
avatarIconsProvider: GHAvatarIconsProvider,
+ suggestedChangeHelper: GHPRSuggestedChangeHelper,
currentUser: GHUser)
: GHPRTimelineItemComponentFactory {
val selectInToolWindowHelper = GHPRSelectInToolWindowHelper(project, detailsModel.value)
val diffFactory = GHPRReviewThreadDiffComponentFactory(project, EditorFactory.getInstance())
val eventsFactory = GHPRTimelineEventComponentFactoryImpl(avatarIconsProvider)
- return GHPRTimelineItemComponentFactory(project, detailsDataProvider, commentsDataProvider, reviewDataProvider,
- avatarIconsProvider, reviewThreadsModelsProvider, diffFactory,
- eventsFactory,
- selectInToolWindowHelper, currentUser)
+ return GHPRTimelineItemComponentFactory(
+ project,
+ detailsDataProvider, commentsDataProvider, reviewDataProvider, avatarIconsProvider, reviewThreadsModelsProvider,
+ diffFactory,
+ eventsFactory, selectInToolWindowHelper,
+ suggestedChangeHelper, currentUser
+ )
}
} \ No newline at end of file
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRTimelineItemComponentFactory.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRTimelineItemComponentFactory.kt
index d5fbca7d56de..33b9155aef35 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRTimelineItemComponentFactory.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/timeline/GHPRTimelineItemComponentFactory.kt
@@ -43,6 +43,7 @@ import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRDetailsDataPro
import org.jetbrains.plugins.github.pullrequest.data.provider.GHPRReviewDataProvider
import org.jetbrains.plugins.github.pullrequest.ui.GHEditableHtmlPaneHandle
import org.jetbrains.plugins.github.pullrequest.ui.GHTextActions
+import org.jetbrains.plugins.github.pullrequest.ui.changes.GHPRSuggestedChangeHelper
import org.jetbrains.plugins.github.ui.avatars.GHAvatarIconsProvider
import org.jetbrains.plugins.github.ui.util.GHUIUtil
import org.jetbrains.plugins.github.ui.util.HtmlEditorPane
@@ -61,6 +62,7 @@ class GHPRTimelineItemComponentFactory(private val project: Project,
private val reviewDiffComponentFactory: GHPRReviewThreadDiffComponentFactory,
private val eventComponentFactory: GHPRTimelineEventComponentFactory<GHPRTimelineEvent>,
private val selectInToolWindowHelper: GHPRSelectInToolWindowHelper,
+ private val suggestedChangeHelper: GHPRSuggestedChangeHelper,
private val currentUser: GHUser) : TimelineItemComponentFactory<GHPRTimelineItem> {
override fun createComponent(item: GHPRTimelineItem): Item {
@@ -166,11 +168,10 @@ class GHPRTimelineItemComponentFactory(private val project: Project,
if (panelHandle != null) add(panelHandle.panel)
add(GHPRReviewThreadsPanel.create(reviewThreadsModel) {
GHPRReviewThreadComponent.createWithDiff(project, it,
- reviewDataProvider,
- detailsDataProvider,
- selectInToolWindowHelper,
+ reviewDataProvider, avatarIconsProvider,
reviewDiffComponentFactory,
- avatarIconsProvider, currentUser)
+ selectInToolWindowHelper, suggestedChangeHelper,
+ currentUser)
})
}
val actionText = when (review.state) {
diff --git a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/toolwindow/GHPRViewComponentFactory.kt b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/toolwindow/GHPRViewComponentFactory.kt
index 0ab95f3c8f6c..511d65648f41 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/toolwindow/GHPRViewComponentFactory.kt
+++ b/plugins/github/src/org/jetbrains/plugins/github/pullrequest/ui/toolwindow/GHPRViewComponentFactory.kt
@@ -112,7 +112,10 @@ internal class GHPRViewComponentFactory(private val actionManager: ActionManager
private val repository: GitRepository get() = dataContext.repositoryDataService.remoteCoordinates.repository
private val diffRequestProducer: DiffRequestChainProducer =
- object : GHPRDiffRequestChainProducer(project, dataProvider, dataContext.avatarIconsProvider, dataContext.securityService.currentUser) {
+ object : GHPRDiffRequestChainProducer(project,
+ dataProvider, dataContext.avatarIconsProvider,
+ dataContext.repositoryDataService,
+ dataContext.securityService.currentUser) {
private val viewedStateSupport = GHPRViewedStateDiffSupportImpl(repository, dataProvider.viewedStateData)
diff --git a/plugins/github/test/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighterTest.kt b/plugins/github/test/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighterTest.kt
index 84453779783f..fab4bfc003c8 100644
--- a/plugins/github/test/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighterTest.kt
+++ b/plugins/github/test/org/jetbrains/plugins/github/pullrequest/comment/GHSuggestionHtmlSyntaxHighlighterTest.kt
@@ -122,7 +122,7 @@ class GHSuggestionHtmlSyntaxHighlighterTest {
}
private fun checkSuggestedChange(expected: List<String>, diffHunk: String, afterStartLine: Int, afterEndLine: Int) {
- val suggestedChangeInfo = GHSuggestedChangeInfo.create(diffHunk, "", afterStartLine, afterEndLine)
+ val suggestedChangeInfo = GHSuggestedChange.create("", diffHunk, "", afterStartLine, afterEndLine)
val changedContent = suggestedChangeInfo.cutChangedContent()
assertArrayEquals(expected.toTypedArray(), changedContent.toTypedArray())
diff --git a/plugins/gradle/java/src/service/project/wizard/AbstractGradleModuleBuilder.java b/plugins/gradle/java/src/service/project/wizard/AbstractGradleModuleBuilder.java
index fd9870199c5c..6da7ce69737b 100644
--- a/plugins/gradle/java/src/service/project/wizard/AbstractGradleModuleBuilder.java
+++ b/plugins/gradle/java/src/service/project/wizard/AbstractGradleModuleBuilder.java
@@ -8,6 +8,8 @@ import com.intellij.ide.projectWizard.ProjectSettingsStep;
import com.intellij.ide.util.EditorHelper;
import com.intellij.ide.util.projectWizard.*;
import com.intellij.openapi.Disposable;
+import com.intellij.openapi.GitSilentFileAdder;
+import com.intellij.openapi.GitSilentFileAdderProvider;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.diagnostic.Logger;
@@ -255,7 +257,14 @@ public abstract class AbstractGradleModuleBuilder extends AbstractExternalModule
}
private void createWrapper(@NotNull Project project, @NotNull Runnable callback) {
- GradleExecutionUtil.ensureInstalledWrapper(project, rootProjectPath, gradleVersion, callback);
+ GitSilentFileAdder vcsFileAdder = GitSilentFileAdderProvider.create(project);
+ vcsFileAdder.markFileForAdding(rootProjectPath.resolve("gradle"), true);
+ vcsFileAdder.markFileForAdding(rootProjectPath.resolve("gradlew"), false);
+ vcsFileAdder.markFileForAdding(rootProjectPath.resolve("gradlew.bat"), false);
+ GradleExecutionUtil.ensureInstalledWrapper(project, rootProjectPath, gradleVersion, () -> {
+ vcsFileAdder.finish();
+ callback.run();
+ });
}
public void configureBuildScript(@NotNull Consumer<GradleBuildScriptBuilder<?>> configure) {
diff --git a/plugins/gradle/java/src/service/project/wizard/groovy/GradleGroovyNewProjectWizard.kt b/plugins/gradle/java/src/service/project/wizard/groovy/GradleGroovyNewProjectWizard.kt
index c62840ccbf04..0570757d0272 100644
--- a/plugins/gradle/java/src/service/project/wizard/groovy/GradleGroovyNewProjectWizard.kt
+++ b/plugins/gradle/java/src/service/project/wizard/groovy/GradleGroovyNewProjectWizard.kt
@@ -9,6 +9,14 @@ import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logP
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkChanged
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkFinished
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logVersionChanged
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep.Companion.withJavaSampleCodeAsset
+import com.intellij.ide.starters.local.StandardAssetsProvider
+import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.name
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.path
+import com.intellij.ide.wizard.NewProjectWizardStep
+import com.intellij.ide.wizard.chain
import com.intellij.openapi.application.runWriteAction
import com.intellij.openapi.externalSystem.service.project.manage.ExternalProjectsManagerImpl
import com.intellij.openapi.project.Project
@@ -16,6 +24,8 @@ import com.intellij.openapi.roots.ui.distribution.LocalDistributionInfo
import com.intellij.openapi.vfs.VfsUtil
import com.intellij.ui.dsl.builder.BottomGap
import com.intellij.ui.dsl.builder.Panel
+import org.jetbrains.plugins.gradle.service.project.wizard.GradleJavaNewProjectWizardData.Companion.addSampleCode
+import org.jetbrains.plugins.gradle.service.project.wizard.GradleJavaNewProjectWizardData.Companion.groupId
import org.jetbrains.plugins.gradle.service.project.wizard.GradleNewProjectWizardStep
import org.jetbrains.plugins.gradle.service.project.wizard.generateModuleBuilder
import org.jetbrains.plugins.gradle.util.GradleConstants
@@ -29,7 +39,7 @@ class GradleGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
override val ordinal: Int = 2
- override fun createStep(parent: GroovyNewProjectWizard.Step): GradleNewProjectWizardStep<GroovyNewProjectWizard.Step> = Step(parent)
+ override fun createStep(parent: GroovyNewProjectWizard.Step): NewProjectWizardStep = Step(parent).chain(::AssetsStep)
class Step(parent: GroovyNewProjectWizard.Step) :
GradleNewProjectWizardStep<GroovyNewProjectWizard.Step>(parent),
@@ -96,4 +106,13 @@ class GradleGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
versionProperty.afterChange { logVersionChanged() }
}
}
+
+ private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
+ override fun setupAssets(project: Project) {
+ outputDirectory = "$path/$name"
+ if (gitData?.git == true) {
+ addAssets(StandardAssetsProvider().getGradleIgnoreAssets())
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/target/GradleServerEnvironmentSetupImpl.kt b/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/target/GradleServerEnvironmentSetupImpl.kt
index ea739cbeb357..afb860db64a1 100644
--- a/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/target/GradleServerEnvironmentSetupImpl.kt
+++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/target/GradleServerEnvironmentSetupImpl.kt
@@ -164,11 +164,11 @@ internal class GradleServerEnvironmentSetupImpl(private val project: Project,
for (localPath in localPathsToMap) {
if (targetPathMapper != null && targetPathMapper.canReplaceLocal(localPath)) {
val targetPath = targetPathMapper.convertToRemote(localPath)
- mapperInitScript.append("ext.pathMapper.put(\"${toGroovyString(localPath)}\", \"${toGroovyString(targetPath)}\")\n")
+ mapperInitScript.append("ext.pathMapper.put(${toGroovyString(localPath)}, ${toGroovyString(targetPath)})\n")
}
else if (pathMappingSettings.canReplaceLocal(localPath)) {
val targetPath = pathMappingSettings.convertToRemote(localPath)
- mapperInitScript.append("ext.pathMapper.put(\"${toGroovyString(localPath)}\", \"${toGroovyString(targetPath)}\")\n")
+ mapperInitScript.append("ext.pathMapper.put(${toGroovyString(localPath)}, ${toGroovyString(targetPath)})\n")
}
}
@@ -179,7 +179,7 @@ internal class GradleServerEnvironmentSetupImpl(private val project: Project,
if (javaRuntime != null) {
val targetJavaExecutablePath = arrayOf(javaRuntime.homePath, "bin", java).joinToString(platform.fileSeparator.toString())
mapperInitScript.append(
- "ext.pathMapper.put(\"${targetJavaExecutablePathMappingKey}\", \"${toGroovyString(targetJavaExecutablePath)}\")\n")
+ "ext.pathMapper.put(\"${targetJavaExecutablePathMappingKey}\", ${toGroovyString(targetJavaExecutablePath)})\n")
}
else {
mapperInitScript.append("ext.pathMapper.put(\"${targetJavaExecutablePathMappingKey}\", \"${java}\")\n")
diff --git a/plugins/grazie/resources/META-INF/plugin.xml b/plugins/grazie/resources/META-INF/plugin.xml
index a94bcd931704..ad920fe1b2ce 100644
--- a/plugins/grazie/resources/META-INF/plugin.xml
+++ b/plugins/grazie/resources/META-INF/plugin.xml
@@ -4,19 +4,22 @@
<vendor>JetBrains</vendor>
<description><![CDATA[
- <p>Provides intelligent spelling and grammar checks for text that you write in the IDE.</p>
+ <p>Intelligent spelling and grammar checks for any text you write in the IDE.</p>
<ul>
- <li>Supports over 15 languages, including English, German, Russian, Chinese, and others.</li>
- <li>Recognizes natural language constructs in programming languages (Python, Java and others),
- markup languages (Latex, Markdown, XML, HTML), comments, commits messages, and more.</li>
+ <li>
+ Supports over 20 languages, including English, German, Russian, and Chinese.
+ English is enabled by default.
+ To add other languages, open <b>Settings/Preferences | Editor | Natural Languages</b>.
+ </li>
+ <li>
+ Works with natural languages in programming language constructs (Python, Java, and others),
+ markup languages (Markdown, HTML, XML, and others), comments, and commit messages.
+ </li>
<li>Uses <a href="https://www.languagetool.org/">LanguageTool</a> as its proofreading engine.</li>
</ul>
- <p>English is enabled by default when you install the plugin. To enable other languages, open <strong>Settings/Preferences</strong>
- and select <strong>Editor</strong> > <strong>Natural Languages</strong>.</p>
-
- <p><strong>NOTE:</strong> By default, all verification is performed locally, inside your IDE.</p>
+ <p>Data privacy: all verification is performed locally, inside your IDE.</p>
]]></description>
<content>
diff --git a/plugins/grazie/src/intellij.grazie.core.iml b/plugins/grazie/src/intellij.grazie.core.iml
index cc2679e09c96..7490a67f3dc2 100644
--- a/plugins/grazie/src/intellij.grazie.core.iml
+++ b/plugins/grazie/src/intellij.grazie.core.iml
@@ -89,9 +89,9 @@
<orderEntry type="module" module-name="intellij.platform.ide" />
<orderEntry type="module-library">
<library name="org.languagetool:languagetool-core:5.6" type="repository">
- <properties include-transitive-deps="false" maven-id="org.languagetool:languagetool-core:5.6.1-grz" />
+ <properties include-transitive-deps="false" maven-id="org.languagetool:languagetool-core:5.6.2-grz" />
<CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/org/languagetool/languagetool-core/5.6.1-grz/languagetool-core-5.6.1-grz.jar!/" />
+ <root url="jar://$MAVEN_REPOSITORY$/org/languagetool/languagetool-core/5.6.2-grz/languagetool-core-5.6.2-grz.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
diff --git a/plugins/groovy/groovy-psi/resources/inlayProviders/groovy.parameters.hints/type.parameter.list.groovy b/plugins/groovy/groovy-psi/resources/inlayProviders/groovy.parameters.hints/type.parameter.list.groovy
index 8a603f5c55fd..2ab87c65cc7f 100644
--- a/plugins/groovy/groovy-psi/resources/inlayProviders/groovy.parameters.hints/type.parameter.list.groovy
+++ b/plugins/groovy/groovy-psi/resources/inlayProviders/groovy.parameters.hints/type.parameter.list.groovy
@@ -1,2 +1,8 @@
-def m1(a) { }
-m1(1) \ No newline at end of file
+static def foo(a, b) {
+ b.add(a)
+}
+
+static def bar() {
+ foo(1, [1])
+ foo("", [""])
+} \ No newline at end of file
diff --git a/plugins/groovy/groovy-psi/resources/messages/GroovyBundle.properties b/plugins/groovy/groovy-psi/resources/messages/GroovyBundle.properties
index 1d8b805a8e26..bb9bf8fd70b3 100644
--- a/plugins/groovy/groovy-psi/resources/messages/GroovyBundle.properties
+++ b/plugins/groovy/groovy-psi/resources/messages/GroovyBundle.properties
@@ -742,7 +742,7 @@ settings.inlay.type.parameter.list=Type parameter list
settings.inlay.show.type.hints.for=Show type hints for:
inlay.groovy.implicit.null.argument.hint.description=Calls that pass no arguments to methods that take one argument, which means that an implicit null will be passed as the argument.
inlay.groovy.parameters.hints.inferred.parameter.types=Inferred parameter types in methods.
-inlay.groovy.parameters.hints.type.parameter.list=Methods with one or more inferred type parameters.
+inlay.groovy.parameters.hints.type.parameter.list=Methods with one or more inferred type parameters. Requires the <b>Inferred parameter types<b/> hint.
intention.name.replace.with.in=Replace ':' with 'in'
intention.name.activate.back=Activate back
intention.name.cast.to.0=Cast to {0}
@@ -1091,6 +1091,8 @@ gdsl.trusted.project.answer.dont.trust=No
label.groovy.sdk=Groovy SDK:
local.variable.types=Local variable types
settings.inlay.show.variable.type.hints=Show local variable type hints
+# suppress inspection "UnusedProperty"
+inlay.groovy.variable.type.hints.description=Local variable types at declarations where they are not specified explicitly.
settings.inlay.put.type.hint.before.identifier=Put type hint before identifier
dialog.title.select.groovy.sdk=Select Groovy SDK
dialog.title.specify.groovy.sdk=Specify Groovy SDK home
@@ -1110,3 +1112,4 @@ documentation.inferred.type.label=Inferred type
documentation.gdk.label=GDK
notification.group.groovy.dsl=Groovy DSL errors
notification.group.grape=Groovy @Grab annotation processed
+shows.parameter.names.at.function.call.sites=Shows parameter names at function call sites.
diff --git a/plugins/groovy/resources/inlayProviders/Parameters/preview.groovy b/plugins/groovy/resources/inlayProviders/Parameters/preview.groovy
new file mode 100644
index 000000000000..efd2b44c6aa3
--- /dev/null
+++ b/plugins/groovy/resources/inlayProviders/Parameters/preview.groovy
@@ -0,0 +1,5 @@
+hi("Jane")
+
+def hi(name) {
+ println("Hello, $name!")
+} \ No newline at end of file
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/GroovyInlayParameterHintsProvider.kt b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/GroovyInlayParameterHintsProvider.kt
index acfccf867fd0..c788dae40dc7 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/GroovyInlayParameterHintsProvider.kt
+++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/GroovyInlayParameterHintsProvider.kt
@@ -10,6 +10,7 @@ import com.intellij.openapi.util.text.StringUtil
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiMethod
import com.intellij.psi.PsiMirrorElement
+import org.jetbrains.plugins.groovy.GroovyBundle
import org.jetbrains.plugins.groovy.editor.shouldHideInlayHints
import org.jetbrains.plugins.groovy.lang.psi.api.GrFunctionalExpression
import org.jetbrains.plugins.groovy.lang.psi.api.GroovyMethodResult
@@ -46,6 +47,8 @@ class GroovyInlayParameterHintsProvider : InlayParameterHintsProvider {
override fun getBlackListDependencyLanguage(): Language = JavaLanguage.INSTANCE
+ override fun getDescription(): String = GroovyBundle.message("shows.parameter.names.at.function.call.sites")
+
private companion object {
private val blackList = setOf(
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyLocalVariableTypeHintsInlayProvider.kt b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyLocalVariableTypeHintsInlayProvider.kt
index 151707132aaf..819acaca5b00 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyLocalVariableTypeHintsInlayProvider.kt
+++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyLocalVariableTypeHintsInlayProvider.kt
@@ -1,10 +1,10 @@
-// Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.plugins.groovy.codeInsight.hint.types
import com.intellij.codeInsight.hints.*
import com.intellij.openapi.editor.Editor
import com.intellij.psi.PsiFile
-import com.intellij.ui.layout.*
+import com.intellij.ui.dsl.builder.panel
import org.jetbrains.plugins.groovy.GroovyBundle
import javax.swing.JPanel
@@ -13,7 +13,10 @@ class GroovyLocalVariableTypeHintsInlayProvider : InlayHintsProvider<GroovyLocal
private val ourKey: SettingsKey<Settings> = SettingsKey("groovy.variable.type.hints")
}
- override fun getCollectorFor(file: PsiFile, editor: Editor, settings: Settings, sink: InlayHintsSink): InlayHintsCollector = GroovyLocalVariableTypeHintsCollector(editor, settings)
+ override fun getCollectorFor(file: PsiFile,
+ editor: Editor,
+ settings: Settings,
+ sink: InlayHintsSink): InlayHintsCollector = GroovyLocalVariableTypeHintsCollector(editor, settings)
override fun createSettings(): Settings = Settings()
@@ -35,14 +38,27 @@ def foo() {
}
""".trimIndent()
- override fun createConfigurable(settings: Settings): ImmediateConfigurable = object : ImmediateConfigurable {
- override val cases: List<ImmediateConfigurable.Case> = listOf(
- ImmediateConfigurable.Case(GroovyBundle.message("settings.inlay.put.type.hint.before.identifier"), "inferred.parameter.types", settings::insertBeforeIdentifier),
- )
+ override fun createConfigurable(settings: Settings): ImmediateConfigurable = object: ImmediateConfigurable {
+ val insertTypeHintBeforeIdentifier: Boolean = settings.insertBeforeIdentifier
- override fun createComponent(listener: ChangeListener): JPanel = panel {}
+ override fun createComponent(listener: ChangeListener): JPanel = panel {
+ row {
+ checkBox(GroovyBundle.message("settings.inlay.put.type.hint.before.identifier"))
+ .applyToComponent {
+ isSelected = insertTypeHintBeforeIdentifier
+ addItemListener {
+ listener.settingsChanged()
+ settings.insertBeforeIdentifier = this@applyToComponent.isSelected
+ }
+ }
+ }
+ }
- override val mainCheckboxText: String
- get() = GroovyBundle.message("settings.inlay.show.variable.type.hints")
+ override fun reset() {
+ settings.insertBeforeIdentifier = insertTypeHintBeforeIdentifier
+ super.reset()
+ }
+
+ override val mainCheckboxText: String get() = GroovyBundle.message("settings.inlay.show.variable.type.hints")
}
} \ No newline at end of file
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsCollector.kt b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsCollector.kt
index 2ff28167c6a1..e879ae2a7d8c 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsCollector.kt
+++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsCollector.kt
@@ -4,6 +4,7 @@ package org.jetbrains.plugins.groovy.codeInsight.hint.types
import com.intellij.codeInsight.hints.FactoryInlayHintsCollector
import com.intellij.codeInsight.hints.InlayHintsSink
import com.intellij.codeInsight.hints.presentation.InlayPresentation
+import com.intellij.codeInsight.hints.settings.CASE_KEY
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.project.DumbService
import com.intellij.psi.CommonClassNames
@@ -32,7 +33,7 @@ class GroovyParameterTypeHintsCollector(editor: Editor,
if (DumbService.isDumb(element.project) || element.project.isDefault) {
return false
}
- if (!settings.showInferredParameterTypes) {
+ if (!settings.showInferredParameterTypes && CASE_KEY.get(editor) == null) {
return false
}
PsiUtilCore.ensureValid(element)
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsInlayProvider.kt b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsInlayProvider.kt
index 3a3e2852e64b..bc79fb3bbe99 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsInlayProvider.kt
+++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/hint/types/GroovyParameterTypeHintsInlayProvider.kt
@@ -37,8 +37,12 @@ class GroovyParameterTypeHintsInlayProvider : InlayHintsProvider<GroovyParameter
override val group: InlayGroup
get() = InlayGroup.TYPES_GROUP
- override fun getProperty(key: String): String {
- return GroovyBundle.message(key)
+ override fun getCaseDescription(case: ImmediateConfigurable.Case): String? {
+ when(case.id) {
+ "inferred.parameter.types" -> return GroovyBundle.message("inlay.groovy.parameters.hints.inferred.parameter.types")
+ "type.parameter.list" -> return GroovyBundle.message("inlay.groovy.parameters.hints.type.parameter.list")
+ }
+ return null
}
override val previewText: String
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/config/wizard/IntelliJGroovyNewProjectWizard.kt b/plugins/groovy/src/org/jetbrains/plugins/groovy/config/wizard/IntelliJGroovyNewProjectWizard.kt
index 3d5b7be2bf24..ba6780a2dbbc 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/config/wizard/IntelliJGroovyNewProjectWizard.kt
+++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/config/wizard/IntelliJGroovyNewProjectWizard.kt
@@ -10,10 +10,16 @@ import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logM
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logModuleNameChanged
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkChanged
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkFinished
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
import com.intellij.ide.projectWizard.generators.IntelliJNewProjectWizardStep
+import com.intellij.ide.starters.local.StandardAssetsProvider
import com.intellij.ide.util.EditorHelper
import com.intellij.ide.util.projectWizard.ModuleBuilder
+import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.name
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.path
import com.intellij.ide.wizard.NewProjectWizardStep
+import com.intellij.ide.wizard.chain
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.application.runReadAction
import com.intellij.openapi.module.Module
@@ -43,13 +49,12 @@ class IntelliJGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
override val ordinal: Int = 0
- override fun createStep(parent: GroovyNewProjectWizard.Step): NewProjectWizardStep = Step(parent)
+ override fun createStep(parent: GroovyNewProjectWizard.Step): NewProjectWizardStep = Step(parent).chain(::AssetsStep)
class Step(parent: GroovyNewProjectWizard.Step) :
IntelliJNewProjectWizardStep<GroovyNewProjectWizard.Step>(parent),
BuildSystemGroovyNewProjectWizardData by parent {
-
override fun Panel.customOptions() {
row(GroovyBundle.message("label.groovy.sdk")) {
groovySdkComboBox(context, groovySdkProperty)
@@ -107,8 +112,6 @@ class IntelliJGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
}
}
-
-
private fun createCompositionSettings(project: Project, container: LibrariesContainer): LibraryCompositionSettings? {
val libraryDescription = GroovyLibraryDescription()
val versionFilter = FrameworkLibraryVersionFilter.ALL
@@ -136,6 +139,14 @@ class IntelliJGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
else -> return null
}
}
+ }
+ private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
+ override fun setupAssets(project: Project) {
+ outputDirectory = "$path/$name"
+ if (gitData?.git == true) {
+ addAssets(StandardAssetsProvider().getIntelliJIgnoreAssets())
+ }
+ }
}
} \ No newline at end of file
diff --git a/plugins/ide-features-trainer/intellij.featuresTrainer.iml b/plugins/ide-features-trainer/intellij.featuresTrainer.iml
index b63c87c43543..14fb23fe45a2 100644
--- a/plugins/ide-features-trainer/intellij.featuresTrainer.iml
+++ b/plugins/ide-features-trainer/intellij.featuresTrainer.iml
@@ -49,5 +49,6 @@
<orderEntry type="library" name="Velocity" level="project" />
<orderEntry type="library" name="kotlinx-serialization-core" level="project" />
<orderEntry type="library" name="kotlinx-serialization-json" level="project" />
+ <orderEntry type="module" module-name="intellij.platform.lvcs.impl" />
</component>
</module> \ No newline at end of file
diff --git a/plugins/ide-features-trainer/res/META-INF/plugin.xml b/plugins/ide-features-trainer/res/META-INF/plugin.xml
index 2928f28b84c6..044ca2e32328 100644
--- a/plugins/ide-features-trainer/res/META-INF/plugin.xml
+++ b/plugins/ide-features-trainer/res/META-INF/plugin.xml
@@ -126,7 +126,7 @@
restartRequired="false"/>
<registryKey key="ift.send.onboarding.feedback"
description="Where to send onboarding lessons feedback (nowhere, staging, production)."
- defaultValue="nowhere"
+ defaultValue="production"
restartRequired="false"/>
<registryKey key="ift.adapt.to.not.native.localization"
description="Lessons logic will be changed like using not native localization."
diff --git a/plugins/ide-features-trainer/src/training/featuresSuggester/FeatureSuggestersManager.kt b/plugins/ide-features-trainer/src/training/featuresSuggester/FeatureSuggestersManager.kt
index 5d2b165f05e2..fc91a1a7db5f 100644
--- a/plugins/ide-features-trainer/src/training/featuresSuggester/FeatureSuggestersManager.kt
+++ b/plugins/ide-features-trainer/src/training/featuresSuggester/FeatureSuggestersManager.kt
@@ -35,7 +35,6 @@ class FeatureSuggestersManager(val project: Project) : Disposable {
}
private fun handleAction(action: Action) {
- if (project.isDisposed) return
val language = action.language ?: return
val suggesters = FeatureSuggester.suggesters
.filter { it.languages.find { id -> id == Language.ANY.id || id == language.id } != null }
diff --git a/plugins/ide-features-trainer/src/training/featuresSuggester/SuggestingUtils.kt b/plugins/ide-features-trainer/src/training/featuresSuggester/SuggestingUtils.kt
index 71509d7afec1..2a714681023d 100644
--- a/plugins/ide-features-trainer/src/training/featuresSuggester/SuggestingUtils.kt
+++ b/plugins/ide-features-trainer/src/training/featuresSuggester/SuggestingUtils.kt
@@ -28,7 +28,7 @@ internal object SuggestingUtils {
set(value) = Registry.get("feature.suggester.force.show.suggestions").setValue(value)
fun isActionsProcessingEnabled(project: Project): Boolean {
- return !DumbService.isDumb(project) && FeatureSuggesterSettings.instance().isAnySuggesterEnabled
+ return !project.isDisposed && !DumbService.isDumb(project) && FeatureSuggesterSettings.instance().isAnySuggesterEnabled
}
fun handleAction(project: Project, action: Action) {
diff --git a/plugins/ide-features-trainer/src/training/learn/lesson/general/assistance/LocalHistoryLesson.kt b/plugins/ide-features-trainer/src/training/learn/lesson/general/assistance/LocalHistoryLesson.kt
index 1cbd795858da..90570a4544a0 100644
--- a/plugins/ide-features-trainer/src/training/learn/lesson/general/assistance/LocalHistoryLesson.kt
+++ b/plugins/ide-features-trainer/src/training/learn/lesson/general/assistance/LocalHistoryLesson.kt
@@ -2,6 +2,8 @@
package training.learn.lesson.general.assistance
import com.intellij.CommonBundle
+import com.intellij.history.integration.ui.actions.LocalHistoryGroup
+import com.intellij.history.integration.ui.actions.ShowHistoryAction
import com.intellij.icons.AllIcons
import com.intellij.idea.ActionsBundle
import com.intellij.openapi.actionSystem.CommonDataKeys
@@ -49,7 +51,6 @@ import training.ui.LearningUiHighlightingManager
import training.ui.LearningUiHighlightingManager.HighlightingOptions
import training.ui.LearningUiUtil
import training.util.LessonEndInfo
-import training.util.isToStringContains
import java.awt.Component
import java.awt.Point
import java.awt.Rectangle
@@ -165,7 +166,7 @@ class LocalHistoryLesson : KLesson("CodeAssistance.LocalHistory", LessonsBundle.
text(LessonsBundle.message("local.history.invoke.context.menu", strong(localHistoryActionText)))
triggerAndBorderHighlight().component { ui: EditorComponentImpl -> ui.editor == editor }
triggerAndFullHighlight().component { ui: ActionMenu ->
- ui.text.isToStringContains(localHistoryActionText)
+ isClassEqual(ui.anAction, LocalHistoryGroup::class.java)
}
test {
ideFrame { robot().rightClick(editor.component) }
@@ -176,14 +177,14 @@ class LocalHistoryLesson : KLesson("CodeAssistance.LocalHistory", LessonsBundle.
val showHistoryActionText = ActionsBundle.actionText(it).dropMnemonic()
text(LessonsBundle.message("local.history.show.history", strong(localHistoryActionText), strong(showHistoryActionText)))
triggerAndFullHighlight { clearPreviousHighlights = false }.component { ui: ActionMenuItem ->
- ui.text == showHistoryActionText
+ isClassEqual(ui.anAction, ShowHistoryAction::class.java)
}
trigger(it)
restoreByUi()
test {
ideFrame {
- jMenuItem { item: ActionMenu -> item.text.isToStringContains(localHistoryActionText) }.click()
- jMenuItem { item: ActionMenuItem -> item.text == showHistoryActionText }.click()
+ jMenuItem { item: ActionMenu -> isClassEqual(item.anAction, LocalHistoryGroup::class.java) }.click()
+ jMenuItem { item: ActionMenuItem -> isClassEqual(item.anAction, ShowHistoryAction::class.java) }.click()
}
}
}
@@ -300,6 +301,10 @@ class LocalHistoryLesson : KLesson("CodeAssistance.LocalHistory", LessonsBundle.
}
}
+ private fun isClassEqual(value: Any, expectedClass: Class<*>): Boolean {
+ return value.javaClass.name == expectedClass.name
+ }
+
private fun findDiffGutterRect(ui: EditorGutterComponentEx): Rectangle? {
val editor = CommonDataKeys.EDITOR.getData(ui as DataProvider) ?: return null
val offset = editor.document.charsSequence.indexOf(textToDelete)
diff --git a/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/caches/project/KotlinStdlibCache.kt b/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/caches/project/KotlinStdlibCache.kt
index ab5f73e91969..6ec04c971ffc 100644
--- a/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/caches/project/KotlinStdlibCache.kt
+++ b/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/caches/project/KotlinStdlibCache.kt
@@ -5,16 +5,23 @@
package org.jetbrains.kotlin.idea.caches.project
+import com.intellij.openapi.progress.ProgressManager
import com.intellij.openapi.project.Project
+import com.intellij.openapi.roots.LibraryOrderEntry
import com.intellij.openapi.roots.OrderRootType
+import com.intellij.openapi.roots.ProjectFileIndex
+import com.intellij.openapi.roots.impl.libraries.LibraryEx
+import com.intellij.openapi.util.ThrowableComputable
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.search.DelegatingGlobalSearchScope
import com.intellij.psi.search.GlobalSearchScope
+import com.intellij.util.indexing.DumbModeAccessType
import com.intellij.util.indexing.FileBasedIndex
import org.jetbrains.kotlin.caches.project.cacheInvalidatingOnRootModifications
import org.jetbrains.kotlin.idea.configuration.IdeBuiltInsLoadingState
import org.jetbrains.kotlin.idea.vfilefinder.KotlinStdlibIndex
import org.jetbrains.kotlin.name.FqName
+import org.jetbrains.kotlin.utils.addToStdlib.safeAs
import java.util.concurrent.ConcurrentHashMap
// TODO(kirpichenkov): works only for JVM (see KT-44552)
@@ -75,13 +82,15 @@ class KotlinStdlibCacheImpl(val project: Project) : KotlinStdlibCache {
override fun toString() = "All files under: $directories"
}
- private fun libraryScopeContainsIndexedFilesForNames(libraryInfo: LibraryInfo, names: Collection<FqName>) =
+ private fun libraryScopeContainsIndexedFilesForNames(libraryInfo: LibraryInfo, names: Collection<FqName>): Boolean =
names.any { name ->
- FileBasedIndex.getInstance().getContainingFiles(
- KotlinStdlibIndex.KEY,
- name,
- LibraryScope(project, libraryInfo.library.rootProvider.getFiles(OrderRootType.CLASSES).toSet())
- ).isNotEmpty()
+ DumbModeAccessType.RELIABLE_DATA_ONLY.ignoreDumbMode(ThrowableComputable {
+ FileBasedIndex.getInstance().getContainingFiles(
+ KotlinStdlibIndex.KEY,
+ name,
+ LibraryScope(project, libraryInfo.library.rootProvider.getFiles(OrderRootType.CLASSES).toSet())
+ ).isNotEmpty()
+ })
}
private fun libraryScopeContainsIndexedFilesForName(libraryInfo: LibraryInfo, name: FqName) =
@@ -108,11 +117,41 @@ class KotlinStdlibCacheImpl(val project: Project) : KotlinStdlibCache {
}
override fun findStdlibInModuleDependencies(module: IdeaModuleInfo): LibraryInfo? {
+ ProgressManager.checkCanceled()
val stdlibDependency = moduleStdlibDependencyCache.getOrPut(module) {
- val stdLib = module.dependencies().firstOrNull {
+ val moduleSourceInfo = module.safeAs<ModuleSourceInfo>()
+ val stdLib = moduleSourceInfo?.module?.moduleWithLibrariesScope?.let index@{ scope ->
+ val stdlibManifests =
+ FileBasedIndex.getInstance().getContainingFiles(
+ KotlinStdlibIndex.KEY,
+ KotlinStdlibIndex.KOTLIN_STDLIB_NAME,
+ scope
+ )
+ val index = ProjectFileIndex.SERVICE.getInstance(project)
+ for (manifest in stdlibManifests) {
+ val orderEntries = index.getOrderEntriesForFile(manifest)
+ orderEntries.firstNotNullOfOrNull { it.safeAs<LibraryOrderEntry>()?.library.safeAs<LibraryEx>() }?.let {
+ createLibraryInfo(project, it)
+ }?.firstOrNull(::isStdlib)?.let {
+ return@index it
+ }
+ }
+ null
+ } ?: module.safeAs<LibraryInfo>()?.takeIf(::isStdlib) ?: module.dependencies().firstOrNull {
it is LibraryInfo && isStdlib(it)
} as LibraryInfo?
- StdlibDependency(stdLib)
+
+ val stdlibDependency = StdlibDependency(stdLib)
+ moduleSourceInfo?.let { _ ->
+ // all module dependencies have same stdlib as module itself
+ module.dependencies().forEach {
+ if (it is LibraryInfo) {
+ moduleStdlibDependencyCache.putIfAbsent(it, stdlibDependency)
+ }
+ }
+ }
+
+ stdlibDependency
}
return stdlibDependency.libraryInfo
diff --git a/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/compiler/configuration/KotlinJpsPluginSettings.kt b/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/compiler/configuration/KotlinJpsPluginSettings.kt
index b56c79cd997d..424969401351 100644
--- a/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/compiler/configuration/KotlinJpsPluginSettings.kt
+++ b/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/compiler/configuration/KotlinJpsPluginSettings.kt
@@ -17,6 +17,9 @@ class KotlinJpsPluginSettings(project: Project) : BaseKotlinCompilerSettings<Jps
override fun createSettings() = JpsPluginSettings()
companion object {
+ // Use bundled by default because this will work even without internet connection
+ val DEFAULT_VERSION = KotlinPluginLayout.instance.standaloneCompilerVersion
+
fun getInstance(project: Project): KotlinJpsPluginSettings? {
val jpsPluginSettings = project.getServiceSafe<KotlinJpsPluginSettings>()
if (!isUnbundledJpsExperimentalFeatureEnabled(project)) {
@@ -27,8 +30,7 @@ class KotlinJpsPluginSettings(project: Project) : BaseKotlinCompilerSettings<Jps
if (jpsPluginSettings.settings.version.isEmpty()) {
// Encourage user to specify desired Kotlin compiler version in project settings for sake of reproducible builds
jpsPluginSettings.settings = jpsPluginSettings.settings.unfrozen().apply {
- // Use bundled by default because this will work even without internet connection
- version = KotlinPluginLayout.instance.standaloneCompilerVersion
+ version = DEFAULT_VERSION
}
}
return jpsPluginSettings
diff --git a/plugins/kotlin/frontend-independent/resources-en/messages/KotlinBundle.properties b/plugins/kotlin/frontend-independent/resources-en/messages/KotlinBundle.properties
index 1f2e073497db..e96861c7052a 100644
--- a/plugins/kotlin/frontend-independent/resources-en/messages/KotlinBundle.properties
+++ b/plugins/kotlin/frontend-independent/resources-en/messages/KotlinBundle.properties
@@ -1317,6 +1317,8 @@ function.0.returning.1.without.the.corresponding=Function ''{0}'' returning ''{1
redundant.async.call.may.be.reduced.to.0=Redundant ''async'' call may be reduced to ''{0}''
redundant.runcatching.call.may.be.reduced.to.0=Redundant ''runCatching'' call may be reduced to ''{0}''
rename.to.fix.text=Rename to ''{0}''
+rename.only.current.0=Rename only current {0,choice,1#function|2#property}
+rename.base.0=Rename base {0,choice,1#function|2#property|3#member|4#method|11#functions|12#properties|13#members|14#methods}
rename.declaration.title.0.implements.1.2.of.3={0} {1,choice,1#implements|2#overrides} {2} of {3}
wrap.with.coroutine.scope.fix.text=Wrap function body with 'coroutineScope { ... }'
wrap.with.coroutine.scope.fix.text2=Wrap call with 'coroutineScope { ... }'
@@ -2454,7 +2456,7 @@ inspection.message.inconsistent.parameter.name.for.0=Inconsistent parameter name
inspection.kotlin.catch.may.ignore.exception.display.name='catch' block may ignore exception
inspection.message.empty.catch.block=Empty catch block
-project.wizard.new.project.kotlin.comment=To create a complex project, use the <a>Kotlin Templates generator</a>.
+project.wizard.new.project.kotlin.comment=To create a complex project, use the <a>Kotlin Multiplatform</a> generator.
add.empty.argument.list=Add empty argument list
diff --git a/plugins/kotlin/gradle/gradle-idea/src/org/jetbrains/kotlin/idea/gradle/configuration/cachedCompilerArgumentsRestoring.kt b/plugins/kotlin/gradle/gradle-idea/src/org/jetbrains/kotlin/idea/gradle/configuration/cachedCompilerArgumentsRestoring.kt
index b309d62bd21c..c60a5c884a44 100644
--- a/plugins/kotlin/gradle/gradle-idea/src/org/jetbrains/kotlin/idea/gradle/configuration/cachedCompilerArgumentsRestoring.kt
+++ b/plugins/kotlin/gradle/gradle-idea/src/org/jetbrains/kotlin/idea/gradle/configuration/cachedCompilerArgumentsRestoring.kt
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.idea.projectModel.ArgsInfo
import org.jetbrains.kotlin.idea.projectModel.CompilerArgumentsCacheAware
import org.jetbrains.kotlin.idea.projectModel.KotlinCachedCompilerArgument
import org.jetbrains.kotlin.idea.projectModel.KotlinRawCompilerArgument
+import org.jetbrains.kotlin.platform.impl.FakeK2NativeCompilerArguments
import java.io.File
import kotlin.reflect.KMutableProperty1
import kotlin.reflect.KProperty1
@@ -48,6 +49,7 @@ class EmptyFlatArgsInfo : FlatSerializedArgsInfo {
object CachedArgumentsRestoring {
private val LOGGER = Logger.getInstance(CachedArgumentsRestoring.javaClass)
+ private const val STUB_K_2_NATIVE_COMPILER_ARGUMENTS_CLASS = "org.jetbrains.kotlin.gradle.tasks.StubK2NativeCompilerArguments"
fun restoreSerializedArgsInfo(
cachedSerializedArgsInfo: CachedSerializedArgsInfo,
compilerArgumentsCacheHolder: CompilerArgumentsCacheHolder
@@ -102,7 +104,12 @@ object CachedArgumentsRestoring {
LOGGER.error("Failed to restore name of compiler arguments class from id $it! 'CommonCompilerArguments' instance was created instead")
}
}
- val compilerArgumentsClass = Class.forName(compilerArgumentsClassName) as Class<out CommonCompilerArguments>
+ //TODO: Fixup. Remove it once actual K2NativeCompilerArguments will be available without 'kotlin.native.enabled = true' flag
+ val compilerArgumentsClass = if (compilerArgumentsClassName == STUB_K_2_NATIVE_COMPILER_ARGUMENTS_CLASS)
+ FakeK2NativeCompilerArguments::class.java
+ else
+ Class.forName(compilerArgumentsClassName) as Class<out CommonCompilerArguments>
+
val newCompilerArgumentsBean = compilerArgumentsClass.getConstructor().newInstance()
val propertiesByName = compilerArgumentsClass.kotlin.memberProperties.associateBy { it.name }
cachedBucket.singleArguments.entries.mapNotNull {
diff --git a/plugins/kotlin/gradle/gradle-tooling/src/org/jetbrains/kotlin/idea/gradleTooling/reflect/KotlinNativeCompileReflection.kt b/plugins/kotlin/gradle/gradle-tooling/src/org/jetbrains/kotlin/idea/gradleTooling/reflect/KotlinNativeCompileReflection.kt
index 8cbce71a7516..ba86c0c16506 100644
--- a/plugins/kotlin/gradle/gradle-tooling/src/org/jetbrains/kotlin/idea/gradleTooling/reflect/KotlinNativeCompileReflection.kt
+++ b/plugins/kotlin/gradle/gradle-tooling/src/org/jetbrains/kotlin/idea/gradleTooling/reflect/KotlinNativeCompileReflection.kt
@@ -1,7 +1,9 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.kotlin.idea.gradleTooling.reflect
+import org.gradle.api.file.DirectoryProperty
import org.gradle.api.provider.Provider
+import org.jetbrains.kotlin.idea.gradleTooling.getMethodOrNull
import java.io.File
fun KotlinNativeCompileReflection(compileKotlinTask: Any): KotlinNativeCompileReflection =
@@ -13,8 +15,11 @@ interface KotlinNativeCompileReflection {
private class KotlinNativeCompileReflectionImpl(private val instance: Any) : KotlinNativeCompileReflection {
override val destinationDir: File? by lazy {
- instance.callReflectiveGetter("getDestinationDir", logger)
- ?: when(val outputFile = instance.callReflective("getOutputFile", parameters(), returnType<Any>(), logger)) {
+ val instanceClazz = instance::class.java
+ if (instanceClazz.getMethodOrNull("getDestinationDirectory") != null)
+ instance.callReflectiveGetter<DirectoryProperty>("getDestinationDirectory", logger)?.asFile?.get()
+ else instance.callReflectiveGetter("getDestinationDir", logger)
+ ?: when (val outputFile = instance.callReflectiveAnyGetter("getOutputFile", logger)) {
is Provider<*> -> outputFile.orNull as? File
is File -> outputFile
else -> null
diff --git a/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.receivers.parameters.kt b/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.receivers.parameters.kt
index d93e1185441d..c429d584926e 100644
--- a/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.receivers.parameters.kt
+++ b/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.receivers.parameters.kt
@@ -1,10 +1,7 @@
-fun numbers(): String {
- val numbers = StringBuilder()
- return with(numbers) {
- // the implicit receiver is "numbers" (StringBuilder)
- for (letter in '0'..'9') {
- append(letter)
- }
- toString()
+fun printString(str: String) {
+ str.run {
+ println(length)
}
-} \ No newline at end of file
+}
+
+fun <R> run(block: () -> R): R = TODO() \ No newline at end of file
diff --git a/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.return.kt b/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.return.kt
index b0072d19da9f..383cfda3b1e5 100644
--- a/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.return.kt
+++ b/plugins/kotlin/idea/resources/inlayProviders/kotlin.lambdas.hints/hints.lambda.return.kt
@@ -1,10 +1,4 @@
-fun numbers(): String {
- val numbers = StringBuilder()
- return with(numbers) {
- // "with" structure starts here
- for (letter in '0'..'9') {
- append(letter)
- }
- toString() // used as the return value
- }
+val lambda = { i: Int ->
+ i + 10
+ i + 20
} \ No newline at end of file
diff --git a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.parameter.kt b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.parameter.kt
index 110a932b044a..0bc0633d12cc 100644
--- a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.parameter.kt
+++ b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.parameter.kt
@@ -2,4 +2,13 @@ fun hintsDemo() {
listOf(1, 2, 3).filter { elem -> // parameter with inferred type
elem >= 3
}
-} \ No newline at end of file
+}
+
+class List<T> {
+ fun filter<R>(op: (T) -> Boolean) : List<R> = TODO()
+}
+
+fun <T> listOf(vararg elements: T): List<T> = TODO()
+
+class Int
+class Boolean \ No newline at end of file
diff --git a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.return.kt b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.return.kt
index 33dfc696980a..f8c387a27c5c 100644
--- a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.return.kt
+++ b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.function.return.kt
@@ -1 +1,5 @@
-fun square(arg: Int) = arg * arg \ No newline at end of file
+fun square(arg: Int) = arg * arg
+
+class Int {
+ operator fun times(other: Int): Int
+} \ No newline at end of file
diff --git a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.property.kt b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.property.kt
index 5f7632fd17ae..acc8ed74534c 100644
--- a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.property.kt
+++ b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.property.kt
@@ -1 +1,9 @@
-val a = listOf(1, 2, 3).sum() \ No newline at end of file
+val a = listOf(1, 2, 3).sum()
+
+class List<T> {
+ fun sum() : Int = TODO()
+}
+
+fun <T> listOf(vararg elements: T): List<T> = TODO()
+
+class Int \ No newline at end of file
diff --git a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.variable.kt b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.variable.kt
index 0a67c414264b..17a58bae4fff 100644
--- a/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.variable.kt
+++ b/plugins/kotlin/idea/resources/inlayProviders/kotlin.references.types.hints/hints.type.variable.kt
@@ -1,4 +1,9 @@
-fun test()
-{
+fun test() {
val list = listOf(81.0)
-} \ No newline at end of file
+}
+
+class List<T> {
+ fun sum() : Int = TODO()
+}
+
+fun <T> listOf(vararg elements: T): List<T> = TODO() \ No newline at end of file
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPairMatcher.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPairMatcher.kt
index c6975b87215b..95a5daa5674a 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPairMatcher.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPairMatcher.kt
@@ -2,15 +2,40 @@
package org.jetbrains.kotlin.idea
+import com.intellij.codeInsight.highlighting.PairedBraceAndAnglesMatcher
import com.intellij.codeInsight.hint.DeclarationRangeUtil
import com.intellij.lang.BracePair
import com.intellij.lang.PairedBraceMatcher
import com.intellij.psi.PsiFile
import com.intellij.psi.tree.IElementType
+import com.intellij.psi.tree.TokenSet
import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.psi.KtBlockExpression
import org.jetbrains.kotlin.psi.KtClassBody
+class KotlinPairedBraceMatcher :
+ PairedBraceAndAnglesMatcher(
+ KotlinPairMatcher(),
+ KotlinLanguage.INSTANCE,
+ KotlinFileType.INSTANCE,
+ TYPE_TOKENS_INSIDE_ANGLE_BRACKETS
+ ) {
+ override fun lt(): IElementType = KtTokens.LT
+ override fun gt(): IElementType = KtTokens.GT
+}
+
+private val TYPE_TOKENS_INSIDE_ANGLE_BRACKETS = TokenSet.orSet(
+ KtTokens.WHITE_SPACE_OR_COMMENT_BIT_SET,
+ TokenSet.create(
+ KtTokens.IDENTIFIER, KtTokens.COMMA,
+ KtTokens.AT,
+ KtTokens.RBRACKET, KtTokens.LBRACKET,
+ KtTokens.IN_KEYWORD, KtTokens.OUT_KEYWORD, KtTokens.MUL,
+ KtTokens.COLON, KtTokens.COLONCOLON, KtTokens.LPAR, KtTokens.RPAR,
+ KtTokens.CLASS_KEYWORD, KtTokens.DOT
+ )
+)
+
class KotlinPairMatcher : PairedBraceMatcher {
private val pairs = arrayOf(
BracePair(KtTokens.LPAR, KtTokens.RPAR, false),
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPluginMacros.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPluginMacros.kt
deleted file mode 100644
index 7461940878d6..000000000000
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/KotlinPluginMacros.kt
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-
-package org.jetbrains.kotlin.idea
-
-import com.intellij.openapi.application.PathMacroContributor
-import org.jetbrains.kotlin.config.KotlinCompilerVersion
-import org.jetbrains.kotlin.idea.compiler.configuration.KotlinJpsPluginSettings
-import org.jetbrains.kotlin.idea.compiler.configuration.KotlinPathsProvider
-import org.jetbrains.kotlin.idea.compiler.configuration.KotlinPluginLayout
-import org.jetbrains.kotlin.idea.util.application.isUnitTestMode
-
-/**
- * Some actions have to be performed before loading and opening any project.
- *
- * E.g. path variables have to be registered in advance as modules could rely on some path variables.
- */
-class KotlinPluginMacros : PathMacroContributor {
- override fun registerPathMacros(macros: MutableMap<String, String>, legacyMacros: MutableMap<String, String>) {
-
- }
-
- override fun forceRegisterPathMacros(macros: MutableMap<String, String>) {
- if (!isUnitTestMode()) {
- macros[KOTLIN_BUNDLED_PATH_VARIABLE] = KotlinPluginLayout.instance.kotlinc.canonicalPath
- }
- }
-
- companion object {
- const val KOTLIN_BUNDLED_PATH_VARIABLE = "KOTLIN_BUNDLED"
- }
-
-} \ No newline at end of file
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/codeInsight/hints/KotlinCallChainHintsProvider.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/codeInsight/hints/KotlinCallChainHintsProvider.kt
index f599f9bb0f93..1c9e4a75e41e 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/codeInsight/hints/KotlinCallChainHintsProvider.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/codeInsight/hints/KotlinCallChainHintsProvider.kt
@@ -33,8 +33,8 @@ class KotlinCallChainHintsProvider : AbstractCallChainHintsProvider<KtQualifiedE
override val previewText: String
get() = """
- fun main() {
- (1..100).filter { it % 2 == 0 }
+ fun doSomething(list: List<Int>) {
+ list.filter { it % 2 == 0 }
.map { it * 2 }
.takeIf { list ->
list.all { it % 2 == 0 }
@@ -42,6 +42,14 @@ class KotlinCallChainHintsProvider : AbstractCallChainHintsProvider<KtQualifiedE
?.map { "item: ${'$'}it" }
?.forEach { println(it) }
}
+
+ class List<T> {
+ fun filter(pred: (T) -> Boolean) : List<T> = TODO()
+ fun <R> map(op: (T) -> R) : List<R> = TODO()
+ fun all(op: (T) -> Boolean) : Boolean = TODO()
+ fun forEach(op: (T) -> Unit) : Unit = TODO()
+ }
+ fun <T> T.takeIf(predicate: (T) -> Boolean): T? = TODO()
""".trimIndent()
override val description: String
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/inspections/UnnecessaryOptInAnnotationInspection.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/inspections/UnnecessaryOptInAnnotationInspection.kt
index e462063b908a..8ca03bda8664 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/inspections/UnnecessaryOptInAnnotationInspection.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/inspections/UnnecessaryOptInAnnotationInspection.kt
@@ -5,33 +5,27 @@ import com.intellij.codeInspection.LocalQuickFix
import com.intellij.codeInspection.ProblemDescriptor
import com.intellij.codeInspection.ProblemHighlightType
import com.intellij.codeInspection.ProblemsHolder
-import com.intellij.openapi.module.Module
import com.intellij.openapi.project.Project
import com.intellij.psi.PsiElementVisitor
import com.intellij.psi.SmartPsiElementPointer
import com.intellij.psi.util.parentOfType
-import org.jetbrains.kotlin.config.KotlinFacetSettingsProvider
-import org.jetbrains.kotlin.config.LanguageVersion
-import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
-import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
-import org.jetbrains.kotlin.descriptors.PropertyDescriptor
+import org.jetbrains.kotlin.config.ApiVersion
+import org.jetbrains.kotlin.descriptors.*
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.caches.resolve.analyze
import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade
import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny
import org.jetbrains.kotlin.idea.core.getDirectlyOverriddenDeclarations
+import org.jetbrains.kotlin.idea.project.languageVersionSettings
import org.jetbrains.kotlin.idea.refactoring.fqName.fqName
import org.jetbrains.kotlin.idea.references.ReadWriteAccessChecker
import org.jetbrains.kotlin.idea.references.resolveMainReferenceToDescriptors
import org.jetbrains.kotlin.idea.resolve.ResolutionFacade
-import org.jetbrains.kotlin.idea.util.projectStructure.module
-import org.jetbrains.kotlin.lexer.KtSingleValueToken
import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.psi.*
import org.jetbrains.kotlin.psi.psiUtil.createSmartPointer
-import org.jetbrains.kotlin.psi.psiUtil.getParentOfTypes
import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType
import org.jetbrains.kotlin.renderer.render
import org.jetbrains.kotlin.resolve.BindingContext
@@ -41,10 +35,8 @@ import org.jetbrains.kotlin.resolve.constants.ArrayValue
import org.jetbrains.kotlin.resolve.constants.KClassValue
import org.jetbrains.kotlin.resolve.constants.StringValue
import org.jetbrains.kotlin.resolve.descriptorUtil.*
-import org.jetbrains.kotlin.resolve.references.ReferenceAccess
-import org.jetbrains.kotlin.types.expressions.OperatorConventions
+import org.jetbrains.kotlin.types.KotlinType
import org.jetbrains.kotlin.util.aliasImportMap
-import org.jetbrains.kotlin.utils.addToStdlib.constant
import org.jetbrains.kotlin.utils.addToStdlib.safeAs
/**
@@ -186,7 +178,7 @@ private class MarkerCollector(private val resolutionFacade: ResolutionFacade) {
if (declaration !is KtFunction && declaration !is KtProperty && declaration !is KtParameter) return
if (declaration.hasModifier(KtTokens.OVERRIDE_KEYWORD)) {
val descriptor = declaration.resolveToDescriptorIfAny(resolutionFacade)?.safeAs<CallableMemberDescriptor>() ?: return
- descriptor.getDirectlyOverriddenDeclarations().forEach { it.collectMarkers(declaration.module) }
+ descriptor.getDirectlyOverriddenDeclarations().forEach { it.collectMarkers(declaration.languageVersionSettings.apiVersion) }
}
}
@@ -210,24 +202,46 @@ private class MarkerCollector(private val resolutionFacade: ResolutionFacade) {
.resolveMainReferenceToDescriptors()
.flatMap { setOf(it, it.getImportableDescriptor()) }
- val module = expression.module
+ val moduleApiVersion = expression.languageVersionSettings.apiVersion
+
for (descriptor in descriptorList) {
- descriptor.collectMarkers(module)
+ descriptor.collectMarkers(moduleApiVersion)
// A special case: a property has no experimental markers but its setter is experimental.
// We need to additionally collect markers from the setter if it is invoked in the expression.
if (descriptor is PropertyDescriptor) {
- val setter = descriptor.setter ?: continue
- if (expression.isSetterCall()) setter.collectMarkers(module)
+ val setter = descriptor.setter
+ if (setter != null && expression.isSetterCall()) setter.collectMarkers(moduleApiVersion)
+ }
+
+ // The caller implicitly uses argument types and return types of a declaration,
+ // so we need to check whether these types have experimental markers
+ // regardless of the `@OptIn` annotation on the declaration itself.
+ if (descriptor is CallableDescriptor) {
+ descriptor.valueParameters.forEach { it.type.collectMarkers(moduleApiVersion)}
+ descriptor.returnType?.collectMarkers(moduleApiVersion)
}
}
}
/**
+ * Collect markers from a declaration descriptor corresponding to a Kotlin type.
+ *
+ * @receiver the type to collect markers
+ * @param moduleApiVersion the API version of the current module to check `@WasExperimental` annotations
+ */
+ private fun KotlinType.collectMarkers(moduleApiVersion: ApiVersion) {
+ arguments.forEach { it.type.collectMarkers(moduleApiVersion) }
+ val descriptor = this.constructor.declarationDescriptor ?: return
+ descriptor.collectMarkers(moduleApiVersion)
+ }
+
+ /**
* Actually collect markers for a resolved descriptor and add them to [foundMarkers].
*
* @receiver the descriptor to collect markers
+ * @param moduleApiVersion the API version of the current module to check `@WasExperimental` annotations
*/
- private fun DeclarationDescriptor.collectMarkers(currentModule: Module?) {
+ private fun DeclarationDescriptor.collectMarkers(moduleApiVersion: ApiVersion) {
for (ann in annotations) {
val annotationFqName = ann.fqName ?: continue
val annotationClass = ann.annotationClass ?: continue
@@ -238,8 +252,9 @@ private class MarkerCollector(private val resolutionFacade: ResolutionFacade) {
foundMarkers += annotationFqName
}
- val wasExperimental = annotations.findAnnotation(OptInNames.WAS_EXPERIMENTAL_FQ_NAME) ?: continue
+ val wasExperimental = annotations.findAnnotation(OptInNames.WAS_EXPERIMENTAL_FQ_NAME) ?: continue
val sinceKotlin = annotations.findAnnotation(SINCE_KOTLIN_FQ_NAME) ?: continue
+
// If there are both `@SinceKotlin` and `@WasExperimental` annotations,
// and Kotlin API version of the module is less than the version specified by `@SinceKotlin`,
// then the `@OptIn` for `@WasExperimental` marker is necessary and should be added
@@ -257,23 +272,12 @@ private class MarkerCollector(private val resolutionFacade: ResolutionFacade) {
// annotation would not be necessary. At the same time, when the code is compiled with
// `apiVersion = 1.5`, the non-experimental declaration of `foo` will be hidden
// from the resolver, so `@OptIn` is necessary for the code to compile.
-
val sinceKotlinApiVersion = sinceKotlin.allValueArguments[VERSION_ARGUMENT]
?.safeAs<StringValue>()?.value?.let {
- LanguageVersion.fromVersionString(it)
+ ApiVersion.parse(it)
}
- val moduleApiVersion = currentModule?.let {
- KotlinFacetSettingsProvider.getInstance(it.project)?.getSettings(it)?.apiLevel
- }
-
- // If the Kotlin API version of the current module could not be found,
- // add the marker, as it is better to skip a redundant `@OptIn` than to remove
- // a necessary annotation. If the module API version is known, compare it
- // to the API version specified via the `@SinceKotlin` annotation.
- // Add the marker only if the module API version is less than the version
- // required by the declaration.
- if (moduleApiVersion == null || (sinceKotlinApiVersion != null && moduleApiVersion < sinceKotlinApiVersion)) {
+ if (sinceKotlinApiVersion != null && moduleApiVersion < sinceKotlinApiVersion) {
wasExperimental.allValueArguments[OptInNames.WAS_EXPERIMENTAL_ANNOTATION_CLASS]?.safeAs<ArrayValue>()?.value
?.mapNotNull { it.safeAs<KClassValue>()?.getArgumentType(module)?.fqName }
?.forEach { foundMarkers.add(it) }
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/jps/SetupKotlinJpsPluginBeforeCompileTask.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/jps/SetupKotlinJpsPluginBeforeCompileTask.kt
index ffeff3b3df7f..aca88236c022 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/jps/SetupKotlinJpsPluginBeforeCompileTask.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/jps/SetupKotlinJpsPluginBeforeCompileTask.kt
@@ -1,7 +1,6 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.kotlin.idea.jps
-import com.intellij.openapi.application.PathMacros
import com.intellij.openapi.compiler.CompileContext
import com.intellij.openapi.compiler.CompileTask
import com.intellij.openapi.compiler.CompilerMessageCategory
@@ -10,7 +9,6 @@ import com.intellij.project.stateStore
import org.jetbrains.annotations.Nls
import org.jetbrains.kotlin.config.SettingConstants
import org.jetbrains.kotlin.idea.KotlinBundle
-import org.jetbrains.kotlin.idea.KotlinPluginMacros
import org.jetbrains.kotlin.idea.KotlinVersionVerbose
import org.jetbrains.kotlin.idea.compiler.configuration.KotlinJpsPluginSettings
import org.jetbrains.kotlin.idea.compiler.configuration.KotlinPathsProvider
@@ -66,8 +64,6 @@ class SetupKotlinJpsPluginBeforeCompileTask : CompileTask {
return false
}
- PathMacros.getInstance().setMacro(KotlinPluginMacros.KOTLIN_BUNDLED_PATH_VARIABLE, unpackedKotlinc.canonicalPath)
-
return true
}
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/ApplicationWideKotlinBundledPathMacroCleaner.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/ApplicationWideKotlinBundledPathMacroCleaner.kt
new file mode 100644
index 000000000000..8c924f0a3aa9
--- /dev/null
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/ApplicationWideKotlinBundledPathMacroCleaner.kt
@@ -0,0 +1,24 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package org.jetbrains.kotlin.idea.macros
+
+import com.intellij.ide.SaveAndSyncHandler
+import com.intellij.openapi.application.PathMacros
+
+/**
+ * Starting from KTIJ-11633 Kotlin JPS plugin is downloaded by IDEA depending on what current version of Kotlin compiler in project
+ * settings. Thus, we migrated KOTLIN_BUNDLED from application-wide [PathMacros]/[com.intellij.openapi.application.PathMacroContributor] EP
+ * to project-wide EP [com.intellij.openapi.components.impl.ProjectWidePathMacroContributor].
+ *
+ * Application-wide path macros are visible in the "Path Variables" UI. Since we don't want to confuse users with application-wide
+ * KOTLIN_BUNDLED stale value in the UI, we clean the application-wide value in this class
+ */
+class ApplicationWideKotlinBundledPathMacroCleaner {
+ init {
+ if (PathMacros.getInstance().getValue(KOTLIN_BUNDLED) != null) {
+ PathMacros.getInstance().setMacro(KOTLIN_BUNDLED, null)
+ // Flush settings otherwise they may stay in config/idea/options/path.macros.xml and then leak into the JPS
+ // (because JPS "reimplements" Path macro subsystem and, basically, just reads the `path.macros.xml` file again on its own)
+ SaveAndSyncHandler.getInstance().scheduleSave(SaveAndSyncHandler.SaveTask(null, true))
+ }
+ }
+}
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/KotlinBundledPathMacroContributor.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/KotlinBundledPathMacroContributor.kt
new file mode 100644
index 000000000000..cc00987681a3
--- /dev/null
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/macros/KotlinBundledPathMacroContributor.kt
@@ -0,0 +1,44 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package org.jetbrains.kotlin.idea.macros
+
+import com.intellij.ide.highlighter.ProjectFileType
+import com.intellij.openapi.components.impl.ProjectWidePathMacroContributor
+import com.intellij.openapi.util.JDOMUtil
+import com.intellij.util.io.exists
+import com.intellij.util.xmlb.XmlSerializer
+import org.jetbrains.kotlin.config.JpsPluginSettings
+import org.jetbrains.kotlin.config.SettingConstants
+import org.jetbrains.kotlin.idea.compiler.configuration.KotlinJpsPluginSettings
+import org.jetbrains.kotlin.idea.compiler.configuration.KotlinPathsProvider
+import org.jetbrains.kotlin.idea.compiler.configuration.KotlinPluginLayout
+import java.nio.file.Paths
+import kotlin.io.path.extension
+
+const val KOTLIN_BUNDLED = "KOTLIN_BUNDLED"
+
+class KotlinBundledPathMacroContributor : ProjectWidePathMacroContributor {
+ override fun getProjectPathMacros(projectFilePath: String): Map<String, String> {
+ // It's not possible to use KotlinJpsPluginSettings.getInstance(project) because the project isn't yet initialized
+ val path = Paths.get(projectFilePath)
+ .let { iprOrMisc ->
+ when (iprOrMisc.extension) {
+ ProjectFileType.DEFAULT_EXTENSION -> iprOrMisc
+ "xml" -> iprOrMisc.resolveSibling(SettingConstants.KOTLIN_COMPILER_SETTINGS_FILE)
+ else -> error("projectFilePath should be either misc.xml or *.ipr file")
+ }
+ }
+ .takeIf { it.exists() }
+ ?.let { JDOMUtil.load(it) }
+ ?.children
+ ?.singleOrNull { it.getAttributeValue("name") == KotlinJpsPluginSettings::class.java.simpleName }
+ ?.let { xmlElement ->
+ JpsPluginSettings().apply {
+ XmlSerializer.deserializeInto(this, xmlElement)
+ }
+ }
+ ?.version
+ ?.let { KotlinPathsProvider.getKotlinPaths(it).homePath.canonicalPath }
+ ?: KotlinPluginLayout.instance.kotlinc.canonicalPath
+ return mapOf(KOTLIN_BUNDLED to path)
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/projectWizard/WizardStatsService.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/projectWizard/WizardStatsService.kt
index dabee1d0a5ea..b303ea10b60b 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/projectWizard/WizardStatsService.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/projectWizard/WizardStatsService.kt
@@ -23,7 +23,7 @@ class WizardStatsService : CounterUsagesCollector() {
companion object {
// Collector ID
- private val GROUP = EventLogGroup("kotlin.ide.new.project", 9)
+ private val GROUP = EventLogGroup("kotlin.ide.new.project", 10)
// Whitelisted values for the events fields
private val allowedProjectTemplates = listOf( // Modules
@@ -54,6 +54,7 @@ class WizardStatsService : CounterUsagesCollector() {
"none",
// AppCode KMM
"multiplatformMobileApplicationUsingAppleGradlePlugin",
+ "multiplatformMobileApplicationUsingHybridProject",
)
private val allowedModuleTemplates = listOf(
"composeAndroid",
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/kotlinRefactoringUtil.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/kotlinRefactoringUtil.kt
index 0b52072c65f7..60288396a3f2 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/kotlinRefactoringUtil.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/kotlinRefactoringUtil.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.kotlin.idea.refactoring
@@ -1013,7 +1013,6 @@ fun getSuperMethods(declaration: KtDeclaration, ignore: Collection<PsiElement>?)
fun checkSuperMethodsWithPopup(
declaration: KtNamedDeclaration,
deepestSuperMethods: List<PsiElement>,
- actionStringPrefixKey: String,
editor: Editor,
action: (List<PsiElement>) -> Unit
) {
@@ -1045,10 +1044,10 @@ fun checkSuperMethodsWithPopup(
else -> kindIndex
}
- val renameBase = KotlinBundle.message("$actionStringPrefixKey.base.0", superKindIndex + (if (deepestSuperMethods.size > 1) 10 else 0))
- val renameCurrent = KotlinBundle.message("$actionStringPrefixKey.only.current.0", kindIndex)
+ val renameBase = KotlinBundle.message("rename.base.0", superKindIndex + (if (deepestSuperMethods.size > 1) 10 else 0))
+ val renameCurrent = KotlinBundle.message("rename.only.current.0", kindIndex)
val title = KotlinBundle.message(
- "$actionStringPrefixKey.declaration.title.0.implements.1.2.of.3",
+ "rename.declaration.title.0.implements.1.2.of.3",
declaration.name ?: "",
if (isAbstract) 1 else 2,
ElementDescriptionUtil.getElementDescription(superMethod, UsageViewTypeLocation.INSTANCE),
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt
index a01d3ac52db2..5cbdb5356d67 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.kotlin.idea.refactoring.rename
@@ -152,7 +152,7 @@ class RenameKotlinFunctionProcessor : RenameKotlinPsiProcessor() {
}
else -> {
val declaration = element.unwrapped as? KtNamedFunction ?: return
- checkSuperMethodsWithPopup(declaration, deepestSuperMethods.toList(), "rename", editor) {
+ checkSuperMethodsWithPopup(declaration, deepestSuperMethods.toList(), editor) {
preprocessAndPass(if (it.size > 1) FunctionWithSupersWrapper(declaration, it) else wrappedMethod ?: element)
}
}
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPropertyProcessor.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPropertyProcessor.kt
index a53aa30cd230..8b9df319b628 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPropertyProcessor.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPropertyProcessor.kt
@@ -1,4 +1,4 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.kotlin.idea.refactoring.rename
@@ -281,7 +281,7 @@ class RenameKotlinPropertyProcessor : RenameKotlinPsiProcessor() {
}
val superPsiMethods = listOfNotNull(deepestSuperDeclaration.getRepresentativeLightMethod())
- checkSuperMethodsWithPopup(callableDeclaration, superPsiMethods, "rename", editor) {
+ checkSuperMethodsWithPopup(callableDeclaration, superPsiMethods, editor) {
preprocessAndPass(if (it.size > 1) deepestSuperDeclaration else callableDeclaration)
}
}
diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/script/configuration/MultipleScriptDefinitionsChecker.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/script/configuration/MultipleScriptDefinitionsChecker.kt
index 3e39e9f6c7b3..2f1c9262d00d 100644
--- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/script/configuration/MultipleScriptDefinitionsChecker.kt
+++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/script/configuration/MultipleScriptDefinitionsChecker.kt
@@ -58,7 +58,8 @@ class MultipleScriptDefinitionsChecker : EditorNotificationProvider {
private fun areDefinitionsForGradleKts(allApplicableDefinitions: List<ScriptDefinition>): Boolean {
return allApplicableDefinitions.all {
val pattern = it.asLegacyOrNull<KotlinScriptDefinitionFromAnnotatedTemplate>()?.scriptFilePattern?.pattern
- pattern == ".*\\.gradle\\.kts" || pattern == "^(settings|.+\\.settings)\\.gradle\\.kts\$" || pattern == ".+\\.init\\.gradle\\.kts"
+ pattern?.endsWith("\\.gradle\\.kts") == true ||
+ pattern?.endsWith("\\.gradle\\.kts$") == true
}
}
diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/KotlinBraceMatcherTest.kt b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/KotlinBraceMatcherTest.kt
new file mode 100644
index 000000000000..f90214fc9f64
--- /dev/null
+++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/KotlinBraceMatcherTest.kt
@@ -0,0 +1,28 @@
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
+package org.jetbrains.kotlin.idea.editor
+
+import com.intellij.codeInsight.highlighting.BraceMatchingUtil
+import org.junit.Assert
+import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase
+import org.junit.internal.runners.JUnit38ClassRunner
+import org.junit.runner.RunWith
+
+@RunWith(JUnit38ClassRunner::class)
+class KotlinBraceMatcherTest : KotlinLightCodeInsightFixtureTestCase() {
+ fun testGenericsWithInOutModifiers() {
+ doBraceMatchingTest("class A<caret><in T, out F, *>")
+ }
+
+ fun testGenericsWithComplexParameters() {
+ doBraceMatchingTest("class A<caret><T : List<@Ann(B::class) Int>>")
+ }
+
+ private fun doBraceMatchingTest(text: String) {
+ myFixture.configureByText("a.kt", text.trimMargin())
+
+ val editor = myFixture.editor
+ val iterator = editor.highlighter.createIterator(editor.caretModel.offset)
+ val matched = BraceMatchingUtil.matchBrace(editor.document.charsSequence, myFixture.file.fileType, iterator, true)
+ Assert.assertTrue(matched)
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/TypedHandlerTest.kt b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/TypedHandlerTest.kt
index 2a11c9d93e9c..7e391c277af3 100644
--- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/TypedHandlerTest.kt
+++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/editor/TypedHandlerTest.kt
@@ -929,6 +929,23 @@ class TypedHandlerTest : KotlinLightCodeInsightFixtureTestCase() {
doTypeTest('\'', "val c = <caret>", "val c = ''")
}
+ fun testDontInsertExtraRBraceWithGTSymbolInTheMiddleOnTyping() {
+ doTypeTest(
+ ")",
+ "fun foo() { if (1 > 2<caret>) {} }",
+ "fun foo() { if (1 > 2)<caret> {} }",
+ )
+ }
+
+ fun testDontInsertExtraRBraceWithLTSymbolInTheMiddleOnTyping() {
+ doTypeTest(
+ ")",
+ "fun foo() { if (1 < 2<caret>) {} }",
+ "fun foo() { if (1 < 2)<caret> {} }",
+ )
+ }
+
+
private val enableSmartEnter: (CodeStyleSettings) -> Unit
get() = {
val indentOptions = it.getLanguageIndentOptions(KotlinLanguage.INSTANCE)
diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java
index 6f5f79e44d26..669785afe32f 100644
--- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java
+++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java
@@ -15063,6 +15063,31 @@ public abstract class LocalInspectionTestGenerated extends AbstractLocalInspecti
runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFqAnnotation.kt");
}
+ @TestMetadata("necessaryFunctionLambdaArgument.kt")
+ public void testNecessaryFunctionLambdaArgument() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument.kt");
+ }
+
+ @TestMetadata("necessaryFunctionLambdaArgument2.kt")
+ public void testNecessaryFunctionLambdaArgument2() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument2.kt");
+ }
+
+ @TestMetadata("necessaryFunctionOptionalArgument.kt")
+ public void testNecessaryFunctionOptionalArgument() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionOptionalArgument.kt");
+ }
+
+ @TestMetadata("necessaryFunctionReturnValue.kt")
+ public void testNecessaryFunctionReturnValue() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue.kt");
+ }
+
+ @TestMetadata("necessaryFunctionReturnValue2.kt")
+ public void testNecessaryFunctionReturnValue2() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue2.kt");
+ }
+
@TestMetadata("necessaryImportAlias.kt")
public void testNecessaryImportAlias() throws Exception {
runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryImportAlias.kt");
@@ -15178,6 +15203,21 @@ public abstract class LocalInspectionTestGenerated extends AbstractLocalInspecti
runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueParameter.kt");
}
+ @TestMetadata("necessaryValueUsage1.kt")
+ public void testNecessaryValueUsage1() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage1.kt");
+ }
+
+ @TestMetadata("necessaryValueUsage2.kt")
+ public void testNecessaryValueUsage2() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage2.kt");
+ }
+
+ @TestMetadata("necessaryValueUsage3.kt")
+ public void testNecessaryValueUsage3() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage3.kt");
+ }
+
@TestMetadata("necessaryWasExperimental.kt")
public void testNecessaryWasExperimental() throws Exception {
runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryWasExperimental.kt");
@@ -15223,6 +15263,11 @@ public abstract class LocalInspectionTestGenerated extends AbstractLocalInspecti
runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantClassTwoMarkersBothUseless.kt");
}
+ @TestMetadata("redundantFunctionBody.kt")
+ public void testRedundantFunctionBody() throws Exception {
+ runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt");
+ }
+
@TestMetadata("redundantImportAlias.kt")
public void testRedundantImportAlias() throws Exception {
runTest("testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantImportAlias.kt");
diff --git a/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/bottom-mpp/build.gradle b/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/bottom-mpp/build.gradle
index ba1e70b0c2ef..c6a6802586bd 100644
--- a/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/bottom-mpp/build.gradle
+++ b/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/bottom-mpp/build.gradle
@@ -30,7 +30,12 @@ kotlin {
// Creating static library with a custom name.
staticLib('customNameForiosSimLib') {
outputDirectory = file("fooCustomNameForiosSimLib") // outputDir is a `val` property.
- linkTask.destinationDir = file("fooCustomNameForiosSimLib")
+ if (linkTask.metaClass.hasProperty(linkTask, "destinationDirectory")) {
+ linkTask.destinationDirectory = project.getObjects().directoryProperty().fileValue(file("fooCustomNameForiosSimLib"))
+ }
+ else {
+ linkTask.destinationDir = file("fooCustomNameForiosSimLib")
+ }
}
}
}
@@ -39,17 +44,18 @@ kotlin {
targets.all {
compilations.all {
kotlinOptions {
- freeCompilerArgs += ["-Xprogressive", "-XXLanguage:+NewInference", "-XXLanguage:+SamConversionForKotlinFunctions", "-Xuse-experimental=kotlin.ExperimentalMultiplatform", "-Xskip-prerelease-check"]
+ freeCompilerArgs +=
+ ["-Xprogressive", "-XXLanguage:+NewInference", "-XXLanguage:+SamConversionForKotlinFunctions", "-Xuse-experimental=kotlin.ExperimentalMultiplatform", "-Xskip-prerelease-check"]
}
}
}
sourceSets {
commonMain {
- dependencies { }
+ dependencies {}
}
commonTest {
- dependencies { }
+ dependencies {}
}
// creating a diamond
@@ -77,26 +83,26 @@ kotlin {
// setting up the targets source sets
jvm16Main {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jvmJavaJvm16Main
}
jvm16Test {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jvmJavaJvm16Test
}
jvmWithJavaMain {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jvmJavaJvm16Main
dependsOn jvmWithJavaiOSMain
}
jvmWithJavaTest {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jvmJavaJvm16Test
@@ -104,13 +110,13 @@ kotlin {
}
iosSimLibMain {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jvmWithJavaiOSMain
}
iosSimLibTest {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jvmWithJavaiOSTest
diff --git a/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/top-mpp/build.gradle b/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/top-mpp/build.gradle
index bcb324c8e013..9bdda1acc72d 100644
--- a/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/top-mpp/build.gradle
+++ b/plugins/kotlin/idea/tests/testData/gradle/hmppImportAndHighlighting/multiModulesHmpp/top-mpp/build.gradle
@@ -6,12 +6,20 @@ version publishing_version
buildscript {
repositories {
- {{kotlin_plugin_repositories}}
+ {
+ {
+ kotlin_plugin_repositories
+ }
+ }
}
}
repositories {
- {{kotlin_plugin_repositories}}
+ {
+ {
+ kotlin_plugin_repositories
+ }
+ }
}
def complexLibAttribute = Attribute.of('org.jetbrains.qa.complexlib', String)
@@ -35,7 +43,12 @@ kotlin {
// Creating static library with a custom name.
staticLib('customNameForLinuxLib') {
outputDirectory = file("customNameForLinuxLib") // outputDir is a `val` property.
- linkTask.destinationDir = file("customNameForLinuxLib")
+ if (linkTask.metaClass.hasProperty(linkTask, "destinationDirectory")) {
+ linkTask.destinationDirectory = project.getObjects().directoryProperty().fileValue(file("customNameForLinuxLib"))
+ }
+ else {
+ linkTask.destinationDir = file("customNameForLinuxLib")
+ }
}
}
}
@@ -46,7 +59,12 @@ kotlin {
// Creating static library with a custom name.
staticLib('customNameForMacosLib') {
outputDirectory = file("customNameForMacosLib") // outputDir is a `val` property.
- linkTask.destinationDir = file("customNameForMacosLib")
+ if (linkTask.metaClass.hasProperty(linkTask, "destinationDirectory")) {
+ linkTask.destinationDirectory = project.getObjects().directoryProperty().fileValue(file("customNameForMacosLib"))
+ }
+ else {
+ linkTask.destinationDir = file("customNameForMacosLib")
+ }
}
}
}
@@ -56,7 +74,12 @@ kotlin {
// KT-29395 fix
framework {
outputDirectory = file("fooDummyiOS") // outputDir is a `val` property.
- linkTask.destinationDir = file("fooDummyiOS")
+ if (linkTask.metaClass.hasProperty(linkTask, "destinationDirectory")) {
+ linkTask.destinationDirectory = project.getObjects().directoryProperty().fileValue(file("fooDummyiOS"))
+ }
+ else {
+ linkTask.destinationDir = file("fooDummyiOS")
+ }
}
}
}
@@ -65,7 +88,8 @@ kotlin {
targets.all {
compilations.all {
kotlinOptions {
- freeCompilerArgs += ["-Xprogressive", "-XXLanguage:+NewInference", "-XXLanguage:+SamConversionForKotlinFunctions", "-Xuse-experimental=kotlin.ExperimentalMultiplatform"]
+ freeCompilerArgs +=
+ ["-Xprogressive", "-XXLanguage:+NewInference", "-XXLanguage:+SamConversionForKotlinFunctions", "-Xuse-experimental=kotlin.ExperimentalMultiplatform"]
}
}
}
@@ -73,10 +97,10 @@ kotlin {
sourceSets {
commonMain {
- dependencies { }
+ dependencies {}
}
commonTest {
- dependencies { }
+ dependencies {}
}
// intermediate between commonMain and jsJvm18Main
@@ -97,7 +121,7 @@ kotlin {
jsJvm18iOSTest {
dependsOn commonTest
- dependencies { }
+ dependencies {}
}
jsLinuxMain {
dependsOn commonMain
@@ -120,7 +144,7 @@ kotlin {
dependsOn jsJvm18iOSMain
}
jvm18Test {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jsJvm18iOSTest
@@ -145,32 +169,32 @@ kotlin {
dependsOn jsLinuxTest
}
linuxMain {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jsLinuxMain
}
linuxTest {
- dependencies { }
+ dependencies {}
// connecting to the diamond
dependsOn jsLinuxTest
}
macosMain {
- dependencies { }
+ dependencies {}
}
macosTest {
- dependencies { }
+ dependencies {}
}
dummyiOSMain {
// connecting to the diamond
dependsOn jsJvm18iOSMain
- dependencies { }
+ dependencies {}
}
dummyiOSTest {
dependsOn jsJvm18iOSTest
- dependencies { }
+ dependencies {}
}
}
}
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument.kt
new file mode 100644
index 000000000000..905a84898ea5
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument.kt
@@ -0,0 +1,15 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo
+
+@OptIn(Marker::class)
+fun makeFoo(action: (Foo) -> Unit): Int = 0
+
+@OptIn(<caret>Marker::class)
+val foo = makeFoo {}
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument2.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument2.kt
new file mode 100644
index 000000000000..aff0c12c04d3
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionLambdaArgument2.kt
@@ -0,0 +1,15 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo
+
+@OptIn(Marker::class)
+fun makeFoo(action: (Int) -> List<Foo>): Int = 0
+
+@OptIn(<caret>Marker::class)
+val foo = makeFoo { emptyList() }
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionOptionalArgument.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionOptionalArgument.kt
new file mode 100644
index 000000000000..1487d8994838
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionOptionalArgument.kt
@@ -0,0 +1,15 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo
+
+@OptIn(Marker::class)
+fun makeFoo(x: Foo? = null): Int = 0
+
+@OptIn(<caret>Marker::class)
+val foo = makeFoo()
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue.kt
new file mode 100644
index 000000000000..f8e36c04a30c
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue.kt
@@ -0,0 +1,15 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo
+
+@OptIn(Marker::class)
+fun makeFoo() = Foo()
+
+@OptIn(<caret>Marker::class)
+val foo = makeFoo()
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue2.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue2.kt
new file mode 100644
index 000000000000..5a568891e8a1
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryFunctionReturnValue2.kt
@@ -0,0 +1,15 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo
+
+@OptIn(Marker::class)
+fun makeFoo(): Foo? = null
+
+@OptIn(<caret>Marker::class)
+val foo = makeFoo()
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage1.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage1.kt
new file mode 100644
index 000000000000..30894114be42
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage1.kt
@@ -0,0 +1,17 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo {
+ fun f() {}
+}
+
+@OptIn(Marker::class)
+val foo = Foo()
+
+@OptIn(<caret>Marker::class)
+fun bar() = foo.f()
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage2.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage2.kt
new file mode 100644
index 000000000000..626798c0fa8a
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage2.kt
@@ -0,0 +1,19 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo {
+ fun f() {}
+}
+
+@OptIn(Marker::class)
+val foo = Foo()
+
+@OptIn(<caret>Marker::class)
+fun bar() {
+ val x = foo
+}
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage3.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage3.kt
new file mode 100644
index 000000000000..46ac9453f1bf
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/necessaryValueUsage3.kt
@@ -0,0 +1,17 @@
+// PROBLEM: none
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+@Marker
+class Foo
+
+@OptIn(Marker::class)
+var foo: Foo? = Foo()
+
+@OptIn(<caret>Marker::class)
+fun f() {
+ foo = null
+}
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt
new file mode 100644
index 000000000000..3ca4679e519a
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt
@@ -0,0 +1,16 @@
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+open class FooBase
+
+@Marker
+class Foo : FooBase()
+
+@OptIn(Marker::class)
+fun makeFoo(x: FooBase? = null): FooBase = Foo()
+
+@OptIn(<caret>Marker::class)
+val foo = makeFoo()
diff --git a/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt.after b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt.after
new file mode 100644
index 000000000000..77076860f8b5
--- /dev/null
+++ b/plugins/kotlin/idea/tests/testData/inspectionsLocal/unnecessaryOptInAnnotation/redundantFunctionBody.kt.after
@@ -0,0 +1,15 @@
+// WITH_STDLIB
+// COMPILER_ARGUMENTS: -opt-in=kotlin.RequiresOptIn
+
+@RequiresOptIn
+annotation class Marker
+
+open class FooBase
+
+@Marker
+class Foo : FooBase()
+
+@OptIn(Marker::class)
+fun makeFoo(x: FooBase? = null): FooBase = Foo()
+
+val foo = makeFoo()
diff --git a/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/stackFrame/InlineStackTraceCalculator.kt b/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/stackFrame/InlineStackTraceCalculator.kt
index 4424bff65c41..4bb1b2214bd9 100644
--- a/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/stackFrame/InlineStackTraceCalculator.kt
+++ b/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/stackFrame/InlineStackTraceCalculator.kt
@@ -8,36 +8,33 @@ import com.sun.jdi.Location
import com.sun.jdi.Method
import org.jetbrains.kotlin.idea.debugger.*
import org.jetbrains.kotlin.idea.debugger.DebuggerUtils.getBorders
-import org.jetbrains.kotlin.load.java.JvmAbi
+import org.jetbrains.kotlin.load.java.JvmAbi.LOCAL_VARIABLE_NAME_PREFIX_INLINE_ARGUMENT as INLINE_ARGUMENT_PREFIX
+import org.jetbrains.kotlin.load.java.JvmAbi.LOCAL_VARIABLE_NAME_PREFIX_INLINE_FUNCTION as INLINE_FUNCTION_PREFIX
object InlineStackTraceCalculator {
fun calculateInlineStackTrace(frameProxy: StackFrameProxyImpl): List<XStackFrame> {
val location = frameProxy.safeLocation() ?: return emptyList()
val method = location.safeMethod() ?: return emptyList()
- val inlineStackFramesInfo = method.getInlineStackFramesInfo(location)
- if (inlineStackFramesInfo.isEmpty()) {
- return emptyList()
- }
+ val framesInfo = method.getInlineStackFramesInfo(location)
+ if (framesInfo.isEmpty()) return emptyList()
val allLocations = method.safeAllLineLocations()
- if (allLocations.isEmpty()) {
- return emptyList()
- }
+ if (allLocations.isEmpty()) return emptyList()
- inlineStackFramesInfo.fetchDepths()
- val newFrameProxyLocation = inlineStackFramesInfo.fetchLocationsAndGetNewFrameProxyLocation(allLocations, location)
- return createInlineStackFrames(inlineStackFramesInfo, frameProxy, newFrameProxyLocation)
+ fetchDepths(framesInfo)
+ val newFrameProxyLocation = fetchLocationsAndGetNewFrameProxyLocation(framesInfo, allLocations, location)
+ return createInlineStackFrames(framesInfo, frameProxy, newFrameProxyLocation)
}
private fun createInlineStackFrames(
- inlineStackFramesInfo: List<InlineStackFrameInfo>,
+ framesInfo: List<InlineStackFrameInfo>,
frameProxy: StackFrameProxyImpl,
frameProxyLocation: Location
): MutableList<KotlinStackFrame> {
val stackFrames = mutableListOf<KotlinStackFrame>()
var variableHolder: InlineStackFrameVariableHolder? =
InlineStackFrameVariableHolder.fromStackFrame(frameProxy)
- for (info in inlineStackFramesInfo.asReversed()) {
+ for (info in framesInfo.asReversed()) {
stackFrames.add(
info.toInlineStackFrame(
frameProxy,
@@ -56,25 +53,25 @@ object InlineStackTraceCalculator {
}
private fun Method.getInlineStackFramesInfo(location: Location) =
- getInlineFunctionInfos()
+ getInlineFunctionsInfo()
.filter { it.contains(location) }
.sortedBy { it.borders.start }
.map { InlineStackFrameInfo(it, location, 0) }
- private fun Method.getInlineFunctionInfos(): List<AbstractInlineFunctionInfo> {
+ private fun Method.getInlineFunctionsInfo(): List<AbstractInlineFunctionInfo> {
val localVariables = safeVariables() ?: return emptyList()
- val inlineFunctionInfos = mutableListOf<AbstractInlineFunctionInfo>()
+ val functionsInfo = mutableListOf<AbstractInlineFunctionInfo>()
for (variable in localVariables) {
val borders = variable.getBorders() ?: continue
val variableName = variable.name()
- if (variableName.startsWith(JvmAbi.LOCAL_VARIABLE_NAME_PREFIX_INLINE_FUNCTION)) {
- inlineFunctionInfos.add(InlineFunctionInfo(variableName, borders))
- } else if (variableName.startsWith(JvmAbi.LOCAL_VARIABLE_NAME_PREFIX_INLINE_ARGUMENT)) {
- inlineFunctionInfos.add(InlineLambdaInfo(variableName, borders))
+ if (variableName.startsWith(INLINE_FUNCTION_PREFIX)) {
+ functionsInfo.add(InlineFunctionInfo(variableName, borders))
+ } else if (variableName.startsWith(INLINE_ARGUMENT_PREFIX)) {
+ functionsInfo.add(InlineLambdaInfo(variableName, borders))
}
}
- return inlineFunctionInfos
+ return functionsInfo
}
// Consider the following example:
@@ -91,67 +88,75 @@ object InlineStackTraceCalculator {
// $i$a$-bar-MainKt$foo$1$iv -> 1
// $i$a$-foo-MainKt$main$1 -> 0
// baz -> 1
- private fun List<InlineStackFrameInfo>.fetchDepths() {
+ private fun fetchDepths(framesInfo: List<InlineStackFrameInfo>) {
var currentDepth = 0
val depths = mutableMapOf<String, Int>()
- for (inlineStackFrameInfo in this) {
- val inlineFunctionInfo = inlineStackFrameInfo.inlineFunctionInfo
+ for (frame in framesInfo) {
+ val info = frame.inlineFunctionInfo
val calculatedDepth =
- if (inlineFunctionInfo is InlineLambdaInfo) {
- inlineFunctionInfo.getDeclarationFunctionName()
+ if (info is InlineLambdaInfo) {
+ info.getDeclarationFunctionName()
?.let { depths[it] }
?: 0 // The lambda was declared in the top frame
} else {
currentDepth + 1
}
- depths[inlineFunctionInfo.name] = calculatedDepth
- inlineStackFrameInfo.depth = calculatedDepth
+ depths[info.name] = calculatedDepth
+ frame.depth = calculatedDepth
currentDepth = calculatedDepth
}
}
- private fun List<InlineStackFrameInfo>.fetchLocationsAndGetNewFrameProxyLocation(
+ private fun fetchLocationsAndGetNewFrameProxyLocation(
+ framesInfo: List<InlineStackFrameInfo>,
allLocations: List<Location>,
originalLocation: Location
): Location {
- val iterator = allLocations.iterator()
- val newFrameProxyLocation =
- iterator.getInlineFunctionCallLocation(first().inlineFunctionInfo)
- ?: originalLocation
- var inlineStackFrameIndex = 1
- var prevLocation = originalLocation
- for (location in iterator) {
- if (inlineStackFrameIndex > lastIndex) {
- break
- }
- if (this[inlineStackFrameIndex].inlineFunctionInfo.contains(location)) {
- this[inlineStackFrameIndex - 1].location = prevLocation
- inlineStackFrameIndex++
- }
- prevLocation = location
+ if (framesInfo.isEmpty()) {
+ return originalLocation
}
- last().location = originalLocation
- return newFrameProxyLocation
- }
+ val firstInlineFunctionInfo = framesInfo.first().inlineFunctionInfo
+ val firstInlineCallLocationIndex = allLocations.indexOfFirst { firstInlineFunctionInfo.contains(it) }
+ if (firstInlineCallLocationIndex == -1) {
+ return originalLocation
+ }
- private fun Iterator<Location>.getInlineFunctionCallLocation(inlineFunctionInfo: AbstractInlineFunctionInfo): Location? {
- var prevLocation: Location? = null
- for (location in this) {
- if (inlineFunctionInfo.contains(location)) {
- return prevLocation
+ var frameIndex = 1
+ var prevLocation = originalLocation
+ for (locationIndex in firstInlineCallLocationIndex..allLocations.lastIndex) {
+ if (frameIndex > framesInfo.lastIndex) break
+
+ val location = allLocations[locationIndex]
+ val currentFrame = framesInfo[frameIndex]
+ val previousFrame = framesInfo[frameIndex - 1]
+
+ if (currentFrame.inlineFunctionInfo.contains(location)) {
+ previousFrame.location = prevLocation
+ frameIndex++
}
+
prevLocation = location
}
-
- return null
+ framesInfo.last().location = originalLocation
+
+ val newFrameProxyLocationIndex =
+ if (firstInlineCallLocationIndex > 0)
+ firstInlineCallLocationIndex - 1
+ else
+ 0
+ return allLocations[newFrameProxyLocationIndex]
}
private fun InlineStackFrameVariableHolder?.getVisibleVariables() =
this?.visibleVariables.orEmpty()
}
-private data class InlineStackFrameInfo(val inlineFunctionInfo: AbstractInlineFunctionInfo, var location: Location, var depth: Int) {
+private data class InlineStackFrameInfo(
+ val inlineFunctionInfo: AbstractInlineFunctionInfo,
+ var location: Location,
+ var depth: Int
+) {
fun toInlineStackFrame(
frameProxy: StackFrameProxyImpl,
visibleVariables: List<LocalVariableProxyImpl>
@@ -175,17 +180,14 @@ private abstract class AbstractInlineFunctionInfo(val name: String, val borders:
private class InlineFunctionInfo(
name: String,
borders: ClosedRange<Location>
-) : AbstractInlineFunctionInfo(
- name.substringAfter(JvmAbi.LOCAL_VARIABLE_NAME_PREFIX_INLINE_FUNCTION),
- borders
-) {
+) : AbstractInlineFunctionInfo(name.substringAfter(INLINE_FUNCTION_PREFIX), borders) {
override fun getDisplayName() = name
}
private class InlineLambdaNameWrapper(name: String) {
companion object {
private val inlineLambdaRegex =
- "${JvmAbi.LOCAL_VARIABLE_NAME_PREFIX_INLINE_ARGUMENT.replace("$", "\\$")}-(.+)-[^\$]+\\$([^\$]+)\\$.*"
+ "${INLINE_ARGUMENT_PREFIX.replace("$", "\\$")}-(.+)-[^\$]+\\$([^\$]+)\\$.*"
.toRegex()
}
@@ -201,9 +203,9 @@ private class InlineLambdaInfo(name: String, borders: ClosedRange<Location>) : A
private val nameWrapper = InlineLambdaNameWrapper(name)
override fun getDisplayName(): String {
- if (!nameWrapper.isValid()) {
+ if (!nameWrapper.isValid())
return name
- }
+
return "lambda '${nameWrapper.lambdaName}' in '${nameWrapper.declarationFunctionName}'"
}
diff --git a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionTestGenerated.java b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionTestGenerated.java
index f20a49d5cec8..1f08cec9f380 100644
--- a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionTestGenerated.java
+++ b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionTestGenerated.java
@@ -1403,6 +1403,11 @@ public abstract class IrKotlinEvaluateExpressionTestGenerated extends AbstractIr
runTest("testData/evaluation/multipleBreakpoints/inlineStackTrace.kt");
}
+ @TestMetadata("inlineStackTraceWithApply.kt")
+ public void testInlineStackTraceWithApply() throws Exception {
+ runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt");
+ }
+
@TestMetadata("inlineStackTraceWithNestedLambdas.kt")
public void testInlineStackTraceWithNestedLambdas() throws Exception {
runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithNestedLambdas.kt");
diff --git a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java
index 246144ea060a..806572a64c9b 100644
--- a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java
+++ b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/IrKotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java
@@ -1403,6 +1403,11 @@ public abstract class IrKotlinEvaluateExpressionWithIRFragmentCompilerTestGenera
runTest("testData/evaluation/multipleBreakpoints/inlineStackTrace.kt");
}
+ @TestMetadata("inlineStackTraceWithApply.kt")
+ public void testInlineStackTraceWithApply() throws Exception {
+ runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt");
+ }
+
@TestMetadata("inlineStackTraceWithNestedLambdas.kt")
public void testInlineStackTraceWithNestedLambdas() throws Exception {
runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithNestedLambdas.kt");
diff --git a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionTestGenerated.java b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionTestGenerated.java
index 750b9a819fad..793d426a55ef 100644
--- a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionTestGenerated.java
+++ b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionTestGenerated.java
@@ -1403,6 +1403,11 @@ public abstract class KotlinEvaluateExpressionTestGenerated extends AbstractKotl
runTest("testData/evaluation/multipleBreakpoints/inlineStackTrace.kt");
}
+ @TestMetadata("inlineStackTraceWithApply.kt")
+ public void testInlineStackTraceWithApply() throws Exception {
+ runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt");
+ }
+
@TestMetadata("inlineStackTraceWithNestedLambdas.kt")
public void testInlineStackTraceWithNestedLambdas() throws Exception {
runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithNestedLambdas.kt");
diff --git a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java
index 9cf2ebc7b880..ab6d6e3220e1 100644
--- a/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java
+++ b/plugins/kotlin/jvm-debugger/test/test/org/jetbrains/kotlin/idea/debugger/test/KotlinEvaluateExpressionWithIRFragmentCompilerTestGenerated.java
@@ -1403,6 +1403,11 @@ public abstract class KotlinEvaluateExpressionWithIRFragmentCompilerTestGenerate
runTest("testData/evaluation/multipleBreakpoints/inlineStackTrace.kt");
}
+ @TestMetadata("inlineStackTraceWithApply.kt")
+ public void testInlineStackTraceWithApply() throws Exception {
+ runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt");
+ }
+
@TestMetadata("inlineStackTraceWithNestedLambdas.kt")
public void testInlineStackTraceWithNestedLambdas() throws Exception {
runTest("testData/evaluation/multipleBreakpoints/inlineStackTraceWithNestedLambdas.kt");
diff --git a/plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt b/plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt
new file mode 100644
index 000000000000..52a73f404b6f
--- /dev/null
+++ b/plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.kt
@@ -0,0 +1,35 @@
+package inlineStackTraceWithAlso
+
+class Foo
+
+inline fun Foo.body() {
+ val x2 = 2
+ //Breakpoint!
+ myAddChild()
+}
+
+inline fun Foo.myAddChild() {
+ val x3 = 3
+ //Breakpoint!
+ println()
+}
+
+fun main() {
+ Foo().apply {
+ val x1 = 1
+ //Breakpoint!
+ body()
+ }
+}
+
+// PRINT_FRAME
+// SHOW_KOTLIN_VARIABLES
+
+// EXPRESSION: x1
+// RESULT: 1: I
+
+// EXPRESSION: x2
+// RESULT: 2: I
+
+// EXPRESSION: x3
+// RESULT: 3: I
diff --git a/plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.out b/plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.out
new file mode 100644
index 000000000000..6a49263aacaa
--- /dev/null
+++ b/plugins/kotlin/jvm-debugger/test/testData/evaluation/multipleBreakpoints/inlineStackTraceWithApply.out
@@ -0,0 +1,47 @@
+LineBreakpoint created at inlineStackTraceWithApply.kt:8
+LineBreakpoint created at inlineStackTraceWithApply.kt:14
+LineBreakpoint created at inlineStackTraceWithApply.kt:21
+Run Java
+Connected to the target VM
+inlineStackTraceWithApply.kt:21
+Compile bytecode for x1
+InlineStackFrame lambda 'apply' in 'main' (inlineStackTraceWithApply.kt:21)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+ JavaValue[local] x1: int = 1 (inlineStackTraceWithApply.kt:19)
+KotlinStackFrameWithProvidedVariables (inlineStackTraceWithApply.kt:18)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+inlineStackTraceWithApply.kt:8
+Compile bytecode for x2
+InlineStackFrame body (inlineStackTraceWithApply.kt:8)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+ JavaValue[local] x2: int = 2 (inlineStackTraceWithApply.kt:6)
+InlineStackFrame lambda 'apply' in 'main' (inlineStackTraceWithApply.kt:21)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+ JavaValue[local] x1: int = 1
+KotlinStackFrameWithProvidedVariables (inlineStackTraceWithApply.kt:18)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+inlineStackTraceWithApply.kt:14
+Compile bytecode for x3
+InlineStackFrame myAddChild (inlineStackTraceWithApply.kt:14)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+ JavaValue[local] x3: int = 3 (inlineStackTraceWithApply.kt:12)
+InlineStackFrame body (inlineStackTraceWithApply.kt:8)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+ JavaValue[local] x2: int = 2
+InlineStackFrame lambda 'apply' in 'main' (inlineStackTraceWithApply.kt:21)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+ JavaValue[local] x1: int = 1
+KotlinStackFrameWithProvidedVariables (inlineStackTraceWithApply.kt:18)
+ JavaValue[local] this: inlineStackTraceWithAlso.Foo = inlineStackTraceWithAlso.Foo@hashCode
+ DummyMessageValueNode = Class has no properties
+Disconnected from the target VM
+
+Process finished with exit code 0
diff --git a/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/capturedValues2.out b/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/capturedValues2.out
index 8cd991baf98b..8f8143f77d0c 100644
--- a/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/capturedValues2.out
+++ b/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/capturedValues2.out
@@ -10,7 +10,7 @@ InlineStackFrame lambda 'block' in 'main' (capturedValues2.kt:14)
InlineStackFrame block (capturedValues2.kt:23)
InlineStackFrame lambda 'block' in 'main' (capturedValues2.kt:10)
JavaValue[local] a: int = 2 (capturedValues2.kt:13)
-InlineStackFrame block (capturedValues2.kt:16)
+InlineStackFrame block (capturedValues2.kt:23)
KotlinStackFrameWithProvidedVariables (capturedValues2.kt:6)
JavaValue[local] a: int = 1 (capturedValues2.kt:13)
Disconnected from the target VM
diff --git a/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/frameSharedVarLocalVar.out b/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/frameSharedVarLocalVar.out
index e19468ddfcfa..cd2af002bf2d 100644
--- a/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/frameSharedVarLocalVar.out
+++ b/plugins/kotlin/jvm-debugger/test/testData/evaluation/singleBreakpoint/frame/frameSharedVarLocalVar.out
@@ -6,7 +6,7 @@ Compile bytecode for var1
InlineStackFrame lambda 'foo' in 'main' (frameSharedVarLocalVar.kt:7)
JavaValue[local] args: java.lang.String[] = [] (frameSharedVarLocalVar.kt:3)
JavaValue[local] var1: int = 1 (frameSharedVarLocalVar.kt:4)
-InlineStackFrame foo (frameSharedVarLocalVar.kt:7)
+InlineStackFrame foo (frameSharedVarLocalVar.kt:12)
KotlinStackFrameWithProvidedVariables (frameSharedVarLocalVar.kt:5)
JavaValue[local] args: java.lang.String[] = [] (frameSharedVarLocalVar.kt:3)
JavaValue[local] var1: int = 1 (frameSharedVarLocalVar.kt:4)
diff --git a/plugins/kotlin/plugin/resources/META-INF/highlighting.xml b/plugins/kotlin/plugin/resources/META-INF/highlighting.xml
index 487e1982b3f5..47da6802185f 100644
--- a/plugins/kotlin/plugin/resources/META-INF/highlighting.xml
+++ b/plugins/kotlin/plugin/resources/META-INF/highlighting.xml
@@ -21,7 +21,7 @@
<syntaxHighlighter factoryClass="org.jetbrains.kotlin.idea.decompiler.builtIns.KotlinSyntaxHighlighterProviderForDecompiledBuiltIns"/>
- <lang.braceMatcher language="kotlin" implementationClass="org.jetbrains.kotlin.idea.KotlinPairMatcher"/>
+ <lang.braceMatcher language="kotlin" implementationClass="org.jetbrains.kotlin.idea.KotlinPairedBraceMatcher"/>
<lang.parserDefinition language="kotlin" implementationClass="org.jetbrains.kotlin.parsing.KotlinParserDefinition"/>
diff --git a/plugins/kotlin/plugin/resources/META-INF/kotlin-core.xml b/plugins/kotlin/plugin/resources/META-INF/kotlin-core.xml
index bec13677920e..ba1ff44317c1 100644
--- a/plugins/kotlin/plugin/resources/META-INF/kotlin-core.xml
+++ b/plugins/kotlin/plugin/resources/META-INF/kotlin-core.xml
@@ -53,6 +53,7 @@
<applicationService
serviceInterface="org.jetbrains.kotlin.idea.references.ReadWriteAccessChecker"
serviceImplementation="org.jetbrains.kotlin.idea.references.ReadWriteAccessCheckerDescriptorsImpl"/>
+ <applicationService serviceImplementation="org.jetbrains.kotlin.idea.macros.ApplicationWideKotlinBundledPathMacroCleaner" preload="true"/>
<projectService serviceImplementation="org.jetbrains.kotlin.idea.PluginStartupService"/>
<projectService serviceImplementation="org.jetbrains.kotlin.idea.core.KotlinPluginDisposable"/>
@@ -96,7 +97,7 @@
<pathMacroExpandableProtocol protocol="kotlin-js-meta"/>
- <pathMacroContributor implementation="org.jetbrains.kotlin.idea.KotlinPluginMacros"/>
+ <projectPathMacroContributor implementation="org.jetbrains.kotlin.idea.macros.KotlinBundledPathMacroContributor"/>
<postStartupActivity implementation="org.jetbrains.kotlin.idea.PluginStartupActivity"/>
<postStartupActivity implementation="org.jetbrains.kotlin.idea.versions.KotlinUpdatePluginStartupActivity"/>
diff --git a/plugins/kotlin/plugin/resources/META-INF/plugin.xml b/plugins/kotlin/plugin/resources/META-INF/plugin.xml
index 11afb9c1ea28..782764077cb0 100644
--- a/plugins/kotlin/plugin/resources/META-INF/plugin.xml
+++ b/plugins/kotlin/plugin/resources/META-INF/plugin.xml
@@ -18,22 +18,20 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
<!--suppress PluginXmlValidity -->
<change-notes><![CDATA[
- <h3>1.6.20-RC</h3>
+ <h3>1.6.20</h3>
<ul>
- <li>Stabilization of Kotlin 1.6.20-M1 features.</li>
+ <li>Language: prototype of context receivers, definitely non-nullable types</li>
+ <li>Kotlin/JVM: experimental parallel compilation of a single module, callable references to functional interface constructors, improved compatibility for default methods</li>
+ <li>Kotlin/Native: instantiation of annotation classes, improved interop with Swift async/await, better stack traces with libbacktrace, performance improvements</li>
+ <li>Multiplatform: hierarchical project structure by default</li>
+ <li>CocoaPods Gradle plugin: new tasks for generating a suitable podspec for XCFramework publishing, accepting the podspec version when configuring CocoaPods for Kotlin/Native</li>
+ <li>Kotlin/JS: IR compiler improvements (incremental compilation, lazy initialization of top-level properties, separate JS files for project modules), export improvements</li>
+ <li>Security: using relative paths in klibs, persisting yarn.lock for Kotlin/JS Gradle projects, installation of npm dependencies with --ignore-scripts by default</li>
+ <li>Gradle: compiler execution strategies, cleaning up deprecated properties and options</li>
</ul>
- Learn more in the <a href="https://github.com/JetBrains/kotlin/releases/tag/v1.6.20-RC">changelog</a>.
- <br><br>
- <h3>1.6.20-M1</h3>
- <ul>
- <li>Language: prototype of context receivers</li>
- <li>Kotlin/JVM: experimental parallel compilation of a single module, deprecation of old `-Xjvm-default` modes, new `@JvmDefaultWithCompatibility` annotation</li>
- <li>Kotlin/Native: concurrent sweep phase in the new memory manager, support for Xcode 13 SDKs, instantiation of annotation classes, support for resolving source locations with `libbacktrace`, improved "could not build module" cinterop report, performance improvements</li>
- <li>CocoaPods Gradle plugin: customization of podspec properties, accepting version when configuring CocoaPods for Kotlin/Native, new task for generating a suitable podspec for a built XCFramework</li>
- <li>Kotlin/JS: incremental compilation in the IR backend, lazy initialization of top-level properties by default, inline `Char` class, ability to use inline classes in external types, export improvements</li>
- <li>Gradle: new flexible way of defining a Kotlin compiler execution strategy, removed `kotlin.parallel.tasks.in.project` build option, deprecated `kapt.use.worker.api` and `kotlin.coroutines` build options</li>
- </ul>
- Learn more in the <a href="https://github.com/JetBrains/kotlin/releases/tag/v1.6.20-M1">changelog</a>.
+ Learn more in the <a href="https://github.com/JetBrains/kotlin/releases/tag/v1.6.20">changelog</a>.
+ <br>
+ For more details, see [What’s New in Kotlin 1.6.20](https://kotlinlang.org/docs/whatsnew1620.html).
<br><br>
<h3>1.6.0</h3>
<ul>
diff --git a/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt b/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt
index 577a6c5814fa..7087f891b3c6 100644
--- a/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt
+++ b/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt
@@ -17,6 +17,10 @@ abstract class AbstractBuildFileGenerationTest : UsefulTestCase() {
abstract fun createWizard(directory: Path, buildSystem: BuildSystem, projectDirectory: Path): Wizard
fun doTest(directoryPath: String) {
+ doTest(directoryPath, { _, _ -> })
+ }
+
+ fun doTest(directoryPath: String, additionalChecks: ((Path, Path) -> Unit)) {
val directory = Paths.get(directoryPath)
val testParameters = DefaultTestParameters.fromTestDataOrDefault(directory)
@@ -28,11 +32,11 @@ abstract class AbstractBuildFileGenerationTest : UsefulTestCase() {
)
for (buildSystem in buildSystemsToRunFor) {
- doTest(directory, buildSystem, testParameters)
+ doTest(directory, buildSystem, testParameters, additionalChecks)
}
}
- private fun doTest(directory: Path, buildSystem: BuildSystem, testParameters: DefaultTestParameters) {
+ private fun doTest(directory: Path, buildSystem: BuildSystem, testParameters: DefaultTestParameters, additionalChecks: ((Path, Path) -> Unit)) {
val tempDirectory = Files.createTempDirectory(null)
val wizard = createWizard(directory, buildSystem, tempDirectory)
val result = wizard.apply(Services.IDEA_INDEPENDENT_SERVICES, GenerationPhase.ALL)
@@ -62,6 +66,7 @@ abstract class AbstractBuildFileGenerationTest : UsefulTestCase() {
).replace("gradle-${Versions.GRADLE.text}-bin.zip", "gradle-GRADLE_VERSION-bin.zip")
.replace("gradle-${Versions.GRADLE_VERSION_FOR_COMPOSE.text}-bin.zip", "gradle-GRADLE_VERSION_FOR_COMPOSE-bin.zip")
}
+ additionalChecks(expectedDirectory, tempDirectory)
}
private fun Path.allBuildFiles(buildSystem: BuildSystem) =
diff --git a/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/testUtils.kt b/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/testUtils.kt
index 7e5e5959fd16..99dde8e893eb 100644
--- a/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/testUtils.kt
+++ b/plugins/kotlin/project-wizard/cli/test/org/jetbrains/kotlin/tools/projectWizard/cli/testUtils.kt
@@ -14,14 +14,14 @@ import java.nio.file.Files
import java.nio.file.Path
import java.util.stream.Collectors
-internal fun Path.readFile() = toFile().readText().trim()
+fun Path.readFile() = toFile().readText().trim()
-internal fun Path.listFiles(filter: (Path) -> Boolean) =
+fun Path.listFiles(filter: (Path) -> Boolean) =
Files.walk(this).filter { path ->
Files.isRegularFile(path) && filter(path)
}.collect(Collectors.toList()).sorted()
-internal fun compareFilesAndGenerateMissing(
+fun compareFilesAndGenerateMissing(
expectedFiles: List<Path>, expectedDir: Path,
actualFiles: List<Path>, actualDir: Path,
readActualFile: (Path) -> String
diff --git a/plugins/kotlin/project-wizard/cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/pom.xml b/plugins/kotlin/project-wizard/cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/pom.xml
index b151d11a5925..9a711f8500a2 100644
--- a/plugins/kotlin/project-wizard/cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/pom.xml
+++ b/plugins/kotlin/project-wizard/cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/pom.xml
@@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <artifactId>consoleApp</artifactId>
+ <artifactId>artifactId</artifactId>
<groupId>me.user</groupId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
diff --git a/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties b/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties
index b382714ccf41..9f7e4abce8e0 100644
--- a/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties
+++ b/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties
@@ -26,7 +26,6 @@ module.kind.mpp.module=MPP Module
module.kind.target=Target
plugin.buildsystem.setting.type=Build system
-plugin.buildsystem.setting.type.tooltip=The build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on
plugin.buildsystem.setting.type.error.wrong.project.kind={0} project cannot be generated using {1}
plugin.kotlin.downloading.kotlin.versions=Downloading list of Kotlin versions
@@ -54,7 +53,7 @@ plugin.structure.setting.artifact.id=Artifact ID
plugin.structure.setting.artifact.id.tooltip=The unique name of the primary artifact for this project \u2013 not applicable for the IntelliJ build system
plugin.structure.setting.version=Version
plugin.structure.setting.version.tooltip=The version of the primary artifact generated by the project \u2013 not applicable for the IntelliJ build system
-plugin.templates.setting.template=Project Template
+plugin.templates.setting.template=Project template
plugin.templates.setting.template.tooltip=Defines the initial project structure. Depending on your purpose, select one of the following templates:
plugin.android.setting.sdk=Android SDK
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/Podfile b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/Podfile
new file mode 100644
index 000000000000..aff9c517b203
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/Podfile
@@ -0,0 +1,5 @@
+target 'iosApp' do
+ use_frameworks!
+ platform :ios, '14.1'
+ pod 'shared', :path => '../shared'
+end \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName.xcodeproj/project.pbxproj b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName.xcodeproj/project.pbxproj
new file mode 100644
index 000000000000..2fd9121d3acc
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName.xcodeproj/project.pbxproj
@@ -0,0 +1,319 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 50;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 058557BB273AAA24004C7B11 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 058557BA273AAA24004C7B11 /* Assets.xcassets */; };
+ 058557D9273AAEEB004C7B11 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 058557D8273AAEEB004C7B11 /* Preview Assets.xcassets */; };
+ 2152FB042600AC8F00CF470E /* ${moduleName}.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2152FB032600AC8F00CF470E /* ${moduleName}.swift */; };
+ 7555FF83242A565900829871 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7555FF82242A565900829871 /* ContentView.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 058557BA273AAA24004C7B11 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
+ 058557D8273AAEEB004C7B11 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
+ 2152FB032600AC8F00CF470E /* ${moduleName}.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ${moduleName}.swift; sourceTree = "<group>"; };
+ 7555FF7B242A565900829871 /* ${moduleName}.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ${moduleName}.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 7555FF82242A565900829871 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
+ 7555FF8C242A565B00829871 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXGroup section */
+ 058557D7273AAEEB004C7B11 /* Preview Content */ = {
+ isa = PBXGroup;
+ children = (
+ 058557D8273AAEEB004C7B11 /* Preview Assets.xcassets */,
+ );
+ path = "Preview Content";
+ sourceTree = "<group>";
+ };
+ 7555FF72242A565900829871 = {
+ isa = PBXGroup;
+ children = (
+ 7555FF7D242A565900829871 /* ${moduleName} */,
+ 7555FF7C242A565900829871 /* Products */,
+ );
+ sourceTree = "<group>";
+ };
+ 7555FF7C242A565900829871 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 7555FF7B242A565900829871 /* ${moduleName}.app */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 7555FF7D242A565900829871 /* ${moduleName} */ = {
+ isa = PBXGroup;
+ children = (
+ 058557BA273AAA24004C7B11 /* Assets.xcassets */,
+ 7555FF82242A565900829871 /* ContentView.swift */,
+ 7555FF8C242A565B00829871 /* Info.plist */,
+ 2152FB032600AC8F00CF470E /* ${moduleName}.swift */,
+ 058557D7273AAEEB004C7B11 /* Preview Content */,
+ );
+ path = ${moduleName};
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 7555FF7A242A565900829871 /* ${moduleName} */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 7555FFA5242A565B00829871 /* Build configuration list for PBXNativeTarget "${moduleName}" */;
+ buildPhases = (
+ 7555FF77242A565900829871 /* Sources */,
+ 7555FF79242A565900829871 /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = ${moduleName};
+ productName = ${moduleName};
+ productReference = 7555FF7B242A565900829871 /* ${moduleName}.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 7555FF73242A565900829871 /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastSwiftUpdateCheck = 1130;
+ LastUpgradeCheck = 1130;
+ ORGANIZATIONNAME = orgName;
+ TargetAttributes = {
+ 7555FF7A242A565900829871 = {
+ CreatedOnToolsVersion = 11.3.1;
+ };
+ };
+ };
+ buildConfigurationList = 7555FF76242A565900829871 /* Build configuration list for PBXProject "${moduleName}" */;
+ compatibilityVersion = "Xcode 9.3";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ Base,
+ );
+ mainGroup = 7555FF72242A565900829871;
+ productRefGroup = 7555FF7C242A565900829871 /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 7555FF7A242A565900829871 /* ${moduleName} */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 7555FF79242A565900829871 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 058557D9273AAEEB004C7B11 /* Preview Assets.xcassets in Resources */,
+ 058557BB273AAA24004C7B11 /* Assets.xcassets in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 7555FF77242A565900829871 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 2152FB042600AC8F00CF470E /* ${moduleName}.swift in Sources */,
+ 7555FF83242A565900829871 /* ContentView.swift in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ 7555FFA3242A565B00829871 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 14.1;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ };
+ name = Debug;
+ };
+ 7555FFA4242A565B00829871 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 14.1;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+ 7555FFA6242A565B00829871 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ CODE_SIGN_STYLE = Automatic;
+ DEVELOPMENT_ASSET_PATHS = "\"${moduleName}/Preview Content\"";
+ ENABLE_PREVIEWS = YES;
+ INFOPLIST_FILE = ${moduleName}/Info.plist;
+ IPHONEOS_DEPLOYMENT_TARGET = 14.1;
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ PRODUCT_BUNDLE_IDENTIFIER = orgIdentifier.${moduleName};
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Debug;
+ };
+ 7555FFA7242A565B00829871 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ CODE_SIGN_STYLE = Automatic;
+ DEVELOPMENT_ASSET_PATHS = "\"${moduleName}/Preview Content\"";
+ ENABLE_PREVIEWS = YES;
+ INFOPLIST_FILE = ${moduleName}/Info.plist;
+ IPHONEOS_DEPLOYMENT_TARGET = 14.1;
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ PRODUCT_BUNDLE_IDENTIFIER = orgIdentifier.${moduleName};
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 7555FF76242A565900829871 /* Build configuration list for PBXProject "${moduleName}" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7555FFA3242A565B00829871 /* Debug */,
+ 7555FFA4242A565B00829871 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 7555FFA5242A565B00829871 /* Build configuration list for PBXNativeTarget "${moduleName}" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7555FFA6242A565B00829871 /* Debug */,
+ 7555FFA7242A565B00829871 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 7555FF73242A565900829871 /* Project object */;
+}
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AccentColor.colorset/Contents.json b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AccentColor.colorset/Contents.json
new file mode 100644
index 000000000000..ee7e3ca03f87
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AccentColor.colorset/Contents.json
@@ -0,0 +1,11 @@
+{
+ "colors" : [
+ {
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AppIcon.appiconset/Contents.json b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AppIcon.appiconset/Contents.json
new file mode 100644
index 000000000000..fb88a396bf38
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/AppIcon.appiconset/Contents.json
@@ -0,0 +1,98 @@
+{
+ "images" : [
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "60x60"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "60x60"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "76x76"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "76x76"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "83.5x83.5"
+ },
+ {
+ "idiom" : "ios-marketing",
+ "scale" : "1x",
+ "size" : "1024x1024"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/Contents.json b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/Contents.json
new file mode 100644
index 000000000000..4aa7c5350bfc
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Assets.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/ContentView.swift.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/ContentView.swift.vm
new file mode 100644
index 000000000000..8732b955fd78
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/ContentView.swift.vm
@@ -0,0 +1,16 @@
+import SwiftUI
+import ${sharedModuleName}
+
+struct ContentView: View {
+ let greet = Greeting().greeting()
+
+ var body: some View {
+ Text(greet)
+ }
+}
+
+struct ContentView_Previews: PreviewProvider {
+ static var previews: some View {
+ ContentView()
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Info.plist b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Info.plist
new file mode 100644
index 000000000000..8044709cfa75
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Info.plist
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>$(DEVELOPMENT_LANGUAGE)</string>
+ <key>CFBundleExecutable</key>
+ <string>$(EXECUTABLE_NAME)</string>
+ <key>CFBundleIdentifier</key>
+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>$(PRODUCT_NAME)</string>
+ <key>CFBundlePackageType</key>
+ <string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleVersion</key>
+ <string>1</string>
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+ <key>UIApplicationSceneManifest</key>
+ <dict>
+ <key>UIApplicationSupportsMultipleScenes</key>
+ <false/>
+ </dict>
+ <key>UIRequiredDeviceCapabilities</key>
+ <array>
+ <string>armv7</string>
+ </array>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+ <key>UISupportedInterfaceOrientations~ipad</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationPortraitUpsideDown</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+ <key>UILaunchScreen</key>
+ <dict/>
+</dict>
+</plist> \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Preview Content/Preview Assets.xcassets/Contents.json b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Preview Content/Preview Assets.xcassets/Contents.json
new file mode 100644
index 000000000000..4aa7c5350bfc
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/Preview Content/Preview Assets.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/appName.swift.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/appName.swift.vm
new file mode 100644
index 000000000000..3e8c0f8afaf4
--- /dev/null
+++ b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/ios/singleplatformCocoaPodsProject/appName/appName.swift.vm
@@ -0,0 +1,10 @@
+import SwiftUI
+
+@main
+struct ${moduleName}: App {
+ var body: some Scene {
+ WindowGroup {
+ ContentView()
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/ir/buildsystem/BuildSystemPluginIR.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/ir/buildsystem/BuildSystemPluginIR.kt
index 54f63975b1ec..efdaace5ba7a 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/ir/buildsystem/BuildSystemPluginIR.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/ir/buildsystem/BuildSystemPluginIR.kt
@@ -92,6 +92,9 @@ data class KotlinBuildSystemPluginIR(
@Suppress("EnumEntryName", "unused", "SpellCheckingInspection")
enum class Type {
- jvm, multiplatform, android, js
+ jvm, multiplatform, android, js,
+ nativeCocoapods {
+ override fun toString(): String = "native.cocoapods"
+ }
}
}
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/IOSModuleConfigurator.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/IOSModuleConfigurator.kt
index 11fcb9d8d0ab..e50ccea30d4c 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/IOSModuleConfigurator.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/IOSModuleConfigurator.kt
@@ -21,6 +21,8 @@ object IOSSinglePlatformModuleConfigurator : IOSSinglePlatformModuleConfigurator
): TaskResult<Unit> =
GradlePlugin.gradleProperties.addValues("xcodeproj" to "./${module.name}")
+ override val moduleTemplatePath: String get() = "singleplatformProject"
+
override fun ListBuilder<FileTemplate>.additionalTemplates(fileTemplate: (Path) -> FileTemplate) {
+fileTemplate("$DEFAULT_APP_NAME.xcodeproj" / "project.pbxproj")
@@ -32,6 +34,44 @@ object IOSSinglePlatformModuleConfigurator : IOSSinglePlatformModuleConfigurator
}
}
+object IOSSinglePlatformCocoaPodsModuleConfigurator : IOSSinglePlatformModuleConfiguratorBase() {
+ override val moduleTemplatePath: String get() = "singleplatformCocoaPodsProject"
+
+ override fun Writer.runArbitraryTask(
+ configurationData: ModulesToIrConversionData,
+ module: Module,
+ modulePath: Path
+ ): TaskResult<Unit> = compute {
+ GradlePlugin.gradleProperties.addValues("xcodeproj" to "./${module.name}")
+ GradlePlugin.gradleProperties.addValues("kotlin.native.cocoapods.generate.wrapper" to true)
+ }
+
+ override fun Reader.createTemplates(
+ configurationData: ModulesToIrConversionData,
+ module: Module,
+ modulePath: Path
+ ): List<FileTemplate> {
+ val settings = createTemplatesSettingValues(module)
+
+ fun fileTemplate(path: Path) = FileTemplate(descriptor(path, module.name), modulePath, settings)
+
+ return buildList {
+ +fileTemplate(DEFAULT_APP_NAME / "$DEFAULT_APP_NAME.swift.vm")
+ +fileTemplate(DEFAULT_APP_NAME / "ContentView.swift.vm")
+
+ +fileTemplate(DEFAULT_APP_NAME / "Assets.xcassets" / "Contents.json")
+ +fileTemplate(DEFAULT_APP_NAME / "Assets.xcassets" / "AppIcon.appiconset" / "Contents.json")
+ +fileTemplate(DEFAULT_APP_NAME / "Assets.xcassets" / "AccentColor.colorset" / "Contents.json")
+ +fileTemplate(DEFAULT_APP_NAME / "Preview Content" / "Preview Assets.xcassets" / "Contents.json")
+
+ +fileTemplate("$DEFAULT_APP_NAME.xcodeproj" / "project.pbxproj")
+ +fileTemplate(DEFAULT_APP_NAME / "Info.plist")
+
+ +fileTemplate("Podfile".asPath())
+ }
+ }
+}
+
abstract class IOSSinglePlatformModuleConfiguratorBase : SinglePlatformModuleConfigurator,
ModuleConfiguratorSettings(),
ModuleConfiguratorProperties,
@@ -47,6 +87,7 @@ abstract class IOSSinglePlatformModuleConfiguratorBase : SinglePlatformModuleCon
override val greyText = KotlinNewProjectWizardBundle.message("module.configurator.ios.requires.xcode")
override val text = KotlinNewProjectWizardBundle.message("module.configurator.ios")
+ abstract val moduleTemplatePath: String?
override val needCreateBuildFile: Boolean = false
override val requiresRootBuildFile: Boolean = true
@@ -79,7 +120,7 @@ abstract class IOSSinglePlatformModuleConfiguratorBase : SinglePlatformModuleCon
open fun ListBuilder<FileTemplate>.additionalTemplates(fileTemplate: (Path) -> FileTemplate) { }
- private fun Reader.createTemplatesSettingValues(module: Module): Map<String, Any?> {
+ protected fun Reader.createTemplatesSettingValues(module: Module): Map<String, Any?> {
val dependentModule = inContextOfModuleConfigurator(module) {
dependentModule.reference.propertyValue.module
}
@@ -92,7 +133,7 @@ abstract class IOSSinglePlatformModuleConfiguratorBase : SinglePlatformModuleCon
protected open fun descriptor(path: Path, moduleName: String) =
FileTemplateDescriptor(
- "ios/singleplatformProject/$path",
+ "ios/$moduleTemplatePath/$path",
path.toString()
.removeSuffix(".vm")
.replace(DEFAULT_APP_NAME, moduleName)
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/NativeTargetConfigurator.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/NativeTargetConfigurator.kt
index 3064c7c1aec4..22d7d747bf8c 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/NativeTargetConfigurator.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/NativeTargetConfigurator.kt
@@ -7,6 +7,7 @@ import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
import org.jetbrains.kotlin.tools.projectWizard.core.Reader
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.BuildSystemIR
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.*
+import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.multiplatform.DefaultTargetConfigurationIR
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.multiplatform.NonDefaultTargetConfigurationIR
import org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem.BuildSystemType
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.*
@@ -31,7 +32,7 @@ class RealNativeTargetConfigurator private constructor(
override fun createInnerTargetIrs(reader: Reader, module: Module): List<BuildSystemIR> = irsList {
+super<SimpleTargetConfigurator>.createInnerTargetIrs(reader, module)
- if (moduleSubType.isIOS) {
+ if (moduleSubType.isIOS && moduleSubType != ModuleSubType.iosCocoaPods) {
"binaries" {
"framework" {
"baseName" assign const(module.parent!!.name)
@@ -40,6 +41,24 @@ class RealNativeTargetConfigurator private constructor(
}
}
+ override fun Reader.createTargetIrs(module: Module): List<BuildSystemIR> = irsList {
+ +DefaultTargetConfigurationIR(
+ module.createTargetAccessIr(moduleSubType),
+ createInnerTargetIrs(this@createTargetIrs, module).toPersistentList()
+ )
+ if (moduleSubType == ModuleSubType.iosCocoaPods) {
+ "cocoapods" {
+ "summary" assign const("Some description for the Shared Module")
+ "homepage" assign const("Link to the Shared Module homepage")
+ "ios.deploymentTarget" assign const("14.1")
+ "podfile" assign raw("project.file(\"../iosApp/Podfile\")") //TODO hardcoded name
+ "framework" {
+ "baseName" assign const(module.parent!!.name)
+ }
+ }
+ }
+ }
+
companion object {
val configurators = ModuleSubType.values()
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt
index 9062df4a4c3a..12886ce89471 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt
@@ -69,7 +69,7 @@ internal fun Module.createTargetAccessIr(
) =
TargetAccessIR(
moduleSubType,
- name.takeIf { it != moduleSubType.name },
+ name.takeIf { it != moduleSubType.toString() },
additionalParams.filterNotNull()
)
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/buildSystem/BuildSystemPlugin.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/buildSystem/BuildSystemPlugin.kt
index 19af2b86f2c2..a09af17f240f 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/buildSystem/BuildSystemPlugin.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/buildSystem/BuildSystemPlugin.kt
@@ -1,7 +1,7 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem
-
+import com.intellij.openapi.util.text.StringUtil
import kotlinx.collections.immutable.toImmutableList
import org.jetbrains.annotations.Nls
import org.jetbrains.annotations.NonNls
@@ -59,14 +59,12 @@ abstract class BuildSystemPlugin(context: Context) : Plugin(context) {
ValidationResult.ValidationError(
KotlinNewProjectWizardBundle.message(
"plugin.buildsystem.setting.type.error.wrong.project.kind",
- projectKind.shortName.capitalize(),
+ StringUtil.capitalize(projectKind.shortName),
buildSystemType.fullText
)
)
}
}
-
- tooltipText = KotlinNewProjectWizardBundle.message("plugin.buildsystem.setting.type.tooltip")
}
val buildSystemData by property<List<BuildSystemData>>(emptyList())
@@ -195,7 +193,7 @@ enum class BuildSystemType(
companion object {
val ALL_GRADLE = setOf(GradleKotlinDsl, GradleGroovyDsl)
- val ALL_BY_PRIORITY = setOf(GradleKotlinDsl, GradleGroovyDsl, Maven, Jps)
+ val ALL_BY_PRIORITY = setOf(GradleKotlinDsl, GradleGroovyDsl)
}
}
@@ -228,7 +226,6 @@ fun BuildSystemType.getDefaultPluginRepositories(): List<DefaultRepository> = wh
BuildSystemType.Jps -> emptyList()
}
-
val Reader.buildSystemType: BuildSystemType
get() = BuildSystemPlugin.type.settingValue
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/ModuleType.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/ModuleType.kt
index 2ef33369c4a5..73d65af9e055 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/ModuleType.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/ModuleType.kt
@@ -28,6 +28,9 @@ enum class ModuleSubType(val moduleType: ModuleType) {
androidNativeArm32(ModuleType.native), androidNativeArm64(ModuleType.native),
iosArm32(ModuleType.native), iosArm64(ModuleType.native), iosX64(ModuleType.native),
ios(ModuleType.native)/*TODO TEMPORARY TILL HMPP WIZARD PART IS MERGED*/,
+ iosCocoaPods(ModuleType.native) {
+ override fun toString(): String = "ios"
+ },
linuxArm32Hfp(ModuleType.native), linuxMips32(ModuleType.native), linuxMipsel32(ModuleType.native),
linuxX64(ModuleType.native),
macosX64(ModuleType.native),
@@ -36,7 +39,8 @@ enum class ModuleSubType(val moduleType: ModuleType) {
}
val ModuleSubType.isIOS: Boolean
- get() = this in EnumSet.of(ModuleSubType.iosX64, ModuleSubType.iosArm32, ModuleSubType.iosArm64, ModuleSubType.ios)
+ get() = this in EnumSet.of(ModuleSubType.iosX64, ModuleSubType.iosArm32, ModuleSubType.iosArm64, ModuleSubType.ios,
+ ModuleSubType.iosCocoaPods)
val ModuleSubType.isNativeDesktop: Boolean
get() = this in EnumSet.of(
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt
index bbe33f933cd2..a7bf15f9cb93 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt
@@ -67,19 +67,18 @@ abstract class ProjectTemplate : DisplayableSettingItem {
}
}
-
companion object {
val ALL = listOf(
- ConsoleApplicationProjectTemplateWithSample,
+ FullStackWebApplicationProjectTemplate,
MultiplatformLibraryProjectTemplate,
NativeApplicationProjectTemplate,
FrontendApplicationProjectTemplate,
ReactApplicationProjectTemplate,
- FullStackWebApplicationProjectTemplate,
NodeJsApplicationProjectTemplate,
ComposeDesktopApplicationProjectTemplate,
ComposeMultiplatformApplicationProjectTemplate,
- ComposeWebApplicationProjectTemplate
+ ComposeWebApplicationProjectTemplate,
+ ConsoleApplicationProjectTemplateWithSample
)
fun byId(id: String): ProjectTemplate? = ALL.firstOrNull {
@@ -94,7 +93,7 @@ private infix fun <V : Any, T : SettingType<V>> PluginSettingReference<V, T>.wit
private inline infix fun <V : Any, reified T : SettingType<V>> PluginSetting<V, T>.withValue(value: V): SettingWithValue<V, T> =
SettingWithValue(reference, value)
-private fun createDefaultSourceSets() =
+fun createDefaultSourceSets() =
SourcesetType.values().map { sourceSetType ->
Sourceset(
sourceSetType,
@@ -298,7 +297,7 @@ abstract class MultiplatformMobileApplicationProjectTemplateBase : ProjectTempla
},
Module(
"ios",
- RealNativeTargetConfigurator.configuratorsByModuleType.getValue(ModuleSubType.ios),
+ sharedIosConfigurator,
null,
permittedTemplateIds = emptySet(),
sourceSets = createDefaultSourceSets(),
@@ -313,6 +312,8 @@ abstract class MultiplatformMobileApplicationProjectTemplateBase : ProjectTempla
protected abstract fun iosAppModule(shared: Module): Module
protected abstract fun androidAppModule(shared: Module): Module
+
+ open val sharedIosConfigurator get() = RealNativeTargetConfigurator.configuratorsByModuleType.getValue(ModuleSubType.ios)
}
object NodeJsApplicationProjectTemplate : ProjectTemplate() {
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/mpp/MobileMppTemplate.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/mpp/MobileMppTemplate.kt
index 1593c40b0858..c160e4d4b509 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/mpp/MobileMppTemplate.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/mpp/MobileMppTemplate.kt
@@ -7,11 +7,10 @@ import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
import org.jetbrains.kotlin.tools.projectWizard.core.Reader
import org.jetbrains.kotlin.tools.projectWizard.core.TaskResult
import org.jetbrains.kotlin.tools.projectWizard.core.Writer
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.BuildSystemIR
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.ModuleIR
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.RepositoryIR
+import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.*
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.irsList
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.MppModuleConfigurator
+import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.SimpleTargetConfigurator
import org.jetbrains.kotlin.tools.projectWizard.mpp.applyMppStructure
import org.jetbrains.kotlin.tools.projectWizard.mpp.mppSources
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleSubType
@@ -37,6 +36,14 @@ class MobileMppTemplate : Template() {
override fun Writer.getIrsToAddToBuildFile(module: ModuleIR): List<BuildSystemIR> = irsList {
+RepositoryIR(DefaultRepository.JCENTER)
+
+ val cocoaPods = module.originalModule.subModules.any {
+ (it.configurator as? SimpleTargetConfigurator)?.moduleSubType == ModuleSubType.iosCocoaPods
+ }
+
+ if (cocoaPods) {
+ +KotlinBuildSystemPluginIR(KotlinBuildSystemPluginIR.Type.nativeCocoapods, null)
+ }
}
override fun Writer.runArbitratyTask(module: ModuleIR): TaskResult<Unit> {
@@ -52,7 +59,7 @@ class MobileMppTemplate : Template() {
)
actualFor(
- ModuleSubType.iosArm64, ModuleSubType.iosX64, ModuleSubType.ios,
+ ModuleSubType.iosArm64, ModuleSubType.iosX64, ModuleSubType.ios, ModuleSubType.iosCocoaPods,
actualBody =
"""actual val platform: String = UIDevice.currentDevice.systemName() + " " + UIDevice.currentDevice.systemVersion"""
) {
@@ -69,7 +76,7 @@ class MobileMppTemplate : Template() {
file(FileTemplateDescriptor("android/androidTest.kt.vm", relativePath = null), "androidTest.kt", SourcesetType.test)
}
- filesFor(ModuleSubType.iosArm64, ModuleSubType.iosX64, ModuleSubType.ios) {
+ filesFor(ModuleSubType.iosArm64, ModuleSubType.iosX64, ModuleSubType.ios, ModuleSubType.iosCocoaPods) {
file(FileTemplateDescriptor("ios/iosTest.kt.vm", relativePath = null), "iosTest.kt", SourcesetType.test)
}
diff --git a/plugins/kotlin/project-wizard/gradle/src/org/jetbrains/kotlin/tools/projectWizard/gradle/GradleKotlinNewProjectWizard.kt b/plugins/kotlin/project-wizard/gradle/src/org/jetbrains/kotlin/tools/projectWizard/gradle/GradleKotlinNewProjectWizard.kt
index ec0745c60df1..78bb3d866f05 100644
--- a/plugins/kotlin/project-wizard/gradle/src/org/jetbrains/kotlin/tools/projectWizard/gradle/GradleKotlinNewProjectWizard.kt
+++ b/plugins/kotlin/project-wizard/gradle/src/org/jetbrains/kotlin/tools/projectWizard/gradle/GradleKotlinNewProjectWizard.kt
@@ -9,6 +9,13 @@ import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logP
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkChanged
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkFinished
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logVersionChanged
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
+import com.intellij.ide.starters.local.StandardAssetsProvider
+import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.name
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.path
+import com.intellij.ide.wizard.NewProjectWizardStep
+import com.intellij.ide.wizard.chain
import com.intellij.openapi.project.Project
import com.intellij.ui.UIBundle
import com.intellij.ui.dsl.builder.Panel
@@ -25,7 +32,7 @@ internal class GradleKotlinNewProjectWizard : BuildSystemKotlinNewProjectWizard
override val name = "Gradle"
- override fun createStep(parent: KotlinNewProjectWizard.Step) = Step(parent)
+ override fun createStep(parent: KotlinNewProjectWizard.Step) = Step(parent).chain(::AssetsStep)
class Step(parent: KotlinNewProjectWizard.Step) :
GradleNewProjectWizardStep<KotlinNewProjectWizard.Step>(parent),
@@ -74,4 +81,14 @@ internal class GradleKotlinNewProjectWizard : BuildSystemKotlinNewProjectWizard
versionProperty.afterChange { logVersionChanged() }
}
}
+
+ private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
+ override fun setupAssets(project: Project) {
+ outputDirectory = "$path/$name"
+ addAssets(StandardAssetsProvider().getGradlewAssets())
+ if (gitData?.git == true) {
+ addAssets(StandardAssetsProvider().getGradleIgnoreAssets())
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/idea/resources/messages/KotlinNewProjectWizardUIBundle.properties b/plugins/kotlin/project-wizard/idea/resources/messages/KotlinNewProjectWizardUIBundle.properties
index af8b6f49a318..c50296d700a6 100644
--- a/plugins/kotlin/project-wizard/idea/resources/messages/KotlinNewProjectWizardUIBundle.properties
+++ b/plugins/kotlin/project-wizard/idea/resources/messages/KotlinNewProjectWizardUIBundle.properties
@@ -6,13 +6,10 @@ project.preview=Project structure
additional.buildsystem.settings.kotlin.advanced=Advanced Settings
additional.buildsystem.settings.kotlin.runtime=Kotlin Runtime
-additional.buildsystem.settings.project.jdk=Project JDK
+additional.buildsystem.settings.project.jdk=JDK
additional.buildsystem.settings.project.jdk.tooltip=The Java Development Kit (JDK) that will be used in the project (version 1.8 or later is recommended) <ul><li>If the JDK is installed on your computer but not defined in the IDE, select Add JDK and specify the path to the JDK home directory (for example, /Library/Java/JavaVirtualMachines/jdk-12.0.1.jdk).</li><li> If you don't have the necessary JDK on your machine, select Download JDK. In the next dialog, specify the JDK vendor, version, and change the installation path if required.</li></ul>
additional.buildsystem.settings.artifact.coordinates=Artifact Coordinates
-feedback.link.tooltip.text=<html><body>If anything is missing or seems confusing in the Kotlin New Project wizard, please create an issue\
- \ or feature request in the <a href="{0}">Kotlin issue tracker</a>.</body></html>
-
module.dependencies.module.dependencies=Module dependencies
module.dependencies.module.dependencies.tooltip=Modules the current application depends on
module.dependencies.add.module.dependency=Add Module Dependency
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/IntelliJKotlinNewProjectWizard.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/IntelliJKotlinNewProjectWizard.kt
index 8f15ef4e0df0..1a57fa23727a 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/IntelliJKotlinNewProjectWizard.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/IntelliJKotlinNewProjectWizard.kt
@@ -2,7 +2,14 @@
package org.jetbrains.kotlin.tools.projectWizard
import com.intellij.ide.JavaUiBundle
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
+import com.intellij.ide.starters.local.StandardAssetsProvider
import com.intellij.ide.wizard.AbstractNewProjectWizardStep
+import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.name
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.path
+import com.intellij.ide.wizard.NewProjectWizardStep
+import com.intellij.ide.wizard.chain
import com.intellij.openapi.module.StdModuleTypes
import com.intellij.openapi.project.Project
import com.intellij.openapi.projectRoots.JavaSdkType
@@ -18,7 +25,9 @@ internal class IntelliJKotlinNewProjectWizard : BuildSystemKotlinNewProjectWizar
override val name = "IntelliJ"
- override fun createStep(parent: KotlinNewProjectWizard.Step) = object : AbstractNewProjectWizardStep(parent) {
+ override fun createStep(parent: KotlinNewProjectWizard.Step) = Step(parent).chain(::AssetsStep)
+
+ class Step(private val parent: KotlinNewProjectWizard.Step) : AbstractNewProjectWizardStep(parent) {
private val sdkProperty = propertyGraph.property<Sdk?>(null)
private val addSampleCodeProperty = propertyGraph.property(false)
@@ -49,4 +58,13 @@ internal class IntelliJKotlinNewProjectWizard : BuildSystemKotlinNewProjectWizar
addSampleCode = addSampleCode
)
}
+
+ private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
+ override fun setupAssets(project: Project) {
+ outputDirectory = "$path/$name"
+ if (gitData?.git == true) {
+ addAssets(StandardAssetsProvider().getIntelliJIgnoreAssets())
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/BuildSystemTypeSettingComponent.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/BuildSystemTypeSettingComponent.kt
index 06812783c7dd..8c8986a9fd52 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/BuildSystemTypeSettingComponent.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/BuildSystemTypeSettingComponent.kt
@@ -1,15 +1,11 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.kotlin.tools.projectWizard.wizard.ui.firstStep
-import com.intellij.icons.AllIcons
import com.intellij.openapi.actionSystem.*
import com.intellij.openapi.actionSystem.ex.ActionButtonLook
import com.intellij.openapi.actionSystem.impl.ActionButton
import com.intellij.openapi.actionSystem.impl.ActionButtonWithText
import com.intellij.openapi.project.DumbAware
-import icons.OpenapiIcons
-import org.jetbrains.kotlin.idea.KotlinIcons
-import org.jetbrains.kotlin.idea.extensions.gradle.KotlinGradleFacade
import org.jetbrains.kotlin.tools.projectWizard.core.Context
import org.jetbrains.kotlin.tools.projectWizard.core.entity.ValidationResult
import org.jetbrains.kotlin.tools.projectWizard.core.entity.isSpecificError
@@ -27,7 +23,6 @@ import java.awt.Dimension
import java.awt.Insets
import javax.swing.JComponent
-
class BuildSystemTypeSettingComponent(
context: Context
) : SettingComponent<BuildSystemType, DropDownSettingType<BuildSystemType>>(
@@ -64,7 +59,7 @@ class BuildSystemTypeSettingComponent(
private inner class BuildSystemTypeAction(
val buildSystemType: BuildSystemType
- ) : ToggleAction(buildSystemType.text, null, buildSystemType.icon), DumbAware {
+ ) : ToggleAction(buildSystemType.text, null, null), DumbAware {
override fun isSelected(e: AnActionEvent): Boolean = value == buildSystemType
override fun setSelected(e: AnActionEvent, state: Boolean) {
@@ -125,12 +120,4 @@ class BuildSystemTypeSettingComponent(
private const val LEFT_RIGHT_PADDING = 6
private const val TOP_BOTTOM_PADDING = 2
}
-}
-
-private val BuildSystemType.icon
- get() = when (this) {
- BuildSystemType.GradleKotlinDsl -> KotlinIcons.GRADLE_SCRIPT
- BuildSystemType.GradleGroovyDsl -> KotlinGradleFacade.instance?.gradleIcon ?: KotlinIcons.GRADLE_SCRIPT
- BuildSystemType.Maven -> OpenapiIcons.RepositoryLibraryLogo
- BuildSystemType.Jps -> AllIcons.Nodes.Module
- }
+} \ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/FirstWizardStepComponent.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/FirstWizardStepComponent.kt
index 6cfe43017b12..0f03591b2361 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/FirstWizardStepComponent.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/FirstWizardStepComponent.kt
@@ -12,8 +12,11 @@ import com.intellij.openapi.roots.ui.configuration.JdkComboBox
import com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel
import com.intellij.openapi.util.Condition
import com.intellij.openapi.util.NlsContexts
+import com.intellij.ui.IdeBorderFactory
import com.intellij.ui.TitledSeparator
-import com.intellij.ui.layout.*
+import com.intellij.ui.dsl.builder.*
+import com.intellij.ui.dsl.gridLayout.HorizontalAlign
+import com.intellij.util.ui.JBInsets
import com.intellij.util.ui.JBUI
import com.intellij.util.ui.components.BorderLayoutPanel
import org.jetbrains.kotlin.idea.projectWizard.WizardStatsService
@@ -70,26 +73,29 @@ class ProjectSettingsComponent(ideWizard: IdeWizard) : DynamicComponent(ideWizar
),
context,
stretchY = true,
- useBigYGap = true
+ useBigYGap = true,
+ xPadding = 0,
+ yPadding = 0
).asSubComponent()
override val component: JComponent by lazy(LazyThreadSafetyMode.NONE) {
panel {
row {
- nameAndLocationComponent.component(growX)
+ cell(nameAndLocationComponent.component)
+ .horizontalAlign(HorizontalAlign.FILL)
+ .resizableColumn()
+
+ bottomGap(BottomGap.SMALL)
}
+
row {
- buildSystemAdditionalSettingsComponent.component(growX)
- }.largeGapAfter()
- row {
- comment(
- KotlinNewProjectWizardUIBundle.message(
- "feedback.link.tooltip.text",
- "https://youtrack.jetbrains.com/newIssue?project=KTIJ&Type=Feature&Subsystems=IDE.Wizards"
- ), 100
- ).constraints(pushY).withLargeLeftGap()
+ cell(buildSystemAdditionalSettingsComponent.component)
+ .horizontalAlign(HorizontalAlign.FILL)
+ .resizableColumn()
+
+ bottomGap(BottomGap.SMALL)
}
- }.addBorder(JBUI.Borders.emptyRight(UIConstants.PADDING))
+ }.addBorder(IdeBorderFactory.createEmptyBorder(JBInsets(20, 20, 20, 20)))
}
override fun onValueUpdated(reference: SettingReference<*, *>?) {
@@ -209,7 +215,6 @@ private class JdkComponent(ideWizard: IdeWizard) : TitledComponent(ideWizard.con
}
override val title: String = KotlinNewProjectWizardUIBundle.message("additional.buildsystem.settings.project.jdk")
- override val tooltipText: String = KotlinNewProjectWizardUIBundle.message("additional.buildsystem.settings.project.jdk.tooltip")
override val component: JComponent = jdkComboBox
}
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt
index bc92ba29b4f4..31d0fa01a96e 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt
@@ -67,7 +67,6 @@ class ProjectTemplateSettingComponent(
addToBottom(templateDescriptionComponent.component.addBorder(JBUI.Borders.empty(/*top*/8,/*left*/ 3, 0, 0)))
}
-
private fun applySelectedTemplate() = modify {
value?.let(::applyProjectTemplate)
}
@@ -76,10 +75,7 @@ class ProjectTemplateSettingComponent(
super.onValueUpdated(reference)
if (reference == ProjectTemplatesPlugin.template.reference) {
applySelectedTemplate()
- value?.let { template ->
- list.setSelectedValue(template, true)
- templateDescriptionComponent.setTemplate(template)
- }
+ updateHint()
}
}
@@ -89,6 +85,14 @@ class ProjectTemplateSettingComponent(
list.selectedIndex = 0
value = setting.type.values.firstOrNull()
applySelectedTemplate()
+ updateHint()
+ }
+ }
+
+ private fun updateHint() {
+ value?.let { template ->
+ list.setSelectedValue(template, true)
+ templateDescriptionComponent.setTemplate(template)
}
}
}
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/setting/TitledComponentsList.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/setting/TitledComponentsList.kt
index 0a56ab123f59..42c818cb9ecb 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/setting/TitledComponentsList.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/setting/TitledComponentsList.kt
@@ -16,6 +16,8 @@ open class TitledComponentsList(
private val stretchY: Boolean = false,
private val globalMaxWidth: Int? = null,
useBigYGap: Boolean = false,
+ var xPadding: Int = xPanelPadding,
+ var yPadding: Int = yPanelPadding
) : DynamicComponent(context) {
private val ui = BorderLayoutPanel()
@@ -80,7 +82,7 @@ open class TitledComponentsList(
componentsWithLabels.forEach { (_, tooltipConst, component, _, _, componentMaxWidth) ->
val maxWidth = componentMaxWidth ?: globalMaxWidth
if (maxWidth == null) {
- component[SpringLayout.EAST] = layout.getConstraint(SpringLayout.EAST, this) - xPanelPadding.asSpring()
+ component[SpringLayout.EAST] = layout.getConstraint(SpringLayout.EAST, this) - xPadding.asSpring()
} else {
component.width = maxWidth.asSpring()
}
@@ -93,7 +95,7 @@ open class TitledComponentsList(
for (data in componentsWithLabels) {
val (label, tooltip, component) = data
- label.x = xPanelPadding.asSpring()
+ label.x = xPadding.asSpring()
tooltip?.x = label[SpringLayout.EAST] + xGap
component.x = maxLabelWidth + 2 * xGap
if (tooltipWidth != null)
@@ -105,9 +107,9 @@ open class TitledComponentsList(
tooltip?.y = label.y
component.y = constraint
} else {
- label.y = data.centerConstraint() + yPanelPadding
+ label.y = data.centerConstraint() + yPadding
tooltip?.y = label.y
- component.y = yPanelPadding.asSpring()
+ component.y = yPadding.asSpring()
}
lastLabel = label
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt
index b16d33ad1b14..4f424558428f 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/ui.kt
@@ -86,7 +86,8 @@ val ModuleSubType.icon: Icon
ModuleSubType.jvm -> KotlinIcons.Wizard.JVM
ModuleSubType.js -> KotlinIcons.Wizard.JS
ModuleSubType.android, ModuleSubType.androidNativeArm32, ModuleSubType.androidNativeArm64 -> KotlinIcons.Wizard.ANDROID
- ModuleSubType.iosArm32, ModuleSubType.iosArm64, ModuleSubType.iosX64, ModuleSubType.ios -> KotlinIcons.Wizard.IOS
+ ModuleSubType.iosArm32, ModuleSubType.iosArm64, ModuleSubType.iosX64, ModuleSubType.ios, ModuleSubType.iosCocoaPods ->
+ KotlinIcons.Wizard.IOS
ModuleSubType.linuxArm32Hfp, ModuleSubType.linuxMips32, ModuleSubType.linuxMipsel32, ModuleSubType.linuxX64 ->
KotlinIcons.Wizard.LINUX
ModuleSubType.macosX64 -> KotlinIcons.Wizard.MAC_OS
diff --git a/plugins/kotlin/project-wizard/maven/src/org/jetbrains/kotlin/tools/projectWizard/maven/MavenKotlinNewProjectWizard.kt b/plugins/kotlin/project-wizard/maven/src/org/jetbrains/kotlin/tools/projectWizard/maven/MavenKotlinNewProjectWizard.kt
index cc21402d05f3..4b59525f6f4c 100644
--- a/plugins/kotlin/project-wizard/maven/src/org/jetbrains/kotlin/tools/projectWizard/maven/MavenKotlinNewProjectWizard.kt
+++ b/plugins/kotlin/project-wizard/maven/src/org/jetbrains/kotlin/tools/projectWizard/maven/MavenKotlinNewProjectWizard.kt
@@ -8,6 +8,13 @@ import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logP
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkChanged
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkFinished
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logVersionChanged
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
+import com.intellij.ide.starters.local.StandardAssetsProvider
+import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.name
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.path
+import com.intellij.ide.wizard.NewProjectWizardStep
+import com.intellij.ide.wizard.chain
import com.intellij.openapi.project.Project
import com.intellij.ui.UIBundle
import com.intellij.ui.dsl.builder.Panel
@@ -23,7 +30,7 @@ internal class MavenKotlinNewProjectWizard : BuildSystemKotlinNewProjectWizard {
override val name = "Maven"
- override fun createStep(parent: KotlinNewProjectWizard.Step) = Step(parent)
+ override fun createStep(parent: KotlinNewProjectWizard.Step) = Step(parent).chain(::AssetsStep)
class Step(parent: KotlinNewProjectWizard.Step) :
MavenNewProjectWizardStep<KotlinNewProjectWizard.Step>(parent),
@@ -67,4 +74,13 @@ internal class MavenKotlinNewProjectWizard : BuildSystemKotlinNewProjectWizard {
versionProperty.afterChange { logVersionChanged() }
}
}
+
+ private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
+ override fun setupAssets(project: Project) {
+ outputDirectory = "$path/$name"
+ if (gitData?.git == true) {
+ addAssets(StandardAssetsProvider().getMavenIgnoreAssets())
+ }
+ }
+ }
}
diff --git a/plugins/kotlin/util/project-model-updater/resources/model.properties b/plugins/kotlin/util/project-model-updater/resources/model.properties
index 68261235425a..e064b05f3a66 100644
--- a/plugins/kotlin/util/project-model-updater/resources/model.properties
+++ b/plugins/kotlin/util/project-model-updater/resources/model.properties
@@ -1,2 +1,2 @@
-kotlincVersion=1.6.10-release-952
+kotlincVersion=1.6.20-release-285
kotlincArtifactsMode=MAVEN
diff --git a/plugins/kotlin/util/project-model-updater/src/org/jetbrains/tools/model/updater/kotlincLibraries.kt b/plugins/kotlin/util/project-model-updater/src/org/jetbrains/tools/model/updater/kotlincLibraries.kt
index 00a83fb9a2fc..a31f499c8aeb 100644
--- a/plugins/kotlin/util/project-model-updater/src/org/jetbrains/tools/model/updater/kotlincLibraries.kt
+++ b/plugins/kotlin/util/project-model-updater/src/org/jetbrains/tools/model/updater/kotlincLibraries.kt
@@ -36,10 +36,10 @@ fun generateKotlincLibraries(kotlincArtifactsMode: KotlincArtifactsMode, version
kotlincForIdeWithStandardNaming("kotlinc.sam-with-receiver-compiler-plugin", version),
singleJarMvnLib("kotlinc.kotlin-scripting-common", "$ktGroup:kotlin-scripting-common:$version", transitive = false),
singleJarMvnLib("kotlinc.kotlin-scripting-compiler-impl", "$ktGroup:kotlin-scripting-compiler-impl:$version", transitive = false),
- singleJarMvnLib("kotlinc.kotlin-scripting-compiler", "$ktGroup:kotlin-scripting-compiler:$version", transitive = false),
singleJarMvnLib("kotlinc.kotlin-scripting-jvm", "$ktGroup:kotlin-scripting-jvm:$version", transitive = false),
- singleJarMvnLib("kotlin-reflect", "$ktGroup:kotlin-reflect:$version", excludes = listOf(MavenId(ktGroup, "kotlin-stdlib"))),
- singleJarMvnLib("kotlin-script-runtime", "$ktGroup:kotlin-script-runtime:$version"),
+ singleJarMvnLib("kotlinc.kotlin-reflect", "$ktGroup:kotlin-reflect:$version", excludes = listOf(MavenId(ktGroup, "kotlin-stdlib"))),
+ singleJarMvnLib("kotlinc.kotlin-jps-plugin-classpath", "$ktGroup:kotlin-jps-plugin-classpath:$version"),
+ singleJarMvnLib("kotlinc.kotlin-jps-common", "$ktGroup:kotlin-jps-common-for-ide:$version"),
run {
val mavenIds = listOf(
MavenId.fromCoordinates("$ktGroup:kotlin-stdlib-jdk8:$version"),
@@ -48,7 +48,7 @@ fun generateKotlincLibraries(kotlincArtifactsMode: KotlincArtifactsMode, version
MavenId.fromCoordinates("$ktGroup:kotlin-stdlib-jdk7:$version")
)
JpsLibrary(
- "kotlin-stdlib-jdk8",
+ "kotlinc.kotlin-stdlib",
JpsLibrary.Kind.Maven(mavenIds.first(), excludes = listOf(MavenId("org.jetbrains", "annotations"))),
annotations = listOf(JpsUrl.File(JpsPath.ProjectDir("lib/annotations/kotlin", isCommunity))),
classes = mavenIds.map { JpsUrl.Jar(JpsPath.MavenRepository(it)) },
diff --git a/plugins/markdown/core/resources/inlayProviders/MarkdownTableInlayProviderSettingsKey/preview.md b/plugins/markdown/core/resources/inlayProviders/MarkdownTableInlayProviderSettingsKey/preview.md
new file mode 100644
index 000000000000..445071deab48
--- /dev/null
+++ b/plugins/markdown/core/resources/inlayProviders/MarkdownTableInlayProviderSettingsKey/preview.md
@@ -0,0 +1,5 @@
+| Column 1 | Column 2 | Column 3 |
+|----------|----------|----------|
+| Row 1 | Cell | Cell |
+| Row 2 | Cell | Cell |
+| Row 3 | Cell | Cell | \ No newline at end of file
diff --git a/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenArtifactResolveResult.java b/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenArtifactResolveResult.java
new file mode 100644
index 000000000000..9478900b99d6
--- /dev/null
+++ b/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenArtifactResolveResult.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright 2000-2009 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jetbrains.idea.maven.server;
+
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+import org.jetbrains.idea.maven.model.MavenArtifact;
+import org.jetbrains.idea.maven.model.MavenProjectProblem;
+
+import java.io.Serializable;
+import java.util.List;
+
+public class MavenArtifactResolveResult implements Serializable {
+ @NotNull public final List<MavenArtifact> mavenResolvedArtifacts;
+ @Nullable public final MavenProjectProblem problem;
+
+ public MavenArtifactResolveResult(@NotNull List<MavenArtifact> artifacts, @Nullable MavenProjectProblem problem) {
+ this.mavenResolvedArtifacts = artifacts;
+ this.problem = problem;
+ }
+}
diff --git a/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenServerEmbedder.java b/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenServerEmbedder.java
index fb481fde34ad..ca897ce753c1 100644
--- a/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenServerEmbedder.java
+++ b/plugins/maven/maven-server-api/src/org/jetbrains/idea/maven/server/MavenServerEmbedder.java
@@ -65,7 +65,10 @@ public interface MavenServerEmbedder extends Remote {
MavenArtifact resolve(@NotNull MavenArtifactInfo info,
@NotNull List<MavenRemoteRepository> remoteRepositories, MavenToken token) throws RemoteException,
MavenServerProcessCanceledException;
-
+ /**
+ * @deprecated use {@link Maven3XServerEmbedder#resolveArtifactTransitively()}
+ */
+ @Deprecated
@NotNull
List<MavenArtifact> resolveTransitively(@NotNull List<MavenArtifactInfo> artifacts,
@NotNull List<MavenRemoteRepository> remoteRepositories, MavenToken token) throws
@@ -111,4 +114,10 @@ public interface MavenServerEmbedder extends Remote {
Map<String, String> resolveAndGetArchetypeDescriptor(@NotNull String groupId, @NotNull String artifactId, @NotNull String version,
@NotNull List<MavenRemoteRepository> repositories,
@Nullable String url, MavenToken token) throws RemoteException;
+
+ @NotNull
+ MavenArtifactResolveResult resolveArtifactTransitively(
+ @NotNull List<MavenArtifactInfo> artifacts,
+ @NotNull List<MavenRemoteRepository> remoteRepositories,
+ MavenToken token) throws RemoteException;
}
diff --git a/plugins/maven/maven2-server-impl/src/org/jetbrains/idea/maven/server/embedder/Maven2ServerEmbedderImpl.java b/plugins/maven/maven2-server-impl/src/org/jetbrains/idea/maven/server/embedder/Maven2ServerEmbedderImpl.java
index bb4d965380b3..5aecd658197f 100644
--- a/plugins/maven/maven2-server-impl/src/org/jetbrains/idea/maven/server/embedder/Maven2ServerEmbedderImpl.java
+++ b/plugins/maven/maven2-server-impl/src/org/jetbrains/idea/maven/server/embedder/Maven2ServerEmbedderImpl.java
@@ -406,6 +406,35 @@ public final class Maven2ServerEmbedderImpl extends MavenRemoteObject implements
}
@NotNull
+ @Override
+ public MavenArtifactResolveResult resolveArtifactTransitively(@NotNull List<MavenArtifactInfo> artifacts,
+ @NotNull List<MavenRemoteRepository> remoteRepositories,
+ MavenToken token) throws RemoteException {
+ MavenServerUtil.checkToken(token);
+ try {
+ Set<Artifact> toResolve = new LinkedHashSet<Artifact>();
+ for (MavenArtifactInfo each : artifacts) {
+ toResolve.add(createArtifact(each));
+ }
+
+ return new MavenArtifactResolveResult(
+ Maven2ModelConverter.convertArtifacts(myImpl.resolveTransitively(toResolve, convertRepositories(remoteRepositories)),
+ new HashMap<Artifact, MavenArtifact>(), getLocalRepositoryFile())
+ , null);
+ }
+ catch (ArtifactResolutionException e) {
+ Maven2ServerGlobals.getLogger().info(e);
+ }
+ catch (ArtifactNotFoundException e) {
+ Maven2ServerGlobals.getLogger().info(e);
+ }
+ catch (Exception e) {
+ throw rethrowException(e);
+ }
+ return new MavenArtifactResolveResult(Collections.<MavenArtifact>emptyList(), null);
+ }
+
+ @NotNull
private MavenArtifact doResolve(MavenArtifactInfo info, List<MavenRemoteRepository> remoteRepositories) throws RemoteException {
Artifact resolved = doResolve(createArtifact(info), convertRepositories(remoteRepositories));
return Maven2ModelConverter.convertArtifact(resolved, getLocalRepositoryFile());
diff --git a/plugins/maven/maven3-server-impl/src/org/jetbrains/idea/maven/server/Maven3XServerEmbedder.java b/plugins/maven/maven3-server-impl/src/org/jetbrains/idea/maven/server/Maven3XServerEmbedder.java
index 63a227e23aad..9e8bede06fbe 100644
--- a/plugins/maven/maven3-server-impl/src/org/jetbrains/idea/maven/server/Maven3XServerEmbedder.java
+++ b/plugins/maven/maven3-server-impl/src/org/jetbrains/idea/maven/server/Maven3XServerEmbedder.java
@@ -1346,6 +1346,7 @@ public abstract class Maven3XServerEmbedder extends Maven3ServerEmbedder {
return doResolve(info, remoteRepositories);
}
+ @Deprecated
@NotNull
@Override
public List<MavenArtifact> resolveTransitively(@NotNull final List<MavenArtifactInfo> artifacts,
@@ -1372,6 +1373,46 @@ public abstract class Maven3XServerEmbedder extends Maven3ServerEmbedder {
}
@NotNull
+ @Override
+ public MavenArtifactResolveResult resolveArtifactTransitively(
+ @NotNull final List<MavenArtifactInfo> artifacts,
+ @NotNull final List<MavenRemoteRepository> remoteRepositories,
+ MavenToken token) throws RemoteException {
+ MavenServerUtil.checkToken(token);
+
+ try {
+ final MavenExecutionRequest request = createRequest(null, null, null, null);
+
+ final List<MavenArtifact>[] mavenArtifacts = new List[]{null};
+ executeWithMavenSession(request, new Runnable() {
+ @Override
+ public void run() {
+ try {
+ mavenArtifacts[0] = Maven3XServerEmbedder.this.doResolveTransitivelyWithError(artifacts, remoteRepositories);
+ }
+ catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+ });
+ return new MavenArtifactResolveResult(mavenArtifacts[0], null);
+ }
+ catch (Exception e) {
+ Maven3ServerGlobals.getLogger().warn(e);
+ Artifact transferArtifact = getProblemTransferArtifact(e);
+ String message = getRootMessage(e);
+ MavenProjectProblem problem;
+ if (transferArtifact != null) {
+ MavenArtifact mavenArtifact = MavenModelConverter.convertArtifact(transferArtifact, getLocalRepositoryFile());
+ problem = MavenProjectProblem.createArtifactTransferProblem("", message, true, mavenArtifact);
+ } else {
+ problem = MavenProjectProblem.createStructureProblem("", message);
+ }
+ return new MavenArtifactResolveResult(Collections.<MavenArtifact>emptyList(), problem);
+ }
+ }
+
+ @NotNull
private List<MavenArtifact> doResolveTransitively(@NotNull List<MavenArtifactInfo> artifacts,
@NotNull List<MavenRemoteRepository> remoteRepositories) throws RemoteException {
@@ -1395,6 +1436,24 @@ public abstract class Maven3XServerEmbedder extends Maven3ServerEmbedder {
}
}
+ @NotNull
+ private List<MavenArtifact> doResolveTransitivelyWithError(@NotNull List<MavenArtifactInfo> artifacts,
+ @NotNull List<MavenRemoteRepository> remoteRepositories)
+ throws RemoteException, ArtifactResolutionException, ArtifactNotFoundException {
+ Set<Artifact> toResolve = new LinkedHashSet<Artifact>();
+ for (MavenArtifactInfo each : artifacts) {
+ toResolve.add(createArtifact(each));
+ }
+
+ Artifact project = getComponent(ArtifactFactory.class).createBuildArtifact("temp", "temp", "666", "pom");
+
+ Set<Artifact> res = getComponent(ArtifactResolver.class)
+ .resolveTransitively(toResolve, project, Collections.EMPTY_MAP, myLocalRepository, convertRepositories(remoteRepositories),
+ getComponent(ArtifactMetadataSource.class)).getArtifacts();
+
+ return MavenModelConverter.convertArtifacts(res, new HashMap<Artifact, MavenArtifact>(), getLocalRepositoryFile());
+ }
+
@Override
public Collection<MavenArtifact> resolvePlugin(@NotNull final MavenPlugin plugin,
@NotNull final List<MavenRemoteRepository> repositories,
diff --git a/plugins/maven/maven30-server-impl/src/org/jetbrains/idea/maven/server/Maven30ServerEmbedderImpl.java b/plugins/maven/maven30-server-impl/src/org/jetbrains/idea/maven/server/Maven30ServerEmbedderImpl.java
index 5931fbde0aea..ec8d056ff64f 100644
--- a/plugins/maven/maven30-server-impl/src/org/jetbrains/idea/maven/server/Maven30ServerEmbedderImpl.java
+++ b/plugins/maven/maven30-server-impl/src/org/jetbrains/idea/maven/server/Maven30ServerEmbedderImpl.java
@@ -1028,6 +1028,14 @@ public class Maven30ServerEmbedderImpl extends Maven3ServerEmbedder {
}
}
+ @NotNull
+ @Override
+ public MavenArtifactResolveResult resolveArtifactTransitively(@NotNull List<MavenArtifactInfo> artifacts,
+ @NotNull List<MavenRemoteRepository> remoteRepositories,
+ MavenToken token) throws RemoteException {
+ return new MavenArtifactResolveResult(resolveTransitively(artifacts, remoteRepositories, token), null);
+ }
+
@Override
public Collection<MavenArtifact> resolvePlugin(@NotNull final MavenPlugin plugin,
@NotNull final List<MavenRemoteRepository> repositories,
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenCompilerAnnotationProcessorPathsImporter.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenCompilerAnnotationProcessorPathsImporter.java
index 678a5d247c43..b7ba89c68583 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenCompilerAnnotationProcessorPathsImporter.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenCompilerAnnotationProcessorPathsImporter.java
@@ -11,10 +11,10 @@ import com.intellij.util.containers.ContainerUtil;
import org.jdom.Element;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.idea.maven.execution.SyncBundle;
-import org.jetbrains.idea.maven.model.MavenArtifact;
import org.jetbrains.idea.maven.model.MavenArtifactInfo;
import org.jetbrains.idea.maven.model.MavenId;
import org.jetbrains.idea.maven.project.*;
+import org.jetbrains.idea.maven.server.MavenArtifactResolveResult;
import org.jetbrains.idea.maven.server.MavenEmbedderWrapper;
import org.jetbrains.idea.maven.server.NativeMavenProjectHolder;
import org.jetbrains.idea.maven.utils.MavenProcessCanceledException;
@@ -105,8 +105,13 @@ public class MavenCompilerAnnotationProcessorPathsImporter extends MavenImporter
}
try {
- List<MavenArtifact> annotationProcessors = embedder.resolveTransitively(externalArtifacts, mavenProject.getRemoteRepositories());
- mavenProject.addAnnotationProcessors(annotationProcessors);
+ MavenArtifactResolveResult annotationProcessors = embedder
+ .resolveArtifactTransitively(externalArtifacts, mavenProject.getRemoteRepositories());
+ if (annotationProcessors.problem != null) {
+ MavenResolveResultProcessor.notifySyncForProblem(project, annotationProcessors.problem);
+ } else {
+ mavenProject.addAnnotationProcessors(annotationProcessors.mavenResolvedArtifacts);
+ }
}
catch (Exception e) {
String message = e.getMessage() != null ? e.getMessage() : ExceptionUtil.getThrowableText(e);
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenProjectImporter.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenProjectImporter.kt
index b4390180031c..5486990d0d61 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenProjectImporter.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenProjectImporter.kt
@@ -28,7 +28,7 @@ interface MavenProjectImporter {
return MavenProjectImporterToWorkspaceModel(projectsTree, projectsToImportWithChanges, importingSettings,
VirtualFileUrlManager.getInstance(project), project)
}
- if (isImportToTreeStructureEnabled()) {
+ if (isImportToTreeStructureEnabled(project)) {
return MavenProjectTreeImporter(project, projectsTree, projectsToImportWithChanges, modelsProvider, importingSettings)
}
return MavenProjectImporterImpl(project, projectsTree, projectsToImportWithChanges, importModuleGroupsRequired,
@@ -39,6 +39,9 @@ interface MavenProjectImporter {
fun isImportToWorkspaceModelEnabled(): Boolean = Registry.`is`("maven.import.to.workspace.model")
@JvmStatic
- fun isImportToTreeStructureEnabled(): Boolean = Registry.`is`("maven.import.tree.structure")
+ fun isImportToTreeStructureEnabled(project: Project?): Boolean {
+ if (project == null) return true;
+ return MavenProjectsManager.getInstance(project).importingSettings.isImportToTreeStructure
+ }
}
} \ No newline at end of file
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/configurers/MavenAnnotationProcessorConfigurer.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/configurers/MavenAnnotationProcessorConfigurer.java
index e3d4299e5373..6768441e839f 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/configurers/MavenAnnotationProcessorConfigurer.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/configurers/MavenAnnotationProcessorConfigurer.java
@@ -93,7 +93,7 @@ public class MavenAnnotationProcessorConfigurer extends MavenModuleConfigurer {
}
if (!moduleProfile.isEnabled()) return;
- if (MavenProjectImporter.isImportToTreeStructureEnabled()) {
+ if (MavenProjectImporter.isImportToTreeStructureEnabled(project)) {
moduleProfile.setOutputRelativeToContentRoot(false);
} else {
moduleProfile.setOutputRelativeToContentRoot(true);
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/tree/MavenProjectImportContextProvider.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/tree/MavenProjectImportContextProvider.java
index 741689440368..9217f61b6a3e 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/tree/MavenProjectImportContextProvider.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/tree/MavenProjectImportContextProvider.java
@@ -34,7 +34,7 @@ public class MavenProjectImportContextProvider {
@NotNull
private final MavenProjectsTree myProjectsTree;
@NotNull
- private final Map<MavenProject, MavenProjectChanges> myProjectsToImportWithChanges;
+ private final Map<MavenId, MavenProjectChanges> myProjectsToImportWithChanges;
@NotNull
private final ModuleModelProxy myModuleModel;
@NotNull
@@ -47,7 +47,8 @@ public class MavenProjectImportContextProvider {
@NotNull MavenImportingSettings importingSettings) {
myProject = project;
myProjectsTree = projectsTree;
- myProjectsToImportWithChanges = changes;
+ myProjectsToImportWithChanges = changes.entrySet().stream()
+ .collect(Collectors.toMap(e -> e.getKey().getMavenId(), e -> e.getValue(), (v1, v2) -> v1));
myModuleModel = moduleModel;
myImportingSettings = importingSettings;
}
@@ -88,7 +89,7 @@ public class MavenProjectImportContextProvider {
continue;
}
- MavenProjectChanges changes = myProjectsToImportWithChanges.get(project);
+ MavenProjectChanges changes = myProjectsToImportWithChanges.get(project.getMavenId());
MavenProjectImportData mavenProjectImportData = getModuleImportData(project, moduleName, moduleByName, changes);
if (changes != null && changes.hasChanges()) {
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/indices/MavenArchetypeManager.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/indices/MavenArchetypeManager.java
index 2d7eba202911..63be41950d12 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/indices/MavenArchetypeManager.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/indices/MavenArchetypeManager.java
@@ -12,10 +12,13 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.idea.maven.indices.archetype.MavenCatalog;
import org.jetbrains.idea.maven.model.MavenArchetype;
+import org.jetbrains.idea.maven.model.MavenId;
import org.jetbrains.idea.maven.project.MavenEmbeddersManager;
+import org.jetbrains.idea.maven.project.MavenProject;
import org.jetbrains.idea.maven.project.MavenProjectsManager;
import org.jetbrains.idea.maven.server.MavenEmbedderWrapper;
import org.jetbrains.idea.maven.utils.MavenLog;
+import org.jetbrains.idea.maven.utils.MavenUtil;
import java.io.IOException;
import java.net.URL;
@@ -116,15 +119,33 @@ public class MavenArchetypeManager {
@Nullable
public Map<String, String> resolveAndGetArchetypeDescriptor(@NotNull String groupId, @NotNull String artifactId,
@NotNull String version, @Nullable String url) {
- return executeWithMavenEmbedderWrapperNullable(
+ Map<String, String> map = executeWithMavenEmbedderWrapperNullable(
wrapper -> wrapper.resolveAndGetArchetypeDescriptor(groupId, artifactId, version, Collections.emptyList(), url)
);
+ if (map != null) addToLocalIndex(groupId, artifactId, version);
+ return map;
+ }
+
+ private void addToLocalIndex(@NotNull String groupId, @NotNull String artifactId, @NotNull String version) {
+ MavenId mavenId = new MavenId(groupId, artifactId, version);
+ MavenIndex localIndex = MavenIndicesManager.getInstance(myProject).getIndex().getLocalIndex();
+ if (localIndex == null) return;
+ Path artifactPath = MavenUtil.getArtifactPath(Path.of(localIndex.getRepositoryPathOrUrl()), mavenId, "jar", null);
+ if (artifactPath != null && artifactPath.toFile().exists()) {
+ MavenIndicesManager.getInstance(myProject).addArtifactIndexAsync(mavenId, artifactPath.toFile());
+ }
}
@NotNull
private <R> R executeWithMavenEmbedderWrapper(Function<MavenEmbedderWrapper, R> function) {
- MavenEmbeddersManager manager = MavenProjectsManager.getInstance(myProject).getEmbeddersManager();
- MavenEmbedderWrapper mavenEmbedderWrapper = manager.getEmbedder(FOR_POST_PROCESSING, EMPTY, EMPTY);
+ MavenProjectsManager projectsManager = MavenProjectsManager.getInstance(myProject);
+ MavenEmbeddersManager manager = projectsManager.getEmbeddersManager();
+ String baseDir = EMPTY;
+ List<MavenProject> projects = projectsManager.getRootProjects();
+ if (!projects.isEmpty()) {
+ baseDir = MavenUtil.getBaseDir(projects.get(0).getDirectoryFile()).toString();
+ }
+ MavenEmbedderWrapper mavenEmbedderWrapper = manager.getEmbedder(FOR_POST_PROCESSING, baseDir, baseDir);
try {
return function.apply(mavenEmbedderWrapper);
}
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectBuilder.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectBuilder.kt
index cc33cb97f5a4..192f5b2b4704 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectBuilder.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectBuilder.kt
@@ -4,6 +4,7 @@ package org.jetbrains.idea.maven.plugins.groovy.wizard
import com.intellij.ide.util.EditorHelper
import com.intellij.ide.util.projectWizard.ModuleWizardStep
import com.intellij.ide.util.projectWizard.WizardContext
+import com.intellij.openapi.GitSilentFileAdderProvider
import com.intellij.openapi.application.ModalityState
import com.intellij.openapi.command.WriteCommandAction
import com.intellij.openapi.project.Project
@@ -30,7 +31,7 @@ import kotlin.io.path.createDirectories
/**
* Currently used only for new project wizard, thus the functionality is rather limited
*/
-class MavenGroovyNewProjectBuilder(private val groovySdkVersion : String) : AbstractMavenModuleBuilder() {
+class MavenGroovyNewProjectBuilder(private val groovySdkVersion: String) : AbstractMavenModuleBuilder() {
var createSampleCode = false
@@ -58,33 +59,42 @@ class MavenGroovyNewProjectBuilder(private val groovySdkVersion : String) : Abst
}
private fun setupMavenStructure(project: Project, root: VirtualFile) {
- val pom = WriteCommandAction.writeCommandAction(project)
- .withName(MavenWizardBundle.message("maven.new.project.wizard.groovy.creating.groovy.project"))
- .compute<VirtualFile, RuntimeException> {
- root.findChild(MavenConstants.POM_XML)?.delete(this)
- val file = root.createChildData(this, MavenConstants.POM_XML)
- val properties = Properties()
- val conditions = Properties()
- properties.setProperty("GROOVY_VERSION", groovySdkVersion)
- properties.setProperty("GROOVY_REPOSITORY", GroovyConfigUtils.getMavenSdkRepository(groovySdkVersion))
- conditions.setProperty("NEED_POM", (GroovyConfigUtils.compareSdkVersions(groovySdkVersion, GroovyConfigUtils.GROOVY2_5) >= 0).toString())
- conditions.setProperty("CREATE_SAMPLE_CODE", "true")
- MavenUtil.runOrApplyMavenProjectFileTemplate(project, file, projectId, null, null, properties,
- conditions, MAVEN_GROOVY_XML_TEMPLATE, false)
- file
- }
+ val vcsFileAdder = GitSilentFileAdderProvider.create(project)
+ try {
+ val pom = WriteCommandAction.writeCommandAction(project)
+ .withName(MavenWizardBundle.message("maven.new.project.wizard.groovy.creating.groovy.project"))
+ .compute<VirtualFile, RuntimeException> {
+ root.findChild(MavenConstants.POM_XML)?.delete(this)
+ val file = root.createChildData(this, MavenConstants.POM_XML)
+ vcsFileAdder.markFileForAdding(file)
+ val properties = Properties()
+ val conditions = Properties()
+ properties.setProperty("GROOVY_VERSION", groovySdkVersion)
+ properties.setProperty("GROOVY_REPOSITORY", GroovyConfigUtils.getMavenSdkRepository(groovySdkVersion))
+ conditions.setProperty("NEED_POM",
+ (GroovyConfigUtils.compareSdkVersions(groovySdkVersion, GroovyConfigUtils.GROOVY2_5) >= 0).toString())
+ conditions.setProperty("CREATE_SAMPLE_CODE", "true")
+ MavenUtil.runOrApplyMavenProjectFileTemplate(project, file, projectId, null, null, properties,
+ conditions, MAVEN_GROOVY_XML_TEMPLATE, false)
+ file
+ }
- val sourceDirectory = VfsUtil.createDirectories(root.path + "/src/main/groovy")
- VfsUtil.createDirectories(root.path + "/src/main/resources")
- VfsUtil.createDirectories(root.path + "/src/test/groovy")
- if (createSampleCode) {
- createSampleGroovyCodeFile(project, sourceDirectory)
- }
+ val sourceDirectory = VfsUtil.createDirectories(root.path + "/src/main/groovy")
+ VfsUtil.createDirectories(root.path + "/src/main/resources")
+ VfsUtil.createDirectories(root.path + "/src/test/groovy")
+ if (createSampleCode) {
+ vcsFileAdder.markFileForAdding(sourceDirectory)
+ createSampleGroovyCodeFile(project, sourceDirectory)
+ }
- MavenProjectsManager.getInstance(project).forceUpdateAllProjectsOrFindAllAvailablePomFiles()
+ MavenProjectsManager.getInstance(project).forceUpdateAllProjectsOrFindAllAvailablePomFiles()
- MavenUtil.invokeLater(project, ModalityState.NON_MODAL) {
- PsiManager.getInstance(project).findFile(pom)?.let(EditorHelper::openInEditor)
+ MavenUtil.invokeLater(project, ModalityState.NON_MODAL) {
+ PsiManager.getInstance(project).findFile(pom)?.let(EditorHelper::openInEditor)
+ }
+ }
+ finally {
+ vcsFileAdder.finish()
}
}
}
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectWizard.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectWizard.kt
index bce6292522a3..82f60c7aad9b 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectWizard.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/wizard/MavenGroovyNewProjectWizard.kt
@@ -9,6 +9,13 @@ import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logP
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkChanged
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logSdkFinished
import com.intellij.ide.projectWizard.NewProjectWizardCollector.BuildSystem.logVersionChanged
+import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
+import com.intellij.ide.starters.local.StandardAssetsProvider
+import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.name
+import com.intellij.ide.wizard.NewProjectWizardBaseData.Companion.path
+import com.intellij.ide.wizard.NewProjectWizardStep
+import com.intellij.ide.wizard.chain
import com.intellij.openapi.diagnostic.logger
import com.intellij.openapi.externalSystem.service.project.manage.ExternalProjectsManagerImpl
import com.intellij.openapi.observable.properties.ObservableMutableProperty
@@ -35,7 +42,7 @@ class MavenGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
override val ordinal: Int = 1
- override fun createStep(parent: GroovyNewProjectWizard.Step) = Step(parent)
+ override fun createStep(parent: GroovyNewProjectWizard.Step) = Step(parent).chain(::AssetsStep)
class Step(parent: GroovyNewProjectWizard.Step) :
MavenNewProjectWizardStep<GroovyNewProjectWizard.Step>(parent),
@@ -127,6 +134,15 @@ class MavenGroovyNewProjectWizard : BuildSystemGroovyNewProjectWizard {
@JvmField
val MAVEN = MavenUtil.SYSTEM_ID.readableName
}
+
+ private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
+ override fun setupAssets(project: Project) {
+ outputDirectory = "$path/$name"
+ if (gitData?.git == true) {
+ addAssets(StandardAssetsProvider().getMavenIgnoreAssets())
+ }
+ }
+ }
}
private fun DistributionInfo?.getVersion() = when(this) {
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettings.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettings.java
index 044796cc8e1f..393319c91b82 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettings.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettings.java
@@ -26,6 +26,7 @@ import org.jetbrains.idea.maven.execution.MavenRunnerSettings;
import java.util.LinkedHashSet;
import java.util.List;
+import java.util.Objects;
import java.util.Set;
public class MavenImportingSettings implements Cloneable {
@@ -61,6 +62,7 @@ public class MavenImportingSettings implements Cloneable {
private boolean downloadDocsAutomatically = false;
private boolean downloadAnnotationsAutomatically = false;
private boolean autoDetectCompiler = true;
+ private boolean importToTreeStructure = false;
private GeneratedSourcesFolder generatedSourcesFolder = GeneratedSourcesFolder.AUTODETECT;
@@ -235,6 +237,16 @@ public class MavenImportingSettings implements Cloneable {
this.autoDetectCompiler = autoDetectCompiler;
}
+ public boolean isImportToTreeStructure() {
+ return importToTreeStructure;
+ }
+
+ public void setImportToTreeStructure(boolean importToTreeStructure) {
+ boolean changedValue = !Objects.equals(this.importToTreeStructure, importToTreeStructure);
+ this.importToTreeStructure = importToTreeStructure;
+ if (changedValue) fireUpdateAllProjectStructure();
+ }
+
@Property
@NotNull
public GeneratedSourcesFolder getGeneratedSourcesFolder() {
@@ -279,6 +291,7 @@ public class MavenImportingSettings implements Cloneable {
if (downloadSourcesAutomatically != that.downloadSourcesAutomatically) return false;
if (downloadAnnotationsAutomatically != that.downloadAnnotationsAutomatically) return false;
if (autoDetectCompiler != that.autoDetectCompiler) return false;
+ if (importToTreeStructure != that.importToTreeStructure) return false;
//if (lookForNested != that.lookForNested) return false;
if (keepSourceFolders != that.keepSourceFolders) return false;
if (excludeTargetFolder != that.excludeTargetFolder) return false;
@@ -318,6 +331,8 @@ public class MavenImportingSettings implements Cloneable {
result <<= 1;
if (autoDetectCompiler) result++;
result <<= 1;
+ if (importToTreeStructure) result++;
+ result <<= 1;
result = 31 * result + (updateFoldersOnImportPhase != null ? updateFoldersOnImportPhase.hashCode() : 0);
result = 31 * result + dedicatedModuleDir.hashCode();
@@ -359,10 +374,18 @@ public class MavenImportingSettings implements Cloneable {
}
}
+ private void fireUpdateAllProjectStructure() {
+ for (Listener each : myListeners) {
+ each.updateAllProjectStructure();
+ }
+ }
+
public interface Listener {
void createModuleGroupsChanged();
void createModuleForAggregatorsChanged();
+
+ void updateAllProjectStructure();
}
}
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.form b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.form
index 86e66197572e..abb65107ccfd 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.form
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.form
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="org.jetbrains.idea.maven.project.MavenImportingSettingsForm">
- <grid id="27dc6" binding="myPanel" layout-manager="GridLayoutManager" row-count="24" column-count="4" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
+ <grid id="27dc6" binding="myPanel" layout-manager="GridLayoutManager" row-count="25" column-count="4" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
- <xy x="20" y="20" width="895" height="767"/>
+ <xy x="20" y="20" width="895" height="795"/>
</constraints>
<properties/>
<border type="none"/>
@@ -43,7 +43,7 @@
</component>
<component id="22b1c" class="com.intellij.ui.components.JBLabel">
<constraints>
- <grid row="13" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="3" use-parent-layout="false"/>
+ <grid row="14" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="3" use-parent-layout="false"/>
</constraints>
<properties>
<componentStyle value="SMALL"/>
@@ -54,7 +54,7 @@
<grid id="49dc8" layout-manager="GridLayoutManager" row-count="1" column-count="5" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="10" left="0" bottom="0" right="0"/>
<constraints>
- <grid row="15" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
+ <grid row="16" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<focusable value="true"/>
@@ -111,7 +111,7 @@
<grid id="d7645" binding="myAdditionalSettingsPanel" layout-manager="GridLayoutManager" row-count="1" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="15" left="0" bottom="0" right="0"/>
<constraints>
- <grid row="22" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="8" fill="2" indent="0" use-parent-layout="false"/>
+ <grid row="23" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="8" fill="2" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
@@ -119,7 +119,7 @@
</grid>
<hspacer id="d45a7">
<constraints>
- <grid row="15" column="3" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
+ <grid row="16" column="3" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
</hspacer>
<grid id="eca06" layout-manager="GridLayoutManager" row-count="1" column-count="3" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
@@ -188,13 +188,13 @@
</grid>
<vspacer id="5d738">
<constraints>
- <grid row="23" column="0" row-span="1" col-span="3" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
+ <grid row="24" column="0" row-span="1" col-span="3" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
</constraints>
</vspacer>
<grid id="34bc4" layout-manager="GridLayoutManager" row-count="1" column-count="3" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
- <grid row="12" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
+ <grid row="13" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
@@ -223,7 +223,7 @@
</grid>
<vspacer id="aa40b">
<constraints>
- <grid row="11" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false">
+ <grid row="12" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false">
<preferred-size width="-1" height="10"/>
</grid>
</constraints>
@@ -238,7 +238,7 @@
<grid id="f9c12" layout-manager="GridLayoutManager" row-count="1" column-count="3" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
- <grid row="10" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
+ <grid row="11" column="0" row-span="1" col-span="3" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
@@ -275,7 +275,7 @@
</component>
<component id="2e377" class="javax.swing.JLabel">
<constraints>
- <grid row="16" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
+ <grid row="17" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<labelFor value="83bca"/>
@@ -285,7 +285,7 @@
</component>
<component id="83bca" class="javax.swing.JTextField" binding="myDependencyTypes">
<constraints>
- <grid row="16" column="1" row-span="1" col-span="2" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
+ <grid row="17" column="1" row-span="1" col-span="2" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<preferred-size width="60" height="-1"/>
</grid>
</constraints>
@@ -296,7 +296,7 @@
</component>
<component id="d634c" class="com.intellij.ui.components.JBLabel">
<constraints>
- <grid row="17" column="1" row-span="1" col-span="2" vsize-policy="0" hsize-policy="0" anchor="9" fill="0" indent="0" use-parent-layout="false"/>
+ <grid row="18" column="1" row-span="1" col-span="2" vsize-policy="0" hsize-policy="0" anchor="9" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<componentStyle value="SMALL"/>
@@ -308,21 +308,21 @@
</component>
<vspacer id="e1c6c">
<constraints>
- <grid row="18" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false">
+ <grid row="19" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false">
<preferred-size width="-1" height="10"/>
</grid>
</constraints>
</vspacer>
<vspacer id="9decb">
<constraints>
- <grid row="14" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false">
+ <grid row="15" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false">
<preferred-size width="-1" height="10"/>
</grid>
</constraints>
</vspacer>
<component id="eaeb7" class="com.intellij.ui.components.JBLabel">
<constraints>
- <grid row="19" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
+ <grid row="20" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text resource-bundle="messages/MavenConfigurableBundle" key="maven.settings.importing.vm.options"/>
@@ -330,13 +330,13 @@
</component>
<component id="1e30e" class="com.intellij.ui.components.JBTextField" binding="myVMOptionsForImporter">
<constraints>
- <grid row="19" column="1" row-span="1" col-span="2" vsize-policy="3" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
+ <grid row="20" column="1" row-span="1" col-span="2" vsize-policy="3" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
</component>
<component id="30c8a" class="com.intellij.ui.components.JBLabel">
<constraints>
- <grid row="21" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
+ <grid row="22" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text resource-bundle="messages/MavenConfigurableBundle" key="maven.settings.importing.jdk"/>
@@ -344,7 +344,7 @@
</component>
<component id="89c29" class="com.intellij.openapi.externalSystem.service.ui.ExternalSystemJdkComboBox" binding="myJdkForImporterComboBox">
<constraints>
- <grid row="21" column="1" row-span="1" col-span="2" vsize-policy="2" hsize-policy="2" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
+ <grid row="22" column="1" row-span="1" col-span="2" vsize-policy="2" hsize-policy="2" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<model/>
@@ -361,7 +361,7 @@
</component>
<component id="6f594" class="com.intellij.ui.components.JBLabel">
<constraints>
- <grid row="20" column="1" row-span="1" col-span="2" vsize-policy="0" hsize-policy="0" anchor="9" fill="0" indent="0" use-parent-layout="false"/>
+ <grid row="21" column="1" row-span="1" col-span="2" vsize-policy="0" hsize-policy="0" anchor="9" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<componentStyle value="SMALL"/>
@@ -371,6 +371,15 @@
<text resource-bundle="messages/MavenConfigurableBundle" key="maven.settings.vm.options.tooltip"/>
</properties>
</component>
+ <component id="28031" class="javax.swing.JCheckBox" binding="myImportToTreeStructureCheckBox">
+ <constraints>
+ <grid row="10" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
+ </constraints>
+ <properties>
+ <text resource-bundle="messages/MavenConfigurableBundle" key="maven.settings.importing.tree.structure"/>
+ <toolTipText resource-bundle="messages/MavenConfigurableBundle" key="maven.settings.importing.tree.structure.tooltip"/>
+ </properties>
+ </component>
</children>
</grid>
<buttonGroups>
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.java
index 660e5ded1007..9ca434e7b6e3 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenImportingSettingsForm.java
@@ -42,6 +42,7 @@ public class MavenImportingSettingsForm {
private JCheckBox myDownloadSourcesCheckBox;
private JCheckBox myDownloadDocsCheckBox;
private JCheckBox myDownloadAnnotationsCheckBox;
+ private JCheckBox myImportToTreeStructureCheckBox;
private JPanel myAdditionalSettingsPanel;
private JComboBox<MavenImportingSettings.GeneratedSourcesFolder> myGeneratedSourcesComboBox;
@@ -108,6 +109,7 @@ public class MavenImportingSettingsForm {
data.setCreateModulesForAggregators(myCreateModulesForAggregators.isSelected());
data.setCreateModuleGroups(myCreateGroupsCheckBox.isSelected());
+ data.setImportToTreeStructure(myImportToTreeStructureCheckBox.isSelected());
data.setKeepSourceFolders(myKeepSourceFoldersCheckBox.isSelected());
data.setExcludeTargetFolder(myExcludeTargetFolderCheckBox.isSelected());
@@ -147,6 +149,7 @@ public class MavenImportingSettingsForm {
}
myExcludeTargetFolderCheckBox.setSelected(data.isExcludeTargetFolder());
myUseMavenOutputCheckBox.setSelected(data.isUseMavenOutput());
+ myImportToTreeStructureCheckBox.setSelected(data.isImportToTreeStructure());
myUpdateFoldersOnImportPhaseComboBox.setSelectedItem(data.getUpdateFoldersOnImportPhase());
myGeneratedSourcesComboBox.setSelectedItem(data.getGeneratedSourcesFolder());
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java
index 07a85d000ad4..1d3ff3009565 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java
@@ -409,6 +409,11 @@ public final class MavenProjectsManager extends MavenSimpleProjectComponent
public void createModuleForAggregatorsChanged() {
scheduleImportSettings();
}
+
+ @Override
+ public void updateAllProjectStructure() {
+ scheduleAllProjectImport();
+ }
});
}
@@ -1135,6 +1140,21 @@ public final class MavenProjectsManager extends MavenSimpleProjectComponent
return result;
}
+ private void scheduleAllProjectImport() {
+ runWhenFullyOpen(() -> myImportingQueue.queue(new Update(this) {
+ @Override
+ public void run() {
+ synchronized (myImportingDataLock) {
+ for (MavenProject project : getProjectsTree().getProjects()) {
+ myProjectsToImport.put(project, MavenProjectChanges.ALL);
+ }
+ }
+ importProjects();
+ fireProjectImportCompleted();
+ }
+ }));
+ }
+
@TestOnly
public void scheduleImportInTests(List<VirtualFile> projectFiles) {
List<Pair<MavenProject, MavenProjectChanges>> toImport = new ArrayList<>();
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManagerWatcher.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManagerWatcher.java
index 379598095457..b932e9fe668e 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManagerWatcher.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManagerWatcher.java
@@ -210,7 +210,7 @@ public class MavenProjectsManagerWatcher {
@Override
public void moduleRemoved(@NotNull Project project, @NotNull Module module) {
if (Registry.is("maven.modules.do.not.ignore.on.delete")) return;
- if (MavenProjectImporter.isImportToTreeStructureEnabled()) return;
+ if (MavenProjectImporter.isImportToTreeStructureEnabled(project)) return;
MavenProjectsManager projectsManager = MavenProjectsManager.getInstance(myProject);
MavenProject mavenProject = projectsManager.findProject(module);
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenResolveResultProcessor.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenResolveResultProcessor.java
index 006e8933803f..34431465fa9c 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenResolveResultProcessor.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenResolveResultProcessor.java
@@ -6,6 +6,7 @@ import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.idea.maven.buildtool.MavenSyncConsole;
+import org.jetbrains.idea.maven.execution.SyncBundle;
import org.jetbrains.idea.maven.externalSystemIntegration.output.importproject.quickfixes.RepositoryBlockedSyncIssue;
import org.jetbrains.idea.maven.model.MavenArtifact;
import org.jetbrains.idea.maven.model.MavenProjectProblem;
@@ -36,6 +37,26 @@ public class MavenResolveResultProcessor {
}
}
+ public static void notifySyncForProblem(@NotNull Project project, @NotNull MavenProjectProblem problem) {
+ MavenSyncConsole syncConsole = MavenProjectsManager.getInstance(project).getSyncConsole();
+ String message = problem.getDescription();
+ if (message == null) return;
+
+ if (message.contains(BLOCKED_MIRROR_FOR_REPOSITORIES)) {
+ BuildIssue buildIssue = RepositoryBlockedSyncIssue.getIssue(project, problem.getDescription());
+ syncConsole.getListener(MavenServerProgressIndicator.ResolveType.DEPENDENCY)
+ .showBuildIssue(buildIssue.getTitle(), buildIssue);
+ } else if (problem.getMavenArtifact() == null) {
+ MavenProjectsManager.getInstance(project).getSyncConsole()
+ .addWarning(SyncBundle.message("maven.sync.annotation.processor.problem"), message);
+ }
+
+ if (problem.getMavenArtifact() != null) {
+ syncConsole.getListener(MavenServerProgressIndicator.ResolveType.DEPENDENCY)
+ .showArtifactBuildIssue(problem.getMavenArtifact().getMavenId().getKey(), message);
+ }
+ }
+
public static void notifyMavenProblems(@NotNull Project project) {
MavenProjectsManager projectsManager = MavenProjectsManager.getInstance(project);
MavenSyncConsole syncConsole = projectsManager.getSyncConsole();
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/DummyMavenServerConnector.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/DummyMavenServerConnector.kt
index 59fff36e47b3..bf7cad1448e2 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/DummyMavenServerConnector.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/DummyMavenServerConnector.kt
@@ -216,6 +216,12 @@ class DummyEmbedder(val myProject: Project) : MavenServerEmbedder {
return emptyList()
}
+ override fun resolveArtifactTransitively(artifacts: MutableList<MavenArtifactInfo>,
+ remoteRepositories: MutableList<MavenRemoteRepository>,
+ token: MavenToken?): MavenArtifactResolveResult {
+ return MavenArtifactResolveResult(emptyList(), null)
+ }
+
override fun resolvePlugin(plugin: MavenPlugin,
repositories: List<MavenRemoteRepository>,
nativeMavenProjectId: Int,
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/MavenEmbedderWrapper.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/MavenEmbedderWrapper.java
index d53314d4c5b7..1ef7cdcdd131 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/MavenEmbedderWrapper.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/server/MavenEmbedderWrapper.java
@@ -227,6 +227,10 @@ public abstract class MavenEmbedderWrapper extends MavenRemoteObjectWrapper<Mave
return performCancelable(() -> getOrCreateWrappee().resolve(info, remoteRepositories, ourToken));
}
+ /**
+ * @deprecated use {@link MavenEmbedderWrapper#resolveArtifactTransitively()}
+ */
+ @Deprecated
@NotNull
public List<MavenArtifact> resolveTransitively(
@NotNull final List<MavenArtifactInfo> artifacts,
@@ -236,6 +240,13 @@ public abstract class MavenEmbedderWrapper extends MavenRemoteObjectWrapper<Mave
}
@NotNull
+ public MavenArtifactResolveResult resolveArtifactTransitively(
+ @NotNull final List<MavenArtifactInfo> artifacts,
+ @NotNull final List<MavenRemoteRepository> remoteRepositories) throws MavenProcessCanceledException {
+ return performCancelable(() -> getOrCreateWrappee().resolveArtifactTransitively(artifacts, remoteRepositories, ourToken));
+ }
+
+ @NotNull
public List<String> retrieveVersions(@NotNull final String groupId,
@NotNull final String artifactId,
@NotNull final List<MavenRemoteRepository> remoteRepositories) throws MavenProcessCanceledException {
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/statistics/MavenSettingsCollector.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/statistics/MavenSettingsCollector.kt
index 4f1b19c127e0..bc8ca9394b4d 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/statistics/MavenSettingsCollector.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/statistics/MavenSettingsCollector.kt
@@ -11,6 +11,7 @@ import com.intellij.openapi.project.Project
import com.intellij.openapi.util.Version
import org.jetbrains.idea.maven.execution.MavenExternalParameters.resolveMavenHome
import org.jetbrains.idea.maven.execution.MavenRunner
+import org.jetbrains.idea.maven.project.MavenGeneralSettings
import org.jetbrains.idea.maven.project.MavenImportingSettings
import org.jetbrains.idea.maven.project.MavenProjectsManager
import org.jetbrains.idea.maven.server.MavenDistributionsCache
@@ -43,7 +44,7 @@ class MavenSettingsCollector : ProjectUsagesCollector() {
@Suppress("DEPRECATION")
usages.add(newMetric("loggingLevel", generalSettings.loggingLevel))
try {
- val mavenWrapperFile = getMavenWrapper(manager, project)
+ val mavenWrapperFile = getMavenWrapper(manager, generalSettings, project)
var mavenVersion = MavenUtil.getMavenVersion(resolveMavenHome(generalSettings, project, null, mavenWrapperFile))
mavenVersion = mavenVersion?.let { Version.parseVersion(it)?.toCompactString() } ?: "unknown"
usages.add(newMetric("mavenVersion", mavenVersion))
@@ -98,8 +99,9 @@ class MavenSettingsCollector : ProjectUsagesCollector() {
}
private fun getMavenWrapper(manager: MavenProjectsManager,
+ generalSettings: MavenGeneralSettings,
project: Project): File? {
- return if (manager.rootProjects.size == 1)
+ return if (MavenUtil.isWrapper(generalSettings) && manager.rootProjects.size == 1)
MavenDistributionsCache.getInstance(project).getWrapper(manager.rootProjects.first().directory)?.mavenHome?.toFile() else null
}
}
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenTreeStructureProvider.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenTreeStructureProvider.kt
index 1d839e22176c..e3ffe81b4b29 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenTreeStructureProvider.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenTreeStructureProvider.kt
@@ -43,7 +43,7 @@ class MavenTreeStructureProvider : TreeStructureProvider, DumbAware {
}
}
- if (isImportToTreeStructureEnabled() && child is PsiDirectoryNode && parent is PsiDirectoryNode) {
+ if (isImportToTreeStructureEnabled(project) && child is PsiDirectoryNode && parent is PsiDirectoryNode) {
childToAdd = getMavenModuleNode(project, child, settings) ?: child
}
modifiedChildren.add(childToAdd)
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.java
index 98fb0ceb629c..ed7c8cdbb226 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.java
@@ -1573,7 +1573,14 @@ public class MavenUtil {
MavenProjectsManager projectsManager = MavenProjectsManager.getInstance(project);
Set<MavenRemoteRepository> repositories = projectsManager.getRemoteRepositories();
MavenEmbeddersManager embeddersManager = projectsManager.getEmbeddersManager();
- MavenEmbedderWrapper embedderWrapper = embeddersManager.getEmbedder(MavenEmbeddersManager.FOR_POST_PROCESSING, EMPTY, EMPTY);
+
+ String baseDir = EMPTY;
+ List<MavenProject> projects = projectsManager.getRootProjects();
+ if (!projects.isEmpty()) {
+ baseDir = getBaseDir(projects.get(0).getDirectoryFile()).toString();
+ }
+
+ MavenEmbedderWrapper embedderWrapper = embeddersManager.getEmbedder(MavenEmbeddersManager.FOR_POST_PROCESSING, baseDir, baseDir);
try {
Set<MavenRemoteRepository> resolvedRepositories = embedderWrapper.resolveRepositories(repositories);
return resolvedRepositories.isEmpty() ? repositories : resolvedRepositories;
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/AbstractMavenModuleBuilder.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/AbstractMavenModuleBuilder.java
index 11110b1daedf..70d4d3cdc27c 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/AbstractMavenModuleBuilder.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/AbstractMavenModuleBuilder.java
@@ -87,7 +87,7 @@ public abstract class AbstractMavenModuleBuilder extends ModuleBuilder implement
private void setMavenModuleFilePath(@NotNull Project project, @NotNull String moduleName) {
if (myParentProject == null) return;
- if (!MavenProjectImporter.isImportToTreeStructureEnabled()) return;
+ if (!MavenProjectImporter.isImportToTreeStructureEnabled(project)) return;
String parentModuleName = MavenProjectImportContextProvider.getModuleName(myParentProject, project);
if (StringUtil.isNotEmpty(parentModuleName)) {
String moduleFilePath = project.getBasePath() + File.separator + parentModuleName + "." + moduleName + ModuleFileType.DOT_DEFAULT_EXTENSION;
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/InternalMavenModuleBuilder.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/InternalMavenModuleBuilder.java
index a8b3badd7a98..599d29ce3f12 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/InternalMavenModuleBuilder.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/InternalMavenModuleBuilder.java
@@ -29,7 +29,8 @@ public final class InternalMavenModuleBuilder extends AbstractMavenModuleBuilder
@Override
protected void setupModule(Module module) throws ConfigurationException {
super.setupModule(module);
- if (MavenProjectImporter.isImportToWorkspaceModelEnabled() || MavenProjectImporter.isImportToTreeStructureEnabled()) {
+ if (MavenProjectImporter.isImportToWorkspaceModelEnabled()
+ || MavenProjectImporter.isImportToTreeStructureEnabled(module.getProject())) {
//this is needed to ensure that dummy module created here will be correctly replaced by real ModuleEntity when import finishes
ExternalSystemModulePropertyManager.getInstance(module).setMavenized(true);
}
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenModuleBuilderHelper.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenModuleBuilderHelper.java
index 0482b1210296..33ecd554c33b 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenModuleBuilderHelper.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenModuleBuilderHelper.java
@@ -2,6 +2,8 @@
package org.jetbrains.idea.maven.wizards;
import com.intellij.ide.util.EditorHelper;
+import com.intellij.openapi.GitSilentFileAdder;
+import com.intellij.openapi.GitSilentFileAdderProvider;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.editor.Document;
@@ -81,11 +83,14 @@ public class MavenModuleBuilderHelper {
? new PsiFile[]{getPsiFile(project, myAggregatorProject.getFile())}
: PsiFile.EMPTY_ARRAY;
final VirtualFile pom = WriteCommandAction.writeCommandAction(project, psiFiles).withName(myCommandName).compute(() -> {
- VirtualFile file = null;
+ GitSilentFileAdder vcsFileAdder = GitSilentFileAdderProvider.create(project);
+ VirtualFile file = null;
+ try {
try {
file = root.findChild(MavenConstants.POM_XML);
if (file != null) file.delete(this);
file = root.createChildData(this, MavenConstants.POM_XML);
+ vcsFileAdder.markFileForAdding(file);
MavenUtil.runOrApplyMavenProjectFileTemplate(project, file, myProjectId, isInteractive);
}
catch (IOException e) {
@@ -94,19 +99,23 @@ public class MavenModuleBuilderHelper {
}
updateProjectPom(project, file);
+ }
+ finally {
+ vcsFileAdder.finish();
+ }
- if (myAggregatorProject != null) {
- VirtualFile aggregatorProjectFile = myAggregatorProject.getFile();
- MavenDomProjectModel model = MavenDomUtil.getMavenDomProjectModel(project, aggregatorProjectFile);
- if (model != null) {
- model.getPackaging().setStringValue("pom");
- MavenDomModule module = model.getModules().addModule();
- module.setValue(getPsiFile(project, file));
- unblockAndSaveDocuments(project, aggregatorProjectFile);
- }
+ if (myAggregatorProject != null) {
+ VirtualFile aggregatorProjectFile = myAggregatorProject.getFile();
+ MavenDomProjectModel model = MavenDomUtil.getMavenDomProjectModel(project, aggregatorProjectFile);
+ if (model != null) {
+ model.getPackaging().setStringValue("pom");
+ MavenDomModule module = model.getModules().addModule();
+ module.setValue(getPsiFile(project, file));
+ unblockAndSaveDocuments(project, aggregatorProjectFile);
}
- return file;
- });
+ }
+ return file;
+ });
if (pom == null) return;
@@ -219,23 +228,32 @@ public class MavenModuleBuilderHelper {
@VisibleForTesting
void copyGeneratedFiles(File workingDir, VirtualFile pom, Project project, String artifactId) {
+ GitSilentFileAdder vcsFileAdder = GitSilentFileAdderProvider.create(project);
try {
- artifactId = artifactId != null ? artifactId : myProjectId.getArtifactId();
- if (artifactId != null) {
- FileUtil.copyDir(new File(workingDir, artifactId), new File(pom.getParent().getPath()));
+ try {
+ artifactId = artifactId != null ? artifactId : myProjectId.getArtifactId();
+ if (artifactId != null) {
+ File sourceDir = new File(workingDir, artifactId);
+ File targetDir = new File(pom.getParent().getPath());
+ vcsFileAdder.markFileForAdding(targetDir, true); // VFS is refreshed below
+ FileUtil.copyDir(sourceDir, targetDir);
+ }
+ FileUtil.delete(workingDir);
+ }
+ catch (Exception e) {
+ showError(project, e);
+ return;
}
- FileUtil.delete(workingDir);
- }
- catch (Exception e) {
- showError(project, e);
- return;
- }
- pom.getParent().refresh(false, false);
- pom.refresh(false, false);
- updateProjectPom(project, pom);
+ pom.getParent().refresh(false, false);
+ pom.refresh(false, false);
+ updateProjectPom(project, pom);
- LocalFileSystem.getInstance().refreshWithoutFileWatcher(true);
+ LocalFileSystem.getInstance().refreshWithoutFileWatcher(true);
+ }
+ finally {
+ vcsFileAdder.finish();
+ }
}
private static void showError(Project project, Throwable e) {
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenProjectBuilder.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenProjectBuilder.java
index 51b03660d03e..51698c5d13e3 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenProjectBuilder.java
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/MavenProjectBuilder.java
@@ -253,7 +253,7 @@ public final class MavenProjectBuilder extends ProjectImportBuilder<MavenProject
modifiableModel.addContentEntry(contentRoot);
modifiableModel.commit();
renameModuleToProjectName(project, module, root);
- if (MavenProjectImporter.isImportToWorkspaceModelEnabled() || MavenProjectImporter.isImportToTreeStructureEnabled()) {
+ if (MavenProjectImporter.isImportToWorkspaceModelEnabled() || MavenProjectImporter.isImportToTreeStructureEnabled(project)) {
//this is needed to ensure that dummy module created here will be correctly replaced by real ModuleEntity when import finishes
ExternalSystemModulePropertyManager.getInstance(module).setMavenized(true);
}
diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/archetype/MavenArchetypeNewProjectWizard.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/archetype/MavenArchetypeNewProjectWizard.kt
index 0496a67d634c..09d85b16c554 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/archetype/MavenArchetypeNewProjectWizard.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/wizards/archetype/MavenArchetypeNewProjectWizard.kt
@@ -5,10 +5,11 @@ import com.intellij.codeInsight.lookup.impl.LookupCellRenderer.REGULAR_MATCHED_A
import com.intellij.execution.util.setEmptyState
import com.intellij.execution.util.setVisibleRowCount
import com.intellij.icons.AllIcons
-import com.intellij.ide.projectWizard.generators.BuildSystemJavaNewProjectWizardData.Companion.buildSystem
import com.intellij.ide.projectWizard.generators.AssetsNewProjectWizardStep
+import com.intellij.ide.projectWizard.generators.BuildSystemJavaNewProjectWizardData.Companion.buildSystem
import com.intellij.ide.projectWizard.generators.JavaNewProjectWizard
import com.intellij.ide.starters.local.StandardAssetsProvider
+import com.intellij.ide.util.projectWizard.ModuleBuilder
import com.intellij.ide.util.projectWizard.WizardContext
import com.intellij.ide.wizard.*
import com.intellij.ide.wizard.GitNewProjectWizardData.Companion.gitData
@@ -47,6 +48,7 @@ import com.intellij.ui.layout.*
import com.intellij.util.concurrency.AppExecutorUtil
import com.intellij.util.containers.ContainerUtil.putIfNotNull
import com.intellij.util.text.nullize
+import com.intellij.util.ui.update.UiNotifyConnector
import icons.OpenapiIcons
import org.jetbrains.idea.maven.indices.MavenArchetypeManager
import org.jetbrains.idea.maven.indices.archetype.MavenCatalog
@@ -168,7 +170,7 @@ class MavenArchetypeNewProjectWizard : GeneratorNewProjectWizard {
}.resizableRow()
}.resizableRow()
}
- reloadCatalogs()
+ UiNotifyConnector.doWhenFirstShown(catalogComboBox) { reloadCatalogs() }
}
override fun setupAdvancedSettingsUI(builder: Panel) {
@@ -452,7 +454,9 @@ class MavenArchetypeNewProjectWizard : GeneratorNewProjectWizard {
}
}
- class Builder : GeneratorNewProjectWizardBuilderAdapter(MavenArchetypeNewProjectWizard())
+ class Builder : GeneratorNewProjectWizardBuilderAdapter(MavenArchetypeNewProjectWizard()) {
+ override fun getWeight(): Int = JVM_WEIGHT + 100
+ }
private class AssetsStep(parent: NewProjectWizardStep) : AssetsNewProjectWizardStep(parent) {
override fun setupAssets(project: Project) {
diff --git a/plugins/maven/src/main/resources/META-INF/plugin.xml b/plugins/maven/src/main/resources/META-INF/plugin.xml
index e091f5477b4b..356b6e570207 100644
--- a/plugins/maven/src/main/resources/META-INF/plugin.xml
+++ b/plugins/maven/src/main/resources/META-INF/plugin.xml
@@ -312,10 +312,6 @@
<registryKey key="maven.consumer.pom.support" defaultValue="false"
description="Enable Maven consumer pom support"/>
- <registryKey key="maven.import.tree.structure" defaultValue="false"
- description="Enable experimental implementation of Maven import module tree structure with split main and test modules. See IDEA-85478 for details."/>
-
-
<intentionAction>
<className>org.jetbrains.idea.maven.dom.converters.MavenArtifactCoordinatesConverter$MyUpdateIndicesIntention</className>
</intentionAction>
diff --git a/plugins/maven/src/main/resources/messages/MavenConfigurableBundle.properties b/plugins/maven/src/main/resources/messages/MavenConfigurableBundle.properties
index 45d768658712..996709939fde 100644
--- a/plugins/maven/src/main/resources/messages/MavenConfigurableBundle.properties
+++ b/plugins/maven/src/main/resources/messages/MavenConfigurableBundle.properties
@@ -35,6 +35,9 @@ maven.settings.importing.create.module.groups=Create module &groups for multi-mo
maven.settings.importing.search.recursively=&Search for projects recursively
maven.settings.importing.use.output.directories=Use Maven &output directories
maven.settings.importing.use.output.directories.tooltip=IDEA compiler will use output directory defined in maven model (target/classes by default)
+maven.settings.importing.tree.structure=Create separate &modules for production and test roots (experimental)
+maven.settings.importing.tree.structure.tooltip=Create a tree structure of the project in 'Project structure...' \
+ with separate test modules if necessary
maven.settings.importing.generated.source.folders=Generated sources folders:
maven.settings.importing.phase.for.source.updates=Phase to be used for folders &update:
maven.settings.importing.phase.for.source.updates.notes=<html>IntelliJ IDEA needs to execute one of the listed phases in order to \
diff --git a/plugins/maven/src/main/resources/messages/MavenSyncBundle.properties b/plugins/maven/src/main/resources/messages/MavenSyncBundle.properties
index a41092d177b8..67343dafd1d1 100644
--- a/plugins/maven/src/main/resources/messages/MavenSyncBundle.properties
+++ b/plugins/maven/src/main/resources/messages/MavenSyncBundle.properties
@@ -26,7 +26,7 @@ maven.sync.quickfixes.repository.blocked=Since Maven 3.8.1 http repositories are
maven.sync.quickfixes.repository.blocked.show.settings= - Check that Maven <a href="{0}">settings.xml</a> does not contain http repositories
maven.sync.quickfixes.repository.blocked.find.repository= - Check that Maven <a href="{0}">pom files</a> do not contain http repository {1}
maven.sync.quickfixes.repository.blocked.add.mirror= - Add a mirror(s) for {0} that allows http url in the Maven <a href="{1}">settings.xml</a>
-maven.sync.quickfixes.repository.blocked.downgrade= - Downgrade Maven to version before 3.8.1 in <a href="{0}">settings</a>
+maven.sync.quickfixes.repository.blocked.downgrade= - Downgrade Maven to version 3.8.1 or earlier in <a href="{0}">settings</a>
maven.sync.quickfixes.maven.jdk.version.title=Incompatible Maven JDK
diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/importing/tree/MavenProjectTreeImporterTest.java b/plugins/maven/src/test/java/org/jetbrains/idea/maven/importing/tree/MavenProjectTreeImporterTest.java
index 8ced256f2d0b..94267b80a8a7 100644
--- a/plugins/maven/src/test/java/org/jetbrains/idea/maven/importing/tree/MavenProjectTreeImporterTest.java
+++ b/plugins/maven/src/test/java/org/jetbrains/idea/maven/importing/tree/MavenProjectTreeImporterTest.java
@@ -2,8 +2,8 @@
package org.jetbrains.idea.maven.importing.tree;
import com.intellij.maven.testFramework.MavenMultiVersionImportingTestCase;
-import com.intellij.openapi.util.registry.Registry;
import com.intellij.util.containers.ContainerUtil;
+import org.jetbrains.idea.maven.project.MavenProjectsManager;
import org.junit.Assert;
import org.junit.Test;
@@ -15,13 +15,7 @@ public class MavenProjectTreeImporterTest extends MavenMultiVersionImportingTest
@Override
protected void setUp() throws Exception {
super.setUp();
- Registry.get("maven.import.tree.structure").setValue(true);
- }
-
- @Override
- protected void tearDown() throws Exception {
- super.tearDown();
- Registry.get("maven.import.tree.structure").setValue(false);
+ MavenProjectsManager.getInstance(myProject).getImportingSettings().setImportToTreeStructure(true);
}
@Test
diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/project/MavenSettingsTest.java b/plugins/maven/src/test/java/org/jetbrains/idea/maven/project/MavenSettingsTest.java
index 806c397299c2..c0b206b6dde2 100644
--- a/plugins/maven/src/test/java/org/jetbrains/idea/maven/project/MavenSettingsTest.java
+++ b/plugins/maven/src/test/java/org/jetbrains/idea/maven/project/MavenSettingsTest.java
@@ -17,6 +17,7 @@ package org.jetbrains.idea.maven.project;
import com.intellij.configurationStore.JdomSerializer;
import com.intellij.configurationStore.XmlSerializer;
+import com.intellij.maven.testFramework.MavenTestCase;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.components.ComponentManager;
import com.intellij.openapi.externalSystem.autoimport.AutoImportProjectTrackerSettings;
@@ -28,7 +29,6 @@ import com.intellij.testFramework.ServiceContainerUtil;
import com.intellij.util.xmlb.SkipDefaultsSerializationFilter;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;
-import com.intellij.maven.testFramework.MavenTestCase;
import org.jetbrains.idea.maven.utils.MavenSettings;
import static com.intellij.configurationStore.DefaultStateSerializerKt.deserializeState;
@@ -65,6 +65,10 @@ public class MavenSettingsTest extends MavenTestCase {
public void createModuleForAggregatorsChanged() {
log[0] += "changed ";
}
+
+ @Override
+ public void updateAllProjectStructure() {
+ }
});
s.setCreateModulesForAggregators(true);
diff --git a/plugins/ui-designer/src/com/intellij/uiDesigner/palette/Palette.java b/plugins/ui-designer/src/com/intellij/uiDesigner/palette/Palette.java
index 7a3bd922f6d4..007491214037 100644
--- a/plugins/ui-designer/src/com/intellij/uiDesigner/palette/Palette.java
+++ b/plugins/ui-designer/src/com/intellij/uiDesigner/palette/Palette.java
@@ -139,6 +139,16 @@ public final class Palette implements PersistentStateComponent<Element>, Disposa
}
}
+ @Override
+ public void noStateLoaded() {
+ try {
+ loadState(Objects.requireNonNull(loadDefaultPalette()));
+ }
+ catch (Exception e) {
+ LOG.error(e);
+ }
+ }
+
/**
* Adds specified listener.
*/
@@ -156,7 +166,7 @@ public final class Palette implements PersistentStateComponent<Element>, Disposa
private void upgradePalette() {
// load new components from the predefined Palette2.xml
try {
- Element rootElement = JDOMUtil.load(getClass().getClassLoader().getResourceAsStream("Palette2.xml"));
+ Element rootElement = loadDefaultPalette();
for (Element groupElement : Objects.requireNonNull(rootElement).getChildren(ELEMENT_GROUP)) {
for (GroupItem group : myGroups) {
if (group.getName().equals(groupElement.getAttributeValue(ATTRIBUTE_NAME))) {
@@ -171,6 +181,10 @@ public final class Palette implements PersistentStateComponent<Element>, Disposa
}
}
+ private @Nullable Element loadDefaultPalette() throws Exception {
+ return JDOMUtil.load(getClass().getClassLoader().getResourceAsStream("Palette2.xml"));
+ }
+
private void upgradeGroup(final GroupItem group, final Element groupElement) {
for (Element itemElement : groupElement.getChildren(ELEMENT_ITEM)) {
if (itemElement.getAttributeValue(ATTRIBUTE_SINCE_VERSION, "").equals("2")) {
diff --git a/python/build/testSrc/org/jetbrains/intellij/build/pycharm/PyCharmCommunityBuildTest.kt b/python/build/testSrc/org/jetbrains/intellij/build/pycharm/PyCharmCommunityBuildTest.kt
index f7eb7ef0f6c9..abf2719b332d 100644
--- a/python/build/testSrc/org/jetbrains/intellij/build/pycharm/PyCharmCommunityBuildTest.kt
+++ b/python/build/testSrc/org/jetbrains/intellij/build/pycharm/PyCharmCommunityBuildTest.kt
@@ -1,9 +1,8 @@
-// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.intellij.build.pycharm
import com.intellij.openapi.application.PathManager
import org.jetbrains.intellij.build.BuildOptions
-import org.jetbrains.intellij.build.ProprietaryBuildTools
import org.jetbrains.intellij.build.testFramework.runTestBuild
import org.junit.Test
@@ -13,9 +12,9 @@ class PyCharmCommunityBuildTest {
val homePath = PathManager.getHomePathFor(javaClass)!!
val communityHomePath = "$homePath/community"
runTestBuild(
- homePath = communityHomePath, communityHomePath = communityHomePath,
+ homePath = communityHomePath,
+ communityHomePath = communityHomePath,
productProperties = PyCharmCommunityProperties(communityHomePath),
- buildTools = ProprietaryBuildTools.DUMMY
) {
it.projectClassesOutputDirectory = System.getProperty(BuildOptions.PROJECT_CLASSES_OUTPUT_DIRECTORY_PROPERTY)
?: "$homePath/out/classes"
diff --git a/python/helpers/pydev/_pydev_bundle/pydev_console_utils.py b/python/helpers/pydev/_pydev_bundle/pydev_console_utils.py
index 86e139047044..55a5bd66070a 100644
--- a/python/helpers/pydev/_pydev_bundle/pydev_console_utils.py
+++ b/python/helpers/pydev/_pydev_bundle/pydev_console_utils.py
@@ -375,7 +375,7 @@ class BaseInterpreterInterface(BaseCodeExecutor):
from _pydevd_bundle.pydevd_constants import set_thread_id
from _pydev_bundle import pydev_localhost
- set_thread_id(threading.currentThread(), "console_main")
+ set_thread_id(threading.current_thread(), "console_main")
self.orig_find_frame = pydevd_vars.find_frame
pydevd_vars.find_frame = self._findFrame
diff --git a/python/helpers/pydev/_pydev_bundle/pydev_log.py b/python/helpers/pydev/_pydev_bundle/pydev_log.py
index 40b562deb39a..089e16d38198 100644
--- a/python/helpers/pydev/_pydev_bundle/pydev_log.py
+++ b/python/helpers/pydev/_pydev_bundle/pydev_log.py
@@ -1,7 +1,7 @@
import sys
from _pydevd_bundle.pydevd_constants import DebugInfoHolder
from _pydev_imps._pydev_saved_modules import threading
-currentThread = threading.currentThread
+currentThread = threading.current_thread
import traceback
diff --git a/python/helpers/pydev/_pydev_bundle/pydev_monkey.py b/python/helpers/pydev/_pydev_bundle/pydev_monkey.py
index 31fb55cde3f6..d7e563465564 100644
--- a/python/helpers/pydev/_pydev_bundle/pydev_monkey.py
+++ b/python/helpers/pydev/_pydev_bundle/pydev_monkey.py
@@ -773,12 +773,12 @@ class _NewThreadStartupWithTrace:
# Note: if this is a thread from threading.py, we're too early in the boostrap process (because we mocked
# the start_new_thread internal machinery and thread._bootstrap has not finished), so, the code below needs
# to make sure that we use the current thread bound to the original function and not use
- # threading.currentThread() unless we're sure it's a dummy thread.
+ # threading.current_thread() unless we're sure it's a dummy thread.
t = getattr(self.original_func, '__self__', getattr(self.original_func, 'im_self', None))
if not isinstance(t, threading.Thread):
# This is not a threading.Thread but a Dummy thread (so, get it as a dummy thread using
# currentThread).
- t = threading.currentThread()
+ t = threading.current_thread()
if not getattr(t, 'is_pydev_daemon_thread', False):
thread_id = get_current_thread_id(t)
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_additional_thread_info_regular.py b/python/helpers/pydev/_pydevd_bundle/pydevd_additional_thread_info_regular.py
index 0cffd4f249a9..4e8a00142fca 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_additional_thread_info_regular.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_additional_thread_info_regular.py
@@ -7,7 +7,7 @@ from _pydev_bundle import pydev_log
from _pydevd_bundle.pydevd_frame import PyDBFrame
# ENDIF
-version = 33
+version = 34
if not hasattr(sys, '_current_frames'):
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_breakpoints.py b/python/helpers/pydev/_pydevd_bundle/pydevd_breakpoints.py
index 5b7d60f4e8bf..b0a6d0ff4038 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_breakpoints.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_breakpoints.py
@@ -170,7 +170,7 @@ def _fallback_excepthook(exctype, value, tb):
try:
debugger = get_global_debugger()
if debugger and debugger.break_on_uncaught_exceptions:
- thread = threading.currentThread()
+ thread = threading.current_thread()
additional_info = getattr(thread, 'additional_info', None)
if not thread or additional_info is None:
return
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_comm.py b/python/helpers/pydev/_pydevd_bundle/pydevd_comm.py
index 4f492c80059a..533dca219028 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_comm.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_comm.py
@@ -206,7 +206,7 @@ class PyDBDaemonThread(threading.Thread):
created_pydb_daemon[self] = 1
try:
try:
- if IS_JYTHON and not isinstance(threading.currentThread(), threading._MainThread):
+ if IS_JYTHON and not isinstance(threading.current_thread(), threading._MainThread):
# we shouldn't update sys.modules for the main thread, cause it leads to the second importing 'threading'
# module, and the new instance of main thread is created
import org.python.core as PyCore #@UnresolvedImport
@@ -267,7 +267,7 @@ class ReaderThread(PyDBDaemonThread):
def __init__(self, sock):
PyDBDaemonThread.__init__(self)
self.sock = sock
- self.setName("pydevd.Reader")
+ self.name = "pydevd.Reader"
from _pydevd_bundle.pydevd_process_net_command import process_net_command
self.process_net_command = process_net_command
self.global_debugger_holder = GlobalDebuggerHolder
@@ -345,7 +345,7 @@ class WriterThread(PyDBDaemonThread):
def __init__(self, sock):
PyDBDaemonThread.__init__(self)
self.sock = sock
- self.setName("pydevd.Writer")
+ self.name = "pydevd.Writer"
self.cmdQueue = _queue.Queue()
if pydevd_vm_type.get_vm_type() == 'python':
self.timeout = 0
@@ -571,7 +571,7 @@ class NetCommandFactory:
def _thread_to_xml(self, thread):
""" thread information as XML """
- name = pydevd_xml.make_valid_xml_value(thread.getName())
+ name = pydevd_xml.make_valid_xml_value(thread.name)
cmdText = '<thread name="%s" id="%s" />' % (quote(name), get_thread_id(thread))
return cmdText
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_console_integration.py b/python/helpers/pydev/_pydevd_bundle/pydevd_console_integration.py
index 5d420c117dcd..e9eaee7811e5 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_console_integration.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_console_integration.py
@@ -222,8 +222,6 @@ def console_exec(thread_id, frame_id, expression, dbg):
# because it contains globals and locals in the right precedence.
# See: https://stackoverflow.com/questions/15866398/why-is-a-python-generator-confusing-its-scope-with-global-in-an-execd-script.
Exec(code, updated_globals, updated_globals)
- except SystemExit:
- raise
except:
interpreter.showtraceback()
exception_occurred = True
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_custom_frames.py b/python/helpers/pydev/_pydevd_bundle/pydevd_custom_frames.py
index ef587989ec5f..47519f320497 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_custom_frames.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_custom_frames.py
@@ -63,7 +63,7 @@ class CustomFrame:
def add_custom_frame(frame, name, thread_id):
CustomFramesContainer.custom_frames_lock.acquire()
try:
- curr_thread_id = get_current_thread_id(threading.currentThread())
+ curr_thread_id = get_current_thread_id(threading.current_thread())
next_id = CustomFramesContainer._next_frame_id = CustomFramesContainer._next_frame_id + 1
# Note: the frame id kept contains an id and thread information on the thread where the frame was added
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython.c b/python/helpers/pydev/_pydevd_bundle/pydevd_cython.c
index 244c7d78ef0a..f151b5fec2a3 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython.c
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython.c
@@ -897,7 +897,7 @@ struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PydevSmartStepContext {
};
-/* "_pydevd_bundle/pydevd_cython.pyx":278
+/* "_pydevd_bundle/pydevd_cython.pyx":277
* #=======================================================================================================================
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class PyDBFrame: # <<<<<<<<<<<<<<
@@ -914,7 +914,7 @@ struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame {
};
-/* "_pydevd_bundle/pydevd_cython.pyx":1171
+/* "_pydevd_bundle/pydevd_cython.pyx":1170
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class SafeCallWrapper: # <<<<<<<<<<<<<<
@@ -927,7 +927,7 @@ struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper {
};
-/* "_pydevd_bundle/pydevd_cython.pyx":1334
+/* "_pydevd_bundle/pydevd_cython.pyx":1333
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class TopLevelThreadTracerOnlyUnhandledExceptions: # <<<<<<<<<<<<<<
@@ -940,7 +940,7 @@ struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhand
};
-/* "_pydevd_bundle/pydevd_cython.pyx":1368
+/* "_pydevd_bundle/pydevd_cython.pyx":1367
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class TopLevelThreadTracerNoBackFrame: # <<<<<<<<<<<<<<
@@ -958,7 +958,7 @@ struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFram
};
-/* "_pydevd_bundle/pydevd_cython.pyx":1475
+/* "_pydevd_bundle/pydevd_cython.pyx":1474
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class ThreadTracer: # <<<<<<<<<<<<<<
@@ -972,7 +972,7 @@ struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_ThreadTracer {
-/* "_pydevd_bundle/pydevd_cython.pyx":278
+/* "_pydevd_bundle/pydevd_cython.pyx":277
* #=======================================================================================================================
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class PyDBFrame: # <<<<<<<<<<<<<<
@@ -1915,7 +1915,6 @@ static const char __pyx_k_IS_IRONPYTHON[] = "IS_IRONPYTHON";
static const char __pyx_k_STATE_SUSPEND[] = "STATE_SUSPEND";
static const char __pyx_k_cmd_step_into[] = "cmd_step_into";
static const char __pyx_k_cmd_step_over[] = "cmd_step_over";
-static const char __pyx_k_currentThread[] = "currentThread";
static const char __pyx_k_extract_stack[] = "extract_stack";
static const char __pyx_k_get_file_type[] = "get_file_type";
static const char __pyx_k_get_func_name[] = "get_func_name";
@@ -1933,6 +1932,7 @@ static const char __pyx_k_PYTHON_SUSPEND[] = "PYTHON_SUSPEND";
static const char __pyx_k_TRACE_PROPERTY[] = "TRACE_PROPERTY";
static const char __pyx_k_co_firstlineno[] = "co_firstlineno";
static const char __pyx_k_current_frames[] = "_current_frames";
+static const char __pyx_k_current_thread[] = "current_thread";
static const char __pyx_k_enable_tracing[] = "enable_tracing";
static const char __pyx_k_get_breakpoint[] = "get_breakpoint";
static const char __pyx_k_pydev_step_cmd[] = "pydev_step_cmd";
@@ -2209,8 +2209,8 @@ static PyObject *__pyx_n_s_collect_try_except_info;
static PyObject *__pyx_n_s_compile;
static PyObject *__pyx_n_s_condition;
static PyObject *__pyx_n_s_conditional_breakpoint_exception;
-static PyObject *__pyx_n_s_currentThread;
static PyObject *__pyx_n_s_current_frames;
+static PyObject *__pyx_n_s_current_thread;
static PyObject *__pyx_n_s_debug;
static PyObject *__pyx_n_s_dict;
static PyObject *__pyx_n_s_dict_iter_values;
@@ -2628,7 +2628,7 @@ static PyObject *__pyx_tp_new_14_pydevd_bundle_13pydevd_cython_ThreadTracer(PyTy
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_get = {0, &__pyx_n_s_get, 0, 0, 0};
static PyObject *__pyx_int_0;
static PyObject *__pyx_int_1;
-static PyObject *__pyx_int_33;
+static PyObject *__pyx_int_34;
static PyObject *__pyx_int_160;
static PyObject *__pyx_int_19394913;
static PyObject *__pyx_int_64458794;
@@ -6789,8 +6789,8 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_4set_additional_threa
* thread.additional_info = additional_info
*
* return additional_info # <<<<<<<<<<<<<<
- * import dis
* import linecache
+ * import os.path
*/
__Pyx_XDECREF(__pyx_r);
if (unlikely(!__pyx_v_additional_info)) { __Pyx_RaiseUnboundLocalError("additional_info"); __PYX_ERR(0, 173, __pyx_L1_error) }
@@ -6824,7 +6824,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_4set_additional_threa
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":208
+/* "_pydevd_bundle/pydevd_cython.pyx":207
* from _pydevd_bundle.pydevd_signature import send_signature_call_trace, send_signature_return_trace
* except ImportError:
* def send_signature_call_trace(*args, **kwargs): # <<<<<<<<<<<<<<
@@ -6865,7 +6865,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_6send_signature_call_
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":220
+/* "_pydevd_bundle/pydevd_cython.pyx":219
*
*
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame): # <<<<<<<<<<<<<<
@@ -6914,23 +6914,23 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9handle_breakpoint_co
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_info)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, 1); __PYX_ERR(0, 220, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, 1); __PYX_ERR(0, 219, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_breakpoint)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, 2); __PYX_ERR(0, 220, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, 2); __PYX_ERR(0, 219, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_new_frame)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, 3); __PYX_ERR(0, 220, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, 3); __PYX_ERR(0, 219, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "handle_breakpoint_condition") < 0)) __PYX_ERR(0, 220, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "handle_breakpoint_condition") < 0)) __PYX_ERR(0, 219, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
goto __pyx_L5_argtuple_error;
@@ -6947,7 +6947,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9handle_breakpoint_co
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 220, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_condition", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 219, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.handle_breakpoint_condition", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -6996,19 +6996,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("handle_breakpoint_condition", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":221
+ /* "_pydevd_bundle/pydevd_cython.pyx":220
*
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame):
* condition = breakpoint.condition # <<<<<<<<<<<<<<
* try:
* if breakpoint.handle_hit_condition(new_frame):
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_condition); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 221, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_condition); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_condition = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":222
+ /* "_pydevd_bundle/pydevd_cython.pyx":221
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame):
* condition = breakpoint.condition
* try: # <<<<<<<<<<<<<<
@@ -7025,14 +7025,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_XGOTREF(__pyx_t_4);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":223
+ /* "_pydevd_bundle/pydevd_cython.pyx":222
* condition = breakpoint.condition
* try:
* if breakpoint.handle_hit_condition(new_frame): # <<<<<<<<<<<<<<
* return True
*
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_handle_hit_condition); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 223, __pyx_L6_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_handle_hit_condition); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 222, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
@@ -7046,14 +7046,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
__pyx_t_1 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_6, __pyx_v_new_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_v_new_frame);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 223, __pyx_L6_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 222, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 223, __pyx_L6_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 222, __pyx_L6_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":224
+ /* "_pydevd_bundle/pydevd_cython.pyx":223
* try:
* if breakpoint.handle_hit_condition(new_frame):
* return True # <<<<<<<<<<<<<<
@@ -7065,7 +7065,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_r = Py_True;
goto __pyx_L10_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":223
+ /* "_pydevd_bundle/pydevd_cython.pyx":222
* condition = breakpoint.condition
* try:
* if breakpoint.handle_hit_condition(new_frame): # <<<<<<<<<<<<<<
@@ -7074,7 +7074,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":226
+ /* "_pydevd_bundle/pydevd_cython.pyx":225
* return True
*
* if condition is None: # <<<<<<<<<<<<<<
@@ -7085,7 +7085,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_t_8 = (__pyx_t_7 != 0);
if (__pyx_t_8) {
- /* "_pydevd_bundle/pydevd_cython.pyx":227
+ /* "_pydevd_bundle/pydevd_cython.pyx":226
*
* if condition is None:
* return False # <<<<<<<<<<<<<<
@@ -7097,7 +7097,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_r = Py_False;
goto __pyx_L10_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":226
+ /* "_pydevd_bundle/pydevd_cython.pyx":225
* return True
*
* if condition is None: # <<<<<<<<<<<<<<
@@ -7106,7 +7106,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":229
+ /* "_pydevd_bundle/pydevd_cython.pyx":228
* return False
*
* return eval(condition, new_frame.f_globals, new_frame.f_locals) # <<<<<<<<<<<<<<
@@ -7114,11 +7114,11 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
* if IS_PY2:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_globals); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 229, __pyx_L6_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_globals); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 228, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 229, __pyx_L6_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 228, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 229, __pyx_L6_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 228, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_condition);
__Pyx_GIVEREF(__pyx_v_condition);
@@ -7129,14 +7129,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_5);
__pyx_t_1 = 0;
__pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_eval, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 229, __pyx_L6_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_eval, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 228, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L10_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":222
+ /* "_pydevd_bundle/pydevd_cython.pyx":221
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame):
* condition = breakpoint.condition
* try: # <<<<<<<<<<<<<<
@@ -7149,7 +7149,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":230
+ /* "_pydevd_bundle/pydevd_cython.pyx":229
*
* return eval(condition, new_frame.f_globals, new_frame.f_locals)
* except Exception as e: # <<<<<<<<<<<<<<
@@ -7159,27 +7159,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_t_9 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
if (__pyx_t_9) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.handle_breakpoint_condition", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_1) < 0) __PYX_ERR(0, 230, __pyx_L8_except_error)
+ if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_1) < 0) __PYX_ERR(0, 229, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
__pyx_v_e = __pyx_t_6;
- /* "_pydevd_bundle/pydevd_cython.pyx":231
+ /* "_pydevd_bundle/pydevd_cython.pyx":230
* return eval(condition, new_frame.f_globals, new_frame.f_locals)
* except Exception as e:
* if IS_PY2: # <<<<<<<<<<<<<<
* # Must be bytes on py2.
* if isinstance(condition, unicode):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_IS_PY2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 231, __pyx_L8_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_IS_PY2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 230, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_10); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 231, __pyx_L8_except_error)
+ __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_10); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 230, __pyx_L8_except_error)
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
if (__pyx_t_8) {
- /* "_pydevd_bundle/pydevd_cython.pyx":233
+ /* "_pydevd_bundle/pydevd_cython.pyx":232
* if IS_PY2:
* # Must be bytes on py2.
* if isinstance(condition, unicode): # <<<<<<<<<<<<<<
@@ -7190,14 +7190,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_t_7 = (__pyx_t_8 != 0);
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":234
+ /* "_pydevd_bundle/pydevd_cython.pyx":233
* # Must be bytes on py2.
* if isinstance(condition, unicode):
* condition = condition.encode('utf-8') # <<<<<<<<<<<<<<
*
* if not isinstance(e, py_db.skip_print_breakpoint_exception):
*/
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_condition, __pyx_n_s_encode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 234, __pyx_L8_except_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_condition, __pyx_n_s_encode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 233, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_11);
__pyx_t_12 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_11))) {
@@ -7211,13 +7211,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
__pyx_t_10 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_11, __pyx_t_12, __pyx_kp_s_utf_8) : __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_kp_s_utf_8);
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
- if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 234, __pyx_L8_except_error)
+ if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 233, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_condition, __pyx_t_10);
__pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":233
+ /* "_pydevd_bundle/pydevd_cython.pyx":232
* if IS_PY2:
* # Must be bytes on py2.
* if isinstance(condition, unicode): # <<<<<<<<<<<<<<
@@ -7226,7 +7226,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":231
+ /* "_pydevd_bundle/pydevd_cython.pyx":230
* return eval(condition, new_frame.f_globals, new_frame.f_locals)
* except Exception as e:
* if IS_PY2: # <<<<<<<<<<<<<<
@@ -7235,41 +7235,41 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":236
+ /* "_pydevd_bundle/pydevd_cython.pyx":235
* condition = condition.encode('utf-8')
*
* if not isinstance(e, py_db.skip_print_breakpoint_exception): # <<<<<<<<<<<<<<
* sys.stderr.write('Error while evaluating expression: %s\n' % (condition,))
*
*/
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_skip_print_breakpoint_exception); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 236, __pyx_L8_except_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_skip_print_breakpoint_exception); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 235, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_7 = PyObject_IsInstance(__pyx_v_e, __pyx_t_10); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 236, __pyx_L8_except_error)
+ __pyx_t_7 = PyObject_IsInstance(__pyx_v_e, __pyx_t_10); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 235, __pyx_L8_except_error)
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_8 = ((!(__pyx_t_7 != 0)) != 0);
if (__pyx_t_8) {
- /* "_pydevd_bundle/pydevd_cython.pyx":237
+ /* "_pydevd_bundle/pydevd_cython.pyx":236
*
* if not isinstance(e, py_db.skip_print_breakpoint_exception):
* sys.stderr.write('Error while evaluating expression: %s\n' % (condition,)) # <<<<<<<<<<<<<<
*
* etype, value, tb = sys.exc_info()
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_sys); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 237, __pyx_L8_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_sys); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 236, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_stderr); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 237, __pyx_L8_except_error)
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_stderr); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 236, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_write); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 237, __pyx_L8_except_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_write); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 236, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
- __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 237, __pyx_L8_except_error)
+ __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 236, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_INCREF(__pyx_v_condition);
__Pyx_GIVEREF(__pyx_v_condition);
PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_condition);
- __pyx_t_13 = __Pyx_PyString_Format(__pyx_kp_s_Error_while_evaluating_expressio, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 237, __pyx_L8_except_error)
+ __pyx_t_13 = __Pyx_PyString_Format(__pyx_kp_s_Error_while_evaluating_expressio, __pyx_t_12); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 236, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
__pyx_t_12 = NULL;
@@ -7285,21 +7285,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_t_10 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_11, __pyx_t_12, __pyx_t_13) : __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_13);
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
- if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 237, __pyx_L8_except_error)
+ if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 236, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":239
+ /* "_pydevd_bundle/pydevd_cython.pyx":238
* sys.stderr.write('Error while evaluating expression: %s\n' % (condition,))
*
* etype, value, tb = sys.exc_info() # <<<<<<<<<<<<<<
* traceback.print_exception(etype, value, tb.tb_next)
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_sys); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_sys); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_exc_info); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_exc_info); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = NULL;
@@ -7314,7 +7314,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
__pyx_t_10 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_13);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_10))) || (PyList_CheckExact(__pyx_t_10))) {
@@ -7323,7 +7323,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __PYX_ERR(0, 238, __pyx_L8_except_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -7339,17 +7339,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_INCREF(__pyx_t_11);
__Pyx_INCREF(__pyx_t_12);
#else
- __pyx_t_13 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __pyx_t_13 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_13);
- __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_12);
#endif
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_14 = PyObject_GetIter(__pyx_t_10); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __pyx_t_14 = PyObject_GetIter(__pyx_t_10); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 238, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_15 = Py_TYPE(__pyx_t_14)->tp_iternext;
@@ -7359,7 +7359,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_GOTREF(__pyx_t_11);
index = 2; __pyx_t_12 = __pyx_t_15(__pyx_t_14); if (unlikely(!__pyx_t_12)) goto __pyx_L19_unpacking_failed;
__Pyx_GOTREF(__pyx_t_12);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_15(__pyx_t_14), 3) < 0) __PYX_ERR(0, 239, __pyx_L8_except_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_15(__pyx_t_14), 3) < 0) __PYX_ERR(0, 238, __pyx_L8_except_error)
__pyx_t_15 = NULL;
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
goto __pyx_L20_unpacking_done;
@@ -7367,7 +7367,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__pyx_t_15 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 239, __pyx_L8_except_error)
+ __PYX_ERR(0, 238, __pyx_L8_except_error)
__pyx_L20_unpacking_done:;
}
__pyx_v_etype = __pyx_t_13;
@@ -7377,19 +7377,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_v_tb = __pyx_t_12;
__pyx_t_12 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":240
+ /* "_pydevd_bundle/pydevd_cython.pyx":239
*
* etype, value, tb = sys.exc_info()
* traceback.print_exception(etype, value, tb.tb_next) # <<<<<<<<<<<<<<
*
* if not isinstance(e, py_db.skip_suspend_on_breakpoint_exception):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_traceback); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_traceback); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_print_exception); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_print_exception); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_tb, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_tb, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_12);
__pyx_t_13 = NULL;
__pyx_t_9 = 0;
@@ -7406,7 +7406,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_11)) {
PyObject *__pyx_temp[4] = {__pyx_t_13, __pyx_v_etype, __pyx_v_value, __pyx_t_12};
- __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
@@ -7415,14 +7415,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_11)) {
PyObject *__pyx_temp[4] = {__pyx_t_13, __pyx_v_etype, __pyx_v_value, __pyx_t_12};
- __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
} else
#endif
{
- __pyx_t_14 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __pyx_t_14 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_14);
if (__pyx_t_13) {
__Pyx_GIVEREF(__pyx_t_13); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_13); __pyx_t_13 = NULL;
@@ -7436,14 +7436,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_GIVEREF(__pyx_t_12);
PyTuple_SET_ITEM(__pyx_t_14, 2+__pyx_t_9, __pyx_t_12);
__pyx_t_12 = 0;
- __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_14, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 240, __pyx_L8_except_error)
+ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_14, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 239, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
}
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":236
+ /* "_pydevd_bundle/pydevd_cython.pyx":235
* condition = condition.encode('utf-8')
*
* if not isinstance(e, py_db.skip_print_breakpoint_exception): # <<<<<<<<<<<<<<
@@ -7452,21 +7452,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":242
+ /* "_pydevd_bundle/pydevd_cython.pyx":241
* traceback.print_exception(etype, value, tb.tb_next)
*
* if not isinstance(e, py_db.skip_suspend_on_breakpoint_exception): # <<<<<<<<<<<<<<
* try:
* # add exception_type and stacktrace into thread additional info
*/
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_skip_suspend_on_breakpoint_excep); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 242, __pyx_L8_except_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_skip_suspend_on_breakpoint_excep); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 241, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_8 = PyObject_IsInstance(__pyx_v_e, __pyx_t_10); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 242, __pyx_L8_except_error)
+ __pyx_t_8 = PyObject_IsInstance(__pyx_v_e, __pyx_t_10); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 241, __pyx_L8_except_error)
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_7 = ((!(__pyx_t_8 != 0)) != 0);
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":243
+ /* "_pydevd_bundle/pydevd_cython.pyx":242
*
* if not isinstance(e, py_db.skip_suspend_on_breakpoint_exception):
* try: # <<<<<<<<<<<<<<
@@ -7482,16 +7482,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_XGOTREF(__pyx_t_18);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":245
+ /* "_pydevd_bundle/pydevd_cython.pyx":244
* try:
* # add exception_type and stacktrace into thread additional info
* etype, value, tb = sys.exc_info() # <<<<<<<<<<<<<<
* error = ''.join(traceback.format_exception_only(etype, value))
* stack = traceback.extract_stack(f=tb.tb_frame.f_back)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_sys); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 245, __pyx_L22_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_sys); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_exc_info); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 245, __pyx_L22_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_exc_info); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = NULL;
@@ -7506,7 +7506,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
__pyx_t_10 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_14);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 245, __pyx_L22_error)
+ if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_10))) || (PyList_CheckExact(__pyx_t_10))) {
@@ -7515,7 +7515,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 245, __pyx_L22_error)
+ __PYX_ERR(0, 244, __pyx_L22_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -7531,17 +7531,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_INCREF(__pyx_t_11);
__Pyx_INCREF(__pyx_t_12);
#else
- __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 245, __pyx_L22_error)
+ __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 245, __pyx_L22_error)
+ __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 245, __pyx_L22_error)
+ __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
#endif
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_13 = PyObject_GetIter(__pyx_t_10); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 245, __pyx_L22_error)
+ __pyx_t_13 = PyObject_GetIter(__pyx_t_10); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 244, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_15 = Py_TYPE(__pyx_t_13)->tp_iternext;
@@ -7551,7 +7551,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_GOTREF(__pyx_t_11);
index = 2; __pyx_t_12 = __pyx_t_15(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_12);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_15(__pyx_t_13), 3) < 0) __PYX_ERR(0, 245, __pyx_L22_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_15(__pyx_t_13), 3) < 0) __PYX_ERR(0, 244, __pyx_L22_error)
__pyx_t_15 = NULL;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
goto __pyx_L31_unpacking_done;
@@ -7559,7 +7559,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_15 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 245, __pyx_L22_error)
+ __PYX_ERR(0, 244, __pyx_L22_error)
__pyx_L31_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_etype, __pyx_t_14);
@@ -7569,16 +7569,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_XDECREF_SET(__pyx_v_tb, __pyx_t_12);
__pyx_t_12 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":246
+ /* "_pydevd_bundle/pydevd_cython.pyx":245
* # add exception_type and stacktrace into thread additional info
* etype, value, tb = sys.exc_info()
* error = ''.join(traceback.format_exception_only(etype, value)) # <<<<<<<<<<<<<<
* stack = traceback.extract_stack(f=tb.tb_frame.f_back)
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_traceback); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_traceback); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_format_exception_only); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_format_exception_only); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
__pyx_t_12 = NULL;
@@ -7596,7 +7596,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_11)) {
PyObject *__pyx_temp[3] = {__pyx_t_12, __pyx_v_etype, __pyx_v_value};
- __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_GOTREF(__pyx_t_10);
} else
@@ -7604,13 +7604,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_11)) {
PyObject *__pyx_temp[3] = {__pyx_t_12, __pyx_v_etype, __pyx_v_value};
- __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_11, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_GOTREF(__pyx_t_10);
} else
#endif
{
- __pyx_t_14 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __pyx_t_14 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_14);
if (__pyx_t_12) {
__Pyx_GIVEREF(__pyx_t_12); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_12); __pyx_t_12 = NULL;
@@ -7621,61 +7621,61 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_INCREF(__pyx_v_value);
__Pyx_GIVEREF(__pyx_v_value);
PyTuple_SET_ITEM(__pyx_t_14, 1+__pyx_t_9, __pyx_v_value);
- __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_14, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_14, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
}
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s_, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 246, __pyx_L22_error)
+ __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s_, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 245, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_v_error = ((PyObject*)__pyx_t_11);
__pyx_t_11 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":247
+ /* "_pydevd_bundle/pydevd_cython.pyx":246
* etype, value, tb = sys.exc_info()
* error = ''.join(traceback.format_exception_only(etype, value))
* stack = traceback.extract_stack(f=tb.tb_frame.f_back) # <<<<<<<<<<<<<<
*
* # On self.set_suspend(thread, CMD_SET_BREAK) this info will be
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 247, __pyx_L22_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_extract_stack); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 247, __pyx_L22_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_extract_stack); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- __pyx_t_11 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 247, __pyx_L22_error)
+ __pyx_t_11 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_tb, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 247, __pyx_L22_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_tb, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_f_back); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 247, __pyx_L22_error)
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_f_back); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_f, __pyx_t_12) < 0) __PYX_ERR(0, 247, __pyx_L22_error)
+ if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_f, __pyx_t_12) < 0) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
- __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 247, __pyx_L22_error)
+ __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 246, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_v_stack = __pyx_t_12;
__pyx_t_12 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":252
+ /* "_pydevd_bundle/pydevd_cython.pyx":251
* # sent to the client.
* info.conditional_breakpoint_exception = \
* ('Condition:\n' + condition + '\n\nError:\n' + error, stack) # <<<<<<<<<<<<<<
* except:
* traceback.print_exc()
*/
- __pyx_t_12 = PyNumber_Add(__pyx_kp_s_Condition, __pyx_v_condition); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 252, __pyx_L22_error)
+ __pyx_t_12 = PyNumber_Add(__pyx_kp_s_Condition, __pyx_v_condition); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 251, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_11 = PyNumber_Add(__pyx_t_12, __pyx_kp_s_Error); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 252, __pyx_L22_error)
+ __pyx_t_11 = PyNumber_Add(__pyx_t_12, __pyx_kp_s_Error); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 251, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
- __pyx_t_12 = PyNumber_Add(__pyx_t_11, __pyx_v_error); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 252, __pyx_L22_error)
+ __pyx_t_12 = PyNumber_Add(__pyx_t_11, __pyx_v_error); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 251, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 252, __pyx_L22_error)
+ __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 251, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GIVEREF(__pyx_t_12);
PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_12);
@@ -7684,17 +7684,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_stack);
__pyx_t_12 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":251
+ /* "_pydevd_bundle/pydevd_cython.pyx":250
* # On self.set_suspend(thread, CMD_SET_BREAK) this info will be
* # sent to the client.
* info.conditional_breakpoint_exception = \ # <<<<<<<<<<<<<<
* ('Condition:\n' + condition + '\n\nError:\n' + error, stack)
* except:
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_conditional_breakpoint_exception, __pyx_t_11) < 0) __PYX_ERR(0, 251, __pyx_L22_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_conditional_breakpoint_exception, __pyx_t_11) < 0) __PYX_ERR(0, 250, __pyx_L22_error)
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":243
+ /* "_pydevd_bundle/pydevd_cython.pyx":242
*
* if not isinstance(e, py_db.skip_suspend_on_breakpoint_exception):
* try: # <<<<<<<<<<<<<<
@@ -7713,7 +7713,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":253
+ /* "_pydevd_bundle/pydevd_cython.pyx":252
* info.conditional_breakpoint_exception = \
* ('Condition:\n' + condition + '\n\nError:\n' + error, stack)
* except: # <<<<<<<<<<<<<<
@@ -7722,21 +7722,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.handle_breakpoint_condition", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_12, &__pyx_t_10) < 0) __PYX_ERR(0, 253, __pyx_L24_except_error)
+ if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_12, &__pyx_t_10) < 0) __PYX_ERR(0, 252, __pyx_L24_except_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GOTREF(__pyx_t_12);
__Pyx_GOTREF(__pyx_t_10);
- /* "_pydevd_bundle/pydevd_cython.pyx":254
+ /* "_pydevd_bundle/pydevd_cython.pyx":253
* ('Condition:\n' + condition + '\n\nError:\n' + error, stack)
* except:
* traceback.print_exc() # <<<<<<<<<<<<<<
* return True
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_traceback); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 254, __pyx_L24_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_traceback); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 253, __pyx_L24_except_error)
__Pyx_GOTREF(__pyx_t_13);
- __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 254, __pyx_L24_except_error)
+ __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 253, __pyx_L24_except_error)
__Pyx_GOTREF(__pyx_t_19);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_13 = NULL;
@@ -7751,7 +7751,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
__pyx_t_14 = (__pyx_t_13) ? __Pyx_PyObject_CallOneArg(__pyx_t_19, __pyx_t_13) : __Pyx_PyObject_CallNoArg(__pyx_t_19);
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 254, __pyx_L24_except_error)
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 253, __pyx_L24_except_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0;
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
@@ -7762,7 +7762,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
__pyx_L24_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":243
+ /* "_pydevd_bundle/pydevd_cython.pyx":242
*
* if not isinstance(e, py_db.skip_suspend_on_breakpoint_exception):
* try: # <<<<<<<<<<<<<<
@@ -7782,7 +7782,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__pyx_L29_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":255
+ /* "_pydevd_bundle/pydevd_cython.pyx":254
* except:
* traceback.print_exc()
* return True # <<<<<<<<<<<<<<
@@ -7797,7 +7797,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L9_except_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":242
+ /* "_pydevd_bundle/pydevd_cython.pyx":241
* traceback.print_exception(etype, value, tb.tb_next)
*
* if not isinstance(e, py_db.skip_suspend_on_breakpoint_exception): # <<<<<<<<<<<<<<
@@ -7806,7 +7806,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":257
+ /* "_pydevd_bundle/pydevd_cython.pyx":256
* return True
*
* return False # <<<<<<<<<<<<<<
@@ -7824,7 +7824,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
goto __pyx_L8_except_error;
__pyx_L8_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":222
+ /* "_pydevd_bundle/pydevd_cython.pyx":221
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame):
* condition = breakpoint.condition
* try: # <<<<<<<<<<<<<<
@@ -7851,7 +7851,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":260
+ /* "_pydevd_bundle/pydevd_cython.pyx":259
*
* finally:
* etype, value, tb = None, None, None # <<<<<<<<<<<<<<
@@ -7931,7 +7931,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":220
+ /* "_pydevd_bundle/pydevd_cython.pyx":219
*
*
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame): # <<<<<<<<<<<<<<
@@ -7965,7 +7965,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_8handle_breakpoint_co
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":263
+/* "_pydevd_bundle/pydevd_cython.pyx":262
*
*
* def handle_breakpoint_expression(breakpoint, info, new_frame): # <<<<<<<<<<<<<<
@@ -8011,17 +8011,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_11handle_breakpoint_e
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_info)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_expression", 1, 3, 3, 1); __PYX_ERR(0, 263, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_expression", 1, 3, 3, 1); __PYX_ERR(0, 262, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_new_frame)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_expression", 1, 3, 3, 2); __PYX_ERR(0, 263, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_expression", 1, 3, 3, 2); __PYX_ERR(0, 262, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "handle_breakpoint_expression") < 0)) __PYX_ERR(0, 263, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "handle_breakpoint_expression") < 0)) __PYX_ERR(0, 262, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -8036,7 +8036,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_11handle_breakpoint_e
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("handle_breakpoint_expression", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 263, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_breakpoint_expression", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 262, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.handle_breakpoint_expression", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -8075,7 +8075,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("handle_breakpoint_expression", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":264
+ /* "_pydevd_bundle/pydevd_cython.pyx":263
*
* def handle_breakpoint_expression(breakpoint, info, new_frame):
* try: # <<<<<<<<<<<<<<
@@ -8084,7 +8084,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
*/
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":265
+ /* "_pydevd_bundle/pydevd_cython.pyx":264
* def handle_breakpoint_expression(breakpoint, info, new_frame):
* try:
* try: # <<<<<<<<<<<<<<
@@ -8100,20 +8100,20 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
__Pyx_XGOTREF(__pyx_t_3);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":266
+ /* "_pydevd_bundle/pydevd_cython.pyx":265
* try:
* try:
* val = eval(breakpoint.expression, new_frame.f_globals, new_frame.f_locals) # <<<<<<<<<<<<<<
* except:
* val = sys.exc_info()[1]
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_expression); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 266, __pyx_L6_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_expression); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 265, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 266, __pyx_L6_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 265, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 266, __pyx_L6_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 265, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 266, __pyx_L6_error)
+ __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 265, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4);
@@ -8124,13 +8124,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_eval, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 266, __pyx_L6_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_eval, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 265, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_v_val = __pyx_t_6;
__pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":265
+ /* "_pydevd_bundle/pydevd_cython.pyx":264
* def handle_breakpoint_expression(breakpoint, info, new_frame):
* try:
* try: # <<<<<<<<<<<<<<
@@ -8148,7 +8148,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":267
+ /* "_pydevd_bundle/pydevd_cython.pyx":266
* try:
* val = eval(breakpoint.expression, new_frame.f_globals, new_frame.f_locals)
* except: # <<<<<<<<<<<<<<
@@ -8157,21 +8157,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.handle_breakpoint_expression", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_5) < 0) __PYX_ERR(0, 267, __pyx_L8_except_error)
+ if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_5) < 0) __PYX_ERR(0, 266, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_5);
- /* "_pydevd_bundle/pydevd_cython.pyx":268
+ /* "_pydevd_bundle/pydevd_cython.pyx":267
* val = eval(breakpoint.expression, new_frame.f_globals, new_frame.f_locals)
* except:
* val = sys.exc_info()[1] # <<<<<<<<<<<<<<
* finally:
* if val is not None:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_sys); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 268, __pyx_L8_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_sys); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 267, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_exc_info); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 268, __pyx_L8_except_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_exc_info); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 267, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -8186,10 +8186,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
}
__pyx_t_4 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 268, __pyx_L8_except_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 267, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __pyx_t_9 = __Pyx_GetItemInt(__pyx_t_4, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 268, __pyx_L8_except_error)
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_t_4, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 267, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF_SET(__pyx_v_val, __pyx_t_9);
@@ -8201,7 +8201,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
}
__pyx_L8_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":265
+ /* "_pydevd_bundle/pydevd_cython.pyx":264
* def handle_breakpoint_expression(breakpoint, info, new_frame):
* try:
* try: # <<<<<<<<<<<<<<
@@ -8222,7 +8222,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":270
+ /* "_pydevd_bundle/pydevd_cython.pyx":269
* val = sys.exc_info()[1]
* finally:
* if val is not None: # <<<<<<<<<<<<<<
@@ -8235,19 +8235,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
__pyx_t_11 = (__pyx_t_10 != 0);
if (__pyx_t_11) {
- /* "_pydevd_bundle/pydevd_cython.pyx":271
+ /* "_pydevd_bundle/pydevd_cython.pyx":270
* finally:
* if val is not None:
* info.pydev_message = str(val) # <<<<<<<<<<<<<<
*
*
*/
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyString_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 271, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyString_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 270, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_message, __pyx_t_5) < 0) __PYX_ERR(0, 271, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_message, __pyx_t_5) < 0) __PYX_ERR(0, 270, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":270
+ /* "_pydevd_bundle/pydevd_cython.pyx":269
* val = sys.exc_info()[1]
* finally:
* if val is not None: # <<<<<<<<<<<<<<
@@ -8278,25 +8278,25 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
__Pyx_XGOTREF(__pyx_t_17);
__pyx_t_12 = __pyx_lineno; __pyx_t_13 = __pyx_clineno; __pyx_t_14 = __pyx_filename;
{
- if (unlikely(!__pyx_v_val)) { __Pyx_RaiseUnboundLocalError("val"); __PYX_ERR(0, 270, __pyx_L16_error) }
+ if (unlikely(!__pyx_v_val)) { __Pyx_RaiseUnboundLocalError("val"); __PYX_ERR(0, 269, __pyx_L16_error) }
__pyx_t_11 = (__pyx_v_val != Py_None);
__pyx_t_10 = (__pyx_t_11 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":271
+ /* "_pydevd_bundle/pydevd_cython.pyx":270
* finally:
* if val is not None:
* info.pydev_message = str(val) # <<<<<<<<<<<<<<
*
*
*/
- if (unlikely(!__pyx_v_val)) { __Pyx_RaiseUnboundLocalError("val"); __PYX_ERR(0, 271, __pyx_L16_error) }
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyString_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 271, __pyx_L16_error)
+ if (unlikely(!__pyx_v_val)) { __Pyx_RaiseUnboundLocalError("val"); __PYX_ERR(0, 270, __pyx_L16_error) }
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyString_Type)), __pyx_v_val); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 270, __pyx_L16_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_message, __pyx_t_5) < 0) __PYX_ERR(0, 271, __pyx_L16_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_message, __pyx_t_5) < 0) __PYX_ERR(0, 270, __pyx_L16_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":270
+ /* "_pydevd_bundle/pydevd_cython.pyx":269
* val = sys.exc_info()[1]
* finally:
* if val is not None: # <<<<<<<<<<<<<<
@@ -8334,7 +8334,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
__pyx_L5:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":263
+ /* "_pydevd_bundle/pydevd_cython.pyx":262
*
*
* def handle_breakpoint_expression(breakpoint, info, new_frame): # <<<<<<<<<<<<<<
@@ -8361,7 +8361,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_10handle_breakpoint_e
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":299
+/* "_pydevd_bundle/pydevd_cython.pyx":298
* cdef int _bytecode_offset
* cdef list _instructions
* def __init__(self, tuple args): # <<<<<<<<<<<<<<
@@ -8398,7 +8398,7 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_1__init__(PyObje
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 299, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 298, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -8409,13 +8409,13 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_1__init__(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 299, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 298, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 299, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 298, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_v_self), __pyx_v_args);
/* function exit code */
@@ -8432,7 +8432,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(struct
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":300
+ /* "_pydevd_bundle/pydevd_cython.pyx":299
* cdef list _instructions
* def __init__(self, tuple args):
* self._args = args # In the cython version we don't need to pass the frame # <<<<<<<<<<<<<<
@@ -8445,7 +8445,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(struct
__Pyx_DECREF(__pyx_v_self->_args);
__pyx_v_self->_args = __pyx_v_args;
- /* "_pydevd_bundle/pydevd_cython.pyx":301
+ /* "_pydevd_bundle/pydevd_cython.pyx":300
* def __init__(self, tuple args):
* self._args = args # In the cython version we don't need to pass the frame
* self.should_skip = -1 # On cythonized version, put in instance. # <<<<<<<<<<<<<<
@@ -8454,7 +8454,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(struct
*/
__pyx_v_self->should_skip = -1;
- /* "_pydevd_bundle/pydevd_cython.pyx":302
+ /* "_pydevd_bundle/pydevd_cython.pyx":301
* self._args = args # In the cython version we don't need to pass the frame
* self.should_skip = -1 # On cythonized version, put in instance.
* self._bytecode_offset = 0 # <<<<<<<<<<<<<<
@@ -8463,7 +8463,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(struct
*/
__pyx_v_self->_bytecode_offset = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":303
+ /* "_pydevd_bundle/pydevd_cython.pyx":302
* self.should_skip = -1 # On cythonized version, put in instance.
* self._bytecode_offset = 0
* self._instructions = None # <<<<<<<<<<<<<<
@@ -8476,7 +8476,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(struct
__Pyx_DECREF(__pyx_v_self->_instructions);
__pyx_v_self->_instructions = ((PyObject*)Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":299
+ /* "_pydevd_bundle/pydevd_cython.pyx":298
* cdef int _bytecode_offset
* cdef list _instructions
* def __init__(self, tuple args): # <<<<<<<<<<<<<<
@@ -8490,7 +8490,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame___init__(struct
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":314
+/* "_pydevd_bundle/pydevd_cython.pyx":313
* # ENDIF
*
* def set_suspend(self, *args, **kwargs): # <<<<<<<<<<<<<<
@@ -8531,7 +8531,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_2set_suspe
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("set_suspend", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":315
+ /* "_pydevd_bundle/pydevd_cython.pyx":314
*
* def set_suspend(self, *args, **kwargs):
* self._args[0].set_suspend(*args, **kwargs) # <<<<<<<<<<<<<<
@@ -8540,22 +8540,22 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_2set_suspe
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 315, __pyx_L1_error)
+ __PYX_ERR(0, 314, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 315, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 315, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 315, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_v_args, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 315, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_v_args, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":314
+ /* "_pydevd_bundle/pydevd_cython.pyx":313
* # ENDIF
*
* def set_suspend(self, *args, **kwargs): # <<<<<<<<<<<<<<
@@ -8578,7 +8578,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_2set_suspe
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":317
+/* "_pydevd_bundle/pydevd_cython.pyx":316
* self._args[0].set_suspend(*args, **kwargs)
*
* def do_wait_suspend(self, *args, **kwargs): # <<<<<<<<<<<<<<
@@ -8619,7 +8619,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_4do_wait_s
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("do_wait_suspend", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":318
+ /* "_pydevd_bundle/pydevd_cython.pyx":317
*
* def do_wait_suspend(self, *args, **kwargs):
* self._args[0].do_wait_suspend(*args, **kwargs) # <<<<<<<<<<<<<<
@@ -8628,22 +8628,22 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_4do_wait_s
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 318, __pyx_L1_error)
+ __PYX_ERR(0, 317, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 318, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 318, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 318, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_v_args, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 318, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_v_args, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":317
+ /* "_pydevd_bundle/pydevd_cython.pyx":316
* self._args[0].set_suspend(*args, **kwargs)
*
* def do_wait_suspend(self, *args, **kwargs): # <<<<<<<<<<<<<<
@@ -8666,7 +8666,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_4do_wait_s
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":321
+/* "_pydevd_bundle/pydevd_cython.pyx":320
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def trace_exception(self, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -8711,17 +8711,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_7trace_exc
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_exception", 1, 3, 3, 1); __PYX_ERR(0, 321, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_exception", 1, 3, 3, 1); __PYX_ERR(0, 320, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_exception", 1, 3, 3, 2); __PYX_ERR(0, 321, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_exception", 1, 3, 3, 2); __PYX_ERR(0, 320, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_exception") < 0)) __PYX_ERR(0, 321, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_exception") < 0)) __PYX_ERR(0, 320, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -8736,13 +8736,13 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_7trace_exc
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("trace_exception", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 321, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_exception", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 320, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 321, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 320, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exception(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_v_self), __pyx_v_frame, __pyx_v_event, __pyx_v_arg);
/* function exit code */
@@ -8772,25 +8772,25 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__Pyx_RefNannySetupContext("trace_exception", 0);
__Pyx_INCREF(__pyx_v_frame);
- /* "_pydevd_bundle/pydevd_cython.pyx":326
+ /* "_pydevd_bundle/pydevd_cython.pyx":325
* # def trace_exception(self, frame, event, arg):
* # ENDIF
* if event == 'exception': # <<<<<<<<<<<<<<
* should_stop, frame = self.should_stop_on_exception(frame, event, arg)
*
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 326, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 325, __pyx_L1_error)
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":327
+ /* "_pydevd_bundle/pydevd_cython.pyx":326
* # ENDIF
* if event == 'exception':
* should_stop, frame = self.should_stop_on_exception(frame, event, arg) # <<<<<<<<<<<<<<
*
* if should_stop:
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_should_stop_on_exception); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_should_stop_on_exception); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
__pyx_t_6 = 0;
@@ -8807,7 +8807,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_4)) {
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -8815,13 +8815,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_7 = PyTuple_New(3+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(3+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -8835,7 +8835,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_6, __pyx_v_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
@@ -8846,7 +8846,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 327, __pyx_L1_error)
+ __PYX_ERR(0, 326, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -8859,15 +8859,15 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_7);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_5)->tp_iternext;
@@ -8875,7 +8875,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_5); if (unlikely(!__pyx_t_7)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_5), 2) < 0) __PYX_ERR(0, 327, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_5), 2) < 0) __PYX_ERR(0, 326, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L5_unpacking_done;
@@ -8883,16 +8883,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 327, __pyx_L1_error)
+ __PYX_ERR(0, 326, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 327, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_should_stop = __pyx_t_2;
__Pyx_DECREF_SET(__pyx_v_frame, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":329
+ /* "_pydevd_bundle/pydevd_cython.pyx":328
* should_stop, frame = self.should_stop_on_exception(frame, event, arg)
*
* if should_stop: # <<<<<<<<<<<<<<
@@ -8902,14 +8902,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__pyx_t_2 = (__pyx_v_should_stop != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":330
+ /* "_pydevd_bundle/pydevd_cython.pyx":329
*
* if should_stop:
* self.handle_exception(frame, event, arg) # <<<<<<<<<<<<<<
* return self.trace_dispatch
*
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_handle_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 330, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_handle_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_4 = NULL;
__pyx_t_6 = 0;
@@ -8926,7 +8926,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[4] = {__pyx_t_4, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 329, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -8934,13 +8934,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[4] = {__pyx_t_4, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 329, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_5 = PyTuple_New(3+__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 330, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(3+__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL;
@@ -8954,14 +8954,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_6, __pyx_v_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":331
+ /* "_pydevd_bundle/pydevd_cython.pyx":330
* if should_stop:
* self.handle_exception(frame, event, arg)
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -8969,13 +8969,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
* return self.trace_exception
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 331, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":329
+ /* "_pydevd_bundle/pydevd_cython.pyx":328
* should_stop, frame = self.should_stop_on_exception(frame, event, arg)
*
* if should_stop: # <<<<<<<<<<<<<<
@@ -8984,7 +8984,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":326
+ /* "_pydevd_bundle/pydevd_cython.pyx":325
* # def trace_exception(self, frame, event, arg):
* # ENDIF
* if event == 'exception': # <<<<<<<<<<<<<<
@@ -8993,7 +8993,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":333
+ /* "_pydevd_bundle/pydevd_cython.pyx":332
* return self.trace_dispatch
*
* return self.trace_exception # <<<<<<<<<<<<<<
@@ -9001,13 +9001,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
* def trace_return(self, frame, event, arg):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 333, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":321
+ /* "_pydevd_bundle/pydevd_cython.pyx":320
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def trace_exception(self, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -9030,7 +9030,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_6trace_exc
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":335
+/* "_pydevd_bundle/pydevd_cython.pyx":334
* return self.trace_exception
*
* def trace_return(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -9075,17 +9075,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_9trace_ret
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_return", 1, 3, 3, 1); __PYX_ERR(0, 335, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_return", 1, 3, 3, 1); __PYX_ERR(0, 334, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_return", 1, 3, 3, 2); __PYX_ERR(0, 335, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_return", 1, 3, 3, 2); __PYX_ERR(0, 334, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_return") < 0)) __PYX_ERR(0, 335, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_return") < 0)) __PYX_ERR(0, 334, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -9100,7 +9100,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_9trace_ret
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("trace_return", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 335, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_return", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 334, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_return", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -9129,17 +9129,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("trace_return", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":336
+ /* "_pydevd_bundle/pydevd_cython.pyx":335
*
* def trace_return(self, frame, event, arg):
* if event == 'return': # <<<<<<<<<<<<<<
* main_debugger, filename = self._args[0], self._args[1]
* send_signature_return_trace(main_debugger, frame, filename, arg)
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 336, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 335, __pyx_L1_error)
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":337
+ /* "_pydevd_bundle/pydevd_cython.pyx":336
* def trace_return(self, frame, event, arg):
* if event == 'return':
* main_debugger, filename = self._args[0], self._args[1] # <<<<<<<<<<<<<<
@@ -9148,29 +9148,29 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 337, __pyx_L1_error)
+ __PYX_ERR(0, 336, __pyx_L1_error)
}
- __pyx_t_2 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 337, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 336, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 337, __pyx_L1_error)
+ __PYX_ERR(0, 336, __pyx_L1_error)
}
- __pyx_t_3 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 337, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 336, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_main_debugger = __pyx_t_2;
__pyx_t_2 = 0;
__pyx_v_filename = __pyx_t_3;
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":338
+ /* "_pydevd_bundle/pydevd_cython.pyx":337
* if event == 'return':
* main_debugger, filename = self._args[0], self._args[1]
* send_signature_return_trace(main_debugger, frame, filename, arg) # <<<<<<<<<<<<<<
* return self.trace_return
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_send_signature_return_trace); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 338, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_send_signature_return_trace); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 337, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = NULL;
__pyx_t_5 = 0;
@@ -9187,7 +9187,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_4, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_filename, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 338, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 337, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -9195,13 +9195,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_4, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_filename, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 338, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 337, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_6 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 338, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 337, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL;
@@ -9218,14 +9218,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_5, __pyx_v_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 338, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 337, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":336
+ /* "_pydevd_bundle/pydevd_cython.pyx":335
*
* def trace_return(self, frame, event, arg):
* if event == 'return': # <<<<<<<<<<<<<<
@@ -9234,7 +9234,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":339
+ /* "_pydevd_bundle/pydevd_cython.pyx":338
* main_debugger, filename = self._args[0], self._args[1]
* send_signature_return_trace(main_debugger, frame, filename, arg)
* return self.trace_return # <<<<<<<<<<<<<<
@@ -9242,13 +9242,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 339, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":335
+ /* "_pydevd_bundle/pydevd_cython.pyx":334
* return self.trace_exception
*
* def trace_return(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -9272,7 +9272,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_8trace_ret
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":342
+/* "_pydevd_bundle/pydevd_cython.pyx":341
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def should_stop_on_exception(self, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -9317,17 +9317,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_11should_s
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("should_stop_on_exception", 1, 3, 3, 1); __PYX_ERR(0, 342, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("should_stop_on_exception", 1, 3, 3, 1); __PYX_ERR(0, 341, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("should_stop_on_exception", 1, 3, 3, 2); __PYX_ERR(0, 342, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("should_stop_on_exception", 1, 3, 3, 2); __PYX_ERR(0, 341, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_stop_on_exception") < 0)) __PYX_ERR(0, 342, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_stop_on_exception") < 0)) __PYX_ERR(0, 341, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -9342,13 +9342,13 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_11should_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("should_stop_on_exception", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 342, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("should_stop_on_exception", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 341, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.should_stop_on_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 342, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 341, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_stop_on_exception(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_v_self), __pyx_v_frame, __pyx_v_event, __pyx_v_arg);
/* function exit code */
@@ -9393,7 +9393,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_RefNannySetupContext("should_stop_on_exception", 0);
__Pyx_INCREF(__pyx_v_frame);
- /* "_pydevd_bundle/pydevd_cython.pyx":350
+ /* "_pydevd_bundle/pydevd_cython.pyx":349
*
* # main_debugger, _filename, info, _thread = self._args
* main_debugger = self._args[0] # <<<<<<<<<<<<<<
@@ -9402,14 +9402,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 350, __pyx_L1_error)
+ __PYX_ERR(0, 349, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 350, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 349, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_main_debugger = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":351
+ /* "_pydevd_bundle/pydevd_cython.pyx":350
* # main_debugger, _filename, info, _thread = self._args
* main_debugger = self._args[0]
* info = self._args[2] # <<<<<<<<<<<<<<
@@ -9418,15 +9418,15 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 351, __pyx_L1_error)
+ __PYX_ERR(0, 350, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 350, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo))))) __PYX_ERR(0, 351, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo))))) __PYX_ERR(0, 350, __pyx_L1_error)
__pyx_v_info = ((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":352
+ /* "_pydevd_bundle/pydevd_cython.pyx":351
* main_debugger = self._args[0]
* info = self._args[2]
* should_stop = False # <<<<<<<<<<<<<<
@@ -9436,7 +9436,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(Py_False);
__pyx_v_should_stop = Py_False;
- /* "_pydevd_bundle/pydevd_cython.pyx":355
+ /* "_pydevd_bundle/pydevd_cython.pyx":354
*
* # STATE_SUSPEND = 2
* if info.pydev_state != 2: # and breakpoint is not None: # <<<<<<<<<<<<<<
@@ -9446,7 +9446,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_2 = ((__pyx_v_info->pydev_state != 2) != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":356
+ /* "_pydevd_bundle/pydevd_cython.pyx":355
* # STATE_SUSPEND = 2
* if info.pydev_state != 2: # and breakpoint is not None:
* exception, value, trace = arg # <<<<<<<<<<<<<<
@@ -9459,7 +9459,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 356, __pyx_L1_error)
+ __PYX_ERR(0, 355, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -9475,16 +9475,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 356, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 356, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_v_arg); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 356, __pyx_L1_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_v_arg); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L4_unpacking_failed;
@@ -9493,7 +9493,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_GOTREF(__pyx_t_3);
index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(0, 356, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(0, 355, __pyx_L1_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L5_unpacking_done;
@@ -9501,7 +9501,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 356, __pyx_L1_error)
+ __PYX_ERR(0, 355, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
__pyx_v_exception = __pyx_t_1;
@@ -9511,7 +9511,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_v_trace = __pyx_t_4;
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":358
+ /* "_pydevd_bundle/pydevd_cython.pyx":357
* exception, value, trace = arg
*
* if trace is not None and hasattr(trace, 'tb_next'): # <<<<<<<<<<<<<<
@@ -9525,30 +9525,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_2 = __pyx_t_8;
goto __pyx_L7_bool_binop_done;
}
- __pyx_t_8 = __Pyx_HasAttr(__pyx_v_trace, __pyx_n_s_tb_next); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 358, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_HasAttr(__pyx_v_trace, __pyx_n_s_tb_next); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 357, __pyx_L1_error)
__pyx_t_7 = (__pyx_t_8 != 0);
__pyx_t_2 = __pyx_t_7;
__pyx_L7_bool_binop_done:;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":361
+ /* "_pydevd_bundle/pydevd_cython.pyx":360
* # on jython trace is None on the first event and it may not have a tb_next.
*
* exception_breakpoint = get_exception_breakpoint( # <<<<<<<<<<<<<<
* exception, main_debugger.break_on_caught_exceptions)
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_get_exception_breakpoint); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 361, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_get_exception_breakpoint); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "_pydevd_bundle/pydevd_cython.pyx":362
+ /* "_pydevd_bundle/pydevd_cython.pyx":361
*
* exception_breakpoint = get_exception_breakpoint(
* exception, main_debugger.break_on_caught_exceptions) # <<<<<<<<<<<<<<
*
* if exception_breakpoint is not None:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_break_on_caught_exceptions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 362, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_break_on_caught_exceptions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = NULL;
__pyx_t_9 = 0;
@@ -9565,7 +9565,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_exception, __pyx_t_1};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 361, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -9574,14 +9574,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_exception, __pyx_t_1};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 361, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else
#endif
{
- __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 361, __pyx_L1_error)
+ __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -9592,7 +9592,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 361, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
@@ -9600,7 +9600,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_v_exception_breakpoint = __pyx_t_4;
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":364
+ /* "_pydevd_bundle/pydevd_cython.pyx":363
* exception, main_debugger.break_on_caught_exceptions)
*
* if exception_breakpoint is not None: # <<<<<<<<<<<<<<
@@ -9611,30 +9611,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_7 = (__pyx_t_2 != 0);
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":365
+ /* "_pydevd_bundle/pydevd_cython.pyx":364
*
* if exception_breakpoint is not None:
* if exception_breakpoint.condition is not None: # <<<<<<<<<<<<<<
* # Always add exception to frame (must remove later after we proceed).
* add_exception_to_frame(frame, (exception, value, trace))
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_condition); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 365, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_condition); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 364, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_7 = (__pyx_t_4 != Py_None);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_2 = (__pyx_t_7 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":367
+ /* "_pydevd_bundle/pydevd_cython.pyx":366
* if exception_breakpoint.condition is not None:
* # Always add exception to frame (must remove later after we proceed).
* add_exception_to_frame(frame, (exception, value, trace)) # <<<<<<<<<<<<<<
* eval_result = handle_breakpoint_condition(main_debugger, info, exception_breakpoint, frame)
* remove_exception_from_frame(frame)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 366, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_INCREF(__pyx_v_exception);
__Pyx_GIVEREF(__pyx_v_exception);
@@ -9660,7 +9660,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[3] = {__pyx_t_1, __pyx_v_frame, __pyx_t_10};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 366, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
@@ -9669,14 +9669,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[3] = {__pyx_t_1, __pyx_v_frame, __pyx_t_10};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 366, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
} else
#endif
{
- __pyx_t_5 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 366, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL;
@@ -9687,21 +9687,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_GIVEREF(__pyx_t_10);
PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_9, __pyx_t_10);
__pyx_t_10 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 366, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":368
+ /* "_pydevd_bundle/pydevd_cython.pyx":367
* # Always add exception to frame (must remove later after we proceed).
* add_exception_to_frame(frame, (exception, value, trace))
* eval_result = handle_breakpoint_condition(main_debugger, info, exception_breakpoint, frame) # <<<<<<<<<<<<<<
* remove_exception_from_frame(frame)
* if not eval_result:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_handle_breakpoint_condition); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 368, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_handle_breakpoint_condition); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_5 = NULL;
__pyx_t_9 = 0;
@@ -9718,7 +9718,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_v_main_debugger, ((PyObject *)__pyx_v_info), __pyx_v_exception_breakpoint, __pyx_v_frame};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
@@ -9726,13 +9726,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_v_main_debugger, ((PyObject *)__pyx_v_info), __pyx_v_exception_breakpoint, __pyx_v_frame};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
#endif
{
- __pyx_t_10 = PyTuple_New(4+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 368, __pyx_L1_error)
+ __pyx_t_10 = PyTuple_New(4+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 367, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -9749,7 +9749,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(__pyx_v_frame);
__Pyx_GIVEREF(__pyx_v_frame);
PyTuple_SET_ITEM(__pyx_t_10, 3+__pyx_t_9, __pyx_v_frame);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 367, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
@@ -9757,14 +9757,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_v_eval_result = __pyx_t_4;
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":369
+ /* "_pydevd_bundle/pydevd_cython.pyx":368
* add_exception_to_frame(frame, (exception, value, trace))
* eval_result = handle_breakpoint_condition(main_debugger, info, exception_breakpoint, frame)
* remove_exception_from_frame(frame) # <<<<<<<<<<<<<<
* if not eval_result:
* return False, frame
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 369, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
@@ -9778,23 +9778,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_4 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_10, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 369, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":370
+ /* "_pydevd_bundle/pydevd_cython.pyx":369
* eval_result = handle_breakpoint_condition(main_debugger, info, exception_breakpoint, frame)
* remove_exception_from_frame(frame)
* if not eval_result: # <<<<<<<<<<<<<<
* return False, frame
*
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_eval_result); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 370, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_eval_result); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 369, __pyx_L1_error)
__pyx_t_7 = ((!__pyx_t_2) != 0);
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":371
+ /* "_pydevd_bundle/pydevd_cython.pyx":370
* remove_exception_from_frame(frame)
* if not eval_result:
* return False, frame # <<<<<<<<<<<<<<
@@ -9802,7 +9802,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* if exception_breakpoint.ignore_libraries:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 371, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 370, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(Py_False);
__Pyx_GIVEREF(Py_False);
@@ -9814,7 +9814,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":370
+ /* "_pydevd_bundle/pydevd_cython.pyx":369
* eval_result = handle_breakpoint_condition(main_debugger, info, exception_breakpoint, frame)
* remove_exception_from_frame(frame)
* if not eval_result: # <<<<<<<<<<<<<<
@@ -9823,7 +9823,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":365
+ /* "_pydevd_bundle/pydevd_cython.pyx":364
*
* if exception_breakpoint is not None:
* if exception_breakpoint.condition is not None: # <<<<<<<<<<<<<<
@@ -9832,27 +9832,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":373
+ /* "_pydevd_bundle/pydevd_cython.pyx":372
* return False, frame
*
* if exception_breakpoint.ignore_libraries: # <<<<<<<<<<<<<<
* if not main_debugger.is_exception_trace_in_project_scope(trace):
* return False, frame
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_ignore_libraries); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 373, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_ignore_libraries); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 372, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 373, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 372, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":374
+ /* "_pydevd_bundle/pydevd_cython.pyx":373
*
* if exception_breakpoint.ignore_libraries:
* if not main_debugger.is_exception_trace_in_project_scope(trace): # <<<<<<<<<<<<<<
* return False, frame
*
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_exception_trace_in_project_sc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 374, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_exception_trace_in_project_sc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 373, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
@@ -9866,15 +9866,15 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_4 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_10, __pyx_v_trace) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_trace);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 374, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 373, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 374, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 373, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_2 = ((!__pyx_t_7) != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":375
+ /* "_pydevd_bundle/pydevd_cython.pyx":374
* if exception_breakpoint.ignore_libraries:
* if not main_debugger.is_exception_trace_in_project_scope(trace):
* return False, frame # <<<<<<<<<<<<<<
@@ -9882,7 +9882,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* if ignore_exception_trace(trace):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 374, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(Py_False);
__Pyx_GIVEREF(Py_False);
@@ -9894,7 +9894,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":374
+ /* "_pydevd_bundle/pydevd_cython.pyx":373
*
* if exception_breakpoint.ignore_libraries:
* if not main_debugger.is_exception_trace_in_project_scope(trace): # <<<<<<<<<<<<<<
@@ -9903,7 +9903,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":373
+ /* "_pydevd_bundle/pydevd_cython.pyx":372
* return False, frame
*
* if exception_breakpoint.ignore_libraries: # <<<<<<<<<<<<<<
@@ -9912,14 +9912,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":377
+ /* "_pydevd_bundle/pydevd_cython.pyx":376
* return False, frame
*
* if ignore_exception_trace(trace): # <<<<<<<<<<<<<<
* return False, frame
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ignore_exception_trace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 377, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ignore_exception_trace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
@@ -9933,14 +9933,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_4 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_10, __pyx_v_trace) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_trace);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 377, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 377, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":378
+ /* "_pydevd_bundle/pydevd_cython.pyx":377
*
* if ignore_exception_trace(trace):
* return False, frame # <<<<<<<<<<<<<<
@@ -9948,7 +9948,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* was_just_raised = just_raised(trace)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 378, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(Py_False);
__Pyx_GIVEREF(Py_False);
@@ -9960,7 +9960,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":377
+ /* "_pydevd_bundle/pydevd_cython.pyx":376
* return False, frame
*
* if ignore_exception_trace(trace): # <<<<<<<<<<<<<<
@@ -9969,14 +9969,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":380
+ /* "_pydevd_bundle/pydevd_cython.pyx":379
* return False, frame
*
* was_just_raised = just_raised(trace) # <<<<<<<<<<<<<<
* if was_just_raised:
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_just_raised); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 380, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_just_raised); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
@@ -9990,36 +9990,36 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_4 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_10, __pyx_v_trace) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_trace);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 380, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_was_just_raised = __pyx_t_4;
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":381
+ /* "_pydevd_bundle/pydevd_cython.pyx":380
*
* was_just_raised = just_raised(trace)
* if was_just_raised: # <<<<<<<<<<<<<<
*
* if main_debugger.skip_on_exceptions_thrown_in_same_context:
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_was_just_raised); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 381, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_was_just_raised); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 380, __pyx_L1_error)
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":383
+ /* "_pydevd_bundle/pydevd_cython.pyx":382
* if was_just_raised:
*
* if main_debugger.skip_on_exceptions_thrown_in_same_context: # <<<<<<<<<<<<<<
* # Option: Don't break if an exception is caught in the same function from which it is thrown
* return False, frame
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_skip_on_exceptions_thrown_in_sam); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 383, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_skip_on_exceptions_thrown_in_sam); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 382, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 383, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 382, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":385
+ /* "_pydevd_bundle/pydevd_cython.pyx":384
* if main_debugger.skip_on_exceptions_thrown_in_same_context:
* # Option: Don't break if an exception is caught in the same function from which it is thrown
* return False, frame # <<<<<<<<<<<<<<
@@ -10027,7 +10027,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* if exception_breakpoint.notify_on_first_raise_only:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 385, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 384, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(Py_False);
__Pyx_GIVEREF(Py_False);
@@ -10039,7 +10039,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":383
+ /* "_pydevd_bundle/pydevd_cython.pyx":382
* if was_just_raised:
*
* if main_debugger.skip_on_exceptions_thrown_in_same_context: # <<<<<<<<<<<<<<
@@ -10048,7 +10048,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":381
+ /* "_pydevd_bundle/pydevd_cython.pyx":380
*
* was_just_raised = just_raised(trace)
* if was_just_raised: # <<<<<<<<<<<<<<
@@ -10057,49 +10057,49 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":387
+ /* "_pydevd_bundle/pydevd_cython.pyx":386
* return False, frame
*
* if exception_breakpoint.notify_on_first_raise_only: # <<<<<<<<<<<<<<
* if main_debugger.skip_on_exceptions_thrown_in_same_context:
* # In this case we never stop if it was just raised, so, to know if it was the first we
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_notify_on_first_raise_only); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 387, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_notify_on_first_raise_only); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 386, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 387, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 386, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":388
+ /* "_pydevd_bundle/pydevd_cython.pyx":387
*
* if exception_breakpoint.notify_on_first_raise_only:
* if main_debugger.skip_on_exceptions_thrown_in_same_context: # <<<<<<<<<<<<<<
* # In this case we never stop if it was just raised, so, to know if it was the first we
* # need to check if we're in the 2nd method.
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_skip_on_exceptions_thrown_in_sam); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 388, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_skip_on_exceptions_thrown_in_sam); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 388, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":391
+ /* "_pydevd_bundle/pydevd_cython.pyx":390
* # In this case we never stop if it was just raised, so, to know if it was the first we
* # need to check if we're in the 2nd method.
* if not was_just_raised and not just_raised(trace.tb_next): # <<<<<<<<<<<<<<
* return False, frame # I.e.: we stop only when we're at the caller of a method that throws an exception
*
*/
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_was_just_raised); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 391, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_was_just_raised); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 390, __pyx_L1_error)
__pyx_t_8 = ((!__pyx_t_7) != 0);
if (__pyx_t_8) {
} else {
__pyx_t_2 = __pyx_t_8;
goto __pyx_L20_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_just_raised); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 391, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_just_raised); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 390, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 391, __pyx_L1_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 390, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_5 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
@@ -10114,17 +10114,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_5, __pyx_t_10) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_10);
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 391, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 390, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 391, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 390, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_7 = ((!__pyx_t_8) != 0);
__pyx_t_2 = __pyx_t_7;
__pyx_L20_bool_binop_done:;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":392
+ /* "_pydevd_bundle/pydevd_cython.pyx":391
* # need to check if we're in the 2nd method.
* if not was_just_raised and not just_raised(trace.tb_next):
* return False, frame # I.e.: we stop only when we're at the caller of a method that throws an exception # <<<<<<<<<<<<<<
@@ -10132,7 +10132,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* else:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 392, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 391, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(Py_False);
__Pyx_GIVEREF(Py_False);
@@ -10144,7 +10144,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":391
+ /* "_pydevd_bundle/pydevd_cython.pyx":390
* # In this case we never stop if it was just raised, so, to know if it was the first we
* # need to check if we're in the 2nd method.
* if not was_just_raised and not just_raised(trace.tb_next): # <<<<<<<<<<<<<<
@@ -10153,7 +10153,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":388
+ /* "_pydevd_bundle/pydevd_cython.pyx":387
*
* if exception_breakpoint.notify_on_first_raise_only:
* if main_debugger.skip_on_exceptions_thrown_in_same_context: # <<<<<<<<<<<<<<
@@ -10163,7 +10163,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
goto __pyx_L18;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":395
+ /* "_pydevd_bundle/pydevd_cython.pyx":394
*
* else:
* if not was_just_raised and not main_debugger.is_top_level_trace_in_project_scope(trace): # <<<<<<<<<<<<<<
@@ -10171,14 +10171,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*
*/
/*else*/ {
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_was_just_raised); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 395, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_was_just_raised); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 394, __pyx_L1_error)
__pyx_t_8 = ((!__pyx_t_7) != 0);
if (__pyx_t_8) {
} else {
__pyx_t_2 = __pyx_t_8;
goto __pyx_L23_bool_binop_done;
}
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_top_level_trace_in_project_sc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 395, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_top_level_trace_in_project_sc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
@@ -10192,17 +10192,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_4 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_10, __pyx_v_trace) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_trace);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 395, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 395, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 394, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_7 = ((!__pyx_t_8) != 0);
__pyx_t_2 = __pyx_t_7;
__pyx_L23_bool_binop_done:;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":396
+ /* "_pydevd_bundle/pydevd_cython.pyx":395
* else:
* if not was_just_raised and not main_debugger.is_top_level_trace_in_project_scope(trace):
* return False, frame # I.e.: we stop only when it was just raised # <<<<<<<<<<<<<<
@@ -10210,7 +10210,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* # If it got here we should stop.
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 396, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 395, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(Py_False);
__Pyx_GIVEREF(Py_False);
@@ -10222,7 +10222,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":395
+ /* "_pydevd_bundle/pydevd_cython.pyx":394
*
* else:
* if not was_just_raised and not main_debugger.is_top_level_trace_in_project_scope(trace): # <<<<<<<<<<<<<<
@@ -10233,7 +10233,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_L18:;
- /* "_pydevd_bundle/pydevd_cython.pyx":387
+ /* "_pydevd_bundle/pydevd_cython.pyx":386
* return False, frame
*
* if exception_breakpoint.notify_on_first_raise_only: # <<<<<<<<<<<<<<
@@ -10242,7 +10242,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":399
+ /* "_pydevd_bundle/pydevd_cython.pyx":398
*
* # If it got here we should stop.
* should_stop = True # <<<<<<<<<<<<<<
@@ -10252,7 +10252,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(Py_True);
__Pyx_DECREF_SET(__pyx_v_should_stop, Py_True);
- /* "_pydevd_bundle/pydevd_cython.pyx":400
+ /* "_pydevd_bundle/pydevd_cython.pyx":399
* # If it got here we should stop.
* should_stop = True
* try: # <<<<<<<<<<<<<<
@@ -10268,23 +10268,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_XGOTREF(__pyx_t_13);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":401
+ /* "_pydevd_bundle/pydevd_cython.pyx":400
* should_stop = True
* try:
* info.pydev_message = exception_breakpoint.qname # <<<<<<<<<<<<<<
* except:
* info.pydev_message = exception_breakpoint.qname.encode('utf-8')
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_qname); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 401, __pyx_L25_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_qname); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 400, __pyx_L25_error)
__Pyx_GOTREF(__pyx_t_4);
- if (!(likely(PyString_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(0, 401, __pyx_L25_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(0, 400, __pyx_L25_error)
__Pyx_GIVEREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_v_info->pydev_message);
__Pyx_DECREF(__pyx_v_info->pydev_message);
__pyx_v_info->pydev_message = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":400
+ /* "_pydevd_bundle/pydevd_cython.pyx":399
* # If it got here we should stop.
* should_stop = True
* try: # <<<<<<<<<<<<<<
@@ -10303,7 +10303,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":402
+ /* "_pydevd_bundle/pydevd_cython.pyx":401
* try:
* info.pydev_message = exception_breakpoint.qname
* except: # <<<<<<<<<<<<<<
@@ -10312,21 +10312,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.should_stop_on_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_10) < 0) __PYX_ERR(0, 402, __pyx_L27_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_10) < 0) __PYX_ERR(0, 401, __pyx_L27_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_t_10);
- /* "_pydevd_bundle/pydevd_cython.pyx":403
+ /* "_pydevd_bundle/pydevd_cython.pyx":402
* info.pydev_message = exception_breakpoint.qname
* except:
* info.pydev_message = exception_breakpoint.qname.encode('utf-8') # <<<<<<<<<<<<<<
*
* # Always add exception to frame (must remove later after we proceed).
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_qname); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 403, __pyx_L27_except_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_qname); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 402, __pyx_L27_except_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_encode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 403, __pyx_L27_except_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_encode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 402, __pyx_L27_except_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -10341,10 +10341,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_14, __pyx_t_1, __pyx_kp_s_utf_8) : __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_kp_s_utf_8);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 403, __pyx_L27_except_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 402, __pyx_L27_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 403, __pyx_L27_except_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 402, __pyx_L27_except_error)
__Pyx_GIVEREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_v_info->pydev_message);
__Pyx_DECREF(__pyx_v_info->pydev_message);
@@ -10357,7 +10357,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_L27_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":400
+ /* "_pydevd_bundle/pydevd_cython.pyx":399
* # If it got here we should stop.
* should_stop = True
* try: # <<<<<<<<<<<<<<
@@ -10377,16 +10377,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_L30_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":406
+ /* "_pydevd_bundle/pydevd_cython.pyx":405
*
* # Always add exception to frame (must remove later after we proceed).
* add_exception_to_frame(frame, (exception, value, trace)) # <<<<<<<<<<<<<<
*
* info.pydev_message = "python-%s" % info.pydev_message
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 406, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 405, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 406, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 405, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_exception);
__Pyx_GIVEREF(__pyx_v_exception);
@@ -10412,7 +10412,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_frame, __pyx_t_4};
- __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 406, __pyx_L1_error)
+ __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 405, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -10421,14 +10421,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_frame, __pyx_t_4};
- __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 406, __pyx_L1_error)
+ __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_9, 2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 405, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else
#endif
{
- __pyx_t_14 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 406, __pyx_L1_error)
+ __pyx_t_14 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 405, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_14);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -10439,21 +10439,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_14, 1+__pyx_t_9, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 406, __pyx_L1_error)
+ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 405, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":408
+ /* "_pydevd_bundle/pydevd_cython.pyx":407
* add_exception_to_frame(frame, (exception, value, trace))
*
* info.pydev_message = "python-%s" % info.pydev_message # <<<<<<<<<<<<<<
*
* else:
*/
- __pyx_t_10 = __Pyx_PyString_Format(__pyx_kp_s_python_s, __pyx_v_info->pydev_message); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 408, __pyx_L1_error)
+ __pyx_t_10 = __Pyx_PyString_Format(__pyx_kp_s_python_s, __pyx_v_info->pydev_message); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_GIVEREF(__pyx_t_10);
__Pyx_GOTREF(__pyx_v_info->pydev_message);
@@ -10461,7 +10461,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_v_info->pydev_message = ((PyObject*)__pyx_t_10);
__pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":364
+ /* "_pydevd_bundle/pydevd_cython.pyx":363
* exception, main_debugger.break_on_caught_exceptions)
*
* if exception_breakpoint is not None: # <<<<<<<<<<<<<<
@@ -10471,7 +10471,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
goto __pyx_L9;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":412
+ /* "_pydevd_bundle/pydevd_cython.pyx":411
* else:
* # No regular exception breakpoint, let's see if some plugin handles it or if it is a test assertion error.
* try: # <<<<<<<<<<<<<<
@@ -10488,30 +10488,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_XGOTREF(__pyx_t_11);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":413
+ /* "_pydevd_bundle/pydevd_cython.pyx":412
* # No regular exception breakpoint, let's see if some plugin handles it or if it is a test assertion error.
* try:
* if main_debugger.plugin is not None: # <<<<<<<<<<<<<<
* result = main_debugger.plugin.exception_break(main_debugger, self, frame, self._args, arg)
* if result:
*/
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_plugin); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 413, __pyx_L33_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_plugin); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 412, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_2 = (__pyx_t_10 != Py_None);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_7 = (__pyx_t_2 != 0);
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":414
+ /* "_pydevd_bundle/pydevd_cython.pyx":413
* try:
* if main_debugger.plugin is not None:
* result = main_debugger.plugin.exception_break(main_debugger, self, frame, self._args, arg) # <<<<<<<<<<<<<<
* if result:
* should_stop, frame = result
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_plugin); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 414, __pyx_L33_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_plugin); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 413, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_exception_break); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 414, __pyx_L33_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_exception_break); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 413, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = NULL;
@@ -10529,7 +10529,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_14)) {
PyObject *__pyx_temp[6] = {__pyx_t_3, __pyx_v_main_debugger, ((PyObject *)__pyx_v_self), __pyx_v_frame, __pyx_v_self->_args, __pyx_v_arg};
- __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 5+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 414, __pyx_L33_error)
+ __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 5+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 413, __pyx_L33_error)
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_10);
} else
@@ -10537,13 +10537,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_14)) {
PyObject *__pyx_temp[6] = {__pyx_t_3, __pyx_v_main_debugger, ((PyObject *)__pyx_v_self), __pyx_v_frame, __pyx_v_self->_args, __pyx_v_arg};
- __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 5+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 414, __pyx_L33_error)
+ __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 5+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 413, __pyx_L33_error)
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_10);
} else
#endif
{
- __pyx_t_4 = PyTuple_New(5+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 414, __pyx_L33_error)
+ __pyx_t_4 = PyTuple_New(5+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 413, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_3) {
__Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
@@ -10563,7 +10563,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_4, 4+__pyx_t_9, __pyx_v_arg);
- __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_4, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 414, __pyx_L33_error)
+ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_4, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 413, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
@@ -10571,17 +10571,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_v_result = __pyx_t_10;
__pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":415
+ /* "_pydevd_bundle/pydevd_cython.pyx":414
* if main_debugger.plugin is not None:
* result = main_debugger.plugin.exception_break(main_debugger, self, frame, self._args, arg)
* if result: # <<<<<<<<<<<<<<
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \
*/
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 415, __pyx_L33_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 414, __pyx_L33_error)
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":416
+ /* "_pydevd_bundle/pydevd_cython.pyx":415
* result = main_debugger.plugin.exception_break(main_debugger, self, frame, self._args, arg)
* if result:
* should_stop, frame = result # <<<<<<<<<<<<<<
@@ -10594,7 +10594,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 416, __pyx_L33_error)
+ __PYX_ERR(0, 415, __pyx_L33_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -10607,21 +10607,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(__pyx_t_14);
#else
- __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 416, __pyx_L33_error)
+ __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 415, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_14 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 416, __pyx_L33_error)
+ __pyx_t_14 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 415, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_14);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_4 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 416, __pyx_L33_error)
+ __pyx_t_4 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 415, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
index = 0; __pyx_t_10 = __pyx_t_6(__pyx_t_4); if (unlikely(!__pyx_t_10)) goto __pyx_L41_unpacking_failed;
__Pyx_GOTREF(__pyx_t_10);
index = 1; __pyx_t_14 = __pyx_t_6(__pyx_t_4); if (unlikely(!__pyx_t_14)) goto __pyx_L41_unpacking_failed;
__Pyx_GOTREF(__pyx_t_14);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_4), 2) < 0) __PYX_ERR(0, 416, __pyx_L33_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_4), 2) < 0) __PYX_ERR(0, 415, __pyx_L33_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L42_unpacking_done;
@@ -10629,7 +10629,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 416, __pyx_L33_error)
+ __PYX_ERR(0, 415, __pyx_L33_error)
__pyx_L42_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_should_stop, __pyx_t_10);
@@ -10637,7 +10637,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_DECREF_SET(__pyx_v_frame, __pyx_t_14);
__pyx_t_14 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":415
+ /* "_pydevd_bundle/pydevd_cython.pyx":414
* if main_debugger.plugin is not None:
* result = main_debugger.plugin.exception_break(main_debugger, self, frame, self._args, arg)
* if result: # <<<<<<<<<<<<<<
@@ -10646,7 +10646,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":413
+ /* "_pydevd_bundle/pydevd_cython.pyx":412
* # No regular exception breakpoint, let's see if some plugin handles it or if it is a test assertion error.
* try:
* if main_debugger.plugin is not None: # <<<<<<<<<<<<<<
@@ -10655,16 +10655,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":417
+ /* "_pydevd_bundle/pydevd_cython.pyx":416
* if result:
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \ # <<<<<<<<<<<<<<
* and not is_exception_in_test_unit_can_be_ignored(exception):
* should_stop, frame = should_stop_on_failed_test(arg), frame
*/
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 417, __pyx_L33_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 416, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 417, __pyx_L33_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 416, __pyx_L33_error)
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
if (__pyx_t_2) {
} else {
@@ -10672,17 +10672,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
goto __pyx_L44_bool_binop_done;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":418
+ /* "_pydevd_bundle/pydevd_cython.pyx":417
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \
* and not is_exception_in_test_unit_can_be_ignored(exception): # <<<<<<<<<<<<<<
* should_stop, frame = should_stop_on_failed_test(arg), frame
* info.pydev_message = "python-AssertionError"
*/
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_test_item_or_set_up_caller); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 417, __pyx_L33_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_test_item_or_set_up_caller); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 416, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_10);
- /* "_pydevd_bundle/pydevd_cython.pyx":417
+ /* "_pydevd_bundle/pydevd_cython.pyx":416
* if result:
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \ # <<<<<<<<<<<<<<
@@ -10701,10 +10701,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_14 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_10, __pyx_t_4, __pyx_v_trace) : __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_trace);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 417, __pyx_L33_error)
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 416, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 417, __pyx_L33_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 416, __pyx_L33_error)
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
if (__pyx_t_2) {
} else {
@@ -10712,14 +10712,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
goto __pyx_L44_bool_binop_done;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":418
+ /* "_pydevd_bundle/pydevd_cython.pyx":417
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \
* and not is_exception_in_test_unit_can_be_ignored(exception): # <<<<<<<<<<<<<<
* should_stop, frame = should_stop_on_failed_test(arg), frame
* info.pydev_message = "python-AssertionError"
*/
- __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_is_exception_in_test_unit_can_be); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 418, __pyx_L33_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_is_exception_in_test_unit_can_be); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 417, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_10))) {
@@ -10733,16 +10733,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_14 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_10, __pyx_t_4, __pyx_v_exception) : __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_exception);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 418, __pyx_L33_error)
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 417, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 418, __pyx_L33_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 417, __pyx_L33_error)
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__pyx_t_8 = ((!__pyx_t_2) != 0);
__pyx_t_7 = __pyx_t_8;
__pyx_L44_bool_binop_done:;
- /* "_pydevd_bundle/pydevd_cython.pyx":417
+ /* "_pydevd_bundle/pydevd_cython.pyx":416
* if result:
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \ # <<<<<<<<<<<<<<
@@ -10751,14 +10751,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":419
+ /* "_pydevd_bundle/pydevd_cython.pyx":418
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \
* and not is_exception_in_test_unit_can_be_ignored(exception):
* should_stop, frame = should_stop_on_failed_test(arg), frame # <<<<<<<<<<<<<<
* info.pydev_message = "python-AssertionError"
* except:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_should_stop_on_failed_test); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 419, __pyx_L33_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_should_stop_on_failed_test); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 418, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_10))) {
@@ -10772,7 +10772,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_t_14 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_10, __pyx_t_4, __pyx_v_arg) : __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_arg);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 419, __pyx_L33_error)
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 418, __pyx_L33_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_10 = __pyx_v_frame;
@@ -10782,7 +10782,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_DECREF_SET(__pyx_v_frame, __pyx_t_10);
__pyx_t_10 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":420
+ /* "_pydevd_bundle/pydevd_cython.pyx":419
* and not is_exception_in_test_unit_can_be_ignored(exception):
* should_stop, frame = should_stop_on_failed_test(arg), frame
* info.pydev_message = "python-AssertionError" # <<<<<<<<<<<<<<
@@ -10795,7 +10795,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_DECREF(__pyx_v_info->pydev_message);
__pyx_v_info->pydev_message = __pyx_kp_s_python_AssertionError;
- /* "_pydevd_bundle/pydevd_cython.pyx":417
+ /* "_pydevd_bundle/pydevd_cython.pyx":416
* if result:
* should_stop, frame = result
* if main_debugger.stop_on_failed_tests and main_debugger.is_test_item_or_set_up_caller(trace) \ # <<<<<<<<<<<<<<
@@ -10804,7 +10804,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":412
+ /* "_pydevd_bundle/pydevd_cython.pyx":411
* else:
* # No regular exception breakpoint, let's see if some plugin handles it or if it is a test assertion error.
* try: # <<<<<<<<<<<<<<
@@ -10824,7 +10824,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":421
+ /* "_pydevd_bundle/pydevd_cython.pyx":420
* should_stop, frame = should_stop_on_failed_test(arg), frame
* info.pydev_message = "python-AssertionError"
* except: # <<<<<<<<<<<<<<
@@ -10833,12 +10833,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.should_stop_on_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_10, &__pyx_t_14, &__pyx_t_4) < 0) __PYX_ERR(0, 421, __pyx_L35_except_error)
+ if (__Pyx_GetException(&__pyx_t_10, &__pyx_t_14, &__pyx_t_4) < 0) __PYX_ERR(0, 420, __pyx_L35_except_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_GOTREF(__pyx_t_14);
__Pyx_GOTREF(__pyx_t_4);
- /* "_pydevd_bundle/pydevd_cython.pyx":422
+ /* "_pydevd_bundle/pydevd_cython.pyx":421
* info.pydev_message = "python-AssertionError"
* except:
* should_stop = False # <<<<<<<<<<<<<<
@@ -10854,7 +10854,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_L35_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":412
+ /* "_pydevd_bundle/pydevd_cython.pyx":411
* else:
* # No regular exception breakpoint, let's see if some plugin handles it or if it is a test assertion error.
* try: # <<<<<<<<<<<<<<
@@ -10876,17 +10876,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
}
__pyx_L9:;
- /* "_pydevd_bundle/pydevd_cython.pyx":424
+ /* "_pydevd_bundle/pydevd_cython.pyx":423
* should_stop = False
*
* if should_stop: # <<<<<<<<<<<<<<
* if exception_breakpoint is not None and exception_breakpoint.expression is not None:
* handle_breakpoint_expression(exception_breakpoint, info, frame)
*/
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_should_stop); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 424, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_should_stop); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 423, __pyx_L1_error)
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":425
+ /* "_pydevd_bundle/pydevd_cython.pyx":424
*
* if should_stop:
* if exception_breakpoint is not None and exception_breakpoint.expression is not None: # <<<<<<<<<<<<<<
@@ -10900,7 +10900,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_7 = __pyx_t_2;
goto __pyx_L51_bool_binop_done;
}
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_expression); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_exception_breakpoint, __pyx_n_s_expression); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_2 = (__pyx_t_4 != Py_None);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -10909,14 +10909,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_L51_bool_binop_done:;
if (__pyx_t_7) {
- /* "_pydevd_bundle/pydevd_cython.pyx":426
+ /* "_pydevd_bundle/pydevd_cython.pyx":425
* if should_stop:
* if exception_breakpoint is not None and exception_breakpoint.expression is not None:
* handle_breakpoint_expression(exception_breakpoint, info, frame) # <<<<<<<<<<<<<<
*
* return should_stop, frame
*/
- __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_handle_breakpoint_expression); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 426, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_handle_breakpoint_expression); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 425, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_14);
__pyx_t_10 = NULL;
__pyx_t_9 = 0;
@@ -10933,7 +10933,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_14)) {
PyObject *__pyx_temp[4] = {__pyx_t_10, __pyx_v_exception_breakpoint, ((PyObject *)__pyx_v_info), __pyx_v_frame};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
@@ -10941,13 +10941,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_14)) {
PyObject *__pyx_temp[4] = {__pyx_t_10, __pyx_v_exception_breakpoint, ((PyObject *)__pyx_v_info), __pyx_v_frame};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
#endif
{
- __pyx_t_3 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 426, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 425, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (__pyx_t_10) {
__Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_10); __pyx_t_10 = NULL;
@@ -10961,14 +10961,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__Pyx_INCREF(__pyx_v_frame);
__Pyx_GIVEREF(__pyx_v_frame);
PyTuple_SET_ITEM(__pyx_t_3, 2+__pyx_t_9, __pyx_v_frame);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 426, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 425, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":425
+ /* "_pydevd_bundle/pydevd_cython.pyx":424
*
* if should_stop:
* if exception_breakpoint is not None and exception_breakpoint.expression is not None: # <<<<<<<<<<<<<<
@@ -10977,7 +10977,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":424
+ /* "_pydevd_bundle/pydevd_cython.pyx":423
* should_stop = False
*
* if should_stop: # <<<<<<<<<<<<<<
@@ -10986,7 +10986,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":358
+ /* "_pydevd_bundle/pydevd_cython.pyx":357
* exception, value, trace = arg
*
* if trace is not None and hasattr(trace, 'tb_next'): # <<<<<<<<<<<<<<
@@ -10995,7 +10995,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":355
+ /* "_pydevd_bundle/pydevd_cython.pyx":354
*
* # STATE_SUSPEND = 2
* if info.pydev_state != 2: # and breakpoint is not None: # <<<<<<<<<<<<<<
@@ -11004,7 +11004,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":428
+ /* "_pydevd_bundle/pydevd_cython.pyx":427
* handle_breakpoint_expression(exception_breakpoint, info, frame)
*
* return should_stop, frame # <<<<<<<<<<<<<<
@@ -11012,7 +11012,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
* def handle_exception(self, frame, event, arg):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 428, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 427, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_should_stop);
__Pyx_GIVEREF(__pyx_v_should_stop);
@@ -11024,7 +11024,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":342
+ /* "_pydevd_bundle/pydevd_cython.pyx":341
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def should_stop_on_exception(self, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -11059,7 +11059,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_10should_s
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":430
+/* "_pydevd_bundle/pydevd_cython.pyx":429
* return should_stop, frame
*
* def handle_exception(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -11104,17 +11104,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_13handle_e
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_exception", 1, 3, 3, 1); __PYX_ERR(0, 430, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_exception", 1, 3, 3, 1); __PYX_ERR(0, 429, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("handle_exception", 1, 3, 3, 2); __PYX_ERR(0, 430, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_exception", 1, 3, 3, 2); __PYX_ERR(0, 429, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "handle_exception") < 0)) __PYX_ERR(0, 430, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "handle_exception") < 0)) __PYX_ERR(0, 429, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -11129,7 +11129,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_13handle_e
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("handle_exception", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 430, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("handle_exception", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 429, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.handle_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -11197,7 +11197,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_RefNannySetupContext("handle_exception", 0);
__Pyx_INCREF(__pyx_v_frame);
- /* "_pydevd_bundle/pydevd_cython.pyx":431
+ /* "_pydevd_bundle/pydevd_cython.pyx":430
*
* def handle_exception(self, frame, event, arg):
* try: # <<<<<<<<<<<<<<
@@ -11206,19 +11206,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":433
+ /* "_pydevd_bundle/pydevd_cython.pyx":432
* try:
* # We have 3 things in arg: exception type, description, traceback object
* trace_obj = arg[2] # <<<<<<<<<<<<<<
* main_debugger = self._args[0]
*
*/
- __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_arg, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 433, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_arg, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 432, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_trace_obj = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":434
+ /* "_pydevd_bundle/pydevd_cython.pyx":433
* # We have 3 things in arg: exception type, description, traceback object
* trace_obj = arg[2]
* main_debugger = self._args[0] # <<<<<<<<<<<<<<
@@ -11227,14 +11227,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 434, __pyx_L4_error)
+ __PYX_ERR(0, 433, __pyx_L4_error)
}
- __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 434, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 433, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_main_debugger = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":436
+ /* "_pydevd_bundle/pydevd_cython.pyx":435
* main_debugger = self._args[0]
*
* initial_trace_obj = trace_obj # <<<<<<<<<<<<<<
@@ -11244,14 +11244,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_v_trace_obj);
__pyx_v_initial_trace_obj = __pyx_v_trace_obj;
- /* "_pydevd_bundle/pydevd_cython.pyx":437
+ /* "_pydevd_bundle/pydevd_cython.pyx":436
*
* initial_trace_obj = trace_obj
* if trace_obj.tb_next is None and trace_obj.tb_frame is frame: # <<<<<<<<<<<<<<
* # I.e.: tb_next should be only None in the context it was thrown (trace_obj.tb_frame is frame is just a double check).
* pass
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 437, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 436, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = (__pyx_t_1 == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -11261,7 +11261,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_2 = __pyx_t_4;
goto __pyx_L7_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 437, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 436, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = (__pyx_t_1 == __pyx_v_frame);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -11272,7 +11272,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
goto __pyx_L6;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":442
+ /* "_pydevd_bundle/pydevd_cython.pyx":441
* else:
* # Get the trace_obj from where the exception was raised...
* while trace_obj.tb_next is not None: # <<<<<<<<<<<<<<
@@ -11281,21 +11281,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*else*/ {
while (1) {
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 442, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 441, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = (__pyx_t_1 != Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (__pyx_t_2 != 0);
if (!__pyx_t_3) break;
- /* "_pydevd_bundle/pydevd_cython.pyx":443
+ /* "_pydevd_bundle/pydevd_cython.pyx":442
* # Get the trace_obj from where the exception was raised...
* while trace_obj.tb_next is not None:
* trace_obj = trace_obj.tb_next # <<<<<<<<<<<<<<
*
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 443, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 442, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_trace_obj, __pyx_t_1);
__pyx_t_1 = 0;
@@ -11303,16 +11303,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L6:;
- /* "_pydevd_bundle/pydevd_cython.pyx":445
+ /* "_pydevd_bundle/pydevd_cython.pyx":444
* trace_obj = trace_obj.tb_next
*
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \ # <<<<<<<<<<<<<<
* and not main_debugger.stop_on_failed_tests:
* for check_trace_obj in (initial_trace_obj, trace_obj):
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_ignore_exceptions_thrown_in_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 445, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_ignore_exceptions_thrown_in_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 444, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 445, __pyx_L4_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 444, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_2) {
} else {
@@ -11320,22 +11320,22 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
goto __pyx_L12_bool_binop_done;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":446
+ /* "_pydevd_bundle/pydevd_cython.pyx":445
*
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \
* and not main_debugger.stop_on_failed_tests: # <<<<<<<<<<<<<<
* for check_trace_obj in (initial_trace_obj, trace_obj):
* filename = get_abs_path_real_path_and_base_from_frame(check_trace_obj.tb_frame)[1]
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 445, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 446, __pyx_L4_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 445, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_4 = ((!__pyx_t_2) != 0);
__pyx_t_3 = __pyx_t_4;
__pyx_L12_bool_binop_done:;
- /* "_pydevd_bundle/pydevd_cython.pyx":445
+ /* "_pydevd_bundle/pydevd_cython.pyx":444
* trace_obj = trace_obj.tb_next
*
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \ # <<<<<<<<<<<<<<
@@ -11344,14 +11344,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
if (__pyx_t_3) {
- /* "_pydevd_bundle/pydevd_cython.pyx":447
+ /* "_pydevd_bundle/pydevd_cython.pyx":446
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \
* and not main_debugger.stop_on_failed_tests:
* for check_trace_obj in (initial_trace_obj, trace_obj): # <<<<<<<<<<<<<<
* filename = get_abs_path_real_path_and_base_from_frame(check_trace_obj.tb_frame)[1]
*
*/
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 447, __pyx_L4_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_initial_trace_obj);
__Pyx_GIVEREF(__pyx_v_initial_trace_obj);
@@ -11364,24 +11364,24 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
for (;;) {
if (__pyx_t_6 >= 2) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 447, __pyx_L4_error)
+ __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 446, __pyx_L4_error)
#else
- __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 447, __pyx_L4_error)
+ __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_XDECREF_SET(__pyx_v_check_trace_obj, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":448
+ /* "_pydevd_bundle/pydevd_cython.pyx":447
* and not main_debugger.stop_on_failed_tests:
* for check_trace_obj in (initial_trace_obj, trace_obj):
* filename = get_abs_path_real_path_and_base_from_frame(check_trace_obj.tb_frame)[1] # <<<<<<<<<<<<<<
*
* filename_to_lines_where_exceptions_are_ignored = self.filename_to_lines_where_exceptions_are_ignored
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 448, __pyx_L4_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 447, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_check_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 448, __pyx_L4_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_check_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 447, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) {
@@ -11396,35 +11396,35 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_1 = (__pyx_t_9) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_9, __pyx_t_8) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8);
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 448, __pyx_L4_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 447, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 448, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 447, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF_SET(__pyx_v_filename, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":450
+ /* "_pydevd_bundle/pydevd_cython.pyx":449
* filename = get_abs_path_real_path_and_base_from_frame(check_trace_obj.tb_frame)[1]
*
* filename_to_lines_where_exceptions_are_ignored = self.filename_to_lines_where_exceptions_are_ignored # <<<<<<<<<<<<<<
*
* lines_ignored = filename_to_lines_where_exceptions_are_ignored.get(filename)
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename_to_lines_where_exceptio); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 450, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename_to_lines_where_exceptio); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 449, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_XDECREF_SET(__pyx_v_filename_to_lines_where_exceptions_are_ignored, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":452
+ /* "_pydevd_bundle/pydevd_cython.pyx":451
* filename_to_lines_where_exceptions_are_ignored = self.filename_to_lines_where_exceptions_are_ignored
*
* lines_ignored = filename_to_lines_where_exceptions_are_ignored.get(filename) # <<<<<<<<<<<<<<
* if lines_ignored is None:
* lines_ignored = filename_to_lines_where_exceptions_are_ignored[filename] = {}
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_filename_to_lines_where_exceptions_are_ignored, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 452, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_filename_to_lines_where_exceptions_are_ignored, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 451, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_8 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -11438,13 +11438,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_7 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_8, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 452, __pyx_L4_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 451, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF_SET(__pyx_v_lines_ignored, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":453
+ /* "_pydevd_bundle/pydevd_cython.pyx":452
*
* lines_ignored = filename_to_lines_where_exceptions_are_ignored.get(filename)
* if lines_ignored is None: # <<<<<<<<<<<<<<
@@ -11455,21 +11455,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":454
+ /* "_pydevd_bundle/pydevd_cython.pyx":453
* lines_ignored = filename_to_lines_where_exceptions_are_ignored.get(filename)
* if lines_ignored is None:
* lines_ignored = filename_to_lines_where_exceptions_are_ignored[filename] = {} # <<<<<<<<<<<<<<
*
* try:
*/
- __pyx_t_7 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 454, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 453, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_7);
__Pyx_DECREF_SET(__pyx_v_lines_ignored, __pyx_t_7);
- if (unlikely(PyObject_SetItem(__pyx_v_filename_to_lines_where_exceptions_are_ignored, __pyx_v_filename, __pyx_t_7) < 0)) __PYX_ERR(0, 454, __pyx_L4_error)
+ if (unlikely(PyObject_SetItem(__pyx_v_filename_to_lines_where_exceptions_are_ignored, __pyx_v_filename, __pyx_t_7) < 0)) __PYX_ERR(0, 453, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":453
+ /* "_pydevd_bundle/pydevd_cython.pyx":452
*
* lines_ignored = filename_to_lines_where_exceptions_are_ignored.get(filename)
* if lines_ignored is None: # <<<<<<<<<<<<<<
@@ -11478,7 +11478,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":456
+ /* "_pydevd_bundle/pydevd_cython.pyx":455
* lines_ignored = filename_to_lines_where_exceptions_are_ignored[filename] = {}
*
* try: # <<<<<<<<<<<<<<
@@ -11494,16 +11494,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XGOTREF(__pyx_t_12);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":457
+ /* "_pydevd_bundle/pydevd_cython.pyx":456
*
* try:
* curr_stat = os.stat(filename) # <<<<<<<<<<<<<<
* curr_stat = (curr_stat.st_size, curr_stat.st_mtime)
* except:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 457, __pyx_L17_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 456, __pyx_L17_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_stat); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 457, __pyx_L17_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_stat); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 456, __pyx_L17_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -11518,24 +11518,24 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_7 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_1, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 457, __pyx_L17_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 456, __pyx_L17_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF_SET(__pyx_v_curr_stat, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":458
+ /* "_pydevd_bundle/pydevd_cython.pyx":457
* try:
* curr_stat = os.stat(filename)
* curr_stat = (curr_stat.st_size, curr_stat.st_mtime) # <<<<<<<<<<<<<<
* except:
* curr_stat = None
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_curr_stat, __pyx_n_s_st_size); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 458, __pyx_L17_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_curr_stat, __pyx_n_s_st_size); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 457, __pyx_L17_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_curr_stat, __pyx_n_s_st_mtime); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 458, __pyx_L17_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_curr_stat, __pyx_n_s_st_mtime); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 457, __pyx_L17_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 458, __pyx_L17_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 457, __pyx_L17_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7);
@@ -11546,7 +11546,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_DECREF_SET(__pyx_v_curr_stat, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":456
+ /* "_pydevd_bundle/pydevd_cython.pyx":455
* lines_ignored = filename_to_lines_where_exceptions_are_ignored[filename] = {}
*
* try: # <<<<<<<<<<<<<<
@@ -11564,7 +11564,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":459
+ /* "_pydevd_bundle/pydevd_cython.pyx":458
* curr_stat = os.stat(filename)
* curr_stat = (curr_stat.st_size, curr_stat.st_mtime)
* except: # <<<<<<<<<<<<<<
@@ -11573,12 +11573,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.handle_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(0, 459, __pyx_L19_except_error)
+ if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(0, 458, __pyx_L19_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_7);
- /* "_pydevd_bundle/pydevd_cython.pyx":460
+ /* "_pydevd_bundle/pydevd_cython.pyx":459
* curr_stat = (curr_stat.st_size, curr_stat.st_mtime)
* except:
* curr_stat = None # <<<<<<<<<<<<<<
@@ -11594,7 +11594,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L19_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":456
+ /* "_pydevd_bundle/pydevd_cython.pyx":455
* lines_ignored = filename_to_lines_where_exceptions_are_ignored[filename] = {}
*
* try: # <<<<<<<<<<<<<<
@@ -11614,16 +11614,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_L24_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":462
+ /* "_pydevd_bundle/pydevd_cython.pyx":461
* curr_stat = None
*
* last_stat = self.filename_to_stat_info.get(filename) # <<<<<<<<<<<<<<
* if last_stat != curr_stat:
* self.filename_to_stat_info[filename] = curr_stat
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename_to_stat_info); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 462, __pyx_L4_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename_to_stat_info); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 461, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 462, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 461, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -11638,44 +11638,44 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_7 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_8, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 462, __pyx_L4_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 461, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF_SET(__pyx_v_last_stat, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":463
+ /* "_pydevd_bundle/pydevd_cython.pyx":462
*
* last_stat = self.filename_to_stat_info.get(filename)
* if last_stat != curr_stat: # <<<<<<<<<<<<<<
* self.filename_to_stat_info[filename] = curr_stat
* lines_ignored.clear()
*/
- __pyx_t_7 = PyObject_RichCompare(__pyx_v_last_stat, __pyx_v_curr_stat, Py_NE); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 463, __pyx_L4_error)
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 463, __pyx_L4_error)
+ __pyx_t_7 = PyObject_RichCompare(__pyx_v_last_stat, __pyx_v_curr_stat, Py_NE); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 462, __pyx_L4_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 462, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":464
+ /* "_pydevd_bundle/pydevd_cython.pyx":463
* last_stat = self.filename_to_stat_info.get(filename)
* if last_stat != curr_stat:
* self.filename_to_stat_info[filename] = curr_stat # <<<<<<<<<<<<<<
* lines_ignored.clear()
* try:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename_to_stat_info); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 464, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename_to_stat_info); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 463, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
- if (unlikely(PyObject_SetItem(__pyx_t_7, __pyx_v_filename, __pyx_v_curr_stat) < 0)) __PYX_ERR(0, 464, __pyx_L4_error)
+ if (unlikely(PyObject_SetItem(__pyx_t_7, __pyx_v_filename, __pyx_v_curr_stat) < 0)) __PYX_ERR(0, 463, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":465
+ /* "_pydevd_bundle/pydevd_cython.pyx":464
* if last_stat != curr_stat:
* self.filename_to_stat_info[filename] = curr_stat
* lines_ignored.clear() # <<<<<<<<<<<<<<
* try:
* linecache.checkcache(filename)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_lines_ignored, __pyx_n_s_clear); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 465, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_lines_ignored, __pyx_n_s_clear); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 464, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_8 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -11689,12 +11689,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_7 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 465, __pyx_L4_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 464, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":466
+ /* "_pydevd_bundle/pydevd_cython.pyx":465
* self.filename_to_stat_info[filename] = curr_stat
* lines_ignored.clear()
* try: # <<<<<<<<<<<<<<
@@ -11710,16 +11710,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XGOTREF(__pyx_t_10);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":467
+ /* "_pydevd_bundle/pydevd_cython.pyx":466
* lines_ignored.clear()
* try:
* linecache.checkcache(filename) # <<<<<<<<<<<<<<
* except:
* # Jython 2.1
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_linecache); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 467, __pyx_L28_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_linecache); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 466, __pyx_L28_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_checkcache); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 467, __pyx_L28_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_checkcache); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 466, __pyx_L28_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -11734,12 +11734,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_7 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_1, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 467, __pyx_L28_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 466, __pyx_L28_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":466
+ /* "_pydevd_bundle/pydevd_cython.pyx":465
* self.filename_to_stat_info[filename] = curr_stat
* lines_ignored.clear()
* try: # <<<<<<<<<<<<<<
@@ -11757,7 +11757,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":468
+ /* "_pydevd_bundle/pydevd_cython.pyx":467
* try:
* linecache.checkcache(filename)
* except: # <<<<<<<<<<<<<<
@@ -11766,21 +11766,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.handle_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_1) < 0) __PYX_ERR(0, 468, __pyx_L30_except_error)
+ if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_1) < 0) __PYX_ERR(0, 467, __pyx_L30_except_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_1);
- /* "_pydevd_bundle/pydevd_cython.pyx":470
+ /* "_pydevd_bundle/pydevd_cython.pyx":469
* except:
* # Jython 2.1
* linecache.checkcache() # <<<<<<<<<<<<<<
*
* from_user_input = main_debugger.filename_to_lines_where_exceptions_are_ignored.get(filename)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_linecache); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 470, __pyx_L30_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_linecache); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 469, __pyx_L30_except_error)
__Pyx_GOTREF(__pyx_t_13);
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_checkcache); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 470, __pyx_L30_except_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_checkcache); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 469, __pyx_L30_except_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_13 = NULL;
@@ -11795,7 +11795,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_9 = (__pyx_t_13) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_13) : __Pyx_PyObject_CallNoArg(__pyx_t_14);
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
- if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 470, __pyx_L30_except_error)
+ if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 469, __pyx_L30_except_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
@@ -11806,7 +11806,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L30_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":466
+ /* "_pydevd_bundle/pydevd_cython.pyx":465
* self.filename_to_stat_info[filename] = curr_stat
* lines_ignored.clear()
* try: # <<<<<<<<<<<<<<
@@ -11826,7 +11826,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_L35_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":463
+ /* "_pydevd_bundle/pydevd_cython.pyx":462
*
* last_stat = self.filename_to_stat_info.get(filename)
* if last_stat != curr_stat: # <<<<<<<<<<<<<<
@@ -11835,16 +11835,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":472
+ /* "_pydevd_bundle/pydevd_cython.pyx":471
* linecache.checkcache()
*
* from_user_input = main_debugger.filename_to_lines_where_exceptions_are_ignored.get(filename) # <<<<<<<<<<<<<<
* if from_user_input:
* merged = {}
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_filename_to_lines_where_exceptio); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 472, __pyx_L4_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_filename_to_lines_where_exceptio); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 471, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 472, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 471, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -11859,42 +11859,42 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_1 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_8, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 472, __pyx_L4_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 471, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF_SET(__pyx_v_from_user_input, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":473
+ /* "_pydevd_bundle/pydevd_cython.pyx":472
*
* from_user_input = main_debugger.filename_to_lines_where_exceptions_are_ignored.get(filename)
* if from_user_input: # <<<<<<<<<<<<<<
* merged = {}
* merged.update(lines_ignored)
*/
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_from_user_input); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 473, __pyx_L4_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_from_user_input); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 472, __pyx_L4_error)
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":474
+ /* "_pydevd_bundle/pydevd_cython.pyx":473
* from_user_input = main_debugger.filename_to_lines_where_exceptions_are_ignored.get(filename)
* if from_user_input:
* merged = {} # <<<<<<<<<<<<<<
* merged.update(lines_ignored)
* # Override what we have with the related entries that the user entered
*/
- __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 474, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 473, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_XDECREF_SET(__pyx_v_merged, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":475
+ /* "_pydevd_bundle/pydevd_cython.pyx":474
* if from_user_input:
* merged = {}
* merged.update(lines_ignored) # <<<<<<<<<<<<<<
* # Override what we have with the related entries that the user entered
* merged.update(from_user_input)
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_merged, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 475, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_merged, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 474, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
@@ -11908,19 +11908,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_1 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_8, __pyx_v_lines_ignored) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_lines_ignored);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 475, __pyx_L4_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 474, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":477
+ /* "_pydevd_bundle/pydevd_cython.pyx":476
* merged.update(lines_ignored)
* # Override what we have with the related entries that the user entered
* merged.update(from_user_input) # <<<<<<<<<<<<<<
* else:
* merged = lines_ignored
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_merged, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 477, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_merged, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 476, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
@@ -11934,12 +11934,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_1 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_8, __pyx_v_from_user_input) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_from_user_input);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 477, __pyx_L4_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":473
+ /* "_pydevd_bundle/pydevd_cython.pyx":472
*
* from_user_input = main_debugger.filename_to_lines_where_exceptions_are_ignored.get(filename)
* if from_user_input: # <<<<<<<<<<<<<<
@@ -11949,7 +11949,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
goto __pyx_L38;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":479
+ /* "_pydevd_bundle/pydevd_cython.pyx":478
* merged.update(from_user_input)
* else:
* merged = lines_ignored # <<<<<<<<<<<<<<
@@ -11962,30 +11962,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L38:;
- /* "_pydevd_bundle/pydevd_cython.pyx":481
+ /* "_pydevd_bundle/pydevd_cython.pyx":480
* merged = lines_ignored
*
* exc_lineno = check_trace_obj.tb_lineno # <<<<<<<<<<<<<<
*
* # print ('lines ignored', lines_ignored)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_check_trace_obj, __pyx_n_s_tb_lineno); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 481, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_check_trace_obj, __pyx_n_s_tb_lineno); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 480, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_XDECREF_SET(__pyx_v_exc_lineno, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":487
+ /* "_pydevd_bundle/pydevd_cython.pyx":486
* # print ('merged', merged, 'curr', exc_lineno)
*
* if exc_lineno not in merged: # Note: check on merged but update lines_ignored. # <<<<<<<<<<<<<<
* try:
* line = linecache.getline(filename, exc_lineno, check_trace_obj.tb_frame.f_globals)
*/
- __pyx_t_4 = (__Pyx_PySequence_ContainsTF(__pyx_v_exc_lineno, __pyx_v_merged, Py_NE)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 487, __pyx_L4_error)
+ __pyx_t_4 = (__Pyx_PySequence_ContainsTF(__pyx_v_exc_lineno, __pyx_v_merged, Py_NE)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 486, __pyx_L4_error)
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "_pydevd_bundle/pydevd_cython.pyx":488
+ /* "_pydevd_bundle/pydevd_cython.pyx":487
*
* if exc_lineno not in merged: # Note: check on merged but update lines_ignored.
* try: # <<<<<<<<<<<<<<
@@ -12001,21 +12001,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XGOTREF(__pyx_t_12);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":489
+ /* "_pydevd_bundle/pydevd_cython.pyx":488
* if exc_lineno not in merged: # Note: check on merged but update lines_ignored.
* try:
* line = linecache.getline(filename, exc_lineno, check_trace_obj.tb_frame.f_globals) # <<<<<<<<<<<<<<
* except:
* # Jython 2.1
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_linecache); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_linecache); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_getline); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_getline); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_check_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_check_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_f_globals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_f_globals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
@@ -12033,7 +12033,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_v_filename, __pyx_v_exc_lineno, __pyx_t_9};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
@@ -12042,14 +12042,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_v_filename, __pyx_v_exc_lineno, __pyx_t_9};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
} else
#endif
{
- __pyx_t_14 = PyTuple_New(3+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_14 = PyTuple_New(3+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_GOTREF(__pyx_t_14);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -12063,7 +12063,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_14, 2+__pyx_t_15, __pyx_t_9);
__pyx_t_9 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_14, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 489, __pyx_L40_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_14, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 488, __pyx_L40_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
}
@@ -12071,7 +12071,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XDECREF_SET(__pyx_v_line, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":488
+ /* "_pydevd_bundle/pydevd_cython.pyx":487
*
* if exc_lineno not in merged: # Note: check on merged but update lines_ignored.
* try: # <<<<<<<<<<<<<<
@@ -12091,7 +12091,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":490
+ /* "_pydevd_bundle/pydevd_cython.pyx":489
* try:
* line = linecache.getline(filename, exc_lineno, check_trace_obj.tb_frame.f_globals)
* except: # <<<<<<<<<<<<<<
@@ -12100,21 +12100,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.handle_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_14) < 0) __PYX_ERR(0, 490, __pyx_L42_except_error)
+ if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_14) < 0) __PYX_ERR(0, 489, __pyx_L42_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_14);
- /* "_pydevd_bundle/pydevd_cython.pyx":492
+ /* "_pydevd_bundle/pydevd_cython.pyx":491
* except:
* # Jython 2.1
* line = linecache.getline(filename, exc_lineno) # <<<<<<<<<<<<<<
*
* if IGNORE_EXCEPTION_TAG.match(line) is not None:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_linecache); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 492, __pyx_L42_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_linecache); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 491, __pyx_L42_except_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_getline); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 492, __pyx_L42_except_error)
+ __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_getline); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 491, __pyx_L42_except_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
@@ -12132,7 +12132,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_13)) {
PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_filename, __pyx_v_exc_lineno};
- __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 492, __pyx_L42_except_error)
+ __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 491, __pyx_L42_except_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_9);
} else
@@ -12140,13 +12140,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_13)) {
PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_filename, __pyx_v_exc_lineno};
- __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 492, __pyx_L42_except_error)
+ __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 491, __pyx_L42_except_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_9);
} else
#endif
{
- __pyx_t_16 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 492, __pyx_L42_except_error)
+ __pyx_t_16 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 491, __pyx_L42_except_error)
__Pyx_GOTREF(__pyx_t_16);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -12157,7 +12157,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_v_exc_lineno);
__Pyx_GIVEREF(__pyx_v_exc_lineno);
PyTuple_SET_ITEM(__pyx_t_16, 1+__pyx_t_15, __pyx_v_exc_lineno);
- __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_16, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 492, __pyx_L42_except_error)
+ __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_16, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 491, __pyx_L42_except_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
}
@@ -12171,7 +12171,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L42_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":488
+ /* "_pydevd_bundle/pydevd_cython.pyx":487
*
* if exc_lineno not in merged: # Note: check on merged but update lines_ignored.
* try: # <<<<<<<<<<<<<<
@@ -12191,16 +12191,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_L47_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":494
+ /* "_pydevd_bundle/pydevd_cython.pyx":493
* line = linecache.getline(filename, exc_lineno)
*
* if IGNORE_EXCEPTION_TAG.match(line) is not None: # <<<<<<<<<<<<<<
* lines_ignored[exc_lineno] = 1
* return
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_IGNORE_EXCEPTION_TAG); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 494, __pyx_L4_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_IGNORE_EXCEPTION_TAG); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 493, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_match); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 494, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_match); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 493, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -12215,7 +12215,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_14 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_8, __pyx_v_line) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_line);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 494, __pyx_L4_error)
+ if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 493, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (__pyx_t_14 != Py_None);
@@ -12223,16 +12223,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":495
+ /* "_pydevd_bundle/pydevd_cython.pyx":494
*
* if IGNORE_EXCEPTION_TAG.match(line) is not None:
* lines_ignored[exc_lineno] = 1 # <<<<<<<<<<<<<<
* return
* else:
*/
- if (unlikely(PyObject_SetItem(__pyx_v_lines_ignored, __pyx_v_exc_lineno, __pyx_int_1) < 0)) __PYX_ERR(0, 495, __pyx_L4_error)
+ if (unlikely(PyObject_SetItem(__pyx_v_lines_ignored, __pyx_v_exc_lineno, __pyx_int_1) < 0)) __PYX_ERR(0, 494, __pyx_L4_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":496
+ /* "_pydevd_bundle/pydevd_cython.pyx":495
* if IGNORE_EXCEPTION_TAG.match(line) is not None:
* lines_ignored[exc_lineno] = 1
* return # <<<<<<<<<<<<<<
@@ -12244,7 +12244,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L3_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":494
+ /* "_pydevd_bundle/pydevd_cython.pyx":493
* line = linecache.getline(filename, exc_lineno)
*
* if IGNORE_EXCEPTION_TAG.match(line) is not None: # <<<<<<<<<<<<<<
@@ -12253,7 +12253,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":499
+ /* "_pydevd_bundle/pydevd_cython.pyx":498
* else:
* # Put in the cache saying not to ignore
* lines_ignored[exc_lineno] = 0 # <<<<<<<<<<<<<<
@@ -12261,10 +12261,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
* # Ok, dict has it already cached, so, let's check it...
*/
/*else*/ {
- if (unlikely(PyObject_SetItem(__pyx_v_lines_ignored, __pyx_v_exc_lineno, __pyx_int_0) < 0)) __PYX_ERR(0, 499, __pyx_L4_error)
+ if (unlikely(PyObject_SetItem(__pyx_v_lines_ignored, __pyx_v_exc_lineno, __pyx_int_0) < 0)) __PYX_ERR(0, 498, __pyx_L4_error)
}
- /* "_pydevd_bundle/pydevd_cython.pyx":487
+ /* "_pydevd_bundle/pydevd_cython.pyx":486
* # print ('merged', merged, 'curr', exc_lineno)
*
* if exc_lineno not in merged: # Note: check on merged but update lines_ignored. # <<<<<<<<<<<<<<
@@ -12274,7 +12274,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
goto __pyx_L39;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":502
+ /* "_pydevd_bundle/pydevd_cython.pyx":501
* else:
* # Ok, dict has it already cached, so, let's check it...
* if merged.get(exc_lineno, 0): # <<<<<<<<<<<<<<
@@ -12282,7 +12282,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*
*/
/*else*/ {
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_merged, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 502, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_merged, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 501, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_8 = NULL;
__pyx_t_15 = 0;
@@ -12299,7 +12299,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_v_exc_lineno, __pyx_int_0};
- __pyx_t_14 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 502, __pyx_L4_error)
+ __pyx_t_14 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 501, __pyx_L4_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_14);
} else
@@ -12307,13 +12307,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_v_exc_lineno, __pyx_int_0};
- __pyx_t_14 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 502, __pyx_L4_error)
+ __pyx_t_14 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 501, __pyx_L4_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_14);
} else
#endif
{
- __pyx_t_9 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 502, __pyx_L4_error)
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 501, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_9);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
@@ -12324,16 +12324,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_15, __pyx_int_0);
- __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 502, __pyx_L4_error)
+ __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 501, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 502, __pyx_L4_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 501, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":503
+ /* "_pydevd_bundle/pydevd_cython.pyx":502
* # Ok, dict has it already cached, so, let's check it...
* if merged.get(exc_lineno, 0):
* return # <<<<<<<<<<<<<<
@@ -12345,7 +12345,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L3_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":502
+ /* "_pydevd_bundle/pydevd_cython.pyx":501
* else:
* # Ok, dict has it already cached, so, let's check it...
* if merged.get(exc_lineno, 0): # <<<<<<<<<<<<<<
@@ -12356,7 +12356,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L39:;
- /* "_pydevd_bundle/pydevd_cython.pyx":447
+ /* "_pydevd_bundle/pydevd_cython.pyx":446
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \
* and not main_debugger.stop_on_failed_tests:
* for check_trace_obj in (initial_trace_obj, trace_obj): # <<<<<<<<<<<<<<
@@ -12366,7 +12366,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":445
+ /* "_pydevd_bundle/pydevd_cython.pyx":444
* trace_obj = trace_obj.tb_next
*
* if main_debugger.ignore_exceptions_thrown_in_lines_with_ignore_exception \ # <<<<<<<<<<<<<<
@@ -12375,7 +12375,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":505
+ /* "_pydevd_bundle/pydevd_cython.pyx":504
* return
*
* thread = self._args[3] # <<<<<<<<<<<<<<
@@ -12384,14 +12384,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 505, __pyx_L4_error)
+ __PYX_ERR(0, 504, __pyx_L4_error)
}
- __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 505, __pyx_L4_error)
+ __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v_self->_args, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 504, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_v_thread = __pyx_t_5;
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":507
+ /* "_pydevd_bundle/pydevd_cython.pyx":506
* thread = self._args[3]
*
* try: # <<<<<<<<<<<<<<
@@ -12407,43 +12407,43 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XGOTREF(__pyx_t_10);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":508
+ /* "_pydevd_bundle/pydevd_cython.pyx":507
*
* try:
* frame_id_to_frame = {} # <<<<<<<<<<<<<<
* frame_id_to_frame[id(frame)] = frame
* f = trace_obj.tb_frame
*/
- __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 508, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 507, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_v_frame_id_to_frame = ((PyObject*)__pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":509
+ /* "_pydevd_bundle/pydevd_cython.pyx":508
* try:
* frame_id_to_frame = {}
* frame_id_to_frame[id(frame)] = frame # <<<<<<<<<<<<<<
* f = trace_obj.tb_frame
* while f is not None:
*/
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, __pyx_v_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 509, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, __pyx_v_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 508, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
- if (unlikely(PyDict_SetItem(__pyx_v_frame_id_to_frame, __pyx_t_5, __pyx_v_frame) < 0)) __PYX_ERR(0, 509, __pyx_L52_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_frame_id_to_frame, __pyx_t_5, __pyx_v_frame) < 0)) __PYX_ERR(0, 508, __pyx_L52_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":510
+ /* "_pydevd_bundle/pydevd_cython.pyx":509
* frame_id_to_frame = {}
* frame_id_to_frame[id(frame)] = frame
* f = trace_obj.tb_frame # <<<<<<<<<<<<<<
* while f is not None:
* frame_id_to_frame[id(f)] = f
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 510, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 509, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_v_f = __pyx_t_5;
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":511
+ /* "_pydevd_bundle/pydevd_cython.pyx":510
* frame_id_to_frame[id(frame)] = frame
* f = trace_obj.tb_frame
* while f is not None: # <<<<<<<<<<<<<<
@@ -12455,32 +12455,32 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_3 = (__pyx_t_4 != 0);
if (!__pyx_t_3) break;
- /* "_pydevd_bundle/pydevd_cython.pyx":512
+ /* "_pydevd_bundle/pydevd_cython.pyx":511
* f = trace_obj.tb_frame
* while f is not None:
* frame_id_to_frame[id(f)] = f # <<<<<<<<<<<<<<
* f = f.f_back
* f = None
*/
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, __pyx_v_f); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 512, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, __pyx_v_f); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 511, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
- if (unlikely(PyDict_SetItem(__pyx_v_frame_id_to_frame, __pyx_t_5, __pyx_v_f) < 0)) __PYX_ERR(0, 512, __pyx_L52_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_frame_id_to_frame, __pyx_t_5, __pyx_v_f) < 0)) __PYX_ERR(0, 511, __pyx_L52_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":513
+ /* "_pydevd_bundle/pydevd_cython.pyx":512
* while f is not None:
* frame_id_to_frame[id(f)] = f
* f = f.f_back # <<<<<<<<<<<<<<
* f = None
*
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f, __pyx_n_s_f_back); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 513, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f, __pyx_n_s_f_back); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 512, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_f, __pyx_t_5);
__pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":514
+ /* "_pydevd_bundle/pydevd_cython.pyx":513
* frame_id_to_frame[id(f)] = f
* f = f.f_back
* f = None # <<<<<<<<<<<<<<
@@ -12490,14 +12490,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_f, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":516
+ /* "_pydevd_bundle/pydevd_cython.pyx":515
* f = None
*
* thread_id = get_current_thread_id(thread) # <<<<<<<<<<<<<<
*
* if main_debugger.stop_on_failed_tests:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 516, __pyx_L52_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 515, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_14);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_14))) {
@@ -12511,38 +12511,38 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_14, __pyx_t_1, __pyx_v_thread) : __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_v_thread);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 516, __pyx_L52_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 515, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__pyx_v_thread_id = __pyx_t_5;
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":518
+ /* "_pydevd_bundle/pydevd_cython.pyx":517
* thread_id = get_current_thread_id(thread)
*
* if main_debugger.stop_on_failed_tests: # <<<<<<<<<<<<<<
* # Our goal is to find the deepest frame in stack that still belongs to the project and stop there.
* f = trace_obj.tb_frame
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 518, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 517, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 518, __pyx_L52_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 517, __pyx_L52_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_3) {
- /* "_pydevd_bundle/pydevd_cython.pyx":520
+ /* "_pydevd_bundle/pydevd_cython.pyx":519
* if main_debugger.stop_on_failed_tests:
* # Our goal is to find the deepest frame in stack that still belongs to the project and stop there.
* f = trace_obj.tb_frame # <<<<<<<<<<<<<<
* while f:
* abs_path, _, _ = get_abs_path_real_path_and_base_from_frame(f)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 520, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 519, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_f, __pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":521
+ /* "_pydevd_bundle/pydevd_cython.pyx":520
* # Our goal is to find the deepest frame in stack that still belongs to the project and stop there.
* f = trace_obj.tb_frame
* while f: # <<<<<<<<<<<<<<
@@ -12550,17 +12550,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
* if main_debugger.in_project_scope(abs_path):
*/
while (1) {
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_f); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 521, __pyx_L52_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_f); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 520, __pyx_L52_error)
if (!__pyx_t_3) break;
- /* "_pydevd_bundle/pydevd_cython.pyx":522
+ /* "_pydevd_bundle/pydevd_cython.pyx":521
* f = trace_obj.tb_frame
* while f:
* abs_path, _, _ = get_abs_path_real_path_and_base_from_frame(f) # <<<<<<<<<<<<<<
* if main_debugger.in_project_scope(abs_path):
* frame = f
*/
- __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 522, __pyx_L52_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 521, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_14);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_14))) {
@@ -12574,7 +12574,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_14, __pyx_t_1, __pyx_v_f) : __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_v_f);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 522, __pyx_L52_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 521, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) {
@@ -12583,7 +12583,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 522, __pyx_L52_error)
+ __PYX_ERR(0, 521, __pyx_L52_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -12599,17 +12599,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 522, __pyx_L52_error)
+ __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 521, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L52_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 521, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 522, __pyx_L52_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 521, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 522, __pyx_L52_error)
+ __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 521, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_17 = Py_TYPE(__pyx_t_8)->tp_iternext;
@@ -12619,7 +12619,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_9 = __pyx_t_17(__pyx_t_8); if (unlikely(!__pyx_t_9)) goto __pyx_L63_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_8), 3) < 0) __PYX_ERR(0, 522, __pyx_L52_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_8), 3) < 0) __PYX_ERR(0, 521, __pyx_L52_error)
__pyx_t_17 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L64_unpacking_done;
@@ -12627,7 +12627,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_17 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 522, __pyx_L52_error)
+ __PYX_ERR(0, 521, __pyx_L52_error)
__pyx_L64_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_abs_path, __pyx_t_14);
@@ -12637,14 +12637,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_DECREF_SET(__pyx_v__, __pyx_t_9);
__pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":523
+ /* "_pydevd_bundle/pydevd_cython.pyx":522
* while f:
* abs_path, _, _ = get_abs_path_real_path_and_base_from_frame(f)
* if main_debugger.in_project_scope(abs_path): # <<<<<<<<<<<<<<
* frame = f
* break
*/
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 523, __pyx_L52_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 522, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
@@ -12658,14 +12658,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_1, __pyx_v_abs_path) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_v_abs_path);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 523, __pyx_L52_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 522, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 523, __pyx_L52_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 522, __pyx_L52_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_3) {
- /* "_pydevd_bundle/pydevd_cython.pyx":524
+ /* "_pydevd_bundle/pydevd_cython.pyx":523
* abs_path, _, _ = get_abs_path_real_path_and_base_from_frame(f)
* if main_debugger.in_project_scope(abs_path):
* frame = f # <<<<<<<<<<<<<<
@@ -12675,7 +12675,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_v_f);
__Pyx_DECREF_SET(__pyx_v_frame, __pyx_v_f);
- /* "_pydevd_bundle/pydevd_cython.pyx":525
+ /* "_pydevd_bundle/pydevd_cython.pyx":524
* if main_debugger.in_project_scope(abs_path):
* frame = f
* break # <<<<<<<<<<<<<<
@@ -12684,7 +12684,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
goto __pyx_L62_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":523
+ /* "_pydevd_bundle/pydevd_cython.pyx":522
* while f:
* abs_path, _, _ = get_abs_path_real_path_and_base_from_frame(f)
* if main_debugger.in_project_scope(abs_path): # <<<<<<<<<<<<<<
@@ -12693,21 +12693,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":526
+ /* "_pydevd_bundle/pydevd_cython.pyx":525
* frame = f
* break
* f = f.f_back # <<<<<<<<<<<<<<
* f = None
*
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f, __pyx_n_s_f_back); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 526, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f, __pyx_n_s_f_back); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 525, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_f, __pyx_t_5);
__pyx_t_5 = 0;
}
__pyx_L62_break:;
- /* "_pydevd_bundle/pydevd_cython.pyx":527
+ /* "_pydevd_bundle/pydevd_cython.pyx":526
* break
* f = f.f_back
* f = None # <<<<<<<<<<<<<<
@@ -12717,7 +12717,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_f, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":529
+ /* "_pydevd_bundle/pydevd_cython.pyx":528
* f = None
*
* trace_obj = initial_trace_obj # <<<<<<<<<<<<<<
@@ -12727,7 +12727,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_v_initial_trace_obj);
__Pyx_DECREF_SET(__pyx_v_trace_obj, __pyx_v_initial_trace_obj);
- /* "_pydevd_bundle/pydevd_cython.pyx":530
+ /* "_pydevd_bundle/pydevd_cython.pyx":529
*
* trace_obj = initial_trace_obj
* while trace_obj: # <<<<<<<<<<<<<<
@@ -12735,24 +12735,24 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
* break
*/
while (1) {
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_trace_obj); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 530, __pyx_L52_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_trace_obj); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 529, __pyx_L52_error)
if (!__pyx_t_3) break;
- /* "_pydevd_bundle/pydevd_cython.pyx":531
+ /* "_pydevd_bundle/pydevd_cython.pyx":530
* trace_obj = initial_trace_obj
* while trace_obj:
* if trace_obj.tb_frame is frame: # <<<<<<<<<<<<<<
* break
* trace_obj = trace_obj.tb_next
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 531, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_frame); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 530, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_3 = (__pyx_t_5 == __pyx_v_frame);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":532
+ /* "_pydevd_bundle/pydevd_cython.pyx":531
* while trace_obj:
* if trace_obj.tb_frame is frame:
* break # <<<<<<<<<<<<<<
@@ -12761,7 +12761,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
goto __pyx_L67_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":531
+ /* "_pydevd_bundle/pydevd_cython.pyx":530
* trace_obj = initial_trace_obj
* while trace_obj:
* if trace_obj.tb_frame is frame: # <<<<<<<<<<<<<<
@@ -12770,34 +12770,34 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":533
+ /* "_pydevd_bundle/pydevd_cython.pyx":532
* if trace_obj.tb_frame is frame:
* break
* trace_obj = trace_obj.tb_next # <<<<<<<<<<<<<<
*
* add_exception_to_frame(frame, (arg[0], arg[1], trace_obj))
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 533, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_trace_obj, __pyx_n_s_tb_next); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 532, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_trace_obj, __pyx_t_5);
__pyx_t_5 = 0;
}
__pyx_L67_break:;
- /* "_pydevd_bundle/pydevd_cython.pyx":535
+ /* "_pydevd_bundle/pydevd_cython.pyx":534
* trace_obj = trace_obj.tb_next
*
* add_exception_to_frame(frame, (arg[0], arg[1], trace_obj)) # <<<<<<<<<<<<<<
*
* pydevd_vars.add_additional_frame_by_id(thread_id, frame_id_to_frame)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_arg, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_arg, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_14 = __Pyx_GetItemInt(__pyx_v_arg, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_14 = __Pyx_GetItemInt(__pyx_v_arg, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1);
@@ -12823,7 +12823,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_9)) {
PyObject *__pyx_temp[3] = {__pyx_t_14, __pyx_v_frame, __pyx_t_8};
- __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
@@ -12832,14 +12832,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
PyObject *__pyx_temp[3] = {__pyx_t_14, __pyx_v_frame, __pyx_t_8};
- __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else
#endif
{
- __pyx_t_1 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_1 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_14) {
__Pyx_GIVEREF(__pyx_t_14); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_14); __pyx_t_14 = NULL;
@@ -12850,14 +12850,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_15, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 535, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 534, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":518
+ /* "_pydevd_bundle/pydevd_cython.pyx":517
* thread_id = get_current_thread_id(thread)
*
* if main_debugger.stop_on_failed_tests: # <<<<<<<<<<<<<<
@@ -12866,16 +12866,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":537
+ /* "_pydevd_bundle/pydevd_cython.pyx":536
* add_exception_to_frame(frame, (arg[0], arg[1], trace_obj))
*
* pydevd_vars.add_additional_frame_by_id(thread_id, frame_id_to_frame) # <<<<<<<<<<<<<<
*
* try:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 537, __pyx_L52_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 536, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_add_additional_frame_by_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 537, __pyx_L52_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_add_additional_frame_by_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 536, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_9 = NULL;
@@ -12893,7 +12893,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_9, __pyx_v_thread_id, __pyx_v_frame_id_to_frame};
- __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 537, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 536, __pyx_L52_error)
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_5);
} else
@@ -12901,13 +12901,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_9, __pyx_v_thread_id, __pyx_v_frame_id_to_frame};
- __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 537, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 536, __pyx_L52_error)
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_5);
} else
#endif
{
- __pyx_t_8 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 537, __pyx_L52_error)
+ __pyx_t_8 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 536, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_9) {
__Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_9); __pyx_t_9 = NULL;
@@ -12918,14 +12918,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_v_frame_id_to_frame);
__Pyx_GIVEREF(__pyx_v_frame_id_to_frame);
PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_15, __pyx_v_frame_id_to_frame);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 537, __pyx_L52_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 536, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":539
+ /* "_pydevd_bundle/pydevd_cython.pyx":538
* pydevd_vars.add_additional_frame_by_id(thread_id, frame_id_to_frame)
*
* try: # <<<<<<<<<<<<<<
@@ -12934,16 +12934,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":540
+ /* "_pydevd_bundle/pydevd_cython.pyx":539
*
* try:
* main_debugger.send_caught_exception_stack(thread, arg, id(frame)) # <<<<<<<<<<<<<<
* self.set_suspend(thread, CMD_STEP_CAUGHT_EXCEPTION)
* self.do_wait_suspend(thread, frame, event, arg)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_send_caught_exception_stack); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 540, __pyx_L70_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_send_caught_exception_stack); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 539, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, __pyx_v_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 540, __pyx_L70_error)
+ __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, __pyx_v_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 539, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = NULL;
__pyx_t_15 = 0;
@@ -12960,7 +12960,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_v_thread, __pyx_v_arg, __pyx_t_8};
- __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 539, __pyx_L70_error)
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
@@ -12969,14 +12969,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_v_thread, __pyx_v_arg, __pyx_t_8};
- __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 3+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 539, __pyx_L70_error)
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else
#endif
{
- __pyx_t_14 = PyTuple_New(3+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 540, __pyx_L70_error)
+ __pyx_t_14 = PyTuple_New(3+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 539, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_14);
if (__pyx_t_9) {
__Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_9); __pyx_t_9 = NULL;
@@ -12990,23 +12990,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_14, 2+__pyx_t_15, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_14, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_14, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 539, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":541
+ /* "_pydevd_bundle/pydevd_cython.pyx":540
* try:
* main_debugger.send_caught_exception_stack(thread, arg, id(frame))
* self.set_suspend(thread, CMD_STEP_CAUGHT_EXCEPTION) # <<<<<<<<<<<<<<
* self.do_wait_suspend(thread, frame, event, arg)
* main_debugger.send_caught_exception_stack_proceeded(thread)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 541, __pyx_L70_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 540, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 541, __pyx_L70_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 540, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_14);
__pyx_t_8 = NULL;
__pyx_t_15 = 0;
@@ -13023,7 +13023,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_v_thread, __pyx_t_14};
- __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 541, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L70_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
@@ -13032,14 +13032,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_v_thread, __pyx_t_14};
- __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 541, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 2+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L70_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
} else
#endif
{
- __pyx_t_9 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 541, __pyx_L70_error)
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 540, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_9);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
@@ -13050,21 +13050,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_GIVEREF(__pyx_t_14);
PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_15, __pyx_t_14);
__pyx_t_14 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 541, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 540, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":542
+ /* "_pydevd_bundle/pydevd_cython.pyx":541
* main_debugger.send_caught_exception_stack(thread, arg, id(frame))
* self.set_suspend(thread, CMD_STEP_CAUGHT_EXCEPTION)
* self.do_wait_suspend(thread, frame, event, arg) # <<<<<<<<<<<<<<
* main_debugger.send_caught_exception_stack_proceeded(thread)
*
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L70_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 541, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_9 = NULL;
__pyx_t_15 = 0;
@@ -13081,7 +13081,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_v_thread, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 4+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 542, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 4+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 541, __pyx_L70_error)
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_5);
} else
@@ -13089,13 +13089,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_v_thread, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 4+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 542, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_15, 4+__pyx_t_15); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 541, __pyx_L70_error)
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_5);
} else
#endif
{
- __pyx_t_14 = PyTuple_New(4+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 542, __pyx_L70_error)
+ __pyx_t_14 = PyTuple_New(4+__pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 541, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_14);
if (__pyx_t_9) {
__Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_9); __pyx_t_9 = NULL;
@@ -13112,21 +13112,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_14, 3+__pyx_t_15, __pyx_v_arg);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_14, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 542, __pyx_L70_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_14, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 541, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":543
+ /* "_pydevd_bundle/pydevd_cython.pyx":542
* self.set_suspend(thread, CMD_STEP_CAUGHT_EXCEPTION)
* self.do_wait_suspend(thread, frame, event, arg)
* main_debugger.send_caught_exception_stack_proceeded(thread) # <<<<<<<<<<<<<<
*
* finally:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_send_caught_exception_stack_proc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 543, __pyx_L70_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_send_caught_exception_stack_proc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_14 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -13140,13 +13140,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_14, __pyx_v_thread) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_thread);
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 543, __pyx_L70_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 542, __pyx_L70_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":546
+ /* "_pydevd_bundle/pydevd_cython.pyx":545
*
* finally:
* pydevd_vars.remove_additional_frame_by_id(thread_id) # <<<<<<<<<<<<<<
@@ -13155,9 +13155,9 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*finally:*/ {
/*normal exit:*/{
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 546, __pyx_L52_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 545, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_remove_additional_frame_by_id); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 546, __pyx_L52_error)
+ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_remove_additional_frame_by_id); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 545, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -13172,7 +13172,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_14, __pyx_t_1, __pyx_v_thread_id) : __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_v_thread_id);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 546, __pyx_L52_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 545, __pyx_L52_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
@@ -13201,9 +13201,9 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XGOTREF(__pyx_t_25);
__pyx_t_15 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_19 = __pyx_filename;
{
- __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 546, __pyx_L73_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 545, __pyx_L73_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_remove_additional_frame_by_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 546, __pyx_L73_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_remove_additional_frame_by_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 545, __pyx_L73_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__pyx_t_14 = NULL;
@@ -13218,7 +13218,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_14, __pyx_v_thread_id) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_thread_id);
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 546, __pyx_L73_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 545, __pyx_L73_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
@@ -13252,7 +13252,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_L71:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":507
+ /* "_pydevd_bundle/pydevd_cython.pyx":506
* thread = self._args[3]
*
* try: # <<<<<<<<<<<<<<
@@ -13274,7 +13274,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":547
+ /* "_pydevd_bundle/pydevd_cython.pyx":546
* finally:
* pydevd_vars.remove_additional_frame_by_id(thread_id)
* except KeyboardInterrupt as e: # <<<<<<<<<<<<<<
@@ -13284,14 +13284,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_18 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyboardInterrupt);
if (__pyx_t_18) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.handle_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_14) < 0) __PYX_ERR(0, 547, __pyx_L54_except_error)
+ if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_14) < 0) __PYX_ERR(0, 546, __pyx_L54_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_14);
__Pyx_INCREF(__pyx_t_1);
__pyx_v_e = __pyx_t_1;
- /* "_pydevd_bundle/pydevd_cython.pyx":548
+ /* "_pydevd_bundle/pydevd_cython.pyx":547
* pydevd_vars.remove_additional_frame_by_id(thread_id)
* except KeyboardInterrupt as e:
* raise e # <<<<<<<<<<<<<<
@@ -13299,10 +13299,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
* traceback.print_exc()
*/
__Pyx_Raise(__pyx_v_e, 0, 0, 0);
- __PYX_ERR(0, 548, __pyx_L54_except_error)
+ __PYX_ERR(0, 547, __pyx_L54_except_error)
}
- /* "_pydevd_bundle/pydevd_cython.pyx":549
+ /* "_pydevd_bundle/pydevd_cython.pyx":548
* except KeyboardInterrupt as e:
* raise e
* except: # <<<<<<<<<<<<<<
@@ -13311,21 +13311,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.handle_exception", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_14, &__pyx_t_1, &__pyx_t_5) < 0) __PYX_ERR(0, 549, __pyx_L54_except_error)
+ if (__Pyx_GetException(&__pyx_t_14, &__pyx_t_1, &__pyx_t_5) < 0) __PYX_ERR(0, 548, __pyx_L54_except_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_5);
- /* "_pydevd_bundle/pydevd_cython.pyx":550
+ /* "_pydevd_bundle/pydevd_cython.pyx":549
* raise e
* except:
* traceback.print_exc() # <<<<<<<<<<<<<<
*
* main_debugger.set_trace_for_frame_and_parents(frame)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_traceback); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 550, __pyx_L54_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_traceback); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 549, __pyx_L54_except_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 550, __pyx_L54_except_error)
+ __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 549, __pyx_L54_except_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -13340,7 +13340,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_9 = (__pyx_t_8) ? __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_8) : __Pyx_PyObject_CallNoArg(__pyx_t_13);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 550, __pyx_L54_except_error)
+ if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 549, __pyx_L54_except_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
@@ -13351,7 +13351,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_L54_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":507
+ /* "_pydevd_bundle/pydevd_cython.pyx":506
* thread = self._args[3]
*
* try: # <<<<<<<<<<<<<<
@@ -13371,14 +13371,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_L57_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":552
+ /* "_pydevd_bundle/pydevd_cython.pyx":551
* traceback.print_exc()
*
* main_debugger.set_trace_for_frame_and_parents(frame) # <<<<<<<<<<<<<<
* finally:
* # Make sure the user cannot see the '__exception__' we added after we leave the suspend state.
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_set_trace_for_frame_and_parents); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 552, __pyx_L4_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_set_trace_for_frame_and_parents); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 551, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_14 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -13392,13 +13392,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_14, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 552, __pyx_L4_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 551, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":555
+ /* "_pydevd_bundle/pydevd_cython.pyx":554
* finally:
* # Make sure the user cannot see the '__exception__' we added after we leave the suspend state.
* remove_exception_from_frame(frame) # <<<<<<<<<<<<<<
@@ -13407,7 +13407,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
*/
/*finally:*/ {
/*normal exit:*/{
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 555, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_14 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -13421,12 +13421,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_14, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 555, __pyx_L1_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":557
+ /* "_pydevd_bundle/pydevd_cython.pyx":556
* remove_exception_from_frame(frame)
* # Clear some local variables...
* frame = None # <<<<<<<<<<<<<<
@@ -13436,7 +13436,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_frame, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":558
+ /* "_pydevd_bundle/pydevd_cython.pyx":557
* # Clear some local variables...
* frame = None
* trace_obj = None # <<<<<<<<<<<<<<
@@ -13446,7 +13446,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":559
+ /* "_pydevd_bundle/pydevd_cython.pyx":558
* frame = None
* trace_obj = None
* initial_trace_obj = None # <<<<<<<<<<<<<<
@@ -13456,7 +13456,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_initial_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":560
+ /* "_pydevd_bundle/pydevd_cython.pyx":559
* trace_obj = None
* initial_trace_obj = None
* check_trace_obj = None # <<<<<<<<<<<<<<
@@ -13466,7 +13466,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_check_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":561
+ /* "_pydevd_bundle/pydevd_cython.pyx":560
* initial_trace_obj = None
* check_trace_obj = None
* f = None # <<<<<<<<<<<<<<
@@ -13476,7 +13476,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_f, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":562
+ /* "_pydevd_bundle/pydevd_cython.pyx":561
* check_trace_obj = None
* f = None
* frame_id_to_frame = None # <<<<<<<<<<<<<<
@@ -13486,7 +13486,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_frame_id_to_frame, ((PyObject*)Py_None));
- /* "_pydevd_bundle/pydevd_cython.pyx":563
+ /* "_pydevd_bundle/pydevd_cython.pyx":562
* f = None
* frame_id_to_frame = None
* main_debugger = None # <<<<<<<<<<<<<<
@@ -13496,7 +13496,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_main_debugger, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":564
+ /* "_pydevd_bundle/pydevd_cython.pyx":563
* frame_id_to_frame = None
* main_debugger = None
* thread = None # <<<<<<<<<<<<<<
@@ -13531,14 +13531,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_18 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_26 = __pyx_filename;
{
- /* "_pydevd_bundle/pydevd_cython.pyx":555
+ /* "_pydevd_bundle/pydevd_cython.pyx":554
* finally:
* # Make sure the user cannot see the '__exception__' we added after we leave the suspend state.
* remove_exception_from_frame(frame) # <<<<<<<<<<<<<<
* # Clear some local variables...
* frame = None
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 555, __pyx_L79_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L79_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_14 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -13552,12 +13552,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_14, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 555, __pyx_L79_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 554, __pyx_L79_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":557
+ /* "_pydevd_bundle/pydevd_cython.pyx":556
* remove_exception_from_frame(frame)
* # Clear some local variables...
* frame = None # <<<<<<<<<<<<<<
@@ -13567,7 +13567,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_frame, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":558
+ /* "_pydevd_bundle/pydevd_cython.pyx":557
* # Clear some local variables...
* frame = None
* trace_obj = None # <<<<<<<<<<<<<<
@@ -13577,7 +13577,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":559
+ /* "_pydevd_bundle/pydevd_cython.pyx":558
* frame = None
* trace_obj = None
* initial_trace_obj = None # <<<<<<<<<<<<<<
@@ -13587,7 +13587,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_initial_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":560
+ /* "_pydevd_bundle/pydevd_cython.pyx":559
* trace_obj = None
* initial_trace_obj = None
* check_trace_obj = None # <<<<<<<<<<<<<<
@@ -13597,7 +13597,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_check_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":561
+ /* "_pydevd_bundle/pydevd_cython.pyx":560
* initial_trace_obj = None
* check_trace_obj = None
* f = None # <<<<<<<<<<<<<<
@@ -13607,7 +13607,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_f, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":562
+ /* "_pydevd_bundle/pydevd_cython.pyx":561
* check_trace_obj = None
* f = None
* frame_id_to_frame = None # <<<<<<<<<<<<<<
@@ -13617,7 +13617,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_frame_id_to_frame, ((PyObject*)Py_None));
- /* "_pydevd_bundle/pydevd_cython.pyx":563
+ /* "_pydevd_bundle/pydevd_cython.pyx":562
* f = None
* frame_id_to_frame = None
* main_debugger = None # <<<<<<<<<<<<<<
@@ -13627,7 +13627,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_main_debugger, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":564
+ /* "_pydevd_bundle/pydevd_cython.pyx":563
* frame_id_to_frame = None
* main_debugger = None
* thread = None # <<<<<<<<<<<<<<
@@ -13667,14 +13667,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_t_23 = __pyx_r;
__pyx_r = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":555
+ /* "_pydevd_bundle/pydevd_cython.pyx":554
* finally:
* # Make sure the user cannot see the '__exception__' we added after we leave the suspend state.
* remove_exception_from_frame(frame) # <<<<<<<<<<<<<<
* # Clear some local variables...
* frame = None
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 555, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_14 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -13688,12 +13688,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
}
__pyx_t_5 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_14, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 555, __pyx_L1_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":557
+ /* "_pydevd_bundle/pydevd_cython.pyx":556
* remove_exception_from_frame(frame)
* # Clear some local variables...
* frame = None # <<<<<<<<<<<<<<
@@ -13703,7 +13703,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_frame, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":558
+ /* "_pydevd_bundle/pydevd_cython.pyx":557
* # Clear some local variables...
* frame = None
* trace_obj = None # <<<<<<<<<<<<<<
@@ -13713,7 +13713,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":559
+ /* "_pydevd_bundle/pydevd_cython.pyx":558
* frame = None
* trace_obj = None
* initial_trace_obj = None # <<<<<<<<<<<<<<
@@ -13723,7 +13723,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_initial_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":560
+ /* "_pydevd_bundle/pydevd_cython.pyx":559
* trace_obj = None
* initial_trace_obj = None
* check_trace_obj = None # <<<<<<<<<<<<<<
@@ -13733,7 +13733,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_check_trace_obj, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":561
+ /* "_pydevd_bundle/pydevd_cython.pyx":560
* initial_trace_obj = None
* check_trace_obj = None
* f = None # <<<<<<<<<<<<<<
@@ -13743,7 +13743,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_f, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":562
+ /* "_pydevd_bundle/pydevd_cython.pyx":561
* check_trace_obj = None
* f = None
* frame_id_to_frame = None # <<<<<<<<<<<<<<
@@ -13753,7 +13753,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_frame_id_to_frame, ((PyObject*)Py_None));
- /* "_pydevd_bundle/pydevd_cython.pyx":563
+ /* "_pydevd_bundle/pydevd_cython.pyx":562
* f = None
* frame_id_to_frame = None
* main_debugger = None # <<<<<<<<<<<<<<
@@ -13763,7 +13763,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_main_debugger, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":564
+ /* "_pydevd_bundle/pydevd_cython.pyx":563
* frame_id_to_frame = None
* main_debugger = None
* thread = None # <<<<<<<<<<<<<<
@@ -13779,7 +13779,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
__pyx_L5:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":430
+ /* "_pydevd_bundle/pydevd_cython.pyx":429
* return should_stop, frame
*
* def handle_exception(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -13828,7 +13828,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_12handle_e
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":566
+/* "_pydevd_bundle/pydevd_cython.pyx":565
* thread = None
*
* def get_func_name(self, frame): # <<<<<<<<<<<<<<
@@ -13872,31 +13872,31 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("get_func_name", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":567
+ /* "_pydevd_bundle/pydevd_cython.pyx":566
*
* def get_func_name(self, frame):
* code_obj = frame.f_code # <<<<<<<<<<<<<<
* func_name = code_obj.co_name
* try:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 567, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 566, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_code_obj = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":568
+ /* "_pydevd_bundle/pydevd_cython.pyx":567
* def get_func_name(self, frame):
* code_obj = frame.f_code
* func_name = code_obj.co_name # <<<<<<<<<<<<<<
* try:
* cls_name = get_clsname_for_code(code_obj, frame)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_code_obj, __pyx_n_s_co_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 568, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_code_obj, __pyx_n_s_co_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 567, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_func_name = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":569
+ /* "_pydevd_bundle/pydevd_cython.pyx":568
* code_obj = frame.f_code
* func_name = code_obj.co_name
* try: # <<<<<<<<<<<<<<
@@ -13912,14 +13912,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
__Pyx_XGOTREF(__pyx_t_4);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":570
+ /* "_pydevd_bundle/pydevd_cython.pyx":569
* func_name = code_obj.co_name
* try:
* cls_name = get_clsname_for_code(code_obj, frame) # <<<<<<<<<<<<<<
* if cls_name is not None:
* return "%s.%s" % (cls_name, func_name)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_get_clsname_for_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 570, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_get_clsname_for_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 569, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = NULL;
__pyx_t_7 = 0;
@@ -13936,7 +13936,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_code_obj, __pyx_v_frame};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 570, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 569, __pyx_L3_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
@@ -13944,13 +13944,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_code_obj, __pyx_v_frame};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 570, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 569, __pyx_L3_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
#endif
{
- __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 570, __pyx_L3_error)
+ __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 569, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -13961,7 +13961,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
__Pyx_INCREF(__pyx_v_frame);
__Pyx_GIVEREF(__pyx_v_frame);
PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_v_frame);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 570, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 569, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
@@ -13969,7 +13969,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
__pyx_v_cls_name = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":571
+ /* "_pydevd_bundle/pydevd_cython.pyx":570
* try:
* cls_name = get_clsname_for_code(code_obj, frame)
* if cls_name is not None: # <<<<<<<<<<<<<<
@@ -13980,7 +13980,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":572
+ /* "_pydevd_bundle/pydevd_cython.pyx":571
* cls_name = get_clsname_for_code(code_obj, frame)
* if cls_name is not None:
* return "%s.%s" % (cls_name, func_name) # <<<<<<<<<<<<<<
@@ -13988,7 +13988,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
* return func_name
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 572, __pyx_L3_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 571, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_cls_name);
__Pyx_GIVEREF(__pyx_v_cls_name);
@@ -13996,14 +13996,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
__Pyx_INCREF(__pyx_v_func_name);
__Pyx_GIVEREF(__pyx_v_func_name);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_func_name);
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_s_s, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 572, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_s_s, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 571, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":571
+ /* "_pydevd_bundle/pydevd_cython.pyx":570
* try:
* cls_name = get_clsname_for_code(code_obj, frame)
* if cls_name is not None: # <<<<<<<<<<<<<<
@@ -14012,7 +14012,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":574
+ /* "_pydevd_bundle/pydevd_cython.pyx":573
* return "%s.%s" % (cls_name, func_name)
* else:
* return func_name # <<<<<<<<<<<<<<
@@ -14026,7 +14026,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
goto __pyx_L7_try_return;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":569
+ /* "_pydevd_bundle/pydevd_cython.pyx":568
* code_obj = frame.f_code
* func_name = code_obj.co_name
* try: # <<<<<<<<<<<<<<
@@ -14040,7 +14040,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":575
+ /* "_pydevd_bundle/pydevd_cython.pyx":574
* else:
* return func_name
* except: # <<<<<<<<<<<<<<
@@ -14049,21 +14049,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.get_func_name", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 575, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 574, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
- /* "_pydevd_bundle/pydevd_cython.pyx":576
+ /* "_pydevd_bundle/pydevd_cython.pyx":575
* return func_name
* except:
* traceback.print_exc() # <<<<<<<<<<<<<<
* return func_name
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 576, __pyx_L5_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 575, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 576, __pyx_L5_except_error)
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 575, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = NULL;
@@ -14078,12 +14078,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
}
__pyx_t_6 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 576, __pyx_L5_except_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 575, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":577
+ /* "_pydevd_bundle/pydevd_cython.pyx":576
* except:
* traceback.print_exc()
* return func_name # <<<<<<<<<<<<<<
@@ -14100,7 +14100,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
}
__pyx_L5_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":569
+ /* "_pydevd_bundle/pydevd_cython.pyx":568
* code_obj = frame.f_code
* func_name = code_obj.co_name
* try: # <<<<<<<<<<<<<<
@@ -14126,7 +14126,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
goto __pyx_L0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":566
+ /* "_pydevd_bundle/pydevd_cython.pyx":565
* thread = None
*
* def get_func_name(self, frame): # <<<<<<<<<<<<<<
@@ -14153,7 +14153,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_14get_func
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":579
+/* "_pydevd_bundle/pydevd_cython.pyx":578
* return func_name
*
* def manage_return_values(self, main_debugger, frame, event, arg): # <<<<<<<<<<<<<<
@@ -14201,23 +14201,23 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_17manage_r
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_frame)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, 1); __PYX_ERR(0, 579, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, 1); __PYX_ERR(0, 578, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, 2); __PYX_ERR(0, 579, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, 2); __PYX_ERR(0, 578, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, 3); __PYX_ERR(0, 579, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, 3); __PYX_ERR(0, 578, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "manage_return_values") < 0)) __PYX_ERR(0, 579, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "manage_return_values") < 0)) __PYX_ERR(0, 578, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
goto __pyx_L5_argtuple_error;
@@ -14234,7 +14234,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_17manage_r
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 579, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("manage_return_values", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 578, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.manage_return_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -14247,7 +14247,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_17manage_r
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":581
+/* "_pydevd_bundle/pydevd_cython.pyx":580
* def manage_return_values(self, main_debugger, frame, event, arg):
*
* def get_func_name(frame): # <<<<<<<<<<<<<<
@@ -14292,31 +14292,31 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("get_func_name", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":582
+ /* "_pydevd_bundle/pydevd_cython.pyx":581
*
* def get_func_name(frame):
* code_obj = frame.f_code # <<<<<<<<<<<<<<
* func_name = code_obj.co_name
* try:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 582, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 581, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_code_obj = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":583
+ /* "_pydevd_bundle/pydevd_cython.pyx":582
* def get_func_name(frame):
* code_obj = frame.f_code
* func_name = code_obj.co_name # <<<<<<<<<<<<<<
* try:
* cls_name = get_clsname_for_code(code_obj, frame)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_code_obj, __pyx_n_s_co_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 583, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_code_obj, __pyx_n_s_co_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_func_name = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":584
+ /* "_pydevd_bundle/pydevd_cython.pyx":583
* code_obj = frame.f_code
* func_name = code_obj.co_name
* try: # <<<<<<<<<<<<<<
@@ -14332,14 +14332,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
__Pyx_XGOTREF(__pyx_t_4);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":585
+ /* "_pydevd_bundle/pydevd_cython.pyx":584
* func_name = code_obj.co_name
* try:
* cls_name = get_clsname_for_code(code_obj, frame) # <<<<<<<<<<<<<<
* if cls_name is not None:
* return "%s.%s" % (cls_name, func_name)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_get_clsname_for_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 585, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_get_clsname_for_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 584, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = NULL;
__pyx_t_7 = 0;
@@ -14356,7 +14356,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_code_obj, __pyx_v_frame};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 585, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 584, __pyx_L3_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
@@ -14364,13 +14364,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_code_obj, __pyx_v_frame};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 585, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 584, __pyx_L3_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
#endif
{
- __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 585, __pyx_L3_error)
+ __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 584, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -14381,7 +14381,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
__Pyx_INCREF(__pyx_v_frame);
__Pyx_GIVEREF(__pyx_v_frame);
PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_v_frame);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 585, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 584, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
@@ -14389,7 +14389,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
__pyx_v_cls_name = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":586
+ /* "_pydevd_bundle/pydevd_cython.pyx":585
* try:
* cls_name = get_clsname_for_code(code_obj, frame)
* if cls_name is not None: # <<<<<<<<<<<<<<
@@ -14400,7 +14400,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":587
+ /* "_pydevd_bundle/pydevd_cython.pyx":586
* cls_name = get_clsname_for_code(code_obj, frame)
* if cls_name is not None:
* return "%s.%s" % (cls_name, func_name) # <<<<<<<<<<<<<<
@@ -14408,7 +14408,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
* return func_name
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 587, __pyx_L3_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 586, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_cls_name);
__Pyx_GIVEREF(__pyx_v_cls_name);
@@ -14416,14 +14416,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
__Pyx_INCREF(__pyx_v_func_name);
__Pyx_GIVEREF(__pyx_v_func_name);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_func_name);
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_s_s, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 587, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_s_s, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 586, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":586
+ /* "_pydevd_bundle/pydevd_cython.pyx":585
* try:
* cls_name = get_clsname_for_code(code_obj, frame)
* if cls_name is not None: # <<<<<<<<<<<<<<
@@ -14432,7 +14432,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":589
+ /* "_pydevd_bundle/pydevd_cython.pyx":588
* return "%s.%s" % (cls_name, func_name)
* else:
* return func_name # <<<<<<<<<<<<<<
@@ -14446,7 +14446,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
goto __pyx_L7_try_return;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":584
+ /* "_pydevd_bundle/pydevd_cython.pyx":583
* code_obj = frame.f_code
* func_name = code_obj.co_name
* try: # <<<<<<<<<<<<<<
@@ -14460,7 +14460,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":590
+ /* "_pydevd_bundle/pydevd_cython.pyx":589
* else:
* return func_name
* except: # <<<<<<<<<<<<<<
@@ -14469,21 +14469,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.manage_return_values.get_func_name", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 590, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 589, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
- /* "_pydevd_bundle/pydevd_cython.pyx":591
+ /* "_pydevd_bundle/pydevd_cython.pyx":590
* return func_name
* except:
* traceback.print_exc() # <<<<<<<<<<<<<<
* return func_name
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 591, __pyx_L5_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 590, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 591, __pyx_L5_except_error)
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 590, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = NULL;
@@ -14498,12 +14498,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
}
__pyx_t_6 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 591, __pyx_L5_except_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 590, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":592
+ /* "_pydevd_bundle/pydevd_cython.pyx":591
* except:
* traceback.print_exc()
* return func_name # <<<<<<<<<<<<<<
@@ -14520,7 +14520,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
}
__pyx_L5_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":584
+ /* "_pydevd_bundle/pydevd_cython.pyx":583
* code_obj = frame.f_code
* func_name = code_obj.co_name
* try: # <<<<<<<<<<<<<<
@@ -14546,7 +14546,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
goto __pyx_L0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":581
+ /* "_pydevd_bundle/pydevd_cython.pyx":580
* def manage_return_values(self, main_debugger, frame, event, arg):
*
* def get_func_name(frame): # <<<<<<<<<<<<<<
@@ -14573,7 +14573,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_r
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":579
+/* "_pydevd_bundle/pydevd_cython.pyx":578
* return func_name
*
* def manage_return_values(self, main_debugger, frame, event, arg): # <<<<<<<<<<<<<<
@@ -14603,19 +14603,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("manage_return_values", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":581
+ /* "_pydevd_bundle/pydevd_cython.pyx":580
* def manage_return_values(self, main_debugger, frame, event, arg):
*
* def get_func_name(frame): # <<<<<<<<<<<<<<
* code_obj = frame.f_code
* func_name = code_obj.co_name
*/
- __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_return_values_1get_func_name, 0, __pyx_n_s_manage_return_values_locals_get, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython, __pyx_d, ((PyObject *)__pyx_codeobj__4)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 581, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_return_values_1get_func_name, 0, __pyx_n_s_manage_return_values_locals_get, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython, __pyx_d, ((PyObject *)__pyx_codeobj__4)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 580, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_get_func_name = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":594
+ /* "_pydevd_bundle/pydevd_cython.pyx":593
* return func_name
*
* try: # <<<<<<<<<<<<<<
@@ -14631,85 +14631,85 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__Pyx_XGOTREF(__pyx_t_4);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":595
+ /* "_pydevd_bundle/pydevd_cython.pyx":594
*
* try:
* if main_debugger.show_return_values: # <<<<<<<<<<<<<<
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"):
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_show_return_values); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 595, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_show_return_values); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 594, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 595, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 594, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_5) {
- /* "_pydevd_bundle/pydevd_cython.pyx":596
+ /* "_pydevd_bundle/pydevd_cython.pyx":595
* try:
* if main_debugger.show_return_values:
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"): # <<<<<<<<<<<<<<
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT not in dict_keys(frame.f_back.f_locals):
*/
- __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 596, __pyx_L3_error)
+ __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 595, __pyx_L3_error)
if (__pyx_t_6) {
} else {
__pyx_t_5 = __pyx_t_6;
goto __pyx_L11_bool_binop_done;
}
- __pyx_t_6 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 596, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 595, __pyx_L3_error)
__pyx_t_7 = (__pyx_t_6 != 0);
if (__pyx_t_7) {
} else {
__pyx_t_5 = __pyx_t_7;
goto __pyx_L11_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 596, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 595, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_s_co_name); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 596, __pyx_L3_error)
+ __pyx_t_7 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_s_co_name); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 595, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = (__pyx_t_7 != 0);
__pyx_t_5 = __pyx_t_6;
__pyx_L11_bool_binop_done:;
if (__pyx_t_5) {
- /* "_pydevd_bundle/pydevd_cython.pyx":597
+ /* "_pydevd_bundle/pydevd_cython.pyx":596
* if main_debugger.show_return_values:
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"):
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"): # <<<<<<<<<<<<<<
* if RETURN_VALUES_DICT not in dict_keys(frame.f_back.f_locals):
* frame.f_back.f_locals[RETURN_VALUES_DICT] = {}
*/
- __pyx_t_6 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 597, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 596, __pyx_L3_error)
__pyx_t_7 = (__pyx_t_6 != 0);
if (__pyx_t_7) {
} else {
__pyx_t_5 = __pyx_t_7;
goto __pyx_L15_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 597, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 596, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_s_f_locals); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 597, __pyx_L3_error)
+ __pyx_t_7 = __Pyx_HasAttr(__pyx_t_1, __pyx_n_s_f_locals); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 596, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = (__pyx_t_7 != 0);
__pyx_t_5 = __pyx_t_6;
__pyx_L15_bool_binop_done:;
if (__pyx_t_5) {
- /* "_pydevd_bundle/pydevd_cython.pyx":598
+ /* "_pydevd_bundle/pydevd_cython.pyx":597
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"):
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT not in dict_keys(frame.f_back.f_locals): # <<<<<<<<<<<<<<
* frame.f_back.f_locals[RETURN_VALUES_DICT] = {}
* name = get_func_name(frame)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 598, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 597, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 598, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 597, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 598, __pyx_L3_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 597, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 598, __pyx_L3_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 597, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_10 = NULL;
@@ -14725,37 +14725,37 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__pyx_t_8 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_10, __pyx_t_11) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_11);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 598, __pyx_L3_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 597, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __pyx_t_5 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_t_8, Py_NE)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 598, __pyx_L3_error)
+ __pyx_t_5 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_t_8, Py_NE)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 597, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
- /* "_pydevd_bundle/pydevd_cython.pyx":599
+ /* "_pydevd_bundle/pydevd_cython.pyx":598
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT not in dict_keys(frame.f_back.f_locals):
* frame.f_back.f_locals[RETURN_VALUES_DICT] = {} # <<<<<<<<<<<<<<
* name = get_func_name(frame)
* frame.f_back.f_locals[RETURN_VALUES_DICT][name] = arg
*/
- __pyx_t_8 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 599, __pyx_L3_error)
+ __pyx_t_8 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 598, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 599, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 598, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 599, __pyx_L3_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 598, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 599, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 598, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- if (unlikely(PyObject_SetItem(__pyx_t_9, __pyx_t_1, __pyx_t_8) < 0)) __PYX_ERR(0, 599, __pyx_L3_error)
+ if (unlikely(PyObject_SetItem(__pyx_t_9, __pyx_t_1, __pyx_t_8) < 0)) __PYX_ERR(0, 598, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":598
+ /* "_pydevd_bundle/pydevd_cython.pyx":597
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"):
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT not in dict_keys(frame.f_back.f_locals): # <<<<<<<<<<<<<<
@@ -14764,40 +14764,40 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":600
+ /* "_pydevd_bundle/pydevd_cython.pyx":599
* if RETURN_VALUES_DICT not in dict_keys(frame.f_back.f_locals):
* frame.f_back.f_locals[RETURN_VALUES_DICT] = {}
* name = get_func_name(frame) # <<<<<<<<<<<<<<
* frame.f_back.f_locals[RETURN_VALUES_DICT][name] = arg
* if main_debugger.remove_return_values_flag:
*/
- __pyx_t_8 = __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_return_values_get_func_name(__pyx_v_get_func_name, __pyx_v_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 600, __pyx_L3_error)
+ __pyx_t_8 = __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20manage_return_values_get_func_name(__pyx_v_get_func_name, __pyx_v_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 599, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_v_name = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":601
+ /* "_pydevd_bundle/pydevd_cython.pyx":600
* frame.f_back.f_locals[RETURN_VALUES_DICT] = {}
* name = get_func_name(frame)
* frame.f_back.f_locals[RETURN_VALUES_DICT][name] = arg # <<<<<<<<<<<<<<
* if main_debugger.remove_return_values_flag:
* # Showing return values was turned off, we should remove them from locals dict.
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 601, __pyx_L3_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 600, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 601, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 600, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 601, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 600, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __Pyx_PyObject_GetItem(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 601, __pyx_L3_error)
+ __pyx_t_9 = __Pyx_PyObject_GetItem(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 600, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(PyObject_SetItem(__pyx_t_9, __pyx_v_name, __pyx_v_arg) < 0)) __PYX_ERR(0, 601, __pyx_L3_error)
+ if (unlikely(PyObject_SetItem(__pyx_t_9, __pyx_v_name, __pyx_v_arg) < 0)) __PYX_ERR(0, 600, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":597
+ /* "_pydevd_bundle/pydevd_cython.pyx":596
* if main_debugger.show_return_values:
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"):
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"): # <<<<<<<<<<<<<<
@@ -14806,7 +14806,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":596
+ /* "_pydevd_bundle/pydevd_cython.pyx":595
* try:
* if main_debugger.show_return_values:
* if event == "return" and hasattr(frame, "f_code") and hasattr(frame.f_code, "co_name"): # <<<<<<<<<<<<<<
@@ -14815,7 +14815,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":595
+ /* "_pydevd_bundle/pydevd_cython.pyx":594
*
* try:
* if main_debugger.show_return_values: # <<<<<<<<<<<<<<
@@ -14824,31 +14824,31 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":602
+ /* "_pydevd_bundle/pydevd_cython.pyx":601
* name = get_func_name(frame)
* frame.f_back.f_locals[RETURN_VALUES_DICT][name] = arg
* if main_debugger.remove_return_values_flag: # <<<<<<<<<<<<<<
* # Showing return values was turned off, we should remove them from locals dict.
* # The values can be in the current frame or in the back one
*/
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 602, __pyx_L3_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 601, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 602, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 601, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
if (__pyx_t_6) {
- /* "_pydevd_bundle/pydevd_cython.pyx":605
+ /* "_pydevd_bundle/pydevd_cython.pyx":604
* # Showing return values was turned off, we should remove them from locals dict.
* # The values can be in the current frame or in the back one
* if RETURN_VALUES_DICT in dict_keys(frame.f_locals): # <<<<<<<<<<<<<<
* frame.f_locals.pop(RETURN_VALUES_DICT)
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 605, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 604, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 605, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 604, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 605, __pyx_L3_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 604, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -14863,28 +14863,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__pyx_t_8 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_10, __pyx_t_11) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_11);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 605, __pyx_L3_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 604, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_6 = (__Pyx_PySequence_ContainsTF(__pyx_t_9, __pyx_t_8, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 605, __pyx_L3_error)
+ __pyx_t_6 = (__Pyx_PySequence_ContainsTF(__pyx_t_9, __pyx_t_8, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 604, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_5 = (__pyx_t_6 != 0);
if (__pyx_t_5) {
- /* "_pydevd_bundle/pydevd_cython.pyx":606
+ /* "_pydevd_bundle/pydevd_cython.pyx":605
* # The values can be in the current frame or in the back one
* if RETURN_VALUES_DICT in dict_keys(frame.f_locals):
* frame.f_locals.pop(RETURN_VALUES_DICT) # <<<<<<<<<<<<<<
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT in dict_keys(frame.f_back.f_locals):
*/
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 606, __pyx_L3_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 605, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_pop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 606, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_pop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 605, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 606, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 605, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_11 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -14899,12 +14899,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__pyx_t_8 = (__pyx_t_11) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_11, __pyx_t_9) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_9);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 606, __pyx_L3_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 605, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":605
+ /* "_pydevd_bundle/pydevd_cython.pyx":604
* # Showing return values was turned off, we should remove them from locals dict.
* # The values can be in the current frame or in the back one
* if RETURN_VALUES_DICT in dict_keys(frame.f_locals): # <<<<<<<<<<<<<<
@@ -14913,43 +14913,43 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":607
+ /* "_pydevd_bundle/pydevd_cython.pyx":606
* if RETURN_VALUES_DICT in dict_keys(frame.f_locals):
* frame.f_locals.pop(RETURN_VALUES_DICT)
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"): # <<<<<<<<<<<<<<
* if RETURN_VALUES_DICT in dict_keys(frame.f_back.f_locals):
* frame.f_back.f_locals.pop(RETURN_VALUES_DICT)
*/
- __pyx_t_6 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 607, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 606, __pyx_L3_error)
__pyx_t_7 = (__pyx_t_6 != 0);
if (__pyx_t_7) {
} else {
__pyx_t_5 = __pyx_t_7;
goto __pyx_L21_bool_binop_done;
}
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 607, __pyx_L3_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 606, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_7 = __Pyx_HasAttr(__pyx_t_8, __pyx_n_s_f_locals); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 607, __pyx_L3_error)
+ __pyx_t_7 = __Pyx_HasAttr(__pyx_t_8, __pyx_n_s_f_locals); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 606, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_6 = (__pyx_t_7 != 0);
__pyx_t_5 = __pyx_t_6;
__pyx_L21_bool_binop_done:;
if (__pyx_t_5) {
- /* "_pydevd_bundle/pydevd_cython.pyx":608
+ /* "_pydevd_bundle/pydevd_cython.pyx":607
* frame.f_locals.pop(RETURN_VALUES_DICT)
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT in dict_keys(frame.f_back.f_locals): # <<<<<<<<<<<<<<
* frame.f_back.f_locals.pop(RETURN_VALUES_DICT)
* main_debugger.remove_return_values_flag = False
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 608, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 607, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 608, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 607, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 608, __pyx_L3_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 607, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 608, __pyx_L3_error)
+ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 607, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = NULL;
@@ -14965,31 +14965,31 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__pyx_t_1 = (__pyx_t_11) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_11, __pyx_t_10) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_10);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 608, __pyx_L3_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 607, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __pyx_t_5 = (__Pyx_PySequence_ContainsTF(__pyx_t_8, __pyx_t_1, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 608, __pyx_L3_error)
+ __pyx_t_5 = (__Pyx_PySequence_ContainsTF(__pyx_t_8, __pyx_t_1, Py_EQ)); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 607, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
- /* "_pydevd_bundle/pydevd_cython.pyx":609
+ /* "_pydevd_bundle/pydevd_cython.pyx":608
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT in dict_keys(frame.f_back.f_locals):
* frame.f_back.f_locals.pop(RETURN_VALUES_DICT) # <<<<<<<<<<<<<<
* main_debugger.remove_return_values_flag = False
* except:
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 609, __pyx_L3_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 608, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 609, __pyx_L3_error)
+ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 608, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_pop); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 609, __pyx_L3_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_pop); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 608, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 609, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 608, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
@@ -15004,12 +15004,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__pyx_t_1 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_10, __pyx_t_9) : __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_9);
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 609, __pyx_L3_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 608, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":608
+ /* "_pydevd_bundle/pydevd_cython.pyx":607
* frame.f_locals.pop(RETURN_VALUES_DICT)
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"):
* if RETURN_VALUES_DICT in dict_keys(frame.f_back.f_locals): # <<<<<<<<<<<<<<
@@ -15018,7 +15018,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":607
+ /* "_pydevd_bundle/pydevd_cython.pyx":606
* if RETURN_VALUES_DICT in dict_keys(frame.f_locals):
* frame.f_locals.pop(RETURN_VALUES_DICT)
* if hasattr(frame, "f_back") and hasattr(frame.f_back, "f_locals"): # <<<<<<<<<<<<<<
@@ -15027,16 +15027,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":610
+ /* "_pydevd_bundle/pydevd_cython.pyx":609
* if RETURN_VALUES_DICT in dict_keys(frame.f_back.f_locals):
* frame.f_back.f_locals.pop(RETURN_VALUES_DICT)
* main_debugger.remove_return_values_flag = False # <<<<<<<<<<<<<<
* except:
* main_debugger.remove_return_values_flag = False
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag, Py_False) < 0) __PYX_ERR(0, 610, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag, Py_False) < 0) __PYX_ERR(0, 609, __pyx_L3_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":602
+ /* "_pydevd_bundle/pydevd_cython.pyx":601
* name = get_func_name(frame)
* frame.f_back.f_locals[RETURN_VALUES_DICT][name] = arg
* if main_debugger.remove_return_values_flag: # <<<<<<<<<<<<<<
@@ -15045,7 +15045,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":594
+ /* "_pydevd_bundle/pydevd_cython.pyx":593
* return func_name
*
* try: # <<<<<<<<<<<<<<
@@ -15064,7 +15064,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":611
+ /* "_pydevd_bundle/pydevd_cython.pyx":610
* frame.f_back.f_locals.pop(RETURN_VALUES_DICT)
* main_debugger.remove_return_values_flag = False
* except: # <<<<<<<<<<<<<<
@@ -15073,30 +15073,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.manage_return_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_9) < 0) __PYX_ERR(0, 611, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_9) < 0) __PYX_ERR(0, 610, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_9);
- /* "_pydevd_bundle/pydevd_cython.pyx":612
+ /* "_pydevd_bundle/pydevd_cython.pyx":611
* main_debugger.remove_return_values_flag = False
* except:
* main_debugger.remove_return_values_flag = False # <<<<<<<<<<<<<<
* traceback.print_exc()
*
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag, Py_False) < 0) __PYX_ERR(0, 612, __pyx_L5_except_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag, Py_False) < 0) __PYX_ERR(0, 611, __pyx_L5_except_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":613
+ /* "_pydevd_bundle/pydevd_cython.pyx":612
* except:
* main_debugger.remove_return_values_flag = False
* traceback.print_exc() # <<<<<<<<<<<<<<
*
* def clear_run_state(self, info):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 613, __pyx_L5_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_traceback); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 612, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 613, __pyx_L5_except_error)
+ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 612, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = NULL;
@@ -15111,7 +15111,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
}
__pyx_t_10 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_12);
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
- if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 613, __pyx_L5_except_error)
+ if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 612, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
@@ -15122,7 +15122,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
}
__pyx_L5_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":594
+ /* "_pydevd_bundle/pydevd_cython.pyx":593
* return func_name
*
* try: # <<<<<<<<<<<<<<
@@ -15142,7 +15142,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
__pyx_L8_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":579
+ /* "_pydevd_bundle/pydevd_cython.pyx":578
* return func_name
*
* def manage_return_values(self, main_debugger, frame, event, arg): # <<<<<<<<<<<<<<
@@ -15170,7 +15170,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_16manage_r
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":615
+/* "_pydevd_bundle/pydevd_cython.pyx":614
* traceback.print_exc()
*
* def clear_run_state(self, info): # <<<<<<<<<<<<<<
@@ -15200,37 +15200,37 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_18clear_ru
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("clear_run_state", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":616
+ /* "_pydevd_bundle/pydevd_cython.pyx":615
*
* def clear_run_state(self, info):
* info.pydev_step_stop = None # <<<<<<<<<<<<<<
* info.pydev_step_cmd = -1
* info.pydev_state = STATE_RUN
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_step_stop, Py_None) < 0) __PYX_ERR(0, 616, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_step_stop, Py_None) < 0) __PYX_ERR(0, 615, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":617
+ /* "_pydevd_bundle/pydevd_cython.pyx":616
* def clear_run_state(self, info):
* info.pydev_step_stop = None
* info.pydev_step_cmd = -1 # <<<<<<<<<<<<<<
* info.pydev_state = STATE_RUN
*
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_step_cmd, __pyx_int_neg_1) < 0) __PYX_ERR(0, 617, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_step_cmd, __pyx_int_neg_1) < 0) __PYX_ERR(0, 616, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":618
+ /* "_pydevd_bundle/pydevd_cython.pyx":617
* info.pydev_step_stop = None
* info.pydev_step_cmd = -1
* info.pydev_state = STATE_RUN # <<<<<<<<<<<<<<
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_STATE_RUN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 618, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_STATE_RUN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 617, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_state, __pyx_t_1) < 0) __PYX_ERR(0, 618, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_info, __pyx_n_s_pydev_state, __pyx_t_1) < 0) __PYX_ERR(0, 617, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":615
+ /* "_pydevd_bundle/pydevd_cython.pyx":614
* traceback.print_exc()
*
* def clear_run_state(self, info): # <<<<<<<<<<<<<<
@@ -15251,7 +15251,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_18clear_ru
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":621
+/* "_pydevd_bundle/pydevd_cython.pyx":620
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cpdef trace_dispatch(self, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -15358,7 +15358,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(!__Pyx_object_dict_version_matches(((PyObject *)__pyx_v_self), __pyx_tp_dict_version, __pyx_obj_dict_version))) {
PY_UINT64_T __pyx_type_dict_guard = __Pyx_get_tp_dict_version(((PyObject *)__pyx_v_self));
#endif
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 621, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 620, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (!PyCFunction_Check(__pyx_t_1) || (PyCFunction_GET_FUNCTION(__pyx_t_1) != (PyCFunction)(void*)__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_21trace_dispatch)) {
__Pyx_XDECREF(__pyx_r);
@@ -15378,7 +15378,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[4] = {__pyx_t_4, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 621, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 620, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
@@ -15386,13 +15386,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
PyObject *__pyx_temp[4] = {__pyx_t_4, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 621, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 620, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
#endif
{
- __pyx_t_6 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 621, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 620, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL;
@@ -15406,7 +15406,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_5, __pyx_v_arg);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 621, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 620, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
@@ -15429,7 +15429,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#endif
}
- /* "_pydevd_bundle/pydevd_cython.pyx":647
+ /* "_pydevd_bundle/pydevd_cython.pyx":646
* # ENDIF
*
* main_debugger, filename, info, thread, frame_skips_cache, frame_cache_key = self._args # <<<<<<<<<<<<<<
@@ -15444,7 +15444,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(size != 6)) {
if (size > 6) __Pyx_RaiseTooManyValuesError(6);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 647, __pyx_L1_error)
+ __PYX_ERR(0, 646, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
@@ -15464,7 +15464,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
Py_ssize_t i;
PyObject** temps[6] = {&__pyx_t_2,&__pyx_t_3,&__pyx_t_6,&__pyx_t_4,&__pyx_t_7,&__pyx_t_8};
for (i=0; i < 6; i++) {
- PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 647, __pyx_L1_error)
+ PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 646, __pyx_L1_error)
__Pyx_GOTREF(item);
*(temps[i]) = item;
}
@@ -15472,12 +15472,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
- __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(0, 647, __pyx_L1_error)
+ __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(0, 646, __pyx_L1_error)
}
- if (!(likely(PyString_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(0, 647, __pyx_L1_error)
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo))))) __PYX_ERR(0, 647, __pyx_L1_error)
- if (!(likely(PyDict_CheckExact(__pyx_t_7))||((__pyx_t_7) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "dict", Py_TYPE(__pyx_t_7)->tp_name), 0))) __PYX_ERR(0, 647, __pyx_L1_error)
- if (!(likely(PyTuple_CheckExact(__pyx_t_8))||((__pyx_t_8) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_8)->tp_name), 0))) __PYX_ERR(0, 647, __pyx_L1_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(0, 646, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo))))) __PYX_ERR(0, 646, __pyx_L1_error)
+ if (!(likely(PyDict_CheckExact(__pyx_t_7))||((__pyx_t_7) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "dict", Py_TYPE(__pyx_t_7)->tp_name), 0))) __PYX_ERR(0, 646, __pyx_L1_error)
+ if (!(likely(PyTuple_CheckExact(__pyx_t_8))||((__pyx_t_8) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_8)->tp_name), 0))) __PYX_ERR(0, 646, __pyx_L1_error)
__pyx_v_main_debugger = __pyx_t_2;
__pyx_t_2 = 0;
__pyx_v_filename = ((PyObject*)__pyx_t_3);
@@ -15491,7 +15491,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_frame_cache_key = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":652
+ /* "_pydevd_bundle/pydevd_cython.pyx":651
*
* # The thread can be already suspended by another function, e.g. built-in breakpoint hook.
* if info.is_tracing: # <<<<<<<<<<<<<<
@@ -15501,7 +15501,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_info->is_tracing != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":653
+ /* "_pydevd_bundle/pydevd_cython.pyx":652
* # The thread can be already suspended by another function, e.g. built-in breakpoint hook.
* if info.is_tracing:
* return None # <<<<<<<<<<<<<<
@@ -15512,7 +15512,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":652
+ /* "_pydevd_bundle/pydevd_cython.pyx":651
*
* # The thread can be already suspended by another function, e.g. built-in breakpoint hook.
* if info.is_tracing: # <<<<<<<<<<<<<<
@@ -15521,7 +15521,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":655
+ /* "_pydevd_bundle/pydevd_cython.pyx":654
* return None
*
* try: # <<<<<<<<<<<<<<
@@ -15530,7 +15530,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":656
+ /* "_pydevd_bundle/pydevd_cython.pyx":655
*
* try:
* info.is_tracing = True # <<<<<<<<<<<<<<
@@ -15539,29 +15539,29 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_info->is_tracing = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":657
+ /* "_pydevd_bundle/pydevd_cython.pyx":656
* try:
* info.is_tracing = True
* line = frame.f_lineno # <<<<<<<<<<<<<<
* line_cache_key = (frame_cache_key, line)
*
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 657, __pyx_L5_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 656, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 657, __pyx_L5_error)
+ __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 656, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_line = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":658
+ /* "_pydevd_bundle/pydevd_cython.pyx":657
* info.is_tracing = True
* line = frame.f_lineno
* line_cache_key = (frame_cache_key, line) # <<<<<<<<<<<<<<
*
* if main_debugger._finish_debugging_session:
*/
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 658, __pyx_L5_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 657, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 658, __pyx_L5_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 657, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_frame_cache_key);
__Pyx_GIVEREF(__pyx_v_frame_cache_key);
@@ -15572,36 +15572,36 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_line_cache_key = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":660
+ /* "_pydevd_bundle/pydevd_cython.pyx":659
* line_cache_key = (frame_cache_key, line)
*
* if main_debugger._finish_debugging_session: # <<<<<<<<<<<<<<
* if event != 'call': frame.f_trace = NO_FTRACE
* return None
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_finish_debugging_session); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 660, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_finish_debugging_session); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 659, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 660, __pyx_L5_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 659, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":661
+ /* "_pydevd_bundle/pydevd_cython.pyx":660
*
* if main_debugger._finish_debugging_session:
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 661, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 660, __pyx_L5_error)
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 661, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 660, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_8) < 0) __PYX_ERR(0, 661, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_8) < 0) __PYX_ERR(0, 660, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":662
+ /* "_pydevd_bundle/pydevd_cython.pyx":661
* if main_debugger._finish_debugging_session:
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -15612,7 +15612,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":660
+ /* "_pydevd_bundle/pydevd_cython.pyx":659
* line_cache_key = (frame_cache_key, line)
*
* if main_debugger._finish_debugging_session: # <<<<<<<<<<<<<<
@@ -15621,30 +15621,30 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":665
+ /* "_pydevd_bundle/pydevd_cython.pyx":664
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* if event == 'opcode': # <<<<<<<<<<<<<<
* instructions = self._get_instructions(frame)
* for i, inst in enumerate(instructions):
*/
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_opcode, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 665, __pyx_L5_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_opcode, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 664, __pyx_L5_error)
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":666
+ /* "_pydevd_bundle/pydevd_cython.pyx":665
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* if event == 'opcode':
* instructions = self._get_instructions(frame) # <<<<<<<<<<<<<<
* for i, inst in enumerate(instructions):
* if inst.offset == frame.f_lasti:
*/
- __pyx_t_8 = ((struct __pyx_vtabstruct_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_v_self->__pyx_vtab)->_get_instructions(__pyx_v_self, __pyx_v_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 666, __pyx_L5_error)
+ __pyx_t_8 = ((struct __pyx_vtabstruct_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_v_self->__pyx_vtab)->_get_instructions(__pyx_v_self, __pyx_v_frame); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 665, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_v_instructions = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":667
+ /* "_pydevd_bundle/pydevd_cython.pyx":666
* if event == 'opcode':
* instructions = self._get_instructions(frame)
* for i, inst in enumerate(instructions): # <<<<<<<<<<<<<<
@@ -15657,26 +15657,26 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_1 = __pyx_v_instructions; __Pyx_INCREF(__pyx_t_1); __pyx_t_11 = 0;
__pyx_t_12 = NULL;
} else {
- __pyx_t_11 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_instructions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_11 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_instructions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 666, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_12 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_12 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 666, __pyx_L5_error)
}
for (;;) {
if (likely(!__pyx_t_12)) {
if (likely(PyList_CheckExact(__pyx_t_1))) {
if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_1)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_11); __Pyx_INCREF(__pyx_t_7); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_11); __Pyx_INCREF(__pyx_t_7); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 666, __pyx_L5_error)
#else
- __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 666, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
} else {
if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_11); __Pyx_INCREF(__pyx_t_7); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_11); __Pyx_INCREF(__pyx_t_7); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 666, __pyx_L5_error)
#else
- __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 666, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
}
@@ -15686,7 +15686,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(0, 667, __pyx_L5_error)
+ else __PYX_ERR(0, 666, __pyx_L5_error)
}
break;
}
@@ -15696,44 +15696,44 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_7 = 0;
__Pyx_INCREF(__pyx_t_8);
__Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_8);
- __pyx_t_7 = __Pyx_PyInt_AddObjC(__pyx_t_8, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 667, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyInt_AddObjC(__pyx_t_8, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 666, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8);
__pyx_t_8 = __pyx_t_7;
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":668
+ /* "_pydevd_bundle/pydevd_cython.pyx":667
* instructions = self._get_instructions(frame)
* for i, inst in enumerate(instructions):
* if inst.offset == frame.f_lasti: # <<<<<<<<<<<<<<
* opname, arg, argval = inst.opname, inst.arg, str(inst.argval)
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name,
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_offset); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 668, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_offset); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 667, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lasti); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 668, __pyx_L5_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lasti); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 667, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_7, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 668, __pyx_L5_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_7, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 667, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 668, __pyx_L5_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 667, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":669
+ /* "_pydevd_bundle/pydevd_cython.pyx":668
* for i, inst in enumerate(instructions):
* if inst.offset == frame.f_lasti:
* opname, arg, argval = inst.opname, inst.arg, str(inst.argval) # <<<<<<<<<<<<<<
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name,
* frame.f_code.co_filename, event, opname, arg, argval))
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_opname); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 669, __pyx_L5_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_opname); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 668, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_arg); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 669, __pyx_L5_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_arg); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 668, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_argval); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 669, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_inst, __pyx_n_s_argval); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 668, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyString_Type)), __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 669, __pyx_L5_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyString_Type)), __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 668, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF_SET(__pyx_v_opname, __pyx_t_6);
@@ -15743,44 +15743,44 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF_SET(__pyx_v_argval, __pyx_t_3);
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":670
+ /* "_pydevd_bundle/pydevd_cython.pyx":669
* if inst.offset == frame.f_lasti:
* opname, arg, argval = inst.opname, inst.arg, str(inst.argval)
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name, # <<<<<<<<<<<<<<
* frame.f_code.co_filename, event, opname, arg, argval))
* try:
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lasti); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lasti); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_co_name); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_co_name); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":671
+ /* "_pydevd_bundle/pydevd_cython.pyx":670
* opname, arg, argval = inst.opname, inst.arg, str(inst.argval)
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name,
* frame.f_code.co_filename, event, opname, arg, argval)) # <<<<<<<<<<<<<<
* try:
* self._bytecode_offset = instructions[i + 1].offset
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 671, __pyx_L5_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 670, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 671, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 670, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":670
+ /* "_pydevd_bundle/pydevd_cython.pyx":669
* if inst.offset == frame.f_lasti:
* opname, arg, argval = inst.opname, inst.arg, str(inst.argval)
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name, # <<<<<<<<<<<<<<
* frame.f_code.co_filename, event, opname, arg, argval))
* try:
*/
- __pyx_t_6 = PyTuple_New(8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_6 = PyTuple_New(8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
@@ -15806,15 +15806,15 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_4 = 0;
__pyx_t_7 = 0;
__pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_frame_trace_dispatch_s_s_s_s_s_s, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_frame_trace_dispatch_s_s_s_s_s_s, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_builtin_print, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 670, __pyx_L5_error)
+ __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_builtin_print, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 669, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":672
+ /* "_pydevd_bundle/pydevd_cython.pyx":671
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name,
* frame.f_code.co_filename, event, opname, arg, argval))
* try: # <<<<<<<<<<<<<<
@@ -15830,26 +15830,26 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGOTREF(__pyx_t_15);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":673
+ /* "_pydevd_bundle/pydevd_cython.pyx":672
* frame.f_code.co_filename, event, opname, arg, argval))
* try:
* self._bytecode_offset = instructions[i + 1].offset # <<<<<<<<<<<<<<
* except IndexError:
* break
*/
- __pyx_t_6 = __Pyx_PyInt_AddObjC(__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 673, __pyx_L13_error)
+ __pyx_t_6 = __Pyx_PyInt_AddObjC(__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 672, __pyx_L13_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = __Pyx_PyObject_GetItem(__pyx_v_instructions, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 673, __pyx_L13_error)
+ __pyx_t_2 = __Pyx_PyObject_GetItem(__pyx_v_instructions, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 672, __pyx_L13_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_offset); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 673, __pyx_L13_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_offset); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 672, __pyx_L13_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 673, __pyx_L13_error)
+ __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 672, __pyx_L13_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_v_self->_bytecode_offset = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":672
+ /* "_pydevd_bundle/pydevd_cython.pyx":671
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name,
* frame.f_code.co_filename, event, opname, arg, argval))
* try: # <<<<<<<<<<<<<<
@@ -15868,7 +15868,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":674
+ /* "_pydevd_bundle/pydevd_cython.pyx":673
* try:
* self._bytecode_offset = instructions[i + 1].offset
* except IndexError: # <<<<<<<<<<<<<<
@@ -15878,12 +15878,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_5 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_IndexError);
if (__pyx_t_5) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_7) < 0) __PYX_ERR(0, 674, __pyx_L15_except_error)
+ if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_7) < 0) __PYX_ERR(0, 673, __pyx_L15_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_7);
- /* "_pydevd_bundle/pydevd_cython.pyx":675
+ /* "_pydevd_bundle/pydevd_cython.pyx":674
* self._bytecode_offset = instructions[i + 1].offset
* except IndexError:
* break # <<<<<<<<<<<<<<
@@ -15900,7 +15900,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L15_except_error;
__pyx_L15_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":672
+ /* "_pydevd_bundle/pydevd_cython.pyx":671
* print('frame trace_dispatch %s %s %s %s %s %s %s %s' % (frame.f_lineno, frame.f_lasti, frame.f_code.co_name,
* frame.f_code.co_filename, event, opname, arg, argval))
* try: # <<<<<<<<<<<<<<
@@ -15921,7 +15921,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L20_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":668
+ /* "_pydevd_bundle/pydevd_cython.pyx":667
* instructions = self._get_instructions(frame)
* for i, inst in enumerate(instructions):
* if inst.offset == frame.f_lasti: # <<<<<<<<<<<<<<
@@ -15930,7 +15930,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":667
+ /* "_pydevd_bundle/pydevd_cython.pyx":666
* if event == 'opcode':
* instructions = self._get_instructions(frame)
* for i, inst in enumerate(instructions): # <<<<<<<<<<<<<<
@@ -15942,7 +15942,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":676
+ /* "_pydevd_bundle/pydevd_cython.pyx":675
* except IndexError:
* break
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -15950,13 +15950,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 676, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 675, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_r = __pyx_t_8;
__pyx_t_8 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":665
+ /* "_pydevd_bundle/pydevd_cython.pyx":664
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* if event == 'opcode': # <<<<<<<<<<<<<<
@@ -15965,38 +15965,38 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":679
+ /* "_pydevd_bundle/pydevd_cython.pyx":678
* # ENDIF
*
* plugin_manager = main_debugger.plugin # <<<<<<<<<<<<<<
*
* is_exception_event = event == 'exception'
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_plugin); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 679, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_plugin); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 678, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_v_plugin_manager = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":681
+ /* "_pydevd_bundle/pydevd_cython.pyx":680
* plugin_manager = main_debugger.plugin
*
* is_exception_event = event == 'exception' # <<<<<<<<<<<<<<
* has_exception_breakpoints = main_debugger.break_on_caught_exceptions or main_debugger.has_plugin_exception_breaks \
* or main_debugger.stop_on_failed_tests
*/
- __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 681, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 680, __pyx_L5_error)
__pyx_v_is_exception_event = __pyx_t_9;
- /* "_pydevd_bundle/pydevd_cython.pyx":682
+ /* "_pydevd_bundle/pydevd_cython.pyx":681
*
* is_exception_event = event == 'exception'
* has_exception_breakpoints = main_debugger.break_on_caught_exceptions or main_debugger.has_plugin_exception_breaks \ # <<<<<<<<<<<<<<
* or main_debugger.stop_on_failed_tests
*
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_break_on_caught_exceptions); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 682, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_break_on_caught_exceptions); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 681, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 682, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 681, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (!__pyx_t_10) {
} else {
@@ -16004,24 +16004,24 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L23_bool_binop_done;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":683
+ /* "_pydevd_bundle/pydevd_cython.pyx":682
* is_exception_event = event == 'exception'
* has_exception_breakpoints = main_debugger.break_on_caught_exceptions or main_debugger.has_plugin_exception_breaks \
* or main_debugger.stop_on_failed_tests # <<<<<<<<<<<<<<
*
* if is_exception_event:
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_has_plugin_exception_breaks); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 682, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_has_plugin_exception_breaks); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 681, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- /* "_pydevd_bundle/pydevd_cython.pyx":682
+ /* "_pydevd_bundle/pydevd_cython.pyx":681
*
* is_exception_event = event == 'exception'
* has_exception_breakpoints = main_debugger.break_on_caught_exceptions or main_debugger.has_plugin_exception_breaks \ # <<<<<<<<<<<<<<
* or main_debugger.stop_on_failed_tests
*
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 682, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 681, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (!__pyx_t_10) {
} else {
@@ -16029,22 +16029,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L23_bool_binop_done;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":683
+ /* "_pydevd_bundle/pydevd_cython.pyx":682
* is_exception_event = event == 'exception'
* has_exception_breakpoints = main_debugger.break_on_caught_exceptions or main_debugger.has_plugin_exception_breaks \
* or main_debugger.stop_on_failed_tests # <<<<<<<<<<<<<<
*
* if is_exception_event:
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 683, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_stop_on_failed_tests); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 682, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 683, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 682, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_9 = __pyx_t_10;
__pyx_L23_bool_binop_done:;
__pyx_v_has_exception_breakpoints = __pyx_t_9;
- /* "_pydevd_bundle/pydevd_cython.pyx":685
+ /* "_pydevd_bundle/pydevd_cython.pyx":684
* or main_debugger.stop_on_failed_tests
*
* if is_exception_event: # <<<<<<<<<<<<<<
@@ -16054,7 +16054,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_is_exception_event != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":686
+ /* "_pydevd_bundle/pydevd_cython.pyx":685
*
* if is_exception_event:
* if has_exception_breakpoints: # <<<<<<<<<<<<<<
@@ -16064,14 +16064,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_has_exception_breakpoints != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":687
+ /* "_pydevd_bundle/pydevd_cython.pyx":686
* if is_exception_event:
* if has_exception_breakpoints:
* should_stop, frame = self.should_stop_on_exception(frame, event, arg) # <<<<<<<<<<<<<<
* if should_stop:
* self.handle_exception(frame, event, arg)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_should_stop_on_exception); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_should_stop_on_exception); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_7 = NULL;
__pyx_t_5 = 0;
@@ -16088,7 +16088,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
@@ -16096,13 +16096,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
#endif
{
- __pyx_t_2 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_2 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -16116,7 +16116,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_2, 2+__pyx_t_5, __pyx_v_arg);
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
@@ -16127,7 +16127,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 687, __pyx_L5_error)
+ __PYX_ERR(0, 686, __pyx_L5_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -16140,15 +16140,15 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_2);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
#endif
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_16 = Py_TYPE(__pyx_t_7)->tp_iternext;
@@ -16156,7 +16156,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_2 = __pyx_t_16(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L28_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_7), 2) < 0) __PYX_ERR(0, 687, __pyx_L5_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_7), 2) < 0) __PYX_ERR(0, 686, __pyx_L5_error)
__pyx_t_16 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L29_unpacking_done;
@@ -16164,16 +16164,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_16 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 687, __pyx_L5_error)
+ __PYX_ERR(0, 686, __pyx_L5_error)
__pyx_L29_unpacking_done:;
}
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 687, __pyx_L5_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 686, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_should_stop = __pyx_t_9;
__Pyx_DECREF_SET(__pyx_v_frame, __pyx_t_2);
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":688
+ /* "_pydevd_bundle/pydevd_cython.pyx":687
* if has_exception_breakpoints:
* should_stop, frame = self.should_stop_on_exception(frame, event, arg)
* if should_stop: # <<<<<<<<<<<<<<
@@ -16183,14 +16183,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_should_stop != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":689
+ /* "_pydevd_bundle/pydevd_cython.pyx":688
* should_stop, frame = self.should_stop_on_exception(frame, event, arg)
* if should_stop:
* self.handle_exception(frame, event, arg) # <<<<<<<<<<<<<<
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_handle_exception); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 689, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_handle_exception); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 688, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_1 = NULL;
__pyx_t_5 = 0;
@@ -16207,7 +16207,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[4] = {__pyx_t_1, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 689, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 688, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
@@ -16215,13 +16215,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[4] = {__pyx_t_1, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 689, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 688, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
#endif
{
- __pyx_t_7 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 689, __pyx_L5_error)
+ __pyx_t_7 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 688, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL;
@@ -16235,14 +16235,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_5, __pyx_v_arg);
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 689, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 688, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":691
+ /* "_pydevd_bundle/pydevd_cython.pyx":690
* self.handle_exception(frame, event, arg)
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -16250,13 +16250,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* is_return = False
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 691, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 690, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_r = __pyx_t_8;
__pyx_t_8 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":688
+ /* "_pydevd_bundle/pydevd_cython.pyx":687
* if has_exception_breakpoints:
* should_stop, frame = self.should_stop_on_exception(frame, event, arg)
* if should_stop: # <<<<<<<<<<<<<<
@@ -16265,7 +16265,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":686
+ /* "_pydevd_bundle/pydevd_cython.pyx":685
*
* if is_exception_event:
* if has_exception_breakpoints: # <<<<<<<<<<<<<<
@@ -16274,7 +16274,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":692
+ /* "_pydevd_bundle/pydevd_cython.pyx":691
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
* is_line = False # <<<<<<<<<<<<<<
@@ -16283,7 +16283,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_is_line = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":693
+ /* "_pydevd_bundle/pydevd_cython.pyx":692
* return self.trace_dispatch
* is_line = False
* is_return = False # <<<<<<<<<<<<<<
@@ -16292,7 +16292,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_is_return = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":694
+ /* "_pydevd_bundle/pydevd_cython.pyx":693
* is_line = False
* is_return = False
* is_call = False # <<<<<<<<<<<<<<
@@ -16301,7 +16301,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_is_call = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":685
+ /* "_pydevd_bundle/pydevd_cython.pyx":684
* or main_debugger.stop_on_failed_tests
*
* if is_exception_event: # <<<<<<<<<<<<<<
@@ -16311,7 +16311,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L26;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":696
+ /* "_pydevd_bundle/pydevd_cython.pyx":695
* is_call = False
* else:
* is_line = event == 'line' # <<<<<<<<<<<<<<
@@ -16319,30 +16319,30 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* is_call = event == 'call'
*/
/*else*/ {
- __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_line, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 696, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_line, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 695, __pyx_L5_error)
__pyx_v_is_line = __pyx_t_9;
- /* "_pydevd_bundle/pydevd_cython.pyx":697
+ /* "_pydevd_bundle/pydevd_cython.pyx":696
* else:
* is_line = event == 'line'
* is_return = event == 'return' # <<<<<<<<<<<<<<
* is_call = event == 'call'
* if not is_line and not is_return and not is_call:
*/
- __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 697, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 696, __pyx_L5_error)
__pyx_v_is_return = __pyx_t_9;
- /* "_pydevd_bundle/pydevd_cython.pyx":698
+ /* "_pydevd_bundle/pydevd_cython.pyx":697
* is_line = event == 'line'
* is_return = event == 'return'
* is_call = event == 'call' # <<<<<<<<<<<<<<
* if not is_line and not is_return and not is_call:
* # Unexpected: just keep the same trace func.
*/
- __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 698, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 697, __pyx_L5_error)
__pyx_v_is_call = __pyx_t_9;
- /* "_pydevd_bundle/pydevd_cython.pyx":699
+ /* "_pydevd_bundle/pydevd_cython.pyx":698
* is_return = event == 'return'
* is_call = event == 'call'
* if not is_line and not is_return and not is_call: # <<<<<<<<<<<<<<
@@ -16366,7 +16366,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L32_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":702
+ /* "_pydevd_bundle/pydevd_cython.pyx":701
* # Unexpected: just keep the same trace func.
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -16374,13 +16374,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* need_signature_trace_return = False
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 702, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 701, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_r = __pyx_t_8;
__pyx_t_8 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":699
+ /* "_pydevd_bundle/pydevd_cython.pyx":698
* is_return = event == 'return'
* is_call = event == 'call'
* if not is_line and not is_return and not is_call: # <<<<<<<<<<<<<<
@@ -16391,7 +16391,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L26:;
- /* "_pydevd_bundle/pydevd_cython.pyx":704
+ /* "_pydevd_bundle/pydevd_cython.pyx":703
* return self.trace_dispatch
*
* need_signature_trace_return = False # <<<<<<<<<<<<<<
@@ -16401,21 +16401,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__pyx_v_need_signature_trace_return = Py_False;
- /* "_pydevd_bundle/pydevd_cython.pyx":705
+ /* "_pydevd_bundle/pydevd_cython.pyx":704
*
* need_signature_trace_return = False
* if main_debugger.signature_factory is not None: # <<<<<<<<<<<<<<
* if is_call:
* need_signature_trace_return = send_signature_call_trace(main_debugger, frame, filename)
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_signature_factory); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 705, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_signature_factory); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 704, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = (__pyx_t_8 != Py_None);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":706
+ /* "_pydevd_bundle/pydevd_cython.pyx":705
* need_signature_trace_return = False
* if main_debugger.signature_factory is not None:
* if is_call: # <<<<<<<<<<<<<<
@@ -16425,14 +16425,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_v_is_call != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":707
+ /* "_pydevd_bundle/pydevd_cython.pyx":706
* if main_debugger.signature_factory is not None:
* if is_call:
* need_signature_trace_return = send_signature_call_trace(main_debugger, frame, filename) # <<<<<<<<<<<<<<
* elif is_return:
* send_signature_return_trace(main_debugger, frame, filename, arg)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_send_signature_call_trace); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 707, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_send_signature_call_trace); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 706, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_7 = NULL;
__pyx_t_5 = 0;
@@ -16449,7 +16449,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_filename};
- __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 707, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 706, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
@@ -16457,13 +16457,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_filename};
- __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 707, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 706, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
#endif
{
- __pyx_t_1 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 707, __pyx_L5_error)
+ __pyx_t_1 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 706, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -16477,7 +16477,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_filename);
__Pyx_GIVEREF(__pyx_v_filename);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_5, __pyx_v_filename);
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 707, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 706, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
@@ -16485,7 +16485,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_need_signature_trace_return, __pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":706
+ /* "_pydevd_bundle/pydevd_cython.pyx":705
* need_signature_trace_return = False
* if main_debugger.signature_factory is not None:
* if is_call: # <<<<<<<<<<<<<<
@@ -16495,7 +16495,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L36;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":708
+ /* "_pydevd_bundle/pydevd_cython.pyx":707
* if is_call:
* need_signature_trace_return = send_signature_call_trace(main_debugger, frame, filename)
* elif is_return: # <<<<<<<<<<<<<<
@@ -16505,14 +16505,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_v_is_return != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":709
+ /* "_pydevd_bundle/pydevd_cython.pyx":708
* need_signature_trace_return = send_signature_call_trace(main_debugger, frame, filename)
* elif is_return:
* send_signature_return_trace(main_debugger, frame, filename, arg) # <<<<<<<<<<<<<<
*
* stop_frame = info.pydev_step_stop
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_send_signature_return_trace); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 709, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_send_signature_return_trace); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 708, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_1 = NULL;
__pyx_t_5 = 0;
@@ -16529,7 +16529,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_filename, __pyx_v_arg};
- __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 709, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 708, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
@@ -16537,13 +16537,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_filename, __pyx_v_arg};
- __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 709, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 708, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
#endif
{
- __pyx_t_7 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 709, __pyx_L5_error)
+ __pyx_t_7 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 708, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL;
@@ -16560,14 +16560,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_5, __pyx_v_arg);
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 709, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 708, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":708
+ /* "_pydevd_bundle/pydevd_cython.pyx":707
* if is_call:
* need_signature_trace_return = send_signature_call_trace(main_debugger, frame, filename)
* elif is_return: # <<<<<<<<<<<<<<
@@ -16577,7 +16577,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L36:;
- /* "_pydevd_bundle/pydevd_cython.pyx":705
+ /* "_pydevd_bundle/pydevd_cython.pyx":704
*
* need_signature_trace_return = False
* if main_debugger.signature_factory is not None: # <<<<<<<<<<<<<<
@@ -16586,7 +16586,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":711
+ /* "_pydevd_bundle/pydevd_cython.pyx":710
* send_signature_return_trace(main_debugger, frame, filename, arg)
*
* stop_frame = info.pydev_step_stop # <<<<<<<<<<<<<<
@@ -16598,7 +16598,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_stop_frame = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":712
+ /* "_pydevd_bundle/pydevd_cython.pyx":711
*
* stop_frame = info.pydev_step_stop
* step_cmd = info.pydev_step_cmd # <<<<<<<<<<<<<<
@@ -16608,34 +16608,34 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_5 = __pyx_v_info->pydev_step_cmd;
__pyx_v_step_cmd = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":713
+ /* "_pydevd_bundle/pydevd_cython.pyx":712
* stop_frame = info.pydev_step_stop
* step_cmd = info.pydev_step_cmd
* is_generator_or_coroutime = frame.f_code.co_flags & 0xa0 # 0xa0 == CO_GENERATOR = 0x20 | CO_COROUTINE = 0x80 # <<<<<<<<<<<<<<
*
* breakpoints_for_file = main_debugger.breakpoints.get(filename)
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 713, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 712, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_co_flags); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 713, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_co_flags); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 712, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyInt_AndObjC(__pyx_t_2, __pyx_int_160, 0xa0, 0, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 713, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyInt_AndObjC(__pyx_t_2, __pyx_int_160, 0xa0, 0, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 712, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_is_generator_or_coroutime = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":715
+ /* "_pydevd_bundle/pydevd_cython.pyx":714
* is_generator_or_coroutime = frame.f_code.co_flags & 0xa0 # 0xa0 == CO_GENERATOR = 0x20 | CO_COROUTINE = 0x80
*
* breakpoints_for_file = main_debugger.breakpoints.get(filename) # <<<<<<<<<<<<<<
*
* if not is_exception_event:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_breakpoints); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 715, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_breakpoints); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 714, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_get); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 715, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_get); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 714, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = NULL;
@@ -16650,14 +16650,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_8 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_2, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 715, __pyx_L5_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 714, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (!(likely(PyDict_CheckExact(__pyx_t_8))||((__pyx_t_8) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "dict", Py_TYPE(__pyx_t_8)->tp_name), 0))) __PYX_ERR(0, 715, __pyx_L5_error)
+ if (!(likely(PyDict_CheckExact(__pyx_t_8))||((__pyx_t_8) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "dict", Py_TYPE(__pyx_t_8)->tp_name), 0))) __PYX_ERR(0, 714, __pyx_L5_error)
__pyx_v_breakpoints_for_file = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":717
+ /* "_pydevd_bundle/pydevd_cython.pyx":716
* breakpoints_for_file = main_debugger.breakpoints.get(filename)
*
* if not is_exception_event: # <<<<<<<<<<<<<<
@@ -16667,17 +16667,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = ((!(__pyx_v_is_exception_event != 0)) != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":718
+ /* "_pydevd_bundle/pydevd_cython.pyx":717
*
* if not is_exception_event:
* if is_generator_or_coroutime: # <<<<<<<<<<<<<<
* if is_return:
* # Dealing with coroutines and generators:
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_generator_or_coroutime); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 718, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_generator_or_coroutime); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 717, __pyx_L5_error)
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":719
+ /* "_pydevd_bundle/pydevd_cython.pyx":718
* if not is_exception_event:
* if is_generator_or_coroutime:
* if is_return: # <<<<<<<<<<<<<<
@@ -16687,14 +16687,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_v_is_return != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":723
+ /* "_pydevd_bundle/pydevd_cython.pyx":722
* # When in a coroutine we change the perceived event to the debugger because
* # a call, StopIteration exception and return are usually just pausing/unpausing it.
* returns_cache_key = (frame_cache_key, 'returns') # <<<<<<<<<<<<<<
* return_lines = frame_skips_cache.get(returns_cache_key)
* if return_lines is None:
*/
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 723, __pyx_L5_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 722, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_frame_cache_key);
__Pyx_GIVEREF(__pyx_v_frame_cache_key);
@@ -16705,7 +16705,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_returns_cache_key = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":724
+ /* "_pydevd_bundle/pydevd_cython.pyx":723
* # a call, StopIteration exception and return are usually just pausing/unpausing it.
* returns_cache_key = (frame_cache_key, 'returns')
* return_lines = frame_skips_cache.get(returns_cache_key) # <<<<<<<<<<<<<<
@@ -16714,14 +16714,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
- __PYX_ERR(0, 724, __pyx_L5_error)
+ __PYX_ERR(0, 723, __pyx_L5_error)
}
- __pyx_t_8 = __Pyx_PyDict_GetItemDefault(__pyx_v_frame_skips_cache, __pyx_v_returns_cache_key, Py_None); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 724, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyDict_GetItemDefault(__pyx_v_frame_skips_cache, __pyx_v_returns_cache_key, Py_None); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 723, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_v_return_lines = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":725
+ /* "_pydevd_bundle/pydevd_cython.pyx":724
* returns_cache_key = (frame_cache_key, 'returns')
* return_lines = frame_skips_cache.get(returns_cache_key)
* if return_lines is None: # <<<<<<<<<<<<<<
@@ -16732,28 +16732,28 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":730
+ /* "_pydevd_bundle/pydevd_cython.pyx":729
* # it doesn't give any clear indication when a coroutine or generator is
* # finishing or just pausing.
* return_lines = set() # <<<<<<<<<<<<<<
* for x in main_debugger.collect_return_info(frame.f_code):
* # Note: cython does not support closures in cpdefs (so we can't use
*/
- __pyx_t_8 = PySet_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 730, __pyx_L5_error)
+ __pyx_t_8 = PySet_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 729, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF_SET(__pyx_v_return_lines, __pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":731
+ /* "_pydevd_bundle/pydevd_cython.pyx":730
* # finishing or just pausing.
* return_lines = set()
* for x in main_debugger.collect_return_info(frame.f_code): # <<<<<<<<<<<<<<
* # Note: cython does not support closures in cpdefs (so we can't use
* # a list comprehension).
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_collect_return_info); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_collect_return_info); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 730, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 730, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
@@ -16768,16 +16768,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_8 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_1, __pyx_t_2) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_2);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 731, __pyx_L5_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 730, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (likely(PyList_CheckExact(__pyx_t_8)) || PyTuple_CheckExact(__pyx_t_8)) {
__pyx_t_7 = __pyx_t_8; __Pyx_INCREF(__pyx_t_7); __pyx_t_11 = 0;
__pyx_t_12 = NULL;
} else {
- __pyx_t_11 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_11 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 730, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_12 = Py_TYPE(__pyx_t_7)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_12 = Py_TYPE(__pyx_t_7)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 730, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
for (;;) {
@@ -16785,17 +16785,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (likely(PyList_CheckExact(__pyx_t_7))) {
if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_7)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_8 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_8 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 730, __pyx_L5_error)
#else
- __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 730, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
} else {
if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_7)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 730, __pyx_L5_error)
#else
- __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 731, __pyx_L5_error)
+ __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 730, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
}
@@ -16805,7 +16805,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(0, 731, __pyx_L5_error)
+ else __PYX_ERR(0, 730, __pyx_L5_error)
}
break;
}
@@ -16814,16 +16814,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF_SET(__pyx_v_x, __pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":734
+ /* "_pydevd_bundle/pydevd_cython.pyx":733
* # Note: cython does not support closures in cpdefs (so we can't use
* # a list comprehension).
* return_lines.add(x.return_line) # <<<<<<<<<<<<<<
*
* frame_skips_cache[returns_cache_key] = return_lines
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_return_lines, __pyx_n_s_add); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 734, __pyx_L5_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_return_lines, __pyx_n_s_add); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 733, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_return_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 734, __pyx_L5_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_return_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 733, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
@@ -16838,12 +16838,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_8 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_6, __pyx_t_1) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_1);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 734, __pyx_L5_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 733, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":731
+ /* "_pydevd_bundle/pydevd_cython.pyx":730
* # finishing or just pausing.
* return_lines = set()
* for x in main_debugger.collect_return_info(frame.f_code): # <<<<<<<<<<<<<<
@@ -16853,7 +16853,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":736
+ /* "_pydevd_bundle/pydevd_cython.pyx":735
* return_lines.add(x.return_line)
*
* frame_skips_cache[returns_cache_key] = return_lines # <<<<<<<<<<<<<<
@@ -16862,11 +16862,11 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 736, __pyx_L5_error)
+ __PYX_ERR(0, 735, __pyx_L5_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_returns_cache_key, __pyx_v_return_lines) < 0)) __PYX_ERR(0, 736, __pyx_L5_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_returns_cache_key, __pyx_v_return_lines) < 0)) __PYX_ERR(0, 735, __pyx_L5_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":725
+ /* "_pydevd_bundle/pydevd_cython.pyx":724
* returns_cache_key = (frame_cache_key, 'returns')
* return_lines = frame_skips_cache.get(returns_cache_key)
* if return_lines is None: # <<<<<<<<<<<<<<
@@ -16875,21 +16875,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":738
+ /* "_pydevd_bundle/pydevd_cython.pyx":737
* frame_skips_cache[returns_cache_key] = return_lines
*
* if line not in return_lines: # <<<<<<<<<<<<<<
* # Not really a return (coroutine/generator paused).
* return self.trace_dispatch
*/
- __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 738, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_9 = (__Pyx_PySequence_ContainsTF(__pyx_t_7, __pyx_v_return_lines, Py_NE)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 738, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PySequence_ContainsTF(__pyx_t_7, __pyx_v_return_lines, Py_NE)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":740
+ /* "_pydevd_bundle/pydevd_cython.pyx":739
* if line not in return_lines:
* # Not really a return (coroutine/generator paused).
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -16897,13 +16897,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* # Don't stop when calling coroutines, we will on other event anyway if necessary.
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 740, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 739, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":738
+ /* "_pydevd_bundle/pydevd_cython.pyx":737
* frame_skips_cache[returns_cache_key] = return_lines
*
* if line not in return_lines: # <<<<<<<<<<<<<<
@@ -16912,7 +16912,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":719
+ /* "_pydevd_bundle/pydevd_cython.pyx":718
* if not is_exception_event:
* if is_generator_or_coroutime:
* if is_return: # <<<<<<<<<<<<<<
@@ -16922,7 +16922,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L39;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":741
+ /* "_pydevd_bundle/pydevd_cython.pyx":740
* # Not really a return (coroutine/generator paused).
* return self.trace_dispatch
* elif is_call: # <<<<<<<<<<<<<<
@@ -16932,7 +16932,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_v_is_call != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":743
+ /* "_pydevd_bundle/pydevd_cython.pyx":742
* elif is_call:
* # Don't stop when calling coroutines, we will on other event anyway if necessary.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -16940,13 +16940,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* can_skip = False
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 743, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 742, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":741
+ /* "_pydevd_bundle/pydevd_cython.pyx":740
* # Not really a return (coroutine/generator paused).
* return self.trace_dispatch
* elif is_call: # <<<<<<<<<<<<<<
@@ -16956,7 +16956,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L39:;
- /* "_pydevd_bundle/pydevd_cython.pyx":718
+ /* "_pydevd_bundle/pydevd_cython.pyx":717
*
* if not is_exception_event:
* if is_generator_or_coroutime: # <<<<<<<<<<<<<<
@@ -16965,7 +16965,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":745
+ /* "_pydevd_bundle/pydevd_cython.pyx":744
* return self.trace_dispatch
*
* can_skip = False # <<<<<<<<<<<<<<
@@ -16974,7 +16974,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_can_skip = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":747
+ /* "_pydevd_bundle/pydevd_cython.pyx":746
* can_skip = False
*
* if info.pydev_state == 1: # STATE_RUN = 1 # <<<<<<<<<<<<<<
@@ -16984,7 +16984,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = ((__pyx_v_info->pydev_state == 1) != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":752
+ /* "_pydevd_bundle/pydevd_cython.pyx":751
* # - we should make a step return/step over and we're not in the current frame
* # CMD_STEP_RETURN = 109, CMD_STEP_OVER = 108
* can_skip = (step_cmd == -1 and stop_frame is None) \ # <<<<<<<<<<<<<<
@@ -17005,7 +17005,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L46_next_or:;
- /* "_pydevd_bundle/pydevd_cython.pyx":753
+ /* "_pydevd_bundle/pydevd_cython.pyx":752
* # CMD_STEP_RETURN = 109, CMD_STEP_OVER = 108
* can_skip = (step_cmd == -1 and stop_frame is None) \
* or (step_cmd in (109, 108) and stop_frame is not frame) # <<<<<<<<<<<<<<
@@ -17033,7 +17033,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L45_bool_binop_done:;
__pyx_v_can_skip = __pyx_t_10;
- /* "_pydevd_bundle/pydevd_cython.pyx":755
+ /* "_pydevd_bundle/pydevd_cython.pyx":754
* or (step_cmd in (109, 108) and stop_frame is not frame)
*
* if can_skip: # <<<<<<<<<<<<<<
@@ -17043,7 +17043,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_v_can_skip != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":756
+ /* "_pydevd_bundle/pydevd_cython.pyx":755
*
* if can_skip:
* if plugin_manager is not None and main_debugger.has_plugin_line_breaks: # <<<<<<<<<<<<<<
@@ -17057,22 +17057,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = __pyx_t_9;
goto __pyx_L51_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_has_plugin_line_breaks); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 756, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_has_plugin_line_breaks); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 755, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 756, __pyx_L5_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 755, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_10 = __pyx_t_9;
__pyx_L51_bool_binop_done:;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":757
+ /* "_pydevd_bundle/pydevd_cython.pyx":756
* if can_skip:
* if plugin_manager is not None and main_debugger.has_plugin_line_breaks:
* can_skip = not plugin_manager.can_not_skip(main_debugger, self, frame, info) # <<<<<<<<<<<<<<
*
* # CMD_STEP_OVER = 108
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_can_not_skip); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 757, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_can_not_skip); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 756, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_2 = NULL;
__pyx_t_5 = 0;
@@ -17089,7 +17089,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[5] = {__pyx_t_2, __pyx_v_main_debugger, ((PyObject *)__pyx_v_self), __pyx_v_frame, ((PyObject *)__pyx_v_info)};
- __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 757, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 756, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
@@ -17097,13 +17097,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[5] = {__pyx_t_2, __pyx_v_main_debugger, ((PyObject *)__pyx_v_self), __pyx_v_frame, ((PyObject *)__pyx_v_info)};
- __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 757, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 756, __pyx_L5_error)
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
#endif
{
- __pyx_t_1 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 757, __pyx_L5_error)
+ __pyx_t_1 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 756, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_2) {
__Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __pyx_t_2 = NULL;
@@ -17120,16 +17120,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(((PyObject *)__pyx_v_info));
__Pyx_GIVEREF(((PyObject *)__pyx_v_info));
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_5, ((PyObject *)__pyx_v_info));
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 757, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 756, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 757, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 756, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_v_can_skip = (!__pyx_t_10);
- /* "_pydevd_bundle/pydevd_cython.pyx":756
+ /* "_pydevd_bundle/pydevd_cython.pyx":755
*
* if can_skip:
* if plugin_manager is not None and main_debugger.has_plugin_line_breaks: # <<<<<<<<<<<<<<
@@ -17138,7 +17138,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":760
+ /* "_pydevd_bundle/pydevd_cython.pyx":759
*
* # CMD_STEP_OVER = 108
* if can_skip and main_debugger.show_return_values and info.pydev_step_cmd == 108 and frame.f_back is info.pydev_step_stop: # <<<<<<<<<<<<<<
@@ -17151,9 +17151,9 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = __pyx_t_9;
goto __pyx_L54_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_show_return_values); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 760, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_show_return_values); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 759, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 760, __pyx_L5_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 759, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_9) {
} else {
@@ -17166,7 +17166,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = __pyx_t_9;
goto __pyx_L54_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 760, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 759, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_9 = (__pyx_t_7 == __pyx_v_info->pydev_step_stop);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
@@ -17175,7 +17175,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L54_bool_binop_done:;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":762
+ /* "_pydevd_bundle/pydevd_cython.pyx":761
* if can_skip and main_debugger.show_return_values and info.pydev_step_cmd == 108 and frame.f_back is info.pydev_step_stop:
* # trace function for showing return values after step over
* can_skip = False # <<<<<<<<<<<<<<
@@ -17184,7 +17184,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_can_skip = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":760
+ /* "_pydevd_bundle/pydevd_cython.pyx":759
*
* # CMD_STEP_OVER = 108
* if can_skip and main_debugger.show_return_values and info.pydev_step_cmd == 108 and frame.f_back is info.pydev_step_stop: # <<<<<<<<<<<<<<
@@ -17193,7 +17193,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":755
+ /* "_pydevd_bundle/pydevd_cython.pyx":754
* or (step_cmd in (109, 108) and stop_frame is not frame)
*
* if can_skip: # <<<<<<<<<<<<<<
@@ -17202,7 +17202,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":747
+ /* "_pydevd_bundle/pydevd_cython.pyx":746
* can_skip = False
*
* if info.pydev_state == 1: # STATE_RUN = 1 # <<<<<<<<<<<<<<
@@ -17211,18 +17211,18 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":768
+ /* "_pydevd_bundle/pydevd_cython.pyx":767
* # also, after we hit a breakpoint and go to some other debugging state, we have to force the set trace anyway,
* # so, that's why the additional checks are there.
* if not breakpoints_for_file: # <<<<<<<<<<<<<<
* if can_skip:
* if has_exception_breakpoints:
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoints_for_file); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 768, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoints_for_file); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 767, __pyx_L5_error)
__pyx_t_17 = ((!__pyx_t_10) != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":769
+ /* "_pydevd_bundle/pydevd_cython.pyx":768
* # so, that's why the additional checks are there.
* if not breakpoints_for_file:
* if can_skip: # <<<<<<<<<<<<<<
@@ -17232,7 +17232,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_v_can_skip != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":770
+ /* "_pydevd_bundle/pydevd_cython.pyx":769
* if not breakpoints_for_file:
* if can_skip:
* if has_exception_breakpoints: # <<<<<<<<<<<<<<
@@ -17242,19 +17242,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_v_has_exception_breakpoints != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":771
+ /* "_pydevd_bundle/pydevd_cython.pyx":770
* if can_skip:
* if has_exception_breakpoints:
* frame.f_trace = self.trace_exception # <<<<<<<<<<<<<<
* return self.trace_exception
* else:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 771, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 770, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 771, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 770, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":772
+ /* "_pydevd_bundle/pydevd_cython.pyx":771
* if has_exception_breakpoints:
* frame.f_trace = self.trace_exception
* return self.trace_exception # <<<<<<<<<<<<<<
@@ -17262,13 +17262,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if need_signature_trace_return:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 772, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 771, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":770
+ /* "_pydevd_bundle/pydevd_cython.pyx":769
* if not breakpoints_for_file:
* if can_skip:
* if has_exception_breakpoints: # <<<<<<<<<<<<<<
@@ -17277,7 +17277,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":774
+ /* "_pydevd_bundle/pydevd_cython.pyx":773
* return self.trace_exception
* else:
* if need_signature_trace_return: # <<<<<<<<<<<<<<
@@ -17285,22 +17285,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* return self.trace_return
*/
/*else*/ {
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_need_signature_trace_return); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 774, __pyx_L5_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_need_signature_trace_return); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 773, __pyx_L5_error)
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":775
+ /* "_pydevd_bundle/pydevd_cython.pyx":774
* else:
* if need_signature_trace_return:
* frame.f_trace = self.trace_return # <<<<<<<<<<<<<<
* return self.trace_return
* else:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 775, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 774, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 775, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 774, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":776
+ /* "_pydevd_bundle/pydevd_cython.pyx":775
* if need_signature_trace_return:
* frame.f_trace = self.trace_return
* return self.trace_return # <<<<<<<<<<<<<<
@@ -17308,13 +17308,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if not is_call: frame.f_trace = NO_FTRACE
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 776, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 775, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":774
+ /* "_pydevd_bundle/pydevd_cython.pyx":773
* return self.trace_exception
* else:
* if need_signature_trace_return: # <<<<<<<<<<<<<<
@@ -17323,7 +17323,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":778
+ /* "_pydevd_bundle/pydevd_cython.pyx":777
* return self.trace_return
* else:
* if not is_call: frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
@@ -17333,13 +17333,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
/*else*/ {
__pyx_t_17 = ((!(__pyx_v_is_call != 0)) != 0);
if (__pyx_t_17) {
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 778, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 777, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 778, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 777, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":779
+ /* "_pydevd_bundle/pydevd_cython.pyx":778
* else:
* if not is_call: frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -17352,7 +17352,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":769
+ /* "_pydevd_bundle/pydevd_cython.pyx":768
* # so, that's why the additional checks are there.
* if not breakpoints_for_file:
* if can_skip: # <<<<<<<<<<<<<<
@@ -17361,7 +17361,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":768
+ /* "_pydevd_bundle/pydevd_cython.pyx":767
* # also, after we hit a breakpoint and go to some other debugging state, we have to force the set trace anyway,
* # so, that's why the additional checks are there.
* if not breakpoints_for_file: # <<<<<<<<<<<<<<
@@ -17371,7 +17371,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L58;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":783
+ /* "_pydevd_bundle/pydevd_cython.pyx":782
* else:
* # When cached, 0 means we don't have a breakpoint and 1 means we have.
* if can_skip: # <<<<<<<<<<<<<<
@@ -17382,7 +17382,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_v_can_skip != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":784
+ /* "_pydevd_bundle/pydevd_cython.pyx":783
* # When cached, 0 means we don't have a breakpoint and 1 means we have.
* if can_skip:
* breakpoints_in_line_cache = frame_skips_cache.get(line_cache_key, -1) # <<<<<<<<<<<<<<
@@ -17391,15 +17391,15 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
- __PYX_ERR(0, 784, __pyx_L5_error)
+ __PYX_ERR(0, 783, __pyx_L5_error)
}
- __pyx_t_7 = __Pyx_PyDict_GetItemDefault(__pyx_v_frame_skips_cache, __pyx_v_line_cache_key, __pyx_int_neg_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 784, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyDict_GetItemDefault(__pyx_v_frame_skips_cache, __pyx_v_line_cache_key, __pyx_int_neg_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 783, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_7); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 784, __pyx_L5_error)
+ __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_7); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 783, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_v_breakpoints_in_line_cache = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":785
+ /* "_pydevd_bundle/pydevd_cython.pyx":784
* if can_skip:
* breakpoints_in_line_cache = frame_skips_cache.get(line_cache_key, -1)
* if breakpoints_in_line_cache == 0: # <<<<<<<<<<<<<<
@@ -17409,7 +17409,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = ((__pyx_v_breakpoints_in_line_cache == 0) != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":787
+ /* "_pydevd_bundle/pydevd_cython.pyx":786
* if breakpoints_in_line_cache == 0:
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -17417,13 +17417,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* breakpoints_in_frame_cache = frame_skips_cache.get(frame_cache_key, -1)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 787, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 786, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":785
+ /* "_pydevd_bundle/pydevd_cython.pyx":784
* if can_skip:
* breakpoints_in_line_cache = frame_skips_cache.get(line_cache_key, -1)
* if breakpoints_in_line_cache == 0: # <<<<<<<<<<<<<<
@@ -17432,7 +17432,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":783
+ /* "_pydevd_bundle/pydevd_cython.pyx":782
* else:
* # When cached, 0 means we don't have a breakpoint and 1 means we have.
* if can_skip: # <<<<<<<<<<<<<<
@@ -17441,7 +17441,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":789
+ /* "_pydevd_bundle/pydevd_cython.pyx":788
* return self.trace_dispatch
*
* breakpoints_in_frame_cache = frame_skips_cache.get(frame_cache_key, -1) # <<<<<<<<<<<<<<
@@ -17450,15 +17450,15 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
- __PYX_ERR(0, 789, __pyx_L5_error)
+ __PYX_ERR(0, 788, __pyx_L5_error)
}
- __pyx_t_7 = __Pyx_PyDict_GetItemDefault(__pyx_v_frame_skips_cache, __pyx_v_frame_cache_key, __pyx_int_neg_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 789, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyDict_GetItemDefault(__pyx_v_frame_skips_cache, __pyx_v_frame_cache_key, __pyx_int_neg_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 788, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_7); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 789, __pyx_L5_error)
+ __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_7); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 788, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_v_breakpoints_in_frame_cache = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":790
+ /* "_pydevd_bundle/pydevd_cython.pyx":789
*
* breakpoints_in_frame_cache = frame_skips_cache.get(frame_cache_key, -1)
* if breakpoints_in_frame_cache != -1: # <<<<<<<<<<<<<<
@@ -17468,7 +17468,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = ((__pyx_v_breakpoints_in_frame_cache != -1L) != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":792
+ /* "_pydevd_bundle/pydevd_cython.pyx":791
* if breakpoints_in_frame_cache != -1:
* # Gotten from cache.
* has_breakpoint_in_frame = breakpoints_in_frame_cache == 1 # <<<<<<<<<<<<<<
@@ -17477,7 +17477,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_has_breakpoint_in_frame = (__pyx_v_breakpoints_in_frame_cache == 1);
- /* "_pydevd_bundle/pydevd_cython.pyx":790
+ /* "_pydevd_bundle/pydevd_cython.pyx":789
*
* breakpoints_in_frame_cache = frame_skips_cache.get(frame_cache_key, -1)
* if breakpoints_in_frame_cache != -1: # <<<<<<<<<<<<<<
@@ -17487,7 +17487,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L65;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":795
+ /* "_pydevd_bundle/pydevd_cython.pyx":794
*
* else:
* has_breakpoint_in_frame = False # <<<<<<<<<<<<<<
@@ -17497,23 +17497,23 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
/*else*/ {
__pyx_v_has_breakpoint_in_frame = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":797
+ /* "_pydevd_bundle/pydevd_cython.pyx":796
* has_breakpoint_in_frame = False
* # Checks the breakpoint to see if there is a context match in some function
* curr_func_name = frame.f_code.co_name # <<<<<<<<<<<<<<
*
* # global context is set with an empty name
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 797, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 796, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_co_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 797, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_co_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 796, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_8))||((__pyx_t_8) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_8)->tp_name), 0))) __PYX_ERR(0, 797, __pyx_L5_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_8))||((__pyx_t_8) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_8)->tp_name), 0))) __PYX_ERR(0, 796, __pyx_L5_error)
__pyx_v_curr_func_name = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":800
+ /* "_pydevd_bundle/pydevd_cython.pyx":799
*
* # global context is set with an empty name
* if curr_func_name in ('?', '<module>', '<lambda>'): # <<<<<<<<<<<<<<
@@ -17522,21 +17522,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__Pyx_INCREF(__pyx_v_curr_func_name);
__pyx_t_18 = __pyx_v_curr_func_name;
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s__5, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 800, __pyx_L5_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s__5, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 799, __pyx_L5_error)
__pyx_t_9 = (__pyx_t_10 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_17 = __pyx_t_9;
goto __pyx_L67_bool_binop_done;
}
- __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s_module, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 800, __pyx_L5_error)
+ __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s_module, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 799, __pyx_L5_error)
__pyx_t_10 = (__pyx_t_9 != 0);
if (!__pyx_t_10) {
} else {
__pyx_t_17 = __pyx_t_10;
goto __pyx_L67_bool_binop_done;
}
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s_lambda, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 800, __pyx_L5_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s_lambda, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 799, __pyx_L5_error)
__pyx_t_9 = (__pyx_t_10 != 0);
__pyx_t_17 = __pyx_t_9;
__pyx_L67_bool_binop_done:;
@@ -17544,7 +17544,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_t_17 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":801
+ /* "_pydevd_bundle/pydevd_cython.pyx":800
* # global context is set with an empty name
* if curr_func_name in ('?', '<module>', '<lambda>'):
* curr_func_name = '' # <<<<<<<<<<<<<<
@@ -17554,7 +17554,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_kp_s_);
__Pyx_DECREF_SET(__pyx_v_curr_func_name, __pyx_kp_s_);
- /* "_pydevd_bundle/pydevd_cython.pyx":800
+ /* "_pydevd_bundle/pydevd_cython.pyx":799
*
* # global context is set with an empty name
* if curr_func_name in ('?', '<module>', '<lambda>'): # <<<<<<<<<<<<<<
@@ -17563,14 +17563,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":803
+ /* "_pydevd_bundle/pydevd_cython.pyx":802
* curr_func_name = ''
*
* for breakpoint in dict_iter_values(breakpoints_for_file): # jython does not support itervalues() # <<<<<<<<<<<<<<
* # will match either global or some function
* if breakpoint.func_name in ('None', curr_func_name):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_dict_iter_values); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_dict_iter_values); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 802, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) {
@@ -17584,16 +17584,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_8 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_1, __pyx_v_breakpoints_for_file) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_breakpoints_for_file);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 803, __pyx_L5_error)
+ if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 802, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (likely(PyList_CheckExact(__pyx_t_8)) || PyTuple_CheckExact(__pyx_t_8)) {
__pyx_t_7 = __pyx_t_8; __Pyx_INCREF(__pyx_t_7); __pyx_t_11 = 0;
__pyx_t_12 = NULL;
} else {
- __pyx_t_11 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __pyx_t_11 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 802, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_12 = Py_TYPE(__pyx_t_7)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __pyx_t_12 = Py_TYPE(__pyx_t_7)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 802, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
for (;;) {
@@ -17601,17 +17601,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (likely(PyList_CheckExact(__pyx_t_7))) {
if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_7)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_8 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __pyx_t_8 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 802, __pyx_L5_error)
#else
- __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 802, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
} else {
if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_7)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 802, __pyx_L5_error)
#else
- __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 803, __pyx_L5_error)
+ __pyx_t_8 = PySequence_ITEM(__pyx_t_7, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 802, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
}
@@ -17621,7 +17621,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(0, 803, __pyx_L5_error)
+ else __PYX_ERR(0, 802, __pyx_L5_error)
}
break;
}
@@ -17630,29 +17630,29 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF_SET(__pyx_v_breakpoint, __pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":805
+ /* "_pydevd_bundle/pydevd_cython.pyx":804
* for breakpoint in dict_iter_values(breakpoints_for_file): # jython does not support itervalues()
* # will match either global or some function
* if breakpoint.func_name in ('None', curr_func_name): # <<<<<<<<<<<<<<
* has_breakpoint_in_frame = True
* break
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_func_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 805, __pyx_L5_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_func_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 804, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_17 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_None, Py_EQ)); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 805, __pyx_L5_error)
+ __pyx_t_17 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_None, Py_EQ)); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 804, __pyx_L5_error)
if (!__pyx_t_17) {
} else {
__pyx_t_9 = __pyx_t_17;
goto __pyx_L73_bool_binop_done;
}
- __pyx_t_17 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_v_curr_func_name, Py_EQ)); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 805, __pyx_L5_error)
+ __pyx_t_17 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_v_curr_func_name, Py_EQ)); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 804, __pyx_L5_error)
__pyx_t_9 = __pyx_t_17;
__pyx_L73_bool_binop_done:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_17 = (__pyx_t_9 != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":806
+ /* "_pydevd_bundle/pydevd_cython.pyx":805
* # will match either global or some function
* if breakpoint.func_name in ('None', curr_func_name):
* has_breakpoint_in_frame = True # <<<<<<<<<<<<<<
@@ -17661,7 +17661,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_has_breakpoint_in_frame = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":807
+ /* "_pydevd_bundle/pydevd_cython.pyx":806
* if breakpoint.func_name in ('None', curr_func_name):
* has_breakpoint_in_frame = True
* break # <<<<<<<<<<<<<<
@@ -17670,7 +17670,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
goto __pyx_L71_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":805
+ /* "_pydevd_bundle/pydevd_cython.pyx":804
* for breakpoint in dict_iter_values(breakpoints_for_file): # jython does not support itervalues()
* # will match either global or some function
* if breakpoint.func_name in ('None', curr_func_name): # <<<<<<<<<<<<<<
@@ -17679,7 +17679,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":803
+ /* "_pydevd_bundle/pydevd_cython.pyx":802
* curr_func_name = ''
*
* for breakpoint in dict_iter_values(breakpoints_for_file): # jython does not support itervalues() # <<<<<<<<<<<<<<
@@ -17690,7 +17690,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L71_break:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":810
+ /* "_pydevd_bundle/pydevd_cython.pyx":809
*
* # Cache the value (1 or 0 or -1 for default because of cython).
* if has_breakpoint_in_frame: # <<<<<<<<<<<<<<
@@ -17700,7 +17700,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_v_has_breakpoint_in_frame != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":811
+ /* "_pydevd_bundle/pydevd_cython.pyx":810
* # Cache the value (1 or 0 or -1 for default because of cython).
* if has_breakpoint_in_frame:
* frame_skips_cache[frame_cache_key] = 1 # <<<<<<<<<<<<<<
@@ -17709,11 +17709,11 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 811, __pyx_L5_error)
+ __PYX_ERR(0, 810, __pyx_L5_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 811, __pyx_L5_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 810, __pyx_L5_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":810
+ /* "_pydevd_bundle/pydevd_cython.pyx":809
*
* # Cache the value (1 or 0 or -1 for default because of cython).
* if has_breakpoint_in_frame: # <<<<<<<<<<<<<<
@@ -17723,7 +17723,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L75;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":813
+ /* "_pydevd_bundle/pydevd_cython.pyx":812
* frame_skips_cache[frame_cache_key] = 1
* else:
* frame_skips_cache[frame_cache_key] = 0 # <<<<<<<<<<<<<<
@@ -17733,15 +17733,15 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
/*else*/ {
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 813, __pyx_L5_error)
+ __PYX_ERR(0, 812, __pyx_L5_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_frame_cache_key, __pyx_int_0) < 0)) __PYX_ERR(0, 813, __pyx_L5_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_frame_cache_key, __pyx_int_0) < 0)) __PYX_ERR(0, 812, __pyx_L5_error)
}
__pyx_L75:;
}
__pyx_L65:;
- /* "_pydevd_bundle/pydevd_cython.pyx":815
+ /* "_pydevd_bundle/pydevd_cython.pyx":814
* frame_skips_cache[frame_cache_key] = 0
*
* if can_skip and not has_breakpoint_in_frame: # <<<<<<<<<<<<<<
@@ -17759,7 +17759,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L77_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":816
+ /* "_pydevd_bundle/pydevd_cython.pyx":815
*
* if can_skip and not has_breakpoint_in_frame:
* if has_exception_breakpoints: # <<<<<<<<<<<<<<
@@ -17769,19 +17769,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_v_has_exception_breakpoints != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":817
+ /* "_pydevd_bundle/pydevd_cython.pyx":816
* if can_skip and not has_breakpoint_in_frame:
* if has_exception_breakpoints:
* frame.f_trace = self.trace_exception # <<<<<<<<<<<<<<
* return self.trace_exception
* else:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 817, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 816, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 817, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 816, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":818
+ /* "_pydevd_bundle/pydevd_cython.pyx":817
* if has_exception_breakpoints:
* frame.f_trace = self.trace_exception
* return self.trace_exception # <<<<<<<<<<<<<<
@@ -17789,13 +17789,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if need_signature_trace_return:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 818, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 817, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":816
+ /* "_pydevd_bundle/pydevd_cython.pyx":815
*
* if can_skip and not has_breakpoint_in_frame:
* if has_exception_breakpoints: # <<<<<<<<<<<<<<
@@ -17804,7 +17804,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":820
+ /* "_pydevd_bundle/pydevd_cython.pyx":819
* return self.trace_exception
* else:
* if need_signature_trace_return: # <<<<<<<<<<<<<<
@@ -17812,22 +17812,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* return self.trace_return
*/
/*else*/ {
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_need_signature_trace_return); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 820, __pyx_L5_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_need_signature_trace_return); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 819, __pyx_L5_error)
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":821
+ /* "_pydevd_bundle/pydevd_cython.pyx":820
* else:
* if need_signature_trace_return:
* frame.f_trace = self.trace_return # <<<<<<<<<<<<<<
* return self.trace_return
* else:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 821, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 820, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 821, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 820, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":822
+ /* "_pydevd_bundle/pydevd_cython.pyx":821
* if need_signature_trace_return:
* frame.f_trace = self.trace_return
* return self.trace_return # <<<<<<<<<<<<<<
@@ -17835,13 +17835,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if not is_call: frame.f_trace = NO_FTRACE
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 822, __pyx_L5_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_return); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 821, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":820
+ /* "_pydevd_bundle/pydevd_cython.pyx":819
* return self.trace_exception
* else:
* if need_signature_trace_return: # <<<<<<<<<<<<<<
@@ -17850,7 +17850,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":824
+ /* "_pydevd_bundle/pydevd_cython.pyx":823
* return self.trace_return
* else:
* if not is_call: frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
@@ -17860,13 +17860,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
/*else*/ {
__pyx_t_17 = ((!(__pyx_v_is_call != 0)) != 0);
if (__pyx_t_17) {
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 824, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 823, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 824, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_7) < 0) __PYX_ERR(0, 823, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":825
+ /* "_pydevd_bundle/pydevd_cython.pyx":824
* else:
* if not is_call: frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -17879,7 +17879,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":815
+ /* "_pydevd_bundle/pydevd_cython.pyx":814
* frame_skips_cache[frame_cache_key] = 0
*
* if can_skip and not has_breakpoint_in_frame: # <<<<<<<<<<<<<<
@@ -17890,7 +17890,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L58:;
- /* "_pydevd_bundle/pydevd_cython.pyx":717
+ /* "_pydevd_bundle/pydevd_cython.pyx":716
* breakpoints_for_file = main_debugger.breakpoints.get(filename)
*
* if not is_exception_event: # <<<<<<<<<<<<<<
@@ -17899,7 +17899,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":829
+ /* "_pydevd_bundle/pydevd_cython.pyx":828
* # We may have hit a breakpoint or we are already in step mode. Either way, let's check what we should do in this frame
* # print('NOT skipped: %s %s %s %s' % (frame.f_lineno, frame.f_code.co_name, event, frame.__class__.__name__))
* try: # <<<<<<<<<<<<<<
@@ -17915,7 +17915,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGOTREF(__pyx_t_13);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":830
+ /* "_pydevd_bundle/pydevd_cython.pyx":829
* # print('NOT skipped: %s %s %s %s' % (frame.f_lineno, frame.f_code.co_name, event, frame.__class__.__name__))
* try:
* flag = False # <<<<<<<<<<<<<<
@@ -17925,19 +17925,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__pyx_v_flag = Py_False;
- /* "_pydevd_bundle/pydevd_cython.pyx":834
+ /* "_pydevd_bundle/pydevd_cython.pyx":833
* # (one for the line and the other for the return).
*
* stop_info = {} # <<<<<<<<<<<<<<
* breakpoint = None
* exist_result = False
*/
- __pyx_t_7 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 834, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 833, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_v_stop_info = ((PyObject*)__pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":835
+ /* "_pydevd_bundle/pydevd_cython.pyx":834
*
* stop_info = {}
* breakpoint = None # <<<<<<<<<<<<<<
@@ -17947,7 +17947,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_None);
__Pyx_XDECREF_SET(__pyx_v_breakpoint, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":836
+ /* "_pydevd_bundle/pydevd_cython.pyx":835
* stop_info = {}
* breakpoint = None
* exist_result = False # <<<<<<<<<<<<<<
@@ -17956,7 +17956,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_exist_result = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":837
+ /* "_pydevd_bundle/pydevd_cython.pyx":836
* breakpoint = None
* exist_result = False
* stop = False # <<<<<<<<<<<<<<
@@ -17966,7 +17966,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__pyx_v_stop = Py_False;
- /* "_pydevd_bundle/pydevd_cython.pyx":838
+ /* "_pydevd_bundle/pydevd_cython.pyx":837
* exist_result = False
* stop = False
* bp_type = None # <<<<<<<<<<<<<<
@@ -17976,7 +17976,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_None);
__pyx_v_bp_type = Py_None;
- /* "_pydevd_bundle/pydevd_cython.pyx":839
+ /* "_pydevd_bundle/pydevd_cython.pyx":838
* stop = False
* bp_type = None
* smart_stop_frame = info.pydev_smart_step_context.smart_step_stop # <<<<<<<<<<<<<<
@@ -17988,7 +17988,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_smart_stop_frame = __pyx_t_7;
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":840
+ /* "_pydevd_bundle/pydevd_cython.pyx":839
* bp_type = None
* smart_stop_frame = info.pydev_smart_step_context.smart_step_stop
* context_start_line = info.pydev_smart_step_context.start_line # <<<<<<<<<<<<<<
@@ -17998,7 +17998,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_5 = __pyx_v_info->pydev_smart_step_context->start_line;
__pyx_v_context_start_line = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":841
+ /* "_pydevd_bundle/pydevd_cython.pyx":840
* smart_stop_frame = info.pydev_smart_step_context.smart_step_stop
* context_start_line = info.pydev_smart_step_context.start_line
* context_end_line = info.pydev_smart_step_context.end_line # <<<<<<<<<<<<<<
@@ -18008,7 +18008,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_5 = __pyx_v_info->pydev_smart_step_context->end_line;
__pyx_v_context_end_line = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":842
+ /* "_pydevd_bundle/pydevd_cython.pyx":841
* context_start_line = info.pydev_smart_step_context.start_line
* context_end_line = info.pydev_smart_step_context.end_line
* is_within_context = context_start_line <= line <= context_end_line # <<<<<<<<<<<<<<
@@ -18019,12 +18019,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (__pyx_t_17) {
__pyx_t_17 = (__pyx_v_line <= __pyx_v_context_end_line);
}
- __pyx_t_7 = __Pyx_PyBool_FromLong(__pyx_t_17); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 842, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyBool_FromLong(__pyx_t_17); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 841, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_v_is_within_context = __pyx_t_7;
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":844
+ /* "_pydevd_bundle/pydevd_cython.pyx":843
* is_within_context = context_start_line <= line <= context_end_line
*
* if not is_return and info.pydev_state != STATE_SUSPEND and breakpoints_for_file is not None and line in breakpoints_for_file: # <<<<<<<<<<<<<<
@@ -18037,14 +18037,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = __pyx_t_9;
goto __pyx_L89_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_info->pydev_state); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 844, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_info->pydev_state); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 843, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_STATE_SUSPEND); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 844, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_STATE_SUSPEND); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 843, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = PyObject_RichCompare(__pyx_t_7, __pyx_t_8, Py_NE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 844, __pyx_L82_error)
+ __pyx_t_1 = PyObject_RichCompare(__pyx_t_7, __pyx_t_8, Py_NE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 843, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 844, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 843, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_9) {
} else {
@@ -18058,20 +18058,20 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = __pyx_t_10;
goto __pyx_L89_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 844, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 843, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_breakpoints_for_file == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
- __PYX_ERR(0, 844, __pyx_L82_error)
+ __PYX_ERR(0, 843, __pyx_L82_error)
}
- __pyx_t_10 = (__Pyx_PyDict_ContainsTF(__pyx_t_1, __pyx_v_breakpoints_for_file, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 844, __pyx_L82_error)
+ __pyx_t_10 = (__Pyx_PyDict_ContainsTF(__pyx_t_1, __pyx_v_breakpoints_for_file, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 843, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_9 = (__pyx_t_10 != 0);
__pyx_t_17 = __pyx_t_9;
__pyx_L89_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":845
+ /* "_pydevd_bundle/pydevd_cython.pyx":844
*
* if not is_return and info.pydev_state != STATE_SUSPEND and breakpoints_for_file is not None and line in breakpoints_for_file:
* breakpoint = breakpoints_for_file[line] # <<<<<<<<<<<<<<
@@ -18080,17 +18080,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_breakpoints_for_file == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 845, __pyx_L82_error)
+ __PYX_ERR(0, 844, __pyx_L82_error)
}
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 845, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 844, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = __Pyx_PyDict_GetItem(__pyx_v_breakpoints_for_file, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 845, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyDict_GetItem(__pyx_v_breakpoints_for_file, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 844, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF_SET(__pyx_v_breakpoint, __pyx_t_8);
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":846
+ /* "_pydevd_bundle/pydevd_cython.pyx":845
* if not is_return and info.pydev_state != STATE_SUSPEND and breakpoints_for_file is not None and line in breakpoints_for_file:
* breakpoint = breakpoints_for_file[line]
* new_frame = frame # <<<<<<<<<<<<<<
@@ -18100,7 +18100,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_frame);
__pyx_v_new_frame = __pyx_v_frame;
- /* "_pydevd_bundle/pydevd_cython.pyx":847
+ /* "_pydevd_bundle/pydevd_cython.pyx":846
* breakpoint = breakpoints_for_file[line]
* new_frame = frame
* stop = True # <<<<<<<<<<<<<<
@@ -18110,25 +18110,25 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_True);
__Pyx_DECREF_SET(__pyx_v_stop, Py_True);
- /* "_pydevd_bundle/pydevd_cython.pyx":848
+ /* "_pydevd_bundle/pydevd_cython.pyx":847
* new_frame = frame
* stop = True
* if step_cmd == CMD_STEP_OVER: # <<<<<<<<<<<<<<
* if stop_frame is frame and (is_line or is_return):
* stop = False # we don't stop on breakpoint if we have to stop by step-over (it will be processed later)
*/
- __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 848, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 847, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 848, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 847, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = PyObject_RichCompare(__pyx_t_8, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 848, __pyx_L82_error)
+ __pyx_t_7 = PyObject_RichCompare(__pyx_t_8, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 847, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 848, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 847, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":849
+ /* "_pydevd_bundle/pydevd_cython.pyx":848
* stop = True
* if step_cmd == CMD_STEP_OVER:
* if stop_frame is frame and (is_line or is_return): # <<<<<<<<<<<<<<
@@ -18153,7 +18153,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L95_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":850
+ /* "_pydevd_bundle/pydevd_cython.pyx":849
* if step_cmd == CMD_STEP_OVER:
* if stop_frame is frame and (is_line or is_return):
* stop = False # we don't stop on breakpoint if we have to stop by step-over (it will be processed later) # <<<<<<<<<<<<<<
@@ -18163,7 +18163,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__Pyx_DECREF_SET(__pyx_v_stop, Py_False);
- /* "_pydevd_bundle/pydevd_cython.pyx":849
+ /* "_pydevd_bundle/pydevd_cython.pyx":848
* stop = True
* if step_cmd == CMD_STEP_OVER:
* if stop_frame is frame and (is_line or is_return): # <<<<<<<<<<<<<<
@@ -18173,29 +18173,29 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L94;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":851
+ /* "_pydevd_bundle/pydevd_cython.pyx":850
* if stop_frame is frame and (is_line or is_return):
* stop = False # we don't stop on breakpoint if we have to stop by step-over (it will be processed later)
* elif is_generator_or_coroutime and frame.f_back and frame.f_back is stop_frame: # <<<<<<<<<<<<<<
* stop = False # we don't stop on breakpoint if stepping is active and we enter a `genexpr` or coroutine context
* elif step_cmd == CMD_SMART_STEP_INTO and (frame.f_back is smart_stop_frame and is_within_context):
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_generator_or_coroutime); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 851, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_generator_or_coroutime); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 850, __pyx_L82_error)
if (__pyx_t_10) {
} else {
__pyx_t_17 = __pyx_t_10;
goto __pyx_L98_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 851, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 850, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 851, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 850, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_10) {
} else {
__pyx_t_17 = __pyx_t_10;
goto __pyx_L98_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 851, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 850, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_10 = (__pyx_t_7 == __pyx_v_stop_frame);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
@@ -18204,7 +18204,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L98_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":852
+ /* "_pydevd_bundle/pydevd_cython.pyx":851
* stop = False # we don't stop on breakpoint if we have to stop by step-over (it will be processed later)
* elif is_generator_or_coroutime and frame.f_back and frame.f_back is stop_frame:
* stop = False # we don't stop on breakpoint if stepping is active and we enter a `genexpr` or coroutine context # <<<<<<<<<<<<<<
@@ -18214,7 +18214,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__Pyx_DECREF_SET(__pyx_v_stop, Py_False);
- /* "_pydevd_bundle/pydevd_cython.pyx":851
+ /* "_pydevd_bundle/pydevd_cython.pyx":850
* if stop_frame is frame and (is_line or is_return):
* stop = False # we don't stop on breakpoint if we have to stop by step-over (it will be processed later)
* elif is_generator_or_coroutime and frame.f_back and frame.f_back is stop_frame: # <<<<<<<<<<<<<<
@@ -18224,7 +18224,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L94:;
- /* "_pydevd_bundle/pydevd_cython.pyx":848
+ /* "_pydevd_bundle/pydevd_cython.pyx":847
* new_frame = frame
* stop = True
* if step_cmd == CMD_STEP_OVER: # <<<<<<<<<<<<<<
@@ -18234,28 +18234,28 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L93;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":853
+ /* "_pydevd_bundle/pydevd_cython.pyx":852
* elif is_generator_or_coroutime and frame.f_back and frame.f_back is stop_frame:
* stop = False # we don't stop on breakpoint if stepping is active and we enter a `genexpr` or coroutine context
* elif step_cmd == CMD_SMART_STEP_INTO and (frame.f_back is smart_stop_frame and is_within_context): # <<<<<<<<<<<<<<
* stop = False
* elif plugin_manager is not None and main_debugger.has_plugin_line_breaks:
*/
- __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 853, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 852, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CMD_SMART_STEP_INTO); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 853, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CMD_SMART_STEP_INTO); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 852, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = PyObject_RichCompare(__pyx_t_7, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 853, __pyx_L82_error)
+ __pyx_t_8 = PyObject_RichCompare(__pyx_t_7, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 852, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 853, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 852, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (__pyx_t_9) {
} else {
__pyx_t_17 = __pyx_t_9;
goto __pyx_L101_bool_binop_done;
}
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 853, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 852, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = (__pyx_t_8 == __pyx_v_smart_stop_frame);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
@@ -18265,12 +18265,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = __pyx_t_10;
goto __pyx_L101_bool_binop_done;
}
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_within_context); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 853, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_within_context); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 852, __pyx_L82_error)
__pyx_t_17 = __pyx_t_10;
__pyx_L101_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":854
+ /* "_pydevd_bundle/pydevd_cython.pyx":853
* stop = False # we don't stop on breakpoint if stepping is active and we enter a `genexpr` or coroutine context
* elif step_cmd == CMD_SMART_STEP_INTO and (frame.f_back is smart_stop_frame and is_within_context):
* stop = False # <<<<<<<<<<<<<<
@@ -18280,7 +18280,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__Pyx_DECREF_SET(__pyx_v_stop, Py_False);
- /* "_pydevd_bundle/pydevd_cython.pyx":853
+ /* "_pydevd_bundle/pydevd_cython.pyx":852
* elif is_generator_or_coroutime and frame.f_back and frame.f_back is stop_frame:
* stop = False # we don't stop on breakpoint if stepping is active and we enter a `genexpr` or coroutine context
* elif step_cmd == CMD_SMART_STEP_INTO and (frame.f_back is smart_stop_frame and is_within_context): # <<<<<<<<<<<<<<
@@ -18290,7 +18290,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L93:;
- /* "_pydevd_bundle/pydevd_cython.pyx":844
+ /* "_pydevd_bundle/pydevd_cython.pyx":843
* is_within_context = context_start_line <= line <= context_end_line
*
* if not is_return and info.pydev_state != STATE_SUSPEND and breakpoints_for_file is not None and line in breakpoints_for_file: # <<<<<<<<<<<<<<
@@ -18300,7 +18300,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L88;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":855
+ /* "_pydevd_bundle/pydevd_cython.pyx":854
* elif step_cmd == CMD_SMART_STEP_INTO and (frame.f_back is smart_stop_frame and is_within_context):
* stop = False
* elif plugin_manager is not None and main_debugger.has_plugin_line_breaks: # <<<<<<<<<<<<<<
@@ -18314,22 +18314,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = __pyx_t_9;
goto __pyx_L104_bool_binop_done;
}
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_has_plugin_line_breaks); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 855, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_has_plugin_line_breaks); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 854, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 855, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 854, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_17 = __pyx_t_9;
__pyx_L104_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":856
+ /* "_pydevd_bundle/pydevd_cython.pyx":855
* stop = False
* elif plugin_manager is not None and main_debugger.has_plugin_line_breaks:
* result = plugin_manager.get_breakpoint(main_debugger, self, frame, event, self._args) # <<<<<<<<<<<<<<
* if result:
* exist_result = True
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_get_breakpoint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 856, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_get_breakpoint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 855, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_7 = NULL;
__pyx_t_5 = 0;
@@ -18346,7 +18346,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[6] = {__pyx_t_7, __pyx_v_main_debugger, ((PyObject *)__pyx_v_self), __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args};
- __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 5+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 856, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 5+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 855, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
@@ -18354,13 +18354,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[6] = {__pyx_t_7, __pyx_v_main_debugger, ((PyObject *)__pyx_v_self), __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args};
- __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 5+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 856, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 5+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 855, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_8);
} else
#endif
{
- __pyx_t_2 = PyTuple_New(5+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 856, __pyx_L82_error)
+ __pyx_t_2 = PyTuple_New(5+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 855, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -18380,7 +18380,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_self->_args);
__Pyx_GIVEREF(__pyx_v_self->_args);
PyTuple_SET_ITEM(__pyx_t_2, 4+__pyx_t_5, __pyx_v_self->_args);
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 856, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 855, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
@@ -18388,17 +18388,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_result = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":857
+ /* "_pydevd_bundle/pydevd_cython.pyx":856
* elif plugin_manager is not None and main_debugger.has_plugin_line_breaks:
* result = plugin_manager.get_breakpoint(main_debugger, self, frame, event, self._args)
* if result: # <<<<<<<<<<<<<<
* exist_result = True
* flag, breakpoint, new_frame, bp_type = result
*/
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 857, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 856, __pyx_L82_error)
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":858
+ /* "_pydevd_bundle/pydevd_cython.pyx":857
* result = plugin_manager.get_breakpoint(main_debugger, self, frame, event, self._args)
* if result:
* exist_result = True # <<<<<<<<<<<<<<
@@ -18407,7 +18407,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_exist_result = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":859
+ /* "_pydevd_bundle/pydevd_cython.pyx":858
* if result:
* exist_result = True
* flag, breakpoint, new_frame, bp_type = result # <<<<<<<<<<<<<<
@@ -18420,7 +18420,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(size != 4)) {
if (size > 4) __Pyx_RaiseTooManyValuesError(4);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 859, __pyx_L82_error)
+ __PYX_ERR(0, 858, __pyx_L82_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -18443,7 +18443,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
Py_ssize_t i;
PyObject** temps[4] = {&__pyx_t_8,&__pyx_t_1,&__pyx_t_2,&__pyx_t_7};
for (i=0; i < 4; i++) {
- PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 859, __pyx_L82_error)
+ PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 858, __pyx_L82_error)
__Pyx_GOTREF(item);
*(temps[i]) = item;
}
@@ -18452,7 +18452,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
} else {
Py_ssize_t index = -1;
PyObject** temps[4] = {&__pyx_t_8,&__pyx_t_1,&__pyx_t_2,&__pyx_t_7};
- __pyx_t_6 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 859, __pyx_L82_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 858, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_16 = Py_TYPE(__pyx_t_6)->tp_iternext;
for (index=0; index < 4; index++) {
@@ -18460,7 +18460,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GOTREF(item);
*(temps[index]) = item;
}
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_6), 4) < 0) __PYX_ERR(0, 859, __pyx_L82_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_6), 4) < 0) __PYX_ERR(0, 858, __pyx_L82_error)
__pyx_t_16 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L108_unpacking_done;
@@ -18468,7 +18468,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_16 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 859, __pyx_L82_error)
+ __PYX_ERR(0, 858, __pyx_L82_error)
__pyx_L108_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_flag, __pyx_t_8);
@@ -18480,7 +18480,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_bp_type, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":857
+ /* "_pydevd_bundle/pydevd_cython.pyx":856
* elif plugin_manager is not None and main_debugger.has_plugin_line_breaks:
* result = plugin_manager.get_breakpoint(main_debugger, self, frame, event, self._args)
* if result: # <<<<<<<<<<<<<<
@@ -18489,7 +18489,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":855
+ /* "_pydevd_bundle/pydevd_cython.pyx":854
* elif step_cmd == CMD_SMART_STEP_INTO and (frame.f_back is smart_stop_frame and is_within_context):
* stop = False
* elif plugin_manager is not None and main_debugger.has_plugin_line_breaks: # <<<<<<<<<<<<<<
@@ -18499,24 +18499,24 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L88:;
- /* "_pydevd_bundle/pydevd_cython.pyx":861
+ /* "_pydevd_bundle/pydevd_cython.pyx":860
* flag, breakpoint, new_frame, bp_type = result
*
* if breakpoint: # <<<<<<<<<<<<<<
* # ok, hit breakpoint, now, we have to discover if it is a conditional breakpoint
* # lets do the conditional stuff here
*/
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoint); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 861, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoint); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 860, __pyx_L82_error)
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":864
+ /* "_pydevd_bundle/pydevd_cython.pyx":863
* # ok, hit breakpoint, now, we have to discover if it is a conditional breakpoint
* # lets do the conditional stuff here
* if stop or exist_result: # <<<<<<<<<<<<<<
* eval_result = False
* if breakpoint.has_condition:
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 864, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 863, __pyx_L82_error)
if (!__pyx_t_9) {
} else {
__pyx_t_17 = __pyx_t_9;
@@ -18527,7 +18527,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L111_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":865
+ /* "_pydevd_bundle/pydevd_cython.pyx":864
* # lets do the conditional stuff here
* if stop or exist_result:
* eval_result = False # <<<<<<<<<<<<<<
@@ -18537,29 +18537,29 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__pyx_v_eval_result = Py_False;
- /* "_pydevd_bundle/pydevd_cython.pyx":866
+ /* "_pydevd_bundle/pydevd_cython.pyx":865
* if stop or exist_result:
* eval_result = False
* if breakpoint.has_condition: # <<<<<<<<<<<<<<
* eval_result = handle_breakpoint_condition(main_debugger, info, breakpoint, new_frame)
*
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_has_condition); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 866, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_has_condition); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 865, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 866, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 865, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":867
+ /* "_pydevd_bundle/pydevd_cython.pyx":866
* eval_result = False
* if breakpoint.has_condition:
* eval_result = handle_breakpoint_condition(main_debugger, info, breakpoint, new_frame) # <<<<<<<<<<<<<<
*
* if breakpoint.expression is not None:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_handle_breakpoint_condition); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 867, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_handle_breakpoint_condition); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 866, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
- if (unlikely(!__pyx_v_new_frame)) { __Pyx_RaiseUnboundLocalError("new_frame"); __PYX_ERR(0, 867, __pyx_L82_error) }
+ if (unlikely(!__pyx_v_new_frame)) { __Pyx_RaiseUnboundLocalError("new_frame"); __PYX_ERR(0, 866, __pyx_L82_error) }
__pyx_t_1 = NULL;
__pyx_t_5 = 0;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
@@ -18575,7 +18575,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_main_debugger, ((PyObject *)__pyx_v_info), __pyx_v_breakpoint, __pyx_v_new_frame};
- __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 867, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 866, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
@@ -18583,13 +18583,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_main_debugger, ((PyObject *)__pyx_v_info), __pyx_v_breakpoint, __pyx_v_new_frame};
- __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 867, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 866, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
#endif
{
- __pyx_t_8 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 867, __pyx_L82_error)
+ __pyx_t_8 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 866, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL;
@@ -18606,7 +18606,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_new_frame);
__Pyx_GIVEREF(__pyx_v_new_frame);
PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_5, __pyx_v_new_frame);
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 867, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 866, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
@@ -18614,7 +18614,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_eval_result, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":866
+ /* "_pydevd_bundle/pydevd_cython.pyx":865
* if stop or exist_result:
* eval_result = False
* if breakpoint.has_condition: # <<<<<<<<<<<<<<
@@ -18623,30 +18623,30 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":869
+ /* "_pydevd_bundle/pydevd_cython.pyx":868
* eval_result = handle_breakpoint_condition(main_debugger, info, breakpoint, new_frame)
*
* if breakpoint.expression is not None: # <<<<<<<<<<<<<<
* handle_breakpoint_expression(breakpoint, info, new_frame)
* if breakpoint.is_logpoint and info.pydev_message is not None and len(info.pydev_message) > 0:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_expression); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 869, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_expression); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 868, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_17 = (__pyx_t_7 != Py_None);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_9 = (__pyx_t_17 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":870
+ /* "_pydevd_bundle/pydevd_cython.pyx":869
*
* if breakpoint.expression is not None:
* handle_breakpoint_expression(breakpoint, info, new_frame) # <<<<<<<<<<<<<<
* if breakpoint.is_logpoint and info.pydev_message is not None and len(info.pydev_message) > 0:
* cmd = main_debugger.cmd_factory.make_io_message(info.pydev_message + os.linesep, '1')
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_handle_breakpoint_expression); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_handle_breakpoint_expression); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 869, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
- if (unlikely(!__pyx_v_new_frame)) { __Pyx_RaiseUnboundLocalError("new_frame"); __PYX_ERR(0, 870, __pyx_L82_error) }
+ if (unlikely(!__pyx_v_new_frame)) { __Pyx_RaiseUnboundLocalError("new_frame"); __PYX_ERR(0, 869, __pyx_L82_error) }
__pyx_t_8 = NULL;
__pyx_t_5 = 0;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
@@ -18662,7 +18662,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_v_breakpoint, ((PyObject *)__pyx_v_info), __pyx_v_new_frame};
- __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 870, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 869, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
@@ -18670,13 +18670,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_v_breakpoint, ((PyObject *)__pyx_v_info), __pyx_v_new_frame};
- __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 870, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 869, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
#endif
{
- __pyx_t_1 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L82_error)
+ __pyx_t_1 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 869, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL;
@@ -18690,23 +18690,23 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_new_frame);
__Pyx_GIVEREF(__pyx_v_new_frame);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_5, __pyx_v_new_frame);
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 870, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 869, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":871
+ /* "_pydevd_bundle/pydevd_cython.pyx":870
* if breakpoint.expression is not None:
* handle_breakpoint_expression(breakpoint, info, new_frame)
* if breakpoint.is_logpoint and info.pydev_message is not None and len(info.pydev_message) > 0: # <<<<<<<<<<<<<<
* cmd = main_debugger.cmd_factory.make_io_message(info.pydev_message + os.linesep, '1')
* main_debugger.writer.add_command(cmd)
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_is_logpoint); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 871, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_is_logpoint); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 870, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 871, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 870, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_17) {
} else {
@@ -18722,31 +18722,31 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_7 = __pyx_v_info->pydev_message;
__Pyx_INCREF(__pyx_t_7);
- __pyx_t_11 = PyObject_Length(__pyx_t_7); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(0, 871, __pyx_L82_error)
+ __pyx_t_11 = PyObject_Length(__pyx_t_7); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(0, 870, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_10 = ((__pyx_t_11 > 0) != 0);
__pyx_t_9 = __pyx_t_10;
__pyx_L116_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":872
+ /* "_pydevd_bundle/pydevd_cython.pyx":871
* handle_breakpoint_expression(breakpoint, info, new_frame)
* if breakpoint.is_logpoint and info.pydev_message is not None and len(info.pydev_message) > 0:
* cmd = main_debugger.cmd_factory.make_io_message(info.pydev_message + os.linesep, '1') # <<<<<<<<<<<<<<
* main_debugger.writer.add_command(cmd)
*
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_cmd_factory); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_cmd_factory); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_make_io_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_make_io_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_os); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_linesep); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_linesep); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = PyNumber_Add(__pyx_v_info->pydev_message, __pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_v_info->pydev_message, __pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -18764,7 +18764,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_2, __pyx_kp_s_1};
- __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -18773,14 +18773,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_2, __pyx_kp_s_1};
- __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else
#endif
{
- __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = NULL;
@@ -18791,7 +18791,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GIVEREF(__pyx_kp_s_1);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_kp_s_1);
__pyx_t_2 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 872, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 871, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
@@ -18799,16 +18799,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_cmd = __pyx_t_7;
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":873
+ /* "_pydevd_bundle/pydevd_cython.pyx":872
* if breakpoint.is_logpoint and info.pydev_message is not None and len(info.pydev_message) > 0:
* cmd = main_debugger.cmd_factory.make_io_message(info.pydev_message + os.linesep, '1')
* main_debugger.writer.add_command(cmd) # <<<<<<<<<<<<<<
*
* if breakpoint.has_condition and not eval_result:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_writer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 873, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_writer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 872, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_add_command); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 873, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_add_command); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 872, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -18823,12 +18823,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_7 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_1, __pyx_v_cmd) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_cmd);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 873, __pyx_L82_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 872, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":871
+ /* "_pydevd_bundle/pydevd_cython.pyx":870
* if breakpoint.expression is not None:
* handle_breakpoint_expression(breakpoint, info, new_frame)
* if breakpoint.is_logpoint and info.pydev_message is not None and len(info.pydev_message) > 0: # <<<<<<<<<<<<<<
@@ -18837,7 +18837,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":869
+ /* "_pydevd_bundle/pydevd_cython.pyx":868
* eval_result = handle_breakpoint_condition(main_debugger, info, breakpoint, new_frame)
*
* if breakpoint.expression is not None: # <<<<<<<<<<<<<<
@@ -18846,29 +18846,29 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":875
+ /* "_pydevd_bundle/pydevd_cython.pyx":874
* main_debugger.writer.add_command(cmd)
*
* if breakpoint.has_condition and not eval_result: # <<<<<<<<<<<<<<
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_has_condition); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 875, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_has_condition); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 874, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 875, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 874, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_10) {
} else {
__pyx_t_9 = __pyx_t_10;
goto __pyx_L120_bool_binop_done;
}
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_eval_result); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 875, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_eval_result); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 874, __pyx_L82_error)
__pyx_t_17 = ((!__pyx_t_10) != 0);
__pyx_t_9 = __pyx_t_17;
__pyx_L120_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":877
+ /* "_pydevd_bundle/pydevd_cython.pyx":876
* if breakpoint.has_condition and not eval_result:
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -18876,13 +18876,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if is_call and frame.f_code.co_name in ('<module>', '<lambda>'):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 877, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 876, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L86_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":875
+ /* "_pydevd_bundle/pydevd_cython.pyx":874
* main_debugger.writer.add_command(cmd)
*
* if breakpoint.has_condition and not eval_result: # <<<<<<<<<<<<<<
@@ -18891,7 +18891,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":864
+ /* "_pydevd_bundle/pydevd_cython.pyx":863
* # ok, hit breakpoint, now, we have to discover if it is a conditional breakpoint
* # lets do the conditional stuff here
* if stop or exist_result: # <<<<<<<<<<<<<<
@@ -18900,7 +18900,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":879
+ /* "_pydevd_bundle/pydevd_cython.pyx":878
* return self.trace_dispatch
*
* if is_call and frame.f_code.co_name in ('<module>', '<lambda>'): # <<<<<<<<<<<<<<
@@ -18913,18 +18913,18 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = __pyx_t_17;
goto __pyx_L123_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 879, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 878, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_co_name); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 879, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_co_name); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 878, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_6, __pyx_kp_s_module, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 879, __pyx_L82_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_6, __pyx_kp_s_module, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 878, __pyx_L82_error)
if (!__pyx_t_10) {
} else {
__pyx_t_17 = __pyx_t_10;
goto __pyx_L125_bool_binop_done;
}
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_6, __pyx_kp_s_lambda, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 879, __pyx_L82_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_6, __pyx_kp_s_lambda, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 878, __pyx_L82_error)
__pyx_t_17 = __pyx_t_10;
__pyx_L125_bool_binop_done:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
@@ -18933,7 +18933,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L123_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":889
+ /* "_pydevd_bundle/pydevd_cython.pyx":888
*
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -18941,13 +18941,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* else:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 889, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 888, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L86_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":879
+ /* "_pydevd_bundle/pydevd_cython.pyx":878
* return self.trace_dispatch
*
* if is_call and frame.f_code.co_name in ('<module>', '<lambda>'): # <<<<<<<<<<<<<<
@@ -18956,7 +18956,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":861
+ /* "_pydevd_bundle/pydevd_cython.pyx":860
* flag, breakpoint, new_frame, bp_type = result
*
* if breakpoint: # <<<<<<<<<<<<<<
@@ -18966,7 +18966,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L109;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":894
+ /* "_pydevd_bundle/pydevd_cython.pyx":893
* # if the frame is traced after breakpoint stop,
* # but the file should be ignored while stepping because of filters
* if step_cmd != -1: # <<<<<<<<<<<<<<
@@ -18977,23 +18977,23 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = ((__pyx_v_step_cmd != -1L) != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":895
+ /* "_pydevd_bundle/pydevd_cython.pyx":894
* # but the file should be ignored while stepping because of filters
* if step_cmd != -1:
* if main_debugger.is_filter_enabled and main_debugger.is_ignored_by_filters(filename): # <<<<<<<<<<<<<<
* # ignore files matching stepping filters
* # No need to reset frame.f_trace to keep the same trace function.
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_filter_enabled); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 895, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_filter_enabled); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 894, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 895, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 894, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_10) {
} else {
__pyx_t_9 = __pyx_t_10;
goto __pyx_L129_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_ignored_by_filters); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 895, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_ignored_by_filters); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 894, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
@@ -19007,16 +19007,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_6 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_1, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 895, __pyx_L82_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 894, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 895, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 894, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_9 = __pyx_t_10;
__pyx_L129_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":898
+ /* "_pydevd_bundle/pydevd_cython.pyx":897
* # ignore files matching stepping filters
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -19024,13 +19024,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* # ignore library files while stepping
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 898, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 897, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L86_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":895
+ /* "_pydevd_bundle/pydevd_cython.pyx":894
* # but the file should be ignored while stepping because of filters
* if step_cmd != -1:
* if main_debugger.is_filter_enabled and main_debugger.is_ignored_by_filters(filename): # <<<<<<<<<<<<<<
@@ -19039,23 +19039,23 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":899
+ /* "_pydevd_bundle/pydevd_cython.pyx":898
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
* if main_debugger.is_filter_libraries and not main_debugger.in_project_scope(filename): # <<<<<<<<<<<<<<
* # ignore library files while stepping
* # No need to reset frame.f_trace to keep the same trace function.
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_filter_libraries); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 899, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_is_filter_libraries); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 898, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 899, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 898, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_10) {
} else {
__pyx_t_9 = __pyx_t_10;
goto __pyx_L132_bool_binop_done;
}
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 899, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 898, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
@@ -19069,17 +19069,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_6 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_1, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 899, __pyx_L82_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 898, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 899, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 898, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_17 = ((!__pyx_t_10) != 0);
__pyx_t_9 = __pyx_t_17;
__pyx_L132_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":902
+ /* "_pydevd_bundle/pydevd_cython.pyx":901
* # ignore library files while stepping
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -19087,13 +19087,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if main_debugger.show_return_values or main_debugger.remove_return_values_flag:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 902, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 901, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L86_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":899
+ /* "_pydevd_bundle/pydevd_cython.pyx":898
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
* if main_debugger.is_filter_libraries and not main_debugger.in_project_scope(filename): # <<<<<<<<<<<<<<
@@ -19102,7 +19102,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":894
+ /* "_pydevd_bundle/pydevd_cython.pyx":893
* # if the frame is traced after breakpoint stop,
* # but the file should be ignored while stepping because of filters
* if step_cmd != -1: # <<<<<<<<<<<<<<
@@ -19113,38 +19113,38 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L109:;
- /* "_pydevd_bundle/pydevd_cython.pyx":904
+ /* "_pydevd_bundle/pydevd_cython.pyx":903
* return self.trace_dispatch
*
* if main_debugger.show_return_values or main_debugger.remove_return_values_flag: # <<<<<<<<<<<<<<
* self.manage_return_values(main_debugger, frame, event, arg)
*
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_show_return_values); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 904, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_show_return_values); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 903, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 904, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 903, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (!__pyx_t_17) {
} else {
__pyx_t_9 = __pyx_t_17;
goto __pyx_L135_bool_binop_done;
}
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 904, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_remove_return_values_flag); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 903, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 904, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 903, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_9 = __pyx_t_17;
__pyx_L135_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":905
+ /* "_pydevd_bundle/pydevd_cython.pyx":904
*
* if main_debugger.show_return_values or main_debugger.remove_return_values_flag:
* self.manage_return_values(main_debugger, frame, event, arg) # <<<<<<<<<<<<<<
*
* if stop:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_manage_return_values); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 905, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_manage_return_values); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 904, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = NULL;
__pyx_t_5 = 0;
@@ -19161,7 +19161,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 905, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 904, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else
@@ -19169,13 +19169,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 905, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 904, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else
#endif
{
- __pyx_t_2 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 905, __pyx_L82_error)
+ __pyx_t_2 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 904, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = NULL;
@@ -19192,14 +19192,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_2, 3+__pyx_t_5, __pyx_v_arg);
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 905, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 904, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":904
+ /* "_pydevd_bundle/pydevd_cython.pyx":903
* return self.trace_dispatch
*
* if main_debugger.show_return_values or main_debugger.remove_return_values_flag: # <<<<<<<<<<<<<<
@@ -19208,44 +19208,44 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":907
+ /* "_pydevd_bundle/pydevd_cython.pyx":906
* self.manage_return_values(main_debugger, frame, event, arg)
*
* if stop: # <<<<<<<<<<<<<<
* self.set_suspend(
* thread,
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 907, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 906, __pyx_L82_error)
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":908
+ /* "_pydevd_bundle/pydevd_cython.pyx":907
*
* if stop:
* self.set_suspend( # <<<<<<<<<<<<<<
* thread,
* CMD_SET_BREAK,
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 908, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 907, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
- /* "_pydevd_bundle/pydevd_cython.pyx":910
+ /* "_pydevd_bundle/pydevd_cython.pyx":909
* self.set_suspend(
* thread,
* CMD_SET_BREAK, # <<<<<<<<<<<<<<
* suspend_other_threads=breakpoint and breakpoint.suspend_policy == "ALL",
* )
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_CMD_SET_BREAK); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 910, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_CMD_SET_BREAK); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 909, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- /* "_pydevd_bundle/pydevd_cython.pyx":908
+ /* "_pydevd_bundle/pydevd_cython.pyx":907
*
* if stop:
* self.set_suspend( # <<<<<<<<<<<<<<
* thread,
* CMD_SET_BREAK,
*/
- __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 908, __pyx_L82_error)
+ __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 907, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_thread);
__Pyx_GIVEREF(__pyx_v_thread);
@@ -19254,48 +19254,48 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_7);
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":911
+ /* "_pydevd_bundle/pydevd_cython.pyx":910
* thread,
* CMD_SET_BREAK,
* suspend_other_threads=breakpoint and breakpoint.suspend_policy == "ALL", # <<<<<<<<<<<<<<
* )
*
*/
- __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 911, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 910, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoint); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 911, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoint); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 910, __pyx_L82_error)
if (__pyx_t_9) {
} else {
__Pyx_INCREF(__pyx_v_breakpoint);
__pyx_t_1 = __pyx_v_breakpoint;
goto __pyx_L138_bool_binop_done;
}
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_suspend_policy); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 911, __pyx_L82_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_breakpoint, __pyx_n_s_suspend_policy); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 910, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_4 = PyObject_RichCompare(__pyx_t_8, __pyx_n_s_ALL, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 911, __pyx_L82_error)
+ __pyx_t_4 = PyObject_RichCompare(__pyx_t_8, __pyx_n_s_ALL, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 910, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_INCREF(__pyx_t_4);
__pyx_t_1 = __pyx_t_4;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_L138_bool_binop_done:;
- if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_suspend_other_threads, __pyx_t_1) < 0) __PYX_ERR(0, 911, __pyx_L82_error)
+ if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_suspend_other_threads, __pyx_t_1) < 0) __PYX_ERR(0, 910, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":908
+ /* "_pydevd_bundle/pydevd_cython.pyx":907
*
* if stop:
* self.set_suspend( # <<<<<<<<<<<<<<
* thread,
* CMD_SET_BREAK,
*/
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 908, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 907, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":907
+ /* "_pydevd_bundle/pydevd_cython.pyx":906
* self.manage_return_values(main_debugger, frame, event, arg)
*
* if stop: # <<<<<<<<<<<<<<
@@ -19305,14 +19305,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L137;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":914
+ /* "_pydevd_bundle/pydevd_cython.pyx":913
* )
*
* elif flag and plugin_manager is not None: # <<<<<<<<<<<<<<
* result = plugin_manager.suspend(main_debugger, thread, frame, bp_type)
* if result:
*/
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 914, __pyx_L82_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 913, __pyx_L82_error)
if (__pyx_t_17) {
} else {
__pyx_t_9 = __pyx_t_17;
@@ -19324,14 +19324,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L140_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":915
+ /* "_pydevd_bundle/pydevd_cython.pyx":914
*
* elif flag and plugin_manager is not None:
* result = plugin_manager.suspend(main_debugger, thread, frame, bp_type) # <<<<<<<<<<<<<<
* if result:
* frame = result
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_suspend); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 915, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_suspend); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 914, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_2 = NULL;
__pyx_t_5 = 0;
@@ -19348,7 +19348,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_2, __pyx_v_main_debugger, __pyx_v_thread, __pyx_v_frame, __pyx_v_bp_type};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 915, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 914, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
@@ -19356,13 +19356,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_2, __pyx_v_main_debugger, __pyx_v_thread, __pyx_v_frame, __pyx_v_bp_type};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 915, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 914, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
#endif
{
- __pyx_t_6 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 915, __pyx_L82_error)
+ __pyx_t_6 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 914, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_2) {
__Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); __pyx_t_2 = NULL;
@@ -19379,7 +19379,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_bp_type);
__Pyx_GIVEREF(__pyx_v_bp_type);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_5, __pyx_v_bp_type);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 915, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 914, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
@@ -19387,17 +19387,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF_SET(__pyx_v_result, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":916
+ /* "_pydevd_bundle/pydevd_cython.pyx":915
* elif flag and plugin_manager is not None:
* result = plugin_manager.suspend(main_debugger, thread, frame, bp_type)
* if result: # <<<<<<<<<<<<<<
* frame = result
*
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 916, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 915, __pyx_L82_error)
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":917
+ /* "_pydevd_bundle/pydevd_cython.pyx":916
* result = plugin_manager.suspend(main_debugger, thread, frame, bp_type)
* if result:
* frame = result # <<<<<<<<<<<<<<
@@ -19407,7 +19407,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_result);
__Pyx_DECREF_SET(__pyx_v_frame, __pyx_v_result);
- /* "_pydevd_bundle/pydevd_cython.pyx":916
+ /* "_pydevd_bundle/pydevd_cython.pyx":915
* elif flag and plugin_manager is not None:
* result = plugin_manager.suspend(main_debugger, thread, frame, bp_type)
* if result: # <<<<<<<<<<<<<<
@@ -19416,7 +19416,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":914
+ /* "_pydevd_bundle/pydevd_cython.pyx":913
* )
*
* elif flag and plugin_manager is not None: # <<<<<<<<<<<<<<
@@ -19426,32 +19426,32 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L137:;
- /* "_pydevd_bundle/pydevd_cython.pyx":920
+ /* "_pydevd_bundle/pydevd_cython.pyx":919
*
* # if thread has a suspend flag, we suspend with a busy wait
* if info.pydev_state == STATE_SUSPEND: # <<<<<<<<<<<<<<
* self.do_wait_suspend(thread, frame, event, arg)
* # No need to reset frame.f_trace to keep the same trace function.
*/
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_info->pydev_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 920, __pyx_L82_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_info->pydev_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 919, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_STATE_SUSPEND); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 920, __pyx_L82_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_STATE_SUSPEND); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 919, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 920, __pyx_L82_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 919, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 920, __pyx_L82_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 919, __pyx_L82_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":921
+ /* "_pydevd_bundle/pydevd_cython.pyx":920
* # if thread has a suspend flag, we suspend with a busy wait
* if info.pydev_state == STATE_SUSPEND:
* self.do_wait_suspend(thread, frame, event, arg) # <<<<<<<<<<<<<<
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 921, __pyx_L82_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 920, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = NULL;
__pyx_t_5 = 0;
@@ -19468,7 +19468,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_thread, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 921, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 920, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else
@@ -19476,13 +19476,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_1, __pyx_v_thread, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 921, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 920, __pyx_L82_error)
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else
#endif
{
- __pyx_t_2 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 921, __pyx_L82_error)
+ __pyx_t_2 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 920, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_2);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = NULL;
@@ -19499,14 +19499,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_2, 3+__pyx_t_5, __pyx_v_arg);
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 921, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 920, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":923
+ /* "_pydevd_bundle/pydevd_cython.pyx":922
* self.do_wait_suspend(thread, frame, event, arg)
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -19514,13 +19514,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if not breakpoint and is_line:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 923, __pyx_L82_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 922, __pyx_L82_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L86_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":920
+ /* "_pydevd_bundle/pydevd_cython.pyx":919
*
* # if thread has a suspend flag, we suspend with a busy wait
* if info.pydev_state == STATE_SUSPEND: # <<<<<<<<<<<<<<
@@ -19529,7 +19529,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":925
+ /* "_pydevd_bundle/pydevd_cython.pyx":924
* return self.trace_dispatch
* else:
* if not breakpoint and is_line: # <<<<<<<<<<<<<<
@@ -19537,7 +19537,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* frame_skips_cache[line_cache_key] = 0
*/
/*else*/ {
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoint); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 925, __pyx_L82_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_breakpoint); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 924, __pyx_L82_error)
__pyx_t_17 = ((!__pyx_t_10) != 0);
if (__pyx_t_17) {
} else {
@@ -19549,7 +19549,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L145_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":927
+ /* "_pydevd_bundle/pydevd_cython.pyx":926
* if not breakpoint and is_line:
* # No stop from anyone and no breakpoint found in line (cache that).
* frame_skips_cache[line_cache_key] = 0 # <<<<<<<<<<<<<<
@@ -19558,11 +19558,11 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (unlikely(__pyx_v_frame_skips_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 927, __pyx_L82_error)
+ __PYX_ERR(0, 926, __pyx_L82_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_line_cache_key, __pyx_int_0) < 0)) __PYX_ERR(0, 927, __pyx_L82_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_frame_skips_cache, __pyx_v_line_cache_key, __pyx_int_0) < 0)) __PYX_ERR(0, 926, __pyx_L82_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":925
+ /* "_pydevd_bundle/pydevd_cython.pyx":924
* return self.trace_dispatch
* else:
* if not breakpoint and is_line: # <<<<<<<<<<<<<<
@@ -19572,7 +19572,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":829
+ /* "_pydevd_bundle/pydevd_cython.pyx":828
* # We may have hit a breakpoint or we are already in step mode. Either way, let's check what we should do in this frame
* # print('NOT skipped: %s %s %s %s' % (frame.f_lineno, frame.f_code.co_name, event, frame.__class__.__name__))
* try: # <<<<<<<<<<<<<<
@@ -19594,7 +19594,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":928
+ /* "_pydevd_bundle/pydevd_cython.pyx":927
* # No stop from anyone and no breakpoint found in line (cache that).
* frame_skips_cache[line_cache_key] = 0
* except KeyboardInterrupt: # <<<<<<<<<<<<<<
@@ -19604,19 +19604,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_5 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyboardInterrupt);
if (__pyx_t_5) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_2) < 0) __PYX_ERR(0, 928, __pyx_L84_except_error)
+ if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_2) < 0) __PYX_ERR(0, 927, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_2);
- /* "_pydevd_bundle/pydevd_cython.pyx":929
+ /* "_pydevd_bundle/pydevd_cython.pyx":928
* frame_skips_cache[line_cache_key] = 0
* except KeyboardInterrupt:
* self.clear_run_state(info) # <<<<<<<<<<<<<<
* raise
* except:
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_clear_run_state); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 929, __pyx_L84_except_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_clear_run_state); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 928, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_8 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
@@ -19630,12 +19630,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_1 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_8, ((PyObject *)__pyx_v_info)) : __Pyx_PyObject_CallOneArg(__pyx_t_4, ((PyObject *)__pyx_v_info));
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 929, __pyx_L84_except_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 928, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":930
+ /* "_pydevd_bundle/pydevd_cython.pyx":929
* except KeyboardInterrupt:
* self.clear_run_state(info)
* raise # <<<<<<<<<<<<<<
@@ -19647,10 +19647,10 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_ErrRestoreWithState(__pyx_t_6, __pyx_t_7, __pyx_t_2);
__pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_2 = 0;
- __PYX_ERR(0, 930, __pyx_L84_except_error)
+ __PYX_ERR(0, 929, __pyx_L84_except_error)
}
- /* "_pydevd_bundle/pydevd_cython.pyx":931
+ /* "_pydevd_bundle/pydevd_cython.pyx":930
* self.clear_run_state(info)
* raise
* except: # <<<<<<<<<<<<<<
@@ -19659,21 +19659,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_7, &__pyx_t_6) < 0) __PYX_ERR(0, 931, __pyx_L84_except_error)
+ if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_7, &__pyx_t_6) < 0) __PYX_ERR(0, 930, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_6);
- /* "_pydevd_bundle/pydevd_cython.pyx":932
+ /* "_pydevd_bundle/pydevd_cython.pyx":931
* raise
* except:
* traceback.print_exc() # <<<<<<<<<<<<<<
* raise
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_traceback); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 932, __pyx_L84_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_traceback); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 931, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 932, __pyx_L84_except_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 931, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
@@ -19688,12 +19688,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_4) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 932, __pyx_L84_except_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 931, __pyx_L84_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":933
+ /* "_pydevd_bundle/pydevd_cython.pyx":932
* except:
* traceback.print_exc()
* raise # <<<<<<<<<<<<<<
@@ -19705,11 +19705,11 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_7, __pyx_t_6);
__pyx_t_2 = 0; __pyx_t_7 = 0; __pyx_t_6 = 0;
- __PYX_ERR(0, 933, __pyx_L84_except_error)
+ __PYX_ERR(0, 932, __pyx_L84_except_error)
}
__pyx_L84_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":829
+ /* "_pydevd_bundle/pydevd_cython.pyx":828
* # We may have hit a breakpoint or we are already in step mode. Either way, let's check what we should do in this frame
* # print('NOT skipped: %s %s %s %s' % (frame.f_lineno, frame.f_code.co_name, event, frame.__class__.__name__))
* try: # <<<<<<<<<<<<<<
@@ -19730,7 +19730,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L87_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":936
+ /* "_pydevd_bundle/pydevd_cython.pyx":935
*
* # step handling. We stop when we hit the right frame
* try: # <<<<<<<<<<<<<<
@@ -19746,7 +19746,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGOTREF(__pyx_t_15);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":937
+ /* "_pydevd_bundle/pydevd_cython.pyx":936
* # step handling. We stop when we hit the right frame
* try:
* should_skip = 0 # <<<<<<<<<<<<<<
@@ -19755,16 +19755,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_should_skip = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":939
+ /* "_pydevd_bundle/pydevd_cython.pyx":938
* should_skip = 0
*
* if pydevd_dont_trace.should_trace_hook is not None: # <<<<<<<<<<<<<<
* if self.should_skip == -1:
* # I.e.: cache the result on self.should_skip (no need to evaluate the same frame multiple times).
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 939, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 938, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 939, __pyx_L151_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 938, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_9 = (__pyx_t_7 != Py_None);
@@ -19772,7 +19772,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_t_9 != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":940
+ /* "_pydevd_bundle/pydevd_cython.pyx":939
*
* if pydevd_dont_trace.should_trace_hook is not None:
* if self.should_skip == -1: # <<<<<<<<<<<<<<
@@ -19782,16 +19782,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = ((__pyx_v_self->should_skip == -1L) != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":944
+ /* "_pydevd_bundle/pydevd_cython.pyx":943
* # Note that on a code reload, we won't re-evaluate this because in practice, the frame.f_code
* # Which will be handled by this frame is read-only, so, we can cache it safely.
* if not pydevd_dont_trace.should_trace_hook(frame, filename): # <<<<<<<<<<<<<<
* # -1, 0, 1 to be Cython-friendly
* should_skip = self.should_skip = 1
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -19809,7 +19809,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_frame, __pyx_v_filename};
- __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
@@ -19817,13 +19817,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_frame, __pyx_v_filename};
- __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else
#endif
{
- __pyx_t_1 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __pyx_t_1 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -19834,17 +19834,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_filename);
__Pyx_GIVEREF(__pyx_v_filename);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_5, __pyx_v_filename);
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 944, __pyx_L151_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 943, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_9 = ((!__pyx_t_17) != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":946
+ /* "_pydevd_bundle/pydevd_cython.pyx":945
* if not pydevd_dont_trace.should_trace_hook(frame, filename):
* # -1, 0, 1 to be Cython-friendly
* should_skip = self.should_skip = 1 # <<<<<<<<<<<<<<
@@ -19854,7 +19854,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_should_skip = 1;
__pyx_v_self->should_skip = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":944
+ /* "_pydevd_bundle/pydevd_cython.pyx":943
* # Note that on a code reload, we won't re-evaluate this because in practice, the frame.f_code
* # Which will be handled by this frame is read-only, so, we can cache it safely.
* if not pydevd_dont_trace.should_trace_hook(frame, filename): # <<<<<<<<<<<<<<
@@ -19864,7 +19864,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L159;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":948
+ /* "_pydevd_bundle/pydevd_cython.pyx":947
* should_skip = self.should_skip = 1
* else:
* should_skip = self.should_skip = 0 # <<<<<<<<<<<<<<
@@ -19877,7 +19877,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L159:;
- /* "_pydevd_bundle/pydevd_cython.pyx":940
+ /* "_pydevd_bundle/pydevd_cython.pyx":939
*
* if pydevd_dont_trace.should_trace_hook is not None:
* if self.should_skip == -1: # <<<<<<<<<<<<<<
@@ -19887,7 +19887,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L158;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":950
+ /* "_pydevd_bundle/pydevd_cython.pyx":949
* should_skip = self.should_skip = 0
* else:
* should_skip = self.should_skip # <<<<<<<<<<<<<<
@@ -19900,7 +19900,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L158:;
- /* "_pydevd_bundle/pydevd_cython.pyx":939
+ /* "_pydevd_bundle/pydevd_cython.pyx":938
* should_skip = 0
*
* if pydevd_dont_trace.should_trace_hook is not None: # <<<<<<<<<<<<<<
@@ -19909,7 +19909,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":952
+ /* "_pydevd_bundle/pydevd_cython.pyx":951
* should_skip = self.should_skip
*
* plugin_stop = False # <<<<<<<<<<<<<<
@@ -19919,7 +19919,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__pyx_v_plugin_stop = Py_False;
- /* "_pydevd_bundle/pydevd_cython.pyx":953
+ /* "_pydevd_bundle/pydevd_cython.pyx":952
*
* plugin_stop = False
* if should_skip: # <<<<<<<<<<<<<<
@@ -19929,7 +19929,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_should_skip != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":954
+ /* "_pydevd_bundle/pydevd_cython.pyx":953
* plugin_stop = False
* if should_skip:
* stop = False # <<<<<<<<<<<<<<
@@ -19939,7 +19939,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__Pyx_DECREF_SET(__pyx_v_stop, Py_False);
- /* "_pydevd_bundle/pydevd_cython.pyx":953
+ /* "_pydevd_bundle/pydevd_cython.pyx":952
*
* plugin_stop = False
* if should_skip: # <<<<<<<<<<<<<<
@@ -19949,25 +19949,25 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L160;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":956
+ /* "_pydevd_bundle/pydevd_cython.pyx":955
* stop = False
*
* elif step_cmd == CMD_SMART_STEP_INTO: # <<<<<<<<<<<<<<
* stop = False
* if smart_stop_frame is frame:
*/
- __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 956, __pyx_L151_error)
+ __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 955, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_7);
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_SMART_STEP_INTO); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 956, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_SMART_STEP_INTO); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 955, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PyObject_RichCompare(__pyx_t_7, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 956, __pyx_L151_error)
+ __pyx_t_1 = PyObject_RichCompare(__pyx_t_7, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 955, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 956, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 955, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":957
+ /* "_pydevd_bundle/pydevd_cython.pyx":956
*
* elif step_cmd == CMD_SMART_STEP_INTO:
* stop = False # <<<<<<<<<<<<<<
@@ -19977,7 +19977,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__Pyx_DECREF_SET(__pyx_v_stop, Py_False);
- /* "_pydevd_bundle/pydevd_cython.pyx":958
+ /* "_pydevd_bundle/pydevd_cython.pyx":957
* elif step_cmd == CMD_SMART_STEP_INTO:
* stop = False
* if smart_stop_frame is frame: # <<<<<<<<<<<<<<
@@ -19988,30 +19988,30 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_17 = (__pyx_t_9 != 0);
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":959
+ /* "_pydevd_bundle/pydevd_cython.pyx":958
* stop = False
* if smart_stop_frame is frame:
* if not is_within_context or not IS_CPYTHON: # <<<<<<<<<<<<<<
* # We don't stop on jumps in multiline statements, which the Python interpreter does in some cases,
* # if we they happen in smart step into context.
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_is_within_context); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 959, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_is_within_context); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 958, __pyx_L151_error)
__pyx_t_10 = ((!__pyx_t_9) != 0);
if (!__pyx_t_10) {
} else {
__pyx_t_17 = __pyx_t_10;
goto __pyx_L163_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_IS_CPYTHON); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 959, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_IS_CPYTHON); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 958, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 959, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 958, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_9 = ((!__pyx_t_10) != 0);
__pyx_t_17 = __pyx_t_9;
__pyx_L163_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":962
+ /* "_pydevd_bundle/pydevd_cython.pyx":961
* # We don't stop on jumps in multiline statements, which the Python interpreter does in some cases,
* # if we they happen in smart step into context.
* info.pydev_func_name = '.invalid.' # Must match the type in cython # <<<<<<<<<<<<<<
@@ -20024,7 +20024,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_v_info->pydev_func_name);
__pyx_v_info->pydev_func_name = __pyx_kp_s_invalid;
- /* "_pydevd_bundle/pydevd_cython.pyx":963
+ /* "_pydevd_bundle/pydevd_cython.pyx":962
* # if we they happen in smart step into context.
* info.pydev_func_name = '.invalid.' # Must match the type in cython
* stop = True # act as if we did a step into # <<<<<<<<<<<<<<
@@ -20034,7 +20034,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_True);
__Pyx_DECREF_SET(__pyx_v_stop, Py_True);
- /* "_pydevd_bundle/pydevd_cython.pyx":959
+ /* "_pydevd_bundle/pydevd_cython.pyx":958
* stop = False
* if smart_stop_frame is frame:
* if not is_within_context or not IS_CPYTHON: # <<<<<<<<<<<<<<
@@ -20043,7 +20043,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":958
+ /* "_pydevd_bundle/pydevd_cython.pyx":957
* elif step_cmd == CMD_SMART_STEP_INTO:
* stop = False
* if smart_stop_frame is frame: # <<<<<<<<<<<<<<
@@ -20052,7 +20052,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":965
+ /* "_pydevd_bundle/pydevd_cython.pyx":964
* stop = True # act as if we did a step into
*
* if is_line or is_exception_event: # <<<<<<<<<<<<<<
@@ -20070,23 +20070,23 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L166_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":966
+ /* "_pydevd_bundle/pydevd_cython.pyx":965
*
* if is_line or is_exception_event:
* curr_func_name = frame.f_code.co_name # <<<<<<<<<<<<<<
*
* # global context is set with an empty name
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 966, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 965, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 966, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 965, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_2)->tp_name), 0))) __PYX_ERR(0, 966, __pyx_L151_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_2)->tp_name), 0))) __PYX_ERR(0, 965, __pyx_L151_error)
__Pyx_XDECREF_SET(__pyx_v_curr_func_name, ((PyObject*)__pyx_t_2));
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":969
+ /* "_pydevd_bundle/pydevd_cython.pyx":968
*
* # global context is set with an empty name
* if curr_func_name in ('?', '<module>') or curr_func_name is None: # <<<<<<<<<<<<<<
@@ -20095,14 +20095,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__Pyx_INCREF(__pyx_v_curr_func_name);
__pyx_t_18 = __pyx_v_curr_func_name;
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s__5, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 969, __pyx_L151_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s__5, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 968, __pyx_L151_error)
__pyx_t_19 = (__pyx_t_10 != 0);
if (!__pyx_t_19) {
} else {
__pyx_t_9 = __pyx_t_19;
goto __pyx_L171_bool_binop_done;
}
- __pyx_t_19 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s_module, Py_EQ)); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 969, __pyx_L151_error)
+ __pyx_t_19 = (__Pyx_PyString_Equals(__pyx_t_18, __pyx_kp_s_module, Py_EQ)); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 968, __pyx_L151_error)
__pyx_t_10 = (__pyx_t_19 != 0);
__pyx_t_9 = __pyx_t_10;
__pyx_L171_bool_binop_done:;
@@ -20119,7 +20119,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L169_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":970
+ /* "_pydevd_bundle/pydevd_cython.pyx":969
* # global context is set with an empty name
* if curr_func_name in ('?', '<module>') or curr_func_name is None:
* curr_func_name = '' # <<<<<<<<<<<<<<
@@ -20129,7 +20129,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_kp_s_);
__Pyx_DECREF_SET(__pyx_v_curr_func_name, __pyx_kp_s_);
- /* "_pydevd_bundle/pydevd_cython.pyx":969
+ /* "_pydevd_bundle/pydevd_cython.pyx":968
*
* # global context is set with an empty name
* if curr_func_name in ('?', '<module>') or curr_func_name is None: # <<<<<<<<<<<<<<
@@ -20138,20 +20138,20 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":972
+ /* "_pydevd_bundle/pydevd_cython.pyx":971
* curr_func_name = ''
*
* if smart_stop_frame and smart_stop_frame is frame.f_back: # <<<<<<<<<<<<<<
* if curr_func_name == info.pydev_func_name and not IS_CPYTHON:
* # for implementations other than CPython we don't perform any additional checks
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_smart_stop_frame); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 972, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_smart_stop_frame); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 971, __pyx_L151_error)
if (__pyx_t_9) {
} else {
__pyx_t_17 = __pyx_t_9;
goto __pyx_L174_bool_binop_done;
}
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 972, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 971, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_9 = (__pyx_v_smart_stop_frame == __pyx_t_2);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -20160,30 +20160,30 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L174_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":973
+ /* "_pydevd_bundle/pydevd_cython.pyx":972
*
* if smart_stop_frame and smart_stop_frame is frame.f_back:
* if curr_func_name == info.pydev_func_name and not IS_CPYTHON: # <<<<<<<<<<<<<<
* # for implementations other than CPython we don't perform any additional checks
* stop = True
*/
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_curr_func_name, __pyx_v_info->pydev_func_name, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 973, __pyx_L151_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_curr_func_name, __pyx_v_info->pydev_func_name, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 972, __pyx_L151_error)
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
} else {
__pyx_t_17 = __pyx_t_9;
goto __pyx_L177_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_IS_CPYTHON); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 973, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_IS_CPYTHON); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 972, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 973, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 972, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_10 = ((!__pyx_t_9) != 0);
__pyx_t_17 = __pyx_t_10;
__pyx_L177_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":975
+ /* "_pydevd_bundle/pydevd_cython.pyx":974
* if curr_func_name == info.pydev_func_name and not IS_CPYTHON:
* # for implementations other than CPython we don't perform any additional checks
* stop = True # <<<<<<<<<<<<<<
@@ -20193,7 +20193,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_True);
__Pyx_DECREF_SET(__pyx_v_stop, Py_True);
- /* "_pydevd_bundle/pydevd_cython.pyx":973
+ /* "_pydevd_bundle/pydevd_cython.pyx":972
*
* if smart_stop_frame and smart_stop_frame is frame.f_back:
* if curr_func_name == info.pydev_func_name and not IS_CPYTHON: # <<<<<<<<<<<<<<
@@ -20203,7 +20203,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L176;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":977
+ /* "_pydevd_bundle/pydevd_cython.pyx":976
* stop = True
* else:
* try: # <<<<<<<<<<<<<<
@@ -20220,38 +20220,38 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGOTREF(__pyx_t_22);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":978
+ /* "_pydevd_bundle/pydevd_cython.pyx":977
* else:
* try:
* if curr_func_name != info.pydev_func_name and frame.f_back: # <<<<<<<<<<<<<<
* # try to find function call name using bytecode analysis
* curr_func_name = find_last_call_name(frame.f_back)
*/
- __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_curr_func_name, __pyx_v_info->pydev_func_name, Py_NE)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 978, __pyx_L179_error)
+ __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_curr_func_name, __pyx_v_info->pydev_func_name, Py_NE)); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 977, __pyx_L179_error)
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
} else {
__pyx_t_17 = __pyx_t_9;
goto __pyx_L186_bool_binop_done;
}
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 978, __pyx_L179_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 977, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 978, __pyx_L179_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 977, __pyx_L179_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_17 = __pyx_t_9;
__pyx_L186_bool_binop_done:;
if (__pyx_t_17) {
- /* "_pydevd_bundle/pydevd_cython.pyx":980
+ /* "_pydevd_bundle/pydevd_cython.pyx":979
* if curr_func_name != info.pydev_func_name and frame.f_back:
* # try to find function call name using bytecode analysis
* curr_func_name = find_last_call_name(frame.f_back) # <<<<<<<<<<<<<<
* if curr_func_name == info.pydev_func_name:
* stop = find_last_func_call_order(frame.f_back, context_start_line) \
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_find_last_call_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 980, __pyx_L179_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_find_last_call_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 979, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 980, __pyx_L179_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 979, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -20266,14 +20266,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_6, __pyx_t_7) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_7);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 980, __pyx_L179_error)
+ if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 979, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_2)->tp_name), 0))) __PYX_ERR(0, 980, __pyx_L179_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_2)->tp_name), 0))) __PYX_ERR(0, 979, __pyx_L179_error)
__Pyx_DECREF_SET(__pyx_v_curr_func_name, ((PyObject*)__pyx_t_2));
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":978
+ /* "_pydevd_bundle/pydevd_cython.pyx":977
* else:
* try:
* if curr_func_name != info.pydev_func_name and frame.f_back: # <<<<<<<<<<<<<<
@@ -20282,29 +20282,29 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":981
+ /* "_pydevd_bundle/pydevd_cython.pyx":980
* # try to find function call name using bytecode analysis
* curr_func_name = find_last_call_name(frame.f_back)
* if curr_func_name == info.pydev_func_name: # <<<<<<<<<<<<<<
* stop = find_last_func_call_order(frame.f_back, context_start_line) \
* == info.pydev_smart_step_context.call_order
*/
- __pyx_t_17 = (__Pyx_PyString_Equals(__pyx_v_curr_func_name, __pyx_v_info->pydev_func_name, Py_EQ)); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 981, __pyx_L179_error)
+ __pyx_t_17 = (__Pyx_PyString_Equals(__pyx_v_curr_func_name, __pyx_v_info->pydev_func_name, Py_EQ)); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 980, __pyx_L179_error)
__pyx_t_9 = (__pyx_t_17 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":982
+ /* "_pydevd_bundle/pydevd_cython.pyx":981
* curr_func_name = find_last_call_name(frame.f_back)
* if curr_func_name == info.pydev_func_name:
* stop = find_last_func_call_order(frame.f_back, context_start_line) \ # <<<<<<<<<<<<<<
* == info.pydev_smart_step_context.call_order
* except:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_find_last_func_call_order); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_find_last_func_call_order); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_context_start_line); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_context_start_line); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_8 = NULL;
__pyx_t_5 = 0;
@@ -20321,7 +20321,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_7, __pyx_t_6};
- __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
@@ -20331,7 +20331,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_7, __pyx_t_6};
- __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
@@ -20339,7 +20339,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
} else
#endif
{
- __pyx_t_4 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __pyx_t_4 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_8); __pyx_t_8 = NULL;
@@ -20350,28 +20350,28 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_5, __pyx_t_6);
__pyx_t_7 = 0;
__pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 982, __pyx_L179_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 981, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":983
+ /* "_pydevd_bundle/pydevd_cython.pyx":982
* if curr_func_name == info.pydev_func_name:
* stop = find_last_func_call_order(frame.f_back, context_start_line) \
* == info.pydev_smart_step_context.call_order # <<<<<<<<<<<<<<
* except:
* pydev_log.debug("Exception while handling smart step into in frame tracer, step into will be performed instead.")
*/
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_info->pydev_smart_step_context->call_order); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 983, __pyx_L179_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_info->pydev_smart_step_context->call_order); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 982, __pyx_L179_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 983, __pyx_L179_error)
+ __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 982, __pyx_L179_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":981
+ /* "_pydevd_bundle/pydevd_cython.pyx":980
* # try to find function call name using bytecode analysis
* curr_func_name = find_last_call_name(frame.f_back)
* if curr_func_name == info.pydev_func_name: # <<<<<<<<<<<<<<
@@ -20380,7 +20380,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":977
+ /* "_pydevd_bundle/pydevd_cython.pyx":976
* stop = True
* else:
* try: # <<<<<<<<<<<<<<
@@ -20402,7 +20402,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":984
+ /* "_pydevd_bundle/pydevd_cython.pyx":983
* stop = find_last_func_call_order(frame.f_back, context_start_line) \
* == info.pydev_smart_step_context.call_order
* except: # <<<<<<<<<<<<<<
@@ -20411,21 +20411,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 984, __pyx_L181_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 983, __pyx_L181_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_2);
- /* "_pydevd_bundle/pydevd_cython.pyx":985
+ /* "_pydevd_bundle/pydevd_cython.pyx":984
* == info.pydev_smart_step_context.call_order
* except:
* pydev_log.debug("Exception while handling smart step into in frame tracer, step into will be performed instead.") # <<<<<<<<<<<<<<
* info.pydev_smart_step_context.reset()
* stop = True # act as if we did a step into
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pydev_log); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 985, __pyx_L181_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pydev_log); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 984, __pyx_L181_except_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_debug); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 985, __pyx_L181_except_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_debug); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 984, __pyx_L181_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
@@ -20440,19 +20440,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_6 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_7, __pyx_kp_s_Exception_while_handling_smart_s) : __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_kp_s_Exception_while_handling_smart_s);
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 985, __pyx_L181_except_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 984, __pyx_L181_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":986
+ /* "_pydevd_bundle/pydevd_cython.pyx":985
* except:
* pydev_log.debug("Exception while handling smart step into in frame tracer, step into will be performed instead.")
* info.pydev_smart_step_context.reset() # <<<<<<<<<<<<<<
* stop = True # act as if we did a step into
*
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_info->pydev_smart_step_context), __pyx_n_s_reset); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 986, __pyx_L181_except_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_info->pydev_smart_step_context), __pyx_n_s_reset); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 985, __pyx_L181_except_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_7 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
@@ -20466,12 +20466,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_6 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 986, __pyx_L181_except_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 985, __pyx_L181_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":987
+ /* "_pydevd_bundle/pydevd_cython.pyx":986
* pydev_log.debug("Exception while handling smart step into in frame tracer, step into will be performed instead.")
* info.pydev_smart_step_context.reset()
* stop = True # act as if we did a step into # <<<<<<<<<<<<<<
@@ -20487,7 +20487,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L181_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":977
+ /* "_pydevd_bundle/pydevd_cython.pyx":976
* stop = True
* else:
* try: # <<<<<<<<<<<<<<
@@ -20509,7 +20509,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L176:;
- /* "_pydevd_bundle/pydevd_cython.pyx":972
+ /* "_pydevd_bundle/pydevd_cython.pyx":971
* curr_func_name = ''
*
* if smart_stop_frame and smart_stop_frame is frame.f_back: # <<<<<<<<<<<<<<
@@ -20518,7 +20518,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":965
+ /* "_pydevd_bundle/pydevd_cython.pyx":964
* stop = True # act as if we did a step into
*
* if is_line or is_exception_event: # <<<<<<<<<<<<<<
@@ -20527,7 +20527,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":991
+ /* "_pydevd_bundle/pydevd_cython.pyx":990
* # we have to check this case for situations when a user has tried to step into a native function or method,
* # e.g. `len()`, `list.append()`, etc and this was the only call in a return statement
* if smart_stop_frame is frame and is_return: # <<<<<<<<<<<<<<
@@ -20546,7 +20546,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L192_bool_binop_done:;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":992
+ /* "_pydevd_bundle/pydevd_cython.pyx":991
* # e.g. `len()`, `list.append()`, etc and this was the only call in a return statement
* if smart_stop_frame is frame and is_return:
* stop = True # <<<<<<<<<<<<<<
@@ -20556,7 +20556,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_True);
__Pyx_DECREF_SET(__pyx_v_stop, Py_True);
- /* "_pydevd_bundle/pydevd_cython.pyx":991
+ /* "_pydevd_bundle/pydevd_cython.pyx":990
* # we have to check this case for situations when a user has tried to step into a native function or method,
* # e.g. `len()`, `list.append()`, etc and this was the only call in a return statement
* if smart_stop_frame is frame and is_return: # <<<<<<<<<<<<<<
@@ -20565,7 +20565,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":956
+ /* "_pydevd_bundle/pydevd_cython.pyx":955
* stop = False
*
* elif step_cmd == CMD_SMART_STEP_INTO: # <<<<<<<<<<<<<<
@@ -20575,25 +20575,25 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L160;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":994
+ /* "_pydevd_bundle/pydevd_cython.pyx":993
* stop = True
*
* elif step_cmd == CMD_STEP_INTO: # <<<<<<<<<<<<<<
* stop = is_line or is_return
* if plugin_manager is not None:
*/
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 994, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 993, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 994, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 993, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 994, __pyx_L151_error)
+ __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 993, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 994, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 993, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":995
+ /* "_pydevd_bundle/pydevd_cython.pyx":994
*
* elif step_cmd == CMD_STEP_INTO:
* stop = is_line or is_return # <<<<<<<<<<<<<<
@@ -20602,13 +20602,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (!__pyx_v_is_line) {
} else {
- __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_is_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 995, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_is_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 994, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L194_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_is_return); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 995, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_is_return); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 994, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = __pyx_t_1;
__pyx_t_1 = 0;
@@ -20616,7 +20616,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":996
+ /* "_pydevd_bundle/pydevd_cython.pyx":995
* elif step_cmd == CMD_STEP_INTO:
* stop = is_line or is_return
* if plugin_manager is not None: # <<<<<<<<<<<<<<
@@ -20627,14 +20627,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":997
+ /* "_pydevd_bundle/pydevd_cython.pyx":996
* stop = is_line or is_return
* if plugin_manager is not None:
* result = plugin_manager.cmd_step_into(main_debugger, frame, event, self._args, stop_info, stop) # <<<<<<<<<<<<<<
* if result:
* stop, plugin_stop = result
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_cmd_step_into); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 997, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_cmd_step_into); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 996, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = NULL;
__pyx_t_5 = 0;
@@ -20651,7 +20651,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[7] = {__pyx_t_2, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args, __pyx_v_stop_info, __pyx_v_stop};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 997, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 996, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
@@ -20659,13 +20659,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[7] = {__pyx_t_2, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args, __pyx_v_stop_info, __pyx_v_stop};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 997, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 996, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
#endif
{
- __pyx_t_6 = PyTuple_New(6+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 997, __pyx_L151_error)
+ __pyx_t_6 = PyTuple_New(6+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 996, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_2) {
__Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); __pyx_t_2 = NULL;
@@ -20688,7 +20688,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_stop);
__Pyx_GIVEREF(__pyx_v_stop);
PyTuple_SET_ITEM(__pyx_t_6, 5+__pyx_t_5, __pyx_v_stop);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 997, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 996, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
@@ -20696,17 +20696,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF_SET(__pyx_v_result, __pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":998
+ /* "_pydevd_bundle/pydevd_cython.pyx":997
* if plugin_manager is not None:
* result = plugin_manager.cmd_step_into(main_debugger, frame, event, self._args, stop_info, stop)
* if result: # <<<<<<<<<<<<<<
* stop, plugin_stop = result
*
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 998, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 997, __pyx_L151_error)
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":999
+ /* "_pydevd_bundle/pydevd_cython.pyx":998
* result = plugin_manager.cmd_step_into(main_debugger, frame, event, self._args, stop_info, stop)
* if result:
* stop, plugin_stop = result # <<<<<<<<<<<<<<
@@ -20719,7 +20719,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 999, __pyx_L151_error)
+ __PYX_ERR(0, 998, __pyx_L151_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -20732,21 +20732,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_1);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 999, __pyx_L151_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 998, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 999, __pyx_L151_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 998, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 999, __pyx_L151_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 998, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_16 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_16(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L198_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_1 = __pyx_t_16(__pyx_t_6); if (unlikely(!__pyx_t_1)) goto __pyx_L198_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_6), 2) < 0) __PYX_ERR(0, 999, __pyx_L151_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_6), 2) < 0) __PYX_ERR(0, 998, __pyx_L151_error)
__pyx_t_16 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L199_unpacking_done;
@@ -20754,7 +20754,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_16 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 999, __pyx_L151_error)
+ __PYX_ERR(0, 998, __pyx_L151_error)
__pyx_L199_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_4);
@@ -20762,7 +20762,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_plugin_stop, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":998
+ /* "_pydevd_bundle/pydevd_cython.pyx":997
* if plugin_manager is not None:
* result = plugin_manager.cmd_step_into(main_debugger, frame, event, self._args, stop_info, stop)
* if result: # <<<<<<<<<<<<<<
@@ -20771,7 +20771,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":996
+ /* "_pydevd_bundle/pydevd_cython.pyx":995
* elif step_cmd == CMD_STEP_INTO:
* stop = is_line or is_return
* if plugin_manager is not None: # <<<<<<<<<<<<<<
@@ -20780,7 +20780,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":994
+ /* "_pydevd_bundle/pydevd_cython.pyx":993
* stop = True
*
* elif step_cmd == CMD_STEP_INTO: # <<<<<<<<<<<<<<
@@ -20790,36 +20790,36 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L160;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1001
+ /* "_pydevd_bundle/pydevd_cython.pyx":1000
* stop, plugin_stop = result
*
* elif step_cmd == CMD_STEP_INTO_MY_CODE: # <<<<<<<<<<<<<<
* if main_debugger.in_project_scope(frame.f_code.co_filename):
* stop = is_line
*/
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1001, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1000, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_MY_CODE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1001, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_MY_CODE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1000, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1001, __pyx_L151_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1000, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1001, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1000, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1002
+ /* "_pydevd_bundle/pydevd_cython.pyx":1001
*
* elif step_cmd == CMD_STEP_INTO_MY_CODE:
* if main_debugger.in_project_scope(frame.f_code.co_filename): # <<<<<<<<<<<<<<
* stop = is_line
*
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1002, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1001, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1002, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1001, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1002, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1001, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -20835,26 +20835,26 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_6 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_1, __pyx_t_2) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_2);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1002, __pyx_L151_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1001, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1002, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1001, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1003
+ /* "_pydevd_bundle/pydevd_cython.pyx":1002
* elif step_cmd == CMD_STEP_INTO_MY_CODE:
* if main_debugger.in_project_scope(frame.f_code.co_filename):
* stop = is_line # <<<<<<<<<<<<<<
*
* elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE):
*/
- __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_v_is_line); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1003, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_v_is_line); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1002, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_6);
__pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1002
+ /* "_pydevd_bundle/pydevd_cython.pyx":1001
*
* elif step_cmd == CMD_STEP_INTO_MY_CODE:
* if main_debugger.in_project_scope(frame.f_code.co_filename): # <<<<<<<<<<<<<<
@@ -20863,7 +20863,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1001
+ /* "_pydevd_bundle/pydevd_cython.pyx":1000
* stop, plugin_stop = result
*
* elif step_cmd == CMD_STEP_INTO_MY_CODE: # <<<<<<<<<<<<<<
@@ -20873,7 +20873,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L160;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1005
+ /* "_pydevd_bundle/pydevd_cython.pyx":1004
* stop = is_line
*
* elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE): # <<<<<<<<<<<<<<
@@ -20881,35 +20881,35 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if stop:
*/
__pyx_t_5 = __pyx_v_step_cmd;
- __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L201_bool_binop_done;
}
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1005, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1004, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_10 = __pyx_t_9;
__pyx_L201_bool_binop_done:;
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1006
+ /* "_pydevd_bundle/pydevd_cython.pyx":1005
*
* elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE):
* stop = stop_frame is frame # <<<<<<<<<<<<<<
@@ -20917,22 +20917,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if is_line:
*/
__pyx_t_9 = (__pyx_v_stop_frame == __pyx_v_frame);
- __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1006, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1005, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_6);
__pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1007
+ /* "_pydevd_bundle/pydevd_cython.pyx":1006
* elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE):
* stop = stop_frame is frame
* if stop: # <<<<<<<<<<<<<<
* if is_line:
* # the only case we shouldn't stop on a line, is when we traversing though asynchronous framework machinery
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1007, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1006, __pyx_L151_error)
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1008
+ /* "_pydevd_bundle/pydevd_cython.pyx":1007
* stop = stop_frame is frame
* if stop:
* if is_line: # <<<<<<<<<<<<<<
@@ -20942,36 +20942,36 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_is_line != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1010
+ /* "_pydevd_bundle/pydevd_cython.pyx":1009
* if is_line:
* # the only case we shouldn't stop on a line, is when we traversing though asynchronous framework machinery
* if step_cmd == CMD_STEP_INTO_COROUTINE: # <<<<<<<<<<<<<<
* stop = main_debugger.in_project_scope(frame.f_code.co_filename)
* elif is_return:
*/
- __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1010, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1009, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1010, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1009, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1010, __pyx_L151_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1009, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1010, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1009, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1011
+ /* "_pydevd_bundle/pydevd_cython.pyx":1010
* # the only case we shouldn't stop on a line, is when we traversing though asynchronous framework machinery
* if step_cmd == CMD_STEP_INTO_COROUTINE:
* stop = main_debugger.in_project_scope(frame.f_code.co_filename) # <<<<<<<<<<<<<<
* elif is_return:
* stop = frame.f_back and main_debugger.in_project_scope(frame.f_back.f_code.co_filename)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1011, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1010, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1011, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1010, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1011, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1010, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -20987,13 +20987,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_6, __pyx_t_1) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_1);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1011, __pyx_L151_error)
+ if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1010, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_2);
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1010
+ /* "_pydevd_bundle/pydevd_cython.pyx":1009
* if is_line:
* # the only case we shouldn't stop on a line, is when we traversing though asynchronous framework machinery
* if step_cmd == CMD_STEP_INTO_COROUTINE: # <<<<<<<<<<<<<<
@@ -21002,7 +21002,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1008
+ /* "_pydevd_bundle/pydevd_cython.pyx":1007
* stop = stop_frame is frame
* if stop:
* if is_line: # <<<<<<<<<<<<<<
@@ -21012,7 +21012,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L204;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1012
+ /* "_pydevd_bundle/pydevd_cython.pyx":1011
* if step_cmd == CMD_STEP_INTO_COROUTINE:
* stop = main_debugger.in_project_scope(frame.f_code.co_filename)
* elif is_return: # <<<<<<<<<<<<<<
@@ -21022,16 +21022,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_is_return != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1013
+ /* "_pydevd_bundle/pydevd_cython.pyx":1012
* stop = main_debugger.in_project_scope(frame.f_code.co_filename)
* elif is_return:
* stop = frame.f_back and main_debugger.in_project_scope(frame.f_back.f_code.co_filename) # <<<<<<<<<<<<<<
* if not stop:
* back = frame.f_back
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1012, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1012, __pyx_L151_error)
if (__pyx_t_9) {
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
@@ -21040,14 +21040,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L206_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1012, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1012, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_f_code); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_f_code); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1012, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1012, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
@@ -21063,7 +21063,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_4 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_8, __pyx_t_6) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1013, __pyx_L151_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1012, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_INCREF(__pyx_t_4);
@@ -21073,40 +21073,40 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_2);
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1014
+ /* "_pydevd_bundle/pydevd_cython.pyx":1013
* elif is_return:
* stop = frame.f_back and main_debugger.in_project_scope(frame.f_back.f_code.co_filename)
* if not stop: # <<<<<<<<<<<<<<
* back = frame.f_back
* if back:
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1014, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1013, __pyx_L151_error)
__pyx_t_10 = ((!__pyx_t_9) != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1015
+ /* "_pydevd_bundle/pydevd_cython.pyx":1014
* stop = frame.f_back and main_debugger.in_project_scope(frame.f_back.f_code.co_filename)
* if not stop:
* back = frame.f_back # <<<<<<<<<<<<<<
* if back:
* info.pydev_step_stop = back
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1015, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1014, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_back = __pyx_t_2;
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1016
+ /* "_pydevd_bundle/pydevd_cython.pyx":1015
* if not stop:
* back = frame.f_back
* if back: # <<<<<<<<<<<<<<
* info.pydev_step_stop = back
* if main_debugger.in_project_scope(frame.f_code.co_filename):
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_back); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1016, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_back); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1015, __pyx_L151_error)
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1017
+ /* "_pydevd_bundle/pydevd_cython.pyx":1016
* back = frame.f_back
* if back:
* info.pydev_step_stop = back # <<<<<<<<<<<<<<
@@ -21119,18 +21119,18 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_v_info->pydev_step_stop);
__pyx_v_info->pydev_step_stop = __pyx_v_back;
- /* "_pydevd_bundle/pydevd_cython.pyx":1018
+ /* "_pydevd_bundle/pydevd_cython.pyx":1017
* if back:
* info.pydev_step_stop = back
* if main_debugger.in_project_scope(frame.f_code.co_filename): # <<<<<<<<<<<<<<
* # we are returning from the project scope, step over should always lead to the project scope
* if is_generator_or_coroutime and step_cmd == CMD_STEP_OVER:
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1018, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1017, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1018, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1017, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1018, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1017, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -21146,53 +21146,53 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_2 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_1, __pyx_t_6) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1018, __pyx_L151_error)
+ if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1017, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1018, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1017, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1020
+ /* "_pydevd_bundle/pydevd_cython.pyx":1019
* if main_debugger.in_project_scope(frame.f_code.co_filename):
* # we are returning from the project scope, step over should always lead to the project scope
* if is_generator_or_coroutime and step_cmd == CMD_STEP_OVER: # <<<<<<<<<<<<<<
* # setting ad hoc command to ensure we will skip line stops in an asynchronous framework
* info.pydev_step_cmd = CMD_STEP_INTO_COROUTINE
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_is_generator_or_coroutime); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1020, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_is_generator_or_coroutime); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1019, __pyx_L151_error)
if (__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L212_bool_binop_done;
}
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1020, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1019, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1020, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1019, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1020, __pyx_L151_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1019, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1020, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1019, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_10 = __pyx_t_9;
__pyx_L212_bool_binop_done:;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1022
+ /* "_pydevd_bundle/pydevd_cython.pyx":1021
* if is_generator_or_coroutime and step_cmd == CMD_STEP_OVER:
* # setting ad hoc command to ensure we will skip line stops in an asynchronous framework
* info.pydev_step_cmd = CMD_STEP_INTO_COROUTINE # <<<<<<<<<<<<<<
* else:
* # we were already outside the project scope because of step into or breakpoint, it's ok to stop
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1022, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1021, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1022, __pyx_L151_error)
+ __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1021, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_v_info->pydev_step_cmd = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":1020
+ /* "_pydevd_bundle/pydevd_cython.pyx":1019
* if main_debugger.in_project_scope(frame.f_code.co_filename):
* # we are returning from the project scope, step over should always lead to the project scope
* if is_generator_or_coroutime and step_cmd == CMD_STEP_OVER: # <<<<<<<<<<<<<<
@@ -21201,7 +21201,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1018
+ /* "_pydevd_bundle/pydevd_cython.pyx":1017
* if back:
* info.pydev_step_stop = back
* if main_debugger.in_project_scope(frame.f_code.co_filename): # <<<<<<<<<<<<<<
@@ -21211,7 +21211,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L210;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1026
+ /* "_pydevd_bundle/pydevd_cython.pyx":1025
* # we were already outside the project scope because of step into or breakpoint, it's ok to stop
* # if we are not chopping a way through an asynchronous framework
* stop = not step_cmd == CMD_STEP_INTO_COROUTINE # <<<<<<<<<<<<<<
@@ -21219,23 +21219,23 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* # if there's no back frame, we just stop as soon as possible
*/
/*else*/ {
- __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1026, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1025, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1026, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1025, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1026, __pyx_L151_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1025, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1026, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1025, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_PyBool_FromLong((!__pyx_t_10)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1026, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyBool_FromLong((!__pyx_t_10)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1025, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_2);
__pyx_t_2 = 0;
}
__pyx_L210:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1016
+ /* "_pydevd_bundle/pydevd_cython.pyx":1015
* if not stop:
* back = frame.f_back
* if back: # <<<<<<<<<<<<<<
@@ -21245,7 +21245,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L209;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1029
+ /* "_pydevd_bundle/pydevd_cython.pyx":1028
* else:
* # if there's no back frame, we just stop as soon as possible
* info.pydev_step_cmd = CMD_STEP_INTO # <<<<<<<<<<<<<<
@@ -21253,13 +21253,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* else:
*/
/*else*/ {
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_STEP_INTO); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1029, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_STEP_INTO); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1028, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_2); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1029, __pyx_L151_error)
+ __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_2); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1028, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_info->pydev_step_cmd = __pyx_t_5;
- /* "_pydevd_bundle/pydevd_cython.pyx":1030
+ /* "_pydevd_bundle/pydevd_cython.pyx":1029
* # if there's no back frame, we just stop as soon as possible
* info.pydev_step_cmd = CMD_STEP_INTO
* info.pydev_step_stop = None # <<<<<<<<<<<<<<
@@ -21274,7 +21274,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L209:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1014
+ /* "_pydevd_bundle/pydevd_cython.pyx":1013
* elif is_return:
* stop = frame.f_back and main_debugger.in_project_scope(frame.f_back.f_code.co_filename)
* if not stop: # <<<<<<<<<<<<<<
@@ -21283,7 +21283,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1012
+ /* "_pydevd_bundle/pydevd_cython.pyx":1011
* if step_cmd == CMD_STEP_INTO_COROUTINE:
* stop = main_debugger.in_project_scope(frame.f_code.co_filename)
* elif is_return: # <<<<<<<<<<<<<<
@@ -21293,7 +21293,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L204;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1032
+ /* "_pydevd_bundle/pydevd_cython.pyx":1031
* info.pydev_step_stop = None
* else:
* stop = False # <<<<<<<<<<<<<<
@@ -21306,7 +21306,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L204:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1007
+ /* "_pydevd_bundle/pydevd_cython.pyx":1006
* elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE):
* stop = stop_frame is frame
* if stop: # <<<<<<<<<<<<<<
@@ -21315,16 +21315,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1034
+ /* "_pydevd_bundle/pydevd_cython.pyx":1033
* stop = False
*
* if CMD_STEP_OVER and plugin_manager is not None: # <<<<<<<<<<<<<<
* result = plugin_manager.cmd_step_over(main_debugger, frame, event, self._args, stop_info, stop)
* if result:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1033, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1034, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1033, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_9) {
} else {
@@ -21337,14 +21337,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L215_bool_binop_done:;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1035
+ /* "_pydevd_bundle/pydevd_cython.pyx":1034
*
* if CMD_STEP_OVER and plugin_manager is not None:
* result = plugin_manager.cmd_step_over(main_debugger, frame, event, self._args, stop_info, stop) # <<<<<<<<<<<<<<
* if result:
* stop, plugin_stop = result
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_cmd_step_over); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1035, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_cmd_step_over); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1034, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
__pyx_t_5 = 0;
@@ -21361,7 +21361,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_4)) {
PyObject *__pyx_temp[7] = {__pyx_t_6, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args, __pyx_v_stop_info, __pyx_v_stop};
- __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1035, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
@@ -21369,13 +21369,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
PyObject *__pyx_temp[7] = {__pyx_t_6, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args, __pyx_v_stop_info, __pyx_v_stop};
- __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1035, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_5, 6+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
#endif
{
- __pyx_t_1 = PyTuple_New(6+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1035, __pyx_L151_error)
+ __pyx_t_1 = PyTuple_New(6+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1034, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -21398,7 +21398,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_stop);
__Pyx_GIVEREF(__pyx_v_stop);
PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_5, __pyx_v_stop);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1035, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
@@ -21406,17 +21406,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF_SET(__pyx_v_result, __pyx_t_2);
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1036
+ /* "_pydevd_bundle/pydevd_cython.pyx":1035
* if CMD_STEP_OVER and plugin_manager is not None:
* result = plugin_manager.cmd_step_over(main_debugger, frame, event, self._args, stop_info, stop)
* if result: # <<<<<<<<<<<<<<
* stop, plugin_stop = result
*
*/
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1036, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1035, __pyx_L151_error)
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1037
+ /* "_pydevd_bundle/pydevd_cython.pyx":1036
* result = plugin_manager.cmd_step_over(main_debugger, frame, event, self._args, stop_info, stop)
* if result:
* stop, plugin_stop = result # <<<<<<<<<<<<<<
@@ -21429,7 +21429,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 1037, __pyx_L151_error)
+ __PYX_ERR(0, 1036, __pyx_L151_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -21442,21 +21442,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1037, __pyx_L151_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1036, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1037, __pyx_L151_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1036, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_1 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1037, __pyx_L151_error)
+ __pyx_t_1 = PyObject_GetIter(__pyx_v_result); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1036, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_16 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_16(__pyx_t_1); if (unlikely(!__pyx_t_2)) goto __pyx_L218_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
index = 1; __pyx_t_4 = __pyx_t_16(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L218_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1037, __pyx_L151_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1036, __pyx_L151_error)
__pyx_t_16 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L219_unpacking_done;
@@ -21464,7 +21464,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_16 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 1037, __pyx_L151_error)
+ __PYX_ERR(0, 1036, __pyx_L151_error)
__pyx_L219_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_2);
@@ -21472,7 +21472,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_plugin_stop, __pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1036
+ /* "_pydevd_bundle/pydevd_cython.pyx":1035
* if CMD_STEP_OVER and plugin_manager is not None:
* result = plugin_manager.cmd_step_over(main_debugger, frame, event, self._args, stop_info, stop)
* if result: # <<<<<<<<<<<<<<
@@ -21481,7 +21481,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1034
+ /* "_pydevd_bundle/pydevd_cython.pyx":1033
* stop = False
*
* if CMD_STEP_OVER and plugin_manager is not None: # <<<<<<<<<<<<<<
@@ -21490,7 +21490,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1005
+ /* "_pydevd_bundle/pydevd_cython.pyx":1004
* stop = is_line
*
* elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE): # <<<<<<<<<<<<<<
@@ -21500,25 +21500,25 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L160;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1039
+ /* "_pydevd_bundle/pydevd_cython.pyx":1038
* stop, plugin_stop = result
*
* elif step_cmd == CMD_STEP_RETURN: # <<<<<<<<<<<<<<
* stop = is_return and stop_frame is frame
*
*/
- __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1039, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1038, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_STEP_RETURN); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1039, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CMD_STEP_RETURN); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1038, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PyObject_RichCompare(__pyx_t_4, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1039, __pyx_L151_error)
+ __pyx_t_1 = PyObject_RichCompare(__pyx_t_4, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1038, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1039, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1038, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1040
+ /* "_pydevd_bundle/pydevd_cython.pyx":1039
*
* elif step_cmd == CMD_STEP_RETURN:
* stop = is_return and stop_frame is frame # <<<<<<<<<<<<<<
@@ -21527,14 +21527,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
if (__pyx_v_is_return) {
} else {
- __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_is_return); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1040, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_is_return); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1039, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_1 = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L220_bool_binop_done;
}
__pyx_t_10 = (__pyx_v_stop_frame == __pyx_v_frame);
- __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1040, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1039, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_1 = __pyx_t_2;
__pyx_t_2 = 0;
@@ -21542,7 +21542,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF_SET(__pyx_v_stop, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1039
+ /* "_pydevd_bundle/pydevd_cython.pyx":1038
* stop, plugin_stop = result
*
* elif step_cmd == CMD_STEP_RETURN: # <<<<<<<<<<<<<<
@@ -21552,7 +21552,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L160;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1043
+ /* "_pydevd_bundle/pydevd_cython.pyx":1042
*
* else:
* stop = False # <<<<<<<<<<<<<<
@@ -21565,14 +21565,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L160:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1045
+ /* "_pydevd_bundle/pydevd_cython.pyx":1044
* stop = False
*
* if stop and step_cmd != -1 and is_return and IS_PY3K and hasattr(frame, "f_back"): # <<<<<<<<<<<<<<
* f_code = getattr(frame.f_back, 'f_code', None)
* if f_code is not None:
*/
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 1045, __pyx_L151_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 1044, __pyx_L151_error)
if (__pyx_t_17) {
} else {
__pyx_t_10 = __pyx_t_17;
@@ -21590,37 +21590,37 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = __pyx_t_17;
goto __pyx_L223_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_IS_PY3K); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1045, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_IS_PY3K); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1044, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 1045, __pyx_L151_error)
+ __pyx_t_17 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_17 < 0)) __PYX_ERR(0, 1044, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_17) {
} else {
__pyx_t_10 = __pyx_t_17;
goto __pyx_L223_bool_binop_done;
}
- __pyx_t_17 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(__pyx_t_17 == ((int)-1))) __PYX_ERR(0, 1045, __pyx_L151_error)
+ __pyx_t_17 = __Pyx_HasAttr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(__pyx_t_17 == ((int)-1))) __PYX_ERR(0, 1044, __pyx_L151_error)
__pyx_t_9 = (__pyx_t_17 != 0);
__pyx_t_10 = __pyx_t_9;
__pyx_L223_bool_binop_done:;
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1046
+ /* "_pydevd_bundle/pydevd_cython.pyx":1045
*
* if stop and step_cmd != -1 and is_return and IS_PY3K and hasattr(frame, "f_back"):
* f_code = getattr(frame.f_back, 'f_code', None) # <<<<<<<<<<<<<<
* if f_code is not None:
* back_filename = os.path.basename(f_code.co_filename)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1046, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1045, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_GetAttr3(__pyx_t_1, __pyx_n_s_f_code, Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1046, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_GetAttr3(__pyx_t_1, __pyx_n_s_f_code, Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1045, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_f_code = __pyx_t_2;
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1047
+ /* "_pydevd_bundle/pydevd_cython.pyx":1046
* if stop and step_cmd != -1 and is_return and IS_PY3K and hasattr(frame, "f_back"):
* f_code = getattr(frame.f_back, 'f_code', None)
* if f_code is not None: # <<<<<<<<<<<<<<
@@ -21631,22 +21631,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1048
+ /* "_pydevd_bundle/pydevd_cython.pyx":1047
* f_code = getattr(frame.f_back, 'f_code', None)
* if f_code is not None:
* back_filename = os.path.basename(f_code.co_filename) # <<<<<<<<<<<<<<
* file_type = get_file_type(back_filename)
* if file_type == PYDEV_FILE:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1048, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1047, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_path); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1048, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_path); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1047, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_basename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1048, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_basename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1047, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_code, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1048, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_code, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1047, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -21661,20 +21661,20 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_2 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_6, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1048, __pyx_L151_error)
+ if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1047, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_back_filename = __pyx_t_2;
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1049
+ /* "_pydevd_bundle/pydevd_cython.pyx":1048
* if f_code is not None:
* back_filename = os.path.basename(f_code.co_filename)
* file_type = get_file_type(back_filename) # <<<<<<<<<<<<<<
* if file_type == PYDEV_FILE:
* stop = False
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_file_type); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1049, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_file_type); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1048, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -21688,28 +21688,28 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_2 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_4, __pyx_v_back_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_back_filename);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1049, __pyx_L151_error)
+ if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1048, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_file_type = __pyx_t_2;
__pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1050
+ /* "_pydevd_bundle/pydevd_cython.pyx":1049
* back_filename = os.path.basename(f_code.co_filename)
* file_type = get_file_type(back_filename)
* if file_type == PYDEV_FILE: # <<<<<<<<<<<<<<
* stop = False
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_PYDEV_FILE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1050, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_PYDEV_FILE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1049, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PyObject_RichCompare(__pyx_v_file_type, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1050, __pyx_L151_error)
+ __pyx_t_1 = PyObject_RichCompare(__pyx_v_file_type, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1049, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1050, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1049, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1051
+ /* "_pydevd_bundle/pydevd_cython.pyx":1050
* file_type = get_file_type(back_filename)
* if file_type == PYDEV_FILE:
* stop = False # <<<<<<<<<<<<<<
@@ -21719,7 +21719,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_False);
__Pyx_DECREF_SET(__pyx_v_stop, Py_False);
- /* "_pydevd_bundle/pydevd_cython.pyx":1050
+ /* "_pydevd_bundle/pydevd_cython.pyx":1049
* back_filename = os.path.basename(f_code.co_filename)
* file_type = get_file_type(back_filename)
* if file_type == PYDEV_FILE: # <<<<<<<<<<<<<<
@@ -21728,7 +21728,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1047
+ /* "_pydevd_bundle/pydevd_cython.pyx":1046
* if stop and step_cmd != -1 and is_return and IS_PY3K and hasattr(frame, "f_back"):
* f_code = getattr(frame.f_back, 'f_code', None)
* if f_code is not None: # <<<<<<<<<<<<<<
@@ -21737,7 +21737,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1045
+ /* "_pydevd_bundle/pydevd_cython.pyx":1044
* stop = False
*
* if stop and step_cmd != -1 and is_return and IS_PY3K and hasattr(frame, "f_back"): # <<<<<<<<<<<<<<
@@ -21746,26 +21746,26 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1053
+ /* "_pydevd_bundle/pydevd_cython.pyx":1052
* stop = False
*
* if plugin_stop: # <<<<<<<<<<<<<<
* stopped_on_plugin = plugin_manager.stop(main_debugger, frame, event, self._args, stop_info, arg, step_cmd)
* elif stop:
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_plugin_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1053, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_plugin_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1052, __pyx_L151_error)
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1054
+ /* "_pydevd_bundle/pydevd_cython.pyx":1053
*
* if plugin_stop:
* stopped_on_plugin = plugin_manager.stop(main_debugger, frame, event, self._args, stop_info, arg, step_cmd) # <<<<<<<<<<<<<<
* elif stop:
* if is_line:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_stop); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1054, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_plugin_manager, __pyx_n_s_stop); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1053, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1054, __pyx_L151_error)
+ __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1053, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
__pyx_t_5 = 0;
@@ -21782,7 +21782,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[8] = {__pyx_t_6, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args, __pyx_v_stop_info, __pyx_v_arg, __pyx_t_4};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 7+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1054, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 7+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1053, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -21791,14 +21791,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[8] = {__pyx_t_6, __pyx_v_main_debugger, __pyx_v_frame, __pyx_v_event, __pyx_v_self->_args, __pyx_v_stop_info, __pyx_v_arg, __pyx_t_4};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 7+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1054, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 7+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1053, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else
#endif
{
- __pyx_t_8 = PyTuple_New(7+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1054, __pyx_L151_error)
+ __pyx_t_8 = PyTuple_New(7+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1053, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -21824,7 +21824,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_8, 6+__pyx_t_5, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1054, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1053, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
@@ -21832,7 +21832,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_stopped_on_plugin = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1053
+ /* "_pydevd_bundle/pydevd_cython.pyx":1052
* stop = False
*
* if plugin_stop: # <<<<<<<<<<<<<<
@@ -21842,17 +21842,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L230;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1055
+ /* "_pydevd_bundle/pydevd_cython.pyx":1054
* if plugin_stop:
* stopped_on_plugin = plugin_manager.stop(main_debugger, frame, event, self._args, stop_info, arg, step_cmd)
* elif stop: # <<<<<<<<<<<<<<
* if is_line:
* self.set_suspend(thread, step_cmd)
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1055, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_stop); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1054, __pyx_L151_error)
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1056
+ /* "_pydevd_bundle/pydevd_cython.pyx":1055
* stopped_on_plugin = plugin_manager.stop(main_debugger, frame, event, self._args, stop_info, arg, step_cmd)
* elif stop:
* if is_line: # <<<<<<<<<<<<<<
@@ -21862,16 +21862,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_v_is_line != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1057
+ /* "_pydevd_bundle/pydevd_cython.pyx":1056
* elif stop:
* if is_line:
* self.set_suspend(thread, step_cmd) # <<<<<<<<<<<<<<
* self.do_wait_suspend(thread, frame, event, arg)
* else: # return event
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1057, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1056, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1057, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1056, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_4 = NULL;
__pyx_t_5 = 0;
@@ -21888,7 +21888,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_v_thread, __pyx_t_8};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1057, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1056, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
@@ -21897,14 +21897,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_v_thread, __pyx_t_8};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1057, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1056, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else
#endif
{
- __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1057, __pyx_L151_error)
+ __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1056, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL;
@@ -21915,21 +21915,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1057, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1056, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1058
+ /* "_pydevd_bundle/pydevd_cython.pyx":1057
* if is_line:
* self.set_suspend(thread, step_cmd)
* self.do_wait_suspend(thread, frame, event, arg) # <<<<<<<<<<<<<<
* else: # return event
* back = frame.f_back
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1058, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1057, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_6 = NULL;
__pyx_t_5 = 0;
@@ -21946,7 +21946,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_6, __pyx_v_thread, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1058, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1057, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
@@ -21954,13 +21954,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[5] = {__pyx_t_6, __pyx_v_thread, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1058, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1057, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
#endif
{
- __pyx_t_8 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1058, __pyx_L151_error)
+ __pyx_t_8 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1057, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -21977,14 +21977,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_5, __pyx_v_arg);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1058, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1057, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1056
+ /* "_pydevd_bundle/pydevd_cython.pyx":1055
* stopped_on_plugin = plugin_manager.stop(main_debugger, frame, event, self._args, stop_info, arg, step_cmd)
* elif stop:
* if is_line: # <<<<<<<<<<<<<<
@@ -21994,7 +21994,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L231;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1060
+ /* "_pydevd_bundle/pydevd_cython.pyx":1059
* self.do_wait_suspend(thread, frame, event, arg)
* else: # return event
* back = frame.f_back # <<<<<<<<<<<<<<
@@ -22002,12 +22002,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* # When we get to the pydevd run function, the debugging has actually finished for the main thread
*/
/*else*/ {
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1060, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1059, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_XDECREF_SET(__pyx_v_back, __pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1061
+ /* "_pydevd_bundle/pydevd_cython.pyx":1060
* else: # return event
* back = frame.f_back
* if back is not None: # <<<<<<<<<<<<<<
@@ -22018,14 +22018,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1065
+ /* "_pydevd_bundle/pydevd_cython.pyx":1064
* # (note that it can still go on for other threads, but for this one, we just make it finish)
* # So, just setting it to None should be OK
* _, back_filename, base = get_abs_path_real_path_and_base_from_frame(back) # <<<<<<<<<<<<<<
* if (base, back.f_code.co_name) in (DEBUG_START, DEBUG_START_PY3K):
* back = None
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1065, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1064, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_8 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
@@ -22039,7 +22039,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_1 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_8, __pyx_v_back) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_back);
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1065, __pyx_L151_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1064, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
@@ -22048,7 +22048,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 1065, __pyx_L151_error)
+ __PYX_ERR(0, 1064, __pyx_L151_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -22064,17 +22064,17 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1065, __pyx_L151_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1064, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1065, __pyx_L151_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1064, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1065, __pyx_L151_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1064, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1065, __pyx_L151_error)
+ __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1064, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_16 = Py_TYPE(__pyx_t_4)->tp_iternext;
@@ -22084,7 +22084,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_6 = __pyx_t_16(__pyx_t_4); if (unlikely(!__pyx_t_6)) goto __pyx_L233_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_4), 3) < 0) __PYX_ERR(0, 1065, __pyx_L151_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_4), 3) < 0) __PYX_ERR(0, 1064, __pyx_L151_error)
__pyx_t_16 = NULL;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L234_unpacking_done;
@@ -22092,7 +22092,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_16 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 1065, __pyx_L151_error)
+ __PYX_ERR(0, 1064, __pyx_L151_error)
__pyx_L234_unpacking_done:;
}
__pyx_v__ = __pyx_t_2;
@@ -22102,19 +22102,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_v_base = __pyx_t_6;
__pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1066
+ /* "_pydevd_bundle/pydevd_cython.pyx":1065
* # So, just setting it to None should be OK
* _, back_filename, base = get_abs_path_real_path_and_base_from_frame(back)
* if (base, back.f_code.co_name) in (DEBUG_START, DEBUG_START_PY3K): # <<<<<<<<<<<<<<
* back = None
*
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_back, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_back, __pyx_n_s_f_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_name); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_co_name); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_base);
__Pyx_GIVEREF(__pyx_v_base);
@@ -22122,22 +22122,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6);
__pyx_t_6 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_DEBUG_START); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_DEBUG_START); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_8 = PyObject_RichCompare(__pyx_t_1, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_8 = PyObject_RichCompare(__pyx_t_1, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L236_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_DEBUG_START_PY3K); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_DEBUG_START_PY3K); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1066, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1065, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_10 = __pyx_t_9;
__pyx_L236_bool_binop_done:;
@@ -22145,7 +22145,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_9 = (__pyx_t_10 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1067
+ /* "_pydevd_bundle/pydevd_cython.pyx":1066
* _, back_filename, base = get_abs_path_real_path_and_base_from_frame(back)
* if (base, back.f_code.co_name) in (DEBUG_START, DEBUG_START_PY3K):
* back = None # <<<<<<<<<<<<<<
@@ -22155,7 +22155,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_back, Py_None);
- /* "_pydevd_bundle/pydevd_cython.pyx":1066
+ /* "_pydevd_bundle/pydevd_cython.pyx":1065
* # So, just setting it to None should be OK
* _, back_filename, base = get_abs_path_real_path_and_base_from_frame(back)
* if (base, back.f_code.co_name) in (DEBUG_START, DEBUG_START_PY3K): # <<<<<<<<<<<<<<
@@ -22165,22 +22165,22 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L235;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1069
+ /* "_pydevd_bundle/pydevd_cython.pyx":1068
* back = None
*
* elif base == TRACE_PROPERTY: # <<<<<<<<<<<<<<
* # We dont want to trace the return event of pydevd_traceproperty (custom property for debugging)
* # if we're in a return, we want it to appear to the user in the previous frame!
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_TRACE_PROPERTY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1069, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_TRACE_PROPERTY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1068, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PyObject_RichCompare(__pyx_v_base, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1069, __pyx_L151_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_v_base, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1068, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1069, __pyx_L151_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1068, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1072
+ /* "_pydevd_bundle/pydevd_cython.pyx":1071
* # We dont want to trace the return event of pydevd_traceproperty (custom property for debugging)
* # if we're in a return, we want it to appear to the user in the previous frame!
* if not is_call: frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
@@ -22189,13 +22189,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_t_9 = ((!(__pyx_v_is_call != 0)) != 0);
if (__pyx_t_9) {
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1072, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1071, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1072, __pyx_L151_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1071, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1073
+ /* "_pydevd_bundle/pydevd_cython.pyx":1072
* # if we're in a return, we want it to appear to the user in the previous frame!
* if not is_call: frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -22206,7 +22206,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L155_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1069
+ /* "_pydevd_bundle/pydevd_cython.pyx":1068
* back = None
*
* elif base == TRACE_PROPERTY: # <<<<<<<<<<<<<<
@@ -22215,16 +22215,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1075
+ /* "_pydevd_bundle/pydevd_cython.pyx":1074
* return None
*
* elif pydevd_dont_trace.should_trace_hook is not None: # <<<<<<<<<<<<<<
* if not pydevd_dont_trace.should_trace_hook(back, back_filename):
* # In this case, we'll have to skip the previous one because it shouldn't be traced.
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1075, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1074, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1074, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_9 = (__pyx_t_1 != Py_None);
@@ -22232,16 +22232,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1076
+ /* "_pydevd_bundle/pydevd_cython.pyx":1075
*
* elif pydevd_dont_trace.should_trace_hook is not None:
* if not pydevd_dont_trace.should_trace_hook(back, back_filename): # <<<<<<<<<<<<<<
* # In this case, we'll have to skip the previous one because it shouldn't be traced.
* # Also, we have to reset the tracing, because if the parent's parent (or some
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_should_trace_hook); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -22259,7 +22259,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_back, __pyx_v_back_filename};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
@@ -22267,13 +22267,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_back, __pyx_v_back_filename};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
#endif
{
- __pyx_t_2 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __pyx_t_2 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -22284,24 +22284,24 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_back_filename);
__Pyx_GIVEREF(__pyx_v_back_filename);
PyTuple_SET_ITEM(__pyx_t_2, 1+__pyx_t_5, __pyx_v_back_filename);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1076, __pyx_L151_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1075, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_9 = ((!__pyx_t_10) != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1082
+ /* "_pydevd_bundle/pydevd_cython.pyx":1081
* # we should anymore (so, a step in/over/return may not stop anywhere if no parent is traced).
* # Related test: _debugger_case17a.py
* main_debugger.set_trace_for_frame_and_parents(back) # <<<<<<<<<<<<<<
* if not is_call: frame.f_trace = NO_FTRACE
* return None
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_set_trace_for_frame_and_parents); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1082, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_set_trace_for_frame_and_parents); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1081, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_2 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
@@ -22315,12 +22315,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_1 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_2, __pyx_v_back) : __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_v_back);
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1082, __pyx_L151_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1081, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1083
+ /* "_pydevd_bundle/pydevd_cython.pyx":1082
* # Related test: _debugger_case17a.py
* main_debugger.set_trace_for_frame_and_parents(back)
* if not is_call: frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
@@ -22329,13 +22329,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_t_9 = ((!(__pyx_v_is_call != 0)) != 0);
if (__pyx_t_9) {
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1083, __pyx_L151_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1082, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_1) < 0) __PYX_ERR(0, 1083, __pyx_L151_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_1) < 0) __PYX_ERR(0, 1082, __pyx_L151_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1084
+ /* "_pydevd_bundle/pydevd_cython.pyx":1083
* main_debugger.set_trace_for_frame_and_parents(back)
* if not is_call: frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -22346,7 +22346,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L155_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1076
+ /* "_pydevd_bundle/pydevd_cython.pyx":1075
*
* elif pydevd_dont_trace.should_trace_hook is not None:
* if not pydevd_dont_trace.should_trace_hook(back, back_filename): # <<<<<<<<<<<<<<
@@ -22355,7 +22355,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1075
+ /* "_pydevd_bundle/pydevd_cython.pyx":1074
* return None
*
* elif pydevd_dont_trace.should_trace_hook is not None: # <<<<<<<<<<<<<<
@@ -22365,7 +22365,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L235:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1061
+ /* "_pydevd_bundle/pydevd_cython.pyx":1060
* else: # return event
* back = frame.f_back
* if back is not None: # <<<<<<<<<<<<<<
@@ -22374,7 +22374,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1086
+ /* "_pydevd_bundle/pydevd_cython.pyx":1085
* return None
*
* if back is not None: # <<<<<<<<<<<<<<
@@ -22385,16 +22385,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1088
+ /* "_pydevd_bundle/pydevd_cython.pyx":1087
* if back is not None:
* # if we're in a return, we want it to appear to the user in the previous frame!
* self.set_suspend(thread, step_cmd) # <<<<<<<<<<<<<<
* self.do_wait_suspend(thread, back, event, arg)
* else:
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1088, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_set_suspend); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1087, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1088, __pyx_L151_error)
+ __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_step_cmd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1087, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_6 = NULL;
__pyx_t_5 = 0;
@@ -22411,7 +22411,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_thread, __pyx_t_2};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1088, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1087, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -22420,14 +22420,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_thread, __pyx_t_2};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1088, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1087, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else
#endif
{
- __pyx_t_4 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1088, __pyx_L151_error)
+ __pyx_t_4 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1087, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -22438,21 +22438,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_5, __pyx_t_2);
__pyx_t_2 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1088, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1087, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1089
+ /* "_pydevd_bundle/pydevd_cython.pyx":1088
* # if we're in a return, we want it to appear to the user in the previous frame!
* self.set_suspend(thread, step_cmd)
* self.do_wait_suspend(thread, back, event, arg) # <<<<<<<<<<<<<<
* else:
* # in jython we may not have a back frame
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1089, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_do_wait_suspend); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1088, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_4 = NULL;
__pyx_t_5 = 0;
@@ -22469,7 +22469,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[5] = {__pyx_t_4, __pyx_v_thread, __pyx_v_back, __pyx_v_event, __pyx_v_arg};
- __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1089, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1088, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
@@ -22477,13 +22477,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[5] = {__pyx_t_4, __pyx_v_thread, __pyx_v_back, __pyx_v_event, __pyx_v_arg};
- __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1089, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1088, __pyx_L151_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_1);
} else
#endif
{
- __pyx_t_2 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1089, __pyx_L151_error)
+ __pyx_t_2 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1088, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_2);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_4); __pyx_t_4 = NULL;
@@ -22500,14 +22500,14 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_2, 3+__pyx_t_5, __pyx_v_arg);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1089, __pyx_L151_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1088, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1086
+ /* "_pydevd_bundle/pydevd_cython.pyx":1085
* return None
*
* if back is not None: # <<<<<<<<<<<<<<
@@ -22517,7 +22517,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
goto __pyx_L241;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1092
+ /* "_pydevd_bundle/pydevd_cython.pyx":1091
* else:
* # in jython we may not have a back frame
* self.clear_run_state(info) # <<<<<<<<<<<<<<
@@ -22525,7 +22525,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* except KeyboardInterrupt:
*/
/*else*/ {
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_clear_run_state); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1092, __pyx_L151_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_clear_run_state); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1091, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_2 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
@@ -22539,7 +22539,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_1 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_2, ((PyObject *)__pyx_v_info)) : __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_info));
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1092, __pyx_L151_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1091, __pyx_L151_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -22548,7 +22548,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L231:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1055
+ /* "_pydevd_bundle/pydevd_cython.pyx":1054
* if plugin_stop:
* stopped_on_plugin = plugin_manager.stop(main_debugger, frame, event, self._args, stop_info, arg, step_cmd)
* elif stop: # <<<<<<<<<<<<<<
@@ -22558,7 +22558,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L230:;
- /* "_pydevd_bundle/pydevd_cython.pyx":936
+ /* "_pydevd_bundle/pydevd_cython.pyx":935
*
* # step handling. We stop when we hit the right frame
* try: # <<<<<<<<<<<<<<
@@ -22580,7 +22580,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1094
+ /* "_pydevd_bundle/pydevd_cython.pyx":1093
* self.clear_run_state(info)
*
* except KeyboardInterrupt: # <<<<<<<<<<<<<<
@@ -22590,19 +22590,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_t_5 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyboardInterrupt);
if (__pyx_t_5) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_2) < 0) __PYX_ERR(0, 1094, __pyx_L153_except_error)
+ if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_8, &__pyx_t_2) < 0) __PYX_ERR(0, 1093, __pyx_L153_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_2);
- /* "_pydevd_bundle/pydevd_cython.pyx":1095
+ /* "_pydevd_bundle/pydevd_cython.pyx":1094
*
* except KeyboardInterrupt:
* self.clear_run_state(info) # <<<<<<<<<<<<<<
* raise
* except:
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_clear_run_state); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1095, __pyx_L153_except_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_clear_run_state); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1094, __pyx_L153_except_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
@@ -22616,12 +22616,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_7, ((PyObject *)__pyx_v_info)) : __Pyx_PyObject_CallOneArg(__pyx_t_6, ((PyObject *)__pyx_v_info));
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1095, __pyx_L153_except_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1094, __pyx_L153_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1096
+ /* "_pydevd_bundle/pydevd_cython.pyx":1095
* except KeyboardInterrupt:
* self.clear_run_state(info)
* raise # <<<<<<<<<<<<<<
@@ -22633,10 +22633,10 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_ErrRestoreWithState(__pyx_t_1, __pyx_t_8, __pyx_t_2);
__pyx_t_1 = 0; __pyx_t_8 = 0; __pyx_t_2 = 0;
- __PYX_ERR(0, 1096, __pyx_L153_except_error)
+ __PYX_ERR(0, 1095, __pyx_L153_except_error)
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1097
+ /* "_pydevd_bundle/pydevd_cython.pyx":1096
* self.clear_run_state(info)
* raise
* except: # <<<<<<<<<<<<<<
@@ -22645,12 +22645,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_8, &__pyx_t_1) < 0) __PYX_ERR(0, 1097, __pyx_L153_except_error)
+ if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_8, &__pyx_t_1) < 0) __PYX_ERR(0, 1096, __pyx_L153_except_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_1);
- /* "_pydevd_bundle/pydevd_cython.pyx":1098
+ /* "_pydevd_bundle/pydevd_cython.pyx":1097
* raise
* except:
* try: # <<<<<<<<<<<<<<
@@ -22666,16 +22666,16 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XGOTREF(__pyx_t_20);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1099
+ /* "_pydevd_bundle/pydevd_cython.pyx":1098
* except:
* try:
* traceback.print_exc() # <<<<<<<<<<<<<<
* info.pydev_step_cmd = -1
* except:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_traceback); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1099, __pyx_L246_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_traceback); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1098, __pyx_L246_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1099, __pyx_L246_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1098, __pyx_L246_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -22690,12 +22690,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1099, __pyx_L246_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1098, __pyx_L246_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1100
+ /* "_pydevd_bundle/pydevd_cython.pyx":1099
* try:
* traceback.print_exc()
* info.pydev_step_cmd = -1 # <<<<<<<<<<<<<<
@@ -22704,7 +22704,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_v_info->pydev_step_cmd = -1;
- /* "_pydevd_bundle/pydevd_cython.pyx":1098
+ /* "_pydevd_bundle/pydevd_cython.pyx":1097
* raise
* except:
* try: # <<<<<<<<<<<<<<
@@ -22723,7 +22723,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1101
+ /* "_pydevd_bundle/pydevd_cython.pyx":1100
* traceback.print_exc()
* info.pydev_step_cmd = -1
* except: # <<<<<<<<<<<<<<
@@ -22732,12 +22732,12 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_7, &__pyx_t_6) < 0) __PYX_ERR(0, 1101, __pyx_L248_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_7, &__pyx_t_6) < 0) __PYX_ERR(0, 1100, __pyx_L248_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_6);
- /* "_pydevd_bundle/pydevd_cython.pyx":1102
+ /* "_pydevd_bundle/pydevd_cython.pyx":1101
* info.pydev_step_cmd = -1
* except:
* if not is_call: frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
@@ -22746,13 +22746,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
__pyx_t_10 = ((!(__pyx_v_is_call != 0)) != 0);
if (__pyx_t_10) {
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1102, __pyx_L248_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1101, __pyx_L248_except_error)
__Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_3) < 0) __PYX_ERR(0, 1102, __pyx_L248_except_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_3) < 0) __PYX_ERR(0, 1101, __pyx_L248_except_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1103
+ /* "_pydevd_bundle/pydevd_cython.pyx":1102
* except:
* if not is_call: frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -22771,7 +22771,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L248_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1098
+ /* "_pydevd_bundle/pydevd_cython.pyx":1097
* raise
* except:
* try: # <<<<<<<<<<<<<<
@@ -22798,7 +22798,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
__pyx_L153_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":936
+ /* "_pydevd_bundle/pydevd_cython.pyx":935
*
* # step handling. We stop when we hit the right frame
* try: # <<<<<<<<<<<<<<
@@ -22830,21 +22830,21 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
__pyx_L156_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1106
+ /* "_pydevd_bundle/pydevd_cython.pyx":1105
*
* # if we are quitting, let's stop the tracing
* if not main_debugger.quitting: # <<<<<<<<<<<<<<
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_quitting); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1106, __pyx_L5_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_main_debugger, __pyx_n_s_quitting); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1105, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1106, __pyx_L5_error)
+ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1105, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_9 = ((!__pyx_t_10) != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1108
+ /* "_pydevd_bundle/pydevd_cython.pyx":1107
* if not main_debugger.quitting:
* # No need to reset frame.f_trace to keep the same trace function.
* return self.trace_dispatch # <<<<<<<<<<<<<<
@@ -22852,13 +22852,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
* if not is_call: frame.f_trace = NO_FTRACE
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1108, __pyx_L5_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1107, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L4_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1106
+ /* "_pydevd_bundle/pydevd_cython.pyx":1105
*
* # if we are quitting, let's stop the tracing
* if not main_debugger.quitting: # <<<<<<<<<<<<<<
@@ -22867,7 +22867,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1110
+ /* "_pydevd_bundle/pydevd_cython.pyx":1109
* return self.trace_dispatch
* else:
* if not is_call: frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
@@ -22877,13 +22877,13 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
/*else*/ {
__pyx_t_9 = ((!(__pyx_v_is_call != 0)) != 0);
if (__pyx_t_9) {
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1110, __pyx_L5_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1109, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_1) < 0) __PYX_ERR(0, 1110, __pyx_L5_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_1) < 0) __PYX_ERR(0, 1109, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1111
+ /* "_pydevd_bundle/pydevd_cython.pyx":1110
* else:
* if not is_call: frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -22896,7 +22896,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1113
+ /* "_pydevd_bundle/pydevd_cython.pyx":1112
* return None
* finally:
* info.is_tracing = False # <<<<<<<<<<<<<<
@@ -22953,7 +22953,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispa
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":621
+ /* "_pydevd_bundle/pydevd_cython.pyx":620
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cpdef trace_dispatch(self, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -23058,17 +23058,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_21trace_di
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 3, 3, 1); __PYX_ERR(0, 621, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 3, 3, 1); __PYX_ERR(0, 620, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 3, 3, 2); __PYX_ERR(0, 621, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 3, 3, 2); __PYX_ERR(0, 620, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_dispatch") < 0)) __PYX_ERR(0, 621, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_dispatch") < 0)) __PYX_ERR(0, 620, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -23083,13 +23083,13 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_21trace_di
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 621, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 620, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.PyDBFrame.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 621, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 620, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20trace_dispatch(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_v_self), __pyx_v_frame, __pyx_v_event, __pyx_v_arg);
/* function exit code */
@@ -23110,7 +23110,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20trace_di
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("trace_dispatch", 0);
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispatch(__pyx_v_self, __pyx_v_frame, __pyx_v_event, __pyx_v_arg, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 621, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispatch(__pyx_v_self, __pyx_v_frame, __pyx_v_event, __pyx_v_arg, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 620, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
@@ -23127,7 +23127,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_20trace_di
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1118
+/* "_pydevd_bundle/pydevd_cython.pyx":1117
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef _get_instructions(self, frame): # <<<<<<<<<<<<<<
@@ -23149,7 +23149,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instru
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("_get_instructions", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1119
+ /* "_pydevd_bundle/pydevd_cython.pyx":1118
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef _get_instructions(self, frame):
* if self._instructions is None: # <<<<<<<<<<<<<<
@@ -23160,19 +23160,19 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instru
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1120
+ /* "_pydevd_bundle/pydevd_cython.pyx":1119
* cdef _get_instructions(self, frame):
* if self._instructions is None:
* self._instructions = list(dis.get_instructions(frame.f_code)) # <<<<<<<<<<<<<<
* return self._instructions
* # ENDIF
*/
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_dis); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_dis); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get_instructions); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get_instructions); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
@@ -23187,10 +23187,10 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instru
__pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_6, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = PySequence_List(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __pyx_t_5 = PySequence_List(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GIVEREF(__pyx_t_5);
@@ -23199,7 +23199,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instru
__pyx_v_self->_instructions = ((PyObject*)__pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1119
+ /* "_pydevd_bundle/pydevd_cython.pyx":1118
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef _get_instructions(self, frame):
* if self._instructions is None: # <<<<<<<<<<<<<<
@@ -23208,7 +23208,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instru
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1121
+ /* "_pydevd_bundle/pydevd_cython.pyx":1120
* if self._instructions is None:
* self._instructions = list(dis.get_instructions(frame.f_code))
* return self._instructions # <<<<<<<<<<<<<<
@@ -23220,7 +23220,7 @@ static PyObject *__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instru
__pyx_r = __pyx_v_self->_instructions;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1118
+ /* "_pydevd_bundle/pydevd_cython.pyx":1117
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef _get_instructions(self, frame): # <<<<<<<<<<<<<<
@@ -23559,7 +23559,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_24__setsta
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1173
+/* "_pydevd_bundle/pydevd_cython.pyx":1172
* cdef class SafeCallWrapper:
* cdef method_object
* def __init__(self, method_object): # <<<<<<<<<<<<<<
@@ -23596,7 +23596,7 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_1__init__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1173, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1172, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -23607,7 +23607,7 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_1__init__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1173, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1172, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.SafeCallWrapper.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -23625,7 +23625,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper___init__(
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1174
+ /* "_pydevd_bundle/pydevd_cython.pyx":1173
* cdef method_object
* def __init__(self, method_object):
* self.method_object = method_object # <<<<<<<<<<<<<<
@@ -23638,7 +23638,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper___init__(
__Pyx_DECREF(__pyx_v_self->method_object);
__pyx_v_self->method_object = __pyx_v_method_object;
- /* "_pydevd_bundle/pydevd_cython.pyx":1173
+ /* "_pydevd_bundle/pydevd_cython.pyx":1172
* cdef class SafeCallWrapper:
* cdef method_object
* def __init__(self, method_object): # <<<<<<<<<<<<<<
@@ -23652,7 +23652,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper___init__(
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1175
+/* "_pydevd_bundle/pydevd_cython.pyx":1174
* def __init__(self, method_object):
* self.method_object = method_object
* def __call__(self, *args): # <<<<<<<<<<<<<<
@@ -23691,7 +23691,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_2__
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__call__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1178
+ /* "_pydevd_bundle/pydevd_cython.pyx":1177
* #Cannot use 'self' once inside the delegate call since we are borrowing the self reference f_trace field
* #in the frame, and that reference might get destroyed by set trace on frame and parents
* cdef PyObject* method_obj = <PyObject*> self.method_object # <<<<<<<<<<<<<<
@@ -23700,7 +23700,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_2__
*/
__pyx_v_method_obj = ((PyObject *)__pyx_v_self->method_object);
- /* "_pydevd_bundle/pydevd_cython.pyx":1179
+ /* "_pydevd_bundle/pydevd_cython.pyx":1178
* #in the frame, and that reference might get destroyed by set trace on frame and parents
* cdef PyObject* method_obj = <PyObject*> self.method_object
* Py_INCREF(<object>method_obj) # <<<<<<<<<<<<<<
@@ -23709,19 +23709,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_2__
*/
Py_INCREF(((PyObject *)__pyx_v_method_obj));
- /* "_pydevd_bundle/pydevd_cython.pyx":1180
+ /* "_pydevd_bundle/pydevd_cython.pyx":1179
* cdef PyObject* method_obj = <PyObject*> self.method_object
* Py_INCREF(<object>method_obj)
* ret = (<object>method_obj)(*args) # <<<<<<<<<<<<<<
* Py_XDECREF (method_obj)
* return SafeCallWrapper(ret) if ret is not None else None
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_v_method_obj), __pyx_v_args, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1180, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_v_method_obj), __pyx_v_args, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_ret = __pyx_t_1;
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1181
+ /* "_pydevd_bundle/pydevd_cython.pyx":1180
* Py_INCREF(<object>method_obj)
* ret = (<object>method_obj)(*args)
* Py_XDECREF (method_obj) # <<<<<<<<<<<<<<
@@ -23730,7 +23730,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_2__
*/
Py_XDECREF(__pyx_v_method_obj);
- /* "_pydevd_bundle/pydevd_cython.pyx":1182
+ /* "_pydevd_bundle/pydevd_cython.pyx":1181
* ret = (<object>method_obj)(*args)
* Py_XDECREF (method_obj)
* return SafeCallWrapper(ret) if ret is not None else None # <<<<<<<<<<<<<<
@@ -23740,7 +23740,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_2__
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = (__pyx_v_ret != Py_None);
if ((__pyx_t_2 != 0)) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_v_ret); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1182, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_v_ret); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_1 = __pyx_t_3;
__pyx_t_3 = 0;
@@ -23752,7 +23752,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_2__
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1175
+ /* "_pydevd_bundle/pydevd_cython.pyx":1174
* def __init__(self, method_object):
* self.method_object = method_object
* def __call__(self, *args): # <<<<<<<<<<<<<<
@@ -24066,7 +24066,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_15SafeCallWrapper_6__
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1187
+/* "_pydevd_bundle/pydevd_cython.pyx":1186
*
*
* def fix_top_level_trace_and_get_trace_func(py_db, frame): # <<<<<<<<<<<<<<
@@ -24109,11 +24109,11 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_13fix_top_level_trace
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_frame)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("fix_top_level_trace_and_get_trace_func", 1, 2, 2, 1); __PYX_ERR(0, 1187, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("fix_top_level_trace_and_get_trace_func", 1, 2, 2, 1); __PYX_ERR(0, 1186, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fix_top_level_trace_and_get_trace_func") < 0)) __PYX_ERR(0, 1187, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fix_top_level_trace_and_get_trace_func") < 0)) __PYX_ERR(0, 1186, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -24126,7 +24126,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_13fix_top_level_trace
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("fix_top_level_trace_and_get_trace_func", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1187, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("fix_top_level_trace_and_get_trace_func", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1186, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.fix_top_level_trace_and_get_trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -24170,7 +24170,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("fix_top_level_trace_and_get_trace_func", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1198
+ /* "_pydevd_bundle/pydevd_cython.pyx":1197
* # where more information is cached (and will also setup the tracing for
* # frames where we should deal with unhandled exceptions).
* thread = None # <<<<<<<<<<<<<<
@@ -24180,7 +24180,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__Pyx_INCREF(Py_None);
__pyx_v_thread = Py_None;
- /* "_pydevd_bundle/pydevd_cython.pyx":1202
+ /* "_pydevd_bundle/pydevd_cython.pyx":1201
* # (i.e.: thread entry-points).
*
* f_unhandled = frame # <<<<<<<<<<<<<<
@@ -24190,7 +24190,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__Pyx_INCREF(__pyx_v_frame);
__pyx_v_f_unhandled = __pyx_v_frame;
- /* "_pydevd_bundle/pydevd_cython.pyx":1204
+ /* "_pydevd_bundle/pydevd_cython.pyx":1203
* f_unhandled = frame
* # print('called at', f_unhandled.f_code.co_name, f_unhandled.f_code.co_filename, f_unhandled.f_code.co_firstlineno)
* force_only_unhandled_tracer = False # <<<<<<<<<<<<<<
@@ -24199,7 +24199,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
__pyx_v_force_only_unhandled_tracer = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1205
+ /* "_pydevd_bundle/pydevd_cython.pyx":1204
* # print('called at', f_unhandled.f_code.co_name, f_unhandled.f_code.co_filename, f_unhandled.f_code.co_firstlineno)
* force_only_unhandled_tracer = False
* while f_unhandled is not None: # <<<<<<<<<<<<<<
@@ -24211,32 +24211,32 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_2 = (__pyx_t_1 != 0);
if (!__pyx_t_2) break;
- /* "_pydevd_bundle/pydevd_cython.pyx":1206
+ /* "_pydevd_bundle/pydevd_cython.pyx":1205
* force_only_unhandled_tracer = False
* while f_unhandled is not None:
* filename = f_unhandled.f_code.co_filename # <<<<<<<<<<<<<<
* name = splitext(basename(filename))[0]
* if name == 'threading':
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1206, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1206, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(0, 1206, __pyx_L1_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(0, 1205, __pyx_L1_error)
__Pyx_XDECREF_SET(__pyx_v_filename, ((PyObject*)__pyx_t_4));
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1207
+ /* "_pydevd_bundle/pydevd_cython.pyx":1206
* while f_unhandled is not None:
* filename = f_unhandled.f_code.co_filename
* name = splitext(basename(filename))[0] # <<<<<<<<<<<<<<
* if name == 'threading':
* if f_unhandled.f_code.co_name in ('__bootstrap', '_bootstrap'):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1207, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_basename); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1207, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_basename); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) {
@@ -24250,7 +24250,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_5 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_7, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1207, __pyx_L1_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -24266,53 +24266,53 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_6, __pyx_t_5) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_5);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1207, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1207, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(0, 1207, __pyx_L1_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_XDECREF_SET(__pyx_v_name, ((PyObject*)__pyx_t_3));
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1208
+ /* "_pydevd_bundle/pydevd_cython.pyx":1207
* filename = f_unhandled.f_code.co_filename
* name = splitext(basename(filename))[0]
* if name == 'threading': # <<<<<<<<<<<<<<
* if f_unhandled.f_code.co_name in ('__bootstrap', '_bootstrap'):
* # We need __bootstrap_inner, not __bootstrap.
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_name, __pyx_n_s_threading, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1208, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_name, __pyx_n_s_threading, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1207, __pyx_L1_error)
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1209
+ /* "_pydevd_bundle/pydevd_cython.pyx":1208
* name = splitext(basename(filename))[0]
* if name == 'threading':
* if f_unhandled.f_code.co_name in ('__bootstrap', '_bootstrap'): # <<<<<<<<<<<<<<
* # We need __bootstrap_inner, not __bootstrap.
* return None, False
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1209, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1208, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_co_name); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1209, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_co_name); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1208, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_4, __pyx_n_s_bootstrap, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1209, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_4, __pyx_n_s_bootstrap, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1208, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
goto __pyx_L7_bool_binop_done;
}
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_4, __pyx_n_s_bootstrap_2, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1209, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_4, __pyx_n_s_bootstrap_2, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1208, __pyx_L1_error)
__pyx_t_1 = __pyx_t_2;
__pyx_L7_bool_binop_done:;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1211
+ /* "_pydevd_bundle/pydevd_cython.pyx":1210
* if f_unhandled.f_code.co_name in ('__bootstrap', '_bootstrap'):
* # We need __bootstrap_inner, not __bootstrap.
* return None, False # <<<<<<<<<<<<<<
@@ -24324,7 +24324,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_r = __pyx_tuple__6;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1209
+ /* "_pydevd_bundle/pydevd_cython.pyx":1208
* name = splitext(basename(filename))[0]
* if name == 'threading':
* if f_unhandled.f_code.co_name in ('__bootstrap', '_bootstrap'): # <<<<<<<<<<<<<<
@@ -24333,41 +24333,41 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1213
+ /* "_pydevd_bundle/pydevd_cython.pyx":1212
* return None, False
*
* elif f_unhandled.f_code.co_name in ('__bootstrap_inner', '_bootstrap_inner'): # <<<<<<<<<<<<<<
- * # Note: be careful not to use threading.currentThread to avoid creating a dummy thread.
+ * # Note: be careful not to use threading.current_thread to avoid creating a dummy thread.
* t = f_unhandled.f_locals.get('self')
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1213, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_co_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1213, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_co_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_bootstrap_inner, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1213, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_bootstrap_inner, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1212, __pyx_L1_error)
if (!__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_bootstrap_inner_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1213, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_bootstrap_inner_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1212, __pyx_L1_error)
__pyx_t_2 = __pyx_t_1;
__pyx_L9_bool_binop_done:;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1215
+ /* "_pydevd_bundle/pydevd_cython.pyx":1214
* elif f_unhandled.f_code.co_name in ('__bootstrap_inner', '_bootstrap_inner'):
- * # Note: be careful not to use threading.currentThread to avoid creating a dummy thread.
+ * # Note: be careful not to use threading.current_thread to avoid creating a dummy thread.
* t = f_unhandled.f_locals.get('self') # <<<<<<<<<<<<<<
* force_only_unhandled_tracer = True
* if t is not None and isinstance(t, threading.Thread):
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1215, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1215, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
@@ -24382,14 +24382,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_n_s_self) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_n_s_self);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1215, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF_SET(__pyx_v_t, __pyx_t_3);
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1216
- * # Note: be careful not to use threading.currentThread to avoid creating a dummy thread.
+ /* "_pydevd_bundle/pydevd_cython.pyx":1215
+ * # Note: be careful not to use threading.current_thread to avoid creating a dummy thread.
* t = f_unhandled.f_locals.get('self')
* force_only_unhandled_tracer = True # <<<<<<<<<<<<<<
* if t is not None and isinstance(t, threading.Thread):
@@ -24397,7 +24397,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
__pyx_v_force_only_unhandled_tracer = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":1217
+ /* "_pydevd_bundle/pydevd_cython.pyx":1216
* t = f_unhandled.f_locals.get('self')
* force_only_unhandled_tracer = True
* if t is not None and isinstance(t, threading.Thread): # <<<<<<<<<<<<<<
@@ -24411,19 +24411,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_1 = __pyx_t_8;
goto __pyx_L12_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1217, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Thread); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1217, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Thread); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_8 = PyObject_IsInstance(__pyx_v_t, __pyx_t_5); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1217, __pyx_L1_error)
+ __pyx_t_8 = PyObject_IsInstance(__pyx_v_t, __pyx_t_5); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1216, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_2 = (__pyx_t_8 != 0);
__pyx_t_1 = __pyx_t_2;
__pyx_L12_bool_binop_done:;
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1218
+ /* "_pydevd_bundle/pydevd_cython.pyx":1217
* force_only_unhandled_tracer = True
* if t is not None and isinstance(t, threading.Thread):
* thread = t # <<<<<<<<<<<<<<
@@ -24433,7 +24433,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__Pyx_INCREF(__pyx_v_t);
__Pyx_DECREF_SET(__pyx_v_thread, __pyx_v_t);
- /* "_pydevd_bundle/pydevd_cython.pyx":1219
+ /* "_pydevd_bundle/pydevd_cython.pyx":1218
* if t is not None and isinstance(t, threading.Thread):
* thread = t
* break # <<<<<<<<<<<<<<
@@ -24442,7 +24442,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
goto __pyx_L4_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":1217
+ /* "_pydevd_bundle/pydevd_cython.pyx":1216
* t = f_unhandled.f_locals.get('self')
* force_only_unhandled_tracer = True
* if t is not None and isinstance(t, threading.Thread): # <<<<<<<<<<<<<<
@@ -24451,16 +24451,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1213
+ /* "_pydevd_bundle/pydevd_cython.pyx":1212
* return None, False
*
* elif f_unhandled.f_code.co_name in ('__bootstrap_inner', '_bootstrap_inner'): # <<<<<<<<<<<<<<
- * # Note: be careful not to use threading.currentThread to avoid creating a dummy thread.
+ * # Note: be careful not to use threading.current_thread to avoid creating a dummy thread.
* t = f_unhandled.f_locals.get('self')
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1208
+ /* "_pydevd_bundle/pydevd_cython.pyx":1207
* filename = f_unhandled.f_code.co_filename
* name = splitext(basename(filename))[0]
* if name == 'threading': # <<<<<<<<<<<<<<
@@ -24470,34 +24470,34 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
goto __pyx_L5;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1221
+ /* "_pydevd_bundle/pydevd_cython.pyx":1220
* break
*
* elif name == 'pydev_monkey': # <<<<<<<<<<<<<<
* if f_unhandled.f_code.co_name == '__call__':
* force_only_unhandled_tracer = True
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_name, __pyx_n_s_pydev_monkey, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1221, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_name, __pyx_n_s_pydev_monkey, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1220, __pyx_L1_error)
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1222
+ /* "_pydevd_bundle/pydevd_cython.pyx":1221
*
* elif name == 'pydev_monkey':
* if f_unhandled.f_code.co_name == '__call__': # <<<<<<<<<<<<<<
* force_only_unhandled_tracer = True
* break
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1222, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1222, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_call_2, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1222, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_call_2, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1221, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1223
+ /* "_pydevd_bundle/pydevd_cython.pyx":1222
* elif name == 'pydev_monkey':
* if f_unhandled.f_code.co_name == '__call__':
* force_only_unhandled_tracer = True # <<<<<<<<<<<<<<
@@ -24506,7 +24506,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
__pyx_v_force_only_unhandled_tracer = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":1224
+ /* "_pydevd_bundle/pydevd_cython.pyx":1223
* if f_unhandled.f_code.co_name == '__call__':
* force_only_unhandled_tracer = True
* break # <<<<<<<<<<<<<<
@@ -24515,7 +24515,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
goto __pyx_L4_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":1222
+ /* "_pydevd_bundle/pydevd_cython.pyx":1221
*
* elif name == 'pydev_monkey':
* if f_unhandled.f_code.co_name == '__call__': # <<<<<<<<<<<<<<
@@ -24524,7 +24524,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1221
+ /* "_pydevd_bundle/pydevd_cython.pyx":1220
* break
*
* elif name == 'pydev_monkey': # <<<<<<<<<<<<<<
@@ -24534,43 +24534,43 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
goto __pyx_L5;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1226
+ /* "_pydevd_bundle/pydevd_cython.pyx":1225
* break
*
* elif name == 'pydevd': # <<<<<<<<<<<<<<
* if f_unhandled.f_code.co_name in ('run', 'main'):
* # We need to get to _exec
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_name, __pyx_n_s_pydevd, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1226, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_name, __pyx_n_s_pydevd, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1225, __pyx_L1_error)
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1227
+ /* "_pydevd_bundle/pydevd_cython.pyx":1226
*
* elif name == 'pydevd':
* if f_unhandled.f_code.co_name in ('run', 'main'): # <<<<<<<<<<<<<<
* # We need to get to _exec
* return None, False
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1227, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_co_name); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1227, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_co_name); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_run, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1227, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_run, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1226, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
goto __pyx_L16_bool_binop_done;
}
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_main, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1227, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_main, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1226, __pyx_L1_error)
__pyx_t_1 = __pyx_t_2;
__pyx_L16_bool_binop_done:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1229
+ /* "_pydevd_bundle/pydevd_cython.pyx":1228
* if f_unhandled.f_code.co_name in ('run', 'main'):
* # We need to get to _exec
* return None, False # <<<<<<<<<<<<<<
@@ -24582,7 +24582,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_r = __pyx_tuple__6;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1227
+ /* "_pydevd_bundle/pydevd_cython.pyx":1226
*
* elif name == 'pydevd':
* if f_unhandled.f_code.co_name in ('run', 'main'): # <<<<<<<<<<<<<<
@@ -24591,23 +24591,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1231
+ /* "_pydevd_bundle/pydevd_cython.pyx":1230
* return None, False
*
* if f_unhandled.f_code.co_name == '_exec': # <<<<<<<<<<<<<<
* force_only_unhandled_tracer = True
* break
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1231, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1231, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_exec, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1231, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_exec, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1230, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1232
+ /* "_pydevd_bundle/pydevd_cython.pyx":1231
*
* if f_unhandled.f_code.co_name == '_exec':
* force_only_unhandled_tracer = True # <<<<<<<<<<<<<<
@@ -24616,7 +24616,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
__pyx_v_force_only_unhandled_tracer = 1;
- /* "_pydevd_bundle/pydevd_cython.pyx":1233
+ /* "_pydevd_bundle/pydevd_cython.pyx":1232
* if f_unhandled.f_code.co_name == '_exec':
* force_only_unhandled_tracer = True
* break # <<<<<<<<<<<<<<
@@ -24625,7 +24625,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
goto __pyx_L4_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":1231
+ /* "_pydevd_bundle/pydevd_cython.pyx":1230
* return None, False
*
* if f_unhandled.f_code.co_name == '_exec': # <<<<<<<<<<<<<<
@@ -24634,7 +24634,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1226
+ /* "_pydevd_bundle/pydevd_cython.pyx":1225
* break
*
* elif name == 'pydevd': # <<<<<<<<<<<<<<
@@ -24644,21 +24644,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
goto __pyx_L5;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1235
+ /* "_pydevd_bundle/pydevd_cython.pyx":1234
* break
*
* elif f_unhandled.f_back is None: # <<<<<<<<<<<<<<
* break
*
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_back); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1235, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_back); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1234, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_2 = (__pyx_t_3 == Py_None);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1236
+ /* "_pydevd_bundle/pydevd_cython.pyx":1235
*
* elif f_unhandled.f_back is None:
* break # <<<<<<<<<<<<<<
@@ -24667,7 +24667,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
goto __pyx_L4_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":1235
+ /* "_pydevd_bundle/pydevd_cython.pyx":1234
* break
*
* elif f_unhandled.f_back is None: # <<<<<<<<<<<<<<
@@ -24677,21 +24677,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_L5:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1238
+ /* "_pydevd_bundle/pydevd_cython.pyx":1237
* break
*
* f_unhandled = f_unhandled.f_back # <<<<<<<<<<<<<<
*
* if thread is None:
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_back); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1238, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_back); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_f_unhandled, __pyx_t_3);
__pyx_t_3 = 0;
}
__pyx_L4_break:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1240
+ /* "_pydevd_bundle/pydevd_cython.pyx":1239
* f_unhandled = f_unhandled.f_back
*
* if thread is None: # <<<<<<<<<<<<<<
@@ -24702,36 +24702,36 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1243
+ /* "_pydevd_bundle/pydevd_cython.pyx":1242
* # Important: don't call threadingCurrentThread if we're in the threading module
* # to avoid creating dummy threads.
* if threading_get_ident is not None: # <<<<<<<<<<<<<<
* thread = threading._active.get(threading_get_ident())
* if thread is None:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_threading_get_ident); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1243, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_threading_get_ident); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1242, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_2 = (__pyx_t_3 != Py_None);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1244
+ /* "_pydevd_bundle/pydevd_cython.pyx":1243
* # to avoid creating dummy threads.
* if threading_get_ident is not None:
* thread = threading._active.get(threading_get_ident()) # <<<<<<<<<<<<<<
* if thread is None:
* if IS_WINDOWS and f_unhandled and not f_unhandled.f_code.co_filename.startswith('threading'):
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1244, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_active); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1244, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_active); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1244, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_threading_get_ident); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1244, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_threading_get_ident); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) {
@@ -24745,7 +24745,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1244, __pyx_L1_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -24761,13 +24761,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_6, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1244, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_thread, __pyx_t_3);
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1245
+ /* "_pydevd_bundle/pydevd_cython.pyx":1244
* if threading_get_ident is not None:
* thread = threading._active.get(threading_get_ident())
* if thread is None: # <<<<<<<<<<<<<<
@@ -24778,34 +24778,34 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1246
+ /* "_pydevd_bundle/pydevd_cython.pyx":1245
* thread = threading._active.get(threading_get_ident())
* if thread is None:
* if IS_WINDOWS and f_unhandled and not f_unhandled.f_code.co_filename.startswith('threading'): # <<<<<<<<<<<<<<
* # When attaching to a process on Windows, its main thread ID may not be in `threading._active`
* # unless the module imports `threading` by its own.
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_IS_WINDOWS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_IS_WINDOWS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L23_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_f_unhandled); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_f_unhandled); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1245, __pyx_L1_error)
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L23_bool_binop_done;
}
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_startswith); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_startswith); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
@@ -24820,24 +24820,24 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, __pyx_n_s_threading) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_n_s_threading);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1246, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1245, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_8 = ((!__pyx_t_1) != 0);
__pyx_t_2 = __pyx_t_8;
__pyx_L23_bool_binop_done:;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1249
+ /* "_pydevd_bundle/pydevd_cython.pyx":1248
* # When attaching to a process on Windows, its main thread ID may not be in `threading._active`
* # unless the module imports `threading` by its own.
* thread = threadingCurrentThread() # <<<<<<<<<<<<<<
* else:
* return None, False
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threadingCurrentThread); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1249, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threadingCurrentThread); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
@@ -24851,13 +24851,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1249, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_thread, __pyx_t_3);
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1246
+ /* "_pydevd_bundle/pydevd_cython.pyx":1245
* thread = threading._active.get(threading_get_ident())
* if thread is None:
* if IS_WINDOWS and f_unhandled and not f_unhandled.f_code.co_filename.startswith('threading'): # <<<<<<<<<<<<<<
@@ -24867,7 +24867,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
goto __pyx_L22;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1251
+ /* "_pydevd_bundle/pydevd_cython.pyx":1250
* thread = threadingCurrentThread()
* else:
* return None, False # <<<<<<<<<<<<<<
@@ -24882,7 +24882,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_L22:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1245
+ /* "_pydevd_bundle/pydevd_cython.pyx":1244
* if threading_get_ident is not None:
* thread = threading._active.get(threading_get_ident())
* if thread is None: # <<<<<<<<<<<<<<
@@ -24891,7 +24891,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1243
+ /* "_pydevd_bundle/pydevd_cython.pyx":1242
* # Important: don't call threadingCurrentThread if we're in the threading module
* # to avoid creating dummy threads.
* if threading_get_ident is not None: # <<<<<<<<<<<<<<
@@ -24901,7 +24901,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
goto __pyx_L20;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1254
+ /* "_pydevd_bundle/pydevd_cython.pyx":1253
* else:
* # Jython does not have threading.get_ident().
* thread = threadingCurrentThread() # <<<<<<<<<<<<<<
@@ -24909,7 +24909,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
* if getattr(thread, 'pydev_do_not_trace', None):
*/
/*else*/ {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threadingCurrentThread); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1254, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threadingCurrentThread); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
@@ -24923,7 +24923,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1254, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_thread, __pyx_t_3);
@@ -24931,7 +24931,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_L20:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1240
+ /* "_pydevd_bundle/pydevd_cython.pyx":1239
* f_unhandled = f_unhandled.f_back
*
* if thread is None: # <<<<<<<<<<<<<<
@@ -24940,27 +24940,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1256
+ /* "_pydevd_bundle/pydevd_cython.pyx":1255
* thread = threadingCurrentThread()
*
* if getattr(thread, 'pydev_do_not_trace', None): # <<<<<<<<<<<<<<
* SetTrace(None)
* return None, False
*/
- __pyx_t_3 = __Pyx_GetAttr3(__pyx_v_thread, __pyx_n_s_pydev_do_not_trace, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1256, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetAttr3(__pyx_v_thread, __pyx_n_s_pydev_do_not_trace, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1255, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1256, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1255, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1257
+ /* "_pydevd_bundle/pydevd_cython.pyx":1256
*
* if getattr(thread, 'pydev_do_not_trace', None):
* SetTrace(None) # <<<<<<<<<<<<<<
* return None, False
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_SetTrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1257, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_SetTrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
@@ -24974,12 +24974,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_4, Py_None) : __Pyx_PyObject_CallOneArg(__pyx_t_5, Py_None);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1257, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1258
+ /* "_pydevd_bundle/pydevd_cython.pyx":1257
* if getattr(thread, 'pydev_do_not_trace', None):
* SetTrace(None)
* return None, False # <<<<<<<<<<<<<<
@@ -24991,7 +24991,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_r = __pyx_tuple__6;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1256
+ /* "_pydevd_bundle/pydevd_cython.pyx":1255
* thread = threadingCurrentThread()
*
* if getattr(thread, 'pydev_do_not_trace', None): # <<<<<<<<<<<<<<
@@ -25000,7 +25000,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1260
+ /* "_pydevd_bundle/pydevd_cython.pyx":1259
* return None, False
*
* try: # <<<<<<<<<<<<<<
@@ -25016,19 +25016,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__Pyx_XGOTREF(__pyx_t_11);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1261
+ /* "_pydevd_bundle/pydevd_cython.pyx":1260
*
* try:
* additional_info = thread.additional_info # <<<<<<<<<<<<<<
* if additional_info is None:
* raise AttributeError()
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_thread, __pyx_n_s_additional_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1261, __pyx_L27_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_thread, __pyx_n_s_additional_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1260, __pyx_L27_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_additional_info = __pyx_t_3;
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1262
+ /* "_pydevd_bundle/pydevd_cython.pyx":1261
* try:
* additional_info = thread.additional_info
* if additional_info is None: # <<<<<<<<<<<<<<
@@ -25039,20 +25039,20 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_8 = (__pyx_t_2 != 0);
if (unlikely(__pyx_t_8)) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1263
+ /* "_pydevd_bundle/pydevd_cython.pyx":1262
* additional_info = thread.additional_info
* if additional_info is None:
* raise AttributeError() # <<<<<<<<<<<<<<
* except:
* additional_info = set_additional_thread_info(thread)
*/
- __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_builtin_AttributeError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1263, __pyx_L27_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_builtin_AttributeError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1262, __pyx_L27_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(0, 1263, __pyx_L27_error)
+ __PYX_ERR(0, 1262, __pyx_L27_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1262
+ /* "_pydevd_bundle/pydevd_cython.pyx":1261
* try:
* additional_info = thread.additional_info
* if additional_info is None: # <<<<<<<<<<<<<<
@@ -25061,7 +25061,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1260
+ /* "_pydevd_bundle/pydevd_cython.pyx":1259
* return None, False
*
* try: # <<<<<<<<<<<<<<
@@ -25080,7 +25080,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1264
+ /* "_pydevd_bundle/pydevd_cython.pyx":1263
* if additional_info is None:
* raise AttributeError()
* except: # <<<<<<<<<<<<<<
@@ -25089,19 +25089,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.fix_top_level_trace_and_get_trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 1264, __pyx_L29_except_error)
+ if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_4) < 0) __PYX_ERR(0, 1263, __pyx_L29_except_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_4);
- /* "_pydevd_bundle/pydevd_cython.pyx":1265
+ /* "_pydevd_bundle/pydevd_cython.pyx":1264
* raise AttributeError()
* except:
* additional_info = set_additional_thread_info(thread) # <<<<<<<<<<<<<<
*
* # print('enter thread tracer', thread, get_current_thread_id(thread))
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_set_additional_thread_info); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1265, __pyx_L29_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_set_additional_thread_info); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1264, __pyx_L29_except_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_12 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) {
@@ -25115,7 +25115,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_6 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_12, __pyx_v_thread) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_v_thread);
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1265, __pyx_L29_except_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1264, __pyx_L29_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF_SET(__pyx_v_additional_info, __pyx_t_6);
@@ -25127,7 +25127,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_L29_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1260
+ /* "_pydevd_bundle/pydevd_cython.pyx":1259
* return None, False
*
* try: # <<<<<<<<<<<<<<
@@ -25147,18 +25147,18 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_L32_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1268
+ /* "_pydevd_bundle/pydevd_cython.pyx":1267
*
* # print('enter thread tracer', thread, get_current_thread_id(thread))
* args = (py_db, thread, additional_info, global_cache_skips, global_cache_frame_skips) # <<<<<<<<<<<<<<
*
* if f_unhandled is not None:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_global_cache_skips); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1268, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_global_cache_skips); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1267, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_global_cache_frame_skips); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1268, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_global_cache_frame_skips); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1267, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_3 = PyTuple_New(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1268, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1267, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_py_db);
__Pyx_GIVEREF(__pyx_v_py_db);
@@ -25178,7 +25178,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_v_args = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1270
+ /* "_pydevd_bundle/pydevd_cython.pyx":1269
* args = (py_db, thread, additional_info, global_cache_skips, global_cache_frame_skips)
*
* if f_unhandled is not None: # <<<<<<<<<<<<<<
@@ -25189,14 +25189,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_2 = (__pyx_t_8 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1271
+ /* "_pydevd_bundle/pydevd_cython.pyx":1270
*
* if f_unhandled is not None:
* if f_unhandled.f_back is None and not force_only_unhandled_tracer: # <<<<<<<<<<<<<<
* # Happens when we attach to a running program.
* top_level_thread_tracer = TopLevelThreadTracerNoBackFrame(ThreadTracer(args), args)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_back); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1271, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_back); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1270, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_8 = (__pyx_t_3 == Py_None);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -25211,16 +25211,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_L38_bool_binop_done:;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1273
+ /* "_pydevd_bundle/pydevd_cython.pyx":1272
* if f_unhandled.f_back is None and not force_only_unhandled_tracer:
* # Happens when we attach to a running program.
* top_level_thread_tracer = TopLevelThreadTracerNoBackFrame(ThreadTracer(args), args) # <<<<<<<<<<<<<<
* else:
* # Stop in some internal place to report about unhandled exceptions
*/
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_v_args); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_v_args); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1272, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1272, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -25228,13 +25228,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__Pyx_GIVEREF(__pyx_v_args);
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_args);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame), __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame), __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1272, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_top_level_thread_tracer = __pyx_t_3;
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1271
+ /* "_pydevd_bundle/pydevd_cython.pyx":1270
*
* if f_unhandled is not None:
* if f_unhandled.f_back is None and not force_only_unhandled_tracer: # <<<<<<<<<<<<<<
@@ -25244,7 +25244,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
goto __pyx_L37;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1276
+ /* "_pydevd_bundle/pydevd_cython.pyx":1275
* else:
* # Stop in some internal place to report about unhandled exceptions
* top_level_thread_tracer = TopLevelThreadTracerOnlyUnhandledExceptions(args) # <<<<<<<<<<<<<<
@@ -25252,30 +25252,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
* thread._top_level_thread_tracer = top_level_thread_tracer # Hack for cython to keep it alive while the thread is alive (just the method in the SetTrace is not enough).
*/
/*else*/ {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions), __pyx_v_args); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1276, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions), __pyx_v_args); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1275, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_top_level_thread_tracer = __pyx_t_3;
__pyx_t_3 = 0;
}
__pyx_L37:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1278
+ /* "_pydevd_bundle/pydevd_cython.pyx":1277
* top_level_thread_tracer = TopLevelThreadTracerOnlyUnhandledExceptions(args)
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* thread._top_level_thread_tracer = top_level_thread_tracer # Hack for cython to keep it alive while the thread is alive (just the method in the SetTrace is not enough). # <<<<<<<<<<<<<<
* # ELSE
* # ENDIF
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_thread, __pyx_n_s_top_level_thread_tracer, __pyx_v_top_level_thread_tracer) < 0) __PYX_ERR(0, 1278, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_thread, __pyx_n_s_top_level_thread_tracer, __pyx_v_top_level_thread_tracer) < 0) __PYX_ERR(0, 1277, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1282
+ /* "_pydevd_bundle/pydevd_cython.pyx":1281
* # ENDIF
* # print(' --> found to trace unhandled', f_unhandled.f_code.co_name, f_unhandled.f_code.co_filename, f_unhandled.f_code.co_firstlineno)
* f_trace = top_level_thread_tracer.get_trace_dispatch_func() # <<<<<<<<<<<<<<
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* f_unhandled.f_trace = SafeCallWrapper(f_trace)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_top_level_thread_tracer, __pyx_n_s_get_trace_dispatch_func); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1282, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_top_level_thread_tracer, __pyx_n_s_get_trace_dispatch_func); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1281, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
@@ -25289,25 +25289,25 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
}
__pyx_t_3 = (__pyx_t_4) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4) : __Pyx_PyObject_CallNoArg(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1282, __pyx_L1_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1281, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_f_trace = __pyx_t_3;
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1284
+ /* "_pydevd_bundle/pydevd_cython.pyx":1283
* f_trace = top_level_thread_tracer.get_trace_dispatch_func()
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* f_unhandled.f_trace = SafeCallWrapper(f_trace) # <<<<<<<<<<<<<<
* # ELSE
* # f_unhandled.f_trace = f_trace
*/
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_v_f_trace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1284, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_v_f_trace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_trace, __pyx_t_3) < 0) __PYX_ERR(0, 1284, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_trace, __pyx_t_3) < 0) __PYX_ERR(0, 1283, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1289
+ /* "_pydevd_bundle/pydevd_cython.pyx":1288
* # ENDIF
*
* if frame is f_unhandled: # <<<<<<<<<<<<<<
@@ -25318,7 +25318,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1290
+ /* "_pydevd_bundle/pydevd_cython.pyx":1289
*
* if frame is f_unhandled:
* return f_unhandled.f_trace, False # <<<<<<<<<<<<<<
@@ -25326,9 +25326,9 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
* thread_tracer = ThreadTracer(args)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_trace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1290, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_f_unhandled, __pyx_n_s_f_trace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1290, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -25340,7 +25340,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1289
+ /* "_pydevd_bundle/pydevd_cython.pyx":1288
* # ENDIF
*
* if frame is f_unhandled: # <<<<<<<<<<<<<<
@@ -25349,7 +25349,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1270
+ /* "_pydevd_bundle/pydevd_cython.pyx":1269
* args = (py_db, thread, additional_info, global_cache_skips, global_cache_frame_skips)
*
* if f_unhandled is not None: # <<<<<<<<<<<<<<
@@ -25358,28 +25358,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1292
+ /* "_pydevd_bundle/pydevd_cython.pyx":1291
* return f_unhandled.f_trace, False
*
* thread_tracer = ThreadTracer(args) # <<<<<<<<<<<<<<
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* thread._tracer = thread_tracer # Hack for cython to keep it alive while the thread is alive (just the method in the SetTrace is not enough).
*/
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1292, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_v_thread_tracer = ((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_ThreadTracer *)__pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1294
+ /* "_pydevd_bundle/pydevd_cython.pyx":1293
* thread_tracer = ThreadTracer(args)
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* thread._tracer = thread_tracer # Hack for cython to keep it alive while the thread is alive (just the method in the SetTrace is not enough). # <<<<<<<<<<<<<<
* # ELSE
* # ENDIF
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_thread, __pyx_n_s_tracer, ((PyObject *)__pyx_v_thread_tracer)) < 0) __PYX_ERR(0, 1294, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_thread, __pyx_n_s_tracer, ((PyObject *)__pyx_v_thread_tracer)) < 0) __PYX_ERR(0, 1293, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1297
+ /* "_pydevd_bundle/pydevd_cython.pyx":1296
* # ELSE
* # ENDIF
* return thread_tracer, True # <<<<<<<<<<<<<<
@@ -25387,7 +25387,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
*
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1297, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1296, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_thread_tracer));
__Pyx_GIVEREF(((PyObject *)__pyx_v_thread_tracer));
@@ -25399,7 +25399,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1187
+ /* "_pydevd_bundle/pydevd_cython.pyx":1186
*
*
* def fix_top_level_trace_and_get_trace_func(py_db, frame): # <<<<<<<<<<<<<<
@@ -25433,7 +25433,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12fix_top_level_trace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1301
+/* "_pydevd_bundle/pydevd_cython.pyx":1300
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def trace_dispatch(py_db, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -25482,23 +25482,23 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_15trace_dispatch(PyOb
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_frame)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, 1); __PYX_ERR(0, 1301, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, 1); __PYX_ERR(0, 1300, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, 2); __PYX_ERR(0, 1301, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, 2); __PYX_ERR(0, 1300, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, 3); __PYX_ERR(0, 1301, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, 3); __PYX_ERR(0, 1300, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_dispatch") < 0)) __PYX_ERR(0, 1301, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_dispatch") < 0)) __PYX_ERR(0, 1300, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
goto __pyx_L5_argtuple_error;
@@ -25515,13 +25515,13 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_15trace_dispatch(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1301, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1300, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.trace_dispatch", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 1301, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), (&PyString_Type), 1, "event", 1))) __PYX_ERR(0, 1300, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(__pyx_self, __pyx_v_py_db, __pyx_v_frame, __pyx_v_event, __pyx_v_arg);
/* function exit code */
@@ -25552,14 +25552,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("trace_dispatch", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1305
+ /* "_pydevd_bundle/pydevd_cython.pyx":1304
* # def trace_dispatch(py_db, frame, event, arg):
* # ENDIF
* if fix_top_level_trace_and_get_trace_func is None or threadingCurrentThread is None or splitext is None: # <<<<<<<<<<<<<<
* # When the application is being exited with live daemon threads, it's possible that some
* # of the names we require are already None, so, check that tokens we need are there.
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_fix_top_level_trace_and_get_trac); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1305, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_fix_top_level_trace_and_get_trac); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = (__pyx_t_2 == Py_None);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -25569,7 +25569,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_t_1 = __pyx_t_4;
goto __pyx_L4_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_threadingCurrentThread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1305, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_threadingCurrentThread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = (__pyx_t_2 == Py_None);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -25579,7 +25579,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_t_1 = __pyx_t_3;
goto __pyx_L4_bool_binop_done;
}
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1305, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = (__pyx_t_2 == Py_None);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -25588,7 +25588,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1323
+ /* "_pydevd_bundle/pydevd_cython.pyx":1322
* # frame = frame.f_back
* # print(msg)
* return None # <<<<<<<<<<<<<<
@@ -25599,7 +25599,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1305
+ /* "_pydevd_bundle/pydevd_cython.pyx":1304
* # def trace_dispatch(py_db, frame, event, arg):
* # ENDIF
* if fix_top_level_trace_and_get_trace_func is None or threadingCurrentThread is None or splitext is None: # <<<<<<<<<<<<<<
@@ -25608,14 +25608,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1324
+ /* "_pydevd_bundle/pydevd_cython.pyx":1323
* # print(msg)
* return None
* thread_trace_func, apply_to_settrace = fix_top_level_trace_and_get_trace_func(py_db, frame) # <<<<<<<<<<<<<<
* if thread_trace_func is None:
* if event != 'call': frame.f_trace = NO_FTRACE
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_fix_top_level_trace_and_get_trac); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_fix_top_level_trace_and_get_trac); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = NULL;
__pyx_t_7 = 0;
@@ -25632,7 +25632,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_py_db, __pyx_v_frame};
- __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
@@ -25640,13 +25640,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_py_db, __pyx_v_frame};
- __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
#endif
{
- __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -25657,7 +25657,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__Pyx_INCREF(__pyx_v_frame);
__Pyx_GIVEREF(__pyx_v_frame);
PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_v_frame);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
@@ -25668,7 +25668,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 1324, __pyx_L1_error)
+ __PYX_ERR(0, 1323, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
@@ -25681,15 +25681,15 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_8);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1324, __pyx_L1_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_9 = Py_TYPE(__pyx_t_6)->tp_iternext;
@@ -25697,7 +25697,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_8 = __pyx_t_9(__pyx_t_6); if (unlikely(!__pyx_t_8)) goto __pyx_L7_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_6), 2) < 0) __PYX_ERR(0, 1324, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_6), 2) < 0) __PYX_ERR(0, 1323, __pyx_L1_error)
__pyx_t_9 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L8_unpacking_done;
@@ -25705,7 +25705,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_9 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 1324, __pyx_L1_error)
+ __PYX_ERR(0, 1323, __pyx_L1_error)
__pyx_L8_unpacking_done:;
}
__pyx_v_thread_trace_func = __pyx_t_5;
@@ -25713,7 +25713,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_v_apply_to_settrace = __pyx_t_8;
__pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1325
+ /* "_pydevd_bundle/pydevd_cython.pyx":1324
* return None
* thread_trace_func, apply_to_settrace = fix_top_level_trace_and_get_trace_func(py_db, frame)
* if thread_trace_func is None: # <<<<<<<<<<<<<<
@@ -25724,23 +25724,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_t_4 = (__pyx_t_1 != 0);
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1326
+ /* "_pydevd_bundle/pydevd_cython.pyx":1325
* thread_trace_func, apply_to_settrace = fix_top_level_trace_and_get_trace_func(py_db, frame)
* if thread_trace_func is None:
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
* if apply_to_settrace:
*/
- __pyx_t_4 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1326, __pyx_L1_error)
+ __pyx_t_4 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1325, __pyx_L1_error)
__pyx_t_1 = (__pyx_t_4 != 0);
if (__pyx_t_1) {
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1326, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1325, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_2) < 0) __PYX_ERR(0, 1326, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_2) < 0) __PYX_ERR(0, 1325, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1327
+ /* "_pydevd_bundle/pydevd_cython.pyx":1326
* if thread_trace_func is None:
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -25751,7 +25751,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1325
+ /* "_pydevd_bundle/pydevd_cython.pyx":1324
* return None
* thread_trace_func, apply_to_settrace = fix_top_level_trace_and_get_trace_func(py_db, frame)
* if thread_trace_func is None: # <<<<<<<<<<<<<<
@@ -25760,24 +25760,24 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1328
+ /* "_pydevd_bundle/pydevd_cython.pyx":1327
* if event != 'call': frame.f_trace = NO_FTRACE
* return None
* if apply_to_settrace: # <<<<<<<<<<<<<<
* py_db.enable_tracing(thread_trace_func)
* return thread_trace_func(frame, event, arg)
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_apply_to_settrace); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1328, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_apply_to_settrace); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1327, __pyx_L1_error)
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1329
+ /* "_pydevd_bundle/pydevd_cython.pyx":1328
* return None
* if apply_to_settrace:
* py_db.enable_tracing(thread_trace_func) # <<<<<<<<<<<<<<
* return thread_trace_func(frame, event, arg)
*
*/
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_enable_tracing); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1329, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_enable_tracing); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1328, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_5 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
@@ -25791,12 +25791,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
}
__pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_5, __pyx_v_thread_trace_func) : __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_v_thread_trace_func);
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1329, __pyx_L1_error)
+ if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1328, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1328
+ /* "_pydevd_bundle/pydevd_cython.pyx":1327
* if event != 'call': frame.f_trace = NO_FTRACE
* return None
* if apply_to_settrace: # <<<<<<<<<<<<<<
@@ -25805,7 +25805,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1330
+ /* "_pydevd_bundle/pydevd_cython.pyx":1329
* if apply_to_settrace:
* py_db.enable_tracing(thread_trace_func)
* return thread_trace_func(frame, event, arg) # <<<<<<<<<<<<<<
@@ -25829,7 +25829,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1329, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
@@ -25837,13 +25837,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1329, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
#endif
{
- __pyx_t_6 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -25857,7 +25857,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_7, __pyx_v_arg);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
@@ -25866,7 +25866,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1301
+ /* "_pydevd_bundle/pydevd_cython.pyx":1300
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def trace_dispatch(py_db, frame, str event, arg): # <<<<<<<<<<<<<<
@@ -25890,7 +25890,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_14trace_dispatch(CYTH
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1336
+/* "_pydevd_bundle/pydevd_cython.pyx":1335
* cdef class TopLevelThreadTracerOnlyUnhandledExceptions:
* cdef public tuple _args;
* def __init__(self, tuple args): # <<<<<<<<<<<<<<
@@ -25927,7 +25927,7 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyU
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1336, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1335, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -25938,13 +25938,13 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyU
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1336, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1335, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.TopLevelThreadTracerOnlyUnhandledExceptions.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 1336, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 1335, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyUnhandledExceptions___init__(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions *)__pyx_v_self), __pyx_v_args);
/* function exit code */
@@ -25961,7 +25961,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyU
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1337
+ /* "_pydevd_bundle/pydevd_cython.pyx":1336
* cdef public tuple _args;
* def __init__(self, tuple args):
* self._args = args # <<<<<<<<<<<<<<
@@ -25974,7 +25974,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyU
__Pyx_DECREF(__pyx_v_self->_args);
__pyx_v_self->_args = __pyx_v_args;
- /* "_pydevd_bundle/pydevd_cython.pyx":1336
+ /* "_pydevd_bundle/pydevd_cython.pyx":1335
* cdef class TopLevelThreadTracerOnlyUnhandledExceptions:
* cdef public tuple _args;
* def __init__(self, tuple args): # <<<<<<<<<<<<<<
@@ -25988,7 +25988,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyU
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1345
+/* "_pydevd_bundle/pydevd_cython.pyx":1344
* # ENDIF
*
* def trace_unhandled_exceptions(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -26033,17 +26033,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_unhandled_exceptions", 1, 3, 3, 1); __PYX_ERR(0, 1345, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_unhandled_exceptions", 1, 3, 3, 1); __PYX_ERR(0, 1344, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_unhandled_exceptions", 1, 3, 3, 2); __PYX_ERR(0, 1345, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_unhandled_exceptions", 1, 3, 3, 2); __PYX_ERR(0, 1344, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_unhandled_exceptions") < 0)) __PYX_ERR(0, 1345, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_unhandled_exceptions") < 0)) __PYX_ERR(0, 1344, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -26058,7 +26058,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("trace_unhandled_exceptions", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1345, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_unhandled_exceptions", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1344, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.TopLevelThreadTracerOnlyUnhandledExceptions.trace_unhandled_exceptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -26090,14 +26090,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("trace_unhandled_exceptions", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1348
+ /* "_pydevd_bundle/pydevd_cython.pyx":1347
* # Note that we ignore the frame as this tracing method should only be put in topmost frames already.
* # print('trace_unhandled_exceptions', event, frame.f_code.co_name, frame.f_code.co_filename, frame.f_code.co_firstlineno)
* if event == 'exception' and arg is not None: # <<<<<<<<<<<<<<
* py_db, t, additional_info = self._args[0:3]
* if arg is not None:
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1348, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1347, __pyx_L1_error)
if (__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
@@ -26109,7 +26109,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1349
+ /* "_pydevd_bundle/pydevd_cython.pyx":1348
* # print('trace_unhandled_exceptions', event, frame.f_code.co_name, frame.f_code.co_filename, frame.f_code.co_firstlineno)
* if event == 'exception' and arg is not None:
* py_db, t, additional_info = self._args[0:3] # <<<<<<<<<<<<<<
@@ -26118,9 +26118,9 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1349, __pyx_L1_error)
+ __PYX_ERR(0, 1348, __pyx_L1_error)
}
- __pyx_t_4 = __Pyx_PyTuple_GetSlice(__pyx_v_self->_args, 0, 3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1349, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyTuple_GetSlice(__pyx_v_self->_args, 0, 3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if (1) {
PyObject* sequence = __pyx_t_4;
@@ -26128,7 +26128,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 1349, __pyx_L1_error)
+ __PYX_ERR(0, 1348, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
@@ -26138,11 +26138,11 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(__pyx_t_7);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1349, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1349, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1349, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -26154,7 +26154,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
__pyx_v_additional_info = __pyx_t_7;
__pyx_t_7 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1350
+ /* "_pydevd_bundle/pydevd_cython.pyx":1349
* if event == 'exception' and arg is not None:
* py_db, t, additional_info = self._args[0:3]
* if arg is not None: # <<<<<<<<<<<<<<
@@ -26165,37 +26165,37 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
__pyx_t_3 = (__pyx_t_1 != 0);
if (__pyx_t_3) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1351
+ /* "_pydevd_bundle/pydevd_cython.pyx":1350
* py_db, t, additional_info = self._args[0:3]
* if arg is not None:
* if not additional_info.suspended_at_unhandled: # <<<<<<<<<<<<<<
* additional_info.suspended_at_unhandled = True
*
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_additional_info, __pyx_n_s_suspended_at_unhandled); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1351, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_additional_info, __pyx_n_s_suspended_at_unhandled); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1350, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1351, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1350, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_1 = ((!__pyx_t_3) != 0);
if (__pyx_t_1) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1352
+ /* "_pydevd_bundle/pydevd_cython.pyx":1351
* if arg is not None:
* if not additional_info.suspended_at_unhandled:
* additional_info.suspended_at_unhandled = True # <<<<<<<<<<<<<<
*
* stop_on_unhandled_exception(py_db, t, additional_info, arg)
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_additional_info, __pyx_n_s_suspended_at_unhandled, Py_True) < 0) __PYX_ERR(0, 1352, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_additional_info, __pyx_n_s_suspended_at_unhandled, Py_True) < 0) __PYX_ERR(0, 1351, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1354
+ /* "_pydevd_bundle/pydevd_cython.pyx":1353
* additional_info.suspended_at_unhandled = True
*
* stop_on_unhandled_exception(py_db, t, additional_info, arg) # <<<<<<<<<<<<<<
*
* # No need to reset frame.f_trace to keep the same trace function.
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_6 = NULL;
__pyx_t_8 = 0;
@@ -26212,7 +26212,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_6, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_arg};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 4+__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 4+__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
@@ -26220,13 +26220,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_6, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_arg};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 4+__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_8, 4+__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
#endif
{
- __pyx_t_5 = PyTuple_New(4+__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(4+__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL;
@@ -26243,14 +26243,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_8, __pyx_v_arg);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1351
+ /* "_pydevd_bundle/pydevd_cython.pyx":1350
* py_db, t, additional_info = self._args[0:3]
* if arg is not None:
* if not additional_info.suspended_at_unhandled: # <<<<<<<<<<<<<<
@@ -26259,7 +26259,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1350
+ /* "_pydevd_bundle/pydevd_cython.pyx":1349
* if event == 'exception' and arg is not None:
* py_db, t, additional_info = self._args[0:3]
* if arg is not None: # <<<<<<<<<<<<<<
@@ -26268,7 +26268,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1348
+ /* "_pydevd_bundle/pydevd_cython.pyx":1347
* # Note that we ignore the frame as this tracing method should only be put in topmost frames already.
* # print('trace_unhandled_exceptions', event, frame.f_code.co_name, frame.f_code.co_filename, frame.f_code.co_firstlineno)
* if event == 'exception' and arg is not None: # <<<<<<<<<<<<<<
@@ -26277,7 +26277,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1358
+ /* "_pydevd_bundle/pydevd_cython.pyx":1357
* # No need to reset frame.f_trace to keep the same trace function.
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* return SafeCallWrapper(self.trace_unhandled_exceptions) # <<<<<<<<<<<<<<
@@ -26285,16 +26285,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
* # return self.trace_unhandled_exceptions
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_unhandled_exceptions); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1358, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_unhandled_exceptions); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1358, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1345
+ /* "_pydevd_bundle/pydevd_cython.pyx":1344
* # ENDIF
*
* def trace_unhandled_exceptions(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -26319,7 +26319,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1363
+/* "_pydevd_bundle/pydevd_cython.pyx":1362
* # ENDIF
*
* def get_trace_dispatch_func(self): # <<<<<<<<<<<<<<
@@ -26349,7 +26349,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("get_trace_dispatch_func", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1364
+ /* "_pydevd_bundle/pydevd_cython.pyx":1363
*
* def get_trace_dispatch_func(self):
* return self.trace_unhandled_exceptions # <<<<<<<<<<<<<<
@@ -26357,13 +26357,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
*
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_unhandled_exceptions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1364, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_unhandled_exceptions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1363, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1363
+ /* "_pydevd_bundle/pydevd_cython.pyx":1362
* # ENDIF
*
* def get_trace_dispatch_func(self): # <<<<<<<<<<<<<<
@@ -26382,7 +26382,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1335
+/* "_pydevd_bundle/pydevd_cython.pyx":1334
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class TopLevelThreadTracerOnlyUnhandledExceptions:
* cdef public tuple _args; # <<<<<<<<<<<<<<
@@ -26440,7 +26440,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTracerOnlyU
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
- if (!(likely(PyTuple_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1335, __pyx_L1_error)
+ if (!(likely(PyTuple_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1334, __pyx_L1_error)
__pyx_t_1 = __pyx_v_value;
__Pyx_INCREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
@@ -26783,7 +26783,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_43TopLevelThreadTrace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1375
+/* "_pydevd_bundle/pydevd_cython.pyx":1374
* cdef public set _raise_lines;
* cdef public int _last_raise_line;
* def __init__(self, frame_trace_dispatch, tuple args): # <<<<<<<<<<<<<<
@@ -26825,11 +26825,11 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_args)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(0, 1375, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(0, 1374, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1375, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1374, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -26842,13 +26842,13 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1375, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1374, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.TopLevelThreadTracerNoBackFrame.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 1375, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 1374, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBackFrame___init__(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame *)__pyx_v_self), __pyx_v_frame_trace_dispatch, __pyx_v_args);
/* function exit code */
@@ -26869,7 +26869,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1376
+ /* "_pydevd_bundle/pydevd_cython.pyx":1375
* cdef public int _last_raise_line;
* def __init__(self, frame_trace_dispatch, tuple args):
* self._frame_trace_dispatch = frame_trace_dispatch # <<<<<<<<<<<<<<
@@ -26882,7 +26882,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
__Pyx_DECREF(__pyx_v_self->_frame_trace_dispatch);
__pyx_v_self->_frame_trace_dispatch = __pyx_v_frame_trace_dispatch;
- /* "_pydevd_bundle/pydevd_cython.pyx":1377
+ /* "_pydevd_bundle/pydevd_cython.pyx":1376
* def __init__(self, frame_trace_dispatch, tuple args):
* self._frame_trace_dispatch = frame_trace_dispatch
* self._args = args # <<<<<<<<<<<<<<
@@ -26895,7 +26895,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
__Pyx_DECREF(__pyx_v_self->_args);
__pyx_v_self->_args = __pyx_v_args;
- /* "_pydevd_bundle/pydevd_cython.pyx":1378
+ /* "_pydevd_bundle/pydevd_cython.pyx":1377
* self._frame_trace_dispatch = frame_trace_dispatch
* self._args = args
* self._try_except_info = None # <<<<<<<<<<<<<<
@@ -26908,7 +26908,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
__Pyx_DECREF(__pyx_v_self->_try_except_info);
__pyx_v_self->_try_except_info = Py_None;
- /* "_pydevd_bundle/pydevd_cython.pyx":1379
+ /* "_pydevd_bundle/pydevd_cython.pyx":1378
* self._args = args
* self._try_except_info = None
* self._last_exc_arg = None # <<<<<<<<<<<<<<
@@ -26921,14 +26921,14 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
__Pyx_DECREF(__pyx_v_self->_last_exc_arg);
__pyx_v_self->_last_exc_arg = Py_None;
- /* "_pydevd_bundle/pydevd_cython.pyx":1380
+ /* "_pydevd_bundle/pydevd_cython.pyx":1379
* self._try_except_info = None
* self._last_exc_arg = None
* self._raise_lines = set() # <<<<<<<<<<<<<<
* self._last_raise_line = -1
* # ELSE
*/
- __pyx_t_1 = PySet_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1380, __pyx_L1_error)
+ __pyx_t_1 = PySet_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_raise_lines);
@@ -26936,7 +26936,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
__pyx_v_self->_raise_lines = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1381
+ /* "_pydevd_bundle/pydevd_cython.pyx":1380
* self._last_exc_arg = None
* self._raise_lines = set()
* self._last_raise_line = -1 # <<<<<<<<<<<<<<
@@ -26945,7 +26945,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
*/
__pyx_v_self->_last_raise_line = -1;
- /* "_pydevd_bundle/pydevd_cython.pyx":1375
+ /* "_pydevd_bundle/pydevd_cython.pyx":1374
* cdef public set _raise_lines;
* cdef public int _last_raise_line;
* def __init__(self, frame_trace_dispatch, tuple args): # <<<<<<<<<<<<<<
@@ -26965,7 +26965,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1405
+/* "_pydevd_bundle/pydevd_cython.pyx":1404
* # ENDIF
*
* def trace_dispatch_and_unhandled_exceptions(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -27010,17 +27010,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch_and_unhandled_exceptions", 1, 3, 3, 1); __PYX_ERR(0, 1405, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch_and_unhandled_exceptions", 1, 3, 3, 1); __PYX_ERR(0, 1404, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("trace_dispatch_and_unhandled_exceptions", 1, 3, 3, 2); __PYX_ERR(0, 1405, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch_and_unhandled_exceptions", 1, 3, 3, 2); __PYX_ERR(0, 1404, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_dispatch_and_unhandled_exceptions") < 0)) __PYX_ERR(0, 1405, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "trace_dispatch_and_unhandled_exceptions") < 0)) __PYX_ERR(0, 1404, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -27035,7 +27035,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("trace_dispatch_and_unhandled_exceptions", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1405, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("trace_dispatch_and_unhandled_exceptions", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1404, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.TopLevelThreadTracerNoBackFrame.trace_dispatch_and_unhandled_exceptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -27082,7 +27082,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("trace_dispatch_and_unhandled_exceptions", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1407
+ /* "_pydevd_bundle/pydevd_cython.pyx":1406
* def trace_dispatch_and_unhandled_exceptions(self, frame, event, arg):
* # print('trace_dispatch_and_unhandled_exceptions', event, frame.f_code.co_name, frame.f_code.co_filename, frame.f_code.co_firstlineno)
* if self._frame_trace_dispatch is not None: # <<<<<<<<<<<<<<
@@ -27093,7 +27093,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1408
+ /* "_pydevd_bundle/pydevd_cython.pyx":1407
* # print('trace_dispatch_and_unhandled_exceptions', event, frame.f_code.co_name, frame.f_code.co_filename, frame.f_code.co_firstlineno)
* if self._frame_trace_dispatch is not None:
* self._frame_trace_dispatch = self._frame_trace_dispatch(frame, event, arg) # <<<<<<<<<<<<<<
@@ -27116,7 +27116,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_4)) {
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1408, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1407, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -27124,13 +27124,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1408, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1407, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_7 = PyTuple_New(3+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1408, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(3+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -27144,7 +27144,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_6, __pyx_v_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1408, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
@@ -27155,7 +27155,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_v_self->_frame_trace_dispatch = __pyx_t_3;
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1407
+ /* "_pydevd_bundle/pydevd_cython.pyx":1406
* def trace_dispatch_and_unhandled_exceptions(self, frame, event, arg):
* # print('trace_dispatch_and_unhandled_exceptions', event, frame.f_code.co_name, frame.f_code.co_filename, frame.f_code.co_firstlineno)
* if self._frame_trace_dispatch is not None: # <<<<<<<<<<<<<<
@@ -27164,17 +27164,17 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1410
+ /* "_pydevd_bundle/pydevd_cython.pyx":1409
* self._frame_trace_dispatch = self._frame_trace_dispatch(frame, event, arg)
*
* if event == 'exception': # <<<<<<<<<<<<<<
* self._last_exc_arg = arg
* self._raise_lines.add(frame.f_lineno)
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1410, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_exception, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1409, __pyx_L1_error)
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1411
+ /* "_pydevd_bundle/pydevd_cython.pyx":1410
*
* if event == 'exception':
* self._last_exc_arg = arg # <<<<<<<<<<<<<<
@@ -27187,7 +27187,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_DECREF(__pyx_v_self->_last_exc_arg);
__pyx_v_self->_last_exc_arg = __pyx_v_arg;
- /* "_pydevd_bundle/pydevd_cython.pyx":1412
+ /* "_pydevd_bundle/pydevd_cython.pyx":1411
* if event == 'exception':
* self._last_exc_arg = arg
* self._raise_lines.add(frame.f_lineno) # <<<<<<<<<<<<<<
@@ -27196,27 +27196,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
if (unlikely(__pyx_v_self->_raise_lines == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "add");
- __PYX_ERR(0, 1412, __pyx_L1_error)
+ __PYX_ERR(0, 1411, __pyx_L1_error)
}
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1412, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1411, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_8 = PySet_Add(__pyx_v_self->_raise_lines, __pyx_t_3); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1412, __pyx_L1_error)
+ __pyx_t_8 = PySet_Add(__pyx_v_self->_raise_lines, __pyx_t_3); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1411, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1413
+ /* "_pydevd_bundle/pydevd_cython.pyx":1412
* self._last_exc_arg = arg
* self._raise_lines.add(frame.f_lineno)
* self._last_raise_line = frame.f_lineno # <<<<<<<<<<<<<<
*
* elif event == 'return' and self._last_exc_arg is not None:
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1413, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1412, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1413, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1412, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_self->_last_raise_line = __pyx_t_6;
- /* "_pydevd_bundle/pydevd_cython.pyx":1410
+ /* "_pydevd_bundle/pydevd_cython.pyx":1409
* self._frame_trace_dispatch = self._frame_trace_dispatch(frame, event, arg)
*
* if event == 'exception': # <<<<<<<<<<<<<<
@@ -27226,14 +27226,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
goto __pyx_L4;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1415
+ /* "_pydevd_bundle/pydevd_cython.pyx":1414
* self._last_raise_line = frame.f_lineno
*
* elif event == 'return' and self._last_exc_arg is not None: # <<<<<<<<<<<<<<
* # For unhandled exceptions we actually track the return when at the topmost level.
* try:
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1415, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_return, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 1414, __pyx_L1_error)
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
@@ -27245,7 +27245,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_L5_bool_binop_done:;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1417
+ /* "_pydevd_bundle/pydevd_cython.pyx":1416
* elif event == 'return' and self._last_exc_arg is not None:
* # For unhandled exceptions we actually track the return when at the topmost level.
* try: # <<<<<<<<<<<<<<
@@ -27254,7 +27254,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1418
+ /* "_pydevd_bundle/pydevd_cython.pyx":1417
* # For unhandled exceptions we actually track the return when at the topmost level.
* try:
* py_db, t, additional_info = self._args[0:3] # <<<<<<<<<<<<<<
@@ -27263,9 +27263,9 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
if (unlikely(__pyx_v_self->_args == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1418, __pyx_L8_error)
+ __PYX_ERR(0, 1417, __pyx_L8_error)
}
- __pyx_t_3 = __Pyx_PyTuple_GetSlice(__pyx_v_self->_args, 0, 3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1418, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyTuple_GetSlice(__pyx_v_self->_args, 0, 3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1417, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
if (1) {
PyObject* sequence = __pyx_t_3;
@@ -27273,7 +27273,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 1418, __pyx_L8_error)
+ __PYX_ERR(0, 1417, __pyx_L8_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
@@ -27283,11 +27283,11 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1418, __pyx_L8_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1417, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1418, __pyx_L8_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1417, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_5 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1418, __pyx_L8_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1417, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -27299,46 +27299,46 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_v_additional_info = __pyx_t_5;
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1419
+ /* "_pydevd_bundle/pydevd_cython.pyx":1418
* try:
* py_db, t, additional_info = self._args[0:3]
* if not additional_info.suspended_at_unhandled: # Note: only check it here, don't set. # <<<<<<<<<<<<<<
* if frame.f_lineno in self._raise_lines:
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_additional_info, __pyx_n_s_suspended_at_unhandled); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1419, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_additional_info, __pyx_n_s_suspended_at_unhandled); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1418, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1419, __pyx_L8_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1418, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_9 = ((!__pyx_t_2) != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1420
+ /* "_pydevd_bundle/pydevd_cython.pyx":1419
* py_db, t, additional_info = self._args[0:3]
* if not additional_info.suspended_at_unhandled: # Note: only check it here, don't set.
* if frame.f_lineno in self._raise_lines: # <<<<<<<<<<<<<<
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg)
*
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1420, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1419, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
if (unlikely(__pyx_v_self->_raise_lines == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
- __PYX_ERR(0, 1420, __pyx_L8_error)
+ __PYX_ERR(0, 1419, __pyx_L8_error)
}
- __pyx_t_9 = (__Pyx_PySet_ContainsTF(__pyx_t_3, __pyx_v_self->_raise_lines, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1420, __pyx_L8_error)
+ __pyx_t_9 = (__Pyx_PySet_ContainsTF(__pyx_t_3, __pyx_v_self->_raise_lines, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1419, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_2 = (__pyx_t_9 != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1421
+ /* "_pydevd_bundle/pydevd_cython.pyx":1420
* if not additional_info.suspended_at_unhandled: # Note: only check it here, don't set.
* if frame.f_lineno in self._raise_lines:
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg) # <<<<<<<<<<<<<<
*
* else:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1421, __pyx_L8_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1420, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = NULL;
__pyx_t_6 = 0;
@@ -27355,7 +27355,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[5] = {__pyx_t_7, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1421, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1420, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -27363,13 +27363,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[5] = {__pyx_t_7, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1421, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1420, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_4 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1421, __pyx_L8_error)
+ __pyx_t_4 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1420, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -27386,14 +27386,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_INCREF(__pyx_v_self->_last_exc_arg);
__Pyx_GIVEREF(__pyx_v_self->_last_exc_arg);
PyTuple_SET_ITEM(__pyx_t_4, 3+__pyx_t_6, __pyx_v_self->_last_exc_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1421, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1420, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1420
+ /* "_pydevd_bundle/pydevd_cython.pyx":1419
* py_db, t, additional_info = self._args[0:3]
* if not additional_info.suspended_at_unhandled: # Note: only check it here, don't set.
* if frame.f_lineno in self._raise_lines: # <<<<<<<<<<<<<<
@@ -27403,7 +27403,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
goto __pyx_L11;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1424
+ /* "_pydevd_bundle/pydevd_cython.pyx":1423
*
* else:
* if self._try_except_info is None: # <<<<<<<<<<<<<<
@@ -27415,16 +27415,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_9 = (__pyx_t_2 != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1425
+ /* "_pydevd_bundle/pydevd_cython.pyx":1424
* else:
* if self._try_except_info is None:
* self._try_except_info = collect_try_except_info(frame.f_code) # <<<<<<<<<<<<<<
* if not self._try_except_info:
* # Consider the last exception as unhandled because there's no try..except in it.
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_collect_try_except_info); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1425, __pyx_L8_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_collect_try_except_info); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1424, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1425, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1424, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_7 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
@@ -27439,7 +27439,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_3 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_7, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4);
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1425, __pyx_L8_error)
+ if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1424, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GIVEREF(__pyx_t_3);
@@ -27448,7 +27448,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_v_self->_try_except_info = __pyx_t_3;
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1424
+ /* "_pydevd_bundle/pydevd_cython.pyx":1423
*
* else:
* if self._try_except_info is None: # <<<<<<<<<<<<<<
@@ -27457,25 +27457,25 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1426
+ /* "_pydevd_bundle/pydevd_cython.pyx":1425
* if self._try_except_info is None:
* self._try_except_info = collect_try_except_info(frame.f_code)
* if not self._try_except_info: # <<<<<<<<<<<<<<
* # Consider the last exception as unhandled because there's no try..except in it.
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg)
*/
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_self->_try_except_info); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1426, __pyx_L8_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_self->_try_except_info); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1425, __pyx_L8_error)
__pyx_t_2 = ((!__pyx_t_9) != 0);
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1428
+ /* "_pydevd_bundle/pydevd_cython.pyx":1427
* if not self._try_except_info:
* # Consider the last exception as unhandled because there's no try..except in it.
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg) # <<<<<<<<<<<<<<
* else:
* # Now, consider only the try..except for the raise
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1428, __pyx_L8_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1427, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = NULL;
__pyx_t_6 = 0;
@@ -27492,7 +27492,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[5] = {__pyx_t_4, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1428, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1427, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -27500,13 +27500,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[5] = {__pyx_t_4, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1428, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1427, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_7 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1428, __pyx_L8_error)
+ __pyx_t_7 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1427, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = NULL;
@@ -27523,14 +27523,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_INCREF(__pyx_v_self->_last_exc_arg);
__Pyx_GIVEREF(__pyx_v_self->_last_exc_arg);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_6, __pyx_v_self->_last_exc_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1428, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1427, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1426
+ /* "_pydevd_bundle/pydevd_cython.pyx":1425
* if self._try_except_info is None:
* self._try_except_info = collect_try_except_info(frame.f_code)
* if not self._try_except_info: # <<<<<<<<<<<<<<
@@ -27540,7 +27540,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
goto __pyx_L13;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1431
+ /* "_pydevd_bundle/pydevd_cython.pyx":1430
* else:
* # Now, consider only the try..except for the raise
* valid_try_except_infos = [] # <<<<<<<<<<<<<<
@@ -27548,12 +27548,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
* if try_except_info.is_line_in_try_block(self._last_raise_line):
*/
/*else*/ {
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1431, __pyx_L8_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1430, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_valid_try_except_infos = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1432
+ /* "_pydevd_bundle/pydevd_cython.pyx":1431
* # Now, consider only the try..except for the raise
* valid_try_except_infos = []
* for try_except_info in self._try_except_info: # <<<<<<<<<<<<<<
@@ -27564,26 +27564,26 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_3 = __pyx_v_self->_try_except_info; __Pyx_INCREF(__pyx_t_3); __pyx_t_10 = 0;
__pyx_t_11 = NULL;
} else {
- __pyx_t_10 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_self->_try_except_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1432, __pyx_L8_error)
+ __pyx_t_10 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_self->_try_except_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1431, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_11 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1432, __pyx_L8_error)
+ __pyx_t_11 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1431, __pyx_L8_error)
}
for (;;) {
if (likely(!__pyx_t_11)) {
if (likely(PyList_CheckExact(__pyx_t_3))) {
if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_3)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1432, __pyx_L8_error)
+ __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1431, __pyx_L8_error)
#else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1432, __pyx_L8_error)
+ __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1431, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1432, __pyx_L8_error)
+ __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1431, __pyx_L8_error)
#else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1432, __pyx_L8_error)
+ __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1431, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
}
@@ -27593,7 +27593,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(0, 1432, __pyx_L8_error)
+ else __PYX_ERR(0, 1431, __pyx_L8_error)
}
break;
}
@@ -27602,16 +27602,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_XDECREF_SET(__pyx_v_try_except_info, __pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1433
+ /* "_pydevd_bundle/pydevd_cython.pyx":1432
* valid_try_except_infos = []
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_try_block(self._last_raise_line): # <<<<<<<<<<<<<<
* valid_try_except_infos.append(try_except_info)
*
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_is_line_in_try_block); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1433, __pyx_L8_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_is_line_in_try_block); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1432, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->_last_raise_line); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1433, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->_last_raise_line); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1432, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_12 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
@@ -27626,23 +27626,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_5 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_12, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_4);
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1433, __pyx_L8_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1432, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1433, __pyx_L8_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1432, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_2) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1434
+ /* "_pydevd_bundle/pydevd_cython.pyx":1433
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_try_block(self._last_raise_line):
* valid_try_except_infos.append(try_except_info) # <<<<<<<<<<<<<<
*
* if not valid_try_except_infos:
*/
- __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_valid_try_except_infos, __pyx_v_try_except_info); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1434, __pyx_L8_error)
+ __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_valid_try_except_infos, __pyx_v_try_except_info); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1433, __pyx_L8_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1433
+ /* "_pydevd_bundle/pydevd_cython.pyx":1432
* valid_try_except_infos = []
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_try_block(self._last_raise_line): # <<<<<<<<<<<<<<
@@ -27651,7 +27651,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1432
+ /* "_pydevd_bundle/pydevd_cython.pyx":1431
* # Now, consider only the try..except for the raise
* valid_try_except_infos = []
* for try_except_info in self._try_except_info: # <<<<<<<<<<<<<<
@@ -27661,7 +27661,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1436
+ /* "_pydevd_bundle/pydevd_cython.pyx":1435
* valid_try_except_infos.append(try_except_info)
*
* if not valid_try_except_infos: # <<<<<<<<<<<<<<
@@ -27672,14 +27672,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_9 = ((!__pyx_t_2) != 0);
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1437
+ /* "_pydevd_bundle/pydevd_cython.pyx":1436
*
* if not valid_try_except_infos:
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg) # <<<<<<<<<<<<<<
*
* else:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1437, __pyx_L8_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1436, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = NULL;
__pyx_t_6 = 0;
@@ -27696,7 +27696,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[5] = {__pyx_t_7, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1437, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1436, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
@@ -27704,13 +27704,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
PyObject *__pyx_temp[5] = {__pyx_t_7, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1437, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1436, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else
#endif
{
- __pyx_t_4 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1437, __pyx_L8_error)
+ __pyx_t_4 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1436, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __pyx_t_7 = NULL;
@@ -27727,14 +27727,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_INCREF(__pyx_v_self->_last_exc_arg);
__Pyx_GIVEREF(__pyx_v_self->_last_exc_arg);
PyTuple_SET_ITEM(__pyx_t_4, 3+__pyx_t_6, __pyx_v_self->_last_exc_arg);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1437, __pyx_L8_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1436, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1436
+ /* "_pydevd_bundle/pydevd_cython.pyx":1435
* valid_try_except_infos.append(try_except_info)
*
* if not valid_try_except_infos: # <<<<<<<<<<<<<<
@@ -27744,7 +27744,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
goto __pyx_L17;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1444
+ /* "_pydevd_bundle/pydevd_cython.pyx":1443
* # where one try..except is inside the other with only a raise
* # and it's gotten in the except line.
* for try_except_info in self._try_except_info: # <<<<<<<<<<<<<<
@@ -27756,26 +27756,26 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_3 = __pyx_v_self->_try_except_info; __Pyx_INCREF(__pyx_t_3); __pyx_t_10 = 0;
__pyx_t_11 = NULL;
} else {
- __pyx_t_10 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_self->_try_except_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1444, __pyx_L8_error)
+ __pyx_t_10 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_self->_try_except_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1443, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_11 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1444, __pyx_L8_error)
+ __pyx_t_11 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1443, __pyx_L8_error)
}
for (;;) {
if (likely(!__pyx_t_11)) {
if (likely(PyList_CheckExact(__pyx_t_3))) {
if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_3)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1444, __pyx_L8_error)
+ __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1443, __pyx_L8_error)
#else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1444, __pyx_L8_error)
+ __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1443, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
- __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1444, __pyx_L8_error)
+ __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely(0 < 0)) __PYX_ERR(0, 1443, __pyx_L8_error)
#else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1444, __pyx_L8_error)
+ __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1443, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
}
@@ -27785,7 +27785,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(0, 1444, __pyx_L8_error)
+ else __PYX_ERR(0, 1443, __pyx_L8_error)
}
break;
}
@@ -27794,16 +27794,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_XDECREF_SET(__pyx_v_try_except_info, __pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1445
+ /* "_pydevd_bundle/pydevd_cython.pyx":1444
* # and it's gotten in the except line.
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_except_block(frame.f_lineno): # <<<<<<<<<<<<<<
* if (
* frame.f_lineno == try_except_info.except_line or
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_is_line_in_except_block); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1445, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_is_line_in_except_block); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1444, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1445, __pyx_L8_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1444, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_12 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
@@ -27818,28 +27818,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_t_5 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_12, __pyx_t_7) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7);
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1445, __pyx_L8_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1444, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1445, __pyx_L8_error)
+ __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 1444, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1447
+ /* "_pydevd_bundle/pydevd_cython.pyx":1446
* if try_except_info.is_line_in_except_block(frame.f_lineno):
* if (
* frame.f_lineno == try_except_info.except_line or # <<<<<<<<<<<<<<
* frame.f_lineno in try_except_info.raise_lines_in_except
* ):
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1447, __pyx_L8_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1446, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_except_line); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1447, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_except_line); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1446, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1447, __pyx_L8_error)
+ __pyx_t_7 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1446, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1447, __pyx_L8_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1446, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (!__pyx_t_2) {
} else {
@@ -27847,25 +27847,25 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
goto __pyx_L22_bool_binop_done;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1448
+ /* "_pydevd_bundle/pydevd_cython.pyx":1447
* if (
* frame.f_lineno == try_except_info.except_line or
* frame.f_lineno in try_except_info.raise_lines_in_except # <<<<<<<<<<<<<<
* ):
* # In a raise inside a try..except block or some except which doesn't
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1448, __pyx_L8_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_lineno); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1447, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_raise_lines_in_except); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1448, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_try_except_info, __pyx_n_s_raise_lines_in_except); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1447, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_7, __pyx_t_4, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1448, __pyx_L8_error)
+ __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_7, __pyx_t_4, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1447, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_1 = (__pyx_t_2 != 0);
__pyx_t_9 = __pyx_t_1;
__pyx_L22_bool_binop_done:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1446
+ /* "_pydevd_bundle/pydevd_cython.pyx":1445
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_except_block(frame.f_lineno):
* if ( # <<<<<<<<<<<<<<
@@ -27874,14 +27874,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
if (__pyx_t_9) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1452
+ /* "_pydevd_bundle/pydevd_cython.pyx":1451
* # In a raise inside a try..except block or some except which doesn't
* # match the raised exception.
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg) # <<<<<<<<<<<<<<
* break
* else:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1452, __pyx_L8_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1451, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = NULL;
__pyx_t_6 = 0;
@@ -27898,7 +27898,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1452, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1451, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
@@ -27906,13 +27906,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_v_py_db, __pyx_v_t, __pyx_v_additional_info, __pyx_v_self->_last_exc_arg};
- __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1452, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_6, 4+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1451, __pyx_L8_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else
#endif
{
- __pyx_t_12 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1452, __pyx_L8_error)
+ __pyx_t_12 = PyTuple_New(4+__pyx_t_6); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1451, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_12);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_5); __pyx_t_5 = NULL;
@@ -27929,14 +27929,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__Pyx_INCREF(__pyx_v_self->_last_exc_arg);
__Pyx_GIVEREF(__pyx_v_self->_last_exc_arg);
PyTuple_SET_ITEM(__pyx_t_12, 3+__pyx_t_6, __pyx_v_self->_last_exc_arg);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_12, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1452, __pyx_L8_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_12, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1451, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1453
+ /* "_pydevd_bundle/pydevd_cython.pyx":1452
* # match the raised exception.
* stop_on_unhandled_exception(py_db, t, additional_info, self._last_exc_arg)
* break # <<<<<<<<<<<<<<
@@ -27945,7 +27945,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
goto __pyx_L19_break;
- /* "_pydevd_bundle/pydevd_cython.pyx":1446
+ /* "_pydevd_bundle/pydevd_cython.pyx":1445
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_except_block(frame.f_lineno):
* if ( # <<<<<<<<<<<<<<
@@ -27954,7 +27954,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1455
+ /* "_pydevd_bundle/pydevd_cython.pyx":1454
* break
* else:
* break # exited during the except block (no exception raised) # <<<<<<<<<<<<<<
@@ -27965,7 +27965,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
goto __pyx_L19_break;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1445
+ /* "_pydevd_bundle/pydevd_cython.pyx":1444
* # and it's gotten in the except line.
* for try_except_info in self._try_except_info:
* if try_except_info.is_line_in_except_block(frame.f_lineno): # <<<<<<<<<<<<<<
@@ -27974,7 +27974,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1444
+ /* "_pydevd_bundle/pydevd_cython.pyx":1443
* # where one try..except is inside the other with only a raise
* # and it's gotten in the except line.
* for try_except_info in self._try_except_info: # <<<<<<<<<<<<<<
@@ -27991,7 +27991,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
}
__pyx_L11:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1419
+ /* "_pydevd_bundle/pydevd_cython.pyx":1418
* try:
* py_db, t, additional_info = self._args[0:3]
* if not additional_info.suspended_at_unhandled: # Note: only check it here, don't set. # <<<<<<<<<<<<<<
@@ -28001,7 +28001,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
}
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1458
+ /* "_pydevd_bundle/pydevd_cython.pyx":1457
* finally:
* # Remove reference to exception after handling it.
* self._last_exc_arg = None # <<<<<<<<<<<<<<
@@ -28060,7 +28060,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_L9:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1415
+ /* "_pydevd_bundle/pydevd_cython.pyx":1414
* self._last_raise_line = frame.f_lineno
*
* elif event == 'return' and self._last_exc_arg is not None: # <<<<<<<<<<<<<<
@@ -28070,31 +28070,31 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
}
__pyx_L4:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1461
+ /* "_pydevd_bundle/pydevd_cython.pyx":1460
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* ret = SafeCallWrapper(self.trace_dispatch_and_unhandled_exceptions) # <<<<<<<<<<<<<<
* # ELSE
* # ret = self.trace_dispatch_and_unhandled_exceptions
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch_and_unhandled_exc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1461, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch_and_unhandled_exc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1460, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1461, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1460, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_ret = ((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper *)__pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1467
+ /* "_pydevd_bundle/pydevd_cython.pyx":1466
*
* # Need to reset (the call to _frame_trace_dispatch may have changed it).
* frame.f_trace = ret # <<<<<<<<<<<<<<
* return ret
*
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, ((PyObject *)__pyx_v_ret)) < 0) __PYX_ERR(0, 1467, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, ((PyObject *)__pyx_v_ret)) < 0) __PYX_ERR(0, 1466, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1468
+ /* "_pydevd_bundle/pydevd_cython.pyx":1467
* # Need to reset (the call to _frame_trace_dispatch may have changed it).
* frame.f_trace = ret
* return ret # <<<<<<<<<<<<<<
@@ -28106,7 +28106,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
__pyx_r = ((PyObject *)__pyx_v_ret);
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1405
+ /* "_pydevd_bundle/pydevd_cython.pyx":1404
* # ENDIF
*
* def trace_dispatch_and_unhandled_exceptions(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -28135,7 +28135,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1470
+/* "_pydevd_bundle/pydevd_cython.pyx":1469
* return ret
*
* def get_trace_dispatch_func(self): # <<<<<<<<<<<<<<
@@ -28165,7 +28165,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("get_trace_dispatch_func", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1471
+ /* "_pydevd_bundle/pydevd_cython.pyx":1470
*
* def get_trace_dispatch_func(self):
* return self.trace_dispatch_and_unhandled_exceptions # <<<<<<<<<<<<<<
@@ -28173,13 +28173,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
*
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch_and_unhandled_exc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1471, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_trace_dispatch_and_unhandled_exc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1470, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1470
+ /* "_pydevd_bundle/pydevd_cython.pyx":1469
* return ret
*
* def get_trace_dispatch_func(self): # <<<<<<<<<<<<<<
@@ -28198,7 +28198,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1369
+/* "_pydevd_bundle/pydevd_cython.pyx":1368
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class TopLevelThreadTracerNoBackFrame:
* cdef public object _frame_trace_dispatch; # <<<<<<<<<<<<<<
@@ -28293,7 +28293,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1370
+/* "_pydevd_bundle/pydevd_cython.pyx":1369
* cdef class TopLevelThreadTracerNoBackFrame:
* cdef public object _frame_trace_dispatch;
* cdef public tuple _args; # <<<<<<<<<<<<<<
@@ -28351,7 +28351,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
- if (!(likely(PyTuple_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1370, __pyx_L1_error)
+ if (!(likely(PyTuple_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1369, __pyx_L1_error)
__pyx_t_1 = __pyx_v_value;
__Pyx_INCREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
@@ -28401,7 +28401,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1371
+/* "_pydevd_bundle/pydevd_cython.pyx":1370
* cdef public object _frame_trace_dispatch;
* cdef public tuple _args;
* cdef public object _try_except_info; # <<<<<<<<<<<<<<
@@ -28496,7 +28496,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1372
+/* "_pydevd_bundle/pydevd_cython.pyx":1371
* cdef public tuple _args;
* cdef public object _try_except_info;
* cdef public object _last_exc_arg; # <<<<<<<<<<<<<<
@@ -28591,7 +28591,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1373
+/* "_pydevd_bundle/pydevd_cython.pyx":1372
* cdef public object _try_except_info;
* cdef public object _last_exc_arg;
* cdef public set _raise_lines; # <<<<<<<<<<<<<<
@@ -28649,7 +28649,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
- if (!(likely(PySet_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "set", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1373, __pyx_L1_error)
+ if (!(likely(PySet_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "set", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1372, __pyx_L1_error)
__pyx_t_1 = __pyx_v_value;
__Pyx_INCREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
@@ -28699,7 +28699,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1374
+/* "_pydevd_bundle/pydevd_cython.pyx":1373
* cdef public object _last_exc_arg;
* cdef public set _raise_lines;
* cdef public int _last_raise_line; # <<<<<<<<<<<<<<
@@ -28729,7 +28729,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->_last_raise_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1374, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->_last_raise_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1373, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
@@ -28767,7 +28767,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTracerNoBac
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
- __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_value); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1374, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_value); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1373, __pyx_L1_error)
__pyx_v_self->_last_raise_line = __pyx_t_1;
/* function exit code */
@@ -29123,7 +29123,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_31TopLevelThreadTrace
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1477
+/* "_pydevd_bundle/pydevd_cython.pyx":1476
* cdef class ThreadTracer:
* cdef public tuple _args;
* def __init__(self, tuple args): # <<<<<<<<<<<<<<
@@ -29160,7 +29160,7 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_1__init__(Py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1477, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1476, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -29171,13 +29171,13 @@ static int __pyx_pw_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_1__init__(Py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1477, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1476, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.ThreadTracer.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 1477, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_args), (&PyTuple_Type), 1, "args", 1))) __PYX_ERR(0, 1476, __pyx_L1_error)
__pyx_r = __pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer___init__(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_ThreadTracer *)__pyx_v_self), __pyx_v_args);
/* function exit code */
@@ -29194,7 +29194,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer___init__(str
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1478
+ /* "_pydevd_bundle/pydevd_cython.pyx":1477
* cdef public tuple _args;
* def __init__(self, tuple args):
* self._args = args # <<<<<<<<<<<<<<
@@ -29207,7 +29207,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer___init__(str
__Pyx_DECREF(__pyx_v_self->_args);
__pyx_v_self->_args = __pyx_v_args;
- /* "_pydevd_bundle/pydevd_cython.pyx":1477
+ /* "_pydevd_bundle/pydevd_cython.pyx":1476
* cdef class ThreadTracer:
* cdef public tuple _args;
* def __init__(self, tuple args): # <<<<<<<<<<<<<<
@@ -29221,7 +29221,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer___init__(str
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1486
+/* "_pydevd_bundle/pydevd_cython.pyx":1485
* # ENDIF
*
* def __call__(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -29270,17 +29270,17 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_3__cal
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 1); __PYX_ERR(0, 1486, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 1); __PYX_ERR(0, 1485, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 2); __PYX_ERR(0, 1486, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 2); __PYX_ERR(0, 1485, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(0, 1486, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(0, 1485, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -29295,7 +29295,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_3__cal
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1486, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1485, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.ThreadTracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -29344,7 +29344,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__call__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1510
+ /* "_pydevd_bundle/pydevd_cython.pyx":1509
* # ENDIF
* # print('ENTER: trace_dispatch', frame.f_code.co_filename, frame.f_lineno, event, frame.f_code.co_name)
* py_db, t, additional_info, cache_skips, frame_skips_cache = self._args # <<<<<<<<<<<<<<
@@ -29359,7 +29359,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
if (unlikely(size != 5)) {
if (size > 5) __Pyx_RaiseTooManyValuesError(5);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 1510, __pyx_L1_error)
+ __PYX_ERR(0, 1509, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
@@ -29377,7 +29377,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
Py_ssize_t i;
PyObject** temps[5] = {&__pyx_t_2,&__pyx_t_3,&__pyx_t_4,&__pyx_t_5,&__pyx_t_6};
for (i=0; i < 5; i++) {
- PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 1510, __pyx_L1_error)
+ PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 1509, __pyx_L1_error)
__Pyx_GOTREF(item);
*(temps[i]) = item;
}
@@ -29385,10 +29385,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
- __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(0, 1510, __pyx_L1_error)
+ __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(0, 1509, __pyx_L1_error)
}
- if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo))))) __PYX_ERR(0, 1510, __pyx_L1_error)
- if (!(likely(PyDict_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "dict", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 1510, __pyx_L1_error)
+ if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBAdditionalThreadInfo))))) __PYX_ERR(0, 1509, __pyx_L1_error)
+ if (!(likely(PyDict_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "dict", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 1509, __pyx_L1_error)
__pyx_v_py_db = __pyx_t_2;
__pyx_t_2 = 0;
__pyx_v_t = __pyx_t_3;
@@ -29400,7 +29400,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_v_frame_skips_cache = __pyx_t_6;
__pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1511
+ /* "_pydevd_bundle/pydevd_cython.pyx":1510
* # print('ENTER: trace_dispatch', frame.f_code.co_filename, frame.f_lineno, event, frame.f_code.co_name)
* py_db, t, additional_info, cache_skips, frame_skips_cache = self._args
* pydev_step_cmd = additional_info.pydev_step_cmd # <<<<<<<<<<<<<<
@@ -29410,7 +29410,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_7 = __pyx_v_additional_info->pydev_step_cmd;
__pyx_v_pydev_step_cmd = __pyx_t_7;
- /* "_pydevd_bundle/pydevd_cython.pyx":1512
+ /* "_pydevd_bundle/pydevd_cython.pyx":1511
* py_db, t, additional_info, cache_skips, frame_skips_cache = self._args
* pydev_step_cmd = additional_info.pydev_step_cmd
* is_stepping = pydev_step_cmd != -1 # <<<<<<<<<<<<<<
@@ -29419,7 +29419,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
__pyx_v_is_stepping = (__pyx_v_pydev_step_cmd != -1L);
- /* "_pydevd_bundle/pydevd_cython.pyx":1514
+ /* "_pydevd_bundle/pydevd_cython.pyx":1513
* is_stepping = pydev_step_cmd != -1
*
* try: # <<<<<<<<<<<<<<
@@ -29435,34 +29435,34 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XGOTREF(__pyx_t_10);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1515
+ /* "_pydevd_bundle/pydevd_cython.pyx":1514
*
* try:
* if py_db._finish_debugging_session: # <<<<<<<<<<<<<<
* if not py_db._termination_event_set:
* # that was not working very well because jython gave some socket errors
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_finish_debugging_session); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1515, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_finish_debugging_session); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1514, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1515, __pyx_L3_error)
+ __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1514, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_11) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1516
+ /* "_pydevd_bundle/pydevd_cython.pyx":1515
* try:
* if py_db._finish_debugging_session:
* if not py_db._termination_event_set: # <<<<<<<<<<<<<<
* # that was not working very well because jython gave some socket errors
* try:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_termination_event_set); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1516, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_termination_event_set); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1515, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1516, __pyx_L3_error)
+ __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1515, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_12 = ((!__pyx_t_11) != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1518
+ /* "_pydevd_bundle/pydevd_cython.pyx":1517
* if not py_db._termination_event_set:
* # that was not working very well because jython gave some socket errors
* try: # <<<<<<<<<<<<<<
@@ -29478,28 +29478,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XGOTREF(__pyx_t_15);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1519
+ /* "_pydevd_bundle/pydevd_cython.pyx":1518
* # that was not working very well because jython gave some socket errors
* try:
* if py_db.output_checker_thread is None: # <<<<<<<<<<<<<<
* kill_all_pydev_threads()
* except:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_output_checker_thread); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1519, __pyx_L11_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_output_checker_thread); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1518, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_12 = (__pyx_t_1 == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_11 = (__pyx_t_12 != 0);
if (__pyx_t_11) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1520
+ /* "_pydevd_bundle/pydevd_cython.pyx":1519
* try:
* if py_db.output_checker_thread is None:
* kill_all_pydev_threads() # <<<<<<<<<<<<<<
* except:
* traceback.print_exc()
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_kill_all_pydev_threads); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1520, __pyx_L11_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_kill_all_pydev_threads); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1519, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) {
@@ -29513,12 +29513,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_1 = (__pyx_t_5) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5) : __Pyx_PyObject_CallNoArg(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1520, __pyx_L11_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1519, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1519
+ /* "_pydevd_bundle/pydevd_cython.pyx":1518
* # that was not working very well because jython gave some socket errors
* try:
* if py_db.output_checker_thread is None: # <<<<<<<<<<<<<<
@@ -29527,7 +29527,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1518
+ /* "_pydevd_bundle/pydevd_cython.pyx":1517
* if not py_db._termination_event_set:
* # that was not working very well because jython gave some socket errors
* try: # <<<<<<<<<<<<<<
@@ -29547,7 +29547,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1521
+ /* "_pydevd_bundle/pydevd_cython.pyx":1520
* if py_db.output_checker_thread is None:
* kill_all_pydev_threads()
* except: # <<<<<<<<<<<<<<
@@ -29556,21 +29556,21 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.ThreadTracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(0, 1521, __pyx_L13_except_error)
+ if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(0, 1520, __pyx_L13_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_5);
- /* "_pydevd_bundle/pydevd_cython.pyx":1522
+ /* "_pydevd_bundle/pydevd_cython.pyx":1521
* kill_all_pydev_threads()
* except:
* traceback.print_exc() # <<<<<<<<<<<<<<
* py_db._termination_event_set = True
* if event != 'call': frame.f_trace = NO_FTRACE
*/
- __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_traceback); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1522, __pyx_L13_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_traceback); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1521, __pyx_L13_except_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1522, __pyx_L13_except_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1521, __pyx_L13_except_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = NULL;
@@ -29585,7 +29585,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_4 = (__pyx_t_3) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3) : __Pyx_PyObject_CallNoArg(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1522, __pyx_L13_except_error)
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1521, __pyx_L13_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -29596,7 +29596,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_L13_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1518
+ /* "_pydevd_bundle/pydevd_cython.pyx":1517
* if not py_db._termination_event_set:
* # that was not working very well because jython gave some socket errors
* try: # <<<<<<<<<<<<<<
@@ -29616,16 +29616,16 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_L16_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1523
+ /* "_pydevd_bundle/pydevd_cython.pyx":1522
* except:
* traceback.print_exc()
* py_db._termination_event_set = True # <<<<<<<<<<<<<<
* if event != 'call': frame.f_trace = NO_FTRACE
* return None
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_py_db, __pyx_n_s_termination_event_set, Py_True) < 0) __PYX_ERR(0, 1523, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_py_db, __pyx_n_s_termination_event_set, Py_True) < 0) __PYX_ERR(0, 1522, __pyx_L3_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1516
+ /* "_pydevd_bundle/pydevd_cython.pyx":1515
* try:
* if py_db._finish_debugging_session:
* if not py_db._termination_event_set: # <<<<<<<<<<<<<<
@@ -29634,22 +29634,22 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1524
+ /* "_pydevd_bundle/pydevd_cython.pyx":1523
* traceback.print_exc()
* py_db._termination_event_set = True
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1524, __pyx_L3_error)
+ __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1523, __pyx_L3_error)
if (__pyx_t_11) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1524, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1523, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1524, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1523, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1525
+ /* "_pydevd_bundle/pydevd_cython.pyx":1524
* py_db._termination_event_set = True
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -29660,7 +29660,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1515
+ /* "_pydevd_bundle/pydevd_cython.pyx":1514
*
* try:
* if py_db._finish_debugging_session: # <<<<<<<<<<<<<<
@@ -29669,14 +29669,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1528
+ /* "_pydevd_bundle/pydevd_cython.pyx":1527
*
* # if thread is not alive, cancel trace_dispatch processing
* if not is_thread_alive(t): # <<<<<<<<<<<<<<
* py_db.notify_thread_not_alive(get_current_thread_id(t))
* if event != 'call': frame.f_trace = NO_FTRACE
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_is_thread_alive); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1528, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_is_thread_alive); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1527, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) {
@@ -29690,24 +29690,24 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_1, __pyx_v_t) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_t);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1528, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1527, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1528, __pyx_L3_error)
+ __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1527, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_12 = ((!__pyx_t_11) != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1529
+ /* "_pydevd_bundle/pydevd_cython.pyx":1528
* # if thread is not alive, cancel trace_dispatch processing
* if not is_thread_alive(t):
* py_db.notify_thread_not_alive(get_current_thread_id(t)) # <<<<<<<<<<<<<<
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # suspend tracing
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_notify_thread_not_alive); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1529, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_notify_thread_not_alive); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1528, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_6);
- __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1529, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1528, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_2 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
@@ -29721,7 +29721,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_1 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_2, __pyx_v_t) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_t);
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1529, __pyx_L3_error)
+ if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1528, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
@@ -29737,27 +29737,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_5 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_4, __pyx_t_1) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1529, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1528, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1530
+ /* "_pydevd_bundle/pydevd_cython.pyx":1529
* if not is_thread_alive(t):
* py_db.notify_thread_not_alive(get_current_thread_id(t))
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None # suspend tracing
*
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1530, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1529, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1530, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1529, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1530, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1529, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1531
+ /* "_pydevd_bundle/pydevd_cython.pyx":1530
* py_db.notify_thread_not_alive(get_current_thread_id(t))
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # suspend tracing # <<<<<<<<<<<<<<
@@ -29768,7 +29768,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1528
+ /* "_pydevd_bundle/pydevd_cython.pyx":1527
*
* # if thread is not alive, cancel trace_dispatch processing
* if not is_thread_alive(t): # <<<<<<<<<<<<<<
@@ -29777,30 +29777,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1533
+ /* "_pydevd_bundle/pydevd_cython.pyx":1532
* return None # suspend tracing
*
* if py_db.thread_analyser is not None: # <<<<<<<<<<<<<<
* py_db.thread_analyser.log_event(frame)
*
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_thread_analyser); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1533, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_thread_analyser); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1532, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_12 = (__pyx_t_5 != Py_None);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_11 = (__pyx_t_12 != 0);
if (__pyx_t_11) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1534
+ /* "_pydevd_bundle/pydevd_cython.pyx":1533
*
* if py_db.thread_analyser is not None:
* py_db.thread_analyser.log_event(frame) # <<<<<<<<<<<<<<
*
* if py_db.asyncio_analyser is not None:
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_thread_analyser); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1534, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_thread_analyser); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1533, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_log_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1534, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_log_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1533, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
@@ -29815,12 +29815,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_5 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_6, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1534, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1533, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1533
+ /* "_pydevd_bundle/pydevd_cython.pyx":1532
* return None # suspend tracing
*
* if py_db.thread_analyser is not None: # <<<<<<<<<<<<<<
@@ -29829,30 +29829,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1536
+ /* "_pydevd_bundle/pydevd_cython.pyx":1535
* py_db.thread_analyser.log_event(frame)
*
* if py_db.asyncio_analyser is not None: # <<<<<<<<<<<<<<
* py_db.asyncio_analyser.log_event(frame)
*
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_asyncio_analyser); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1536, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_asyncio_analyser); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1535, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_11 = (__pyx_t_5 != Py_None);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_12 = (__pyx_t_11 != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1537
+ /* "_pydevd_bundle/pydevd_cython.pyx":1536
*
* if py_db.asyncio_analyser is not None:
* py_db.asyncio_analyser.log_event(frame) # <<<<<<<<<<<<<<
*
* # Note: it's important that the context name is also given because we may hit something once
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_asyncio_analyser); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1537, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_asyncio_analyser); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1536, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_log_event); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1537, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_log_event); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1536, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
@@ -29867,12 +29867,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_5 = (__pyx_t_1) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_1, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1537, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1536, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1536
+ /* "_pydevd_bundle/pydevd_cython.pyx":1535
* py_db.thread_analyser.log_event(frame)
*
* if py_db.asyncio_analyser is not None: # <<<<<<<<<<<<<<
@@ -29881,29 +29881,29 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1541
+ /* "_pydevd_bundle/pydevd_cython.pyx":1540
* # Note: it's important that the context name is also given because we may hit something once
* # in the global context and another in the local context.
* frame_cache_key = (frame.f_code.co_firstlineno, frame.f_code.co_name, frame.f_code.co_filename) # <<<<<<<<<<<<<<
* if not is_stepping and frame_cache_key in cache_skips:
* # print('skipped: trace_dispatch (cache hit)', frame_cache_key, frame.f_lineno, event, frame.f_code.co_name)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_firstlineno); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_firstlineno); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1541, __pyx_L3_error)
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1540, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
@@ -29917,7 +29917,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_v_frame_cache_key = ((PyObject*)__pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1542
+ /* "_pydevd_bundle/pydevd_cython.pyx":1541
* # in the global context and another in the local context.
* frame_cache_key = (frame.f_code.co_firstlineno, frame.f_code.co_name, frame.f_code.co_filename)
* if not is_stepping and frame_cache_key in cache_skips: # <<<<<<<<<<<<<<
@@ -29932,30 +29932,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
if (unlikely(__pyx_v_cache_skips == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
- __PYX_ERR(0, 1542, __pyx_L3_error)
+ __PYX_ERR(0, 1541, __pyx_L3_error)
}
- __pyx_t_11 = (__Pyx_PyDict_ContainsTF(__pyx_v_frame_cache_key, __pyx_v_cache_skips, Py_EQ)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1542, __pyx_L3_error)
+ __pyx_t_11 = (__Pyx_PyDict_ContainsTF(__pyx_v_frame_cache_key, __pyx_v_cache_skips, Py_EQ)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1541, __pyx_L3_error)
__pyx_t_16 = (__pyx_t_11 != 0);
__pyx_t_12 = __pyx_t_16;
__pyx_L26_bool_binop_done:;
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1544
+ /* "_pydevd_bundle/pydevd_cython.pyx":1543
* if not is_stepping and frame_cache_key in cache_skips:
* # print('skipped: trace_dispatch (cache hit)', frame_cache_key, frame.f_lineno, event, frame.f_code.co_name)
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1544, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1543, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1544, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1543, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1544, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1543, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1545
+ /* "_pydevd_bundle/pydevd_cython.pyx":1544
* # print('skipped: trace_dispatch (cache hit)', frame_cache_key, frame.f_lineno, event, frame.f_code.co_name)
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -29966,7 +29966,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1542
+ /* "_pydevd_bundle/pydevd_cython.pyx":1541
* # in the global context and another in the local context.
* frame_cache_key = (frame.f_code.co_firstlineno, frame.f_code.co_name, frame.f_code.co_filename)
* if not is_stepping and frame_cache_key in cache_skips: # <<<<<<<<<<<<<<
@@ -29975,7 +29975,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1547
+ /* "_pydevd_bundle/pydevd_cython.pyx":1546
* return None
*
* try: # <<<<<<<<<<<<<<
@@ -29991,29 +29991,29 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XGOTREF(__pyx_t_13);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1549
+ /* "_pydevd_bundle/pydevd_cython.pyx":1548
* try:
* # Make fast path faster!
* abs_path_real_path_and_base = NORM_PATHS_AND_BASE_CONTAINER[frame.f_code.co_filename] # <<<<<<<<<<<<<<
* except:
* abs_path_real_path_and_base = get_abs_path_real_path_and_base_from_frame(frame)
*/
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1549, __pyx_L29_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1548, __pyx_L29_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1549, __pyx_L29_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_frame, __pyx_n_s_f_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1548, __pyx_L29_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1549, __pyx_L29_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_co_filename); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1548, __pyx_L29_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_GetItem(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1549, __pyx_L29_error)
+ __pyx_t_4 = __Pyx_PyObject_GetItem(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1548, __pyx_L29_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(PyTuple_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(0, 1549, __pyx_L29_error)
+ if (!(likely(PyTuple_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(0, 1548, __pyx_L29_error)
__pyx_v_abs_path_real_path_and_base = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1547
+ /* "_pydevd_bundle/pydevd_cython.pyx":1546
* return None
*
* try: # <<<<<<<<<<<<<<
@@ -30033,7 +30033,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1550
+ /* "_pydevd_bundle/pydevd_cython.pyx":1549
* # Make fast path faster!
* abs_path_real_path_and_base = NORM_PATHS_AND_BASE_CONTAINER[frame.f_code.co_filename]
* except: # <<<<<<<<<<<<<<
@@ -30042,19 +30042,19 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.ThreadTracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_5) < 0) __PYX_ERR(0, 1550, __pyx_L31_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_5) < 0) __PYX_ERR(0, 1549, __pyx_L31_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_5);
- /* "_pydevd_bundle/pydevd_cython.pyx":1551
+ /* "_pydevd_bundle/pydevd_cython.pyx":1550
* abs_path_real_path_and_base = NORM_PATHS_AND_BASE_CONTAINER[frame.f_code.co_filename]
* except:
* abs_path_real_path_and_base = get_abs_path_real_path_and_base_from_frame(frame) # <<<<<<<<<<<<<<
*
* filename = abs_path_real_path_and_base[1]
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1551, __pyx_L31_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1550, __pyx_L31_except_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
@@ -30068,10 +30068,10 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_6 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_3, __pyx_v_frame) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_frame);
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1551, __pyx_L31_except_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1550, __pyx_L31_except_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(PyTuple_CheckExact(__pyx_t_6))||((__pyx_t_6) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_6)->tp_name), 0))) __PYX_ERR(0, 1551, __pyx_L31_except_error)
+ if (!(likely(PyTuple_CheckExact(__pyx_t_6))||((__pyx_t_6) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_6)->tp_name), 0))) __PYX_ERR(0, 1550, __pyx_L31_except_error)
__Pyx_XDECREF_SET(__pyx_v_abs_path_real_path_and_base, ((PyObject*)__pyx_t_6));
__pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -30081,7 +30081,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_L31_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1547
+ /* "_pydevd_bundle/pydevd_cython.pyx":1546
* return None
*
* try: # <<<<<<<<<<<<<<
@@ -30101,7 +30101,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_L34_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1553
+ /* "_pydevd_bundle/pydevd_cython.pyx":1552
* abs_path_real_path_and_base = get_abs_path_real_path_and_base_from_frame(frame)
*
* filename = abs_path_real_path_and_base[1] # <<<<<<<<<<<<<<
@@ -30110,28 +30110,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
if (unlikely(__pyx_v_abs_path_real_path_and_base == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1553, __pyx_L3_error)
+ __PYX_ERR(0, 1552, __pyx_L3_error)
}
- __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v_abs_path_real_path_and_base, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1553, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v_abs_path_real_path_and_base, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1552, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (!(likely(PyString_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 1553, __pyx_L3_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 1552, __pyx_L3_error)
__pyx_v_filename = ((PyObject*)__pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1554
+ /* "_pydevd_bundle/pydevd_cython.pyx":1553
*
* filename = abs_path_real_path_and_base[1]
* file_type = get_file_type(abs_path_real_path_and_base[-1]) # we don't want to debug threading or anything related to pydevd # <<<<<<<<<<<<<<
*
* if file_type is not None:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_file_type); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1554, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_file_type); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1553, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_abs_path_real_path_and_base == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1554, __pyx_L3_error)
+ __PYX_ERR(0, 1553, __pyx_L3_error)
}
- __pyx_t_4 = __Pyx_GetItemInt_Tuple(__pyx_v_abs_path_real_path_and_base, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1554, __pyx_L3_error)
+ __pyx_t_4 = __Pyx_GetItemInt_Tuple(__pyx_v_abs_path_real_path_and_base, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1553, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
@@ -30146,13 +30146,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_5 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_6, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1554, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1553, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_file_type = __pyx_t_5;
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1556
+ /* "_pydevd_bundle/pydevd_cython.pyx":1555
* file_type = get_file_type(abs_path_real_path_and_base[-1]) # we don't want to debug threading or anything related to pydevd
*
* if file_type is not None: # <<<<<<<<<<<<<<
@@ -30163,27 +30163,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_16 = (__pyx_t_12 != 0);
if (__pyx_t_16) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1557
+ /* "_pydevd_bundle/pydevd_cython.pyx":1556
*
* if file_type is not None:
* if file_type == 1: # inlining LIB_FILE = 1 # <<<<<<<<<<<<<<
* if not py_db.in_project_scope(filename):
* # print('skipped: trace_dispatch (not in scope)', abs_path_real_path_and_base[-1], frame.f_lineno, event, frame.f_code.co_name, file_type)
*/
- __pyx_t_5 = __Pyx_PyInt_EqObjC(__pyx_v_file_type, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1557, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyInt_EqObjC(__pyx_v_file_type, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1556, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1557, __pyx_L3_error)
+ __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1556, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_16) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1558
+ /* "_pydevd_bundle/pydevd_cython.pyx":1557
* if file_type is not None:
* if file_type == 1: # inlining LIB_FILE = 1
* if not py_db.in_project_scope(filename): # <<<<<<<<<<<<<<
* # print('skipped: trace_dispatch (not in scope)', abs_path_real_path_and_base[-1], frame.f_lineno, event, frame.f_code.co_name, file_type)
* cache_skips[frame_cache_key] = 1
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1558, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1557, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -30197,15 +30197,15 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_5 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_4, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1558, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1557, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1558, __pyx_L3_error)
+ __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1557, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_12 = ((!__pyx_t_16) != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1560
+ /* "_pydevd_bundle/pydevd_cython.pyx":1559
* if not py_db.in_project_scope(filename):
* # print('skipped: trace_dispatch (not in scope)', abs_path_real_path_and_base[-1], frame.f_lineno, event, frame.f_code.co_name, file_type)
* cache_skips[frame_cache_key] = 1 # <<<<<<<<<<<<<<
@@ -30214,26 +30214,26 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
if (unlikely(__pyx_v_cache_skips == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1560, __pyx_L3_error)
+ __PYX_ERR(0, 1559, __pyx_L3_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_cache_skips, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 1560, __pyx_L3_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_cache_skips, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 1559, __pyx_L3_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1561
+ /* "_pydevd_bundle/pydevd_cython.pyx":1560
* # print('skipped: trace_dispatch (not in scope)', abs_path_real_path_and_base[-1], frame.f_lineno, event, frame.f_code.co_name, file_type)
* cache_skips[frame_cache_key] = 1
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
* else:
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1561, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1560, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1561, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1560, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1561, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1560, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1562
+ /* "_pydevd_bundle/pydevd_cython.pyx":1561
* cache_skips[frame_cache_key] = 1
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30244,7 +30244,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1558
+ /* "_pydevd_bundle/pydevd_cython.pyx":1557
* if file_type is not None:
* if file_type == 1: # inlining LIB_FILE = 1
* if not py_db.in_project_scope(filename): # <<<<<<<<<<<<<<
@@ -30253,7 +30253,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1557
+ /* "_pydevd_bundle/pydevd_cython.pyx":1556
*
* if file_type is not None:
* if file_type == 1: # inlining LIB_FILE = 1 # <<<<<<<<<<<<<<
@@ -30263,7 +30263,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
goto __pyx_L38;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1565
+ /* "_pydevd_bundle/pydevd_cython.pyx":1564
* else:
* # print('skipped: trace_dispatch', abs_path_real_path_and_base[-1], frame.f_lineno, event, frame.f_code.co_name, file_type)
* cache_skips[frame_cache_key] = 1 # <<<<<<<<<<<<<<
@@ -30273,26 +30273,26 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
/*else*/ {
if (unlikely(__pyx_v_cache_skips == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1565, __pyx_L3_error)
+ __PYX_ERR(0, 1564, __pyx_L3_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_cache_skips, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 1565, __pyx_L3_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_cache_skips, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 1564, __pyx_L3_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1566
+ /* "_pydevd_bundle/pydevd_cython.pyx":1565
* # print('skipped: trace_dispatch', abs_path_real_path_and_base[-1], frame.f_lineno, event, frame.f_code.co_name, file_type)
* cache_skips[frame_cache_key] = 1
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1566, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1565, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1566, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1565, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1566, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1565, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1567
+ /* "_pydevd_bundle/pydevd_cython.pyx":1566
* cache_skips[frame_cache_key] = 1
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30305,7 +30305,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_L38:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1556
+ /* "_pydevd_bundle/pydevd_cython.pyx":1555
* file_type = get_file_type(abs_path_real_path_and_base[-1]) # we don't want to debug threading or anything related to pydevd
*
* if file_type is not None: # <<<<<<<<<<<<<<
@@ -30314,7 +30314,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1569
+ /* "_pydevd_bundle/pydevd_cython.pyx":1568
* return None
*
* if is_stepping: # <<<<<<<<<<<<<<
@@ -30324,23 +30324,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_12 = (__pyx_v_is_stepping != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1570
+ /* "_pydevd_bundle/pydevd_cython.pyx":1569
*
* if is_stepping:
* if py_db.is_filter_enabled and py_db.is_ignored_by_filters(filename): # <<<<<<<<<<<<<<
* # ignore files matching stepping filters
* if event != 'call': frame.f_trace = NO_FTRACE
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_is_filter_enabled); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1570, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_is_filter_enabled); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1569, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1570, __pyx_L3_error)
+ __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1569, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_16) {
} else {
__pyx_t_12 = __pyx_t_16;
goto __pyx_L44_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_is_ignored_by_filters); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1570, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_is_ignored_by_filters); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1569, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -30354,31 +30354,31 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_5 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_4, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1570, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1569, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1570, __pyx_L3_error)
+ __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1569, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_12 = __pyx_t_16;
__pyx_L44_bool_binop_done:;
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1572
+ /* "_pydevd_bundle/pydevd_cython.pyx":1571
* if py_db.is_filter_enabled and py_db.is_ignored_by_filters(filename):
* # ignore files matching stepping filters
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
* if py_db.is_filter_libraries and not py_db.in_project_scope(filename):
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1572, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1571, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1572, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1571, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1572, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1571, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1573
+ /* "_pydevd_bundle/pydevd_cython.pyx":1572
* # ignore files matching stepping filters
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30389,7 +30389,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1570
+ /* "_pydevd_bundle/pydevd_cython.pyx":1569
*
* if is_stepping:
* if py_db.is_filter_enabled and py_db.is_ignored_by_filters(filename): # <<<<<<<<<<<<<<
@@ -30398,23 +30398,23 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1574
+ /* "_pydevd_bundle/pydevd_cython.pyx":1573
* if event != 'call': frame.f_trace = NO_FTRACE
* return None
* if py_db.is_filter_libraries and not py_db.in_project_scope(filename): # <<<<<<<<<<<<<<
* # ignore library files while stepping
* if event != 'call': frame.f_trace = NO_FTRACE
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_is_filter_libraries); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1574, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_is_filter_libraries); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1573, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1574, __pyx_L3_error)
+ __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1573, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_16) {
} else {
__pyx_t_12 = __pyx_t_16;
goto __pyx_L48_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1574, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_in_project_scope); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1573, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
@@ -30428,32 +30428,32 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_5 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_4, __pyx_v_filename) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v_filename);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1574, __pyx_L3_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1573, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1574, __pyx_L3_error)
+ __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_16 < 0)) __PYX_ERR(0, 1573, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_11 = ((!__pyx_t_16) != 0);
__pyx_t_12 = __pyx_t_11;
__pyx_L48_bool_binop_done:;
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1576
+ /* "_pydevd_bundle/pydevd_cython.pyx":1575
* if py_db.is_filter_libraries and not py_db.in_project_scope(filename):
* # ignore library files while stepping
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1576, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1575, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1576, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1575, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1576, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1575, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1577
+ /* "_pydevd_bundle/pydevd_cython.pyx":1576
* # ignore library files while stepping
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30464,7 +30464,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1574
+ /* "_pydevd_bundle/pydevd_cython.pyx":1573
* if event != 'call': frame.f_trace = NO_FTRACE
* return None
* if py_db.is_filter_libraries and not py_db.in_project_scope(filename): # <<<<<<<<<<<<<<
@@ -30473,7 +30473,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1569
+ /* "_pydevd_bundle/pydevd_cython.pyx":1568
* return None
*
* if is_stepping: # <<<<<<<<<<<<<<
@@ -30482,7 +30482,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1580
+ /* "_pydevd_bundle/pydevd_cython.pyx":1579
*
* # print('trace_dispatch', base, frame.f_lineno, event, frame.f_code.co_name, file_type)
* if additional_info.is_tracing: # <<<<<<<<<<<<<<
@@ -30492,22 +30492,22 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_12 = (__pyx_v_additional_info->is_tracing != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1581
+ /* "_pydevd_bundle/pydevd_cython.pyx":1580
* # print('trace_dispatch', base, frame.f_lineno, event, frame.f_code.co_name, file_type)
* if additional_info.is_tracing:
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None # we don't wan't to trace code invoked from pydevd_frame.trace_dispatch
*
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1581, __pyx_L3_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1580, __pyx_L3_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1581, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1580, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1581, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1580, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1582
+ /* "_pydevd_bundle/pydevd_cython.pyx":1581
* if additional_info.is_tracing:
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # we don't wan't to trace code invoked from pydevd_frame.trace_dispatch # <<<<<<<<<<<<<<
@@ -30518,7 +30518,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1580
+ /* "_pydevd_bundle/pydevd_cython.pyx":1579
*
* # print('trace_dispatch', base, frame.f_lineno, event, frame.f_code.co_name, file_type)
* if additional_info.is_tracing: # <<<<<<<<<<<<<<
@@ -30527,14 +30527,14 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1588
+ /* "_pydevd_bundle/pydevd_cython.pyx":1587
* ret = PyDBFrame(
* (
* py_db, filename, additional_info, t, frame_skips_cache, frame_cache_key, # <<<<<<<<<<<<<<
* )
* ).trace_dispatch(frame, event, arg)
*/
- __pyx_t_5 = PyTuple_New(6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1588, __pyx_L3_error)
+ __pyx_t_5 = PyTuple_New(6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1587, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_py_db);
__Pyx_GIVEREF(__pyx_v_py_db);
@@ -30555,32 +30555,32 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_GIVEREF(__pyx_v_frame_cache_key);
PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_v_frame_cache_key);
- /* "_pydevd_bundle/pydevd_cython.pyx":1586
+ /* "_pydevd_bundle/pydevd_cython.pyx":1585
* # Just create PyDBFrame directly (removed support for Python versions < 2.5, which required keeping a weak
* # reference to the frame).
* ret = PyDBFrame( # <<<<<<<<<<<<<<
* (
* py_db, filename, additional_info, t, frame_skips_cache, frame_cache_key,
*/
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame), __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1586, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame), __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1585, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1590
+ /* "_pydevd_bundle/pydevd_cython.pyx":1589
* py_db, filename, additional_info, t, frame_skips_cache, frame_cache_key,
* )
* ).trace_dispatch(frame, event, arg) # <<<<<<<<<<<<<<
* if ret is None:
* cache_skips[frame_cache_key] = 1
*/
- if (!(likely(PyString_CheckExact(__pyx_v_event))||((__pyx_v_event) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_v_event)->tp_name), 0))) __PYX_ERR(0, 1590, __pyx_L3_error)
- __pyx_t_5 = ((struct __pyx_vtabstruct_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_t_1)->__pyx_vtab)->trace_dispatch(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_t_1), __pyx_v_frame, ((PyObject*)__pyx_v_event), __pyx_v_arg, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1590, __pyx_L3_error)
+ if (!(likely(PyString_CheckExact(__pyx_v_event))||((__pyx_v_event) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_v_event)->tp_name), 0))) __PYX_ERR(0, 1589, __pyx_L3_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_t_1)->__pyx_vtab)->trace_dispatch(((struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *)__pyx_t_1), __pyx_v_frame, ((PyObject*)__pyx_v_event), __pyx_v_arg, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1589, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_ret = __pyx_t_5;
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1591
+ /* "_pydevd_bundle/pydevd_cython.pyx":1590
* )
* ).trace_dispatch(frame, event, arg)
* if ret is None: # <<<<<<<<<<<<<<
@@ -30591,7 +30591,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_11 = (__pyx_t_12 != 0);
if (__pyx_t_11) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1592
+ /* "_pydevd_bundle/pydevd_cython.pyx":1591
* ).trace_dispatch(frame, event, arg)
* if ret is None:
* cache_skips[frame_cache_key] = 1 # <<<<<<<<<<<<<<
@@ -30600,26 +30600,26 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
if (unlikely(__pyx_v_cache_skips == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 1592, __pyx_L3_error)
+ __PYX_ERR(0, 1591, __pyx_L3_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_cache_skips, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 1592, __pyx_L3_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_cache_skips, __pyx_v_frame_cache_key, __pyx_int_1) < 0)) __PYX_ERR(0, 1591, __pyx_L3_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1593
+ /* "_pydevd_bundle/pydevd_cython.pyx":1592
* if ret is None:
* cache_skips[frame_cache_key] = 1
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1593, __pyx_L3_error)
+ __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1592, __pyx_L3_error)
if (__pyx_t_11) {
- __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1593, __pyx_L3_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1592, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1593, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_5) < 0) __PYX_ERR(0, 1592, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1594
+ /* "_pydevd_bundle/pydevd_cython.pyx":1593
* cache_skips[frame_cache_key] = 1
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30630,7 +30630,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1591
+ /* "_pydevd_bundle/pydevd_cython.pyx":1590
* )
* ).trace_dispatch(frame, event, arg)
* if ret is None: # <<<<<<<<<<<<<<
@@ -30639,28 +30639,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1597
+ /* "_pydevd_bundle/pydevd_cython.pyx":1596
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* ret = SafeCallWrapper(ret) # <<<<<<<<<<<<<<
* # ENDIF
* frame.f_trace = ret # Make sure we keep the returned tracer.
*/
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_v_ret); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1597, __pyx_L3_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper), __pyx_v_ret); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1596, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_ret, __pyx_t_5);
__pyx_t_5 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1599
+ /* "_pydevd_bundle/pydevd_cython.pyx":1598
* ret = SafeCallWrapper(ret)
* # ENDIF
* frame.f_trace = ret # Make sure we keep the returned tracer. # <<<<<<<<<<<<<<
* return ret
*
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_v_ret) < 0) __PYX_ERR(0, 1599, __pyx_L3_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_v_ret) < 0) __PYX_ERR(0, 1598, __pyx_L3_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1600
+ /* "_pydevd_bundle/pydevd_cython.pyx":1599
* # ENDIF
* frame.f_trace = ret # Make sure we keep the returned tracer.
* return ret # <<<<<<<<<<<<<<
@@ -30672,7 +30672,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_r = __pyx_v_ret;
goto __pyx_L7_try_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1514
+ /* "_pydevd_bundle/pydevd_cython.pyx":1513
* is_stepping = pydev_step_cmd != -1
*
* try: # <<<<<<<<<<<<<<
@@ -30688,7 +30688,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1602
+ /* "_pydevd_bundle/pydevd_cython.pyx":1601
* return ret
*
* except SystemExit: # <<<<<<<<<<<<<<
@@ -30698,27 +30698,27 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_7 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_SystemExit);
if (__pyx_t_7) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.ThreadTracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_4) < 0) __PYX_ERR(0, 1602, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_1, &__pyx_t_4) < 0) __PYX_ERR(0, 1601, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_4);
- /* "_pydevd_bundle/pydevd_cython.pyx":1603
+ /* "_pydevd_bundle/pydevd_cython.pyx":1602
*
* except SystemExit:
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1603, __pyx_L5_except_error)
+ __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1602, __pyx_L5_except_error)
if (__pyx_t_11) {
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1603, __pyx_L5_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1602, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1603, __pyx_L5_except_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1602, __pyx_L5_except_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1604
+ /* "_pydevd_bundle/pydevd_cython.pyx":1603
* except SystemExit:
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30733,7 +30733,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
goto __pyx_L6_except_return;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1606
+ /* "_pydevd_bundle/pydevd_cython.pyx":1605
* return None
*
* except Exception: # <<<<<<<<<<<<<<
@@ -30743,40 +30743,40 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_t_7 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
if (__pyx_t_7) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.ThreadTracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_5) < 0) __PYX_ERR(0, 1606, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_5) < 0) __PYX_ERR(0, 1605, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_5);
- /* "_pydevd_bundle/pydevd_cython.pyx":1607
+ /* "_pydevd_bundle/pydevd_cython.pyx":1606
*
* except Exception:
* if py_db._finish_debugging_session: # <<<<<<<<<<<<<<
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # Don't log errors when we're shutting down.
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_finish_debugging_session); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1607, __pyx_L5_except_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_py_db, __pyx_n_s_finish_debugging_session); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1606, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1607, __pyx_L5_except_error)
+ __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1606, __pyx_L5_except_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_11) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1608
+ /* "_pydevd_bundle/pydevd_cython.pyx":1607
* except Exception:
* if py_db._finish_debugging_session:
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None # Don't log errors when we're shutting down.
* # Log it
*/
- __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1608, __pyx_L5_except_error)
+ __pyx_t_11 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 1607, __pyx_L5_except_error)
if (__pyx_t_11) {
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1608, __pyx_L5_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1607, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1608, __pyx_L5_except_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1607, __pyx_L5_except_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1609
+ /* "_pydevd_bundle/pydevd_cython.pyx":1608
* if py_db._finish_debugging_session:
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # Don't log errors when we're shutting down. # <<<<<<<<<<<<<<
@@ -30790,7 +30790,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L6_except_return;
- /* "_pydevd_bundle/pydevd_cython.pyx":1607
+ /* "_pydevd_bundle/pydevd_cython.pyx":1606
*
* except Exception:
* if py_db._finish_debugging_session: # <<<<<<<<<<<<<<
@@ -30799,7 +30799,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1611
+ /* "_pydevd_bundle/pydevd_cython.pyx":1610
* return None # Don't log errors when we're shutting down.
* # Log it
* try: # <<<<<<<<<<<<<<
@@ -30815,30 +30815,30 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XGOTREF(__pyx_t_15);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1612
+ /* "_pydevd_bundle/pydevd_cython.pyx":1611
* # Log it
* try:
* if traceback is not None: # <<<<<<<<<<<<<<
* # This can actually happen during the interpreter shutdown in Python 2.7
* traceback.print_exc()
*/
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_traceback); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1612, __pyx_L62_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_traceback); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1611, __pyx_L62_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_11 = (__pyx_t_6 != Py_None);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_12 = (__pyx_t_11 != 0);
if (__pyx_t_12) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1614
+ /* "_pydevd_bundle/pydevd_cython.pyx":1613
* if traceback is not None:
* # This can actually happen during the interpreter shutdown in Python 2.7
* traceback.print_exc() # <<<<<<<<<<<<<<
* except:
* # Error logging? We're really in the interpreter shutdown...
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_traceback); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1614, __pyx_L62_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_traceback); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1613, __pyx_L62_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1614, __pyx_L62_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1613, __pyx_L62_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = NULL;
@@ -30853,12 +30853,12 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
}
__pyx_t_6 = (__pyx_t_2) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1614, __pyx_L62_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1613, __pyx_L62_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1612
+ /* "_pydevd_bundle/pydevd_cython.pyx":1611
* # Log it
* try:
* if traceback is not None: # <<<<<<<<<<<<<<
@@ -30867,7 +30867,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
*/
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1611
+ /* "_pydevd_bundle/pydevd_cython.pyx":1610
* return None # Don't log errors when we're shutting down.
* # Log it
* try: # <<<<<<<<<<<<<<
@@ -30884,7 +30884,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1615
+ /* "_pydevd_bundle/pydevd_cython.pyx":1614
* # This can actually happen during the interpreter shutdown in Python 2.7
* traceback.print_exc()
* except: # <<<<<<<<<<<<<<
@@ -30903,22 +30903,22 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
__pyx_L69_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1619
+ /* "_pydevd_bundle/pydevd_cython.pyx":1618
* # (https://github.com/fabioz/PyDev.Debugger/issues/8)
* pass
* if event != 'call': frame.f_trace = NO_FTRACE # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1619, __pyx_L5_except_error)
+ __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_event, __pyx_n_s_call, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 1618, __pyx_L5_except_error)
if (__pyx_t_12) {
- __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1619, __pyx_L5_except_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1618, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1619, __pyx_L5_except_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_frame, __pyx_n_s_f_trace, __pyx_t_6) < 0) __PYX_ERR(0, 1618, __pyx_L5_except_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1620
+ /* "_pydevd_bundle/pydevd_cython.pyx":1619
* pass
* if event != 'call': frame.f_trace = NO_FTRACE
* return None # <<<<<<<<<<<<<<
@@ -30935,7 +30935,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
goto __pyx_L5_except_error;
__pyx_L5_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1514
+ /* "_pydevd_bundle/pydevd_cython.pyx":1513
* is_stepping = pydev_step_cmd != -1
*
* try: # <<<<<<<<<<<<<<
@@ -30961,7 +30961,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
goto __pyx_L0;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1486
+ /* "_pydevd_bundle/pydevd_cython.pyx":1485
* # ENDIF
*
* def __call__(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -30995,7 +30995,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__cal
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1476
+/* "_pydevd_bundle/pydevd_cython.pyx":1475
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef class ThreadTracer:
* cdef public tuple _args; # <<<<<<<<<<<<<<
@@ -31053,7 +31053,7 @@ static int __pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_5_args_2__se
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
- if (!(likely(PyTuple_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1476, __pyx_L1_error)
+ if (!(likely(PyTuple_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_value)->tp_name), 0))) __PYX_ERR(0, 1475, __pyx_L1_error)
__pyx_t_1 = __pyx_v_value;
__Pyx_INCREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
@@ -31396,7 +31396,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_6__set
return __pyx_r;
}
-/* "_pydevd_bundle/pydevd_cython.pyx":1635
+/* "_pydevd_bundle/pydevd_cython.pyx":1634
* _original_call = ThreadTracer.__call__
*
* def __call__(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -31445,23 +31445,23 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_17__call__(PyObject *
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_frame)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, 1); __PYX_ERR(0, 1635, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, 1); __PYX_ERR(0, 1634, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_event)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, 2); __PYX_ERR(0, 1635, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, 2); __PYX_ERR(0, 1634, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_arg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, 3); __PYX_ERR(0, 1635, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, 3); __PYX_ERR(0, 1634, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(0, 1635, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(0, 1634, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
goto __pyx_L5_argtuple_error;
@@ -31478,7 +31478,7 @@ static PyObject *__pyx_pw_14_pydevd_bundle_13pydevd_cython_17__call__(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1635, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1634, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -31504,28 +31504,28 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_16__call__(CYTHON_UNU
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__call__", 0);
- /* "_pydevd_bundle/pydevd_cython.pyx":1636
+ /* "_pydevd_bundle/pydevd_cython.pyx":1635
*
* def __call__(self, frame, event, arg):
* _tid_to_last_frame[self._args[1].ident] = frame # <<<<<<<<<<<<<<
* return _original_call(self, frame, event, arg)
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_tid_to_last_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1636, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_tid_to_last_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_args_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1636, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_args_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_2, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1636, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_2, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_ident); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1636, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_ident); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (unlikely(PyObject_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_frame) < 0)) __PYX_ERR(0, 1636, __pyx_L1_error)
+ if (unlikely(PyObject_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_frame) < 0)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1637
+ /* "_pydevd_bundle/pydevd_cython.pyx":1636
* def __call__(self, frame, event, arg):
* _tid_to_last_frame[self._args[1].ident] = frame
* return _original_call(self, frame, event, arg) # <<<<<<<<<<<<<<
@@ -31533,7 +31533,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_16__call__(CYTHON_UNU
* ThreadTracer.__call__ = __call__
*/
__Pyx_XDECREF(__pyx_r);
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_original_call); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1637, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_original_call); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1636, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = NULL;
__pyx_t_4 = 0;
@@ -31550,7 +31550,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_16__call__(CYTHON_UNU
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[5] = {__pyx_t_3, __pyx_v_self, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_4, 4+__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1637, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_4, 4+__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1636, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
@@ -31558,13 +31558,13 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_16__call__(CYTHON_UNU
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
PyObject *__pyx_temp[5] = {__pyx_t_3, __pyx_v_self, __pyx_v_frame, __pyx_v_event, __pyx_v_arg};
- __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_4, 4+__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1637, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_4, 4+__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1636, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else
#endif
{
- __pyx_t_5 = PyTuple_New(4+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1637, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(4+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1636, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_3) {
__Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
@@ -31581,7 +31581,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_16__call__(CYTHON_UNU
__Pyx_INCREF(__pyx_v_arg);
__Pyx_GIVEREF(__pyx_v_arg);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_4, __pyx_v_arg);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1637, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1636, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
@@ -31590,7 +31590,7 @@ static PyObject *__pyx_pf_14_pydevd_bundle_13pydevd_cython_16__call__(CYTHON_UNU
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1635
+ /* "_pydevd_bundle/pydevd_cython.pyx":1634
* _original_call = ThreadTracer.__call__
*
* def __call__(self, frame, event, arg): # <<<<<<<<<<<<<<
@@ -36223,8 +36223,8 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_compile, __pyx_k_compile, sizeof(__pyx_k_compile), 0, 0, 1, 1},
{&__pyx_n_s_condition, __pyx_k_condition, sizeof(__pyx_k_condition), 0, 0, 1, 1},
{&__pyx_n_s_conditional_breakpoint_exception, __pyx_k_conditional_breakpoint_exception, sizeof(__pyx_k_conditional_breakpoint_exception), 0, 0, 1, 1},
- {&__pyx_n_s_currentThread, __pyx_k_currentThread, sizeof(__pyx_k_currentThread), 0, 0, 1, 1},
{&__pyx_n_s_current_frames, __pyx_k_current_frames, sizeof(__pyx_k_current_frames), 0, 0, 1, 1},
+ {&__pyx_n_s_current_thread, __pyx_k_current_thread, sizeof(__pyx_k_current_thread), 0, 0, 1, 1},
{&__pyx_n_s_debug, __pyx_k_debug, sizeof(__pyx_k_debug), 0, 0, 1, 1},
{&__pyx_n_s_dict, __pyx_k_dict, sizeof(__pyx_k_dict), 0, 0, 1, 1},
{&__pyx_n_s_dict_iter_values, __pyx_k_dict_iter_values, sizeof(__pyx_k_dict_iter_values), 0, 0, 1, 1},
@@ -36503,15 +36503,15 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
};
static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) {
__pyx_builtin_RuntimeError = __Pyx_GetBuiltinName(__pyx_n_s_RuntimeError); if (!__pyx_builtin_RuntimeError) __PYX_ERR(0, 57, __pyx_L1_error)
- __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_n_s_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(0, 207, __pyx_L1_error)
+ __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_n_s_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(0, 206, __pyx_L1_error)
__pyx_builtin_AttributeError = __Pyx_GetBuiltinName(__pyx_n_s_AttributeError); if (!__pyx_builtin_AttributeError) __PYX_ERR(0, 163, __pyx_L1_error)
- __pyx_builtin_eval = __Pyx_GetBuiltinName(__pyx_n_s_eval); if (!__pyx_builtin_eval) __PYX_ERR(0, 229, __pyx_L1_error)
- __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_n_s_id); if (!__pyx_builtin_id) __PYX_ERR(0, 509, __pyx_L1_error)
- __pyx_builtin_KeyboardInterrupt = __Pyx_GetBuiltinName(__pyx_n_s_KeyboardInterrupt); if (!__pyx_builtin_KeyboardInterrupt) __PYX_ERR(0, 547, __pyx_L1_error)
- __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 667, __pyx_L1_error)
- __pyx_builtin_print = __Pyx_GetBuiltinName(__pyx_n_s_print); if (!__pyx_builtin_print) __PYX_ERR(0, 670, __pyx_L1_error)
- __pyx_builtin_IndexError = __Pyx_GetBuiltinName(__pyx_n_s_IndexError); if (!__pyx_builtin_IndexError) __PYX_ERR(0, 674, __pyx_L1_error)
- __pyx_builtin_SystemExit = __Pyx_GetBuiltinName(__pyx_n_s_SystemExit); if (!__pyx_builtin_SystemExit) __PYX_ERR(0, 1602, __pyx_L1_error)
+ __pyx_builtin_eval = __Pyx_GetBuiltinName(__pyx_n_s_eval); if (!__pyx_builtin_eval) __PYX_ERR(0, 228, __pyx_L1_error)
+ __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_n_s_id); if (!__pyx_builtin_id) __PYX_ERR(0, 508, __pyx_L1_error)
+ __pyx_builtin_KeyboardInterrupt = __Pyx_GetBuiltinName(__pyx_n_s_KeyboardInterrupt); if (!__pyx_builtin_KeyboardInterrupt) __PYX_ERR(0, 546, __pyx_L1_error)
+ __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 666, __pyx_L1_error)
+ __pyx_builtin_print = __Pyx_GetBuiltinName(__pyx_n_s_print); if (!__pyx_builtin_print) __PYX_ERR(0, 669, __pyx_L1_error)
+ __pyx_builtin_IndexError = __Pyx_GetBuiltinName(__pyx_n_s_IndexError); if (!__pyx_builtin_IndexError) __PYX_ERR(0, 673, __pyx_L1_error)
+ __pyx_builtin_SystemExit = __Pyx_GetBuiltinName(__pyx_n_s_SystemExit); if (!__pyx_builtin_SystemExit) __PYX_ERR(0, 1601, __pyx_L1_error)
return 0;
__pyx_L1_error:;
return -1;
@@ -36532,26 +36532,26 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) {
__Pyx_GOTREF(__pyx_tuple__2);
__Pyx_GIVEREF(__pyx_tuple__2);
- /* "_pydevd_bundle/pydevd_cython.pyx":581
+ /* "_pydevd_bundle/pydevd_cython.pyx":580
* def manage_return_values(self, main_debugger, frame, event, arg):
*
* def get_func_name(frame): # <<<<<<<<<<<<<<
* code_obj = frame.f_code
* func_name = code_obj.co_name
*/
- __pyx_tuple__3 = PyTuple_Pack(4, __pyx_n_s_frame, __pyx_n_s_code_obj, __pyx_n_s_func_name, __pyx_n_s_cls_name); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 581, __pyx_L1_error)
+ __pyx_tuple__3 = PyTuple_Pack(4, __pyx_n_s_frame, __pyx_n_s_code_obj, __pyx_n_s_func_name, __pyx_n_s_cls_name); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 580, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__3);
__Pyx_GIVEREF(__pyx_tuple__3);
- __pyx_codeobj__4 = (PyObject*)__Pyx_PyCode_New(1, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__3, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_get_func_name, 581, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__4)) __PYX_ERR(0, 581, __pyx_L1_error)
+ __pyx_codeobj__4 = (PyObject*)__Pyx_PyCode_New(1, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__3, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_get_func_name, 580, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__4)) __PYX_ERR(0, 580, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1211
+ /* "_pydevd_bundle/pydevd_cython.pyx":1210
* if f_unhandled.f_code.co_name in ('__bootstrap', '_bootstrap'):
* # We need __bootstrap_inner, not __bootstrap.
* return None, False # <<<<<<<<<<<<<<
*
* elif f_unhandled.f_code.co_name in ('__bootstrap_inner', '_bootstrap_inner'):
*/
- __pyx_tuple__6 = PyTuple_Pack(2, Py_None, Py_False); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 1211, __pyx_L1_error)
+ __pyx_tuple__6 = PyTuple_Pack(2, Py_None, Py_False); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 1210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__6);
__Pyx_GIVEREF(__pyx_tuple__6);
@@ -36632,110 +36632,110 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) {
__Pyx_GIVEREF(__pyx_tuple__14);
__pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_set_additional_thread_info, 159, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 159, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":208
+ /* "_pydevd_bundle/pydevd_cython.pyx":207
* from _pydevd_bundle.pydevd_signature import send_signature_call_trace, send_signature_return_trace
* except ImportError:
* def send_signature_call_trace(*args, **kwargs): # <<<<<<<<<<<<<<
* pass
*
*/
- __pyx_tuple__16 = PyTuple_Pack(2, __pyx_n_s_args, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 208, __pyx_L1_error)
+ __pyx_tuple__16 = PyTuple_Pack(2, __pyx_n_s_args, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 207, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__16);
__Pyx_GIVEREF(__pyx_tuple__16);
- __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__16, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_send_signature_call_trace, 208, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 208, __pyx_L1_error)
+ __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__16, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_send_signature_call_trace, 207, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 207, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":213
+ /* "_pydevd_bundle/pydevd_cython.pyx":212
* basename = os.path.basename
*
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException') # <<<<<<<<<<<<<<
* DEBUG_START = ('pydevd.py', '_exec')
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile')
*/
- __pyx_tuple__18 = PyTuple_Pack(1, __pyx_kp_s_IgnoreException); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 213, __pyx_L1_error)
+ __pyx_tuple__18 = PyTuple_Pack(1, __pyx_kp_s_IgnoreException); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__18);
__Pyx_GIVEREF(__pyx_tuple__18);
- /* "_pydevd_bundle/pydevd_cython.pyx":214
+ /* "_pydevd_bundle/pydevd_cython.pyx":213
*
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException')
* DEBUG_START = ('pydevd.py', '_exec') # <<<<<<<<<<<<<<
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile')
* TRACE_PROPERTY = 'pydevd_traceproperty.py'
*/
- __pyx_tuple__19 = PyTuple_Pack(2, __pyx_kp_s_pydevd_py, __pyx_n_s_exec); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 214, __pyx_L1_error)
+ __pyx_tuple__19 = PyTuple_Pack(2, __pyx_kp_s_pydevd_py, __pyx_n_s_exec); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__19);
__Pyx_GIVEREF(__pyx_tuple__19);
- /* "_pydevd_bundle/pydevd_cython.pyx":215
+ /* "_pydevd_bundle/pydevd_cython.pyx":214
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException')
* DEBUG_START = ('pydevd.py', '_exec')
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile') # <<<<<<<<<<<<<<
* TRACE_PROPERTY = 'pydevd_traceproperty.py'
* get_file_type = DONT_TRACE.get
*/
- __pyx_tuple__20 = PyTuple_Pack(2, __pyx_kp_s_pydev_execfile_py, __pyx_n_s_execfile); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(0, 215, __pyx_L1_error)
+ __pyx_tuple__20 = PyTuple_Pack(2, __pyx_kp_s_pydev_execfile_py, __pyx_n_s_execfile); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(0, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__20);
__Pyx_GIVEREF(__pyx_tuple__20);
- /* "_pydevd_bundle/pydevd_cython.pyx":220
+ /* "_pydevd_bundle/pydevd_cython.pyx":219
*
*
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame): # <<<<<<<<<<<<<<
* condition = breakpoint.condition
* try:
*/
- __pyx_tuple__21 = PyTuple_Pack(11, __pyx_n_s_py_db, __pyx_n_s_info, __pyx_n_s_breakpoint, __pyx_n_s_new_frame, __pyx_n_s_condition, __pyx_n_s_e, __pyx_n_s_etype, __pyx_n_s_value, __pyx_n_s_tb, __pyx_n_s_error, __pyx_n_s_stack); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 220, __pyx_L1_error)
+ __pyx_tuple__21 = PyTuple_Pack(11, __pyx_n_s_py_db, __pyx_n_s_info, __pyx_n_s_breakpoint, __pyx_n_s_new_frame, __pyx_n_s_condition, __pyx_n_s_e, __pyx_n_s_etype, __pyx_n_s_value, __pyx_n_s_tb, __pyx_n_s_error, __pyx_n_s_stack); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 219, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__21);
__Pyx_GIVEREF(__pyx_tuple__21);
- __pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(4, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__21, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_handle_breakpoint_condition, 220, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) __PYX_ERR(0, 220, __pyx_L1_error)
+ __pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(4, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__21, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_handle_breakpoint_condition, 219, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) __PYX_ERR(0, 219, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":263
+ /* "_pydevd_bundle/pydevd_cython.pyx":262
*
*
* def handle_breakpoint_expression(breakpoint, info, new_frame): # <<<<<<<<<<<<<<
* try:
* try:
*/
- __pyx_tuple__23 = PyTuple_Pack(4, __pyx_n_s_breakpoint, __pyx_n_s_info, __pyx_n_s_new_frame, __pyx_n_s_val); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 263, __pyx_L1_error)
+ __pyx_tuple__23 = PyTuple_Pack(4, __pyx_n_s_breakpoint, __pyx_n_s_info, __pyx_n_s_new_frame, __pyx_n_s_val); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 262, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__23);
__Pyx_GIVEREF(__pyx_tuple__23);
- __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__23, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_handle_breakpoint_expression, 263, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(0, 263, __pyx_L1_error)
+ __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__23, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_handle_breakpoint_expression, 262, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(0, 262, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1187
+ /* "_pydevd_bundle/pydevd_cython.pyx":1186
*
*
* def fix_top_level_trace_and_get_trace_func(py_db, frame): # <<<<<<<<<<<<<<
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef str filename;
*/
- __pyx_tuple__25 = PyTuple_Pack(13, __pyx_n_s_py_db, __pyx_n_s_frame, __pyx_n_s_filename, __pyx_n_s_name_2, __pyx_n_s_args, __pyx_n_s_thread, __pyx_n_s_f_unhandled, __pyx_n_s_force_only_unhandled_tracer, __pyx_n_s_t, __pyx_n_s_additional_info, __pyx_n_s_top_level_thread_tracer_2, __pyx_n_s_f_trace, __pyx_n_s_thread_tracer); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 1187, __pyx_L1_error)
+ __pyx_tuple__25 = PyTuple_Pack(13, __pyx_n_s_py_db, __pyx_n_s_frame, __pyx_n_s_filename, __pyx_n_s_name_2, __pyx_n_s_args, __pyx_n_s_thread, __pyx_n_s_f_unhandled, __pyx_n_s_force_only_unhandled_tracer, __pyx_n_s_t, __pyx_n_s_additional_info, __pyx_n_s_top_level_thread_tracer_2, __pyx_n_s_f_trace, __pyx_n_s_thread_tracer); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 1186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__25);
__Pyx_GIVEREF(__pyx_tuple__25);
- __pyx_codeobj__26 = (PyObject*)__Pyx_PyCode_New(2, 0, 13, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__25, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_fix_top_level_trace_and_get_trac, 1187, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__26)) __PYX_ERR(0, 1187, __pyx_L1_error)
+ __pyx_codeobj__26 = (PyObject*)__Pyx_PyCode_New(2, 0, 13, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__25, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_fix_top_level_trace_and_get_trac, 1186, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__26)) __PYX_ERR(0, 1186, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1301
+ /* "_pydevd_bundle/pydevd_cython.pyx":1300
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def trace_dispatch(py_db, frame, str event, arg): # <<<<<<<<<<<<<<
* # ELSE
* # def trace_dispatch(py_db, frame, event, arg):
*/
- __pyx_tuple__27 = PyTuple_Pack(6, __pyx_n_s_py_db, __pyx_n_s_frame, __pyx_n_s_event, __pyx_n_s_arg, __pyx_n_s_thread_trace_func, __pyx_n_s_apply_to_settrace); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 1301, __pyx_L1_error)
+ __pyx_tuple__27 = PyTuple_Pack(6, __pyx_n_s_py_db, __pyx_n_s_frame, __pyx_n_s_event, __pyx_n_s_arg, __pyx_n_s_thread_trace_func, __pyx_n_s_apply_to_settrace); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 1300, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__27);
__Pyx_GIVEREF(__pyx_tuple__27);
- __pyx_codeobj__28 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__27, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_trace_dispatch, 1301, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__28)) __PYX_ERR(0, 1301, __pyx_L1_error)
+ __pyx_codeobj__28 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__27, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_trace_dispatch, 1300, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__28)) __PYX_ERR(0, 1300, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":1635
+ /* "_pydevd_bundle/pydevd_cython.pyx":1634
* _original_call = ThreadTracer.__call__
*
* def __call__(self, frame, event, arg): # <<<<<<<<<<<<<<
* _tid_to_last_frame[self._args[1].ident] = frame
* return _original_call(self, frame, event, arg)
*/
- __pyx_tuple__29 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_frame, __pyx_n_s_event, __pyx_n_s_arg); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __pyx_tuple__29 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_frame, __pyx_n_s_event, __pyx_n_s_arg); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 1634, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__29);
__Pyx_GIVEREF(__pyx_tuple__29);
- __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_call_2, 1635, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_pydevd_bundle_pydevd_cython_pyx, __pyx_n_s_call_2, 1634, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(0, 1634, __pyx_L1_error)
/* "(tree fragment)":1
* def __pyx_unpickle_PyDBAdditionalThreadInfo(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<<
@@ -36782,7 +36782,7 @@ static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) {
if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
__pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error)
__pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error)
- __pyx_int_33 = PyInt_FromLong(33); if (unlikely(!__pyx_int_33)) __PYX_ERR(0, 1, __pyx_L1_error)
+ __pyx_int_34 = PyInt_FromLong(34); if (unlikely(!__pyx_int_34)) __PYX_ERR(0, 1, __pyx_L1_error)
__pyx_int_160 = PyInt_FromLong(160); if (unlikely(!__pyx_int_160)) __PYX_ERR(0, 1, __pyx_L1_error)
__pyx_int_19394913 = PyInt_FromLong(19394913L); if (unlikely(!__pyx_int_19394913)) __PYX_ERR(0, 1, __pyx_L1_error)
__pyx_int_64458794 = PyInt_FromLong(64458794L); if (unlikely(!__pyx_int_64458794)) __PYX_ERR(0, 1, __pyx_L1_error)
@@ -36858,48 +36858,48 @@ static int __Pyx_modinit_type_init_code(void) {
__pyx_vtabptr_14_pydevd_bundle_13pydevd_cython_PyDBFrame = &__pyx_vtable_14_pydevd_bundle_13pydevd_cython_PyDBFrame;
__pyx_vtable_14_pydevd_bundle_13pydevd_cython_PyDBFrame.trace_dispatch = (PyObject *(*)(struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *, PyObject *, PyObject *, PyObject *, int __pyx_skip_dispatch))__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame_trace_dispatch;
__pyx_vtable_14_pydevd_bundle_13pydevd_cython_PyDBFrame._get_instructions = (PyObject *(*)(struct __pyx_obj_14_pydevd_bundle_13pydevd_cython_PyDBFrame *, PyObject *))__pyx_f_14_pydevd_bundle_13pydevd_cython_9PyDBFrame__get_instructions;
- if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 278, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 277, __pyx_L1_error)
#if PY_VERSION_HEX < 0x030800B1
__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame.tp_print = 0;
#endif
if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame.tp_dictoffset && __pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame.tp_getattro == PyObject_GenericGetAttr)) {
__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame.tp_getattro = __Pyx_PyObject_GenericGetAttr;
}
- if (__Pyx_SetVtable(__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame.tp_dict, __pyx_vtabptr_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 278, __pyx_L1_error)
- if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PyDBFrame, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 278, __pyx_L1_error)
- if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 278, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame.tp_dict, __pyx_vtabptr_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 277, __pyx_L1_error)
+ if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PyDBFrame, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 277, __pyx_L1_error)
+ if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame) < 0) __PYX_ERR(0, 277, __pyx_L1_error)
__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame = &__pyx_type_14_pydevd_bundle_13pydevd_cython_PyDBFrame;
- if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper) < 0) __PYX_ERR(0, 1171, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper) < 0) __PYX_ERR(0, 1170, __pyx_L1_error)
#if PY_VERSION_HEX < 0x030800B1
__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper.tp_print = 0;
#endif
if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper.tp_dictoffset && __pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper.tp_getattro == PyObject_GenericGetAttr)) {
__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper.tp_getattro = __Pyx_PyObject_GenericGetAttr;
}
- if (PyObject_SetAttr(__pyx_m, __pyx_n_s_SafeCallWrapper, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper) < 0) __PYX_ERR(0, 1171, __pyx_L1_error)
- if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper) < 0) __PYX_ERR(0, 1171, __pyx_L1_error)
+ if (PyObject_SetAttr(__pyx_m, __pyx_n_s_SafeCallWrapper, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper) < 0) __PYX_ERR(0, 1170, __pyx_L1_error)
+ if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper) < 0) __PYX_ERR(0, 1170, __pyx_L1_error)
__pyx_ptype_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper = &__pyx_type_14_pydevd_bundle_13pydevd_cython_SafeCallWrapper;
- if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions) < 0) __PYX_ERR(0, 1334, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions) < 0) __PYX_ERR(0, 1333, __pyx_L1_error)
#if PY_VERSION_HEX < 0x030800B1
__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions.tp_print = 0;
#endif
if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions.tp_dictoffset && __pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions.tp_getattro == PyObject_GenericGetAttr)) {
__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions.tp_getattro = __Pyx_PyObject_GenericGetAttr;
}
- if (PyObject_SetAttr(__pyx_m, __pyx_n_s_TopLevelThreadTracerOnlyUnhandle, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions) < 0) __PYX_ERR(0, 1334, __pyx_L1_error)
- if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions) < 0) __PYX_ERR(0, 1334, __pyx_L1_error)
+ if (PyObject_SetAttr(__pyx_m, __pyx_n_s_TopLevelThreadTracerOnlyUnhandle, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions) < 0) __PYX_ERR(0, 1333, __pyx_L1_error)
+ if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions) < 0) __PYX_ERR(0, 1333, __pyx_L1_error)
__pyx_ptype_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions = &__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerOnlyUnhandledExceptions;
- if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame) < 0) __PYX_ERR(0, 1368, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame) < 0) __PYX_ERR(0, 1367, __pyx_L1_error)
#if PY_VERSION_HEX < 0x030800B1
__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame.tp_print = 0;
#endif
if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame.tp_dictoffset && __pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame.tp_getattro == PyObject_GenericGetAttr)) {
__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame.tp_getattro = __Pyx_PyObject_GenericGetAttr;
}
- if (PyObject_SetAttr(__pyx_m, __pyx_n_s_TopLevelThreadTracerNoBackFrame, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame) < 0) __PYX_ERR(0, 1368, __pyx_L1_error)
- if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame) < 0) __PYX_ERR(0, 1368, __pyx_L1_error)
+ if (PyObject_SetAttr(__pyx_m, __pyx_n_s_TopLevelThreadTracerNoBackFrame, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame) < 0) __PYX_ERR(0, 1367, __pyx_L1_error)
+ if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame) < 0) __PYX_ERR(0, 1367, __pyx_L1_error)
__pyx_ptype_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame = &__pyx_type_14_pydevd_bundle_13pydevd_cython_TopLevelThreadTracerNoBackFrame;
- if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer) < 0) __PYX_ERR(0, 1475, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer) < 0) __PYX_ERR(0, 1474, __pyx_L1_error)
#if PY_VERSION_HEX < 0x030800B1
__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer.tp_print = 0;
#endif
@@ -36908,7 +36908,7 @@ static int __Pyx_modinit_type_init_code(void) {
}
#if CYTHON_COMPILING_IN_CPYTHON
{
- PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer, "__call__"); if (unlikely(!wrapper)) __PYX_ERR(0, 1475, __pyx_L1_error)
+ PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer, "__call__"); if (unlikely(!wrapper)) __PYX_ERR(0, 1474, __pyx_L1_error)
if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) {
__pyx_wrapperbase_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__call__ = *((PyWrapperDescrObject *)wrapper)->d_base;
__pyx_wrapperbase_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__call__.doc = __pyx_doc_14_pydevd_bundle_13pydevd_cython_12ThreadTracer_2__call__;
@@ -36916,8 +36916,8 @@ static int __Pyx_modinit_type_init_code(void) {
}
}
#endif
- if (PyObject_SetAttr(__pyx_m, __pyx_n_s_ThreadTracer, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer) < 0) __PYX_ERR(0, 1475, __pyx_L1_error)
- if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer) < 0) __PYX_ERR(0, 1475, __pyx_L1_error)
+ if (PyObject_SetAttr(__pyx_m, __pyx_n_s_ThreadTracer, (PyObject *)&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer) < 0) __PYX_ERR(0, 1474, __pyx_L1_error)
+ if (__Pyx_setup_reduce((PyObject*)&__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer) < 0) __PYX_ERR(0, 1474, __pyx_L1_error)
__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer = &__pyx_type_14_pydevd_bundle_13pydevd_cython_ThreadTracer;
__Pyx_RefNannyFinishContext();
return 0;
@@ -37278,14 +37278,14 @@ if (!__Pyx_RefNanny) {
/* "_pydevd_bundle/pydevd_cython.pyx":16
* # ENDIF
*
- * version = 33 # <<<<<<<<<<<<<<
+ * version = 34 # <<<<<<<<<<<<<<
*
* if not hasattr(sys, '_current_frames'):
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_version, __pyx_int_33) < 0) __PYX_ERR(0, 16, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_version, __pyx_int_34) < 0) __PYX_ERR(0, 16, __pyx_L1_error)
/* "_pydevd_bundle/pydevd_cython.pyx":18
- * version = 33
+ * version = 34
*
* if not hasattr(sys, '_current_frames'): # <<<<<<<<<<<<<<
*
@@ -37588,7 +37588,7 @@ if (!__Pyx_RefNanny) {
__pyx_L3:;
/* "_pydevd_bundle/pydevd_cython.pyx":18
- * version = 33
+ * version = 34
*
* if not hasattr(sys, '_current_frames'): # <<<<<<<<<<<<<<
*
@@ -37682,179 +37682,167 @@ if (!__Pyx_RefNanny) {
/* "_pydevd_bundle/pydevd_cython.pyx":174
*
* return additional_info
- * import dis # <<<<<<<<<<<<<<
- * import linecache
- * import os.path
- */
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_dis, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 174, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_dis, __pyx_t_8) < 0) __PYX_ERR(0, 174, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
-
- /* "_pydevd_bundle/pydevd_cython.pyx":175
- * return additional_info
- * import dis
* import linecache # <<<<<<<<<<<<<<
* import os.path
* import re
*/
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_linecache, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 175, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_linecache, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_linecache, __pyx_t_8) < 0) __PYX_ERR(0, 175, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_linecache, __pyx_t_8) < 0) __PYX_ERR(0, 174, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":176
- * import dis
+ /* "_pydevd_bundle/pydevd_cython.pyx":175
+ * return additional_info
* import linecache
* import os.path # <<<<<<<<<<<<<<
* import re
* import sys
*/
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_os_path, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 176, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_os_path, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_os, __pyx_t_8) < 0) __PYX_ERR(0, 176, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_os, __pyx_t_8) < 0) __PYX_ERR(0, 175, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":177
+ /* "_pydevd_bundle/pydevd_cython.pyx":176
* import linecache
* import os.path
* import re # <<<<<<<<<<<<<<
* import sys
* import traceback # @Reimport
*/
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_re, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 177, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_re, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 176, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_re, __pyx_t_8) < 0) __PYX_ERR(0, 177, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_re, __pyx_t_8) < 0) __PYX_ERR(0, 176, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":178
+ /* "_pydevd_bundle/pydevd_cython.pyx":177
* import os.path
* import re
* import sys # <<<<<<<<<<<<<<
* import traceback # @Reimport
*
*/
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_sys, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 178, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_sys, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 177, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_sys, __pyx_t_8) < 0) __PYX_ERR(0, 178, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_sys, __pyx_t_8) < 0) __PYX_ERR(0, 177, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":179
+ /* "_pydevd_bundle/pydevd_cython.pyx":178
* import re
* import sys
* import traceback # @Reimport # <<<<<<<<<<<<<<
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_traceback, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 179, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_traceback, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 178, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_traceback, __pyx_t_8) < 0) __PYX_ERR(0, 179, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_traceback, __pyx_t_8) < 0) __PYX_ERR(0, 178, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":182
+ /* "_pydevd_bundle/pydevd_cython.pyx":181
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* import dis # <<<<<<<<<<<<<<
* # ENDIF
*
*/
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_dis, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 182, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_dis, 0, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_dis, __pyx_t_8) < 0) __PYX_ERR(0, 182, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_dis, __pyx_t_8) < 0) __PYX_ERR(0, 181, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":185
+ /* "_pydevd_bundle/pydevd_cython.pyx":184
* # ENDIF
*
* from _pydev_bundle import pydev_log # <<<<<<<<<<<<<<
* from _pydevd_bundle import pydevd_dont_trace
* from _pydevd_bundle import pydevd_vars
*/
- __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 185, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_pydev_log);
__Pyx_GIVEREF(__pyx_n_s_pydev_log);
PyList_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_pydev_log);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydev_bundle, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 185, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydev_bundle, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_pydev_log); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 185, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_pydev_log); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_pydev_log, __pyx_t_8) < 0) __PYX_ERR(0, 185, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_pydev_log, __pyx_t_8) < 0) __PYX_ERR(0, 184, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":186
+ /* "_pydevd_bundle/pydevd_cython.pyx":185
*
* from _pydev_bundle import pydev_log
* from _pydevd_bundle import pydevd_dont_trace # <<<<<<<<<<<<<<
* from _pydevd_bundle import pydevd_vars
* from _pydevd_bundle.pydevd_breakpoints import get_exception_breakpoint
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 186, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_pydevd_dont_trace);
__Pyx_GIVEREF(__pyx_n_s_pydevd_dont_trace);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_pydevd_dont_trace);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 186, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 186, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_pydevd_dont_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_pydevd_dont_trace, __pyx_t_1) < 0) __PYX_ERR(0, 186, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_pydevd_dont_trace, __pyx_t_1) < 0) __PYX_ERR(0, 185, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":187
+ /* "_pydevd_bundle/pydevd_cython.pyx":186
* from _pydev_bundle import pydev_log
* from _pydevd_bundle import pydevd_dont_trace
* from _pydevd_bundle import pydevd_vars # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_breakpoints import get_exception_breakpoint
* from _pydevd_bundle.pydevd_comm_constants import (CMD_STEP_CAUGHT_EXCEPTION, CMD_STEP_RETURN, CMD_STEP_OVER, CMD_SET_BREAK,
*/
- __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 187, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_pydevd_vars);
__Pyx_GIVEREF(__pyx_n_s_pydevd_vars);
PyList_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_pydevd_vars);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 187, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_pydevd_vars); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_pydevd_vars, __pyx_t_8) < 0) __PYX_ERR(0, 187, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_pydevd_vars, __pyx_t_8) < 0) __PYX_ERR(0, 186, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":188
+ /* "_pydevd_bundle/pydevd_cython.pyx":187
* from _pydevd_bundle import pydevd_dont_trace
* from _pydevd_bundle import pydevd_vars
* from _pydevd_bundle.pydevd_breakpoints import get_exception_breakpoint # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_comm_constants import (CMD_STEP_CAUGHT_EXCEPTION, CMD_STEP_RETURN, CMD_STEP_OVER, CMD_SET_BREAK,
* CMD_STEP_INTO, CMD_SMART_STEP_INTO, CMD_STEP_INTO_MY_CODE, CMD_STEP_INTO_COROUTINE)
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_get_exception_breakpoint);
__Pyx_GIVEREF(__pyx_n_s_get_exception_breakpoint);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_get_exception_breakpoint);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_breakpoint, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_breakpoint, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_exception_breakpoint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_exception_breakpoint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_exception_breakpoint, __pyx_t_1) < 0) __PYX_ERR(0, 188, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_exception_breakpoint, __pyx_t_1) < 0) __PYX_ERR(0, 187, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":189
+ /* "_pydevd_bundle/pydevd_cython.pyx":188
* from _pydevd_bundle import pydevd_vars
* from _pydevd_bundle.pydevd_breakpoints import get_exception_breakpoint
* from _pydevd_bundle.pydevd_comm_constants import (CMD_STEP_CAUGHT_EXCEPTION, CMD_STEP_RETURN, CMD_STEP_OVER, CMD_SET_BREAK, # <<<<<<<<<<<<<<
* CMD_STEP_INTO, CMD_SMART_STEP_INTO, CMD_STEP_INTO_MY_CODE, CMD_STEP_INTO_COROUTINE)
* from _pydevd_bundle.pydevd_constants import STATE_SUSPEND, get_current_thread_id, STATE_RUN, dict_iter_values, IS_PY3K, \
*/
- __pyx_t_8 = PyList_New(8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION);
__Pyx_GIVEREF(__pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION);
@@ -37880,51 +37868,51 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_CMD_STEP_INTO_COROUTINE);
__Pyx_GIVEREF(__pyx_n_s_CMD_STEP_INTO_COROUTINE);
PyList_SET_ITEM(__pyx_t_8, 7, __pyx_n_s_CMD_STEP_INTO_COROUTINE);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_comm_const, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_comm_const, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_CAUGHT_EXCEPTION, __pyx_t_8) < 0) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_RETURN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_RETURN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_RETURN, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_RETURN, __pyx_t_8) < 0) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_OVER); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_OVER, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_OVER, __pyx_t_8) < 0) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_SET_BREAK); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_SET_BREAK); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_SET_BREAK, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_SET_BREAK, __pyx_t_8) < 0) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_INTO, __pyx_t_8) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_INTO, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_SMART_STEP_INTO); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_SMART_STEP_INTO); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_SMART_STEP_INTO, __pyx_t_8) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_SMART_STEP_INTO, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO_MY_CODE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO_MY_CODE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_INTO_MY_CODE, __pyx_t_8) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_INTO_MY_CODE, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_CMD_STEP_INTO_COROUTINE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_INTO_COROUTINE, __pyx_t_8) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CMD_STEP_INTO_COROUTINE, __pyx_t_8) < 0) __PYX_ERR(0, 189, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":191
+ /* "_pydevd_bundle/pydevd_cython.pyx":190
* from _pydevd_bundle.pydevd_comm_constants import (CMD_STEP_CAUGHT_EXCEPTION, CMD_STEP_RETURN, CMD_STEP_OVER, CMD_SET_BREAK,
* CMD_STEP_INTO, CMD_SMART_STEP_INTO, CMD_STEP_INTO_MY_CODE, CMD_STEP_INTO_COROUTINE)
* from _pydevd_bundle.pydevd_constants import STATE_SUSPEND, get_current_thread_id, STATE_RUN, dict_iter_values, IS_PY3K, \ # <<<<<<<<<<<<<<
* dict_keys, RETURN_VALUES_DICT, NO_FTRACE, IS_CPYTHON
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE, PYDEV_FILE
*/
- __pyx_t_1 = PyList_New(9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_STATE_SUSPEND);
__Pyx_GIVEREF(__pyx_n_s_STATE_SUSPEND);
@@ -37953,55 +37941,55 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_IS_CPYTHON);
__Pyx_GIVEREF(__pyx_n_s_IS_CPYTHON);
PyList_SET_ITEM(__pyx_t_1, 8, __pyx_n_s_IS_CPYTHON);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_constants, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_constants, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_STATE_SUSPEND); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_STATE_SUSPEND); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_STATE_SUSPEND, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_STATE_SUSPEND, __pyx_t_1) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_current_thread_id, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_current_thread_id, __pyx_t_1) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_STATE_RUN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_STATE_RUN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_STATE_RUN, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_STATE_RUN, __pyx_t_1) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_dict_iter_values); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_dict_iter_values); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_dict_iter_values, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_dict_iter_values, __pyx_t_1) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_PY3K); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_PY3K); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_PY3K, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_PY3K, __pyx_t_1) < 0) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_dict_keys); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_dict_keys, __pyx_t_1) < 0) __PYX_ERR(0, 192, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_dict_keys, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_RETURN_VALUES_DICT); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_RETURN_VALUES_DICT, __pyx_t_1) < 0) __PYX_ERR(0, 192, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_RETURN_VALUES_DICT, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_NO_FTRACE, __pyx_t_1) < 0) __PYX_ERR(0, 192, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_NO_FTRACE, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_CPYTHON); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_CPYTHON); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_CPYTHON, __pyx_t_1) < 0) __PYX_ERR(0, 192, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_CPYTHON, __pyx_t_1) < 0) __PYX_ERR(0, 191, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":193
+ /* "_pydevd_bundle/pydevd_cython.pyx":192
* from _pydevd_bundle.pydevd_constants import STATE_SUSPEND, get_current_thread_id, STATE_RUN, dict_iter_values, IS_PY3K, \
* dict_keys, RETURN_VALUES_DICT, NO_FTRACE, IS_CPYTHON
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE, PYDEV_FILE # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_frame_utils import add_exception_to_frame, just_raised, remove_exception_from_frame, ignore_exception_trace
* from _pydevd_bundle.pydevd_bytecode_utils import find_last_call_name, find_last_func_call_order
*/
- __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 193, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 192, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_DONT_TRACE);
__Pyx_GIVEREF(__pyx_n_s_DONT_TRACE);
@@ -38009,27 +37997,27 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_PYDEV_FILE);
__Pyx_GIVEREF(__pyx_n_s_PYDEV_FILE);
PyList_SET_ITEM(__pyx_t_8, 1, __pyx_n_s_PYDEV_FILE);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_dont_trace, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_dont_trace, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 193, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 192, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_DONT_TRACE, __pyx_t_8) < 0) __PYX_ERR(0, 193, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_DONT_TRACE, __pyx_t_8) < 0) __PYX_ERR(0, 192, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_PYDEV_FILE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 193, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_PYDEV_FILE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 192, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_PYDEV_FILE, __pyx_t_8) < 0) __PYX_ERR(0, 193, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_PYDEV_FILE, __pyx_t_8) < 0) __PYX_ERR(0, 192, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":194
+ /* "_pydevd_bundle/pydevd_cython.pyx":193
* dict_keys, RETURN_VALUES_DICT, NO_FTRACE, IS_CPYTHON
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE, PYDEV_FILE
* from _pydevd_bundle.pydevd_frame_utils import add_exception_to_frame, just_raised, remove_exception_from_frame, ignore_exception_trace # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_bytecode_utils import find_last_call_name, find_last_func_call_order
* from _pydevd_bundle.pydevd_utils import get_clsname_for_code, should_stop_on_failed_test, is_exception_in_test_unit_can_be_ignored
*/
- __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_add_exception_to_frame);
__Pyx_GIVEREF(__pyx_n_s_add_exception_to_frame);
@@ -38043,35 +38031,35 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_ignore_exception_trace);
__Pyx_GIVEREF(__pyx_n_s_ignore_exception_trace);
PyList_SET_ITEM(__pyx_t_1, 3, __pyx_n_s_ignore_exception_trace);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_frame_util, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 194, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_frame_util, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_add_exception_to_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_add_exception_to_frame, __pyx_t_1) < 0) __PYX_ERR(0, 194, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_add_exception_to_frame, __pyx_t_1) < 0) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_just_raised); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_just_raised); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_just_raised, __pyx_t_1) < 0) __PYX_ERR(0, 194, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_just_raised, __pyx_t_1) < 0) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_remove_exception_from_frame); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_remove_exception_from_frame, __pyx_t_1) < 0) __PYX_ERR(0, 194, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_remove_exception_from_frame, __pyx_t_1) < 0) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_ignore_exception_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_ignore_exception_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ignore_exception_trace, __pyx_t_1) < 0) __PYX_ERR(0, 194, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ignore_exception_trace, __pyx_t_1) < 0) __PYX_ERR(0, 193, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":195
+ /* "_pydevd_bundle/pydevd_cython.pyx":194
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE, PYDEV_FILE
* from _pydevd_bundle.pydevd_frame_utils import add_exception_to_frame, just_raised, remove_exception_from_frame, ignore_exception_trace
* from _pydevd_bundle.pydevd_bytecode_utils import find_last_call_name, find_last_func_call_order # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_utils import get_clsname_for_code, should_stop_on_failed_test, is_exception_in_test_unit_can_be_ignored
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, is_real_file
*/
- __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 195, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 194, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_find_last_call_name);
__Pyx_GIVEREF(__pyx_n_s_find_last_call_name);
@@ -38079,27 +38067,27 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_find_last_func_call_order);
__Pyx_GIVEREF(__pyx_n_s_find_last_func_call_order);
PyList_SET_ITEM(__pyx_t_8, 1, __pyx_n_s_find_last_func_call_order);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_bytecode_u, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_bytecode_u, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_find_last_call_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 195, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_find_last_call_name); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 194, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_find_last_call_name, __pyx_t_8) < 0) __PYX_ERR(0, 195, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_find_last_call_name, __pyx_t_8) < 0) __PYX_ERR(0, 194, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_find_last_func_call_order); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 195, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_find_last_func_call_order); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 194, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_find_last_func_call_order, __pyx_t_8) < 0) __PYX_ERR(0, 195, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_find_last_func_call_order, __pyx_t_8) < 0) __PYX_ERR(0, 194, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":196
+ /* "_pydevd_bundle/pydevd_cython.pyx":195
* from _pydevd_bundle.pydevd_frame_utils import add_exception_to_frame, just_raised, remove_exception_from_frame, ignore_exception_trace
* from _pydevd_bundle.pydevd_bytecode_utils import find_last_call_name, find_last_func_call_order
* from _pydevd_bundle.pydevd_utils import get_clsname_for_code, should_stop_on_failed_test, is_exception_in_test_unit_can_be_ignored # <<<<<<<<<<<<<<
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, is_real_file
*
*/
- __pyx_t_1 = PyList_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_get_clsname_for_code);
__Pyx_GIVEREF(__pyx_n_s_get_clsname_for_code);
@@ -38110,31 +38098,31 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_is_exception_in_test_unit_can_be);
__Pyx_GIVEREF(__pyx_n_s_is_exception_in_test_unit_can_be);
PyList_SET_ITEM(__pyx_t_1, 2, __pyx_n_s_is_exception_in_test_unit_can_be);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_utils, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 196, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_utils, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_clsname_for_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_clsname_for_code); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_clsname_for_code, __pyx_t_1) < 0) __PYX_ERR(0, 196, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_clsname_for_code, __pyx_t_1) < 0) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_should_stop_on_failed_test); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_should_stop_on_failed_test); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_should_stop_on_failed_test, __pyx_t_1) < 0) __PYX_ERR(0, 196, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_should_stop_on_failed_test, __pyx_t_1) < 0) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_is_exception_in_test_unit_can_be); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_is_exception_in_test_unit_can_be); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_exception_in_test_unit_can_be, __pyx_t_1) < 0) __PYX_ERR(0, 196, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_exception_in_test_unit_can_be, __pyx_t_1) < 0) __PYX_ERR(0, 195, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":197
+ /* "_pydevd_bundle/pydevd_cython.pyx":196
* from _pydevd_bundle.pydevd_bytecode_utils import find_last_call_name, find_last_func_call_order
* from _pydevd_bundle.pydevd_utils import get_clsname_for_code, should_stop_on_failed_test, is_exception_in_test_unit_can_be_ignored
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, is_real_file # <<<<<<<<<<<<<<
*
* try:
*/
- __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 197, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_get_abs_path_real_path_and_base);
__Pyx_GIVEREF(__pyx_n_s_get_abs_path_real_path_and_base);
@@ -38142,20 +38130,20 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_is_real_file);
__Pyx_GIVEREF(__pyx_n_s_is_real_file);
PyList_SET_ITEM(__pyx_t_8, 1, __pyx_n_s_is_real_file);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_file_utils, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 197, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_file_utils, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 197, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_abs_path_real_path_and_base, __pyx_t_8) < 0) __PYX_ERR(0, 197, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_abs_path_real_path_and_base, __pyx_t_8) < 0) __PYX_ERR(0, 196, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_is_real_file); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 197, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_is_real_file); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_real_file, __pyx_t_8) < 0) __PYX_ERR(0, 197, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_real_file, __pyx_t_8) < 0) __PYX_ERR(0, 196, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":199
+ /* "_pydevd_bundle/pydevd_cython.pyx":198
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, is_real_file
*
* try: # <<<<<<<<<<<<<<
@@ -38171,28 +38159,28 @@ if (!__Pyx_RefNanny) {
__Pyx_XGOTREF(__pyx_t_5);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":200
+ /* "_pydevd_bundle/pydevd_cython.pyx":199
*
* try:
* from inspect import CO_GENERATOR # <<<<<<<<<<<<<<
* except:
* CO_GENERATOR = 0
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 200, __pyx_L12_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 199, __pyx_L12_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_CO_GENERATOR);
__Pyx_GIVEREF(__pyx_n_s_CO_GENERATOR);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_CO_GENERATOR);
- __pyx_t_8 = __Pyx_patch_inspect(__Pyx_Import(__pyx_n_s_inspect, __pyx_t_1, -1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 200, __pyx_L12_error)
+ __pyx_t_8 = __Pyx_patch_inspect(__Pyx_Import(__pyx_n_s_inspect, __pyx_t_1, -1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 199, __pyx_L12_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_CO_GENERATOR); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 200, __pyx_L12_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_CO_GENERATOR); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 199, __pyx_L12_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CO_GENERATOR, __pyx_t_1) < 0) __PYX_ERR(0, 200, __pyx_L12_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CO_GENERATOR, __pyx_t_1) < 0) __PYX_ERR(0, 199, __pyx_L12_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":199
+ /* "_pydevd_bundle/pydevd_cython.pyx":198
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, is_real_file
*
* try: # <<<<<<<<<<<<<<
@@ -38211,7 +38199,7 @@ if (!__Pyx_RefNanny) {
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":201
+ /* "_pydevd_bundle/pydevd_cython.pyx":200
* try:
* from inspect import CO_GENERATOR
* except: # <<<<<<<<<<<<<<
@@ -38220,19 +38208,19 @@ if (!__Pyx_RefNanny) {
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 201, __pyx_L14_except_error)
+ if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 200, __pyx_L14_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_2);
- /* "_pydevd_bundle/pydevd_cython.pyx":202
+ /* "_pydevd_bundle/pydevd_cython.pyx":201
* from inspect import CO_GENERATOR
* except:
* CO_GENERATOR = 0 # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_constants import IS_PY2
*
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_CO_GENERATOR, __pyx_int_0) < 0) __PYX_ERR(0, 202, __pyx_L14_except_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_CO_GENERATOR, __pyx_int_0) < 0) __PYX_ERR(0, 201, __pyx_L14_except_error)
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -38240,7 +38228,7 @@ if (!__Pyx_RefNanny) {
}
__pyx_L14_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":199
+ /* "_pydevd_bundle/pydevd_cython.pyx":198
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, is_real_file
*
* try: # <<<<<<<<<<<<<<
@@ -38260,28 +38248,28 @@ if (!__Pyx_RefNanny) {
__pyx_L17_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":203
+ /* "_pydevd_bundle/pydevd_cython.pyx":202
* except:
* CO_GENERATOR = 0
* from _pydevd_bundle.pydevd_constants import IS_PY2 # <<<<<<<<<<<<<<
*
* try:
*/
- __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error)
+ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_n_s_IS_PY2);
__Pyx_GIVEREF(__pyx_n_s_IS_PY2);
PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_IS_PY2);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_constants, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 203, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_constants, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_IS_PY2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_IS_PY2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_PY2, __pyx_t_2) < 0) __PYX_ERR(0, 203, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_PY2, __pyx_t_2) < 0) __PYX_ERR(0, 202, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":205
+ /* "_pydevd_bundle/pydevd_cython.pyx":204
* from _pydevd_bundle.pydevd_constants import IS_PY2
*
* try: # <<<<<<<<<<<<<<
@@ -38297,14 +38285,14 @@ if (!__Pyx_RefNanny) {
__Pyx_XGOTREF(__pyx_t_7);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":206
+ /* "_pydevd_bundle/pydevd_cython.pyx":205
*
* try:
* from _pydevd_bundle.pydevd_signature import send_signature_call_trace, send_signature_return_trace # <<<<<<<<<<<<<<
* except ImportError:
* def send_signature_call_trace(*args, **kwargs):
*/
- __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 206, __pyx_L20_error)
+ __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L20_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_send_signature_call_trace);
__Pyx_GIVEREF(__pyx_n_s_send_signature_call_trace);
@@ -38312,20 +38300,20 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_send_signature_return_trace);
__Pyx_GIVEREF(__pyx_n_s_send_signature_return_trace);
PyList_SET_ITEM(__pyx_t_1, 1, __pyx_n_s_send_signature_return_trace);
- __pyx_t_2 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_signature, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 206, __pyx_L20_error)
+ __pyx_t_2 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_signature, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 205, __pyx_L20_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_send_signature_call_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 206, __pyx_L20_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_send_signature_call_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L20_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_signature_call_trace, __pyx_t_1) < 0) __PYX_ERR(0, 206, __pyx_L20_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_signature_call_trace, __pyx_t_1) < 0) __PYX_ERR(0, 205, __pyx_L20_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_send_signature_return_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 206, __pyx_L20_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_send_signature_return_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L20_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_signature_return_trace, __pyx_t_1) < 0) __PYX_ERR(0, 206, __pyx_L20_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_signature_return_trace, __pyx_t_1) < 0) __PYX_ERR(0, 205, __pyx_L20_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":205
+ /* "_pydevd_bundle/pydevd_cython.pyx":204
* from _pydevd_bundle.pydevd_constants import IS_PY2
*
* try: # <<<<<<<<<<<<<<
@@ -38344,7 +38332,7 @@ if (!__Pyx_RefNanny) {
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":207
+ /* "_pydevd_bundle/pydevd_cython.pyx":206
* try:
* from _pydevd_bundle.pydevd_signature import send_signature_call_trace, send_signature_return_trace
* except ImportError: # <<<<<<<<<<<<<<
@@ -38354,21 +38342,21 @@ if (!__Pyx_RefNanny) {
__pyx_t_10 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ImportError);
if (__pyx_t_10) {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 207, __pyx_L22_except_error)
+ if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_1, &__pyx_t_8) < 0) __PYX_ERR(0, 206, __pyx_L22_except_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_8);
- /* "_pydevd_bundle/pydevd_cython.pyx":208
+ /* "_pydevd_bundle/pydevd_cython.pyx":207
* from _pydevd_bundle.pydevd_signature import send_signature_call_trace, send_signature_return_trace
* except ImportError:
* def send_signature_call_trace(*args, **kwargs): # <<<<<<<<<<<<<<
* pass
*
*/
- __pyx_t_9 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_7send_signature_call_trace, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 208, __pyx_L22_except_error)
+ __pyx_t_9 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_7send_signature_call_trace, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 207, __pyx_L22_except_error)
__Pyx_GOTREF(__pyx_t_9);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_signature_call_trace, __pyx_t_9) < 0) __PYX_ERR(0, 208, __pyx_L22_except_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_signature_call_trace, __pyx_t_9) < 0) __PYX_ERR(0, 207, __pyx_L22_except_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -38378,7 +38366,7 @@ if (!__Pyx_RefNanny) {
goto __pyx_L22_except_error;
__pyx_L22_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":205
+ /* "_pydevd_bundle/pydevd_cython.pyx":204
* from _pydevd_bundle.pydevd_constants import IS_PY2
*
* try: # <<<<<<<<<<<<<<
@@ -38398,196 +38386,196 @@ if (!__Pyx_RefNanny) {
__pyx_L25_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":211
+ /* "_pydevd_bundle/pydevd_cython.pyx":210
* pass
*
* basename = os.path.basename # <<<<<<<<<<<<<<
*
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException')
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_os); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 211, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_os); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 211, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_basename); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 211, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_basename); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_basename, __pyx_t_8) < 0) __PYX_ERR(0, 211, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_basename, __pyx_t_8) < 0) __PYX_ERR(0, 210, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":213
+ /* "_pydevd_bundle/pydevd_cython.pyx":212
* basename = os.path.basename
*
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException') # <<<<<<<<<<<<<<
* DEBUG_START = ('pydevd.py', '_exec')
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile')
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_re); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 213, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_re); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_compile); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 213, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_compile); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 213, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IGNORE_EXCEPTION_TAG, __pyx_t_8) < 0) __PYX_ERR(0, 213, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IGNORE_EXCEPTION_TAG, __pyx_t_8) < 0) __PYX_ERR(0, 212, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":214
+ /* "_pydevd_bundle/pydevd_cython.pyx":213
*
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException')
* DEBUG_START = ('pydevd.py', '_exec') # <<<<<<<<<<<<<<
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile')
* TRACE_PROPERTY = 'pydevd_traceproperty.py'
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_DEBUG_START, __pyx_tuple__19) < 0) __PYX_ERR(0, 214, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_DEBUG_START, __pyx_tuple__19) < 0) __PYX_ERR(0, 213, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":215
+ /* "_pydevd_bundle/pydevd_cython.pyx":214
* IGNORE_EXCEPTION_TAG = re.compile('[^#]*#.*@IgnoreException')
* DEBUG_START = ('pydevd.py', '_exec')
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile') # <<<<<<<<<<<<<<
* TRACE_PROPERTY = 'pydevd_traceproperty.py'
* get_file_type = DONT_TRACE.get
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_DEBUG_START_PY3K, __pyx_tuple__20) < 0) __PYX_ERR(0, 215, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_DEBUG_START_PY3K, __pyx_tuple__20) < 0) __PYX_ERR(0, 214, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":216
+ /* "_pydevd_bundle/pydevd_cython.pyx":215
* DEBUG_START = ('pydevd.py', '_exec')
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile')
* TRACE_PROPERTY = 'pydevd_traceproperty.py' # <<<<<<<<<<<<<<
* get_file_type = DONT_TRACE.get
*
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_TRACE_PROPERTY, __pyx_kp_s_pydevd_traceproperty_py) < 0) __PYX_ERR(0, 216, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_TRACE_PROPERTY, __pyx_kp_s_pydevd_traceproperty_py) < 0) __PYX_ERR(0, 215, __pyx_L1_error)
- /* "_pydevd_bundle/pydevd_cython.pyx":217
+ /* "_pydevd_bundle/pydevd_cython.pyx":216
* DEBUG_START_PY3K = ('_pydev_execfile.py', 'execfile')
* TRACE_PROPERTY = 'pydevd_traceproperty.py'
* get_file_type = DONT_TRACE.get # <<<<<<<<<<<<<<
*
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 217, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 217, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_file_type, __pyx_t_1) < 0) __PYX_ERR(0, 217, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_file_type, __pyx_t_1) < 0) __PYX_ERR(0, 216, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":220
+ /* "_pydevd_bundle/pydevd_cython.pyx":219
*
*
* def handle_breakpoint_condition(py_db, info, breakpoint, new_frame): # <<<<<<<<<<<<<<
* condition = breakpoint.condition
* try:
*/
- __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_9handle_breakpoint_condition, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L1_error)
+ __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_9handle_breakpoint_condition, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 219, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_handle_breakpoint_condition, __pyx_t_1) < 0) __PYX_ERR(0, 220, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_handle_breakpoint_condition, __pyx_t_1) < 0) __PYX_ERR(0, 219, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":263
+ /* "_pydevd_bundle/pydevd_cython.pyx":262
*
*
* def handle_breakpoint_expression(breakpoint, info, new_frame): # <<<<<<<<<<<<<<
* try:
* try:
*/
- __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_11handle_breakpoint_expression, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 263, __pyx_L1_error)
+ __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_11handle_breakpoint_expression, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 262, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_handle_breakpoint_expression, __pyx_t_1) < 0) __PYX_ERR(0, 263, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_handle_breakpoint_expression, __pyx_t_1) < 0) __PYX_ERR(0, 262, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":291
+ /* "_pydevd_bundle/pydevd_cython.pyx":290
* # Same thing in the main debugger but only considering the file contents, while the one in the main debugger
* # considers the user input (so, the actual result must be a join of both).
* filename_to_lines_where_exceptions_are_ignored = {} # <<<<<<<<<<<<<<
* filename_to_stat_info = {}
*
*/
- __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 291, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 290, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame->tp_dict, __pyx_n_s_filename_to_lines_where_exceptio, __pyx_t_1) < 0) __PYX_ERR(0, 291, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame->tp_dict, __pyx_n_s_filename_to_lines_where_exceptio, __pyx_t_1) < 0) __PYX_ERR(0, 290, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame);
- /* "_pydevd_bundle/pydevd_cython.pyx":292
+ /* "_pydevd_bundle/pydevd_cython.pyx":291
* # considers the user input (so, the actual result must be a join of both).
* filename_to_lines_where_exceptions_are_ignored = {}
* filename_to_stat_info = {} # <<<<<<<<<<<<<<
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
- __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 292, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame->tp_dict, __pyx_n_s_filename_to_stat_info, __pyx_t_1) < 0) __PYX_ERR(0, 292, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame->tp_dict, __pyx_n_s_filename_to_stat_info, __pyx_t_1) < 0) __PYX_ERR(0, 291, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_14_pydevd_bundle_13pydevd_cython_PyDBFrame);
- /* "_pydevd_bundle/pydevd_cython.pyx":1123
+ /* "_pydevd_bundle/pydevd_cython.pyx":1122
* return self._instructions
* # ENDIF
* import traceback # <<<<<<<<<<<<<<
*
* from _pydev_bundle.pydev_is_thread_alive import is_thread_alive
*/
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_traceback, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1123, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_traceback, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1122, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_traceback, __pyx_t_1) < 0) __PYX_ERR(0, 1123, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_traceback, __pyx_t_1) < 0) __PYX_ERR(0, 1122, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1125
+ /* "_pydevd_bundle/pydevd_cython.pyx":1124
* import traceback
*
* from _pydev_bundle.pydev_is_thread_alive import is_thread_alive # <<<<<<<<<<<<<<
* from _pydev_imps._pydev_saved_modules import threading
* from _pydevd_bundle.pydevd_constants import get_current_thread_id, IS_IRONPYTHON, NO_FTRACE, IS_WINDOWS
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1125, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1124, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_is_thread_alive);
__Pyx_GIVEREF(__pyx_n_s_is_thread_alive);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_is_thread_alive);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydev_bundle_pydev_is_thread_al, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1125, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydev_bundle_pydev_is_thread_al, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1124, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_is_thread_alive); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1125, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_is_thread_alive); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1124, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_thread_alive, __pyx_t_1) < 0) __PYX_ERR(0, 1125, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_thread_alive, __pyx_t_1) < 0) __PYX_ERR(0, 1124, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1126
+ /* "_pydevd_bundle/pydevd_cython.pyx":1125
*
* from _pydev_bundle.pydev_is_thread_alive import is_thread_alive
* from _pydev_imps._pydev_saved_modules import threading # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_constants import get_current_thread_id, IS_IRONPYTHON, NO_FTRACE, IS_WINDOWS
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE
*/
- __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1126, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1125, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_threading);
__Pyx_GIVEREF(__pyx_n_s_threading);
PyList_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_threading);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydev_imps__pydev_saved_modules, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydev_imps__pydev_saved_modules, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1125, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_threading); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1126, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_threading); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1125, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading, __pyx_t_8) < 0) __PYX_ERR(0, 1126, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading, __pyx_t_8) < 0) __PYX_ERR(0, 1125, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1127
+ /* "_pydevd_bundle/pydevd_cython.pyx":1126
* from _pydev_bundle.pydev_is_thread_alive import is_thread_alive
* from _pydev_imps._pydev_saved_modules import threading
* from _pydevd_bundle.pydevd_constants import get_current_thread_id, IS_IRONPYTHON, NO_FTRACE, IS_WINDOWS # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE
* from _pydevd_bundle.pydevd_kill_all_pydevd_threads import kill_all_pydev_threads
*/
- __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1127, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_get_current_thread_id);
__Pyx_GIVEREF(__pyx_n_s_get_current_thread_id);
@@ -38601,77 +38589,77 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_IS_WINDOWS);
__Pyx_GIVEREF(__pyx_n_s_IS_WINDOWS);
PyList_SET_ITEM(__pyx_t_1, 3, __pyx_n_s_IS_WINDOWS);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_constants, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1127, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_constants, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1127, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_get_current_thread_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_current_thread_id, __pyx_t_1) < 0) __PYX_ERR(0, 1127, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_current_thread_id, __pyx_t_1) < 0) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_IRONPYTHON); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1127, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_IRONPYTHON); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_IRONPYTHON, __pyx_t_1) < 0) __PYX_ERR(0, 1127, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_IRONPYTHON, __pyx_t_1) < 0) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1127, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_NO_FTRACE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_NO_FTRACE, __pyx_t_1) < 0) __PYX_ERR(0, 1127, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_NO_FTRACE, __pyx_t_1) < 0) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_WINDOWS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1127, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_IS_WINDOWS); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_WINDOWS, __pyx_t_1) < 0) __PYX_ERR(0, 1127, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IS_WINDOWS, __pyx_t_1) < 0) __PYX_ERR(0, 1126, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1128
+ /* "_pydevd_bundle/pydevd_cython.pyx":1127
* from _pydev_imps._pydev_saved_modules import threading
* from _pydevd_bundle.pydevd_constants import get_current_thread_id, IS_IRONPYTHON, NO_FTRACE, IS_WINDOWS
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_kill_all_pydevd_threads import kill_all_pydev_threads
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, NORM_PATHS_AND_BASE_CONTAINER
*/
- __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1128, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_DONT_TRACE);
__Pyx_GIVEREF(__pyx_n_s_DONT_TRACE);
PyList_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_DONT_TRACE);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_dont_trace, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1128, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_dont_trace, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1128, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_DONT_TRACE, __pyx_t_8) < 0) __PYX_ERR(0, 1128, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_DONT_TRACE, __pyx_t_8) < 0) __PYX_ERR(0, 1127, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1129
+ /* "_pydevd_bundle/pydevd_cython.pyx":1128
* from _pydevd_bundle.pydevd_constants import get_current_thread_id, IS_IRONPYTHON, NO_FTRACE, IS_WINDOWS
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE
* from _pydevd_bundle.pydevd_kill_all_pydevd_threads import kill_all_pydev_threads # <<<<<<<<<<<<<<
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, NORM_PATHS_AND_BASE_CONTAINER
* from pydevd_tracing import SetTrace
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1129, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1128, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_kill_all_pydev_threads);
__Pyx_GIVEREF(__pyx_n_s_kill_all_pydev_threads);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_kill_all_pydev_threads);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_kill_all_p, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1129, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_kill_all_p, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1128, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_kill_all_pydev_threads); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1129, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_kill_all_pydev_threads); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1128, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_kill_all_pydev_threads, __pyx_t_1) < 0) __PYX_ERR(0, 1129, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_kill_all_pydev_threads, __pyx_t_1) < 0) __PYX_ERR(0, 1128, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1130
+ /* "_pydevd_bundle/pydevd_cython.pyx":1129
* from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE
* from _pydevd_bundle.pydevd_kill_all_pydevd_threads import kill_all_pydev_threads
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, NORM_PATHS_AND_BASE_CONTAINER # <<<<<<<<<<<<<<
* from pydevd_tracing import SetTrace
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
- __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1129, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_get_abs_path_real_path_and_base);
__Pyx_GIVEREF(__pyx_n_s_get_abs_path_real_path_and_base);
@@ -38679,48 +38667,48 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER);
__Pyx_GIVEREF(__pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER);
PyList_SET_ITEM(__pyx_t_8, 1, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_file_utils, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_file_utils, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1129, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_get_abs_path_real_path_and_base); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1129, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_abs_path_real_path_and_base, __pyx_t_8) < 0) __PYX_ERR(0, 1130, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_abs_path_real_path_and_base, __pyx_t_8) < 0) __PYX_ERR(0, 1129, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1129, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER, __pyx_t_8) < 0) __PYX_ERR(0, 1130, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_NORM_PATHS_AND_BASE_CONTAINER, __pyx_t_8) < 0) __PYX_ERR(0, 1129, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1131
+ /* "_pydevd_bundle/pydevd_cython.pyx":1130
* from _pydevd_bundle.pydevd_kill_all_pydevd_threads import kill_all_pydev_threads
* from pydevd_file_utils import get_abs_path_real_path_and_base_from_frame, NORM_PATHS_AND_BASE_CONTAINER
* from pydevd_tracing import SetTrace # <<<<<<<<<<<<<<
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* # In Cython, set_additional_thread_info is bundled in the file.
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1131, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_SetTrace);
__Pyx_GIVEREF(__pyx_n_s_SetTrace);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_SetTrace);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_tracing, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1131, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_tracing, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_SetTrace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1131, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_SetTrace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_SetTrace, __pyx_t_1) < 0) __PYX_ERR(0, 1131, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_SetTrace, __pyx_t_1) < 0) __PYX_ERR(0, 1130, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1140
+ /* "_pydevd_bundle/pydevd_cython.pyx":1139
* # from _pydevd_bundle.pydevd_frame import PyDBFrame
* # ENDIF
* from os.path import basename, splitext # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_breakpoints import stop_on_unhandled_exception
* from _pydevd_bundle.pydevd_collect_try_except_info import collect_try_except_info
*/
- __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1140, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_basename);
__Pyx_GIVEREF(__pyx_n_s_basename);
@@ -38728,92 +38716,92 @@ if (!__Pyx_RefNanny) {
__Pyx_INCREF(__pyx_n_s_splitext);
__Pyx_GIVEREF(__pyx_n_s_splitext);
PyList_SET_ITEM(__pyx_t_8, 1, __pyx_n_s_splitext);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1140, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_basename); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1140, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_basename); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_basename, __pyx_t_8) < 0) __PYX_ERR(0, 1140, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_basename, __pyx_t_8) < 0) __PYX_ERR(0, 1139, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_splitext); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1140, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_splitext); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_splitext, __pyx_t_8) < 0) __PYX_ERR(0, 1140, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_splitext, __pyx_t_8) < 0) __PYX_ERR(0, 1139, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1141
+ /* "_pydevd_bundle/pydevd_cython.pyx":1140
* # ENDIF
* from os.path import basename, splitext
* from _pydevd_bundle.pydevd_breakpoints import stop_on_unhandled_exception # <<<<<<<<<<<<<<
* from _pydevd_bundle.pydevd_collect_try_except_info import collect_try_except_info
*
*/
- __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1141, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1140, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_n_s_stop_on_unhandled_exception);
__Pyx_GIVEREF(__pyx_n_s_stop_on_unhandled_exception);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_stop_on_unhandled_exception);
- __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_breakpoint, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1141, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_breakpoint, __pyx_t_1, -1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1140, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1141, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_8, __pyx_n_s_stop_on_unhandled_exception); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1140, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_stop_on_unhandled_exception, __pyx_t_1) < 0) __PYX_ERR(0, 1141, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_stop_on_unhandled_exception, __pyx_t_1) < 0) __PYX_ERR(0, 1140, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1142
+ /* "_pydevd_bundle/pydevd_cython.pyx":1141
* from os.path import basename, splitext
* from _pydevd_bundle.pydevd_breakpoints import stop_on_unhandled_exception
* from _pydevd_bundle.pydevd_collect_try_except_info import collect_try_except_info # <<<<<<<<<<<<<<
*
- * threadingCurrentThread = threading.currentThread
+ * threadingCurrentThread = threading.current_thread
*/
- __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1142, __pyx_L1_error)
+ __pyx_t_8 = PyList_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_n_s_collect_try_except_info);
__Pyx_GIVEREF(__pyx_n_s_collect_try_except_info);
PyList_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_collect_try_except_info);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_collect_tr, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1142, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_collect_tr, __pyx_t_8, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_collect_try_except_info); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1142, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_collect_try_except_info); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_collect_try_except_info, __pyx_t_8) < 0) __PYX_ERR(0, 1142, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_collect_try_except_info, __pyx_t_8) < 0) __PYX_ERR(0, 1141, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1144
+ /* "_pydevd_bundle/pydevd_cython.pyx":1143
* from _pydevd_bundle.pydevd_collect_try_except_info import collect_try_except_info
*
- * threadingCurrentThread = threading.currentThread # <<<<<<<<<<<<<<
+ * threadingCurrentThread = threading.current_thread # <<<<<<<<<<<<<<
* get_file_type = DONT_TRACE.get
*
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_threading); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1144, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_threading); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_currentThread); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1144, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_current_thread); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_threadingCurrentThread, __pyx_t_8) < 0) __PYX_ERR(0, 1144, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_threadingCurrentThread, __pyx_t_8) < 0) __PYX_ERR(0, 1143, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1145
+ /* "_pydevd_bundle/pydevd_cython.pyx":1144
*
- * threadingCurrentThread = threading.currentThread
+ * threadingCurrentThread = threading.current_thread
* get_file_type = DONT_TRACE.get # <<<<<<<<<<<<<<
*
* # Note: this is different from pydevd_constants.thread_get_ident because we want Jython
*/
- __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1145, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_DONT_TRACE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1144, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1145, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1144, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_file_type, __pyx_t_1) < 0) __PYX_ERR(0, 1145, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_file_type, __pyx_t_1) < 0) __PYX_ERR(0, 1144, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1149
+ /* "_pydevd_bundle/pydevd_cython.pyx":1148
* # Note: this is different from pydevd_constants.thread_get_ident because we want Jython
* # to be None here because it also doesn't have threading._active.
* try: # <<<<<<<<<<<<<<
@@ -38829,22 +38817,22 @@ if (!__Pyx_RefNanny) {
__Pyx_XGOTREF(__pyx_t_5);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1150
+ /* "_pydevd_bundle/pydevd_cython.pyx":1149
* # to be None here because it also doesn't have threading._active.
* try:
* threading_get_ident = threading.get_ident # Python 3 # <<<<<<<<<<<<<<
* except:
* try:
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_threading); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1150, __pyx_L28_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_threading); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1149, __pyx_L28_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_ident); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1150, __pyx_L28_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_ident); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1149, __pyx_L28_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading_get_ident, __pyx_t_8) < 0) __PYX_ERR(0, 1150, __pyx_L28_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading_get_ident, __pyx_t_8) < 0) __PYX_ERR(0, 1149, __pyx_L28_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1149
+ /* "_pydevd_bundle/pydevd_cython.pyx":1148
* # Note: this is different from pydevd_constants.thread_get_ident because we want Jython
* # to be None here because it also doesn't have threading._active.
* try: # <<<<<<<<<<<<<<
@@ -38863,7 +38851,7 @@ if (!__Pyx_RefNanny) {
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1151
+ /* "_pydevd_bundle/pydevd_cython.pyx":1150
* try:
* threading_get_ident = threading.get_ident # Python 3
* except: # <<<<<<<<<<<<<<
@@ -38872,12 +38860,12 @@ if (!__Pyx_RefNanny) {
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 1151, __pyx_L30_except_error)
+ if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 1150, __pyx_L30_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_2);
- /* "_pydevd_bundle/pydevd_cython.pyx":1152
+ /* "_pydevd_bundle/pydevd_cython.pyx":1151
* threading_get_ident = threading.get_ident # Python 3
* except:
* try: # <<<<<<<<<<<<<<
@@ -38893,22 +38881,22 @@ if (!__Pyx_RefNanny) {
__Pyx_XGOTREF(__pyx_t_14);
/*try:*/ {
- /* "_pydevd_bundle/pydevd_cython.pyx":1153
+ /* "_pydevd_bundle/pydevd_cython.pyx":1152
* except:
* try:
* threading_get_ident = threading._get_ident # Python 2 # <<<<<<<<<<<<<<
* except:
* threading_get_ident = None # Jython
*/
- __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_threading); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1153, __pyx_L36_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_threading); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1152, __pyx_L36_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_get_ident_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1153, __pyx_L36_error)
+ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_get_ident_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1152, __pyx_L36_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading_get_ident, __pyx_t_11) < 0) __PYX_ERR(0, 1153, __pyx_L36_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading_get_ident, __pyx_t_11) < 0) __PYX_ERR(0, 1152, __pyx_L36_error)
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1152
+ /* "_pydevd_bundle/pydevd_cython.pyx":1151
* threading_get_ident = threading.get_ident # Python 3
* except:
* try: # <<<<<<<<<<<<<<
@@ -38924,7 +38912,7 @@ if (!__Pyx_RefNanny) {
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1154
+ /* "_pydevd_bundle/pydevd_cython.pyx":1153
* try:
* threading_get_ident = threading._get_ident # Python 2
* except: # <<<<<<<<<<<<<<
@@ -38933,19 +38921,19 @@ if (!__Pyx_RefNanny) {
*/
/*except:*/ {
__Pyx_AddTraceback("_pydevd_bundle.pydevd_cython", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_9, &__pyx_t_15) < 0) __PYX_ERR(0, 1154, __pyx_L38_except_error)
+ if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_9, &__pyx_t_15) < 0) __PYX_ERR(0, 1153, __pyx_L38_except_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GOTREF(__pyx_t_15);
- /* "_pydevd_bundle/pydevd_cython.pyx":1155
+ /* "_pydevd_bundle/pydevd_cython.pyx":1154
* threading_get_ident = threading._get_ident # Python 2
* except:
* threading_get_ident = None # Jython # <<<<<<<<<<<<<<
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading_get_ident, Py_None) < 0) __PYX_ERR(0, 1155, __pyx_L38_except_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading_get_ident, Py_None) < 0) __PYX_ERR(0, 1154, __pyx_L38_except_error)
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
@@ -38953,7 +38941,7 @@ if (!__Pyx_RefNanny) {
}
__pyx_L38_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1152
+ /* "_pydevd_bundle/pydevd_cython.pyx":1151
* threading_get_ident = threading.get_ident # Python 3
* except:
* try: # <<<<<<<<<<<<<<
@@ -38979,7 +38967,7 @@ if (!__Pyx_RefNanny) {
}
__pyx_L30_except_error:;
- /* "_pydevd_bundle/pydevd_cython.pyx":1149
+ /* "_pydevd_bundle/pydevd_cython.pyx":1148
* # Note: this is different from pydevd_constants.thread_get_ident because we want Jython
* # to be None here because it also doesn't have threading._active.
* try: # <<<<<<<<<<<<<<
@@ -38999,123 +38987,123 @@ if (!__Pyx_RefNanny) {
__pyx_L33_try_end:;
}
- /* "_pydevd_bundle/pydevd_cython.pyx":1167
+ /* "_pydevd_bundle/pydevd_cython.pyx":1166
* # - Breakpoints are changed
* # It can be used when running regularly (without step over/step in/step return)
* global_cache_skips = {} # <<<<<<<<<<<<<<
* global_cache_frame_skips = {}
*
*/
- __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1167, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1166, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_global_cache_skips, __pyx_t_2) < 0) __PYX_ERR(0, 1167, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_global_cache_skips, __pyx_t_2) < 0) __PYX_ERR(0, 1166, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1168
+ /* "_pydevd_bundle/pydevd_cython.pyx":1167
* # It can be used when running regularly (without step over/step in/step return)
* global_cache_skips = {}
* global_cache_frame_skips = {} # <<<<<<<<<<<<<<
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
*/
- __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1168, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1167, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_global_cache_frame_skips, __pyx_t_2) < 0) __PYX_ERR(0, 1168, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_global_cache_frame_skips, __pyx_t_2) < 0) __PYX_ERR(0, 1167, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1187
+ /* "_pydevd_bundle/pydevd_cython.pyx":1186
*
*
* def fix_top_level_trace_and_get_trace_func(py_db, frame): # <<<<<<<<<<<<<<
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* cdef str filename;
*/
- __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_13fix_top_level_trace_and_get_trace_func, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1187, __pyx_L1_error)
+ __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_13fix_top_level_trace_and_get_trace_func, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_fix_top_level_trace_and_get_trac, __pyx_t_2) < 0) __PYX_ERR(0, 1187, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_fix_top_level_trace_and_get_trac, __pyx_t_2) < 0) __PYX_ERR(0, 1186, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1301
+ /* "_pydevd_bundle/pydevd_cython.pyx":1300
*
* # IFDEF CYTHON -- DONT EDIT THIS FILE (it is automatically generated)
* def trace_dispatch(py_db, frame, str event, arg): # <<<<<<<<<<<<<<
* # ELSE
* # def trace_dispatch(py_db, frame, event, arg):
*/
- __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_15trace_dispatch, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1301, __pyx_L1_error)
+ __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_15trace_dispatch, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1300, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_trace_dispatch, __pyx_t_2) < 0) __PYX_ERR(0, 1301, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_trace_dispatch, __pyx_t_2) < 0) __PYX_ERR(0, 1300, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1623
+ /* "_pydevd_bundle/pydevd_cython.pyx":1622
*
*
* if IS_IRONPYTHON: # <<<<<<<<<<<<<<
* # This is far from ideal, as we'll leak frames (we'll always have the last created frame, not really
* # the last topmost frame saved -- this should be Ok for our usage, but it may leak frames and things
*/
- __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_IS_IRONPYTHON); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1623, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_IS_IRONPYTHON); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1622, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1623, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1622, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_4) {
- /* "_pydevd_bundle/pydevd_cython.pyx":1631
+ /* "_pydevd_bundle/pydevd_cython.pyx":1630
* #
* # See: https://github.com/IronLanguages/main/issues/1630
* from _pydevd_bundle.pydevd_additional_thread_info_regular import _tid_to_last_frame # <<<<<<<<<<<<<<
*
* _original_call = ThreadTracer.__call__
*/
- __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1631, __pyx_L1_error)
+ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1630, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_n_s_tid_to_last_frame);
__Pyx_GIVEREF(__pyx_n_s_tid_to_last_frame);
PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_tid_to_last_frame);
- __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_additional, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1631, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Import(__pyx_n_s_pydevd_bundle_pydevd_additional, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1630, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_tid_to_last_frame); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1631, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_tid_to_last_frame); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1630, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_tid_to_last_frame, __pyx_t_2) < 0) __PYX_ERR(0, 1631, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_tid_to_last_frame, __pyx_t_2) < 0) __PYX_ERR(0, 1630, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1633
+ /* "_pydevd_bundle/pydevd_cython.pyx":1632
* from _pydevd_bundle.pydevd_additional_thread_info_regular import _tid_to_last_frame
*
* _original_call = ThreadTracer.__call__ # <<<<<<<<<<<<<<
*
* def __call__(self, frame, event, arg):
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_n_s_call_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1633, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_n_s_call_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1632, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_original_call, __pyx_t_1) < 0) __PYX_ERR(0, 1633, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_original_call, __pyx_t_1) < 0) __PYX_ERR(0, 1632, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1635
+ /* "_pydevd_bundle/pydevd_cython.pyx":1634
* _original_call = ThreadTracer.__call__
*
* def __call__(self, frame, event, arg): # <<<<<<<<<<<<<<
* _tid_to_last_frame[self._args[1].ident] = frame
* return _original_call(self, frame, event, arg)
*/
- __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_17__call__, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_14_pydevd_bundle_13pydevd_cython_17__call__, NULL, __pyx_n_s_pydevd_bundle_pydevd_cython); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1634, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_call_2, __pyx_t_1) < 0) __PYX_ERR(0, 1635, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_call_2, __pyx_t_1) < 0) __PYX_ERR(0, 1634, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1639
+ /* "_pydevd_bundle/pydevd_cython.pyx":1638
* return _original_call(self, frame, event, arg)
*
* ThreadTracer.__call__ = __call__ # <<<<<<<<<<<<<<
*/
- __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_call_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1639, __pyx_L1_error)
+ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_call_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1638, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_n_s_call_2, __pyx_t_1) < 0) __PYX_ERR(0, 1639, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_ptype_14_pydevd_bundle_13pydevd_cython_ThreadTracer), __pyx_n_s_call_2, __pyx_t_1) < 0) __PYX_ERR(0, 1638, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "_pydevd_bundle/pydevd_cython.pyx":1623
+ /* "_pydevd_bundle/pydevd_cython.pyx":1622
*
*
* if IS_IRONPYTHON: # <<<<<<<<<<<<<<
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython.pyx b/python/helpers/pydev/_pydevd_bundle/pydevd_cython.pyx
index fc60d85a1141..fc7a5a638ca0 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython.pyx
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython.pyx
@@ -13,7 +13,7 @@ pydev_log.debug("Using Cython speedups")
# from _pydevd_bundle.pydevd_frame import PyDBFrame
# ENDIF
-version = 33
+version = 34
if not hasattr(sys, '_current_frames'):
@@ -171,7 +171,6 @@ def set_additional_thread_info(thread):
thread.additional_info = additional_info
return additional_info
-import dis
import linecache
import os.path
import re
@@ -1141,7 +1140,7 @@ from os.path import basename, splitext
from _pydevd_bundle.pydevd_breakpoints import stop_on_unhandled_exception
from _pydevd_bundle.pydevd_collect_try_except_info import collect_try_except_info
-threadingCurrentThread = threading.currentThread
+threadingCurrentThread = threading.current_thread
get_file_type = DONT_TRACE.get
# Note: this is different from pydevd_constants.thread_get_ident because we want Jython
@@ -1211,7 +1210,7 @@ def fix_top_level_trace_and_get_trace_func(py_db, frame):
return None, False
elif f_unhandled.f_code.co_name in ('__bootstrap_inner', '_bootstrap_inner'):
- # Note: be careful not to use threading.currentThread to avoid creating a dummy thread.
+ # Note: be careful not to use threading.current_thread to avoid creating a dummy thread.
t = f_unhandled.f_locals.get('self')
force_only_unhandled_tracer = True
if t is not None and isinstance(t, threading.Thread):
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_27_64.so b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_27_64.so
index e3b7cfddef64..21ac7ce30181 100755
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_27_64.so
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_27_64.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_310_64.cpython-310-darwin.so b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_310_64.cpython-310-darwin.so
index c8c60df82580..9eda0b098072 100755
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_310_64.cpython-310-darwin.so
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_310_64.cpython-310-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_36_64.cpython-36m-darwin.so b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_36_64.cpython-36m-darwin.so
index 3df4146263ba..6520ca787634 100755
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_36_64.cpython-36m-darwin.so
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_36_64.cpython-36m-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_37_64.cpython-37m-darwin.so b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_37_64.cpython-37m-darwin.so
index 18ac13a1ebc8..b9a915569828 100755
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_37_64.cpython-37m-darwin.so
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_37_64.cpython-37m-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_38_64.cpython-38-darwin.so b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_38_64.cpython-38-darwin.so
index 061ec64ffbb5..38907ebd5931 100755
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_38_64.cpython-38-darwin.so
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_38_64.cpython-38-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_39_64.cpython-39-darwin.so b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_39_64.cpython-39-darwin.so
index 0c49db6a6dea..809032e3b068 100755
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_39_64.cpython-39-darwin.so
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_darwin_39_64.cpython-39-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_32.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_32.pyd
index 3790c5fab8af..4c63d4edc0d4 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_32.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_64.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_64.pyd
index ad4964343640..04e86e1a8dc2 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_64.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_27_64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_32.cp310-win32.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_32.cp310-win32.pyd
index 75ff76f8eab9..49c9c2d62f6f 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_32.cp310-win32.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_32.cp310-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_64.cp310-win_amd64.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_64.cp310-win_amd64.pyd
index 28e0d0d6969f..12213f5010c3 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_64.cp310-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_310_64.cp310-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_32.cp36-win32.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_32.cp36-win32.pyd
index 2721355253a8..9718b00be312 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_32.cp36-win32.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_32.cp36-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_64.cp36-win_amd64.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_64.cp36-win_amd64.pyd
index 0f200d9826c4..ab912298c07f 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_64.cp36-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_36_64.cp36-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_32.cp37-win32.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_32.cp37-win32.pyd
index 5e8ab16de6a5..a68cc929a3fe 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_32.cp37-win32.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_32.cp37-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_64.cp37-win_amd64.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_64.cp37-win_amd64.pyd
index 8580b377f970..53a30d7e0199 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_64.cp37-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_37_64.cp37-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_32.cp38-win32.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_32.cp38-win32.pyd
index 7eaa01aebd8b..d57e98e73a9c 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_32.cp38-win32.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_32.cp38-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_64.cp38-win_amd64.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_64.cp38-win_amd64.pyd
index dc57cb15721e..8ea3ecaadeaa 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_64.cp38-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_38_64.cp38-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_32.cp39-win32.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_32.cp39-win32.pyd
index 43bc500e4e73..2545cf00e881 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_32.cp39-win32.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_32.cp39-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_64.cp39-win_amd64.pyd b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_64.cp39-win_amd64.pyd
index 6352b5aba252..b9c329efc8de 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_64.cp39-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_cython_win32_39_64.cp39-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_dont_trace_files.py b/python/helpers/pydev/_pydevd_bundle/pydevd_dont_trace_files.py
index 3c22a57860b1..0b649c47cfe4 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_dont_trace_files.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_dont_trace_files.py
@@ -82,6 +82,7 @@ DONT_TRACE = {
'pydevd_concurrency_logger.py': PYDEV_FILE,
'pydevd_console.py': PYDEV_FILE,
'pydevd_console_integration.py': PYDEV_FILE,
+ 'pydevd_console_output.py': PYDEV_FILE,
'pydevd_console_pytest.py': PYDEV_FILE,
'pydevd_constants.py': PYDEV_FILE,
'pydevd_custom_frames.py': PYDEV_FILE,
@@ -122,11 +123,12 @@ DONT_TRACE = {
'pydevd_trace_dispatch_regular.py': PYDEV_FILE,
'pydevd_traceproperty.py': PYDEV_FILE,
'pydevd_tracing.py': PYDEV_FILE,
+ 'pydevd_user_type_renderers.py': PYDEV_FILE,
+ 'pydevd_user_type_renderers_utils.py': PYDEV_FILE,
'pydevd_utils.py': PYDEV_FILE,
'pydevd_vars.py': PYDEV_FILE,
'pydevd_vm_type.py': PYDEV_FILE,
'pydevd_xml.py': PYDEV_FILE,
- 'pydevd_console_output.py': PYDEV_FILE,
}
DONT_TRACE['pydev_jupyter_plugin.py'] = PYDEV_FILE
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_trace_dispatch_regular.py b/python/helpers/pydev/_pydevd_bundle/pydevd_trace_dispatch_regular.py
index 87b01fa03924..3a915922c21a 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_trace_dispatch_regular.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_trace_dispatch_regular.py
@@ -19,7 +19,7 @@ from os.path import basename, splitext
from _pydevd_bundle.pydevd_breakpoints import stop_on_unhandled_exception
from _pydevd_bundle.pydevd_collect_try_except_info import collect_try_except_info
-threadingCurrentThread = threading.currentThread
+threadingCurrentThread = threading.current_thread
get_file_type = DONT_TRACE.get
# Note: this is different from pydevd_constants.thread_get_ident because we want Jython
@@ -89,7 +89,7 @@ def fix_top_level_trace_and_get_trace_func(py_db, frame):
return None, False
elif f_unhandled.f_code.co_name in ('__bootstrap_inner', '_bootstrap_inner'):
- # Note: be careful not to use threading.currentThread to avoid creating a dummy thread.
+ # Note: be careful not to use threading.current_thread to avoid creating a dummy thread.
t = f_unhandled.f_locals.get('self')
force_only_unhandled_tracer = True
if t is not None and isinstance(t, threading.Thread):
diff --git a/python/helpers/pydev/_pydevd_bundle/pydevd_vars.py b/python/helpers/pydev/_pydevd_bundle/pydevd_vars.py
index e066c4e2f71f..183d91d27d59 100644
--- a/python/helpers/pydev/_pydevd_bundle/pydevd_vars.py
+++ b/python/helpers/pydev/_pydevd_bundle/pydevd_vars.py
@@ -53,7 +53,7 @@ def _iter_frames(initialFrame):
def dump_frames(thread_id):
sys.stdout.write('dumping frames\n')
- if thread_id != get_current_thread_id(threading.currentThread()):
+ if thread_id != get_current_thread_id(threading.current_thread()):
raise VariableError("find_frame: must execute on same thread")
curFrame = get_frame()
@@ -94,7 +94,7 @@ def get_additional_frames_by_id(thread_id):
def find_frame(thread_id, frame_id):
""" returns a frame on the thread that has a given frame_id """
try:
- curr_thread_id = get_current_thread_id(threading.currentThread())
+ curr_thread_id = get_current_thread_id(threading.current_thread())
if thread_id != curr_thread_id:
try:
return get_custom_frame(thread_id, frame_id) # I.e.: thread_id could be a stackless frame id + thread_id.
@@ -182,7 +182,7 @@ def getVariable(thread_id, frame_id, scope, attrs):
not the frame (as we don't care about the frame in this case).
"""
if scope == 'BY_ID':
- if thread_id != get_current_thread_id(threading.currentThread()):
+ if thread_id != get_current_thread_id(threading.current_thread()):
raise VariableError("getVariable: must execute on same thread")
try:
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.c b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.c
index 027d91385e71..ad9018d09f13 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.c
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.c
@@ -1717,7 +1717,7 @@ static int __pyx_pf_18_pydevd_frame_eval_29pydevd_frame_evaluator_common_10Threa
* self.thread_trace_func = None
*
* def initialize_if_possible(self): # <<<<<<<<<<<<<<
- * # Don't call threading.currentThread because if we're too early in the process
+ * # Don't call threading.current_thread because if we're too early in the process
* # we may create a dummy thread.
*/
@@ -1770,7 +1770,7 @@ static PyObject *__pyx_pf_18_pydevd_frame_eval_29pydevd_frame_evaluator_common_1
__Pyx_RefNannySetupContext("initialize_if_possible", 0);
/* "_pydevd_frame_eval/pydevd_frame_evaluator_common.pyx":29
- * # Don't call threading.currentThread because if we're too early in the process
+ * # Don't call threading.current_thread because if we're too early in the process
* # we may create a dummy thread.
* self.inside_frame_eval += 1 # <<<<<<<<<<<<<<
*
@@ -2461,7 +2461,7 @@ static PyObject *__pyx_pf_18_pydevd_frame_eval_29pydevd_frame_evaluator_common_1
* self.thread_trace_func = None
*
* def initialize_if_possible(self): # <<<<<<<<<<<<<<
- * # Don't call threading.currentThread because if we're too early in the process
+ * # Don't call threading.current_thread because if we're too early in the process
* # we may create a dummy thread.
*/
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win32.pyd
index b11297cd0f3d..f92789f60e49 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win_amd64.pyd
index 13d0600c2ad7..5fe5ed6a6611 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp310-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win32.pyd
index bca58ca80702..c6af2d2b9794 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win_amd64.pyd
index e8f16c99f01d..9454bf603c9e 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp36-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win32.pyd
index 2846136be75e..8aaa4ca42063 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win_amd64.pyd
index 071799bad088..05fe16a26cfb 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp37-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win32.pyd
index f1b1be731871..5ffc6cc0acd3 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win_amd64.pyd
index 216b165aea71..da98dc9a20f5 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp38-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win32.pyd
index 7a2b367f9b9d..e0eeb78bf352 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win_amd64.pyd
index 67fe50ecced7..ef224b259a0c 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cp39-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-310-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-310-darwin.so
index 88396924209c..c5c51b922f57 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-310-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-310-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-36m-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-36m-darwin.so
index 98382da21bb6..c9b33b517736 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-36m-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-36m-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-37m-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-37m-darwin.so
index 07ca4b2ae54d..577a8e4f4c76 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-37m-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-37m-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-38-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-38-darwin.so
index d2f4b4a2bd5d..b564b96d5ea1 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-38-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-38-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-darwin.so
index 1c0e341f0a06..143c5904d2ba 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.pyx b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.pyx
index f356399eb7e7..1cb7f0064ac3 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.pyx
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_common.pyx
@@ -24,7 +24,7 @@ cdef class ThreadInfo:
self.thread_trace_func = None
def initialize_if_possible(self):
- # Don't call threading.currentThread because if we're too early in the process
+ # Don't call threading.current_thread because if we're too early in the process
# we may create a dummy thread.
self.inside_frame_eval += 1
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_310_64.cpython-310-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_310_64.cpython-310-darwin.so
index 34ee95ff4164..1b3ac92b765a 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_310_64.cpython-310-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_310_64.cpython-310-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_36_64.cpython-36m-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_36_64.cpython-36m-darwin.so
index 9dcf6f41870b..115a87dd186e 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_36_64.cpython-36m-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_36_64.cpython-36m-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_37_64.cpython-37m-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_37_64.cpython-37m-darwin.so
index f367a56e0b3e..adf6959a69b6 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_37_64.cpython-37m-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_37_64.cpython-37m-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_38_64.cpython-38-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_38_64.cpython-38-darwin.so
index 6c06d51a4431..5a6c4c4f6598 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_38_64.cpython-38-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_38_64.cpython-38-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_39_64.cpython-39-darwin.so b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_39_64.cpython-39-darwin.so
index b2ee86f42727..2e5a8a45a3aa 100755
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_39_64.cpython-39-darwin.so
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_39_64.cpython-39-darwin.so
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_32.cp310-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_32.cp310-win32.pyd
index f7dbc1359d6d..a2531f2b24a5 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_32.cp310-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_32.cp310-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_64.cp310-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_64.cp310-win_amd64.pyd
index c1563cdf3d8e..1367d2454b69 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_64.cp310-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_64.cp310-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_32.cp36-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_32.cp36-win32.pyd
index 34f2eab03a14..4d9912df8f25 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_32.cp36-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_32.cp36-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_64.cp36-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_64.cp36-win_amd64.pyd
index 858e5c263ccf..effc5292feb3 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_64.cp36-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_64.cp36-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_32.cp37-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_32.cp37-win32.pyd
index 37ffe38648b7..1f1c093244af 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_32.cp37-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_32.cp37-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_64.cp37-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_64.cp37-win_amd64.pyd
index d09a2094bf66..060d698853c8 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_64.cp37-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_64.cp37-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_32.cp38-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_32.cp38-win32.pyd
index 0eed97f9fc37..24164eb304bc 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_32.cp38-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_32.cp38-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_64.cp38-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_64.cp38-win_amd64.pyd
index 3bf1561b1eb3..79e190f78154 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_64.cp38-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_64.cp38-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_32.cp39-win32.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_32.cp39-win32.pyd
index b3fcabcbdfbe..623f9b79895b 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_32.cp39-win32.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_32.cp39-win32.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_64.cp39-win_amd64.pyd b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_64.cp39-win_amd64.pyd
index ddd55b10850c..e56885ada51e 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_64.cp39-win_amd64.pyd
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_64.cp39-win_amd64.pyd
Binary files differ
diff --git a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_tracing.py b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_tracing.py
index 4d2040dbf14a..ae9513dd128f 100644
--- a/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_tracing.py
+++ b/python/helpers/pydev/_pydevd_frame_eval/pydevd_frame_tracing.py
@@ -35,7 +35,7 @@ def _get_line_for_frame(frame):
def suspend_at_builtin_breakpoint():
# used by built-in breakpoint() function appeared in Python 3.7
frame = sys._getframe(3)
- t = threading.currentThread()
+ t = threading.current_thread()
if t.additional_info.is_tracing:
return False
if t.additional_info.pydev_step_cmd == -1:
@@ -51,7 +51,7 @@ def suspend_at_builtin_breakpoint():
def _pydev_stop_at_break(line):
frame = sys._getframe(1)
- t = threading.currentThread()
+ t = threading.current_thread()
if t.additional_info.is_tracing:
return False
diff --git a/python/helpers/pydev/pydev_tests/test_pydevconsole.py b/python/helpers/pydev/pydev_tests/test_pydevconsole.py
index 8cb997e3e2e2..71d642300ebd 100644
--- a/python/helpers/pydev/pydev_tests/test_pydevconsole.py
+++ b/python/helpers/pydev/pydev_tests/test_pydevconsole.py
@@ -34,7 +34,7 @@ class Test(unittest.TestCase):
time.sleep(.3) #let's give it some time to start the threads
from _pydev_bundle import pydev_localhost
- interpreter = pydevconsole.InterpreterInterface(threading.currentThread(), rpc_client=rpc_client)
+ interpreter = pydevconsole.InterpreterInterface(threading.current_thread(), rpc_client=rpc_client)
(result,) = interpreter.hello("Hello pydevconsole")
self.assertEqual(result, "Hello eclipse")
@@ -54,7 +54,7 @@ class Test(unittest.TestCase):
from _pydev_bundle import pydev_localhost
from _pydev_bundle.pydev_console_types import CodeFragment
- interpreter = pydevconsole.InterpreterInterface(threading.currentThread(), rpc_client=rpc_client)
+ interpreter = pydevconsole.InterpreterInterface(threading.current_thread(), rpc_client=rpc_client)
sys.stdout = pydevd_io.IOBuf()
interpreter.add_exec(CodeFragment('class Foo:\n CONSTANT=1\n'))
interpreter.add_exec(CodeFragment('foo=Foo()'))
diff --git a/python/helpers/pydev/pydevconsole.py b/python/helpers/pydev/pydevconsole.py
index acb42c0344fe..ea2e049f1062 100644
--- a/python/helpers/pydev/pydevconsole.py
+++ b/python/helpers/pydev/pydevconsole.py
@@ -390,7 +390,7 @@ def start_server(port):
# 1. Start Python console server
# `InterpreterInterface` implements all methods required for `server_handler`
- interpreter = InterpreterInterface(threading.currentThread())
+ interpreter = InterpreterInterface(threading.current_thread())
# Tell UMD the proper default namespace
_set_globals_function(interpreter.get_namespace)
@@ -420,7 +420,7 @@ def start_client(host, port):
client, server_transport = make_rpc_client(client_service, host, port)
- interpreter = InterpreterInterface(threading.currentThread(), rpc_client=client)
+ interpreter = InterpreterInterface(threading.current_thread(), rpc_client=client)
# we do not need to start the server in a new thread because it does not need to accept a client connection, it already has it
@@ -454,7 +454,7 @@ def get_interpreter():
try:
interpreterInterface = getattr(__builtin__, 'interpreter')
except AttributeError:
- interpreterInterface = InterpreterInterface(None, None, threading.currentThread())
+ interpreterInterface = InterpreterInterface(None, None, threading.current_thread())
__builtin__.interpreter = interpreterInterface
print(interpreterInterface.get_greeting_msg())
diff --git a/python/helpers/pydev/pydevd.py b/python/helpers/pydev/pydevd.py
index cd76213c57bb..c34a4bd56e64 100644
--- a/python/helpers/pydev/pydevd.py
+++ b/python/helpers/pydev/pydevd.py
@@ -102,7 +102,7 @@ if SUPPORT_PLUGINS:
threadingEnumerate = threading.enumerate
-threadingCurrentThread = threading.currentThread
+threadingCurrentThread = threading.current_thread
original_excepthook = sys.__excepthook__
@@ -130,7 +130,7 @@ class PyDBCommandThread(PyDBDaemonThread):
PyDBDaemonThread.__init__(self)
self._py_db_command_thread_event = py_db._py_db_command_thread_event
self.py_db = py_db
- self.setName('pydevd.CommandThread')
+ self.name = 'pydevd.CommandThread'
@overrides(PyDBDaemonThread._on_run)
def _on_run(self):
@@ -1528,7 +1528,7 @@ class PyDB(object):
def wait_for_commands(self, globals):
self._activate_mpl_if_needed()
- thread = threading.currentThread()
+ thread = threading.current_thread()
from _pydevd_bundle import pydevd_frame_utils
frame = pydevd_frame_utils.Frame(None, -1, pydevd_frame_utils.FCode("Console",
os.path.abspath(os.path.dirname(__file__))), globals, globals)
diff --git a/python/helpers/pydev/pydevd_concurrency_analyser/pydevd_concurrency_logger.py b/python/helpers/pydev/pydevd_concurrency_analyser/pydevd_concurrency_logger.py
index 8e369c1154af..f045c873653c 100644
--- a/python/helpers/pydev/pydevd_concurrency_analyser/pydevd_concurrency_logger.py
+++ b/python/helpers/pydev/pydevd_concurrency_analyser/pydevd_concurrency_logger.py
@@ -12,7 +12,7 @@ except:
from urllib.parse import quote # @UnresolvedImport
from _pydev_imps._pydev_saved_modules import threading
-threadingCurrentThread = threading.currentThread
+threadingCurrentThread = threading.current_thread
DONT_TRACE_THREADING = ['threading.py', 'pydevd.py']
diff --git a/python/helpers/typeshed/stdlib/@python2/__builtin__.pyi b/python/helpers/typeshed/stdlib/@python2/__builtin__.pyi
index 4791fd6c7a6a..453a95871463 100644
--- a/python/helpers/typeshed/stdlib/@python2/__builtin__.pyi
+++ b/python/helpers/typeshed/stdlib/@python2/__builtin__.pyi
@@ -1,7 +1,7 @@
# True and False are deliberately omitted because they are keywords in
# Python 3, and stub files conform to Python 3 syntax.
-from _typeshed import ReadableBuffer, Self, SupportsKeysAndGetItem, SupportsWrite
+from _typeshed import ReadableBuffer, SupportsKeysAndGetItem, SupportsWrite
from abc import ABCMeta
from ast import mod
from types import CodeType
@@ -13,11 +13,14 @@ from typing import (
ByteString,
Callable,
Container,
+ Dict,
+ FrozenSet,
Generic,
ItemsView,
Iterable,
Iterator,
KeysView,
+ List,
Mapping,
MutableMapping,
MutableSequence,
@@ -26,12 +29,15 @@ from typing import (
Protocol,
Reversible,
Sequence,
+ Set,
Sized,
SupportsAbs,
SupportsComplex,
SupportsFloat,
SupportsInt,
Text,
+ Tuple,
+ Type,
TypeVar,
ValuesView,
overload,
@@ -54,68 +60,70 @@ _T2 = TypeVar("_T2")
_T3 = TypeVar("_T3")
_T4 = TypeVar("_T4")
_T5 = TypeVar("_T5")
-_TT = TypeVar("_TT", bound=type)
+_TT = TypeVar("_TT", bound="type")
+_TBE = TypeVar("_TBE", bound="BaseException")
class object:
__doc__: str | None
- __dict__: dict[str, Any]
+ __dict__: Dict[str, Any]
+ __slots__: Text | Iterable[Text]
__module__: str
@property
- def __class__(self: _T) -> type[_T]: ...
+ def __class__(self: _T) -> Type[_T]: ...
@__class__.setter
- def __class__(self, __type: type[object]) -> None: ... # noqa: F811
+ def __class__(self, __type: Type[object]) -> None: ... # noqa: F811
def __init__(self) -> None: ...
def __new__(cls) -> Any: ...
def __setattr__(self, name: str, value: Any) -> None: ...
def __eq__(self, o: object) -> bool: ...
def __ne__(self, o: object) -> bool: ...
- def __str__(self) -> str: ... # noqa Y029
- def __repr__(self) -> str: ... # noqa Y029
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __hash__(self) -> int: ...
def __format__(self, format_spec: str) -> str: ...
def __getattribute__(self, name: str) -> Any: ...
def __delattr__(self, name: str) -> None: ...
def __sizeof__(self) -> int: ...
- def __reduce__(self) -> str | tuple[Any, ...]: ...
- def __reduce_ex__(self, protocol: int) -> str | tuple[Any, ...]: ...
+ def __reduce__(self) -> str | Tuple[Any, ...]: ...
+ def __reduce_ex__(self, protocol: int) -> str | Tuple[Any, ...]: ...
class staticmethod(object): # Special, only valid as a decorator.
__func__: Callable[..., Any]
def __init__(self, f: Callable[..., Any]) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
- def __get__(self, obj: _T, type: type[_T] | None = ...) -> Callable[..., Any]: ...
+ def __new__(cls: Type[_T], *args: Any, **kwargs: Any) -> _T: ...
+ def __get__(self, obj: _T, type: Type[_T] | None = ...) -> Callable[..., Any]: ...
class classmethod(object): # Special, only valid as a decorator.
__func__: Callable[..., Any]
def __init__(self, f: Callable[..., Any]) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
- def __get__(self, obj: _T, type: type[_T] | None = ...) -> Callable[..., Any]: ...
+ def __new__(cls: Type[_T], *args: Any, **kwargs: Any) -> _T: ...
+ def __get__(self, obj: _T, type: Type[_T] | None = ...) -> Callable[..., Any]: ...
class type(object):
__base__: type
- __bases__: tuple[type, ...]
+ __bases__: Tuple[type, ...]
__basicsize__: int
- __dict__: dict[str, Any]
+ __dict__: Dict[str, Any]
__dictoffset__: int
__flags__: int
__itemsize__: int
__module__: str
- __mro__: tuple[type, ...]
+ __mro__: Tuple[type, ...]
__name__: str
__weakrefoffset__: int
@overload
def __init__(self, o: object) -> None: ...
@overload
- def __init__(self, name: str, bases: tuple[type, ...], dict: dict[str, Any]) -> None: ...
+ def __init__(self, name: str, bases: Tuple[type, ...], dict: Dict[str, Any]) -> None: ...
@overload
def __new__(cls, o: object) -> type: ...
@overload
- def __new__(cls, name: str, bases: tuple[type, ...], namespace: dict[str, Any]) -> type: ...
+ def __new__(cls, name: str, bases: Tuple[type, ...], namespace: Dict[str, Any]) -> type: ...
def __call__(self, *args: Any, **kwds: Any) -> Any: ...
- def __subclasses__(self: _TT) -> list[_TT]: ...
- # Note: the documentation doesn't specify what the return type is, the standard
+ def __subclasses__(self: _TT) -> List[_TT]: ...
+ # Note: the documentation doesnt specify what the return type is, the standard
# implementation seems to be returning a list.
- def mro(self) -> list[type]: ...
+ def mro(self) -> List[type]: ...
def __instancecheck__(self, instance: Any) -> bool: ...
def __subclasscheck__(self, subclass: type) -> bool: ...
@@ -127,9 +135,9 @@ class super(object):
class int:
@overload
- def __new__(cls: type[Self], x: Text | bytes | SupportsInt | _SupportsIndex | _SupportsTrunc = ...) -> Self: ...
+ def __new__(cls: Type[_T], x: Text | bytes | SupportsInt | _SupportsIndex | _SupportsTrunc = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], x: Text | bytes | bytearray, base: int) -> Self: ...
+ def __new__(cls: Type[_T], x: Text | bytes | bytearray, base: int) -> _T: ...
@property
def real(self) -> int: ...
@property
@@ -147,7 +155,7 @@ class int:
def __div__(self, x: int) -> int: ...
def __truediv__(self, x: int) -> float: ...
def __mod__(self, x: int) -> int: ...
- def __divmod__(self, x: int) -> tuple[int, int]: ...
+ def __divmod__(self, x: int) -> Tuple[int, int]: ...
def __radd__(self, x: int) -> int: ...
def __rsub__(self, x: int) -> int: ...
def __rmul__(self, x: int) -> int: ...
@@ -155,7 +163,7 @@ class int:
def __rdiv__(self, x: int) -> int: ...
def __rtruediv__(self, x: int) -> float: ...
def __rmod__(self, x: int) -> int: ...
- def __rdivmod__(self, x: int) -> tuple[int, int]: ...
+ def __rdivmod__(self, x: int) -> Tuple[int, int]: ...
@overload
def __pow__(self, __x: Literal[2], __modulo: int | None = ...) -> int: ...
@overload
@@ -175,13 +183,14 @@ class int:
def __pos__(self) -> int: ...
def __invert__(self) -> int: ...
def __trunc__(self) -> int: ...
- def __getnewargs__(self) -> tuple[int]: ...
+ def __getnewargs__(self) -> Tuple[int]: ...
def __eq__(self, x: object) -> bool: ...
def __ne__(self, x: object) -> bool: ...
def __lt__(self, x: int) -> bool: ...
def __le__(self, x: int) -> bool: ...
def __gt__(self, x: int) -> bool: ...
def __ge__(self, x: int) -> bool: ...
+ def __str__(self) -> str: ...
def __float__(self) -> float: ...
def __int__(self) -> int: ...
def __abs__(self) -> int: ...
@@ -190,8 +199,8 @@ class int:
def __index__(self) -> int: ...
class float:
- def __new__(cls: type[Self], x: SupportsFloat | _SupportsIndex | Text | bytes | bytearray = ...) -> Self: ...
- def as_integer_ratio(self) -> tuple[int, int]: ...
+ def __new__(cls: Type[_T], x: SupportsFloat | _SupportsIndex | Text | bytes | bytearray = ...) -> _T: ...
+ def as_integer_ratio(self) -> Tuple[int, int]: ...
def hex(self) -> str: ...
def is_integer(self) -> bool: ...
@classmethod
@@ -208,7 +217,7 @@ class float:
def __div__(self, x: float) -> float: ...
def __truediv__(self, x: float) -> float: ...
def __mod__(self, x: float) -> float: ...
- def __divmod__(self, x: float) -> tuple[float, float]: ...
+ def __divmod__(self, x: float) -> Tuple[float, float]: ...
def __pow__(
self, x: float, mod: None = ...
) -> float: ... # In Python 3, returns complex if self is negative and x is not whole
@@ -219,9 +228,9 @@ class float:
def __rdiv__(self, x: float) -> float: ...
def __rtruediv__(self, x: float) -> float: ...
def __rmod__(self, x: float) -> float: ...
- def __rdivmod__(self, x: float) -> tuple[float, float]: ...
+ def __rdivmod__(self, x: float) -> Tuple[float, float]: ...
def __rpow__(self, x: float, mod: None = ...) -> float: ...
- def __getnewargs__(self) -> tuple[float]: ...
+ def __getnewargs__(self) -> Tuple[float]: ...
def __trunc__(self) -> int: ...
def __eq__(self, x: object) -> bool: ...
def __ne__(self, x: object) -> bool: ...
@@ -231,6 +240,7 @@ class float:
def __ge__(self, x: float) -> bool: ...
def __neg__(self) -> float: ...
def __pos__(self) -> float: ...
+ def __str__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
def __abs__(self) -> float: ...
@@ -239,9 +249,9 @@ class float:
class complex:
@overload
- def __new__(cls: type[Self], real: float = ..., imag: float = ...) -> Self: ...
+ def __new__(cls: Type[_T], real: float = ..., imag: float = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], real: str | SupportsComplex | _SupportsIndex) -> Self: ...
+ def __new__(cls: Type[_T], real: str | SupportsComplex | _SupportsIndex) -> _T: ...
@property
def real(self) -> float: ...
@property
@@ -263,6 +273,7 @@ class complex:
def __ne__(self, x: object) -> bool: ...
def __neg__(self) -> complex: ...
def __pos__(self) -> complex: ...
+ def __str__(self) -> str: ...
def __complex__(self) -> complex: ...
def __abs__(self) -> float: ...
def __hash__(self) -> int: ...
@@ -282,7 +293,7 @@ class unicode(basestring, Sequence[unicode]):
def count(self, x: unicode) -> int: ...
def decode(self, encoding: unicode = ..., errors: unicode = ...) -> unicode: ...
def encode(self, encoding: unicode = ..., errors: unicode = ...) -> str: ...
- def endswith(self, __suffix: unicode | tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def endswith(self, __suffix: unicode | Tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def expandtabs(self, tabsize: int = ...) -> unicode: ...
def find(self, sub: unicode, start: int = ..., end: int = ...) -> int: ...
def format(self, *args: object, **kwargs: object) -> unicode: ...
@@ -302,21 +313,21 @@ class unicode(basestring, Sequence[unicode]):
def ljust(self, width: int, fillchar: unicode = ...) -> unicode: ...
def lower(self) -> unicode: ...
def lstrip(self, chars: unicode = ...) -> unicode: ...
- def partition(self, sep: unicode) -> tuple[unicode, unicode, unicode]: ...
+ def partition(self, sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
def replace(self, old: unicode, new: unicode, count: int = ...) -> unicode: ...
def rfind(self, sub: unicode, start: int = ..., end: int = ...) -> int: ...
def rindex(self, sub: unicode, start: int = ..., end: int = ...) -> int: ...
def rjust(self, width: int, fillchar: unicode = ...) -> unicode: ...
- def rpartition(self, sep: unicode) -> tuple[unicode, unicode, unicode]: ...
- def rsplit(self, sep: unicode | None = ..., maxsplit: int = ...) -> list[unicode]: ...
+ def rpartition(self, sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
+ def rsplit(self, sep: unicode | None = ..., maxsplit: int = ...) -> List[unicode]: ...
def rstrip(self, chars: unicode = ...) -> unicode: ...
- def split(self, sep: unicode | None = ..., maxsplit: int = ...) -> list[unicode]: ...
- def splitlines(self, keepends: bool = ...) -> list[unicode]: ...
- def startswith(self, __prefix: unicode | tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def split(self, sep: unicode | None = ..., maxsplit: int = ...) -> List[unicode]: ...
+ def splitlines(self, keepends: bool = ...) -> List[unicode]: ...
+ def startswith(self, __prefix: unicode | Tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def strip(self, chars: unicode = ...) -> unicode: ...
def swapcase(self) -> unicode: ...
def title(self) -> unicode: ...
- def translate(self, table: dict[int, Any] | unicode) -> unicode: ...
+ def translate(self, table: Dict[int, Any] | unicode) -> unicode: ...
def upper(self) -> unicode: ...
def zfill(self, width: int) -> unicode: ...
@overload
@@ -338,10 +349,12 @@ class unicode(basestring, Sequence[unicode]):
# The argument type is incompatible with Sequence
def __contains__(self, s: unicode | bytes) -> bool: ... # type: ignore
def __iter__(self) -> Iterator[unicode]: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
def __hash__(self) -> int: ...
- def __getnewargs__(self) -> tuple[unicode]: ...
+ def __getnewargs__(self) -> Tuple[unicode]: ...
class _FormatMapMapping(Protocol):
def __getitem__(self, __key: str) -> Any: ...
@@ -353,7 +366,7 @@ class str(Sequence[str], basestring):
def count(self, x: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def decode(self, encoding: Text = ..., errors: Text = ...) -> unicode: ...
def encode(self, encoding: Text = ..., errors: Text = ...) -> bytes: ...
- def endswith(self, __suffix: Text | tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def endswith(self, __suffix: Text | Tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def expandtabs(self, tabsize: int = ...) -> str: ...
def find(self, sub: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def format(self, *args: object, **kwargs: object) -> str: ...
@@ -374,35 +387,35 @@ class str(Sequence[str], basestring):
@overload
def lstrip(self, __chars: unicode) -> unicode: ...
@overload
- def partition(self, __sep: bytearray) -> tuple[str, bytearray, str]: ...
+ def partition(self, __sep: bytearray) -> Tuple[str, bytearray, str]: ...
@overload
- def partition(self, __sep: str) -> tuple[str, str, str]: ...
+ def partition(self, __sep: str) -> Tuple[str, str, str]: ...
@overload
- def partition(self, __sep: unicode) -> tuple[unicode, unicode, unicode]: ...
+ def partition(self, __sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
def replace(self, __old: AnyStr, __new: AnyStr, __count: int = ...) -> AnyStr: ...
def rfind(self, sub: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def rindex(self, sub: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def rjust(self, __width: int, __fillchar: str = ...) -> str: ...
@overload
- def rpartition(self, __sep: bytearray) -> tuple[str, bytearray, str]: ...
+ def rpartition(self, __sep: bytearray) -> Tuple[str, bytearray, str]: ...
@overload
- def rpartition(self, __sep: str) -> tuple[str, str, str]: ...
+ def rpartition(self, __sep: str) -> Tuple[str, str, str]: ...
@overload
- def rpartition(self, __sep: unicode) -> tuple[unicode, unicode, unicode]: ...
+ def rpartition(self, __sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
@overload
- def rsplit(self, sep: str | None = ..., maxsplit: int = ...) -> list[str]: ...
+ def rsplit(self, sep: str | None = ..., maxsplit: int = ...) -> List[str]: ...
@overload
- def rsplit(self, sep: unicode, maxsplit: int = ...) -> list[unicode]: ...
+ def rsplit(self, sep: unicode, maxsplit: int = ...) -> List[unicode]: ...
@overload
def rstrip(self, __chars: str = ...) -> str: ...
@overload
def rstrip(self, __chars: unicode) -> unicode: ...
@overload
- def split(self, sep: str | None = ..., maxsplit: int = ...) -> list[str]: ...
+ def split(self, sep: str | None = ..., maxsplit: int = ...) -> List[str]: ...
@overload
- def split(self, sep: unicode, maxsplit: int = ...) -> list[unicode]: ...
- def splitlines(self, keepends: bool = ...) -> list[str]: ...
- def startswith(self, __prefix: Text | tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def split(self, sep: unicode, maxsplit: int = ...) -> List[unicode]: ...
+ def splitlines(self, keepends: bool = ...) -> List[str]: ...
+ def startswith(self, __prefix: Text | Tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
@overload
def strip(self, __chars: str = ...) -> str: ...
@overload
@@ -427,8 +440,10 @@ class str(Sequence[str], basestring):
def __mod__(self, x: Any) -> str: ...
def __mul__(self, n: int) -> str: ...
def __ne__(self, x: object) -> bool: ...
+ def __repr__(self) -> str: ...
def __rmul__(self, n: int) -> str: ...
- def __getnewargs__(self) -> tuple[str]: ...
+ def __str__(self) -> str: ...
+ def __getnewargs__(self) -> Tuple[str]: ...
def __getslice__(self, start: int, stop: int) -> str: ...
def __float__(self) -> float: ...
def __int__(self) -> int: ...
@@ -450,7 +465,7 @@ class bytearray(MutableSequence[int], ByteString):
def center(self, __width: int, __fillchar: bytes = ...) -> bytearray: ...
def count(self, __sub: str) -> int: ...
def decode(self, encoding: Text = ..., errors: Text = ...) -> str: ...
- def endswith(self, __suffix: bytes | tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def endswith(self, __suffix: bytes | Tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def expandtabs(self, tabsize: int = ...) -> bytearray: ...
def extend(self, iterable: str | Iterable[int]) -> None: ...
def find(self, __sub: str, __start: int = ..., __end: int = ...) -> int: ...
@@ -467,17 +482,17 @@ class bytearray(MutableSequence[int], ByteString):
def ljust(self, __width: int, __fillchar: str = ...) -> bytearray: ...
def lower(self) -> bytearray: ...
def lstrip(self, __bytes: bytes | None = ...) -> bytearray: ...
- def partition(self, __sep: bytes) -> tuple[bytearray, bytearray, bytearray]: ...
+ def partition(self, __sep: bytes) -> Tuple[bytearray, bytearray, bytearray]: ...
def replace(self, __old: bytes, __new: bytes, __count: int = ...) -> bytearray: ...
def rfind(self, __sub: bytes, __start: int = ..., __end: int = ...) -> int: ...
def rindex(self, __sub: bytes, __start: int = ..., __end: int = ...) -> int: ...
def rjust(self, __width: int, __fillchar: bytes = ...) -> bytearray: ...
- def rpartition(self, __sep: bytes) -> tuple[bytearray, bytearray, bytearray]: ...
- def rsplit(self, sep: bytes | None = ..., maxsplit: int = ...) -> list[bytearray]: ...
+ def rpartition(self, __sep: bytes) -> Tuple[bytearray, bytearray, bytearray]: ...
+ def rsplit(self, sep: bytes | None = ..., maxsplit: int = ...) -> List[bytearray]: ...
def rstrip(self, __bytes: bytes | None = ...) -> bytearray: ...
- def split(self, sep: bytes | None = ..., maxsplit: int = ...) -> list[bytearray]: ...
- def splitlines(self, keepends: bool = ...) -> list[bytearray]: ...
- def startswith(self, __prefix: bytes | tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def split(self, sep: bytes | None = ..., maxsplit: int = ...) -> List[bytearray]: ...
+ def splitlines(self, keepends: bool = ...) -> List[bytearray]: ...
+ def startswith(self, __prefix: bytes | Tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def strip(self, __bytes: bytes | None = ...) -> bytearray: ...
def swapcase(self) -> bytearray: ...
def title(self) -> bytearray: ...
@@ -488,6 +503,8 @@ class bytearray(MutableSequence[int], ByteString):
def fromhex(cls, __string: str) -> bytearray: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[int]: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
__hash__: None # type: ignore
@@ -517,9 +534,9 @@ class bytearray(MutableSequence[int], ByteString):
class memoryview(Sized, Container[str]):
format: str
itemsize: int
- shape: tuple[int, ...] | None
- strides: tuple[int, ...] | None
- suboffsets: tuple[int, ...] | None
+ shape: Tuple[int, ...] | None
+ strides: Tuple[int, ...] | None
+ suboffsets: Tuple[int, ...] | None
readonly: bool
ndim: int
def __init__(self, obj: ReadableBuffer) -> None: ...
@@ -535,11 +552,11 @@ class memoryview(Sized, Container[str]):
@overload
def __setitem__(self, i: int, o: int) -> None: ...
def tobytes(self) -> bytes: ...
- def tolist(self) -> list[int]: ...
+ def tolist(self) -> List[int]: ...
@final
class bool(int):
- def __new__(cls: type[Self], __o: object = ...) -> Self: ...
+ def __new__(cls: Type[_T], __o: object = ...) -> _T: ...
@overload
def __and__(self, x: bool) -> bool: ...
@overload
@@ -564,7 +581,7 @@ class bool(int):
def __rxor__(self, x: bool) -> bool: ...
@overload
def __rxor__(self, x: int) -> int: ...
- def __getnewargs__(self) -> tuple[int]: ...
+ def __getnewargs__(self) -> Tuple[int]: ...
class slice(object):
start: Any
@@ -575,27 +592,27 @@ class slice(object):
@overload
def __init__(self, start: Any, stop: Any, step: Any = ...) -> None: ...
__hash__: None # type: ignore
- def indices(self, len: int) -> tuple[int, int, int]: ...
+ def indices(self, len: int) -> Tuple[int, int, int]: ...
class tuple(Sequence[_T_co], Generic[_T_co]):
- def __new__(cls: type[Self], iterable: Iterable[_T_co] = ...) -> Self: ...
+ def __new__(cls: Type[_T], iterable: Iterable[_T_co] = ...) -> _T: ...
def __len__(self) -> int: ...
def __contains__(self, x: object) -> bool: ...
@overload
def __getitem__(self, x: int) -> _T_co: ...
@overload
- def __getitem__(self, x: slice) -> tuple[_T_co, ...]: ...
+ def __getitem__(self, x: slice) -> Tuple[_T_co, ...]: ...
def __iter__(self) -> Iterator[_T_co]: ...
- def __lt__(self, x: tuple[_T_co, ...]) -> bool: ...
- def __le__(self, x: tuple[_T_co, ...]) -> bool: ...
- def __gt__(self, x: tuple[_T_co, ...]) -> bool: ...
- def __ge__(self, x: tuple[_T_co, ...]) -> bool: ...
+ def __lt__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __le__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __gt__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __ge__(self, x: Tuple[_T_co, ...]) -> bool: ...
@overload
- def __add__(self, x: tuple[_T_co, ...]) -> tuple[_T_co, ...]: ...
+ def __add__(self, x: Tuple[_T_co, ...]) -> Tuple[_T_co, ...]: ...
@overload
- def __add__(self, x: tuple[Any, ...]) -> tuple[Any, ...]: ...
- def __mul__(self, n: int) -> tuple[_T_co, ...]: ...
- def __rmul__(self, n: int) -> tuple[_T_co, ...]: ...
+ def __add__(self, x: Tuple[Any, ...]) -> Tuple[Any, ...]: ...
+ def __mul__(self, n: int) -> Tuple[_T_co, ...]: ...
+ def __rmul__(self, n: int) -> Tuple[_T_co, ...]: ...
def count(self, __value: Any) -> int: ...
def index(self, __value: Any) -> int: ...
@@ -621,29 +638,30 @@ class list(MutableSequence[_T], Generic[_T]):
def sort(self, cmp: Callable[[_T, _T], Any] = ..., key: Callable[[_T], Any] = ..., reverse: bool = ...) -> None: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[_T]: ...
+ def __str__(self) -> str: ...
__hash__: None # type: ignore
@overload
def __getitem__(self, i: int) -> _T: ...
@overload
- def __getitem__(self, s: slice) -> list[_T]: ...
+ def __getitem__(self, s: slice) -> List[_T]: ...
@overload
def __setitem__(self, i: int, o: _T) -> None: ...
@overload
def __setitem__(self, s: slice, o: Iterable[_T]) -> None: ...
def __delitem__(self, i: int | slice) -> None: ...
- def __getslice__(self, start: int, stop: int) -> list[_T]: ...
+ def __getslice__(self, start: int, stop: int) -> List[_T]: ...
def __setslice__(self, start: int, stop: int, o: Sequence[_T]) -> None: ...
def __delslice__(self, start: int, stop: int) -> None: ...
- def __add__(self, x: list[_T]) -> list[_T]: ...
- def __iadd__(self: Self, x: Iterable[_T]) -> Self: ...
- def __mul__(self, n: int) -> list[_T]: ...
- def __rmul__(self, n: int) -> list[_T]: ...
+ def __add__(self, x: List[_T]) -> List[_T]: ...
+ def __iadd__(self: _S, x: Iterable[_T]) -> _S: ...
+ def __mul__(self, n: int) -> List[_T]: ...
+ def __rmul__(self, n: int) -> List[_T]: ...
def __contains__(self, o: object) -> bool: ...
def __reversed__(self) -> Iterator[_T]: ...
- def __gt__(self, x: list[_T]) -> bool: ...
- def __ge__(self, x: list[_T]) -> bool: ...
- def __lt__(self, x: list[_T]) -> bool: ...
- def __le__(self, x: list[_T]) -> bool: ...
+ def __gt__(self, x: List[_T]) -> bool: ...
+ def __ge__(self, x: List[_T]) -> bool: ...
+ def __lt__(self, x: List[_T]) -> bool: ...
+ def __le__(self, x: List[_T]) -> bool: ...
class dict(MutableMapping[_KT, _VT], Generic[_KT, _VT]):
# NOTE: Keyword arguments are special. If they are used, _KT must include
@@ -653,74 +671,76 @@ class dict(MutableMapping[_KT, _VT], Generic[_KT, _VT]):
@overload
def __init__(self, map: SupportsKeysAndGetItem[_KT, _VT], **kwargs: _VT) -> None: ...
@overload
- def __init__(self, iterable: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
+ def __init__(self, iterable: Iterable[Tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
+ def __new__(cls: Type[_T1], *args: Any, **kwargs: Any) -> _T1: ...
def has_key(self, k: _KT) -> bool: ...
def clear(self) -> None: ...
- def copy(self) -> dict[_KT, _VT]: ...
- def popitem(self) -> tuple[_KT, _VT]: ...
+ def copy(self) -> Dict[_KT, _VT]: ...
+ def popitem(self) -> Tuple[_KT, _VT]: ...
def setdefault(self, __key: _KT, __default: _VT = ...) -> _VT: ...
@overload
def update(self, __m: Mapping[_KT, _VT], **kwargs: _VT) -> None: ...
@overload
- def update(self, __m: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
+ def update(self, __m: Iterable[Tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
@overload
def update(self, **kwargs: _VT) -> None: ...
def iterkeys(self) -> Iterator[_KT]: ...
def itervalues(self) -> Iterator[_VT]: ...
- def iteritems(self) -> Iterator[tuple[_KT, _VT]]: ...
+ def iteritems(self) -> Iterator[Tuple[_KT, _VT]]: ...
def viewkeys(self) -> KeysView[_KT]: ...
def viewvalues(self) -> ValuesView[_VT]: ...
def viewitems(self) -> ItemsView[_KT, _VT]: ...
@classmethod
@overload
- def fromkeys(cls, __iterable: Iterable[_T]) -> dict[_T, Any]: ...
+ def fromkeys(cls, __iterable: Iterable[_T]) -> Dict[_T, Any]: ...
@classmethod
@overload
- def fromkeys(cls, __iterable: Iterable[_T], __value: _S) -> dict[_T, _S]: ...
+ def fromkeys(cls, __iterable: Iterable[_T], __value: _S) -> Dict[_T, _S]: ...
def __len__(self) -> int: ...
def __getitem__(self, k: _KT) -> _VT: ...
def __setitem__(self, k: _KT, v: _VT) -> None: ...
def __delitem__(self, v: _KT) -> None: ...
def __iter__(self) -> Iterator[_KT]: ...
+ def __str__(self) -> str: ...
__hash__: None # type: ignore
class set(MutableSet[_T], Generic[_T]):
def __init__(self, iterable: Iterable[_T] = ...) -> None: ...
def add(self, element: _T) -> None: ...
def clear(self) -> None: ...
- def copy(self) -> set[_T]: ...
- def difference(self, *s: Iterable[Any]) -> set[_T]: ...
+ def copy(self) -> Set[_T]: ...
+ def difference(self, *s: Iterable[Any]) -> Set[_T]: ...
def difference_update(self, *s: Iterable[Any]) -> None: ...
def discard(self, element: _T) -> None: ...
- def intersection(self, *s: Iterable[Any]) -> set[_T]: ...
+ def intersection(self, *s: Iterable[Any]) -> Set[_T]: ...
def intersection_update(self, *s: Iterable[Any]) -> None: ...
def isdisjoint(self, s: Iterable[Any]) -> bool: ...
def issubset(self, s: Iterable[Any]) -> bool: ...
def issuperset(self, s: Iterable[Any]) -> bool: ...
def pop(self) -> _T: ...
def remove(self, element: _T) -> None: ...
- def symmetric_difference(self, s: Iterable[_T]) -> set[_T]: ...
+ def symmetric_difference(self, s: Iterable[_T]) -> Set[_T]: ...
def symmetric_difference_update(self, s: Iterable[_T]) -> None: ...
- def union(self, *s: Iterable[_T]) -> set[_T]: ...
+ def union(self, *s: Iterable[_T]) -> Set[_T]: ...
def update(self, *s: Iterable[_T]) -> None: ...
def __len__(self) -> int: ...
def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[_T]: ...
- def __and__(self, s: AbstractSet[object]) -> set[_T]: ...
- def __iand__(self: Self, s: AbstractSet[object]) -> Self: ...
- def __or__(self, s: AbstractSet[_S]) -> set[_T | _S]: ...
- def __ior__(self: Self, s: AbstractSet[_T]) -> Self: ...
+ def __str__(self) -> str: ...
+ def __and__(self, s: AbstractSet[object]) -> Set[_T]: ...
+ def __iand__(self, s: AbstractSet[object]) -> Set[_T]: ...
+ def __or__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __ior__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
@overload
- def __sub__(self: set[str], s: AbstractSet[Text | None]) -> set[_T]: ...
+ def __sub__(self: Set[str], s: AbstractSet[Text | None]) -> Set[_T]: ...
@overload
- def __sub__(self, s: AbstractSet[_T | None]) -> set[_T]: ...
+ def __sub__(self, s: AbstractSet[_T | None]) -> Set[_T]: ...
@overload # type: ignore
- def __isub__(self: set[str], s: AbstractSet[Text | None]) -> set[_T]: ...
+ def __isub__(self: Set[str], s: AbstractSet[Text | None]) -> Set[_T]: ...
@overload
- def __isub__(self, s: AbstractSet[_T | None]) -> set[_T]: ...
- def __xor__(self, s: AbstractSet[_S]) -> set[_T | _S]: ...
- def __ixor__(self: Self, s: AbstractSet[_T]) -> Self: ...
+ def __isub__(self, s: AbstractSet[_T | None]) -> Set[_T]: ...
+ def __xor__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __ixor__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
def __le__(self, s: AbstractSet[object]) -> bool: ...
def __lt__(self, s: AbstractSet[object]) -> bool: ...
def __ge__(self, s: AbstractSet[object]) -> bool: ...
@@ -729,30 +749,31 @@ class set(MutableSet[_T], Generic[_T]):
class frozenset(AbstractSet[_T_co], Generic[_T_co]):
def __init__(self, iterable: Iterable[_T_co] = ...) -> None: ...
- def copy(self) -> frozenset[_T_co]: ...
- def difference(self, *s: Iterable[object]) -> frozenset[_T_co]: ...
- def intersection(self, *s: Iterable[object]) -> frozenset[_T_co]: ...
+ def copy(self) -> FrozenSet[_T_co]: ...
+ def difference(self, *s: Iterable[object]) -> FrozenSet[_T_co]: ...
+ def intersection(self, *s: Iterable[object]) -> FrozenSet[_T_co]: ...
def isdisjoint(self, s: Iterable[_T_co]) -> bool: ...
def issubset(self, s: Iterable[object]) -> bool: ...
def issuperset(self, s: Iterable[object]) -> bool: ...
- def symmetric_difference(self, s: Iterable[_T_co]) -> frozenset[_T_co]: ...
- def union(self, *s: Iterable[_T_co]) -> frozenset[_T_co]: ...
+ def symmetric_difference(self, s: Iterable[_T_co]) -> FrozenSet[_T_co]: ...
+ def union(self, *s: Iterable[_T_co]) -> FrozenSet[_T_co]: ...
def __len__(self) -> int: ...
def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[_T_co]: ...
- def __and__(self, s: AbstractSet[_T_co]) -> frozenset[_T_co]: ...
- def __or__(self, s: AbstractSet[_S]) -> frozenset[_T_co | _S]: ...
- def __sub__(self, s: AbstractSet[_T_co]) -> frozenset[_T_co]: ...
- def __xor__(self, s: AbstractSet[_S]) -> frozenset[_T_co | _S]: ...
+ def __str__(self) -> str: ...
+ def __and__(self, s: AbstractSet[_T_co]) -> FrozenSet[_T_co]: ...
+ def __or__(self, s: AbstractSet[_S]) -> FrozenSet[_T_co | _S]: ...
+ def __sub__(self, s: AbstractSet[_T_co]) -> FrozenSet[_T_co]: ...
+ def __xor__(self, s: AbstractSet[_S]) -> FrozenSet[_T_co | _S]: ...
def __le__(self, s: AbstractSet[object]) -> bool: ...
def __lt__(self, s: AbstractSet[object]) -> bool: ...
def __ge__(self, s: AbstractSet[object]) -> bool: ...
def __gt__(self, s: AbstractSet[object]) -> bool: ...
-class enumerate(Iterator[tuple[int, _T]], Generic[_T]):
+class enumerate(Iterator[Tuple[int, _T]], Generic[_T]):
def __init__(self, iterable: Iterable[_T], start: int = ...) -> None: ...
- def __iter__(self) -> Iterator[tuple[int, _T]]: ...
- def next(self) -> tuple[int, _T]: ...
+ def __iter__(self) -> Iterator[Tuple[int, _T]]: ...
+ def next(self) -> Tuple[int, _T]: ...
class xrange(Sized, Iterable[int], Reversible[int]):
@overload
@@ -802,47 +823,42 @@ def cmp(__x: Any, __y: Any) -> int: ...
_N1 = TypeVar("_N1", bool, int, float, complex)
-def coerce(__x: _N1, __y: _N1) -> tuple[_N1, _N1]: ...
+def coerce(__x: _N1, __y: _N1) -> Tuple[_N1, _N1]: ...
def compile(source: Text | mod, filename: Text, mode: Text, flags: int = ..., dont_inherit: int = ...) -> Any: ...
def delattr(__obj: Any, __name: Text) -> None: ...
-def dir(__o: object = ...) -> list[str]: ...
+def dir(__o: object = ...) -> List[str]: ...
_N2 = TypeVar("_N2", int, float)
-def divmod(__x: _N2, __y: _N2) -> tuple[_N2, _N2]: ...
+def divmod(__x: _N2, __y: _N2) -> Tuple[_N2, _N2]: ...
def eval(
- __source: Text | bytes | CodeType, __globals: dict[str, Any] | None = ..., __locals: Mapping[str, Any] | None = ...
+ __source: Text | bytes | CodeType, __globals: Dict[str, Any] | None = ..., __locals: Mapping[str, Any] | None = ...
) -> Any: ...
-def execfile(__filename: str, __globals: dict[str, Any] | None = ..., __locals: dict[str, Any] | None = ...) -> None: ...
+def execfile(__filename: str, __globals: Dict[str, Any] | None = ..., __locals: Dict[str, Any] | None = ...) -> None: ...
def exit(code: object = ...) -> NoReturn: ...
@overload
def filter(__function: Callable[[AnyStr], Any], __iterable: AnyStr) -> AnyStr: ... # type: ignore
@overload
-def filter(__function: None, __iterable: tuple[_T | None, ...]) -> tuple[_T, ...]: ... # type: ignore
+def filter(__function: None, __iterable: Tuple[_T | None, ...]) -> Tuple[_T, ...]: ... # type: ignore
@overload
-def filter(__function: Callable[[_T], Any], __iterable: tuple[_T, ...]) -> tuple[_T, ...]: ... # type: ignore
+def filter(__function: Callable[[_T], Any], __iterable: Tuple[_T, ...]) -> Tuple[_T, ...]: ... # type: ignore
@overload
-def filter(__function: None, __iterable: Iterable[_T | None]) -> list[_T]: ...
+def filter(__function: None, __iterable: Iterable[_T | None]) -> List[_T]: ...
@overload
-def filter(__function: Callable[[_T], Any], __iterable: Iterable[_T]) -> list[_T]: ...
+def filter(__function: Callable[[_T], Any], __iterable: Iterable[_T]) -> List[_T]: ...
def format(__value: object, __format_spec: str = ...) -> str: ... # TODO unicode
@overload
def getattr(__o: Any, name: Text) -> Any: ...
-# While technically covered by the last overload, spelling out the types for None, bool
-# and basic containers help mypy out in some tricky situations involving type context
-# (aka bidirectional inference)
+# While technically covered by the last overload, spelling out the types for None and bool
+# help mypy out in some tricky situations involving type context (aka bidirectional inference)
@overload
def getattr(__o: Any, name: Text, __default: None) -> Any | None: ...
@overload
def getattr(__o: Any, name: Text, __default: bool) -> Any | bool: ...
@overload
-def getattr(__o: object, name: str, __default: list[Any]) -> Any | list[Any]: ...
-@overload
-def getattr(__o: object, name: str, __default: dict[Any, Any]) -> Any | dict[Any, Any]: ...
-@overload
def getattr(__o: Any, name: Text, __default: _T) -> Any | _T: ...
-def globals() -> dict[str, Any]: ...
+def globals() -> Dict[str, Any]: ...
def hasattr(__obj: Any, __name: Text) -> bool: ...
def hash(__obj: object) -> int: ...
def hex(__number: int | _SupportsIndex) -> str: ...
@@ -855,20 +871,20 @@ def iter(__iterable: Iterable[_T]) -> Iterator[_T]: ...
def iter(__function: Callable[[], _T | None], __sentinel: None) -> Iterator[_T]: ...
@overload
def iter(__function: Callable[[], _T], __sentinel: Any) -> Iterator[_T]: ...
-def isinstance(__obj: object, __class_or_tuple: type | tuple[type | tuple[Any, ...], ...]) -> bool: ...
-def issubclass(__cls: type, __class_or_tuple: type | tuple[type | tuple[Any, ...], ...]) -> bool: ...
+def isinstance(__obj: object, __class_or_tuple: type | Tuple[type | Tuple[Any, ...], ...]) -> bool: ...
+def issubclass(__cls: type, __class_or_tuple: type | Tuple[type | Tuple[Any, ...], ...]) -> bool: ...
def len(__obj: Sized) -> int: ...
-def locals() -> dict[str, Any]: ...
+def locals() -> Dict[str, Any]: ...
@overload
-def map(__func: None, __iter1: Iterable[_T1]) -> list[_T1]: ...
+def map(__func: None, __iter1: Iterable[_T1]) -> List[_T1]: ...
@overload
-def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> list[tuple[_T1, _T2]]: ...
+def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> List[Tuple[_T1, _T2]]: ...
@overload
-def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> list[tuple[_T1, _T2, _T3]]: ...
+def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> List[Tuple[_T1, _T2, _T3]]: ...
@overload
def map(
__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3], __iter4: Iterable[_T4]
-) -> list[tuple[_T1, _T2, _T3, _T4]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4]]: ...
@overload
def map(
__func: None,
@@ -877,7 +893,7 @@ def map(
__iter3: Iterable[_T3],
__iter4: Iterable[_T4],
__iter5: Iterable[_T5],
-) -> list[tuple[_T1, _T2, _T3, _T4, _T5]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4, _T5]]: ...
@overload
def map(
__func: None,
@@ -888,15 +904,15 @@ def map(
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
-) -> list[tuple[Any, ...]]: ...
+) -> List[Tuple[Any, ...]]: ...
@overload
-def map(__func: Callable[[_T1], _S], __iter1: Iterable[_T1]) -> list[_S]: ...
+def map(__func: Callable[[_T1], _S], __iter1: Iterable[_T1]) -> List[_S]: ...
@overload
-def map(__func: Callable[[_T1, _T2], _S], __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> list[_S]: ...
+def map(__func: Callable[[_T1, _T2], _S], __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> List[_S]: ...
@overload
def map(
__func: Callable[[_T1, _T2, _T3], _S], __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def map(
__func: Callable[[_T1, _T2, _T3, _T4], _S],
@@ -904,7 +920,7 @@ def map(
__iter2: Iterable[_T2],
__iter3: Iterable[_T3],
__iter4: Iterable[_T4],
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def map(
__func: Callable[[_T1, _T2, _T3, _T4, _T5], _S],
@@ -913,7 +929,7 @@ def map(
__iter3: Iterable[_T3],
__iter4: Iterable[_T4],
__iter5: Iterable[_T5],
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def map(
__func: Callable[..., _S],
@@ -924,7 +940,7 @@ def map(
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def max(__arg1: _T, __arg2: _T, *_args: _T, key: Callable[[_T], Any] = ...) -> _T: ...
@overload
@@ -964,7 +980,7 @@ def pow(__base: _SupportsPow2[_E, _T_co], __exp: _E) -> _T_co: ...
@overload
def pow(__base: _SupportsPow3[_E, _M, _T_co], __exp: _E, __mod: _M) -> _T_co: ...
def quit(code: object = ...) -> NoReturn: ...
-def range(__x: int, __y: int = ..., __step: int = ...) -> list[int]: ... # noqa: F811
+def range(__x: int, __y: int = ..., __step: int = ...) -> List[int]: ... # noqa: F811
def raw_input(__prompt: Any = ...) -> str: ...
@overload
def reduce(__function: Callable[[_T, _S], _T], __iterable: Iterable[_S], __initializer: _T) -> _T: ...
@@ -987,27 +1003,27 @@ def round(number: SupportsFloat, ndigits: int) -> float: ...
def setattr(__obj: Any, __name: Text, __value: Any) -> None: ...
def sorted(
__iterable: Iterable[_T], *, cmp: Callable[[_T, _T], int] = ..., key: Callable[[_T], Any] | None = ..., reverse: bool = ...
-) -> list[_T]: ...
+) -> List[_T]: ...
@overload
def sum(__iterable: Iterable[_T]) -> _T | int: ...
@overload
def sum(__iterable: Iterable[_T], __start: _S) -> _T | _S: ...
def unichr(__i: int) -> unicode: ...
-def vars(__object: Any = ...) -> dict[str, Any]: ...
+def vars(__object: Any = ...) -> Dict[str, Any]: ...
@overload
-def zip(__iter1: Iterable[_T1]) -> list[tuple[_T1]]: ...
+def zip(__iter1: Iterable[_T1]) -> List[Tuple[_T1]]: ...
@overload
-def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> list[tuple[_T1, _T2]]: ...
+def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> List[Tuple[_T1, _T2]]: ...
@overload
-def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> list[tuple[_T1, _T2, _T3]]: ...
+def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> List[Tuple[_T1, _T2, _T3]]: ...
@overload
def zip(
__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3], __iter4: Iterable[_T4]
-) -> list[tuple[_T1, _T2, _T3, _T4]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4]]: ...
@overload
def zip(
__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3], __iter4: Iterable[_T4], __iter5: Iterable[_T5]
-) -> list[tuple[_T1, _T2, _T3, _T4, _T5]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4, _T5]]: ...
@overload
def zip(
__iter1: Iterable[Any],
@@ -1017,7 +1033,7 @@ def zip(
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
-) -> list[tuple[Any, ...]]: ...
+) -> List[Tuple[Any, ...]]: ...
def __import__(
name: Text,
globals: Mapping[str, Any] | None = ...,
@@ -1045,11 +1061,13 @@ class buffer(Sized):
def __mul__(self, x: int) -> str: ...
class BaseException(object):
- args: tuple[Any, ...]
+ args: Tuple[Any, ...]
message: Any
def __init__(self, *args: object) -> None: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __getitem__(self, i: int) -> Any: ...
- def __getslice__(self, start: int, stop: int) -> tuple[Any, ...]: ...
+ def __getslice__(self, start: int, stop: int) -> Tuple[Any, ...]: ...
class GeneratorExit(BaseException): ...
class KeyboardInterrupt(BaseException): ...
@@ -1158,7 +1176,7 @@ class file(BinaryIO):
def seek(self, offset: int, whence: int = ...) -> int: ...
def tell(self) -> int: ...
def readline(self, limit: int = ...) -> str: ...
- def readlines(self, hint: int = ...) -> list[str]: ...
+ def readlines(self, hint: int = ...) -> List[str]: ...
def write(self, data: str) -> int: ...
def writelines(self, data: Iterable[str]) -> None: ...
def truncate(self, pos: int | None = ...) -> int: ...
diff --git a/python/helpers/typeshed/stdlib/@python2/builtins.pyi b/python/helpers/typeshed/stdlib/@python2/builtins.pyi
index 4791fd6c7a6a..453a95871463 100644
--- a/python/helpers/typeshed/stdlib/@python2/builtins.pyi
+++ b/python/helpers/typeshed/stdlib/@python2/builtins.pyi
@@ -1,7 +1,7 @@
# True and False are deliberately omitted because they are keywords in
# Python 3, and stub files conform to Python 3 syntax.
-from _typeshed import ReadableBuffer, Self, SupportsKeysAndGetItem, SupportsWrite
+from _typeshed import ReadableBuffer, SupportsKeysAndGetItem, SupportsWrite
from abc import ABCMeta
from ast import mod
from types import CodeType
@@ -13,11 +13,14 @@ from typing import (
ByteString,
Callable,
Container,
+ Dict,
+ FrozenSet,
Generic,
ItemsView,
Iterable,
Iterator,
KeysView,
+ List,
Mapping,
MutableMapping,
MutableSequence,
@@ -26,12 +29,15 @@ from typing import (
Protocol,
Reversible,
Sequence,
+ Set,
Sized,
SupportsAbs,
SupportsComplex,
SupportsFloat,
SupportsInt,
Text,
+ Tuple,
+ Type,
TypeVar,
ValuesView,
overload,
@@ -54,68 +60,70 @@ _T2 = TypeVar("_T2")
_T3 = TypeVar("_T3")
_T4 = TypeVar("_T4")
_T5 = TypeVar("_T5")
-_TT = TypeVar("_TT", bound=type)
+_TT = TypeVar("_TT", bound="type")
+_TBE = TypeVar("_TBE", bound="BaseException")
class object:
__doc__: str | None
- __dict__: dict[str, Any]
+ __dict__: Dict[str, Any]
+ __slots__: Text | Iterable[Text]
__module__: str
@property
- def __class__(self: _T) -> type[_T]: ...
+ def __class__(self: _T) -> Type[_T]: ...
@__class__.setter
- def __class__(self, __type: type[object]) -> None: ... # noqa: F811
+ def __class__(self, __type: Type[object]) -> None: ... # noqa: F811
def __init__(self) -> None: ...
def __new__(cls) -> Any: ...
def __setattr__(self, name: str, value: Any) -> None: ...
def __eq__(self, o: object) -> bool: ...
def __ne__(self, o: object) -> bool: ...
- def __str__(self) -> str: ... # noqa Y029
- def __repr__(self) -> str: ... # noqa Y029
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __hash__(self) -> int: ...
def __format__(self, format_spec: str) -> str: ...
def __getattribute__(self, name: str) -> Any: ...
def __delattr__(self, name: str) -> None: ...
def __sizeof__(self) -> int: ...
- def __reduce__(self) -> str | tuple[Any, ...]: ...
- def __reduce_ex__(self, protocol: int) -> str | tuple[Any, ...]: ...
+ def __reduce__(self) -> str | Tuple[Any, ...]: ...
+ def __reduce_ex__(self, protocol: int) -> str | Tuple[Any, ...]: ...
class staticmethod(object): # Special, only valid as a decorator.
__func__: Callable[..., Any]
def __init__(self, f: Callable[..., Any]) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
- def __get__(self, obj: _T, type: type[_T] | None = ...) -> Callable[..., Any]: ...
+ def __new__(cls: Type[_T], *args: Any, **kwargs: Any) -> _T: ...
+ def __get__(self, obj: _T, type: Type[_T] | None = ...) -> Callable[..., Any]: ...
class classmethod(object): # Special, only valid as a decorator.
__func__: Callable[..., Any]
def __init__(self, f: Callable[..., Any]) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
- def __get__(self, obj: _T, type: type[_T] | None = ...) -> Callable[..., Any]: ...
+ def __new__(cls: Type[_T], *args: Any, **kwargs: Any) -> _T: ...
+ def __get__(self, obj: _T, type: Type[_T] | None = ...) -> Callable[..., Any]: ...
class type(object):
__base__: type
- __bases__: tuple[type, ...]
+ __bases__: Tuple[type, ...]
__basicsize__: int
- __dict__: dict[str, Any]
+ __dict__: Dict[str, Any]
__dictoffset__: int
__flags__: int
__itemsize__: int
__module__: str
- __mro__: tuple[type, ...]
+ __mro__: Tuple[type, ...]
__name__: str
__weakrefoffset__: int
@overload
def __init__(self, o: object) -> None: ...
@overload
- def __init__(self, name: str, bases: tuple[type, ...], dict: dict[str, Any]) -> None: ...
+ def __init__(self, name: str, bases: Tuple[type, ...], dict: Dict[str, Any]) -> None: ...
@overload
def __new__(cls, o: object) -> type: ...
@overload
- def __new__(cls, name: str, bases: tuple[type, ...], namespace: dict[str, Any]) -> type: ...
+ def __new__(cls, name: str, bases: Tuple[type, ...], namespace: Dict[str, Any]) -> type: ...
def __call__(self, *args: Any, **kwds: Any) -> Any: ...
- def __subclasses__(self: _TT) -> list[_TT]: ...
- # Note: the documentation doesn't specify what the return type is, the standard
+ def __subclasses__(self: _TT) -> List[_TT]: ...
+ # Note: the documentation doesnt specify what the return type is, the standard
# implementation seems to be returning a list.
- def mro(self) -> list[type]: ...
+ def mro(self) -> List[type]: ...
def __instancecheck__(self, instance: Any) -> bool: ...
def __subclasscheck__(self, subclass: type) -> bool: ...
@@ -127,9 +135,9 @@ class super(object):
class int:
@overload
- def __new__(cls: type[Self], x: Text | bytes | SupportsInt | _SupportsIndex | _SupportsTrunc = ...) -> Self: ...
+ def __new__(cls: Type[_T], x: Text | bytes | SupportsInt | _SupportsIndex | _SupportsTrunc = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], x: Text | bytes | bytearray, base: int) -> Self: ...
+ def __new__(cls: Type[_T], x: Text | bytes | bytearray, base: int) -> _T: ...
@property
def real(self) -> int: ...
@property
@@ -147,7 +155,7 @@ class int:
def __div__(self, x: int) -> int: ...
def __truediv__(self, x: int) -> float: ...
def __mod__(self, x: int) -> int: ...
- def __divmod__(self, x: int) -> tuple[int, int]: ...
+ def __divmod__(self, x: int) -> Tuple[int, int]: ...
def __radd__(self, x: int) -> int: ...
def __rsub__(self, x: int) -> int: ...
def __rmul__(self, x: int) -> int: ...
@@ -155,7 +163,7 @@ class int:
def __rdiv__(self, x: int) -> int: ...
def __rtruediv__(self, x: int) -> float: ...
def __rmod__(self, x: int) -> int: ...
- def __rdivmod__(self, x: int) -> tuple[int, int]: ...
+ def __rdivmod__(self, x: int) -> Tuple[int, int]: ...
@overload
def __pow__(self, __x: Literal[2], __modulo: int | None = ...) -> int: ...
@overload
@@ -175,13 +183,14 @@ class int:
def __pos__(self) -> int: ...
def __invert__(self) -> int: ...
def __trunc__(self) -> int: ...
- def __getnewargs__(self) -> tuple[int]: ...
+ def __getnewargs__(self) -> Tuple[int]: ...
def __eq__(self, x: object) -> bool: ...
def __ne__(self, x: object) -> bool: ...
def __lt__(self, x: int) -> bool: ...
def __le__(self, x: int) -> bool: ...
def __gt__(self, x: int) -> bool: ...
def __ge__(self, x: int) -> bool: ...
+ def __str__(self) -> str: ...
def __float__(self) -> float: ...
def __int__(self) -> int: ...
def __abs__(self) -> int: ...
@@ -190,8 +199,8 @@ class int:
def __index__(self) -> int: ...
class float:
- def __new__(cls: type[Self], x: SupportsFloat | _SupportsIndex | Text | bytes | bytearray = ...) -> Self: ...
- def as_integer_ratio(self) -> tuple[int, int]: ...
+ def __new__(cls: Type[_T], x: SupportsFloat | _SupportsIndex | Text | bytes | bytearray = ...) -> _T: ...
+ def as_integer_ratio(self) -> Tuple[int, int]: ...
def hex(self) -> str: ...
def is_integer(self) -> bool: ...
@classmethod
@@ -208,7 +217,7 @@ class float:
def __div__(self, x: float) -> float: ...
def __truediv__(self, x: float) -> float: ...
def __mod__(self, x: float) -> float: ...
- def __divmod__(self, x: float) -> tuple[float, float]: ...
+ def __divmod__(self, x: float) -> Tuple[float, float]: ...
def __pow__(
self, x: float, mod: None = ...
) -> float: ... # In Python 3, returns complex if self is negative and x is not whole
@@ -219,9 +228,9 @@ class float:
def __rdiv__(self, x: float) -> float: ...
def __rtruediv__(self, x: float) -> float: ...
def __rmod__(self, x: float) -> float: ...
- def __rdivmod__(self, x: float) -> tuple[float, float]: ...
+ def __rdivmod__(self, x: float) -> Tuple[float, float]: ...
def __rpow__(self, x: float, mod: None = ...) -> float: ...
- def __getnewargs__(self) -> tuple[float]: ...
+ def __getnewargs__(self) -> Tuple[float]: ...
def __trunc__(self) -> int: ...
def __eq__(self, x: object) -> bool: ...
def __ne__(self, x: object) -> bool: ...
@@ -231,6 +240,7 @@ class float:
def __ge__(self, x: float) -> bool: ...
def __neg__(self) -> float: ...
def __pos__(self) -> float: ...
+ def __str__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
def __abs__(self) -> float: ...
@@ -239,9 +249,9 @@ class float:
class complex:
@overload
- def __new__(cls: type[Self], real: float = ..., imag: float = ...) -> Self: ...
+ def __new__(cls: Type[_T], real: float = ..., imag: float = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], real: str | SupportsComplex | _SupportsIndex) -> Self: ...
+ def __new__(cls: Type[_T], real: str | SupportsComplex | _SupportsIndex) -> _T: ...
@property
def real(self) -> float: ...
@property
@@ -263,6 +273,7 @@ class complex:
def __ne__(self, x: object) -> bool: ...
def __neg__(self) -> complex: ...
def __pos__(self) -> complex: ...
+ def __str__(self) -> str: ...
def __complex__(self) -> complex: ...
def __abs__(self) -> float: ...
def __hash__(self) -> int: ...
@@ -282,7 +293,7 @@ class unicode(basestring, Sequence[unicode]):
def count(self, x: unicode) -> int: ...
def decode(self, encoding: unicode = ..., errors: unicode = ...) -> unicode: ...
def encode(self, encoding: unicode = ..., errors: unicode = ...) -> str: ...
- def endswith(self, __suffix: unicode | tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def endswith(self, __suffix: unicode | Tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def expandtabs(self, tabsize: int = ...) -> unicode: ...
def find(self, sub: unicode, start: int = ..., end: int = ...) -> int: ...
def format(self, *args: object, **kwargs: object) -> unicode: ...
@@ -302,21 +313,21 @@ class unicode(basestring, Sequence[unicode]):
def ljust(self, width: int, fillchar: unicode = ...) -> unicode: ...
def lower(self) -> unicode: ...
def lstrip(self, chars: unicode = ...) -> unicode: ...
- def partition(self, sep: unicode) -> tuple[unicode, unicode, unicode]: ...
+ def partition(self, sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
def replace(self, old: unicode, new: unicode, count: int = ...) -> unicode: ...
def rfind(self, sub: unicode, start: int = ..., end: int = ...) -> int: ...
def rindex(self, sub: unicode, start: int = ..., end: int = ...) -> int: ...
def rjust(self, width: int, fillchar: unicode = ...) -> unicode: ...
- def rpartition(self, sep: unicode) -> tuple[unicode, unicode, unicode]: ...
- def rsplit(self, sep: unicode | None = ..., maxsplit: int = ...) -> list[unicode]: ...
+ def rpartition(self, sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
+ def rsplit(self, sep: unicode | None = ..., maxsplit: int = ...) -> List[unicode]: ...
def rstrip(self, chars: unicode = ...) -> unicode: ...
- def split(self, sep: unicode | None = ..., maxsplit: int = ...) -> list[unicode]: ...
- def splitlines(self, keepends: bool = ...) -> list[unicode]: ...
- def startswith(self, __prefix: unicode | tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def split(self, sep: unicode | None = ..., maxsplit: int = ...) -> List[unicode]: ...
+ def splitlines(self, keepends: bool = ...) -> List[unicode]: ...
+ def startswith(self, __prefix: unicode | Tuple[unicode, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def strip(self, chars: unicode = ...) -> unicode: ...
def swapcase(self) -> unicode: ...
def title(self) -> unicode: ...
- def translate(self, table: dict[int, Any] | unicode) -> unicode: ...
+ def translate(self, table: Dict[int, Any] | unicode) -> unicode: ...
def upper(self) -> unicode: ...
def zfill(self, width: int) -> unicode: ...
@overload
@@ -338,10 +349,12 @@ class unicode(basestring, Sequence[unicode]):
# The argument type is incompatible with Sequence
def __contains__(self, s: unicode | bytes) -> bool: ... # type: ignore
def __iter__(self) -> Iterator[unicode]: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
def __hash__(self) -> int: ...
- def __getnewargs__(self) -> tuple[unicode]: ...
+ def __getnewargs__(self) -> Tuple[unicode]: ...
class _FormatMapMapping(Protocol):
def __getitem__(self, __key: str) -> Any: ...
@@ -353,7 +366,7 @@ class str(Sequence[str], basestring):
def count(self, x: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def decode(self, encoding: Text = ..., errors: Text = ...) -> unicode: ...
def encode(self, encoding: Text = ..., errors: Text = ...) -> bytes: ...
- def endswith(self, __suffix: Text | tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def endswith(self, __suffix: Text | Tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def expandtabs(self, tabsize: int = ...) -> str: ...
def find(self, sub: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def format(self, *args: object, **kwargs: object) -> str: ...
@@ -374,35 +387,35 @@ class str(Sequence[str], basestring):
@overload
def lstrip(self, __chars: unicode) -> unicode: ...
@overload
- def partition(self, __sep: bytearray) -> tuple[str, bytearray, str]: ...
+ def partition(self, __sep: bytearray) -> Tuple[str, bytearray, str]: ...
@overload
- def partition(self, __sep: str) -> tuple[str, str, str]: ...
+ def partition(self, __sep: str) -> Tuple[str, str, str]: ...
@overload
- def partition(self, __sep: unicode) -> tuple[unicode, unicode, unicode]: ...
+ def partition(self, __sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
def replace(self, __old: AnyStr, __new: AnyStr, __count: int = ...) -> AnyStr: ...
def rfind(self, sub: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def rindex(self, sub: Text, __start: int | None = ..., __end: int | None = ...) -> int: ...
def rjust(self, __width: int, __fillchar: str = ...) -> str: ...
@overload
- def rpartition(self, __sep: bytearray) -> tuple[str, bytearray, str]: ...
+ def rpartition(self, __sep: bytearray) -> Tuple[str, bytearray, str]: ...
@overload
- def rpartition(self, __sep: str) -> tuple[str, str, str]: ...
+ def rpartition(self, __sep: str) -> Tuple[str, str, str]: ...
@overload
- def rpartition(self, __sep: unicode) -> tuple[unicode, unicode, unicode]: ...
+ def rpartition(self, __sep: unicode) -> Tuple[unicode, unicode, unicode]: ...
@overload
- def rsplit(self, sep: str | None = ..., maxsplit: int = ...) -> list[str]: ...
+ def rsplit(self, sep: str | None = ..., maxsplit: int = ...) -> List[str]: ...
@overload
- def rsplit(self, sep: unicode, maxsplit: int = ...) -> list[unicode]: ...
+ def rsplit(self, sep: unicode, maxsplit: int = ...) -> List[unicode]: ...
@overload
def rstrip(self, __chars: str = ...) -> str: ...
@overload
def rstrip(self, __chars: unicode) -> unicode: ...
@overload
- def split(self, sep: str | None = ..., maxsplit: int = ...) -> list[str]: ...
+ def split(self, sep: str | None = ..., maxsplit: int = ...) -> List[str]: ...
@overload
- def split(self, sep: unicode, maxsplit: int = ...) -> list[unicode]: ...
- def splitlines(self, keepends: bool = ...) -> list[str]: ...
- def startswith(self, __prefix: Text | tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def split(self, sep: unicode, maxsplit: int = ...) -> List[unicode]: ...
+ def splitlines(self, keepends: bool = ...) -> List[str]: ...
+ def startswith(self, __prefix: Text | Tuple[Text, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
@overload
def strip(self, __chars: str = ...) -> str: ...
@overload
@@ -427,8 +440,10 @@ class str(Sequence[str], basestring):
def __mod__(self, x: Any) -> str: ...
def __mul__(self, n: int) -> str: ...
def __ne__(self, x: object) -> bool: ...
+ def __repr__(self) -> str: ...
def __rmul__(self, n: int) -> str: ...
- def __getnewargs__(self) -> tuple[str]: ...
+ def __str__(self) -> str: ...
+ def __getnewargs__(self) -> Tuple[str]: ...
def __getslice__(self, start: int, stop: int) -> str: ...
def __float__(self) -> float: ...
def __int__(self) -> int: ...
@@ -450,7 +465,7 @@ class bytearray(MutableSequence[int], ByteString):
def center(self, __width: int, __fillchar: bytes = ...) -> bytearray: ...
def count(self, __sub: str) -> int: ...
def decode(self, encoding: Text = ..., errors: Text = ...) -> str: ...
- def endswith(self, __suffix: bytes | tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def endswith(self, __suffix: bytes | Tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def expandtabs(self, tabsize: int = ...) -> bytearray: ...
def extend(self, iterable: str | Iterable[int]) -> None: ...
def find(self, __sub: str, __start: int = ..., __end: int = ...) -> int: ...
@@ -467,17 +482,17 @@ class bytearray(MutableSequence[int], ByteString):
def ljust(self, __width: int, __fillchar: str = ...) -> bytearray: ...
def lower(self) -> bytearray: ...
def lstrip(self, __bytes: bytes | None = ...) -> bytearray: ...
- def partition(self, __sep: bytes) -> tuple[bytearray, bytearray, bytearray]: ...
+ def partition(self, __sep: bytes) -> Tuple[bytearray, bytearray, bytearray]: ...
def replace(self, __old: bytes, __new: bytes, __count: int = ...) -> bytearray: ...
def rfind(self, __sub: bytes, __start: int = ..., __end: int = ...) -> int: ...
def rindex(self, __sub: bytes, __start: int = ..., __end: int = ...) -> int: ...
def rjust(self, __width: int, __fillchar: bytes = ...) -> bytearray: ...
- def rpartition(self, __sep: bytes) -> tuple[bytearray, bytearray, bytearray]: ...
- def rsplit(self, sep: bytes | None = ..., maxsplit: int = ...) -> list[bytearray]: ...
+ def rpartition(self, __sep: bytes) -> Tuple[bytearray, bytearray, bytearray]: ...
+ def rsplit(self, sep: bytes | None = ..., maxsplit: int = ...) -> List[bytearray]: ...
def rstrip(self, __bytes: bytes | None = ...) -> bytearray: ...
- def split(self, sep: bytes | None = ..., maxsplit: int = ...) -> list[bytearray]: ...
- def splitlines(self, keepends: bool = ...) -> list[bytearray]: ...
- def startswith(self, __prefix: bytes | tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
+ def split(self, sep: bytes | None = ..., maxsplit: int = ...) -> List[bytearray]: ...
+ def splitlines(self, keepends: bool = ...) -> List[bytearray]: ...
+ def startswith(self, __prefix: bytes | Tuple[bytes, ...], __start: int | None = ..., __end: int | None = ...) -> bool: ...
def strip(self, __bytes: bytes | None = ...) -> bytearray: ...
def swapcase(self) -> bytearray: ...
def title(self) -> bytearray: ...
@@ -488,6 +503,8 @@ class bytearray(MutableSequence[int], ByteString):
def fromhex(cls, __string: str) -> bytearray: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[int]: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
__hash__: None # type: ignore
@@ -517,9 +534,9 @@ class bytearray(MutableSequence[int], ByteString):
class memoryview(Sized, Container[str]):
format: str
itemsize: int
- shape: tuple[int, ...] | None
- strides: tuple[int, ...] | None
- suboffsets: tuple[int, ...] | None
+ shape: Tuple[int, ...] | None
+ strides: Tuple[int, ...] | None
+ suboffsets: Tuple[int, ...] | None
readonly: bool
ndim: int
def __init__(self, obj: ReadableBuffer) -> None: ...
@@ -535,11 +552,11 @@ class memoryview(Sized, Container[str]):
@overload
def __setitem__(self, i: int, o: int) -> None: ...
def tobytes(self) -> bytes: ...
- def tolist(self) -> list[int]: ...
+ def tolist(self) -> List[int]: ...
@final
class bool(int):
- def __new__(cls: type[Self], __o: object = ...) -> Self: ...
+ def __new__(cls: Type[_T], __o: object = ...) -> _T: ...
@overload
def __and__(self, x: bool) -> bool: ...
@overload
@@ -564,7 +581,7 @@ class bool(int):
def __rxor__(self, x: bool) -> bool: ...
@overload
def __rxor__(self, x: int) -> int: ...
- def __getnewargs__(self) -> tuple[int]: ...
+ def __getnewargs__(self) -> Tuple[int]: ...
class slice(object):
start: Any
@@ -575,27 +592,27 @@ class slice(object):
@overload
def __init__(self, start: Any, stop: Any, step: Any = ...) -> None: ...
__hash__: None # type: ignore
- def indices(self, len: int) -> tuple[int, int, int]: ...
+ def indices(self, len: int) -> Tuple[int, int, int]: ...
class tuple(Sequence[_T_co], Generic[_T_co]):
- def __new__(cls: type[Self], iterable: Iterable[_T_co] = ...) -> Self: ...
+ def __new__(cls: Type[_T], iterable: Iterable[_T_co] = ...) -> _T: ...
def __len__(self) -> int: ...
def __contains__(self, x: object) -> bool: ...
@overload
def __getitem__(self, x: int) -> _T_co: ...
@overload
- def __getitem__(self, x: slice) -> tuple[_T_co, ...]: ...
+ def __getitem__(self, x: slice) -> Tuple[_T_co, ...]: ...
def __iter__(self) -> Iterator[_T_co]: ...
- def __lt__(self, x: tuple[_T_co, ...]) -> bool: ...
- def __le__(self, x: tuple[_T_co, ...]) -> bool: ...
- def __gt__(self, x: tuple[_T_co, ...]) -> bool: ...
- def __ge__(self, x: tuple[_T_co, ...]) -> bool: ...
+ def __lt__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __le__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __gt__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __ge__(self, x: Tuple[_T_co, ...]) -> bool: ...
@overload
- def __add__(self, x: tuple[_T_co, ...]) -> tuple[_T_co, ...]: ...
+ def __add__(self, x: Tuple[_T_co, ...]) -> Tuple[_T_co, ...]: ...
@overload
- def __add__(self, x: tuple[Any, ...]) -> tuple[Any, ...]: ...
- def __mul__(self, n: int) -> tuple[_T_co, ...]: ...
- def __rmul__(self, n: int) -> tuple[_T_co, ...]: ...
+ def __add__(self, x: Tuple[Any, ...]) -> Tuple[Any, ...]: ...
+ def __mul__(self, n: int) -> Tuple[_T_co, ...]: ...
+ def __rmul__(self, n: int) -> Tuple[_T_co, ...]: ...
def count(self, __value: Any) -> int: ...
def index(self, __value: Any) -> int: ...
@@ -621,29 +638,30 @@ class list(MutableSequence[_T], Generic[_T]):
def sort(self, cmp: Callable[[_T, _T], Any] = ..., key: Callable[[_T], Any] = ..., reverse: bool = ...) -> None: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[_T]: ...
+ def __str__(self) -> str: ...
__hash__: None # type: ignore
@overload
def __getitem__(self, i: int) -> _T: ...
@overload
- def __getitem__(self, s: slice) -> list[_T]: ...
+ def __getitem__(self, s: slice) -> List[_T]: ...
@overload
def __setitem__(self, i: int, o: _T) -> None: ...
@overload
def __setitem__(self, s: slice, o: Iterable[_T]) -> None: ...
def __delitem__(self, i: int | slice) -> None: ...
- def __getslice__(self, start: int, stop: int) -> list[_T]: ...
+ def __getslice__(self, start: int, stop: int) -> List[_T]: ...
def __setslice__(self, start: int, stop: int, o: Sequence[_T]) -> None: ...
def __delslice__(self, start: int, stop: int) -> None: ...
- def __add__(self, x: list[_T]) -> list[_T]: ...
- def __iadd__(self: Self, x: Iterable[_T]) -> Self: ...
- def __mul__(self, n: int) -> list[_T]: ...
- def __rmul__(self, n: int) -> list[_T]: ...
+ def __add__(self, x: List[_T]) -> List[_T]: ...
+ def __iadd__(self: _S, x: Iterable[_T]) -> _S: ...
+ def __mul__(self, n: int) -> List[_T]: ...
+ def __rmul__(self, n: int) -> List[_T]: ...
def __contains__(self, o: object) -> bool: ...
def __reversed__(self) -> Iterator[_T]: ...
- def __gt__(self, x: list[_T]) -> bool: ...
- def __ge__(self, x: list[_T]) -> bool: ...
- def __lt__(self, x: list[_T]) -> bool: ...
- def __le__(self, x: list[_T]) -> bool: ...
+ def __gt__(self, x: List[_T]) -> bool: ...
+ def __ge__(self, x: List[_T]) -> bool: ...
+ def __lt__(self, x: List[_T]) -> bool: ...
+ def __le__(self, x: List[_T]) -> bool: ...
class dict(MutableMapping[_KT, _VT], Generic[_KT, _VT]):
# NOTE: Keyword arguments are special. If they are used, _KT must include
@@ -653,74 +671,76 @@ class dict(MutableMapping[_KT, _VT], Generic[_KT, _VT]):
@overload
def __init__(self, map: SupportsKeysAndGetItem[_KT, _VT], **kwargs: _VT) -> None: ...
@overload
- def __init__(self, iterable: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
+ def __init__(self, iterable: Iterable[Tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
+ def __new__(cls: Type[_T1], *args: Any, **kwargs: Any) -> _T1: ...
def has_key(self, k: _KT) -> bool: ...
def clear(self) -> None: ...
- def copy(self) -> dict[_KT, _VT]: ...
- def popitem(self) -> tuple[_KT, _VT]: ...
+ def copy(self) -> Dict[_KT, _VT]: ...
+ def popitem(self) -> Tuple[_KT, _VT]: ...
def setdefault(self, __key: _KT, __default: _VT = ...) -> _VT: ...
@overload
def update(self, __m: Mapping[_KT, _VT], **kwargs: _VT) -> None: ...
@overload
- def update(self, __m: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
+ def update(self, __m: Iterable[Tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
@overload
def update(self, **kwargs: _VT) -> None: ...
def iterkeys(self) -> Iterator[_KT]: ...
def itervalues(self) -> Iterator[_VT]: ...
- def iteritems(self) -> Iterator[tuple[_KT, _VT]]: ...
+ def iteritems(self) -> Iterator[Tuple[_KT, _VT]]: ...
def viewkeys(self) -> KeysView[_KT]: ...
def viewvalues(self) -> ValuesView[_VT]: ...
def viewitems(self) -> ItemsView[_KT, _VT]: ...
@classmethod
@overload
- def fromkeys(cls, __iterable: Iterable[_T]) -> dict[_T, Any]: ...
+ def fromkeys(cls, __iterable: Iterable[_T]) -> Dict[_T, Any]: ...
@classmethod
@overload
- def fromkeys(cls, __iterable: Iterable[_T], __value: _S) -> dict[_T, _S]: ...
+ def fromkeys(cls, __iterable: Iterable[_T], __value: _S) -> Dict[_T, _S]: ...
def __len__(self) -> int: ...
def __getitem__(self, k: _KT) -> _VT: ...
def __setitem__(self, k: _KT, v: _VT) -> None: ...
def __delitem__(self, v: _KT) -> None: ...
def __iter__(self) -> Iterator[_KT]: ...
+ def __str__(self) -> str: ...
__hash__: None # type: ignore
class set(MutableSet[_T], Generic[_T]):
def __init__(self, iterable: Iterable[_T] = ...) -> None: ...
def add(self, element: _T) -> None: ...
def clear(self) -> None: ...
- def copy(self) -> set[_T]: ...
- def difference(self, *s: Iterable[Any]) -> set[_T]: ...
+ def copy(self) -> Set[_T]: ...
+ def difference(self, *s: Iterable[Any]) -> Set[_T]: ...
def difference_update(self, *s: Iterable[Any]) -> None: ...
def discard(self, element: _T) -> None: ...
- def intersection(self, *s: Iterable[Any]) -> set[_T]: ...
+ def intersection(self, *s: Iterable[Any]) -> Set[_T]: ...
def intersection_update(self, *s: Iterable[Any]) -> None: ...
def isdisjoint(self, s: Iterable[Any]) -> bool: ...
def issubset(self, s: Iterable[Any]) -> bool: ...
def issuperset(self, s: Iterable[Any]) -> bool: ...
def pop(self) -> _T: ...
def remove(self, element: _T) -> None: ...
- def symmetric_difference(self, s: Iterable[_T]) -> set[_T]: ...
+ def symmetric_difference(self, s: Iterable[_T]) -> Set[_T]: ...
def symmetric_difference_update(self, s: Iterable[_T]) -> None: ...
- def union(self, *s: Iterable[_T]) -> set[_T]: ...
+ def union(self, *s: Iterable[_T]) -> Set[_T]: ...
def update(self, *s: Iterable[_T]) -> None: ...
def __len__(self) -> int: ...
def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[_T]: ...
- def __and__(self, s: AbstractSet[object]) -> set[_T]: ...
- def __iand__(self: Self, s: AbstractSet[object]) -> Self: ...
- def __or__(self, s: AbstractSet[_S]) -> set[_T | _S]: ...
- def __ior__(self: Self, s: AbstractSet[_T]) -> Self: ...
+ def __str__(self) -> str: ...
+ def __and__(self, s: AbstractSet[object]) -> Set[_T]: ...
+ def __iand__(self, s: AbstractSet[object]) -> Set[_T]: ...
+ def __or__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __ior__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
@overload
- def __sub__(self: set[str], s: AbstractSet[Text | None]) -> set[_T]: ...
+ def __sub__(self: Set[str], s: AbstractSet[Text | None]) -> Set[_T]: ...
@overload
- def __sub__(self, s: AbstractSet[_T | None]) -> set[_T]: ...
+ def __sub__(self, s: AbstractSet[_T | None]) -> Set[_T]: ...
@overload # type: ignore
- def __isub__(self: set[str], s: AbstractSet[Text | None]) -> set[_T]: ...
+ def __isub__(self: Set[str], s: AbstractSet[Text | None]) -> Set[_T]: ...
@overload
- def __isub__(self, s: AbstractSet[_T | None]) -> set[_T]: ...
- def __xor__(self, s: AbstractSet[_S]) -> set[_T | _S]: ...
- def __ixor__(self: Self, s: AbstractSet[_T]) -> Self: ...
+ def __isub__(self, s: AbstractSet[_T | None]) -> Set[_T]: ...
+ def __xor__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __ixor__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
def __le__(self, s: AbstractSet[object]) -> bool: ...
def __lt__(self, s: AbstractSet[object]) -> bool: ...
def __ge__(self, s: AbstractSet[object]) -> bool: ...
@@ -729,30 +749,31 @@ class set(MutableSet[_T], Generic[_T]):
class frozenset(AbstractSet[_T_co], Generic[_T_co]):
def __init__(self, iterable: Iterable[_T_co] = ...) -> None: ...
- def copy(self) -> frozenset[_T_co]: ...
- def difference(self, *s: Iterable[object]) -> frozenset[_T_co]: ...
- def intersection(self, *s: Iterable[object]) -> frozenset[_T_co]: ...
+ def copy(self) -> FrozenSet[_T_co]: ...
+ def difference(self, *s: Iterable[object]) -> FrozenSet[_T_co]: ...
+ def intersection(self, *s: Iterable[object]) -> FrozenSet[_T_co]: ...
def isdisjoint(self, s: Iterable[_T_co]) -> bool: ...
def issubset(self, s: Iterable[object]) -> bool: ...
def issuperset(self, s: Iterable[object]) -> bool: ...
- def symmetric_difference(self, s: Iterable[_T_co]) -> frozenset[_T_co]: ...
- def union(self, *s: Iterable[_T_co]) -> frozenset[_T_co]: ...
+ def symmetric_difference(self, s: Iterable[_T_co]) -> FrozenSet[_T_co]: ...
+ def union(self, *s: Iterable[_T_co]) -> FrozenSet[_T_co]: ...
def __len__(self) -> int: ...
def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[_T_co]: ...
- def __and__(self, s: AbstractSet[_T_co]) -> frozenset[_T_co]: ...
- def __or__(self, s: AbstractSet[_S]) -> frozenset[_T_co | _S]: ...
- def __sub__(self, s: AbstractSet[_T_co]) -> frozenset[_T_co]: ...
- def __xor__(self, s: AbstractSet[_S]) -> frozenset[_T_co | _S]: ...
+ def __str__(self) -> str: ...
+ def __and__(self, s: AbstractSet[_T_co]) -> FrozenSet[_T_co]: ...
+ def __or__(self, s: AbstractSet[_S]) -> FrozenSet[_T_co | _S]: ...
+ def __sub__(self, s: AbstractSet[_T_co]) -> FrozenSet[_T_co]: ...
+ def __xor__(self, s: AbstractSet[_S]) -> FrozenSet[_T_co | _S]: ...
def __le__(self, s: AbstractSet[object]) -> bool: ...
def __lt__(self, s: AbstractSet[object]) -> bool: ...
def __ge__(self, s: AbstractSet[object]) -> bool: ...
def __gt__(self, s: AbstractSet[object]) -> bool: ...
-class enumerate(Iterator[tuple[int, _T]], Generic[_T]):
+class enumerate(Iterator[Tuple[int, _T]], Generic[_T]):
def __init__(self, iterable: Iterable[_T], start: int = ...) -> None: ...
- def __iter__(self) -> Iterator[tuple[int, _T]]: ...
- def next(self) -> tuple[int, _T]: ...
+ def __iter__(self) -> Iterator[Tuple[int, _T]]: ...
+ def next(self) -> Tuple[int, _T]: ...
class xrange(Sized, Iterable[int], Reversible[int]):
@overload
@@ -802,47 +823,42 @@ def cmp(__x: Any, __y: Any) -> int: ...
_N1 = TypeVar("_N1", bool, int, float, complex)
-def coerce(__x: _N1, __y: _N1) -> tuple[_N1, _N1]: ...
+def coerce(__x: _N1, __y: _N1) -> Tuple[_N1, _N1]: ...
def compile(source: Text | mod, filename: Text, mode: Text, flags: int = ..., dont_inherit: int = ...) -> Any: ...
def delattr(__obj: Any, __name: Text) -> None: ...
-def dir(__o: object = ...) -> list[str]: ...
+def dir(__o: object = ...) -> List[str]: ...
_N2 = TypeVar("_N2", int, float)
-def divmod(__x: _N2, __y: _N2) -> tuple[_N2, _N2]: ...
+def divmod(__x: _N2, __y: _N2) -> Tuple[_N2, _N2]: ...
def eval(
- __source: Text | bytes | CodeType, __globals: dict[str, Any] | None = ..., __locals: Mapping[str, Any] | None = ...
+ __source: Text | bytes | CodeType, __globals: Dict[str, Any] | None = ..., __locals: Mapping[str, Any] | None = ...
) -> Any: ...
-def execfile(__filename: str, __globals: dict[str, Any] | None = ..., __locals: dict[str, Any] | None = ...) -> None: ...
+def execfile(__filename: str, __globals: Dict[str, Any] | None = ..., __locals: Dict[str, Any] | None = ...) -> None: ...
def exit(code: object = ...) -> NoReturn: ...
@overload
def filter(__function: Callable[[AnyStr], Any], __iterable: AnyStr) -> AnyStr: ... # type: ignore
@overload
-def filter(__function: None, __iterable: tuple[_T | None, ...]) -> tuple[_T, ...]: ... # type: ignore
+def filter(__function: None, __iterable: Tuple[_T | None, ...]) -> Tuple[_T, ...]: ... # type: ignore
@overload
-def filter(__function: Callable[[_T], Any], __iterable: tuple[_T, ...]) -> tuple[_T, ...]: ... # type: ignore
+def filter(__function: Callable[[_T], Any], __iterable: Tuple[_T, ...]) -> Tuple[_T, ...]: ... # type: ignore
@overload
-def filter(__function: None, __iterable: Iterable[_T | None]) -> list[_T]: ...
+def filter(__function: None, __iterable: Iterable[_T | None]) -> List[_T]: ...
@overload
-def filter(__function: Callable[[_T], Any], __iterable: Iterable[_T]) -> list[_T]: ...
+def filter(__function: Callable[[_T], Any], __iterable: Iterable[_T]) -> List[_T]: ...
def format(__value: object, __format_spec: str = ...) -> str: ... # TODO unicode
@overload
def getattr(__o: Any, name: Text) -> Any: ...
-# While technically covered by the last overload, spelling out the types for None, bool
-# and basic containers help mypy out in some tricky situations involving type context
-# (aka bidirectional inference)
+# While technically covered by the last overload, spelling out the types for None and bool
+# help mypy out in some tricky situations involving type context (aka bidirectional inference)
@overload
def getattr(__o: Any, name: Text, __default: None) -> Any | None: ...
@overload
def getattr(__o: Any, name: Text, __default: bool) -> Any | bool: ...
@overload
-def getattr(__o: object, name: str, __default: list[Any]) -> Any | list[Any]: ...
-@overload
-def getattr(__o: object, name: str, __default: dict[Any, Any]) -> Any | dict[Any, Any]: ...
-@overload
def getattr(__o: Any, name: Text, __default: _T) -> Any | _T: ...
-def globals() -> dict[str, Any]: ...
+def globals() -> Dict[str, Any]: ...
def hasattr(__obj: Any, __name: Text) -> bool: ...
def hash(__obj: object) -> int: ...
def hex(__number: int | _SupportsIndex) -> str: ...
@@ -855,20 +871,20 @@ def iter(__iterable: Iterable[_T]) -> Iterator[_T]: ...
def iter(__function: Callable[[], _T | None], __sentinel: None) -> Iterator[_T]: ...
@overload
def iter(__function: Callable[[], _T], __sentinel: Any) -> Iterator[_T]: ...
-def isinstance(__obj: object, __class_or_tuple: type | tuple[type | tuple[Any, ...], ...]) -> bool: ...
-def issubclass(__cls: type, __class_or_tuple: type | tuple[type | tuple[Any, ...], ...]) -> bool: ...
+def isinstance(__obj: object, __class_or_tuple: type | Tuple[type | Tuple[Any, ...], ...]) -> bool: ...
+def issubclass(__cls: type, __class_or_tuple: type | Tuple[type | Tuple[Any, ...], ...]) -> bool: ...
def len(__obj: Sized) -> int: ...
-def locals() -> dict[str, Any]: ...
+def locals() -> Dict[str, Any]: ...
@overload
-def map(__func: None, __iter1: Iterable[_T1]) -> list[_T1]: ...
+def map(__func: None, __iter1: Iterable[_T1]) -> List[_T1]: ...
@overload
-def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> list[tuple[_T1, _T2]]: ...
+def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> List[Tuple[_T1, _T2]]: ...
@overload
-def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> list[tuple[_T1, _T2, _T3]]: ...
+def map(__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> List[Tuple[_T1, _T2, _T3]]: ...
@overload
def map(
__func: None, __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3], __iter4: Iterable[_T4]
-) -> list[tuple[_T1, _T2, _T3, _T4]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4]]: ...
@overload
def map(
__func: None,
@@ -877,7 +893,7 @@ def map(
__iter3: Iterable[_T3],
__iter4: Iterable[_T4],
__iter5: Iterable[_T5],
-) -> list[tuple[_T1, _T2, _T3, _T4, _T5]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4, _T5]]: ...
@overload
def map(
__func: None,
@@ -888,15 +904,15 @@ def map(
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
-) -> list[tuple[Any, ...]]: ...
+) -> List[Tuple[Any, ...]]: ...
@overload
-def map(__func: Callable[[_T1], _S], __iter1: Iterable[_T1]) -> list[_S]: ...
+def map(__func: Callable[[_T1], _S], __iter1: Iterable[_T1]) -> List[_S]: ...
@overload
-def map(__func: Callable[[_T1, _T2], _S], __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> list[_S]: ...
+def map(__func: Callable[[_T1, _T2], _S], __iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> List[_S]: ...
@overload
def map(
__func: Callable[[_T1, _T2, _T3], _S], __iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def map(
__func: Callable[[_T1, _T2, _T3, _T4], _S],
@@ -904,7 +920,7 @@ def map(
__iter2: Iterable[_T2],
__iter3: Iterable[_T3],
__iter4: Iterable[_T4],
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def map(
__func: Callable[[_T1, _T2, _T3, _T4, _T5], _S],
@@ -913,7 +929,7 @@ def map(
__iter3: Iterable[_T3],
__iter4: Iterable[_T4],
__iter5: Iterable[_T5],
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def map(
__func: Callable[..., _S],
@@ -924,7 +940,7 @@ def map(
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
-) -> list[_S]: ...
+) -> List[_S]: ...
@overload
def max(__arg1: _T, __arg2: _T, *_args: _T, key: Callable[[_T], Any] = ...) -> _T: ...
@overload
@@ -964,7 +980,7 @@ def pow(__base: _SupportsPow2[_E, _T_co], __exp: _E) -> _T_co: ...
@overload
def pow(__base: _SupportsPow3[_E, _M, _T_co], __exp: _E, __mod: _M) -> _T_co: ...
def quit(code: object = ...) -> NoReturn: ...
-def range(__x: int, __y: int = ..., __step: int = ...) -> list[int]: ... # noqa: F811
+def range(__x: int, __y: int = ..., __step: int = ...) -> List[int]: ... # noqa: F811
def raw_input(__prompt: Any = ...) -> str: ...
@overload
def reduce(__function: Callable[[_T, _S], _T], __iterable: Iterable[_S], __initializer: _T) -> _T: ...
@@ -987,27 +1003,27 @@ def round(number: SupportsFloat, ndigits: int) -> float: ...
def setattr(__obj: Any, __name: Text, __value: Any) -> None: ...
def sorted(
__iterable: Iterable[_T], *, cmp: Callable[[_T, _T], int] = ..., key: Callable[[_T], Any] | None = ..., reverse: bool = ...
-) -> list[_T]: ...
+) -> List[_T]: ...
@overload
def sum(__iterable: Iterable[_T]) -> _T | int: ...
@overload
def sum(__iterable: Iterable[_T], __start: _S) -> _T | _S: ...
def unichr(__i: int) -> unicode: ...
-def vars(__object: Any = ...) -> dict[str, Any]: ...
+def vars(__object: Any = ...) -> Dict[str, Any]: ...
@overload
-def zip(__iter1: Iterable[_T1]) -> list[tuple[_T1]]: ...
+def zip(__iter1: Iterable[_T1]) -> List[Tuple[_T1]]: ...
@overload
-def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> list[tuple[_T1, _T2]]: ...
+def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2]) -> List[Tuple[_T1, _T2]]: ...
@overload
-def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> list[tuple[_T1, _T2, _T3]]: ...
+def zip(__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3]) -> List[Tuple[_T1, _T2, _T3]]: ...
@overload
def zip(
__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3], __iter4: Iterable[_T4]
-) -> list[tuple[_T1, _T2, _T3, _T4]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4]]: ...
@overload
def zip(
__iter1: Iterable[_T1], __iter2: Iterable[_T2], __iter3: Iterable[_T3], __iter4: Iterable[_T4], __iter5: Iterable[_T5]
-) -> list[tuple[_T1, _T2, _T3, _T4, _T5]]: ...
+) -> List[Tuple[_T1, _T2, _T3, _T4, _T5]]: ...
@overload
def zip(
__iter1: Iterable[Any],
@@ -1017,7 +1033,7 @@ def zip(
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
-) -> list[tuple[Any, ...]]: ...
+) -> List[Tuple[Any, ...]]: ...
def __import__(
name: Text,
globals: Mapping[str, Any] | None = ...,
@@ -1045,11 +1061,13 @@ class buffer(Sized):
def __mul__(self, x: int) -> str: ...
class BaseException(object):
- args: tuple[Any, ...]
+ args: Tuple[Any, ...]
message: Any
def __init__(self, *args: object) -> None: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __getitem__(self, i: int) -> Any: ...
- def __getslice__(self, start: int, stop: int) -> tuple[Any, ...]: ...
+ def __getslice__(self, start: int, stop: int) -> Tuple[Any, ...]: ...
class GeneratorExit(BaseException): ...
class KeyboardInterrupt(BaseException): ...
@@ -1158,7 +1176,7 @@ class file(BinaryIO):
def seek(self, offset: int, whence: int = ...) -> int: ...
def tell(self) -> int: ...
def readline(self, limit: int = ...) -> str: ...
- def readlines(self, hint: int = ...) -> list[str]: ...
+ def readlines(self, hint: int = ...) -> List[str]: ...
def write(self, data: str) -> int: ...
def writelines(self, data: Iterable[str]) -> None: ...
def truncate(self, pos: int | None = ...) -> int: ...
diff --git a/python/helpers/typeshed/stdlib/_typeshed/__init__.pyi b/python/helpers/typeshed/stdlib/_typeshed/__init__.pyi
index 103af47c7524..a3f56899247b 100644
--- a/python/helpers/typeshed/stdlib/_typeshed/__init__.pyi
+++ b/python/helpers/typeshed/stdlib/_typeshed/__init__.pyi
@@ -7,8 +7,8 @@ import ctypes
import mmap
import sys
from os import PathLike
-from typing import AbstractSet, Any, Container, Generic, Iterable, Protocol, TypeVar, Union
-from typing_extensions import Final, Literal, final
+from typing import AbstractSet, Any, Awaitable, Container, Iterable, Protocol, TypeVar, Union
+from typing_extensions import Literal, final
_KT = TypeVar("_KT")
_KT_co = TypeVar("_KT_co", covariant=True)
@@ -33,26 +33,12 @@ class SupportsNext(Protocol[_T_co]):
# stable
class SupportsAnext(Protocol[_T_co]):
- async def __anext__(self) -> _T_co: ...
+ def __anext__(self) -> Awaitable[_T_co]: ...
-# Comparison protocols
-
-class SupportsDunderLT(Protocol):
+class SupportsLessThan(Protocol):
def __lt__(self, __other: Any) -> bool: ...
-class SupportsDunderGT(Protocol):
- def __gt__(self, __other: Any) -> bool: ...
-
-class SupportsDunderLE(Protocol):
- def __le__(self, __other: Any) -> bool: ...
-
-class SupportsDunderGE(Protocol):
- def __ge__(self, __other: Any) -> bool: ...
-
-class SupportsAllComparisons(SupportsDunderLT, SupportsDunderGT, SupportsDunderLE, SupportsDunderGE, Protocol): ...
-
-SupportsRichComparison = Union[SupportsDunderLT, SupportsDunderGT]
-SupportsRichComparisonT = TypeVar("SupportsRichComparisonT", bound=SupportsRichComparison) # noqa: Y001
+SupportsLessThanT = TypeVar("SupportsLessThanT", bound=SupportsLessThan) # noqa: Y001
class SupportsDivMod(Protocol[_T_contra, _T_co]):
def __divmod__(self, __other: _T_contra) -> _T_co: ...
@@ -180,7 +166,7 @@ class SupportsNoArgReadline(Protocol[_T_co]):
# stable
class SupportsWrite(Protocol[_T_contra]):
- def write(self, __s: _T_contra) -> object: ...
+ def write(self, __s: _T_contra) -> Any: ...
ReadOnlyBuffer = bytes # stable
# Anything that implements the read-write buffer interface.
@@ -192,26 +178,9 @@ ReadableBuffer = Union[ReadOnlyBuffer, WriteableBuffer] # stable
# stable
if sys.version_info >= (3, 10):
- from types import NoneType as NoneType
+ pass
else:
# Used by type checkers for checks involving None (does not exist at runtime)
@final
class NoneType:
def __bool__(self) -> Literal[False]: ...
-
-# This is an internal CPython type that is like, but subtly different from, a NamedTuple
-# Subclasses of this type are found in multiple modules.
-# In typeshed, `structseq` is only ever used as a mixin in combination with a fixed-length `Tuple`
-# See discussion at #6546 & #6560
-# `structseq` classes are unsubclassable, so are all decorated with `@final`.
-class structseq(Generic[_T_co]):
- n_fields: Final[int]
- n_unnamed_fields: Final[int]
- n_sequence_fields: Final[int]
- # The first parameter will generally only take an iterable of a specific length.
- # E.g. `os.uname_result` takes any iterable of length exactly 5.
- #
- # The second parameter will accept a dict of any kind without raising an exception,
- # but only has any meaning if you supply it a dict where the keys are strings.
- # https://github.com/python/typeshed/pull/6560#discussion_r767149830
- def __new__(cls: type[Self], sequence: Iterable[_T_co], dict: dict[str, Any] = ...) -> Self: ...
diff --git a/python/helpers/typeshed/stdlib/builtins.pyi b/python/helpers/typeshed/stdlib/builtins.pyi
index d27a4d2768a0..f69391070148 100644
--- a/python/helpers/typeshed/stdlib/builtins.pyi
+++ b/python/helpers/typeshed/stdlib/builtins.pyi
@@ -1,7 +1,5 @@
import sys
import types
-from _ast import AST
-from _collections_abc import dict_items, dict_keys, dict_values
from _typeshed import (
OpenBinaryMode,
OpenBinaryModeReading,
@@ -15,25 +13,30 @@ from _typeshed import (
SupportsDivMod,
SupportsKeysAndGetItem,
SupportsLenAndGetItem,
+ SupportsLessThan,
+ SupportsLessThanT,
SupportsNext,
SupportsRDivMod,
- SupportsRichComparison,
- SupportsRichComparisonT,
- SupportsTrunc,
SupportsWrite,
)
-from collections.abc import Callable
+from ast import AST, mod
from io import BufferedRandom, BufferedReader, BufferedWriter, FileIO, TextIOWrapper
-from types import CodeType, TracebackType, _Cell
+from types import CodeType, MappingProxyType, TracebackType
from typing import (
IO,
AbstractSet,
Any,
+ AsyncIterable,
+ AsyncIterator,
BinaryIO,
ByteString,
+ Callable,
+ FrozenSet,
Generic,
+ ItemsView,
Iterable,
Iterator,
+ KeysView,
Mapping,
MutableMapping,
MutableSequence,
@@ -42,6 +45,7 @@ from typing import (
Protocol,
Reversible,
Sequence,
+ Set,
Sized,
SupportsAbs,
SupportsBytes,
@@ -49,144 +53,132 @@ from typing import (
SupportsFloat,
SupportsInt,
SupportsRound,
+ Tuple,
+ Type,
TypeVar,
Union,
+ ValuesView,
overload,
)
-from typing_extensions import Literal, SupportsIndex, TypeGuard, final
+from typing_extensions import Literal, SupportsIndex, final
if sys.version_info >= (3, 9):
from types import GenericAlias
+class _SupportsTrunc(Protocol):
+ def __trunc__(self) -> int: ...
+
_T = TypeVar("_T")
_T_co = TypeVar("_T_co", covariant=True)
_T_contra = TypeVar("_T_contra", contravariant=True)
-_R_co = TypeVar("_R_co", covariant=True)
_KT = TypeVar("_KT")
_VT = TypeVar("_VT")
+_KT_co = TypeVar("_KT_co", covariant=True) # Key type covariant containers.
+_VT_co = TypeVar("_VT_co", covariant=True) # Value type covariant containers.
_S = TypeVar("_S")
_T1 = TypeVar("_T1")
_T2 = TypeVar("_T2")
_T3 = TypeVar("_T3")
_T4 = TypeVar("_T4")
_T5 = TypeVar("_T5")
-_SupportsNextT = TypeVar("_SupportsNextT", bound=SupportsNext[Any], covariant=True)
-_SupportsAnextT = TypeVar("_SupportsAnextT", bound=SupportsAnext[Any], covariant=True)
-
-class _SupportsIter(Protocol[_T_co]):
- def __iter__(self) -> _T_co: ...
-
-class _SupportsAiter(Protocol[_T_co]):
- def __aiter__(self) -> _T_co: ...
+_TT = TypeVar("_TT", bound="type")
+_TBE = TypeVar("_TBE", bound="BaseException")
class object:
__doc__: str | None
__dict__: dict[str, Any]
+ __slots__: str | Iterable[str]
__module__: str
__annotations__: dict[str, Any]
@property
- def __class__(self: Self) -> type[Self]: ...
+ def __class__(self: _T) -> Type[_T]: ...
# Ignore errors about type mismatch between property getter and setter
@__class__.setter
- def __class__(self, __type: type[object]) -> None: ... # type: ignore # noqa: F811
+ def __class__(self, __type: Type[object]) -> None: ... # type: ignore # noqa: F811
def __init__(self) -> None: ...
- def __new__(cls: type[Self]) -> Self: ...
- def __setattr__(self, __name: str, __value: Any) -> None: ...
- def __eq__(self, __o: object) -> bool: ...
- def __ne__(self, __o: object) -> bool: ...
- def __str__(self) -> str: ... # noqa Y029
- def __repr__(self) -> str: ... # noqa Y029
+ def __new__(cls: Type[_T]) -> _T: ...
+ def __setattr__(self, name: str, value: Any) -> None: ...
+ def __eq__(self, o: object) -> bool: ...
+ def __ne__(self, o: object) -> bool: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __hash__(self) -> int: ...
- def __format__(self, __format_spec: str) -> str: ...
- def __getattribute__(self, __name: str) -> Any: ...
- def __delattr__(self, __name: str) -> None: ...
+ def __format__(self, format_spec: str) -> str: ...
+ def __getattribute__(self, name: str) -> Any: ...
+ def __delattr__(self, name: str) -> None: ...
def __sizeof__(self) -> int: ...
- # return type of pickle methods is rather hard to express in the current type system
- # see #6661 and https://docs.python.org/3/library/pickle.html#object.__reduce__
- def __reduce__(self) -> str | tuple[Any, ...]: ...
+ def __reduce__(self) -> str | Tuple[Any, ...]: ...
if sys.version_info >= (3, 8):
- def __reduce_ex__(self, __protocol: SupportsIndex) -> str | tuple[Any, ...]: ...
+ def __reduce_ex__(self, protocol: SupportsIndex) -> str | Tuple[Any, ...]: ...
else:
- def __reduce_ex__(self, __protocol: int) -> str | tuple[Any, ...]: ...
-
+ def __reduce_ex__(self, protocol: int) -> str | Tuple[Any, ...]: ...
def __dir__(self) -> Iterable[str]: ...
def __init_subclass__(cls) -> None: ...
-class staticmethod(Generic[_R_co]):
- __func__: Callable[..., _R_co]
+class staticmethod(object): # Special, only valid as a decorator.
+ __func__: Callable[..., Any]
__isabstractmethod__: bool
- def __init__(self: staticmethod[_R_co], __f: Callable[..., _R_co]) -> None: ...
- def __get__(self, __obj: _T, __type: type[_T] | None = ...) -> Callable[..., _R_co]: ...
- if sys.version_info >= (3, 10):
- __name__: str
- __qualname__: str
- __wrapped__: Callable[..., _R_co]
- def __call__(self, *args: Any, **kwargs: Any) -> _R_co: ...
+ def __init__(self, f: Callable[..., Any]) -> None: ...
+ def __new__(cls: Type[_T], *args: Any, **kwargs: Any) -> _T: ...
+ def __get__(self, obj: _T, type: Type[_T] | None = ...) -> Callable[..., Any]: ...
-class classmethod(Generic[_R_co]):
- __func__: Callable[..., _R_co]
+class classmethod(object): # Special, only valid as a decorator.
+ __func__: Callable[..., Any]
__isabstractmethod__: bool
- def __init__(self: classmethod[_R_co], __f: Callable[..., _R_co]) -> None: ...
- def __get__(self, __obj: _T, __type: type[_T] | None = ...) -> Callable[..., _R_co]: ...
- if sys.version_info >= (3, 10):
- __name__: str
- __qualname__: str
- __wrapped__: Callable[..., _R_co]
+ def __init__(self, f: Callable[..., Any]) -> None: ...
+ def __new__(cls: Type[_T], *args: Any, **kwargs: Any) -> _T: ...
+ def __get__(self, obj: _T, type: Type[_T] | None = ...) -> Callable[..., Any]: ...
-class type:
+class type(object):
__base__: type
- __bases__: tuple[type, ...]
+ __bases__: Tuple[type, ...]
__basicsize__: int
__dict__: dict[str, Any]
__dictoffset__: int
__flags__: int
__itemsize__: int
__module__: str
- __mro__: tuple[type, ...]
+ __mro__: Tuple[type, ...]
__name__: str
__qualname__: str
__text_signature__: str | None
__weakrefoffset__: int
@overload
- def __init__(self, __o: object) -> None: ...
+ def __init__(self, o: object) -> None: ...
@overload
- def __init__(self, __name: str, __bases: tuple[type, ...], __dict: dict[str, Any], **kwds: Any) -> None: ...
+ def __init__(self, name: str, bases: Tuple[type, ...], dict: dict[str, Any], **kwds: Any) -> None: ...
@overload
- def __new__(cls, __o: object) -> type: ...
+ def __new__(cls, o: object) -> type: ...
@overload
- def __new__(cls: type[Self], __name: str, __bases: tuple[type, ...], __namespace: dict[str, Any], **kwds: Any) -> Self: ...
+ def __new__(cls: Type[_TT], name: str, bases: Tuple[type, ...], namespace: dict[str, Any], **kwds: Any) -> _TT: ...
def __call__(self, *args: Any, **kwds: Any) -> Any: ...
- def __subclasses__(self: Self) -> list[Self]: ...
- # Note: the documentation doesn't specify what the return type is, the standard
+ def __subclasses__(self: _TT) -> list[_TT]: ...
+ # Note: the documentation doesnt specify what the return type is, the standard
# implementation seems to be returning a list.
def mro(self) -> list[type]: ...
- def __instancecheck__(self, __instance: Any) -> bool: ...
- def __subclasscheck__(self, __subclass: type) -> bool: ...
+ def __instancecheck__(self, instance: Any) -> bool: ...
+ def __subclasscheck__(self, subclass: type) -> bool: ...
@classmethod
- def __prepare__(metacls, __name: str, __bases: tuple[type, ...], **kwds: Any) -> Mapping[str, object]: ...
+ def __prepare__(metacls, __name: str, __bases: Tuple[type, ...], **kwds: Any) -> Mapping[str, Any]: ...
if sys.version_info >= (3, 10):
- def __or__(self, __t: Any) -> types.UnionType: ...
- def __ror__(self, __t: Any) -> types.UnionType: ...
+ def __or__(self, t: Any) -> types.UnionType: ...
+ def __ror__(self, t: Any) -> types.UnionType: ...
-class super:
+class super(object):
@overload
- def __init__(self, __t: Any, __obj: Any) -> None: ...
+ def __init__(self, t: Any, obj: Any) -> None: ...
@overload
- def __init__(self, __t: Any) -> None: ...
+ def __init__(self, t: Any) -> None: ...
@overload
def __init__(self) -> None: ...
-_PositiveInteger = Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25]
-_NegativeInteger = Literal[-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14, -15, -16, -17, -18, -19, -20]
-
class int:
@overload
- def __new__(cls: type[Self], __x: str | bytes | SupportsInt | SupportsIndex | SupportsTrunc = ...) -> Self: ...
+ def __new__(cls: Type[_T], x: str | bytes | SupportsInt | SupportsIndex | _SupportsTrunc = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], __x: str | bytes | bytearray, base: SupportsIndex) -> Self: ...
+ def __new__(cls: Type[_T], x: str | bytes | bytearray, base: SupportsIndex) -> _T: ...
if sys.version_info >= (3, 8):
def as_integer_ratio(self) -> tuple[int, Literal[1]]: ...
-
@property
def real(self) -> int: ...
@property
@@ -199,69 +191,55 @@ class int:
def bit_length(self) -> int: ...
if sys.version_info >= (3, 10):
def bit_count(self) -> int: ...
-
def to_bytes(self, length: SupportsIndex, byteorder: Literal["little", "big"], *, signed: bool = ...) -> bytes: ...
@classmethod
def from_bytes(
- cls: type[Self],
- bytes: Iterable[SupportsIndex] | SupportsBytes, # TODO buffer object argument
- byteorder: Literal["little", "big"],
- *,
- signed: bool = ...,
- ) -> Self: ...
- def __add__(self, __x: int) -> int: ...
- def __sub__(self, __x: int) -> int: ...
- def __mul__(self, __x: int) -> int: ...
- def __floordiv__(self, __x: int) -> int: ...
- def __truediv__(self, __x: int) -> float: ...
- def __mod__(self, __x: int) -> int: ...
- def __divmod__(self, __x: int) -> tuple[int, int]: ...
- def __radd__(self, __x: int) -> int: ...
- def __rsub__(self, __x: int) -> int: ...
- def __rmul__(self, __x: int) -> int: ...
- def __rfloordiv__(self, __x: int) -> int: ...
- def __rtruediv__(self, __x: int) -> float: ...
- def __rmod__(self, __x: int) -> int: ...
- def __rdivmod__(self, __x: int) -> tuple[int, int]: ...
- @overload
- def __pow__(self, __x: int, __modulo: Literal[0]) -> NoReturn: ...
- @overload
- def __pow__(self, __x: int, __modulo: int) -> int: ...
- @overload
- def __pow__(self, __x: Literal[0], __modulo: None = ...) -> Literal[1]: ...
- @overload
- def __pow__(self, __x: _PositiveInteger, __modulo: None = ...) -> int: ...
- @overload
- def __pow__(self, __x: _NegativeInteger, __modulo: None = ...) -> float: ...
- # positive x -> int; negative x -> float
- # return type must be Any as `int | float` causes too many false-positive errors
- @overload
- def __pow__(self, __x: int, __modulo: None = ...) -> Any: ...
- def __rpow__(self, __x: int, __mod: int | None = ...) -> Any: ...
- def __and__(self, __n: int) -> int: ...
- def __or__(self, __n: int) -> int: ...
- def __xor__(self, __n: int) -> int: ...
- def __lshift__(self, __n: int) -> int: ...
- def __rshift__(self, __n: int) -> int: ...
- def __rand__(self, __n: int) -> int: ...
- def __ror__(self, __n: int) -> int: ...
- def __rxor__(self, __n: int) -> int: ...
- def __rlshift__(self, __n: int) -> int: ...
- def __rrshift__(self, __n: int) -> int: ...
+ cls, bytes: Iterable[SupportsIndex] | SupportsBytes, byteorder: Literal["little", "big"], *, signed: bool = ...
+ ) -> int: ... # TODO buffer object argument
+ def __add__(self, x: int) -> int: ...
+ def __sub__(self, x: int) -> int: ...
+ def __mul__(self, x: int) -> int: ...
+ def __floordiv__(self, x: int) -> int: ...
+ def __truediv__(self, x: int) -> float: ...
+ def __mod__(self, x: int) -> int: ...
+ def __divmod__(self, x: int) -> tuple[int, int]: ...
+ def __radd__(self, x: int) -> int: ...
+ def __rsub__(self, x: int) -> int: ...
+ def __rmul__(self, x: int) -> int: ...
+ def __rfloordiv__(self, x: int) -> int: ...
+ def __rtruediv__(self, x: int) -> float: ...
+ def __rmod__(self, x: int) -> int: ...
+ def __rdivmod__(self, x: int) -> tuple[int, int]: ...
+ @overload
+ def __pow__(self, __x: Literal[2], __modulo: int | None = ...) -> int: ...
+ @overload
+ def __pow__(self, __x: int, __modulo: int | None = ...) -> Any: ... # Return type can be int or float, depending on x.
+ def __rpow__(self, x: int, mod: int | None = ...) -> Any: ...
+ def __and__(self, n: int) -> int: ...
+ def __or__(self, n: int) -> int: ...
+ def __xor__(self, n: int) -> int: ...
+ def __lshift__(self, n: int) -> int: ...
+ def __rshift__(self, n: int) -> int: ...
+ def __rand__(self, n: int) -> int: ...
+ def __ror__(self, n: int) -> int: ...
+ def __rxor__(self, n: int) -> int: ...
+ def __rlshift__(self, n: int) -> int: ...
+ def __rrshift__(self, n: int) -> int: ...
def __neg__(self) -> int: ...
def __pos__(self) -> int: ...
def __invert__(self) -> int: ...
def __trunc__(self) -> int: ...
def __ceil__(self) -> int: ...
def __floor__(self) -> int: ...
- def __round__(self, __ndigits: SupportsIndex = ...) -> int: ...
+ def __round__(self, ndigits: SupportsIndex = ...) -> int: ...
def __getnewargs__(self) -> tuple[int]: ...
- def __eq__(self, __x: object) -> bool: ...
- def __ne__(self, __x: object) -> bool: ...
- def __lt__(self, __x: int) -> bool: ...
- def __le__(self, __x: int) -> bool: ...
- def __gt__(self, __x: int) -> bool: ...
- def __ge__(self, __x: int) -> bool: ...
+ def __eq__(self, x: object) -> bool: ...
+ def __ne__(self, x: object) -> bool: ...
+ def __lt__(self, x: int) -> bool: ...
+ def __le__(self, x: int) -> bool: ...
+ def __gt__(self, x: int) -> bool: ...
+ def __ge__(self, x: int) -> bool: ...
+ def __str__(self) -> str: ...
def __float__(self) -> float: ...
def __int__(self) -> int: ...
def __abs__(self) -> int: ...
@@ -270,57 +248,53 @@ class int:
def __index__(self) -> int: ...
class float:
- def __new__(cls: type[Self], x: SupportsFloat | SupportsIndex | str | bytes | bytearray = ...) -> Self: ...
+ def __new__(cls: Type[_T], x: SupportsFloat | SupportsIndex | str | bytes | bytearray = ...) -> _T: ...
def as_integer_ratio(self) -> tuple[int, int]: ...
def hex(self) -> str: ...
def is_integer(self) -> bool: ...
@classmethod
- def fromhex(cls: type[Self], __s: str) -> Self: ...
+ def fromhex(cls, __s: str) -> float: ...
@property
def real(self) -> float: ...
@property
def imag(self) -> float: ...
def conjugate(self) -> float: ...
- def __add__(self, __x: float) -> float: ...
- def __sub__(self, __x: float) -> float: ...
- def __mul__(self, __x: float) -> float: ...
- def __floordiv__(self, __x: float) -> float: ...
- def __truediv__(self, __x: float) -> float: ...
- def __mod__(self, __x: float) -> float: ...
- def __divmod__(self, __x: float) -> tuple[float, float]: ...
- @overload
- def __pow__(self, __x: int, __mod: None = ...) -> float: ...
- # positive x -> float; negative x -> complex
- # return type must be Any as `float | complex` causes too many false-positive errors
- @overload
- def __pow__(self, __x: float, __mod: None = ...) -> Any: ...
- def __radd__(self, __x: float) -> float: ...
- def __rsub__(self, __x: float) -> float: ...
- def __rmul__(self, __x: float) -> float: ...
- def __rfloordiv__(self, __x: float) -> float: ...
- def __rtruediv__(self, __x: float) -> float: ...
- def __rmod__(self, __x: float) -> float: ...
- def __rdivmod__(self, __x: float) -> tuple[float, float]: ...
- # Returns complex if the argument is negative.
- def __rpow__(self, __x: float, __mod: None = ...) -> Any: ...
+ def __add__(self, x: float) -> float: ...
+ def __sub__(self, x: float) -> float: ...
+ def __mul__(self, x: float) -> float: ...
+ def __floordiv__(self, x: float) -> float: ...
+ def __truediv__(self, x: float) -> float: ...
+ def __mod__(self, x: float) -> float: ...
+ def __divmod__(self, x: float) -> tuple[float, float]: ...
+ def __pow__(
+ self, x: float, mod: None = ...
+ ) -> float: ... # In Python 3, returns complex if self is negative and x is not whole
+ def __radd__(self, x: float) -> float: ...
+ def __rsub__(self, x: float) -> float: ...
+ def __rmul__(self, x: float) -> float: ...
+ def __rfloordiv__(self, x: float) -> float: ...
+ def __rtruediv__(self, x: float) -> float: ...
+ def __rmod__(self, x: float) -> float: ...
+ def __rdivmod__(self, x: float) -> tuple[float, float]: ...
+ def __rpow__(self, x: float, mod: None = ...) -> float: ...
def __getnewargs__(self) -> tuple[float]: ...
def __trunc__(self) -> int: ...
if sys.version_info >= (3, 9):
def __ceil__(self) -> int: ...
def __floor__(self) -> int: ...
-
@overload
- def __round__(self, __ndigits: None = ...) -> int: ...
+ def __round__(self, ndigits: None = ...) -> int: ...
@overload
- def __round__(self, __ndigits: SupportsIndex) -> float: ...
- def __eq__(self, __x: object) -> bool: ...
- def __ne__(self, __x: object) -> bool: ...
- def __lt__(self, __x: float) -> bool: ...
- def __le__(self, __x: float) -> bool: ...
- def __gt__(self, __x: float) -> bool: ...
- def __ge__(self, __x: float) -> bool: ...
+ def __round__(self, ndigits: SupportsIndex) -> float: ...
+ def __eq__(self, x: object) -> bool: ...
+ def __ne__(self, x: object) -> bool: ...
+ def __lt__(self, x: float) -> bool: ...
+ def __le__(self, x: float) -> bool: ...
+ def __gt__(self, x: float) -> bool: ...
+ def __ge__(self, x: float) -> bool: ...
def __neg__(self) -> float: ...
def __pos__(self) -> float: ...
+ def __str__(self) -> str: ...
def __int__(self) -> int: ...
def __float__(self) -> float: ...
def __abs__(self) -> float: ...
@@ -329,55 +303,53 @@ class float:
class complex:
@overload
- def __new__(cls: type[Self], real: float = ..., imag: float = ...) -> Self: ...
+ def __new__(cls: Type[_T], real: float = ..., imag: float = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], real: str | SupportsComplex | SupportsIndex | complex) -> Self: ...
+ def __new__(cls: Type[_T], real: str | SupportsComplex | SupportsIndex | complex) -> _T: ...
@property
def real(self) -> float: ...
@property
def imag(self) -> float: ...
def conjugate(self) -> complex: ...
- def __add__(self, __x: complex) -> complex: ...
- def __sub__(self, __x: complex) -> complex: ...
- def __mul__(self, __x: complex) -> complex: ...
- def __pow__(self, __x: complex, mod: None = ...) -> complex: ...
- def __truediv__(self, __x: complex) -> complex: ...
- def __radd__(self, __x: complex) -> complex: ...
- def __rsub__(self, __x: complex) -> complex: ...
- def __rmul__(self, __x: complex) -> complex: ...
- def __rpow__(self, __x: complex, __mod: None = ...) -> complex: ...
- def __rtruediv__(self, __x: complex) -> complex: ...
- def __eq__(self, __x: object) -> bool: ...
- def __ne__(self, __x: object) -> bool: ...
+ def __add__(self, x: complex) -> complex: ...
+ def __sub__(self, x: complex) -> complex: ...
+ def __mul__(self, x: complex) -> complex: ...
+ def __pow__(self, x: complex, mod: None = ...) -> complex: ...
+ def __truediv__(self, x: complex) -> complex: ...
+ def __radd__(self, x: complex) -> complex: ...
+ def __rsub__(self, x: complex) -> complex: ...
+ def __rmul__(self, x: complex) -> complex: ...
+ def __rpow__(self, x: complex, mod: None = ...) -> complex: ...
+ def __rtruediv__(self, x: complex) -> complex: ...
+ def __eq__(self, x: object) -> bool: ...
+ def __ne__(self, x: object) -> bool: ...
def __neg__(self) -> complex: ...
def __pos__(self) -> complex: ...
+ def __str__(self) -> str: ...
def __abs__(self) -> float: ...
def __hash__(self) -> int: ...
def __bool__(self) -> bool: ...
- if sys.version_info >= (3, 11):
- def __complex__(self) -> complex: ...
class _FormatMapMapping(Protocol):
def __getitem__(self, __key: str) -> Any: ...
class str(Sequence[str]):
@overload
- def __new__(cls: type[Self], object: object = ...) -> Self: ...
+ def __new__(cls: Type[_T], o: object = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], o: bytes, encoding: str = ..., errors: str = ...) -> Self: ...
+ def __new__(cls: Type[_T], o: bytes, encoding: str = ..., errors: str = ...) -> _T: ...
def capitalize(self) -> str: ...
def casefold(self) -> str: ...
def center(self, __width: SupportsIndex, __fillchar: str = ...) -> str: ...
def count(self, x: str, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...) -> int: ...
def encode(self, encoding: str = ..., errors: str = ...) -> bytes: ...
def endswith(
- self, __suffix: str | tuple[str, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
+ self, __suffix: str | Tuple[str, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> bool: ...
if sys.version_info >= (3, 8):
def expandtabs(self, tabsize: SupportsIndex = ...) -> str: ...
else:
def expandtabs(self, tabsize: int = ...) -> str: ...
-
def find(self, __sub: str, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...) -> int: ...
def format(self, *args: object, **kwargs: object) -> str: ...
def format_map(self, map: _FormatMapMapping) -> str: ...
@@ -386,7 +358,6 @@ class str(Sequence[str]):
def isalpha(self) -> bool: ...
if sys.version_info >= (3, 7):
def isascii(self) -> bool: ...
-
def isdecimal(self) -> bool: ...
def isdigit(self) -> bool: ...
def isidentifier(self) -> bool: ...
@@ -405,7 +376,6 @@ class str(Sequence[str]):
if sys.version_info >= (3, 9):
def removeprefix(self, __prefix: str) -> str: ...
def removesuffix(self, __suffix: str) -> str: ...
-
def rfind(self, __sub: str, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...) -> int: ...
def rindex(self, __sub: str, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...) -> int: ...
def rjust(self, __width: SupportsIndex, __fillchar: str = ...) -> str: ...
@@ -415,7 +385,7 @@ class str(Sequence[str]):
def split(self, sep: str | None = ..., maxsplit: SupportsIndex = ...) -> list[str]: ...
def splitlines(self, keepends: bool = ...) -> list[str]: ...
def startswith(
- self, __prefix: str | tuple[str, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
+ self, __prefix: str | Tuple[str, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> bool: ...
def strip(self, __chars: str | None = ...) -> str: ...
def swapcase(self) -> str: ...
@@ -429,35 +399,37 @@ class str(Sequence[str]):
@staticmethod
@overload
def maketrans(__x: str, __y: str, __z: str | None = ...) -> dict[int, int | None]: ...
- def __add__(self, __s: str) -> str: ...
+ def __add__(self, s: str) -> str: ...
# Incompatible with Sequence.__contains__
- def __contains__(self, __o: str) -> bool: ... # type: ignore[override]
- def __eq__(self, __x: object) -> bool: ...
- def __ge__(self, __x: str) -> bool: ...
- def __getitem__(self, __i: SupportsIndex | slice) -> str: ...
- def __gt__(self, __x: str) -> bool: ...
+ def __contains__(self, o: str) -> bool: ... # type: ignore
+ def __eq__(self, x: object) -> bool: ...
+ def __ge__(self, x: str) -> bool: ...
+ def __getitem__(self, i: int | slice) -> str: ...
+ def __gt__(self, x: str) -> bool: ...
def __hash__(self) -> int: ...
def __iter__(self) -> Iterator[str]: ...
- def __le__(self, __x: str) -> bool: ...
+ def __le__(self, x: str) -> bool: ...
def __len__(self) -> int: ...
- def __lt__(self, __x: str) -> bool: ...
- def __mod__(self, __x: Any) -> str: ...
- def __mul__(self, __n: SupportsIndex) -> str: ...
- def __ne__(self, __x: object) -> bool: ...
+ def __lt__(self, x: str) -> bool: ...
+ def __mod__(self, x: Any) -> str: ...
+ def __mul__(self, n: SupportsIndex) -> str: ...
+ def __ne__(self, x: object) -> bool: ...
+ def __repr__(self) -> str: ...
def __rmul__(self, n: SupportsIndex) -> str: ...
+ def __str__(self) -> str: ...
def __getnewargs__(self) -> tuple[str]: ...
class bytes(ByteString):
@overload
- def __new__(cls: type[Self], __ints: Iterable[SupportsIndex]) -> Self: ...
+ def __new__(cls: Type[_T], ints: Iterable[SupportsIndex]) -> _T: ...
@overload
- def __new__(cls: type[Self], __string: str, encoding: str, errors: str = ...) -> Self: ...
+ def __new__(cls: Type[_T], string: str, encoding: str, errors: str = ...) -> _T: ...
@overload
- def __new__(cls: type[Self], __length: SupportsIndex) -> Self: ...
+ def __new__(cls: Type[_T], length: SupportsIndex) -> _T: ...
@overload
- def __new__(cls: type[Self]) -> Self: ...
+ def __new__(cls: Type[_T]) -> _T: ...
@overload
- def __new__(cls: type[Self], __o: SupportsBytes) -> Self: ...
+ def __new__(cls: Type[_T], o: SupportsBytes) -> _T: ...
def capitalize(self) -> bytes: ...
def center(self, __width: SupportsIndex, __fillchar: bytes = ...) -> bytes: ...
def count(
@@ -465,13 +437,12 @@ class bytes(ByteString):
) -> int: ...
def decode(self, encoding: str = ..., errors: str = ...) -> str: ...
def endswith(
- self, __suffix: bytes | tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
+ self, __suffix: bytes | Tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> bool: ...
if sys.version_info >= (3, 8):
def expandtabs(self, tabsize: SupportsIndex = ...) -> bytes: ...
else:
def expandtabs(self, tabsize: int = ...) -> bytes: ...
-
def find(
self, __sub: bytes | SupportsIndex, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> int: ...
@@ -479,7 +450,6 @@ class bytes(ByteString):
def hex(self, sep: str | bytes = ..., bytes_per_sep: SupportsIndex = ...) -> str: ...
else:
def hex(self) -> str: ...
-
def index(
self, __sub: bytes | SupportsIndex, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> int: ...
@@ -487,7 +457,6 @@ class bytes(ByteString):
def isalpha(self) -> bool: ...
if sys.version_info >= (3, 7):
def isascii(self) -> bool: ...
-
def isdigit(self) -> bool: ...
def islower(self) -> bool: ...
def isspace(self) -> bool: ...
@@ -502,7 +471,6 @@ class bytes(ByteString):
if sys.version_info >= (3, 9):
def removeprefix(self, __prefix: bytes) -> bytes: ...
def removesuffix(self, __suffix: bytes) -> bytes: ...
-
def rfind(
self, __sub: bytes | SupportsIndex, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> int: ...
@@ -516,7 +484,7 @@ class bytes(ByteString):
def split(self, sep: bytes | None = ..., maxsplit: SupportsIndex = ...) -> list[bytes]: ...
def splitlines(self, keepends: bool = ...) -> list[bytes]: ...
def startswith(
- self, __prefix: bytes | tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
+ self, __prefix: bytes | Tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> bool: ...
def strip(self, __bytes: bytes | None = ...) -> bytes: ...
def swapcase(self) -> bytes: ...
@@ -525,41 +493,41 @@ class bytes(ByteString):
def upper(self) -> bytes: ...
def zfill(self, __width: SupportsIndex) -> bytes: ...
@classmethod
- def fromhex(cls: type[Self], __s: str) -> Self: ...
+ def fromhex(cls, __s: str) -> bytes: ...
@staticmethod
def maketrans(__frm: bytes, __to: bytes) -> bytes: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[int]: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
def __hash__(self) -> int: ...
@overload
- def __getitem__(self, __i: SupportsIndex) -> int: ...
+ def __getitem__(self, i: SupportsIndex) -> int: ...
@overload
- def __getitem__(self, __s: slice) -> bytes: ...
- def __add__(self, __s: bytes) -> bytes: ...
- def __mul__(self, __n: SupportsIndex) -> bytes: ...
- def __rmul__(self, __n: SupportsIndex) -> bytes: ...
- def __mod__(self, __value: Any) -> bytes: ...
+ def __getitem__(self, s: slice) -> bytes: ...
+ def __add__(self, s: bytes) -> bytes: ...
+ def __mul__(self, n: SupportsIndex) -> bytes: ...
+ def __rmul__(self, n: SupportsIndex) -> bytes: ...
+ def __mod__(self, value: Any) -> bytes: ...
# Incompatible with Sequence.__contains__
- def __contains__(self, __o: SupportsIndex | bytes) -> bool: ... # type: ignore[override]
- def __eq__(self, __x: object) -> bool: ...
- def __ne__(self, __x: object) -> bool: ...
- def __lt__(self, __x: bytes) -> bool: ...
- def __le__(self, __x: bytes) -> bool: ...
- def __gt__(self, __x: bytes) -> bool: ...
- def __ge__(self, __x: bytes) -> bool: ...
+ def __contains__(self, o: SupportsIndex | bytes) -> bool: ... # type: ignore
+ def __eq__(self, x: object) -> bool: ...
+ def __ne__(self, x: object) -> bool: ...
+ def __lt__(self, x: bytes) -> bool: ...
+ def __le__(self, x: bytes) -> bool: ...
+ def __gt__(self, x: bytes) -> bool: ...
+ def __ge__(self, x: bytes) -> bool: ...
def __getnewargs__(self) -> tuple[bytes]: ...
- if sys.version_info >= (3, 11):
- def __bytes__(self) -> bytes: ...
class bytearray(MutableSequence[int], ByteString):
@overload
def __init__(self) -> None: ...
@overload
- def __init__(self, __ints: Iterable[SupportsIndex]) -> None: ...
+ def __init__(self, ints: Iterable[SupportsIndex]) -> None: ...
@overload
- def __init__(self, __string: str, encoding: str, errors: str = ...) -> None: ...
+ def __init__(self, string: str, encoding: str, errors: str = ...) -> None: ...
@overload
- def __init__(self, __length: SupportsIndex) -> None: ...
+ def __init__(self, length: SupportsIndex) -> None: ...
def append(self, __item: SupportsIndex) -> None: ...
def capitalize(self) -> bytearray: ...
def center(self, __width: SupportsIndex, __fillchar: bytes = ...) -> bytearray: ...
@@ -569,13 +537,12 @@ class bytearray(MutableSequence[int], ByteString):
def copy(self) -> bytearray: ...
def decode(self, encoding: str = ..., errors: str = ...) -> str: ...
def endswith(
- self, __suffix: bytes | tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
+ self, __suffix: bytes | Tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> bool: ...
if sys.version_info >= (3, 8):
def expandtabs(self, tabsize: SupportsIndex = ...) -> bytearray: ...
else:
def expandtabs(self, tabsize: int = ...) -> bytearray: ...
-
def extend(self, __iterable_of_ints: Iterable[SupportsIndex]) -> None: ...
def find(
self, __sub: bytes | SupportsIndex, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
@@ -584,7 +551,6 @@ class bytearray(MutableSequence[int], ByteString):
def hex(self, sep: str | bytes = ..., bytes_per_sep: SupportsIndex = ...) -> str: ...
else:
def hex(self) -> str: ...
-
def index(
self, __sub: bytes | SupportsIndex, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> int: ...
@@ -593,7 +559,6 @@ class bytearray(MutableSequence[int], ByteString):
def isalpha(self) -> bool: ...
if sys.version_info >= (3, 7):
def isascii(self) -> bool: ...
-
def isdigit(self) -> bool: ...
def islower(self) -> bool: ...
def isspace(self) -> bool: ...
@@ -607,7 +572,6 @@ class bytearray(MutableSequence[int], ByteString):
if sys.version_info >= (3, 9):
def removeprefix(self, __prefix: bytes) -> bytearray: ...
def removesuffix(self, __suffix: bytes) -> bytearray: ...
-
def replace(self, __old: bytes, __new: bytes, __count: SupportsIndex = ...) -> bytearray: ...
def rfind(
self, __sub: bytes | SupportsIndex, __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
@@ -622,7 +586,7 @@ class bytearray(MutableSequence[int], ByteString):
def split(self, sep: bytes | None = ..., maxsplit: SupportsIndex = ...) -> list[bytearray]: ...
def splitlines(self, keepends: bool = ...) -> list[bytearray]: ...
def startswith(
- self, __prefix: bytes | tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
+ self, __prefix: bytes | Tuple[bytes, ...], __start: SupportsIndex | None = ..., __end: SupportsIndex | None = ...
) -> bool: ...
def strip(self, __bytes: bytes | None = ...) -> bytearray: ...
def swapcase(self) -> bytearray: ...
@@ -631,88 +595,76 @@ class bytearray(MutableSequence[int], ByteString):
def upper(self) -> bytearray: ...
def zfill(self, __width: SupportsIndex) -> bytearray: ...
@classmethod
- def fromhex(cls: type[Self], __string: str) -> Self: ...
+ def fromhex(cls, __string: str) -> bytearray: ...
@staticmethod
def maketrans(__frm: bytes, __to: bytes) -> bytes: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[int]: ...
- __hash__: None # type: ignore[assignment]
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
+ __hash__: None # type: ignore
@overload
- def __getitem__(self, __i: SupportsIndex) -> int: ...
+ def __getitem__(self, i: SupportsIndex) -> int: ...
@overload
- def __getitem__(self, __s: slice) -> bytearray: ...
+ def __getitem__(self, s: slice) -> bytearray: ...
@overload
- def __setitem__(self, __i: SupportsIndex, x: SupportsIndex) -> None: ...
+ def __setitem__(self, i: SupportsIndex, x: SupportsIndex) -> None: ...
@overload
- def __setitem__(self, __s: slice, __x: Iterable[SupportsIndex] | bytes) -> None: ...
- def __delitem__(self, __i: SupportsIndex | slice) -> None: ...
- def __add__(self, __s: bytes) -> bytearray: ...
- def __iadd__(self: Self, __s: Iterable[int]) -> Self: ...
- def __mul__(self, __n: SupportsIndex) -> bytearray: ...
- def __rmul__(self, __n: SupportsIndex) -> bytearray: ...
- def __imul__(self: Self, __n: SupportsIndex) -> Self: ...
- def __mod__(self, __value: Any) -> bytes: ...
+ def __setitem__(self, s: slice, x: Iterable[SupportsIndex] | bytes) -> None: ...
+ def __delitem__(self, i: SupportsIndex | slice) -> None: ...
+ def __add__(self, s: bytes) -> bytearray: ...
+ def __iadd__(self, s: Iterable[int]) -> bytearray: ...
+ def __mul__(self, n: SupportsIndex) -> bytearray: ...
+ def __rmul__(self, n: SupportsIndex) -> bytearray: ...
+ def __imul__(self, n: SupportsIndex) -> bytearray: ...
+ def __mod__(self, value: Any) -> bytes: ...
# Incompatible with Sequence.__contains__
- def __contains__(self, __o: SupportsIndex | bytes) -> bool: ... # type: ignore[override]
- def __eq__(self, __x: object) -> bool: ...
- def __ne__(self, __x: object) -> bool: ...
- def __lt__(self, __x: bytes) -> bool: ...
- def __le__(self, __x: bytes) -> bool: ...
- def __gt__(self, __x: bytes) -> bool: ...
- def __ge__(self, __x: bytes) -> bool: ...
+ def __contains__(self, o: SupportsIndex | bytes) -> bool: ... # type: ignore
+ def __eq__(self, x: object) -> bool: ...
+ def __ne__(self, x: object) -> bool: ...
+ def __lt__(self, x: bytes) -> bool: ...
+ def __le__(self, x: bytes) -> bool: ...
+ def __gt__(self, x: bytes) -> bool: ...
+ def __ge__(self, x: bytes) -> bool: ...
-@final
class memoryview(Sized, Sequence[int]):
- @property
- def format(self) -> str: ...
- @property
- def itemsize(self) -> int: ...
- @property
- def shape(self) -> tuple[int, ...] | None: ...
- @property
- def strides(self) -> tuple[int, ...] | None: ...
- @property
- def suboffsets(self) -> tuple[int, ...] | None: ...
- @property
- def readonly(self) -> bool: ...
- @property
- def ndim(self) -> int: ...
- @property
- def obj(self) -> bytes | bytearray: ...
- @property
- def c_contiguous(self) -> bool: ...
- @property
- def f_contiguous(self) -> bool: ...
- @property
- def contiguous(self) -> bool: ...
- @property
- def nbytes(self) -> int: ...
+ format: str
+ itemsize: int
+ shape: Tuple[int, ...] | None
+ strides: Tuple[int, ...] | None
+ suboffsets: Tuple[int, ...] | None
+ readonly: bool
+ ndim: int
+
+ obj: bytes | bytearray
+ c_contiguous: bool
+ f_contiguous: bool
+ contiguous: bool
+ nbytes: int
def __init__(self, obj: ReadableBuffer) -> None: ...
def __enter__(self: Self) -> Self: ...
def __exit__(
- self, __exc_type: type[BaseException] | None, __exc_val: BaseException | None, __exc_tb: TracebackType | None
+ self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
) -> None: ...
- def cast(self, format: str, shape: list[int] | tuple[int, ...] = ...) -> memoryview: ...
+ def cast(self, format: str, shape: list[int] | Tuple[int, ...] = ...) -> memoryview: ...
@overload
- def __getitem__(self, __i: SupportsIndex) -> int: ...
+ def __getitem__(self, i: SupportsIndex) -> int: ...
@overload
- def __getitem__(self, __s: slice) -> memoryview: ...
- def __contains__(self, __x: object) -> bool: ...
+ def __getitem__(self, s: slice) -> memoryview: ...
+ def __contains__(self, x: object) -> bool: ...
def __iter__(self) -> Iterator[int]: ...
def __len__(self) -> int: ...
@overload
- def __setitem__(self, __s: slice, __o: bytes) -> None: ...
+ def __setitem__(self, s: slice, o: bytes) -> None: ...
@overload
- def __setitem__(self, __i: SupportsIndex, __o: SupportsIndex) -> None: ...
+ def __setitem__(self, i: SupportsIndex, o: SupportsIndex) -> None: ...
if sys.version_info >= (3, 8):
def tobytes(self, order: Literal["C", "F", "A"] | None = ...) -> bytes: ...
else:
def tobytes(self) -> bytes: ...
-
def tolist(self) -> list[int]: ...
if sys.version_info >= (3, 8):
def toreadonly(self) -> memoryview: ...
-
def release(self) -> None: ...
if sys.version_info >= (3, 8):
def hex(self, sep: str | bytes = ..., bytes_per_sep: SupportsIndex = ...) -> str: ...
@@ -721,280 +673,272 @@ class memoryview(Sized, Sequence[int]):
@final
class bool(int):
- def __new__(cls: type[Self], __o: object = ...) -> Self: ...
+ def __new__(cls: Type[_T], __o: object = ...) -> _T: ...
@overload
- def __and__(self, __x: bool) -> bool: ...
+ def __and__(self, x: bool) -> bool: ...
@overload
- def __and__(self, __x: int) -> int: ...
+ def __and__(self, x: int) -> int: ...
@overload
- def __or__(self, __x: bool) -> bool: ...
+ def __or__(self, x: bool) -> bool: ...
@overload
- def __or__(self, __x: int) -> int: ...
+ def __or__(self, x: int) -> int: ...
@overload
- def __xor__(self, __x: bool) -> bool: ...
+ def __xor__(self, x: bool) -> bool: ...
@overload
- def __xor__(self, __x: int) -> int: ...
+ def __xor__(self, x: int) -> int: ...
@overload
- def __rand__(self, __x: bool) -> bool: ...
+ def __rand__(self, x: bool) -> bool: ...
@overload
- def __rand__(self, __x: int) -> int: ...
+ def __rand__(self, x: int) -> int: ...
@overload
- def __ror__(self, __x: bool) -> bool: ...
+ def __ror__(self, x: bool) -> bool: ...
@overload
- def __ror__(self, __x: int) -> int: ...
+ def __ror__(self, x: int) -> int: ...
@overload
- def __rxor__(self, __x: bool) -> bool: ...
+ def __rxor__(self, x: bool) -> bool: ...
@overload
- def __rxor__(self, __x: int) -> int: ...
+ def __rxor__(self, x: int) -> int: ...
def __getnewargs__(self) -> tuple[int]: ...
-@final
-class slice:
- @property
- def start(self) -> Any: ...
- @property
- def step(self) -> Any: ...
- @property
- def stop(self) -> Any: ...
+class slice(object):
+ start: Any
+ step: Any
+ stop: Any
@overload
- def __init__(self, __stop: Any) -> None: ...
+ def __init__(self, stop: Any) -> None: ...
@overload
- def __init__(self, __start: Any, __stop: Any, __step: Any = ...) -> None: ...
- __hash__: None # type: ignore[assignment]
- def indices(self, __len: SupportsIndex) -> tuple[int, int, int]: ...
+ def __init__(self, start: Any, stop: Any, step: Any = ...) -> None: ...
+ __hash__: None # type: ignore
+ def indices(self, len: SupportsIndex) -> tuple[int, int, int]: ...
class tuple(Sequence[_T_co], Generic[_T_co]):
- def __new__(cls: type[Self], __iterable: Iterable[_T_co] = ...) -> Self: ...
+ def __new__(cls: Type[_T], iterable: Iterable[_T_co] = ...) -> _T: ...
def __len__(self) -> int: ...
- def __contains__(self, __x: object) -> bool: ...
+ def __contains__(self, x: object) -> bool: ...
@overload
- def __getitem__(self, __x: SupportsIndex) -> _T_co: ...
+ def __getitem__(self, x: int) -> _T_co: ...
@overload
- def __getitem__(self, __x: slice) -> tuple[_T_co, ...]: ...
+ def __getitem__(self, x: slice) -> Tuple[_T_co, ...]: ...
def __iter__(self) -> Iterator[_T_co]: ...
- def __lt__(self, __x: tuple[_T_co, ...]) -> bool: ...
- def __le__(self, __x: tuple[_T_co, ...]) -> bool: ...
- def __gt__(self, __x: tuple[_T_co, ...]) -> bool: ...
- def __ge__(self, __x: tuple[_T_co, ...]) -> bool: ...
+ def __lt__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __le__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __gt__(self, x: Tuple[_T_co, ...]) -> bool: ...
+ def __ge__(self, x: Tuple[_T_co, ...]) -> bool: ...
@overload
- def __add__(self, __x: tuple[_T_co, ...]) -> tuple[_T_co, ...]: ...
+ def __add__(self, x: Tuple[_T_co, ...]) -> Tuple[_T_co, ...]: ...
@overload
- def __add__(self, __x: tuple[_T, ...]) -> tuple[_T_co | _T, ...]: ...
- def __mul__(self, __n: SupportsIndex) -> tuple[_T_co, ...]: ...
- def __rmul__(self, __n: SupportsIndex) -> tuple[_T_co, ...]: ...
+ def __add__(self, x: Tuple[_T, ...]) -> Tuple[_T_co | _T, ...]: ...
+ def __mul__(self, n: SupportsIndex) -> Tuple[_T_co, ...]: ...
+ def __rmul__(self, n: SupportsIndex) -> Tuple[_T_co, ...]: ...
def count(self, __value: Any) -> int: ...
def index(self, __value: Any, __start: SupportsIndex = ..., __stop: SupportsIndex = ...) -> int: ...
if sys.version_info >= (3, 9):
- def __class_getitem__(cls, __item: Any) -> GenericAlias: ...
+ def __class_getitem__(cls, item: Any) -> GenericAlias: ...
-# Doesn't exist at runtime, but deleting this breaks mypy. See #2999
-@final
class function:
- # Make sure this class definition stays roughly in line with `types.FunctionType`
- __closure__: tuple[_Cell, ...] | None
- __code__: CodeType
- __defaults__: tuple[Any, ...] | None
- __dict__: dict[str, Any]
- __globals__: dict[str, Any]
+ # TODO not defined in builtins!
__name__: str
+ __module__: str
+ __code__: CodeType
__qualname__: str
__annotations__: dict[str, Any]
- __kwdefaults__: dict[str, Any]
- __module__: str
- # mypy uses `builtins.function.__get__` to represent methods, properties, and getset_descriptors so we type the return as Any.
- def __get__(self, obj: object | None, type: type | None = ...) -> Any: ...
class list(MutableSequence[_T], Generic[_T]):
@overload
def __init__(self) -> None: ...
@overload
- def __init__(self, __iterable: Iterable[_T]) -> None: ...
+ def __init__(self, iterable: Iterable[_T]) -> None: ...
+ def clear(self) -> None: ...
def copy(self) -> list[_T]: ...
def append(self, __object: _T) -> None: ...
def extend(self, __iterable: Iterable[_T]) -> None: ...
def pop(self, __index: SupportsIndex = ...) -> _T: ...
- # Signature of `list.index` should be kept in line with `collections.UserList.index()`
def index(self, __value: _T, __start: SupportsIndex = ..., __stop: SupportsIndex = ...) -> int: ...
def count(self, __value: _T) -> int: ...
def insert(self, __index: SupportsIndex, __object: _T) -> None: ...
def remove(self, __value: _T) -> None: ...
- # Signature of `list.sort` should be kept inline with `collections.UserList.sort()`
+ def reverse(self) -> None: ...
@overload
- def sort(self: list[SupportsRichComparisonT], *, key: None = ..., reverse: bool = ...) -> None: ...
+ def sort(self: list[SupportsLessThanT], *, key: None = ..., reverse: bool = ...) -> None: ...
@overload
- def sort(self, *, key: Callable[[_T], SupportsRichComparison], reverse: bool = ...) -> None: ...
+ def sort(self, *, key: Callable[[_T], SupportsLessThan], reverse: bool = ...) -> None: ...
def __len__(self) -> int: ...
def __iter__(self) -> Iterator[_T]: ...
- __hash__: None # type: ignore[assignment]
+ def __str__(self) -> str: ...
+ __hash__: None # type: ignore
@overload
- def __getitem__(self, __i: SupportsIndex) -> _T: ...
+ def __getitem__(self, i: SupportsIndex) -> _T: ...
@overload
- def __getitem__(self, __s: slice) -> list[_T]: ...
+ def __getitem__(self, s: slice) -> list[_T]: ...
@overload
- def __setitem__(self, __i: SupportsIndex, __o: _T) -> None: ...
+ def __setitem__(self, i: SupportsIndex, o: _T) -> None: ...
@overload
- def __setitem__(self, __s: slice, __o: Iterable[_T]) -> None: ...
- def __delitem__(self, __i: SupportsIndex | slice) -> None: ...
- def __add__(self, __x: list[_T]) -> list[_T]: ...
- def __iadd__(self: Self, __x: Iterable[_T]) -> Self: ...
- def __mul__(self, __n: SupportsIndex) -> list[_T]: ...
- def __rmul__(self, __n: SupportsIndex) -> list[_T]: ...
- def __imul__(self: Self, __n: SupportsIndex) -> Self: ...
- def __contains__(self, __o: object) -> bool: ...
+ def __setitem__(self, s: slice, o: Iterable[_T]) -> None: ...
+ def __delitem__(self, i: SupportsIndex | slice) -> None: ...
+ def __add__(self, x: list[_T]) -> list[_T]: ...
+ def __iadd__(self: _S, x: Iterable[_T]) -> _S: ...
+ def __mul__(self, n: SupportsIndex) -> list[_T]: ...
+ def __rmul__(self, n: SupportsIndex) -> list[_T]: ...
+ def __imul__(self: _S, n: SupportsIndex) -> _S: ...
+ def __contains__(self, o: object) -> bool: ...
def __reversed__(self) -> Iterator[_T]: ...
- def __gt__(self, __x: list[_T]) -> bool: ...
- def __ge__(self, __x: list[_T]) -> bool: ...
- def __lt__(self, __x: list[_T]) -> bool: ...
- def __le__(self, __x: list[_T]) -> bool: ...
+ def __gt__(self, x: list[_T]) -> bool: ...
+ def __ge__(self, x: list[_T]) -> bool: ...
+ def __lt__(self, x: list[_T]) -> bool: ...
+ def __le__(self, x: list[_T]) -> bool: ...
if sys.version_info >= (3, 9):
- def __class_getitem__(cls, __item: Any) -> GenericAlias: ...
+ def __class_getitem__(cls, item: Any) -> GenericAlias: ...
+
+class _dict_keys(KeysView[_KT_co], Generic[_KT_co, _VT_co]):
+ if sys.version_info >= (3, 10):
+ mapping: MappingProxyType[_KT_co, _VT_co]
+
+# The generics are the wrong way around because of a mypy limitation
+# https://github.com/python/mypy/issues/11138
+class _dict_values(ValuesView[_VT_co], Generic[_VT_co, _KT_co]):
+ if sys.version_info >= (3, 10):
+ mapping: MappingProxyType[_KT_co, _VT_co]
+
+class _dict_items(ItemsView[_KT_co, _VT_co], Generic[_KT_co, _VT_co]):
+ if sys.version_info >= (3, 10):
+ mapping: MappingProxyType[_KT_co, _VT_co]
class dict(MutableMapping[_KT, _VT], Generic[_KT, _VT]):
- # __init__ should be kept roughly in line with `collections.UserDict.__init__`, which has similar semantics
+ # NOTE: Keyword arguments are special. If they are used, _KT must include
+ # str, but we have no way of enforcing it here.
@overload
- def __init__(self: dict[_KT, _VT]) -> None: ...
+ def __init__(self, **kwargs: _VT) -> None: ...
@overload
- def __init__(self: dict[str, _VT], **kwargs: _VT) -> None: ...
+ def __init__(self, map: SupportsKeysAndGetItem[_KT, _VT], **kwargs: _VT) -> None: ...
@overload
- def __init__(self, __map: SupportsKeysAndGetItem[_KT, _VT], **kwargs: _VT) -> None: ...
+ def __init__(self, iterable: Iterable[Tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
+ def __new__(cls: Type[_T1], *args: Any, **kwargs: Any) -> _T1: ...
+ def clear(self) -> None: ...
+ def copy(self) -> dict[_KT, _VT]: ...
+ def popitem(self) -> tuple[_KT, _VT]: ...
+ def setdefault(self, __key: _KT, __default: _VT = ...) -> _VT: ...
@overload
- def __init__(self, __iterable: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
- # Next overload is for dict(string.split(sep) for string in iterable)
- # Cannot be Iterable[Sequence[_T]] or otherwise dict(["foo", "bar", "baz"]) is not an error
+ def update(self, __m: Mapping[_KT, _VT], **kwargs: _VT) -> None: ...
@overload
- def __init__(self: dict[str, str], __iterable: Iterable[list[str]]) -> None: ...
- def __new__(cls: type[Self], *args: Any, **kwargs: Any) -> Self: ...
- def copy(self) -> dict[_KT, _VT]: ...
- def keys(self) -> dict_keys[_KT, _VT]: ...
- def values(self) -> dict_values[_KT, _VT]: ...
- def items(self) -> dict_items[_KT, _VT]: ...
- # Signature of `dict.fromkeys` should be kept identical to `fromkeys` methods of `OrderedDict`/`ChainMap`/`UserDict` in `collections`
- # TODO: the true signature of `dict.fromkeys` is not expressible in the current type system.
- # See #3800 & https://github.com/python/typing/issues/548#issuecomment-683336963.
+ def update(self, __m: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> None: ...
+ @overload
+ def update(self, **kwargs: _VT) -> None: ...
+ def keys(self) -> _dict_keys[_KT, _VT]: ...
+ def values(self) -> _dict_values[_VT, _KT]: ...
+ def items(self) -> _dict_items[_KT, _VT]: ...
@classmethod
@overload
def fromkeys(cls, __iterable: Iterable[_T], __value: None = ...) -> dict[_T, Any | None]: ...
@classmethod
@overload
def fromkeys(cls, __iterable: Iterable[_T], __value: _S) -> dict[_T, _S]: ...
- # Positional-only in dict, but not in MutableMapping
- @overload
- def get(self, __key: _KT) -> _VT | None: ...
- @overload
- def get(self, __key: _KT, __default: _VT | _T) -> _VT | _T: ...
- @overload
- def pop(self, __key: _KT) -> _VT: ...
- @overload
- def pop(self, __key: _KT, __default: _VT | _T = ...) -> _VT | _T: ...
def __len__(self) -> int: ...
- def __getitem__(self, __k: _KT) -> _VT: ...
- def __setitem__(self, __k: _KT, v: _VT) -> None: ...
- def __delitem__(self, __v: _KT) -> None: ...
+ def __getitem__(self, k: _KT) -> _VT: ...
+ def __setitem__(self, k: _KT, v: _VT) -> None: ...
+ def __delitem__(self, v: _KT) -> None: ...
def __iter__(self) -> Iterator[_KT]: ...
if sys.version_info >= (3, 8):
def __reversed__(self) -> Iterator[_KT]: ...
- __hash__: None # type: ignore[assignment]
+ def __str__(self) -> str: ...
+ __hash__: None # type: ignore
if sys.version_info >= (3, 9):
- def __class_getitem__(cls, __item: Any) -> GenericAlias: ...
+ def __class_getitem__(cls, item: Any) -> GenericAlias: ...
def __or__(self, __value: Mapping[_T1, _T2]) -> dict[_KT | _T1, _VT | _T2]: ...
def __ror__(self, __value: Mapping[_T1, _T2]) -> dict[_KT | _T1, _VT | _T2]: ...
- # dict.__ior__ should be kept roughly in line with MutableMapping.update()
- @overload # type: ignore[misc]
- def __ior__(self: Self, __value: SupportsKeysAndGetItem[_KT, _VT]) -> Self: ...
- @overload
- def __ior__(self: Self, __value: Iterable[tuple[_KT, _VT]]) -> Self: ...
+ def __ior__(self, __value: Mapping[_KT, _VT]) -> dict[_KT, _VT]: ... # type: ignore
class set(MutableSet[_T], Generic[_T]):
- def __init__(self, __iterable: Iterable[_T] = ...) -> None: ...
- def add(self, __element: _T) -> None: ...
- def copy(self) -> set[_T]: ...
- def difference(self, *s: Iterable[Any]) -> set[_T]: ...
+ def __init__(self, iterable: Iterable[_T] = ...) -> None: ...
+ def add(self, element: _T) -> None: ...
+ def clear(self) -> None: ...
+ def copy(self) -> Set[_T]: ...
+ def difference(self, *s: Iterable[Any]) -> Set[_T]: ...
def difference_update(self, *s: Iterable[Any]) -> None: ...
- def discard(self, __element: _T) -> None: ...
- def intersection(self, *s: Iterable[Any]) -> set[_T]: ...
+ def discard(self, element: _T) -> None: ...
+ def intersection(self, *s: Iterable[Any]) -> Set[_T]: ...
def intersection_update(self, *s: Iterable[Any]) -> None: ...
- def isdisjoint(self, __s: Iterable[Any]) -> bool: ...
- def issubset(self, __s: Iterable[Any]) -> bool: ...
- def issuperset(self, __s: Iterable[Any]) -> bool: ...
- def remove(self, __element: _T) -> None: ...
- def symmetric_difference(self, __s: Iterable[_T]) -> set[_T]: ...
- def symmetric_difference_update(self, __s: Iterable[_T]) -> None: ...
- def union(self, *s: Iterable[_S]) -> set[_T | _S]: ...
+ def isdisjoint(self, s: Iterable[Any]) -> bool: ...
+ def issubset(self, s: Iterable[Any]) -> bool: ...
+ def issuperset(self, s: Iterable[Any]) -> bool: ...
+ def pop(self) -> _T: ...
+ def remove(self, element: _T) -> None: ...
+ def symmetric_difference(self, s: Iterable[_T]) -> Set[_T]: ...
+ def symmetric_difference_update(self, s: Iterable[_T]) -> None: ...
+ def union(self, *s: Iterable[_T]) -> Set[_T]: ...
def update(self, *s: Iterable[_T]) -> None: ...
def __len__(self) -> int: ...
- def __contains__(self, __o: object) -> bool: ...
+ def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[_T]: ...
- def __and__(self, __s: AbstractSet[object]) -> set[_T]: ...
- def __iand__(self: Self, __s: AbstractSet[object]) -> Self: ...
- def __or__(self, __s: AbstractSet[_S]) -> set[_T | _S]: ...
- def __ior__(self: Self, __s: AbstractSet[_T]) -> Self: ... # type: ignore[override,misc]
- def __sub__(self, __s: AbstractSet[_T | None]) -> set[_T]: ...
- def __isub__(self: Self, __s: AbstractSet[object]) -> Self: ...
- def __xor__(self, __s: AbstractSet[_S]) -> set[_T | _S]: ...
- def __ixor__(self: Self, __s: AbstractSet[_T]) -> Self: ... # type: ignore[override,misc]
- def __le__(self, __s: AbstractSet[object]) -> bool: ...
- def __lt__(self, __s: AbstractSet[object]) -> bool: ...
- def __ge__(self, __s: AbstractSet[object]) -> bool: ...
- def __gt__(self, __s: AbstractSet[object]) -> bool: ...
- __hash__: None # type: ignore[assignment]
+ def __str__(self) -> str: ...
+ def __and__(self, s: AbstractSet[object]) -> Set[_T]: ...
+ def __iand__(self, s: AbstractSet[object]) -> Set[_T]: ...
+ def __or__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __ior__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __sub__(self, s: AbstractSet[_T | None]) -> Set[_T]: ...
+ def __isub__(self, s: AbstractSet[_T | None]) -> Set[_T]: ...
+ def __xor__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __ixor__(self, s: AbstractSet[_S]) -> Set[_T | _S]: ...
+ def __le__(self, s: AbstractSet[object]) -> bool: ...
+ def __lt__(self, s: AbstractSet[object]) -> bool: ...
+ def __ge__(self, s: AbstractSet[object]) -> bool: ...
+ def __gt__(self, s: AbstractSet[object]) -> bool: ...
+ __hash__: None # type: ignore
if sys.version_info >= (3, 9):
- def __class_getitem__(cls, __item: Any) -> GenericAlias: ...
+ def __class_getitem__(cls, item: Any) -> GenericAlias: ...
class frozenset(AbstractSet[_T_co], Generic[_T_co]):
- def __init__(self, __iterable: Iterable[_T_co] = ...) -> None: ...
- def copy(self) -> frozenset[_T_co]: ...
- def difference(self, *s: Iterable[object]) -> frozenset[_T_co]: ...
- def intersection(self, *s: Iterable[object]) -> frozenset[_T_co]: ...
- def isdisjoint(self, __s: Iterable[_T_co]) -> bool: ...
- def issubset(self, __s: Iterable[object]) -> bool: ...
- def issuperset(self, __s: Iterable[object]) -> bool: ...
- def symmetric_difference(self, __s: Iterable[_T_co]) -> frozenset[_T_co]: ...
- def union(self, *s: Iterable[_S]) -> frozenset[_T_co | _S]: ...
+ def __init__(self, iterable: Iterable[_T_co] = ...) -> None: ...
+ def copy(self) -> FrozenSet[_T_co]: ...
+ def difference(self, *s: Iterable[object]) -> FrozenSet[_T_co]: ...
+ def intersection(self, *s: Iterable[object]) -> FrozenSet[_T_co]: ...
+ def isdisjoint(self, s: Iterable[_T_co]) -> bool: ...
+ def issubset(self, s: Iterable[object]) -> bool: ...
+ def issuperset(self, s: Iterable[object]) -> bool: ...
+ def symmetric_difference(self, s: Iterable[_T_co]) -> FrozenSet[_T_co]: ...
+ def union(self, *s: Iterable[_T_co]) -> FrozenSet[_T_co]: ...
def __len__(self) -> int: ...
- def __contains__(self, __o: object) -> bool: ...
+ def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[_T_co]: ...
- def __and__(self, __s: AbstractSet[_T_co]) -> frozenset[_T_co]: ...
- def __or__(self, __s: AbstractSet[_S]) -> frozenset[_T_co | _S]: ...
- def __sub__(self, __s: AbstractSet[_T_co]) -> frozenset[_T_co]: ...
- def __xor__(self, __s: AbstractSet[_S]) -> frozenset[_T_co | _S]: ...
- def __le__(self, __s: AbstractSet[object]) -> bool: ...
- def __lt__(self, __s: AbstractSet[object]) -> bool: ...
- def __ge__(self, __s: AbstractSet[object]) -> bool: ...
- def __gt__(self, __s: AbstractSet[object]) -> bool: ...
+ def __str__(self) -> str: ...
+ def __and__(self, s: AbstractSet[_T_co]) -> FrozenSet[_T_co]: ...
+ def __or__(self, s: AbstractSet[_S]) -> FrozenSet[_T_co | _S]: ...
+ def __sub__(self, s: AbstractSet[_T_co]) -> FrozenSet[_T_co]: ...
+ def __xor__(self, s: AbstractSet[_S]) -> FrozenSet[_T_co | _S]: ...
+ def __le__(self, s: AbstractSet[object]) -> bool: ...
+ def __lt__(self, s: AbstractSet[object]) -> bool: ...
+ def __ge__(self, s: AbstractSet[object]) -> bool: ...
+ def __gt__(self, s: AbstractSet[object]) -> bool: ...
if sys.version_info >= (3, 9):
- def __class_getitem__(cls, __item: Any) -> GenericAlias: ...
+ def __class_getitem__(cls, item: Any) -> GenericAlias: ...
-class enumerate(Iterator[tuple[int, _T]], Generic[_T]):
+class enumerate(Iterator[Tuple[int, _T]], Generic[_T]):
def __init__(self, iterable: Iterable[_T], start: int = ...) -> None: ...
def __iter__(self) -> Iterator[tuple[int, _T]]: ...
def __next__(self) -> tuple[int, _T]: ...
if sys.version_info >= (3, 9):
- def __class_getitem__(cls, __item: Any) -> GenericAlias: ...
+ def __class_getitem__(cls, item: Any) -> GenericAlias: ...
-@final
class range(Sequence[int]):
- @property
- def start(self) -> int: ...
- @property
- def stop(self) -> int: ...
- @property
- def step(self) -> int: ...
+ start: int
+ stop: int
+ step: int
@overload
- def __init__(self, __stop: SupportsIndex) -> None: ...
+ def __init__(self, stop: SupportsIndex) -> None: ...
@overload
- def __init__(self, __start: SupportsIndex, __stop: SupportsIndex, __step: SupportsIndex = ...) -> None: ...
- def count(self, __value: int) -> int: ...
- def index(self, __value: int) -> int: ... # type: ignore[override]
+ def __init__(self, start: SupportsIndex, stop: SupportsIndex, step: SupportsIndex = ...) -> None: ...
+ def count(self, value: int) -> int: ...
+ def index(self, value: int) -> int: ... # type: ignore
def __len__(self) -> int: ...
- def __contains__(self, __o: object) -> bool: ...
+ def __contains__(self, o: object) -> bool: ...
def __iter__(self) -> Iterator[int]: ...
@overload
- def __getitem__(self, __i: SupportsIndex) -> int: ...
+ def __getitem__(self, i: SupportsIndex) -> int: ...
@overload
- def __getitem__(self, __s: slice) -> range: ...
+ def __getitem__(self, s: slice) -> range: ...
+ def __repr__(self) -> str: ...
def __reversed__(self) -> Iterator[int]: ...
-class property:
+class property(object):
fget: Callable[[Any], Any] | None
fset: Callable[[Any, Any], None] | None
fdel: Callable[[Any], None] | None
@@ -1005,18 +949,17 @@ class property:
fdel: Callable[[Any], None] | None = ...,
doc: str | None = ...,
) -> None: ...
- def getter(self, __fget: Callable[[Any], Any]) -> property: ...
- def setter(self, __fset: Callable[[Any, Any], None]) -> property: ...
- def deleter(self, __fdel: Callable[[Any], None]) -> property: ...
- def __get__(self, __obj: Any, __type: type | None = ...) -> Any: ...
- def __set__(self, __obj: Any, __value: Any) -> None: ...
- def __delete__(self, __obj: Any) -> None: ...
-
-@final
-class _NotImplementedType(Any): # type: ignore[misc]
+ def getter(self, fget: Callable[[Any], Any]) -> property: ...
+ def setter(self, fset: Callable[[Any, Any], None]) -> property: ...
+ def deleter(self, fdel: Callable[[Any], None]) -> property: ...
+ def __get__(self, obj: Any, type: type | None = ...) -> Any: ...
+ def __set__(self, obj: Any, value: Any) -> None: ...
+ def __delete__(self, obj: Any) -> None: ...
+
+class _NotImplementedType(Any): # type: ignore
# A little weird, but typing the __call__ as NotImplemented makes the error message
# for NotImplemented() much better
- __call__: NotImplemented # type: ignore[valid-type]
+ __call__: NotImplemented # type: ignore
NotImplemented: _NotImplementedType
@@ -1029,7 +972,7 @@ def bin(__number: int | SupportsIndex) -> str: ...
if sys.version_info >= (3, 7):
def breakpoint(*args: Any, **kws: Any) -> None: ...
-def callable(__obj: object) -> TypeGuard[Callable[..., object]]: ...
+def callable(__obj: object) -> bool: ...
def chr(__i: int) -> str: ...
# We define this here instead of using os.PathLike to avoid import cycle issues.
@@ -1040,16 +983,15 @@ class _PathLike(Protocol[_AnyStr_co]):
def __fspath__(self) -> _AnyStr_co: ...
if sys.version_info >= (3, 10):
- def aiter(__async_iterable: _SupportsAiter[_SupportsAnextT]) -> _SupportsAnextT: ...
+ def aiter(__iterable: AsyncIterable[_T]) -> AsyncIterator[_T]: ...
@overload
async def anext(__i: SupportsAnext[_T]) -> _T: ...
@overload
async def anext(__i: SupportsAnext[_T], default: _VT) -> _T | _VT: ...
-# TODO: `compile` has a more precise return type in reality; work on a way of expressing that?
if sys.version_info >= (3, 8):
def compile(
- source: str | bytes | AST,
+ source: str | bytes | mod | AST,
filename: str | bytes | _PathLike[Any],
mode: str,
flags: int = ...,
@@ -1061,7 +1003,7 @@ if sys.version_info >= (3, 8):
else:
def compile(
- source: str | bytes | AST,
+ source: str | bytes | mod | AST,
filename: str | bytes | _PathLike[Any],
mode: str,
flags: int = ...,
@@ -1071,78 +1013,65 @@ else:
def copyright() -> None: ...
def credits() -> None: ...
-def delattr(__obj: object, __name: str) -> None: ...
+def delattr(__obj: Any, __name: str) -> None: ...
def dir(__o: object = ...) -> list[str]: ...
@overload
def divmod(__x: SupportsDivMod[_T_contra, _T_co], __y: _T_contra) -> _T_co: ...
@overload
def divmod(__x: _T_contra, __y: SupportsRDivMod[_T_contra, _T_co]) -> _T_co: ...
-
-# The `globals` argument to `eval` has to be `dict[str, Any]` rather than `dict[str, object]` due to invariance.
-# (The `globals` argument has to be a "real dict", rather than any old mapping, unlike the `locals` argument.)
def eval(
- __source: str | bytes | CodeType, __globals: dict[str, Any] | None = ..., __locals: Mapping[str, object] | None = ...
+ __source: str | bytes | CodeType, __globals: dict[str, Any] | None = ..., __locals: Mapping[str, Any] | None = ...
) -> Any: ...
-
-# Comment above regarding `eval` applies to `exec` as well
def exec(
- __source: str | bytes | CodeType, __globals: dict[str, Any] | None = ..., __locals: Mapping[str, object] | None = ...
-) -> None: ...
+ __source: str | bytes | CodeType, __globals: dict[str, Any] | None = ..., __locals: Mapping[str, Any] | None = ...
+) -> Any: ...
def exit(code: object = ...) -> NoReturn: ...
class filter(Iterator[_T], Generic[_T]):
@overload
def __init__(self, __function: None, __iterable: Iterable[_T | None]) -> None: ...
@overload
- def __init__(self, __function: Callable[[_S], TypeGuard[_T]], __iterable: Iterable[_S]) -> None: ...
- @overload
def __init__(self, __function: Callable[[_T], Any], __iterable: Iterable[_T]) -> None: ...
- def __iter__(self: Self) -> Self: ...
+ def __iter__(self) -> Iterator[_T]: ...
def __next__(self) -> _T: ...
def format(__value: object, __format_spec: str = ...) -> str: ... # TODO unicode
@overload
-def getattr(__o: object, __name: str) -> Any: ...
+def getattr(__o: object, name: str) -> Any: ...
-# While technically covered by the last overload, spelling out the types for None, bool
-# and basic containers help mypy out in some tricky situations involving type context
-# (aka bidirectional inference)
-@overload
-def getattr(__o: object, __name: str, __default: None) -> Any | None: ...
-@overload
-def getattr(__o: object, __name: str, __default: bool) -> Any | bool: ...
+# While technically covered by the last overload, spelling out the types for None and bool
+# help mypy out in some tricky situations involving type context (aka bidirectional inference)
@overload
-def getattr(__o: object, name: str, __default: list[Any]) -> Any | list[Any]: ...
+def getattr(__o: object, name: str, __default: None) -> Any | None: ...
@overload
-def getattr(__o: object, name: str, __default: dict[Any, Any]) -> Any | dict[Any, Any]: ...
+def getattr(__o: object, name: str, __default: bool) -> Any | bool: ...
@overload
-def getattr(__o: object, __name: str, __default: _T) -> Any | _T: ...
+def getattr(__o: object, name: str, __default: _T) -> Any | _T: ...
def globals() -> dict[str, Any]: ...
def hasattr(__obj: object, __name: str) -> bool: ...
def hash(__obj: object) -> int: ...
-def help(request: object = ...) -> None: ...
+def help(*args: Any, **kwds: Any) -> None: ...
def hex(__number: int | SupportsIndex) -> str: ...
def id(__obj: object) -> int: ...
-def input(__prompt: object = ...) -> str: ...
+def input(__prompt: Any = ...) -> str: ...
@overload
-def iter(__iterable: _SupportsIter[_SupportsNextT]) -> _SupportsNextT: ...
+def iter(__iterable: Iterable[_T]) -> Iterator[_T]: ...
@overload
def iter(__function: Callable[[], _T | None], __sentinel: None) -> Iterator[_T]: ...
@overload
-def iter(__function: Callable[[], _T], __sentinel: object) -> Iterator[_T]: ...
+def iter(__function: Callable[[], _T], __sentinel: Any) -> Iterator[_T]: ...
-# We need recursive types to express the type of the second argument to `isinstance` properly, hence the use of `Any`
if sys.version_info >= (3, 10):
def isinstance(
- __obj: object, __class_or_tuple: type | types.UnionType | tuple[type | types.UnionType | tuple[Any, ...], ...]
+ __obj: object, __class_or_tuple: type | types.UnionType | Tuple[type | types.UnionType | Tuple[Any, ...], ...]
) -> bool: ...
def issubclass(
- __cls: type, __class_or_tuple: type | types.UnionType | tuple[type | types.UnionType | tuple[Any, ...], ...]
+ __cls: type, __class_or_tuple: type | types.UnionType | Tuple[type | types.UnionType | Tuple[Any, ...], ...]
) -> bool: ...
else:
- def isinstance(__obj: object, __class_or_tuple: type | tuple[type | tuple[Any, ...], ...]) -> bool: ...
- def issubclass(__cls: type, __class_or_tuple: type | tuple[type | tuple[Any, ...], ...]) -> bool: ...
+ def isinstance(__obj: object, __class_or_tuple: type | Tuple[type | Tuple[Any, ...], ...]) -> bool: ...
+ def issubclass(__cls: type, __class_or_tuple: type | Tuple[type | Tuple[Any, ...], ...]) -> bool: ...
def len(__obj: Sized) -> int: ...
def license() -> None: ...
@@ -1188,37 +1117,37 @@ class map(Iterator[_S], Generic[_S]):
__iter6: Iterable[Any],
*iterables: Iterable[Any],
) -> None: ...
- def __iter__(self: Self) -> Self: ...
+ def __iter__(self) -> Iterator[_S]: ...
def __next__(self) -> _S: ...
@overload
def max(
- __arg1: SupportsRichComparisonT, __arg2: SupportsRichComparisonT, *_args: SupportsRichComparisonT, key: None = ...
-) -> SupportsRichComparisonT: ...
+ __arg1: SupportsLessThanT, __arg2: SupportsLessThanT, *_args: SupportsLessThanT, key: None = ...
+) -> SupportsLessThanT: ...
@overload
-def max(__arg1: _T, __arg2: _T, *_args: _T, key: Callable[[_T], SupportsRichComparison]) -> _T: ...
+def max(__arg1: _T, __arg2: _T, *_args: _T, key: Callable[[_T], SupportsLessThan]) -> _T: ...
@overload
-def max(__iterable: Iterable[SupportsRichComparisonT], *, key: None = ...) -> SupportsRichComparisonT: ...
+def max(__iterable: Iterable[SupportsLessThanT], *, key: None = ...) -> SupportsLessThanT: ...
@overload
-def max(__iterable: Iterable[_T], *, key: Callable[[_T], SupportsRichComparison]) -> _T: ...
+def max(__iterable: Iterable[_T], *, key: Callable[[_T], SupportsLessThan]) -> _T: ...
@overload
-def max(__iterable: Iterable[SupportsRichComparisonT], *, key: None = ..., default: _T) -> SupportsRichComparisonT | _T: ...
+def max(__iterable: Iterable[SupportsLessThanT], *, key: None = ..., default: _T) -> SupportsLessThanT | _T: ...
@overload
-def max(__iterable: Iterable[_T1], *, key: Callable[[_T1], SupportsRichComparison], default: _T2) -> _T1 | _T2: ...
+def max(__iterable: Iterable[_T1], *, key: Callable[[_T1], SupportsLessThan], default: _T2) -> _T1 | _T2: ...
@overload
def min(
- __arg1: SupportsRichComparisonT, __arg2: SupportsRichComparisonT, *_args: SupportsRichComparisonT, key: None = ...
-) -> SupportsRichComparisonT: ...
+ __arg1: SupportsLessThanT, __arg2: SupportsLessThanT, *_args: SupportsLessThanT, key: None = ...
+) -> SupportsLessThanT: ...
@overload
-def min(__arg1: _T, __arg2: _T, *_args: _T, key: Callable[[_T], SupportsRichComparison]) -> _T: ...
+def min(__arg1: _T, __arg2: _T, *_args: _T, key: Callable[[_T], SupportsLessThan]) -> _T: ...
@overload
-def min(__iterable: Iterable[SupportsRichComparisonT], *, key: None = ...) -> SupportsRichComparisonT: ...
+def min(__iterable: Iterable[SupportsLessThanT], *, key: None = ...) -> SupportsLessThanT: ...
@overload
-def min(__iterable: Iterable[_T], *, key: Callable[[_T], SupportsRichComparison]) -> _T: ...
+def min(__iterable: Iterable[_T], *, key: Callable[[_T], SupportsLessThan]) -> _T: ...
@overload
-def min(__iterable: Iterable[SupportsRichComparisonT], *, key: None = ..., default: _T) -> SupportsRichComparisonT | _T: ...
+def min(__iterable: Iterable[SupportsLessThanT], *, key: None = ..., default: _T) -> SupportsLessThanT | _T: ...
@overload
-def min(__iterable: Iterable[_T1], *, key: Callable[[_T1], SupportsRichComparison], default: _T2) -> _T1 | _T2: ...
+def min(__iterable: Iterable[_T1], *, key: Callable[[_T1], SupportsLessThan], default: _T2) -> _T1 | _T2: ...
@overload
def next(__i: SupportsNext[_T]) -> _T: ...
@overload
@@ -1315,21 +1244,8 @@ def open(
opener: _Opener | None = ...,
) -> IO[Any]: ...
def ord(__c: str | bytes) -> int: ...
-
-class _SupportsWriteAndFlush(SupportsWrite[_T_contra], Protocol[_T_contra]):
- def flush(self) -> None: ...
-
-@overload
def print(
- *values: object,
- sep: str | None = ...,
- end: str | None = ...,
- file: SupportsWrite[str] | None = ...,
- flush: Literal[False] = ...,
-) -> None: ...
-@overload
-def print(
- *values: object, sep: str | None = ..., end: str | None = ..., file: _SupportsWriteAndFlush[str] | None = ..., flush: bool
+ *values: object, sep: str | None = ..., end: str | None = ..., file: SupportsWrite[str] | None = ..., flush: bool = ...
) -> None: ...
_E = TypeVar("_E", contravariant=True)
@@ -1338,78 +1254,34 @@ _M = TypeVar("_M", contravariant=True)
class _SupportsPow2(Protocol[_E, _T_co]):
def __pow__(self, __other: _E) -> _T_co: ...
-class _SupportsPow3NoneOnly(Protocol[_E, _T_co]):
- def __pow__(self, __other: _E, __modulo: None = ...) -> _T_co: ...
-
class _SupportsPow3(Protocol[_E, _M, _T_co]):
def __pow__(self, __other: _E, __modulo: _M) -> _T_co: ...
-_SupportsSomeKindOfPow = Union[_SupportsPow2[Any, Any], _SupportsPow3NoneOnly[Any, Any], _SupportsPow3[Any, Any, Any]]
-
if sys.version_info >= (3, 8):
@overload
- def pow(base: int, exp: int, mod: Literal[0]) -> NoReturn: ...
+ def pow(base: int, exp: int, mod: None = ...) -> Any: ... # returns int or float depending on whether exp is non-negative
@overload
def pow(base: int, exp: int, mod: int) -> int: ...
@overload
- def pow(base: int, exp: Literal[0], mod: None = ...) -> Literal[1]: ... # type: ignore[misc]
- @overload
- def pow(base: int, exp: _PositiveInteger, mod: None = ...) -> int: ... # type: ignore[misc]
- @overload
- def pow(base: int, exp: _NegativeInteger, mod: None = ...) -> float: ... # type: ignore[misc]
- # int base & positive-int exp -> int; int base & negative-int exp -> float
- # return type must be Any as `int | float` causes too many false-positive errors
+ def pow(base: float, exp: float, mod: None = ...) -> float: ...
@overload
- def pow(base: int, exp: int, mod: None = ...) -> Any: ...
+ def pow(base: _SupportsPow2[_E, _T_co], exp: _E) -> _T_co: ...
@overload
- def pow(base: float, exp: int, mod: None = ...) -> float: ...
- # float base & float exp could return float or complex
- # return type must be Any (same as complex base, complex exp),
- # as `float | complex` causes too many false-positive errors
- @overload
- def pow(base: float, exp: complex | _SupportsSomeKindOfPow, mod: None = ...) -> Any: ...
- @overload
- def pow(base: complex, exp: complex | _SupportsSomeKindOfPow, mod: None = ...) -> complex: ...
- @overload
- def pow(base: _SupportsPow2[_E, _T_co], exp: _E, mod: None = ...) -> _T_co: ...
- @overload
- def pow(base: _SupportsPow3NoneOnly[_E, _T_co], exp: _E, mod: None = ...) -> _T_co: ...
- @overload
- def pow(base: _SupportsPow3[_E, _M, _T_co], exp: _E, mod: _M = ...) -> _T_co: ...
- @overload
- def pow(base: _SupportsSomeKindOfPow, exp: float, mod: None = ...) -> Any: ...
- @overload
- def pow(base: _SupportsSomeKindOfPow, exp: complex, mod: None = ...) -> complex: ...
+ def pow(base: _SupportsPow3[_E, _M, _T_co], exp: _E, mod: _M) -> _T_co: ...
else:
@overload
- def pow(__base: int, __exp: int, __mod: Literal[0]) -> NoReturn: ...
+ def pow(
+ __base: int, __exp: int, __mod: None = ...
+ ) -> Any: ... # returns int or float depending on whether exp is non-negative
@overload
def pow(__base: int, __exp: int, __mod: int) -> int: ...
@overload
- def pow(__base: int, __exp: Literal[0], __mod: None = ...) -> Literal[1]: ... # type: ignore[misc]
- @overload
- def pow(__base: int, __exp: _PositiveInteger, __mod: None = ...) -> int: ... # type: ignore[misc]
- @overload
- def pow(__base: int, __exp: _NegativeInteger, __mod: None = ...) -> float: ... # type: ignore[misc]
- @overload
- def pow(__base: int, __exp: int, __mod: None = ...) -> Any: ...
- @overload
- def pow(__base: float, __exp: int, __mod: None = ...) -> float: ...
- @overload
- def pow(__base: float, __exp: complex | _SupportsSomeKindOfPow, __mod: None = ...) -> Any: ...
- @overload
- def pow(__base: complex, __exp: complex | _SupportsSomeKindOfPow, __mod: None = ...) -> complex: ...
- @overload
- def pow(__base: _SupportsPow2[_E, _T_co], __exp: _E, __mod: None = ...) -> _T_co: ...
+ def pow(__base: float, __exp: float, __mod: None = ...) -> float: ...
@overload
- def pow(__base: _SupportsPow3NoneOnly[_E, _T_co], __exp: _E, __mod: None = ...) -> _T_co: ...
+ def pow(__base: _SupportsPow2[_E, _T_co], __exp: _E) -> _T_co: ...
@overload
- def pow(__base: _SupportsPow3[_E, _M, _T_co], __exp: _E, __mod: _M = ...) -> _T_co: ...
- @overload
- def pow(__base: _SupportsSomeKindOfPow, __exp: float, __mod: None = ...) -> Any: ...
- @overload
- def pow(__base: _SupportsSomeKindOfPow, __exp: complex, __mod: None = ...) -> complex: ...
+ def pow(__base: _SupportsPow3[_E, _M, _T_co], __exp: _E, __mod: _M) -> _T_co: ...
def quit(code: object = ...) -> NoReturn: ...
@@ -1418,7 +1290,7 @@ class reversed(Iterator[_T], Generic[_T]):
def __init__(self, __sequence: Reversible[_T]) -> None: ...
@overload
def __init__(self, __sequence: SupportsLenAndGetItem[_T]) -> None: ...
- def __iter__(self: Self) -> Self: ...
+ def __iter__(self) -> Iterator[_T]: ...
def __next__(self) -> _T: ...
def repr(__obj: object) -> str: ...
@@ -1428,31 +1300,24 @@ def round(number: SupportsRound[Any]) -> int: ...
def round(number: SupportsRound[Any], ndigits: None) -> int: ...
@overload
def round(number: SupportsRound[_T], ndigits: SupportsIndex) -> _T: ...
-
-# See https://github.com/python/typeshed/pull/6292#discussion_r748875189
-# for why arg 3 of `setattr` should be annotated with `Any` and not `object`
def setattr(__obj: object, __name: str, __value: Any) -> None: ...
@overload
-def sorted(
- __iterable: Iterable[SupportsRichComparisonT], *, key: None = ..., reverse: bool = ...
-) -> list[SupportsRichComparisonT]: ...
+def sorted(__iterable: Iterable[SupportsLessThanT], *, key: None = ..., reverse: bool = ...) -> list[SupportsLessThanT]: ...
@overload
-def sorted(__iterable: Iterable[_T], *, key: Callable[[_T], SupportsRichComparison], reverse: bool = ...) -> list[_T]: ...
+def sorted(__iterable: Iterable[_T], *, key: Callable[[_T], SupportsLessThan], reverse: bool = ...) -> list[_T]: ...
if sys.version_info >= (3, 8):
@overload
- def sum(__iterable: Iterable[_T]) -> _T | Literal[0]: ...
+ def sum(__iterable: Iterable[_T]) -> _T | int: ...
@overload
def sum(__iterable: Iterable[_T], start: _S) -> _T | _S: ...
else:
@overload
- def sum(__iterable: Iterable[_T]) -> _T | Literal[0]: ...
+ def sum(__iterable: Iterable[_T]) -> _T | int: ...
@overload
def sum(__iterable: Iterable[_T], __start: _S) -> _T | _S: ...
-# The argument to `vars()` has to have a `__dict__` attribute, so can't be annotated with `object`
-# (A "SupportsDunderDict" protocol doesn't work)
def vars(__object: Any = ...) -> dict[str, Any]: ...
class zip(Iterator[_T_co], Generic[_T_co]):
@@ -1497,7 +1362,7 @@ class zip(Iterator[_T_co], Generic[_T_co]):
__iter6: Iterable[Any],
*iterables: Iterable[Any],
strict: bool = ...,
- ) -> zip[tuple[Any, ...]]: ...
+ ) -> zip[Tuple[Any, ...]]: ...
else:
@overload
def __new__(cls, __iter1: Iterable[_T1]) -> zip[tuple[_T1]]: ...
@@ -1528,38 +1393,34 @@ class zip(Iterator[_T_co], Generic[_T_co]):
__iter5: Iterable[Any],
__iter6: Iterable[Any],
*iterables: Iterable[Any],
- ) -> zip[tuple[Any, ...]]: ...
-
- def __iter__(self: Self) -> Self: ...
+ ) -> zip[Tuple[Any, ...]]: ...
+ def __iter__(self) -> Iterator[_T_co]: ...
def __next__(self) -> _T_co: ...
-# Signature of `builtins.__import__` should be kept identical to `importlib.__import__`
-# Return type of `__import__` should be kept the same as return type of `importlib.import_module`
def __import__(
name: str,
- globals: Mapping[str, object] | None = ...,
- locals: Mapping[str, object] | None = ...,
+ globals: Mapping[str, Any] | None = ...,
+ locals: Mapping[str, Any] | None = ...,
fromlist: Sequence[str] = ...,
level: int = ...,
-) -> types.ModuleType: ...
+) -> Any: ...
# Actually the type of Ellipsis is <type 'ellipsis'>, but since it's
# not exposed anywhere under that name, we make it private here.
-@final
class ellipsis: ...
Ellipsis: ellipsis
-class BaseException:
- args: tuple[Any, ...]
+class BaseException(object):
+ args: Tuple[Any, ...]
__cause__: BaseException | None
__context__: BaseException | None
__suppress_context__: bool
__traceback__: TracebackType | None
- if sys.version_info >= (3, 11):
- __note__: str | None
def __init__(self, *args: object) -> None: ...
- def with_traceback(self: Self, __tb: TracebackType | None) -> Self: ...
+ def __str__(self) -> str: ...
+ def __repr__(self) -> str: ...
+ def with_traceback(self: _TBE, tb: TracebackType | None) -> _TBE: ...
class GeneratorExit(BaseException): ...
class KeyboardInterrupt(BaseException): ...
@@ -1678,14 +1539,7 @@ class UnicodeEncodeError(UnicodeError):
reason: str
def __init__(self, __encoding: str, __object: str, __start: int, __end: int, __reason: str) -> None: ...
-class UnicodeTranslateError(UnicodeError):
- encoding: None
- object: str
- start: int
- end: int
- reason: str
- def __init__(self, __object: str, __start: int, __end: int, __reason: str) -> None: ...
-
+class UnicodeTranslateError(UnicodeError): ...
class Warning(Exception): ...
class UserWarning(Warning): ...
class DeprecationWarning(Warning): ...
@@ -1700,21 +1554,3 @@ class ResourceWarning(Warning): ...
if sys.version_info >= (3, 10):
class EncodingWarning(Warning): ...
-
-if sys.version_info >= (3, 11):
- _SplitCondition = type[BaseException] | tuple[type[BaseException], ...] | Callable[[BaseException], bool]
-
- class BaseExceptionGroup(BaseException):
- def __new__(cls: type[Self], __message: str, __exceptions: Sequence[BaseException]) -> Self: ...
- @property
- def message(self) -> str: ...
- @property
- def exceptions(self) -> tuple[BaseException, ...]: ...
- def subgroup(self: Self, __condition: _SplitCondition) -> Self | None: ...
- def split(self: Self, __condition: _SplitCondition) -> tuple[Self | None, Self | None]: ...
- def derive(self: Self, __excs: Sequence[BaseException]) -> Self: ...
-
- class ExceptionGroup(BaseExceptionGroup, Exception):
- def __new__(cls: type[Self], __message: str, __exceptions: Sequence[Exception]) -> Self: ...
- @property
- def exceptions(self) -> tuple[Exception, ...]: ...
diff --git a/python/ideCoreSrc/idea/PyCharmCoreApplicationInfo.xml b/python/ideCoreSrc/idea/PyCharmCoreApplicationInfo.xml
index f7b7c54ce7a7..0fe5186c977d 100644
--- a/python/ideCoreSrc/idea/PyCharmCoreApplicationInfo.xml
+++ b/python/ideCoreSrc/idea/PyCharmCoreApplicationInfo.xml
@@ -2,9 +2,9 @@
<component xmlns="http://jetbrains.org/intellij/schema/application-info"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jetbrains.org/intellij/schema/application-info http://jetbrains.org/intellij/schema/ApplicationInfo.xsd">
- <version major="2022" minor="1" eap="true"/>
+ <version major="2022" minor="1" eap="false" suffix="RC"/>
<company name="JetBrains s.r.o." url="https://www.jetbrains.com" copyrightStart="2010"/>
- <build number="PC-__BUILD__" date="__BUILD_DATE__"/>
+ <build number="PC-__BUILD__" date="__BUILD_DATE__" majorReleaseDate="20220413"/>
<logo url="/pycharm_core_logo.png" textcolor="ffffff" progressColor="ffffff" progressY="396" progressHeight="4"/>
<about url="/pycharm_core_about.png" logoX="540" logoY="300" logoW="100" logoH="100" foreground="ffffff"
copyrightForeground="ffffff" linkColor="589bf2"/>
diff --git a/python/pydevSrc/com/jetbrains/python/debugger/PyTypeHandler.java b/python/pydevSrc/com/jetbrains/python/debugger/PyTypeHandler.java
index c2ee37cae278..f438eee8b2f8 100644
--- a/python/pydevSrc/com/jetbrains/python/debugger/PyTypeHandler.java
+++ b/python/pydevSrc/com/jetbrains/python/debugger/PyTypeHandler.java
@@ -2,9 +2,11 @@
package com.jetbrains.python.debugger;
import com.intellij.openapi.util.text.StringUtil;
+import org.jetbrains.annotations.NotNull;
import java.util.HashMap;
import java.util.Map;
+import java.util.Set;
// todo: extensive types support
@@ -21,15 +23,45 @@ public final class PyTypeHandler {
}
};
+ /**
+ * Like in python3 interpreter:
+ * HEX | DEX | Symbol
+ * \x09 | 9 | \t
+ * \x0a | 10 | \n
+ * \x0d | 13 | \r
+ * Another chars from (0, 32) and (127, 160) is non-printable characters, and we should print their code
+ * */
+ private static boolean isNonPrintable(char c) {
+ return c < 32 && c != 9 && c != 10 && c != 13 || c > 127 && c < 160;
+ }
+
+ private static @NotNull String charToHEX(char c) {
+ return String.format("%02x", (int) c);
+ }
+
+ private static @NotNull String processNonPrintableChars(@NotNull String string) {
+ StringBuilder result = new StringBuilder();
+ for (char c : string.toCharArray()) {
+ if (isNonPrintable(c)) {
+ result.append("\\x");
+ result.append(charToHEX(c));
+ } else {
+ result.append(c);
+ }
+ }
+ return result.toString();
+ }
+
private static final Formatter STR_FORMATTER = new Formatter() {
@Override
public String format(final String value) {
String escapedString = StringUtil.replace(value, "\\", "\\\\");
+
if (value.contains("'")) {
- return "\"" + escapedString + "\"";
+ return "\"" + processNonPrintableChars(escapedString) + "\"";
}
else {
- return "'" + escapedString + '\'';
+ return "'" + processNonPrintableChars(escapedString) + '\'';
}
}
};
diff --git a/python/python-features-trainer/resources/messages/PythonLessonsBundle.properties b/python/python-features-trainer/resources/messages/PythonLessonsBundle.properties
index ff20fbf8e0c9..f2557f1a713f 100644
--- a/python/python-features-trainer/resources/messages/PythonLessonsBundle.properties
+++ b/python/python-features-trainer/resources/messages/PythonLessonsBundle.properties
@@ -9,7 +9,7 @@ python.onboarding.module.description=A brief overview of the main features in {0
python.onboarding.lesson.name=Get Acquainted with PyCharm
python.onboarding.change.ui.settings=For this lesson, PyCharm changes some UI settings to the default state. \
Your preferences will be restored when you complete or exit the lesson.
-python.onboarding.project.view.description=The <strong>Project view</strong> is one of the main tool windows. It contains the project directory, SDK-specific external libraries, and scratch files. Use the striped button to open it, and you will see a simple demo project. You can also open it by pressing {0}.
+python.onboarding.project.view.description=The <strong>Project view</strong> is one of the main tool windows. It contains the project directory, SDK-specific external libraries, and scratch files. Click the striped button to preview the demo project content. You can also open it by pressing {0}.
python.onboarding.balloon.project.view=Click to open the <strong>Project view</strong>
python.onboarding.balloon.project.directory=Expand the project directory to view the project files
python.onboarding.balloon.open.file=Double-click to open {0}
@@ -26,14 +26,14 @@ python.onboarding.temporary.configuration.description=<ide/> has just created a
python.onboarding.balloon.click.here=Click here to set a breakpoint
python.onboarding.toggle.breakpoint.1=You may notice that instead of the expected value of {0}, the {1} method returns {2}. \
Let''s stop at the return statement to debug the problematic code.
-python.onboarding.toggle.breakpoint.2=Click the gutter in the highlighted area to set a breakpoint.
+python.onboarding.toggle.breakpoint.2=Click the gutter within the highlighted area to set a breakpoint.
python.onboarding.balloon.start.debugging=Click the icon to start debugging
python.onboarding.start.debugging=Click the {0} icon to start the debugging process.
python.onboarding.balloon.about.debug.panel=The {0} tool window provides {1,choice,0#a toolbar|1#toolbars} with various debugging actions. \
You can take the {2} lesson later to try them.
python.onboarding.balloon.stop.debugging=Click the icon to stop debugging
python.onboarding.stop.debugging=Let''s stop debugging. Click the {0} icon.
-python.onboarding.type.division=Once you discovered the problem in the code, let''s fix it. Divide the resulting sum by the length of the values. \
+python.onboarding.type.division=Once you have discovered the problem in the code, let''s fix it. Divide the resulting sum by the length of the values. \
The lesson script inserts {0} already.
python.onboarding.invoke.completion=Now let''s start typing {0} inside the parentheses {1}. \
<ide/> shows completion options automatically as you type. Alternatively, you can also press {2} and continue typing to reduce the list.
@@ -45,7 +45,7 @@ python.onboarding.select.fix=Apply the first item: {0}. With this fix, your code
python.onboarding.invoke.intention.for.code=Intentions also save your time and make coding easier. Let''s use an intention to quickly add a return type for {0}. Press {1}.
python.onboarding.apply.intention=Select {0} and press {1}.
python.onboarding.complete.template=Type {0} and then press {1}.
-python.onboarding.invoke.search.everywhere.1=While working in <ide/> you might want to search for files in your project, symbols, classes, or even IDE actions. In this lesson, let''s search for the {0} action to make the {1} string low-case.
+python.onboarding.invoke.search.everywhere.1=While working in <ide/>, you might want to search for files in your project, symbols, classes, or even IDE actions. In this lesson, let''s search for the {0} action to make the {1} string low-case.
python.onboarding.invoke.search.everywhere.2=Press {0} two times to open the {1} dialog.
python.onboarding.search.everywhere.description=As you can see, the selected text, {0}, has been automatically copied into the input string. Let''s type {1} instead of {0}.
python.onboarding.apply.action=Select the {0} action and press {1}.
diff --git a/python/python-psi-impl/src/com/jetbrains/python/inspections/PyTypedDictInspection.kt b/python/python-psi-impl/src/com/jetbrains/python/inspections/PyTypedDictInspection.kt
index a1f2cddd90ee..a1f6853ecbde 100644
--- a/python/python-psi-impl/src/com/jetbrains/python/inspections/PyTypedDictInspection.kt
+++ b/python/python-psi-impl/src/com/jetbrains/python/inspections/PyTypedDictInspection.kt
@@ -277,7 +277,9 @@ class PyTypedDictInspection : PyInspection() {
private fun checkValueIsAType(expression: PyExpression?, strType: String?) {
if (expression !is PyReferenceExpression &&
expression !is PySubscriptionExpression &&
- expression !is PyNoneLiteralExpression || strType == null) {
+ expression !is PyNoneLiteralExpression &&
+ expression !is PyBinaryExpression &&
+ expression !is PyStringLiteralExpression || strType == null) {
registerProblem(expression, PyPsiBundle.message("INSP.typeddict.value.must.be.type"), ProblemHighlightType.WEAK_WARNING)
return
}
diff --git a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyEvaluator.java b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyEvaluator.java
index 0b617ec3e673..b4f4c0d5726f 100644
--- a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyEvaluator.java
+++ b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyEvaluator.java
@@ -137,7 +137,7 @@ public class PyEvaluator {
}
@Nullable
- private Object evaluateBinary(@NotNull PyBinaryExpression expression) {
+ protected Object evaluateBinary(@NotNull PyBinaryExpression expression) {
final PyElementType op = expression.getOperator();
final Object lhs = evaluate(expression.getLeftExpression());
final Object rhs = evaluate(expression.getRightExpression());
diff --git a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java
index eaedc38770bc..ad292a8d5746 100644
--- a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java
+++ b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java
@@ -18,13 +18,12 @@ package com.jetbrains.python.psi.impl;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.jetbrains.python.PyNames;
-import com.jetbrains.python.psi.PyCallExpression;
-import com.jetbrains.python.psi.PyExpression;
-import com.jetbrains.python.psi.PyReferenceExpression;
+import com.jetbrains.python.PyTokenTypes;
+import com.jetbrains.python.psi.*;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-import java.io.File;
+import java.nio.file.Paths;
public class PyPathEvaluator extends PyEvaluator {
@@ -49,9 +48,18 @@ public class PyPathEvaluator extends PyEvaluator {
@Nullable
protected Object evaluateCall(@NotNull PyCallExpression expression) {
final PyExpression[] args = expression.getArguments();
+ if (expression.isCalleeText("resolve")) {
+ PyReferenceExpression callee = (PyReferenceExpression)expression.getCallee();
+ if (callee != null && callee.getQualifier() instanceof PyCallExpression) {
+ return evaluate(callee.getQualifier());
+ }
+ }
+ if (expression.isCalleeText("Path") && args.length >= 1) {
+ return evaluate(args[0]);
+ }
if (expression.isCalleeText(PyNames.DIRNAME) && args.length == 1) {
Object argValue = evaluate(args[0]);
- return argValue instanceof String ? new File((String) argValue).getParent() : null;
+ return argValue instanceof String ? Paths.get((String) argValue).getParent().toFile().getPath() : null;
}
else if (expression.isCalleeText(PyNames.JOIN) && args.length >= 1) {
return evaluatePathInJoin(args, args.length);
@@ -70,8 +78,8 @@ public class PyPathEvaluator extends PyEvaluator {
return argValue;
}
else {
- String path = new File(new File(myContainingFilePath).getParent(), (String)argValue).getPath();
- return path.replace("\\", "/");
+ String path = Paths.get(myContainingFilePath).resolveSibling((String)argValue).toFile().getPath();
+ return FileUtil.toSystemIndependentName(path);
}
}
return super.evaluateCall(expression);
@@ -87,7 +95,13 @@ public class PyPathEvaluator extends PyEvaluator {
return ".";
}
if (!expression.isQualified() && PyNames.FILE.equals(expression.getReferencedName())) {
- return myContainingFilePath;
+ return FileUtil.toSystemIndependentName(myContainingFilePath);
+ }
+ if ("parent".equals(expression.getName()) && expression.isQualified()) {
+ Object qualifier = evaluate(expression.getQualifier());
+ if (qualifier instanceof String) {
+ return Paths.get((String)qualifier).getParent().toFile().getPath();
+ }
}
return super.evaluateReference(expression);
}
@@ -103,9 +117,22 @@ public class PyPathEvaluator extends PyEvaluator {
result = (String)arg;
}
else {
- result = new File(result, (String)arg).getPath().replace("\\", "/");
+ result = FileUtil.toSystemIndependentName(Paths.get(result, (String)arg).toFile().getPath());
}
}
return result;
}
+
+ @Override
+ protected @Nullable Object evaluateBinary(@NotNull PyBinaryExpression expression) {
+ final PyElementType operator = expression.getOperator();
+ if (operator == PyTokenTypes.DIV) {
+ final Object lhs = evaluate(expression.getLeftExpression());
+ final Object rhs = evaluate(expression.getRightExpression());
+ if (lhs instanceof String && rhs instanceof String) {
+ return FileUtil.toSystemIndependentName(Paths.get((String)lhs, (String)rhs).toFile().getPath());
+ }
+ }
+ return super.evaluateBinary(expression);
+ }
}
diff --git a/python/resources/pycharm_core_logo.png b/python/resources/pycharm_core_logo.png
index 3825b0b5c4a4..e504f3aa2988 100644
--- a/python/resources/pycharm_core_logo.png
+++ b/python/resources/pycharm_core_logo.png
Binary files differ
diff --git a/python/resources/pycharm_core_logo@2x.png b/python/resources/pycharm_core_logo@2x.png
index ba0e0b1b5c8d..9b8d88aeed43 100644
--- a/python/resources/pycharm_core_logo@2x.png
+++ b/python/resources/pycharm_core_logo@2x.png
Binary files differ
diff --git a/python/src/META-INF/python-core-common.xml b/python/src/META-INF/python-core-common.xml
index be4a074516f9..bd9b3d2c1e2a 100644
--- a/python/src/META-INF/python-core-common.xml
+++ b/python/src/META-INF/python-core-common.xml
@@ -408,7 +408,7 @@
<postStartupActivity implementation="com.jetbrains.python.sdk.poetry.PoetryConfigLoader" order="last"/>
<!-- Targets API -->
- <registryKey key="python.use.targets.api" defaultValue="true" description="Switches Python support to Targets API." />
+ <registryKey key="python.use.targets.api" defaultValue="false" description="Switches Python support to Targets API." />
<notificationGroup id="Python Debugger" displayType="TOOL_WINDOW" toolWindowId="Debug" bundle="messages.PyBundle" key="debug.notification.group"/>
<notificationGroup id="Python SDK Updater" displayType="BALLOON" bundle="messages.PyBundle" key="python.sdk.updater.notifications.group.title"/>
<notificationGroup id="Sync Python requirements" displayType="BALLOON" bundle="messages.PyBundle" key="python.requirements.balloon"/>
diff --git a/python/src/com/jetbrains/python/console/PydevConsoleCommunication.java b/python/src/com/jetbrains/python/console/PydevConsoleCommunication.java
index ce3a00a34465..106267a45b81 100644
--- a/python/src/com/jetbrains/python/console/PydevConsoleCommunication.java
+++ b/python/src/com/jetbrains/python/console/PydevConsoleCommunication.java
@@ -801,7 +801,7 @@ public abstract class PydevConsoleCommunication extends AbstractConsoleCommunica
final String renderersMessage = SetUserTypeRenderersCommand.createMessage(renderers);
return getPythonConsoleBackendClient().setUserTypeRenderers(renderersMessage);
},
- true,
+ false,
createRuntimeMessage(PyBundle.message("console.setting.user.type.renderers")),
"Error in setUserTypeRenderersSettings():"
);
diff --git a/python/src/com/jetbrains/python/console/PydevConsoleRunnerImpl.java b/python/src/com/jetbrains/python/console/PydevConsoleRunnerImpl.java
index 2307bdb466c8..63d47a4c7e0d 100644
--- a/python/src/com/jetbrains/python/console/PydevConsoleRunnerImpl.java
+++ b/python/src/com/jetbrains/python/console/PydevConsoleRunnerImpl.java
@@ -720,6 +720,9 @@ public class PydevConsoleRunnerImpl implements PydevConsoleRunner {
@Override
public void processTerminated(@NotNull ProcessEvent event) {
consoleView.setEditable(false);
+ // PY-53068: When we send to python side command `exit` we don't get notifyFinished,
+ // so we should clear Console Command Queue
+ consoleView.restoreQueueWindow(true);
}
});
diff --git a/python/src/com/jetbrains/python/console/PythonConsoleView.java b/python/src/com/jetbrains/python/console/PythonConsoleView.java
index bf8ce89e1894..1378bff616e7 100644
--- a/python/src/com/jetbrains/python/console/PythonConsoleView.java
+++ b/python/src/com/jetbrains/python/console/PythonConsoleView.java
@@ -560,7 +560,8 @@ public class PythonConsoleView extends LanguageConsoleImpl implements Observable
ApplicationManager.getApplication().invokeLater(() -> Disposer.dispose(myCommandQueue));
}
if (removeCommand) {
- myCommandQueuePanel.removeAllCommands();
+ ApplicationManager.getApplication().getService(CommandQueueForPythonConsoleService.class)
+ .removeCommand(myRunner.getPydevConsoleCommunication(), true);
}
}
diff --git a/python/testData/hierarchy/call/Static/Super/Super_callee_verification.xml b/python/testData/hierarchy/call/Static/Super/Super_callee_verification.xml
index aa1d1f9d0ad1..2bcb3c6ea24f 100644
--- a/python/testData/hierarchy/call/Static/Super/Super_callee_verification.xml
+++ b/python/testData/hierarchy/call/Static/Super/Super_callee_verification.xml
@@ -1,6 +1,6 @@
<node text="SubclassTwo.a_method(self) (SubclassTwo in hierarchy.call.Static.Super.main)" base="true">
- <node text="super.__init__(self, __t, __obj) (super in builtins stub)"/>
- <node text="super.__init__(self, __t) (super in builtins stub)"/>
+ <node text="super.__init__(self, t, obj) (super in builtins stub)"/>
+ <node text="super.__init__(self, t) (super in builtins stub)"/>
<node text="super.__init__(self) (super in builtins stub)"/>
<node text="SomeBaseClass.a_method(self) (SomeBaseClass in hierarchy.call.Static.Super.main)"/>
</node> \ No newline at end of file
diff --git a/python/testData/inspections/PyTypeCheckerInspection/ListLiteralPassedToIter.py b/python/testData/inspections/PyTypeCheckerInspection/ListLiteralPassedToIter.py
new file mode 100644
index 000000000000..33f9aba2b82d
--- /dev/null
+++ b/python/testData/inspections/PyTypeCheckerInspection/ListLiteralPassedToIter.py
@@ -0,0 +1 @@
+iter([1, 2, 3])
diff --git a/python/testSrc/com/jetbrains/python/Py3TypeTest.java b/python/testSrc/com/jetbrains/python/Py3TypeTest.java
index a4d874168b31..2ccccce7643f 100644
--- a/python/testSrc/com/jetbrains/python/Py3TypeTest.java
+++ b/python/testSrc/com/jetbrains/python/Py3TypeTest.java
@@ -467,7 +467,7 @@ public class Py3TypeTest extends PyTestCase {
// PY-21692
public void testSumResult() {
- doTest("int | Literal[0]",
+ doTest("int",
"expr = sum([1, 2, 3])");
}
@@ -1393,6 +1393,14 @@ public class Py3TypeTest extends PyTestCase {
assertExpressionType("dict[str, Any]", dict);
}
+ // PY-52656
+ public void testDictValuesType() {
+ doTest("int",
+ "d = {'foo': 42}\n" +
+ "for expr in d.values():\n" +
+ " pass");
+ }
+
private void doTest(final String expectedType, final String text) {
myFixture.configureByText(PythonFileType.INSTANCE, text);
final PyExpression expr = myFixture.findElementByText("expr", PyExpression.class);
diff --git a/python/testSrc/com/jetbrains/python/PyLineBreakpointTypeTest.kt b/python/testSrc/com/jetbrains/python/PyLineBreakpointTypeTest.kt
index 5d879e85a2f8..e04e476b6080 100644
--- a/python/testSrc/com/jetbrains/python/PyLineBreakpointTypeTest.kt
+++ b/python/testSrc/com/jetbrains/python/PyLineBreakpointTypeTest.kt
@@ -39,7 +39,7 @@ class PyLineBreakpointTypeTest : PyTestCase() {
// PY-16932
fun testPutAtPythonStub() {
val pythonFile = PyTypeShed.directory!!.findFileByRelativePath("stdlib/@python2/__builtin__.pyi")
- val line = 46
+ val line = 52
val document = FileDocumentManager.getInstance().getDocument(pythonFile!!)
val range = TextRange.create(document!!.getLineStartOffset(line), document.getLineEndOffset(line))
diff --git a/python/testSrc/com/jetbrains/python/PyPathEvaluatorTest.java b/python/testSrc/com/jetbrains/python/PyPathEvaluatorTest.java
index 592b820355cd..9f408fa3110f 100644
--- a/python/testSrc/com/jetbrains/python/PyPathEvaluatorTest.java
+++ b/python/testSrc/com/jetbrains/python/PyPathEvaluatorTest.java
@@ -50,6 +50,26 @@ public class PyPathEvaluatorTest extends PyTestCase {
assertEquals("/foo/subfolder/../bar.py", doEvaluate("os.path.abspath(os.path.join(os.path.join('/foo/subfolder', os.path.pardir, 'bar.py')))", "/foo/bar.py"));
}
+ // PY-13911
+ public void testPathlibRoot() {
+ assertEquals("/foo/bar/baz.py", doEvaluate("Path(__file__)", "/foo/bar/baz.py"));
+ }
+
+ // PY-13911
+ public void testPathlibParent() {
+ assertEquals("/foo", doEvaluate("Path(__file__).resolve().parent.parent", "/foo/bar/baz.py"));
+ }
+
+ // PY-13911
+ public void testPathlibAbsolutePath() {
+ assertEquals("/foo/bar", doEvaluate("Path('/foo/bar')", "/irrelevant"));
+ }
+
+ // PY-13911
+ public void testPathlibJoin() {
+ assertEquals("/foo/bar/baz.py", doEvaluate("Path(__file__).resolve() / 'bar' / 'baz.py'", "/foo"));
+ }
+
private String doEvaluate(final String text, final String file) {
final PyElementGenerator generator = PyElementGenerator.getInstance(myFixture.getProject());
final PyExpression expression = generator.createExpressionFromText(LanguageLevel.getLatest(), text);
diff --git a/python/testSrc/com/jetbrains/python/PyStructureViewTest.java b/python/testSrc/com/jetbrains/python/PyStructureViewTest.java
index 95bcfe2449e4..836c28bcd3f0 100644
--- a/python/testSrc/com/jetbrains/python/PyStructureViewTest.java
+++ b/python/testSrc/com/jetbrains/python/PyStructureViewTest.java
@@ -72,23 +72,24 @@ public class PyStructureViewTest extends PyTestCase {
" __class__(self)\n" +
" __init__(self)\n" +
" __new__(cls)\n" +
- " __setattr__(self, __name, __value)\n" +
- " __eq__(self, __o)\n" +
- " __ne__(self, __o)\n" +
+ " __setattr__(self, name, value)\n" +
+ " __eq__(self, o)\n" +
+ " __ne__(self, o)\n" +
" __repr__(self)\n" +
" __hash__(self)\n" +
- " __format__(self, __format_spec)\n" +
- " __getattribute__(self, __name)\n" +
- " __delattr__(self, __name)\n" +
+ " __format__(self, format_spec)\n" +
+ " __getattribute__(self, name)\n" +
+ " __delattr__(self, name)\n" +
" __sizeof__(self)\n" +
" __reduce__(self)\n" +
- " __reduce_ex__(self, __protocol)\n" +
+ " __reduce_ex__(self, protocol)\n" +
" __dir__(self)\n" +
" __init_subclass__(cls)\n" +
" __annotations__\n" +
" __dict__\n" +
" __doc__\n" +
- " __module__",
+ " __module__\n" +
+ " __slots__\n",
true);
}
@@ -116,24 +117,25 @@ public class PyStructureViewTest extends PyTestCase {
" __class__(self)\n" +
" __init__(self)\n" +
" __new__(cls)\n" +
- " __setattr__(self, __name, __value)\n" +
- " __eq__(self, __o)\n" +
- " __ne__(self, __o)\n" +
+ " __setattr__(self, name, value)\n" +
+ " __eq__(self, o)\n" +
+ " __ne__(self, o)\n" +
" __str__(self)\n" +
" __repr__(self)\n" +
" __hash__(self)\n" +
- " __format__(self, __format_spec)\n" +
- " __getattribute__(self, __name)\n" +
- " __delattr__(self, __name)\n" +
+ " __format__(self, format_spec)\n" +
+ " __getattribute__(self, name)\n" +
+ " __delattr__(self, name)\n" +
" __sizeof__(self)\n" +
" __reduce__(self)\n" +
- " __reduce_ex__(self, __protocol)\n" +
+ " __reduce_ex__(self, protocol)\n" +
" __dir__(self)\n" +
" __init_subclass__(cls)\n" +
" __annotations__\n" +
" __dict__\n" +
" __doc__\n" +
- " __module__",
+ " __module__\n" +
+ " __slots__\n",
true);
}
diff --git a/python/testSrc/com/jetbrains/python/inspections/Py3TypeCheckerInspectionTest.java b/python/testSrc/com/jetbrains/python/inspections/Py3TypeCheckerInspectionTest.java
index 9265727b928a..2044e3e490a8 100644
--- a/python/testSrc/com/jetbrains/python/inspections/Py3TypeCheckerInspectionTest.java
+++ b/python/testSrc/com/jetbrains/python/inspections/Py3TypeCheckerInspectionTest.java
@@ -767,4 +767,9 @@ public class Py3TypeCheckerInspectionTest extends PyInspectionTestCase {
public void testTypedDictInReturnType() {
doTest();
}
+
+ // PY-52648
+ public void testListLiteralPassedToIter() {
+ doTest();
+ }
}
diff --git a/python/testSrc/com/jetbrains/python/inspections/PyTypedDictInspectionTest.java b/python/testSrc/com/jetbrains/python/inspections/PyTypedDictInspectionTest.java
index 4cdc37489451..c89415ac2070 100644
--- a/python/testSrc/com/jetbrains/python/inspections/PyTypedDictInspectionTest.java
+++ b/python/testSrc/com/jetbrains/python/inspections/PyTypedDictInspectionTest.java
@@ -289,6 +289,22 @@ public class PyTypedDictInspectionTest extends PyInspectionTestCase {
" {'a': 1}.get(param)");
}
+ // PY-43689
+ public void testNoWarningOnTypesUsingForwardReferences() {
+ doTestByText("from typing import TypedDict\n" +
+ "class MyDict(TypedDict):\n" +
+ " sub: 'SubDict'\n" +
+ "class SubDict(TypedDict):\n" +
+ " foo: str");
+ }
+
+ // PY-43689
+ public void testNoWarningOnUnionTypesUsingBinaryOrOperator() {
+ doTestByText("from typing import TypedDict\n" +
+ "class A(TypedDict):\n" +
+ " a: int | str");
+ }
+
@NotNull
@Override
protected Class<? extends PyInspection> getInspectionClass() {
diff --git a/tools/intellij.ide.starter/src/com/intellij/ide/starter/utils/retry.kt b/tools/intellij.ide.starter/src/com/intellij/ide/starter/utils/retry.kt
index f9965759c9b0..5c28963f5818 100644
--- a/tools/intellij.ide.starter/src/com/intellij/ide/starter/utils/retry.kt
+++ b/tools/intellij.ide.starter/src/com/intellij/ide/starter/utils/retry.kt
@@ -13,11 +13,11 @@ suspend fun <T> withRetryAsync(retries: Long = 3, messageOnFailure: String = "",
}.retry(
retries = retries,
predicate = {
- it.printStackTrace()
-
if (messageOnFailure.isNotBlank())
logError(messageOnFailure)
+ it.printStackTrace()
+
logError("Retrying in 10 sec ...")
delay(Duration.seconds(10))
true