Skip to content

Code completion causes editor to hang #3506

Closed
@stevemessick

Description

@stevemessick

IDE hung 3 times during auto-complete. Required killing by OS.
Specifically, it was auto-completing something resembling the following:

class A {
 final List<B> aList ...
 someMethod() {
   aList[i].##HANG HERE##
 }
}

class B {
 someMember;
}

Was with previous build (Build 8124) -- I have since worked-around and upgraded.
HTH, Rupert.
////////////////////////////////////////////////////////////////////////////////////
Editor Version: 8370
////////////////////////////////////////////////////////////////////////////////////
OS: Windows 7 - amd64 (6.1)
SDK installed = true
Dartium installed = true
AnalysisServer enabled = true
////////////////////////////////////////////////////////////////////////////////////
mat.java:869)
       at java.text.DateFormat.format(DateFormat.java:316)
       at com.google.dart.tools.debug.core.util.ResourceServerHandler.createGETResponse(ResourceServerHandler.java:328)
       at com.google.dart.tools.debug.core.util.ResourceServerHandler.run(ResourceServerHandler.java:214)
       at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
       at java.lang.Thread.run(Thread.java:662)
!SESSION 2012-06-07 10:21:15.147 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_24
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data workspace

!ENTRY org.eclipse.jface 4 2 2012-06-07 11:27:15.476
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface".
!STACK 0
java.lang.NullPointerException
       at com.google.dart.tools.core.internal.model.DartLibraryImpl.buildStructure(DartLibraryImpl.java:925)
       at com.google.dart.tools.core.internal.model.OpenableElementImpl.generateInfos(OpenableElementImpl.java:482)
       at com.google.dart.tools.core.internal.model.DartElementImpl.openWhenClosed(DartElementImpl.java:542)
       at com.google.dart.tools.core.internal.model.DartElementImpl.getElementInfo(DartElementImpl.java:318)
       at com.google.dart.tools.core.internal.model.DartElementImpl.getElementInfo(DartElementImpl.java:303)
       at com.google.dart.tools.core.internal.model.DartElementImpl.getChildren(DartElementImpl.java:256)
       at com.google.dart.tools.core.internal.model.DartModelManager.create(DartModelManager.java:430)
       at com.google.dart.tools.core.internal.model.DartModelManager.create(DartModelManager.java:496)
       at com.google.dart.tools.core.DartCore.create(DartCore.java:253)
       at com.google.dart.tools.ui.internal.filesview.ResourceLabelProvider.getStyledText(ResourceLabelProvider.java:107)
       at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.getStyledText(DelegatingStyledCellLabelProvider.java:195)
       at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getStyledText(DecoratingStyledCellLabelProvider.java:192)
       at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.update(DelegatingStyledCellLabelProvider.java:103)
       at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.update(DecoratingStyledCellLabelProvider.java:134)
       at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152)
       at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:938)
       at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:106)
       at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
       at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
       at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
       at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1018)
       at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:485)
       at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
       at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
       at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
       at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2167)
       at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2730)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1908)
       at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1915)
       at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1883)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1840)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1826)
       at org.eclipse.jface.viewers.StructuredViewer$7.run(StructuredViewer.java:1508)
       at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1443)
       at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403)
       at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1404)
       at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1506)
       at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:537)
       at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1465)
       at com.google.dart.tools.ui.internal.filesview.ResourceContentProvider$1.run(ResourceContentProvider.java:124)
       at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
       at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
       at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4140)
       at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
       at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:173)
       at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:388)
       at org.eclipse.ltk.internal.ui.refactoring.RefactoringWizardDialog2.run(RefactoringWizardDialog2.java:331)
       at org.eclipse.ltk.ui.refactoring.RefactoringWizard.internalPerformFinish(RefactoringWizard.java:605)
       at org.eclipse.ltk.ui.refactoring.UserInputWizardPage.performFinish(UserInputWizardPage.java:153)
       at org.eclipse.ltk.ui.refactoring.resource.DeleteResourcesWizard$DeleteResourcesRefactoringConfigurationPage.performFinish(DeleteResourcesWizard.java:151)
       at org.eclipse.ltk.ui.refactoring.RefactoringWizard.performFinish(RefactoringWizard.java:678)
       at org.eclipse.ltk.internal.ui.refactoring.RefactoringWizardDialog2.okPressed(RefactoringWizardDialog2.java:455)
       at org.eclipse.jface.dialogs.Dialog.buttonPressed(Dialog.java:472)
       at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:624)
       at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240)
       at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
       at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
       at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
       at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
       at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
       at org.eclipse.jface.window.Window.open(Window.java:801)
       at org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation$1.run(RefactoringWizardOpenOperation.java:181)
       at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
       at org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation.run(RefactoringWizardOpenOperation.java:193)
       at org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation.run(RefactoringWizardOpenOperation.java:116)
       at org.eclipse.ltk.internal.ui.refactoring.actions.DeleteResourcesHandler.execute(DeleteResourcesHandler.java:40)
       at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293)
       at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
       at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
       at org.eclipse.ui.internal.handlers.HandlerService.executeCommandInContext(HandlerService.java:270)
       at org.eclipse.ui.internal.ide.actions.LTKLauncher.runCommand(LTKLauncher.java:95)
       at org.eclipse.ui.internal.ide.actions.LTKLauncher.openDeleteWizard(LTKLauncher.java:47)
       at com.google.dart.tools.ui.actions.DeleteResourceAction.run(DeleteResourceAction.java:133)
       at com.google.dart.tools.ui.actions.DeleteAction.run(DeleteAction.java:42)
       at com.google.dart.tools.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:230)
       at com.google.dart.tools.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:115)
       at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
       at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
       at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
       at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
       at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
       at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
       at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
       at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
       at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
       at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
       at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
       at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
       at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
       at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
       at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
       at com.google.dart.tools.deploy.DartIDEApplication.start(DartIDEApplication.java:48)
       at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
       at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
       at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
       at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
       at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:597)
       at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
       at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
       at org.eclipse.equinox.launcher.Main.run(Main.java:1410)

