[Cuis-dev] Package Downloader - First demo

Juan Vuletich juan at jvuletich.org
Sat Nov 27 15:35:04 PST 2021

Hi Mariano,

This is very nice!


On 11/27/2021 11:07 AM, Mariano Montone via Cuis-dev wrote:
> Hello.
> I'm attaching a first demo of a package downloader tool I'm developing.

Nice. But if I answer no I get a walkback.

> It depends on PackageInstaller atm (btw, I attach an update on the
> package installer that warns the user that package scanning can take
> time before continuing, suggested by Ken).

After installing both, I see
Undeclared a Dictionary(#PackageListBuilder->nil )
Most likely harmless. I guess the offending method should just be deleted.

> This is how the PackageDownloader works atm:
> - The list of remote packages is maintained in a CSV file. That list of
> files contains package only name of the package and raw package url. It
> is here at the moment:
> https://gist.github.com/mmontone/f43e8c36fa8d3954163289b40670b1d9. This
> is the only list of packages that need to be maintained.

Does this list need to be updated on each package commit? It looks like 
the commit hash is part of the id of each package. If this is true, it 
is a bummer!

> - I have a script that processes that list and produces a JSON spec of
> the packages, that the download tool can work with.
> It is here for now:
> https://bitbucket.org/mmontone/cuis-smalltalk-packageinstaller/downloads/packages.json
> - The PackageDownloader tool downloads that json file and works with it.
> - For downloading and installing a package, package dependencies are
> downloaded too, but taking into account the locally installed packages.
> - There's no effort for supporting packages versions. The
> PackageDownloader looks at the names of the packages and downloads if
> necessary, but Cuis inner machinery is used for dealing with package
> loads and features.

Maybe we can add that later. Especially when a local version is 
available, but outdated.

> It would be great if someone can take a look and give me some feedback.
> Main issue right now is that the list of local packages may be
> out-of-sync, because determining the list of local packages needs a
> costly disk scan.

Both tools are already great. There is always room for future improvement.

> One last thing, may I suggest you try with one of my packages? They live
> at bitbucket at the moment, and the package downloader makes it easy to
> install.
> Open PackageDownloader and download and install the 'Props-Preferences'
> package.
> Then you can do two things:
> 1) Open Preferences ->  All preferences , and see a tool for editing
> preferences.
> 2) Open halos on any Morph, and you'll have a new green halo for editing
> the Morph's properties with a tool.

Very nice. Downloads and installs ok on my mac. However `Smalltalk 
browseUndeclaredReferences` shows additional undeclared variables.

> Thank you!,
> Mariano


> El 25/11/21 a las 19:30, Mariano Montone escribió:
>> I'm attaching an update.
>> Review this version please instead. It is more compact. It consists of
>> only two classes.
>> Mariano
>> El 25/11/21 a las 17:18, Mariano Montone escribió:
>>> Hello Juan,
>>> I'm submitting (see attached) an initial version of the Package
>>> Installer for review.
>>> The code needs to be better commented, methods classified, etc. But I
>>> would like to know if there are any major objections first; my plan is
>>> to clean things up once it is on a git repository.
>>> Can you have a look and give me some feedback?
>>> To run select: World Menu ->  Open ->  Package Installer.
>>> Thanks!
>>> Mariano

Juan Vuletich

More information about the Cuis-dev mailing list