It is, And we fixed that in 3.0 a month ago. The problem is that a special behaviour is needed when the code is accepted. The fix could be back ported without too much problem I think Ben On Jul 4, 2013, at 5:11 PM, Paul DeBruicker <pdebruic@gmail.com> wrote:
On 07/03/2013 10:43 PM, Marcus Denker wrote:
On Jul 4, 2013, at 12:04 AM, Paul DeBruicker <pdebruic@gmail.com> wrote:
Is there any documentation on the changes between 1.4 and 2 for the refactoring tools? Or how to use them effectively to refactor code?
I'm familiar with Lukas Renggli's writing on them and used them regularly in 1.4.
I'm just trying to use the RBParseTreeRewriter from within a workspace but with it limited to a package or class hierarchy.
There should be no changes on that level. The difference just is that we use another UI.
Marcus
Camillo and I deteremined that its probably a Nautilus bug that prevents the "Code Rewriting" tools from working in Pharo 2 (I'm using 20606) from within the browser (see http://forum.world.st/how-to-use-RBClassRegexRefactoring-in-Pharo-2-td469578...). But in 1.4 you could use Omnibrowser & the Code rewriting tools.
Since writing the original email in this thread I figured out that in a Workspace you could do this:
environment := RBBrowserEnvironment new forClasses: Collection withAllSubclasses.
rule := RBTransformationRule new. rule rewriteRule replace: '`@object isEmpty' with: '`@object isNotEmpty'.
RBSmalllintChecker runRule: rule onEnvironment: environment.
change := RBCompositeRefactoryChange new. change changes: rule changes. change execute
to rewrite code.