!ENTRY org.eclipse.ltk.ui.refactoring 4 10000 2012-06-07 11:27:16.361
!MESSAGE Internal Error
!STACK 1
org.eclipse.core.internal.resources.ResourceException: Problems encountered while deleting resources.
       at org.eclipse.core.internal.resources.Resource.delete(Resource.java:793)
       at org.eclipse.core.internal.resources.Project.delete(Project.java:344)
       at org.eclipse.ltk.core.refactoring.resource.DeleteResourceChange.perform(DeleteResourceChange.java:132)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation$1.run(PerformChangeOperation.java:258)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.executeChange(PerformChangeOperation.java:306)
       at org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation.executeChange(UIPerformChangeOperation.java:92)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.run(PerformChangeOperation.java:218)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.internal.ui.refactoring.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:87)
       at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Contains: Could not delete '${user.home}\dart\asd\asd.dart'.
org.eclipse.core.runtime.CoreException: Problems encountered while deleting files.
       at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:125)
       at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:304)
       at org.eclipse.core.internal.resources.ResourceTree.internalDeleteProject(ResourceTree.java:384)
       at org.eclipse.core.internal.resources.ResourceTree.standardDeleteProject(ResourceTree.java:837)
       at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1939)
       at org.eclipse.core.internal.resources.Resource.delete(Resource.java:780)
       at org.eclipse.core.internal.resources.Project.delete(Project.java:344)
       at org.eclipse.ltk.core.refactoring.resource.DeleteResourceChange.perform(DeleteResourceChange.java:132)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation$1.run(PerformChangeOperation.java:258)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.executeChange(PerformChangeOperation.java:306)
       at org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation.executeChange(UIPerformChangeOperation.java:92)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.run(PerformChangeOperation.java:218)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.internal.ui.refactoring.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:87)
       at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Contains: Could not delete: ${user.home}\dart\asd\asd.dart.
