Loading Pier 3.2 in Pharo 8 fails with the error:
This package depends on the following classes: SHParserST80 You must resolve these dependencies before you will be able to load these definitions: SHParserST80>>#ranges
The problem is clear from the code:
SPHighlightedCode>>rangesFor: aString "Try to find out if this is a method, maybe with a class declaration. Otherwise parse as expression." | parser index string | parser := SHParserST80 new. parser classOrMetaClass: classOrMetaClass.
This is found in the NECompletion
package, which is loaded in BaselineOfBasicTools & BaselineOfIDE.
The shout package is used for code blocks like this (taken from Pillar docs):
[[[label=script1|caption=My script that works|language=smalltalk self foo bar ]]]
Unfortunately these square brackets haven't worked in Pier since before Pharo 5. Removing the shout package seems like a logical choice.
A second problem is the load order for the Seaside and Grease. For Pharo 7 it can be loaded in either order, but for Pharo 8 if conflicts are ignored, or #onConflictUseIncoming
is used, then http://localhost:8080 brings up the error:
Internal Error: BlockClosure>> #fixCallbackTemps
Using #onConflictUseLoaded
resolves this problem.