Now on SqueakMap.
This version has a new analysis for multiple modules. This means you can now ask questions like "is Sunit hierarchially structured?" (yes) "is Balloon3D?" (well, not quite) "No? why not?" (you'll get a list of references that create a cyclic dependency between classes that are not in the same system category).
Load it and do -
mma _ MultiModuleAnalyzer onPackageNamedStarting: 'Balloon3D' mma isNonCyclic. mma packageStrongComponents. mma badStrongComponentsIn: mma packageStrongComponents. MessageSet openMessageList: mma cycleExampleForLargestPackageStrongComponent name: 'Methods that create one bad cycle'.
More tutorial material is available on the SM package description, which I've cleaned up and updated.
Especially if you maintain a package that spans more than one category, trying it out and let me know if it helps you find problems or find bogus problems, so forth.
Daniel Vainsencher
Daniel,
I got: 'MessageNotUnderstood: methodsFor:stamp:'
Please find attached the log file.
Cheers,
PhiHo.
----- Original Message ----- From: danielv@netvision.net.il To: "squeak" squeak-dev@lists.squeakfoundation.org Sent: Friday, November 01, 2002 2:16 PM Subject: [ANN] Spaghetti Tracer (0.4)
Now on SqueakMap.
This version has a new analysis for multiple modules. This means you can now ask questions like "is Sunit hierarchially structured?" (yes) "is Balloon3D?" (well, not quite) "No? why not?" (you'll get a list of references that create a cyclic dependency between classes that are not in the same system category).
Load it and do -
mma _ MultiModuleAnalyzer onPackageNamedStarting: 'Balloon3D' mma isNonCyclic. mma packageStrongComponents. mma badStrongComponentsIn: mma packageStrongComponents. MessageSet openMessageList: mma cycleExampleForLargestPackageStrongComponent name: 'Methods that create one bad cycle'.
More tutorial material is available on the SM package description, which I've cleaned up and updated.
Especially if you maintain a package that spans more than one category, trying it out and let me know if it helps you find problems or find bogus problems, so forth.
Daniel Vainsencher
squeak-dev@lists.squeakfoundation.org