Hi,
This is my first time here so I hope this is the right place to ask questions.
It is. :)
I want to be able to compile these methods programatically without interruptions (using method source strings only) and gather all compiler errors that occur. What would be the best way to go about this?
It is certainly a way. Compilation errors will raise SyntaxErrorNotifications that you can capture, e.g. sthClass := Object subclass: #Something. [ sthClass compile: '^^' classified: 'protocol-name' ] on: SyntaxErrorNotification do: [ :err | err inspect ]
Also: How do I control in which package a compiled method ends up if the target class is in a different package (Method extension)?
Methods are stored in protocols (accessing, initialization, as yet unclassified). If you however start the name with an asterisk *, then the method will become an extension method and will be stored in the package name following the asterisk. e.g. sthClass := Object subclass: #Something. sthClass compile: 'methodName self lives somewhere else' classified: '*SomewhereElse'.
Any help would be greatly appreciated!
I would (shameless self-promotion) also recommend looking at this https://github.com/peteruhnak/pharo-changes-builder , so you could review the changes before actually compiling them. Peter