SqueakSource with diff generation
Doug Way
dway at mailcan.com
Fri Aug 12 04:45:34 UTC 2005
Some good news, it looks like I figured out the diff-file generation
problem. (problem #2 below)
I managed to put a halt in the diff generating code that was being
executed, and found it was in an infinite loop trying to create an
error stack caused by a different problem. The infinite loop was
because SocketStream>>printString is broken (in 3.7/3.8/3.9, I'll post
a fix). After fixing that, I got a different infinite loop because it
was trying to email the error stack somewhere (maybe configured to
Bert's address), which caused a connection error, which then tried to
email another error stack for that, etc. I might be tempted to just
dump error stacks into a log directory on the server rather than
emailing them, hm.
Anyway, after fixing that, the root cause of the error was because I
did actually have the wrong version of Monticello loaded, which I was
trying to get around the SimpleServiceEntry problem earlier. Loading
the version specified by Bert fixed that.
So, .mcd file generation is working nicely, and using
#updateFromRepositories and #upgrade on the MCConfiguration map from a
client image appears to work, which is how the automatic updating will
work.
I'd still like to fix problem #1, though, since the SS image will be a
bit crippled with my hack in there. Then I will try replacing the SS
image at http://source.squeakfoundation.org and see how it goes...
- Doug
On Aug 10, 2005, at 12:48 AM, Doug Way wrote:
>
> Ok, here's my current progress, I've only been working on this
> sporadically.
>
> I'm able to get a SqueakSource image loaded with Bert's packages (with
> tweaks), and mostly working, but the diff-file generation doesn't work
> in this image, either. Basically pretty similar to what we have
> running now, I guess. :|
>
> There's two main problems I'm running into:
>
> 1. This SqueakSource (SS) setup is based on Squeak 3.7, but the
> version of Monticello (bf.254) in Bert's package list is not
> compatible with 3.7. (avi.231 is not compatible with 3.7 either.) If
> you load either of these versions in 3.7, loading .mcz files no longer
> works. I came up with a quick hack which seems to fix it (see
> attached changeset), but it causes other problems with loading regular
> changesets.
>
> 2. The diff-file (.mcd) generation hangs in the SS image. Well, it
> doesn't hang the SS image, it just doesn't send back a http response.
> Requesting any file ending in .mcd seems to do this, other files are
> either found or return a "not found" error. I haven't really dug into
> this yet. I don't think this is related to problem #1 but who
> knows...
>
> I think the missing link here may be the "SystemFixes-bf.1" package
> from Bert's list, which is not available anywhere that I can find... I
> think it may be a few key fixes in a private package. :)
>
> Anyway, if anyone wants to set up a mostly-working SqueakSource image
> to get to the exact same point that I'm at now, here are the steps you
> can follow: (I will post these to the swiki once it's all working,
> since there seems to be a lack of SqueakSource how-tos out there)
>
> - Start with a fresh 3.7-5989-basic image.
> - Load these packages in roughly this order. (These are from Bert's
> working configuration... they are available on SqueakMap or on
> source.impara.de.)
> - DynamicBindings-gk.1.mcz
> - KomServices-gk.2.mcz
> - PackageInfo-Base-bf.22.mcz
> - Monticello-bf.254.mcz
> - Install my SimpleServicesHack-dew changeset (attached to this
> email), to allow additional .mcz files to load
> - KomHttpServer-gk.6.mcz
> - Seaside2-avi.86.mcz
> - Mewa-al.13.mcz
> - TinyWiki-lr.10.mcz
> - SqueakSource-bf.146.mcz
> - MonticelloConfigurations-bf.26.mcz
> - TweakMC-bf.11.mcz (not needed? seems to be only Tweak-related)
> - run the first few lines of code in SSRepository class>>initialize
> - change SSRepository class>>startUp to include
> 'http://localhost:9090/' as the RootUrl.
> - execute "SSRepository startUp" in a workspace
> - open any web browser on http://localhost:9090. SqueakSource
> works... hooray!
>
> To continue with more serious testing:
> - add a new Member for yourself via squeaksource web browser ui
> - open an inspector on "SSRepository current" in the image, drill down
> to members/(your id) and set your superuser flag to true.
> - create a new project via the squeaksource web ui, and try saving new
> versions of a package to the project, seems to work.
> - getting files directly e.g.
> http://localhost:9090/dougsproj/Kernel-dew.1.mcz works.
> - getting a diff file e.g.
> http://localhost:9090/dougsproj/Kernel-md.5%28dew.1%29.mcd doesn't
> respond, though.
>
>
> - Doug
>
>
> <SimpleServiceHack-dew.1.cs>
>
More information about the Packages
mailing list