Contains: Could not delete '${user.home}\dart\asd'.
!SUBENTRY 1 org.eclipse.core.resources 4 273 2012-06-07 11:27:16.362
!MESSAGE Problems encountered while deleting resources.
!SUBENTRY 2 org.eclipse.core.resources 4 273 2012-06-07 11:27:16.362
!MESSAGE Could not delete '${user.home}\dart\asd\asd.dart'.
!STACK 1
org.eclipse.core.runtime.CoreException: Problems encountered while deleting files.
       at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:125)
       at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:304)
       at org.eclipse.core.internal.resources.ResourceTree.internalDeleteProject(ResourceTree.java:384)
       at org.eclipse.core.internal.resources.ResourceTree.standardDeleteProject(ResourceTree.java:837)
       at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1939)
       at org.eclipse.core.internal.resources.Resource.delete(Resource.java:780)
       at org.eclipse.core.internal.resources.Project.delete(Project.java:344)
       at org.eclipse.ltk.core.refactoring.resource.DeleteResourceChange.perform(DeleteResourceChange.java:132)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation$1.run(PerformChangeOperation.java:258)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.executeChange(PerformChangeOperation.java:306)
       at org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation.executeChange(UIPerformChangeOperation.java:92)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.run(PerformChangeOperation.java:218)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.internal.ui.refactoring.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:87)
       at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Contains: Could not delete: ${user.home}\dart\asd\asd.dart.
!SUBENTRY 3 org.eclipse.core.filesystem 4 273 2012-06-07 11:27:16.362
!MESSAGE Problems encountered while deleting files.
!SUBENTRY 4 org.eclipse.core.filesystem 4 273 2012-06-07 11:27:16.362
!MESSAGE Could not delete: ${user.home}\dart\asd\asd.dart.
!SUBENTRY 2 org.eclipse.core.resources 4 273 2012-06-07 11:27:16.362
!MESSAGE Could not delete '${user.home}\dart\asd'.

!ENTRY org.eclipse.core.resources 4 273 2012-06-07 11:27:16.365
!MESSAGE Problems encountered while deleting resources.
!SUBENTRY 1 org.eclipse.core.resources 4 273 2012-06-07 11:27:16.365
!MESSAGE Could not delete '${user.home}\dart\asd\asd.dart'.
!STACK 1
org.eclipse.core.runtime.CoreException: Problems encountered while deleting files.
       at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:125)
       at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:304)
       at org.eclipse.core.internal.resources.ResourceTree.internalDeleteProject(ResourceTree.java:384)
       at org.eclipse.core.internal.resources.ResourceTree.standardDeleteProject(ResourceTree.java:837)
       at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1939)
       at org.eclipse.core.internal.resources.Resource.delete(Resource.java:780)
       at org.eclipse.core.internal.resources.Project.delete(Project.java:344)
       at org.eclipse.ltk.core.refactoring.resource.DeleteResourceChange.perform(DeleteResourceChange.java:132)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.CompositeChange.perform(CompositeChange.java:278)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation$1.run(PerformChangeOperation.java:258)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.executeChange(PerformChangeOperation.java:306)
       at org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation.executeChange(UIPerformChangeOperation.java:92)
       at org.eclipse.ltk.core.refactoring.PerformChangeOperation.run(PerformChangeOperation.java:218)
       at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
       at org.eclipse.ltk.internal.ui.refactoring.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:87)
       at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Contains: Could not delete: ${user.home}\dart\asd\asd.dart.
!SUBENTRY 2 org.eclipse.core.filesystem 4 273 2012-06-07 11:27:16.365
!MESSAGE Problems encountered while deleting files.
!SUBENTRY 3 org.eclipse.core.filesystem 4 273 2012-06-07 11:27:16.365
!MESSAGE Could not delete: ${user.home}\dart\asd\asd.dart.
!SUBENTRY 1 org.eclipse.core.resources 4 273 2012-06-07 11:27:16.365
!MESSAGE Could not delete '${user.home}\dart\asd'.
!SESSION 2012-06-07 11:59:41.522 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_24
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data workspace

!ENTRY org.eclipse.core.resources 2 10035 2012-06-07 11:59:42.874
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
!SESSION 2012-06-07 12:02:59.363 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_24
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data workspace

!ENTRY org.eclipse.core.resources 2 10035 2012-06-07 12:03:00.966
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
!SESSION 2012-06-07 12:25:16.524 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_24
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data workspace

!ENTRY org.eclipse.core.resources 2 10035 2012-06-07 12:25:18.132
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.

Metadata

Metadata

Assignees

Labels

closed-cannot-reproduceClosed as we were unable to reproduce the reported issue

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions