I've noticed the following problems when I publish a project:
1. Several objects in the project are related through the #when:send:to event mechanism. Not all the dependencies survive intact, though it looks as if some do. The one that didn't involved one of the published Morphs as a receiver; the others had non-graphical receivers. It may also matter that the source of the notifications kept its dependencies in the system-wide EventsFields, rather than its own instance variable (like EventModel).
2. The key data are rooted in a class variable of one of the project's classes. The data made it across, but the variable is nil.
Can anyone suggest a work around or fix for these problems? I think I remember someone else commenting that publishing can break dependencies. I'm not sure how it works for update/changed stuff.
Is there a way to get prolog and cleanup code into the project (e.g., in its change set)? If so, I could try (for problem 2) something horrible like MyClass setClassVariable: MyClass allInstances first since there's only one instance. I'm not sure if things would be in a proper state for it to work, though.
3. I also found an interesting problem and solution. I had a class accessor MyClass>>ross ^RossInstance where RossInstance was a global variable. When I tried to read the resultant project in I got an unrecognized key error. I got around this by deleting the method from the change set. (It seems likely that rewriting to Smalltalk at: #RossInstance might fix the problem also.)
4. Is there a way to move a project you have published to your local disk to the server without going through the entire publishing process? I'm publishing locally to test that it's working. When it is, it would be nice to be able to ship the project file off directly.
squeak-dev@lists.squeakfoundation.org