[modules] [FIX/ENH] Remote up-and downloading of modules + more

Henrik Gedenryd h.gedenryd at open.ac.uk
Thu Feb 14 13:12:48 UTC 2002


Fixes to make remote module up- and downloading work, plus lots more.

I recommend that peole test this before it goes into the update stream.
There are changes to FileDirectory, ServerDirectory and HTTP/FTP classes
that *may* cause problems for other code. I have spent too much time on
tests on Mac and Win, but nonetheless.

Note: nameLookUpFixes and RemoteLoadingFixesPre should be loaded before
RemoteLoadingFixes.

Longer descriptions follow.

-- Henrik

PS. Does anyone remember that it was said a few moths ago that modules was
going to be a collective effort?

---

Main feature #1: This also makes module unloading work without hitches.
VMConstruction and Balloon3D had been made unloadable already. See this
swiki page:

http://minnow.cc.gatech.edu/squeak/2257

Main feature #2: Makes remote up-and downloading work properly. This uses
ftp for uploads and http for downloads. You can try each one of these
separately:

    ModuleInstaller fullyInstallFromPath: #(People hg ModuleDemos di
KidsRefrigeratorMagnets)
        "KidsRefrigeratorMagnet newGame"

    ModuleInstaller fullyInstallFromPath: #(People hg ModuleDemos nk
MagneticPoetry)
        "NCMagnetRefrigerator setup"

    ModuleInstaller fullyInstallFromPath: #(People hg ModuleDemos nk
Connectors)
        "NCButtonBar newClassDiagramToolbar openInWorld.
         NCButtonBar newFSMToolbar openInWorld"

If you do mind a very cluttered desktop, "NCMagnetRefrigerator setup" gives
you a cleanup button.

    ModuleInstaller fullyInstallFromPath: #(People hg ModuleDemos Comanche
Swiki)
        "ComSwikiLauncher openAsMorph"

    ModuleInstaller fullyInstallFromPath: #(People hg ModuleDemos Comanche
Kom Core)

Note the new preference in the modules panel that controls access to remote
repositories.

Keep the Transcript open to see progress messages, there are hooks for a
proper progress dialog for the inclined. The last one loads just the core of
Comanche without the Swiki module.

Note that these are just demos, not properly modularized, well-structured
module versions of the above packages. That is why they are placed under
e.g.

    #(People hg ModuleDemos nk Connectors)

instead of 

    #(People nk Connectors)

which would be the place where the real author would put it.

---

More detailed list of fixes:

Fixes a couple of bugs noted here, such as Craig's browser search bug and
Andreas' name leak bug.

Introduces a shortcut for declaring external modules:

    aModule uses: anotherModule

Makes Undeclared kick in properly for forward references.

Small fixes to make unloading of modules work properly. VMConstruction and
Balloon3D already have been refactored to unload completely.

Sets the correct identity of the SqF module server.

Makes DeltaModules more well-defined with a change in the delta
representation. Note: An image cannot have any DeltaModules in it when this
is loaded, because of this change.

The http/ftp fixes include a correct Squeak version in the user agent, and a
class variable to turn Transcript output on or off (off by default). The
capability to bypass proxies is now in ServerDirectory, as the result of an
ugly battle with our U. firewall (what? you say the file I just uploaded
doesn't exist?).

Better ServerDirectory protocol for multi-action sessions (more than one
ServerDirectory action within a single ftp session).

Also corrects the use of proxies in several places.

Some fixes to FileDirectory, including change sets. Please try these on
different platforms!

There are tests for remote up- and downloading. These require write access
to a combined ftp/http server.




-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/zip
Size: 37658 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20020214/9576d898/attachment.zip


More information about the Squeak-dev mailing list