ConfigurationOfFileSystem 2.0.4 missing FS-Memory-CamilloBruni.7

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

ConfigurationOfFileSystem 2.0.4 missing FS-Memory-CamilloBruni.7

Ben Coman-2
Camilo,

The latest ConfigurationOfFilesystem-CamilloBruni.29 have stable version
'2.0.4'.
dependent on FS-Memory-CamilloBruni.7 which does not exist on squeaksource.

So (Smalltalk at: #ConfigurationOfFilesystem) load.
fails (on Pharo 1.3-13315)


Dale,

I'm not sure if this is a Metacello issue, but if a required mcz cannot
be found for download, can the exception handling be more graceful?  
There is no code error to debug.  The required mcz simply did not exist
on squeaksource.  A standard alert dialog informing the reader of this
would be better than the debugger, possibly even with a button which
opens the Monticello Repository Inspector where the missing file was
expected to be.  This would make it easier for a user to determine what
was going on and determine the next course of action.

In this case I can see that FS-Memory-CamilloBruni.5 exists and that
this is referenced by Configuration version 2.0.3.
so ((Smalltalk at: #ConfigurationOfFilesystem) project version: '2.0.3')
load.
was successful.

Also, does Metacello provide an automated check that developers can use
to check dependencies exist at the correct remote locations, ignoring
the local package-cache ?

cheers, -ben
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfFileSystem 2.0.4 missing FS-Memory-CamilloBruni.7

Frank Shearar-3
On 9 February 2012 05:06, Ben Coman <[hidden email]> wrote:

> Camilo,
>
> The latest ConfigurationOfFilesystem-CamilloBruni.29 have stable version
> '2.0.4'.
> dependent on FS-Memory-CamilloBruni.7 which does not exist on squeaksource.
>
> So (Smalltalk at: #ConfigurationOfFilesystem) load.
> fails (on Pharo 1.3-13315)
>
>
> Dale,
>
> I'm not sure if this is a Metacello issue, but if a required mcz cannot be
> found for download, can the exception handling be more graceful?  There is
> no code error to debug.  The required mcz simply did not exist on
> squeaksource.  A standard alert dialog informing the reader of this would be
> better than the debugger, possibly even with a button which opens the
> Monticello Repository Inspector where the missing file was expected to be.
>  This would make it easier for a user to determine what was going on and
> determine the next course of action.
>
> In this case I can see that FS-Memory-CamilloBruni.5 exists and that this is
> referenced by Configuration version 2.0.3.
> so ((Smalltalk at: #ConfigurationOfFilesystem) project version: '2.0.3')
> load.
> was successful.
>
> Also, does Metacello provide an automated check that developers can use to
> check dependencies exist at the correct remote locations, ignoring the local
> package-cache ?

AFAIK it doesn't. However, the full real true proper answer to your
problem is "the only way you can really know that everything is OK is
by running the build" - you can download artifacts with the correct
name, but are they well-formed? Were they accidentally truncated
because of a partial upload/download?

But despite the negative answer, a "dry run" where you just collect
all the dependencies seems eminently reasonable, and probably not even
that much work. If you look at ConfigurationOfMetacello class >>
bootstrapPackage:from: you'll see where it downloads the package and
then loads it. If you altered that with a #debug flag you could check
the remote repository for the version and, if not present raise a
MissingArtifactException.

(The trick here is that you'd need to alter the
MetacelloBaseConfiguration so newer configurations would have this
behaviour; extant configurations would need to be manually fixed,
unless Metacello moves to driving the loading rather than the
configurations.)

frank

> cheers, -ben
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfFileSystem 2.0.4 missing FS-Memory-CamilloBruni.7

Dale Henrichs
In reply to this post by Ben Coman-2
Camillo,

The lack of a better dialog is basically a "tools issue." I haven't been in the business of supplying tools, because so much is dependent upon the platform and frankly there are really no frameworks for supplying cross platform tools. Also it is quite a (full-time) job to build and maintain tools which would take far more time than I can afford to invest...

With that said, I plan to provide interactive/batch/debug options for the Metacello scripting api and I do intend to catch exceptions in interactive mode and provide something a little better ... this will also have the side effect of prompting me to improve the information available in the exceptions so that tools developers in general should be able to provide better suport ...

As for checks of various kinds:

  MetacelloToolBox validateConfiguration: ConfigurationOfFilesystem.

Provides feedback on configuration errors and warnings.

  (ConfigurationOfFilesystem project version: '2.0.4') fetch

Makes a pass through the configuration, attempting to download the required packages and an error about missing mcz files will be thrown...

Dale

----- Original Message -----
| From: "Ben Coman" <[hidden email]>
| To: [hidden email], "camillo bruni" <[hidden email]>
| Sent: Wednesday, February 8, 2012 9:06:05 PM
| Subject: [Metacello] ConfigurationOfFileSystem 2.0.4 missing FS-Memory-CamilloBruni.7
|
| Camilo,
|
| The latest ConfigurationOfFilesystem-CamilloBruni.29 have stable
| version
| '2.0.4'.
| dependent on FS-Memory-CamilloBruni.7 which does not exist on
| squeaksource.
|
| So (Smalltalk at: #ConfigurationOfFilesystem) load.
| fails (on Pharo 1.3-13315)
|
|
| Dale,
|
| I'm not sure if this is a Metacello issue, but if a required mcz
| cannot
| be found for download, can the exception handling be more graceful?
| There is no code error to debug.  The required mcz simply did not
| exist
| on squeaksource.  A standard alert dialog informing the reader of
| this
| would be better than the debugger, possibly even with a button which
| opens the Monticello Repository Inspector where the missing file was
| expected to be.  This would make it easier for a user to determine
| what
| was going on and determine the next course of action.
|
| In this case I can see that FS-Memory-CamilloBruni.5 exists and that
| this is referenced by Configuration version 2.0.3.
| so ((Smalltalk at: #ConfigurationOfFilesystem) project version:
| '2.0.3')
| load.
| was successful.
|
| Also, does Metacello provide an automated check that developers can
| use
| to check dependencies exist at the correct remote locations, ignoring
| the local package-cache ?
|
| cheers, -ben
|