GemTalk / Jadeite

IDE for GemStone Smalltalk application development using Rowan code management
MIT License
6 stars 2 forks source link

(3.2.10) RowanClassService>>moveMethods:to: should not use the category name as a literal package name ... #950

Closed dalehenrich closed 2 years ago

dalehenrich commented 2 years ago

... hybrid/Monticello category names are case insensitive and package names are case sensitive so a category name like 'rowan-testsv2is a legal category name that refers to a package namedRowan-TestsV2, but RowanClassService>>moveMethods:to: assumes that that the package name can be constructed by simply stripping the leading$` ...

Furthermore, for Rowan package convention projects, the category name is not related to any package ... If it is necessary to create a projectService instance when a method is moved to a different package, then we need to collaborate on a better algorithm. However, since the packageService/projectService instances are not preserved, it may not be necessary to do anything at all?

ericwinger commented 2 years ago

Move now gets the package & project from the method itself, both before and after the move. Then those packages and projects are updated to refresh the dirty flag. https://github.com/GemTalk/RowanClientServices/commit/877a5b480295df5d05b46a543a94bce0dd9d56b6

Still need to write a test.

ericwinger commented 2 years ago

Added JadeiteProjectBrowserClassesTestCase>>test_moveMethodDirtiesPackage to client test suite.