|
When you delete a class that is referenced, its supposed to show you the refactoring dialog - instead you get a debugger for a refactoring error signal (twice). If you proceed , you do eventually get the expected dialog that lets you choose to delete it.
Pharo 7.0 build 1198 64bit (osx) - however I don't think platform is important.
I think the SycRefactoringPreview isn't properly catching these execptions and safely throwing them away?
RBRemoveClassRefactoring(RBRefactoring)>>refactoringError:with: RBRemoveClassRefactoring(RBRefactoring)>>checkPreconditions RBRemoveClassRefactoring(RBRefactoring)>>primitiveExecute [ :each | each model environment: rbEnvironment. each primitiveExecute ] in SycRefactoringPreview>>generateChanges in Block: [ :each | ... Array(SequenceableCollection)>>do: SycRefactoringPreview>>generateChanges SycRefactoringPreview>>updateChanges [ :scope | scope ifNotNil: [ self updateChanges ] ] in SycRefactoringPreview>>initializeScopeDropList in Block: [ :scope | scope ifNotNil: [ self updateChanges ] ...etc... BlockClosure>>cull: BlockClosure>>cull:cull: BlockClosure>>cull:cull:cull: BlockClosure>>cull:cull:cull:cull: [ :new :old :announcement :ann | aBlock cull: (new ifNotNil: [ :item | item model ]) cull: old cull: announcement cull: ann ] in DropListPresenter>>whenSelectedItemChanged: in Block: [ :new :old :announcement :ann | ... BlockClosure>>cull:cull:cull:cull: [ :announcement :ann | aBlock cull: announcement newValue cull: announcement oldValue cull: announcement cull: ann ] in NewValueHolder(Model)>>whenChangedDo: in Block: [ :announcement :ann | ... BlockClosure>>cull:cull: [ action cull: anAnnouncement cull: announcer ] in AnnouncementSubscription>>deliver: in Block: [ action cull: anAnnouncement cull: announcer ] BlockClosure>>on:do: BlockClosure>>on:fork: AnnouncementSubscription>>deliver: [ "Ensure delivery to remaining announcements" subscription deliver: anAnnouncement ] in SubscriptionRegistry>>deliver:to:startingAt: in Block: [ "Ensure delivery to remaining announcements" sub...etc... BlockClosure>>ifCurtailed: SubscriptionRegistry>>deliver:to:startingAt: SubscriptionRegistry>>deliver:to: SubscriptionRegistry>>deliver: Announcer>>announce: NewValueHolder>>valueChanged: [ | oldValue | oldValue := value. value := anObject. self valueChanged: oldValue ] in NewValueHolder>>value: in Block: [ | oldValue |... BlockClosure>>ensure: NewValueHolder>>handleCircularReferencesWhile:
|
|
|
Priority: 2 – Really Important
|
|
Status: Work Needed
|
|
Assigned to: Everyone
|
|
Milestone: Pharo7.0
|
Go to Case
|
|