In Pharo 5.0 I see deprecated classes stripped of all methods and variables defined in a package like...
Object subclass: #NBExternalStructure
instanceVariableNames: ''
classVariableNames: ''
package: 'Deprecated50'
It was was useful having these remain to facilitate loading Pharo 4.0's TalkFFI for a first look at porting it to Pharo 5.0. Somewhat expectedly, the class initialization fails with...
MessageNotUnderstood: CXIdxDeclInfoStruct class>>rebuildFieldAccessors
(since that method used to be in NBExternalStructure
due to "NBExternalStructure subclass: #CXIdxDeclInfoStruct)
But it would be nicer to get a Deprecated message rather than a MNU, initially something simple like this...
Deprecated subclass: #NBExternalStructure
Deprecated class >> doesNotUnderstand:
DeprecatedError signal.
but maybe later something like...
Deprecated class >> doesNotUnderstand:
Transcript crShow: self deprecationNotes.
DeprecatedError signal.
NBExternalStructure class >> deprecationNotes
^ 'Blah-d-blah. Use UFFIXxxxxx instead'.
cheers -ben