SqueakSource 3

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

SqueakSource 3

Torsten Bergmann
Hi Tobias,

looks like it is basically working. I used a clean Pharo 1.2.1, then loaded Seaside

 Gofer new
                squeaksource: 'MetacelloRepository';
                package: 'ConfigurationOfSeaside30';
        load.
       
        ((Smalltalk at: #ConfigurationOfSeaside30) project latestVersion) load.


then loaded you script:


Gofer new
        squeaksource: 'MetacelloRepository';
        package: 'ConfigurationOfSqueakSource';
        load.
((Smalltalk at: #ConfigurationOfSqueakSource) project version: #development) load.

After that I started Seaside using the seaside control panel
and went to http://localhost:9094/installSS

I got two errors, but after proceeding I was able to run
an instance of SS3. Cool.

Would be nice if the config for Squeaksource 3 could be
extended for Pharo (together with a dependency on Seaside 3 config)
so that one could easily load anything using your simple
script right from a Pharo 1.2 image.

It could then be added to http://ci.pharo-project.org by Marcus
as one of the projects to build and everybody is able to download
his own private squeaksource server ...

Bye
T.



--
GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt mit
gratis Handy-Flat! http://portal.gmx.net/de/go/dsl

Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

Tobias Pape

Am 2011-04-20 um 14:19 schrieb Torsten Bergmann:

> Hi Tobias,
>
> looks like it is basically working. I used a clean Pharo 1.2.1, then loaded Seaside
>
> Gofer new
> squeaksource: 'MetacelloRepository';
> package: 'ConfigurationOfSeaside30';
> load.
>
> ((Smalltalk at: #ConfigurationOfSeaside30) project latestVersion) load.
>
>
> then loaded you script:
>
>
> Gofer new
> squeaksource: 'MetacelloRepository';
> package: 'ConfigurationOfSqueakSource';
> load.
> ((Smalltalk at: #ConfigurationOfSqueakSource) project version: #development) load.
>
> After that I started Seaside using the seaside control panel
> and went to http://localhost:9094/installSS
>
> I got two errors, but after proceeding I was able to run
> an instance of SS3. Cool.

I would be certainly interested in the errors.
>
> Would be nice if the config for Squeaksource 3 could be
> extended for Pharo (together with a dependency on Seaside 3 config)

oO the Seaside3-dependency should be there.
But it is a basic dependency not dictating any adaptor.

To Dale or whoever is capable of this:

        How shall I specify 'I want a working Seaside of version X'
        in my metacello Config?

        Aparently, doing

        spec
          package: 'SqueakSource-Core' with: [
            spec requires: #( "…" 'Seaside Extras' "…" )];
          project: 'Seaside Extras' with: [
            spec
              className: 'ConfigurationOfSeaside30';
              loads: #('Seaside-Email' 'RSS-Core');
              file: 'ConfigurationOfSeaside30';
              versionString: '3.0.4';
              repository: 'http://www.squeaksource.com/MetacelloRepository'];

        does not suffice.


> so that one could easily load anything using your simple
> script right from a Pharo 1.2 image.
>
> It could then be added to http://ci.pharo-project.org by Marcus
> as one of the projects to build and everybody is able to download
> his own private squeaksource server ...

Probably; I'm thinking of similar things :)

So Long,
        -Tobias
Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

garduino
2011/4/20 Tobias Pape <[hidden email]>:

>
>
> oO the Seaside3-dependency should be there.
> But it is a basic dependency not dictating any adaptor.
>
> To Dale or whoever is capable of this:
>
>        How shall I specify 'I want a working Seaside of version X'
>        in my metacello Config?
>
>        Aparently, doing
>
>        spec
>          package: 'SqueakSource-Core' with: [
>            spec requires: #( "…" 'Seaside Extras' "…" )];
>          project: 'Seaside Extras' with: [
>            spec
>              className: 'ConfigurationOfSeaside30';
>              loads: #('Seaside-Email' 'RSS-Core');
>              file: 'ConfigurationOfSeaside30';
>              versionString: '3.0.4';
>              repository: 'http://www.squeaksource.com/MetacelloRepository'];
>
>        does not suffice.
>
>

Yes, a dependency is missing. Why not load the complete Seaside?

Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

garduino
In reply to this post by Tobias Pape
2011/4/20 Tobias Pape <[hidden email]>:

>
> Am 2011-04-20 um 14:19 schrieb Torsten Bergmann:
>
>> Hi Tobias,
>>
>> looks like it is basically working. I used a clean Pharo 1.2.1, then loaded Seaside
>>
>> Gofer new
>>               squeaksource: 'MetacelloRepository';
>>               package: 'ConfigurationOfSeaside30';
>>       load.
>>
>>       ((Smalltalk at: #ConfigurationOfSeaside30) project latestVersion) load.
>>
>>
>> then loaded you script:
>>
>>
>> Gofer new
>>       squeaksource: 'MetacelloRepository';
>>       package: 'ConfigurationOfSqueakSource';
>>       load.
>> ((Smalltalk at: #ConfigurationOfSqueakSource) project version: #development) load.
>>
>> After that I started Seaside using the seaside control panel
>> and went to http://localhost:9094/installSS
>>
>> I got two errors, but after proceeding I was able to run
>> an instance of SS3. Cool.
>
> I would be certainly interested in the errors.

In a Squeak 4.2 image with seaside preloaded, trying to install
SqueakSource3, the first error coming is:
MessageNotUnderstood: MethodContext>>tempScopedNames (seems to be in
WAPharoWalkback).

Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

Tobias Pape
In reply to this post by garduino

Am 2011-04-20 um 15:33 schrieb Germán Arduino:

> 2011/4/20 Tobias Pape <[hidden email]>:
>>
>>
>> oO the Seaside3-dependency should be there.
>> But it is a basic dependency not dictating any adaptor.
>>
>> To Dale or whoever is capable of this:
>>
>>        How shall I specify 'I want a working Seaside of version X'
>>        in my metacello Config?
>>
>>        Aparently, doing
>>
>>        spec
>>          package: 'SqueakSource-Core' with: [
>>            spec requires: #( "…" 'Seaside Extras' "…" )];
>>          project: 'Seaside Extras' with: [
>>            spec
>>              className: 'ConfigurationOfSeaside30';
>>              loads: #('Seaside-Email' 'RSS-Core');
>>              file: 'ConfigurationOfSeaside30';
>>              versionString: '3.0.4';
>>              repository: 'http://www.squeaksource.com/MetacelloRepository'];
>>
>>        does not suffice.
>>
>>
>
> Yes, a dependency is missing. Why not load the complete Seaside?
>

I don't understand.

As an ‘application developer’ I cannot tell the one who will
install that what installtion configuration of seaside to use.
Eg, I cannot say 'use this adaptor' because I do not have
this dependency.
  Is there a 'default group' for Seaside that brings me 'Seaside-Email',
but a runnable Seaside installation, too?

So Long,
        -Tobias



Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

Tobias Pape
In reply to this post by garduino

Am 2011-04-20 um 15:44 schrieb Germán Arduino:

> 2011/4/20 Tobias Pape <[hidden email]>:
>>
>> Am 2011-04-20 um 14:19 schrieb Torsten Bergmann:
>>
>>> Hi Tobias,
>>>
>>> looks like it is basically working. I used a clean Pharo 1.2.1, then loaded Seaside
>>>
>>> Gofer new
>>>               squeaksource: 'MetacelloRepository';
>>>               package: 'ConfigurationOfSeaside30';
>>>       load.
>>>
>>>       ((Smalltalk at: #ConfigurationOfSeaside30) project latestVersion) load.
>>>
>>>
>>> then loaded you script:
>>>
>>>
>>> Gofer new
>>>       squeaksource: 'MetacelloRepository';
>>>       package: 'ConfigurationOfSqueakSource';
>>>       load.
>>> ((Smalltalk at: #ConfigurationOfSqueakSource) project version: #development) load.
>>>
>>> After that I started Seaside using the seaside control panel
>>> and went to http://localhost:9094/installSS
>>>
>>> I got two errors, but after proceeding I was able to run
>>> an instance of SS3. Cool.
>>
>> I would be certainly interested in the errors.
>
> In a Squeak 4.2 image with seaside preloaded, trying to install
> SqueakSource3, the first error coming is:
> MessageNotUnderstood: MethodContext>>tempScopedNames (seems to be in
> WAPharoWalkback).

Ah, that one…, -.-'
One of the differences between Squeak and Pharo.
The method is called tempNames in Squeak and was in earlier Pharos.
Now the Pharo one changed and is used henceforth in WAPharoWalkback.

That is a Seasdie problem, after all.
Possible solutions:
1) hack the imaged and add MethodContext>>tempScopedNames to return self tempNames
2) persuade the Squeak community to rename tempNames to tempScopedNames (just kidding)
3) persuade the Pharo community to re-rename tempScopedNames to tempNames (well, just kidding, too)
4) persuade the Seaside-developers to
        a) Create a WASqueakWalkback that is like the WAPharoWalkback but uses the indicated message or
        b) make the tempScopedNames-message ‘greasy’, ie, marked as platform-dependent.



BTW: when a Walkback is popping up, there must be a root cause,
would you like to seek for that?

So Long,
        -Tobias
       



Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

Dale Henrichs
In reply to this post by Tobias Pape

On Apr 20, 2011, at 6:27 AM, Tobias Pape wrote:

>
> To Dale or whoever is capable of this:
>
> How shall I specify 'I want a working Seaside of version X'
> in my metacello Config?
>
> Aparently, doing
>
> spec
>  package: 'SqueakSource-Core' with: [
>    spec requires: #( "…" 'Seaside Extras' "…" )];
>  project: 'Seaside Extras' with: [
>    spec
>      className: 'ConfigurationOfSeaside30';
>      loads: #('Seaside-Email' 'RSS-Core');
>      file: 'ConfigurationOfSeaside30';
>      versionString: '3.0.4';
>      repository: 'http://www.squeaksource.com/MetacelloRepository'];
>
> does not suffice.


When you "does not suffice", what is it that is not sufficient and what is your goal?

Dale



Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

Tobias Pape

Am 2011-04-20 um 16:32 schrieb Dale Henrichs:

>
> On Apr 20, 2011, at 6:27 AM, Tobias Pape wrote:
>
>>
>> To Dale or whoever is capable of this:
>>
>> How shall I specify 'I want a working Seaside of version X'
>> in my metacello Config?
>>
>> Aparently, doing
>>
>> spec
>>  package: 'SqueakSource-Core' with: [
>>    spec requires: #( "…" 'Seaside Extras' "…" )];
>>  project: 'Seaside Extras' with: [
>>    spec
>>      className: 'ConfigurationOfSeaside30';
>>      loads: #('Seaside-Email' 'RSS-Core');
>>      file: 'ConfigurationOfSeaside30';
>>      versionString: '3.0.4';
>>      repository: 'http://www.squeaksource.com/MetacelloRepository'];
>>
>> does not suffice.
>
>
> When you "does not suffice", what is it that is not sufficient and what is your goal?

When I use the config as above,
And I just use the Config to Install SqueakSource into
a seaside-less image, I get a ‘stub’ seaside with no adaptors,
not ready to server…

So Long,
        -Tobias
Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

garduino
In reply to this post by Tobias Pape
2011/4/20 Tobias Pape <[hidden email]>:

>
> Am 2011-04-20 um 15:33 schrieb Germán Arduino:
>
>> 2011/4/20 Tobias Pape <[hidden email]>:
>>>
>>>
>>> oO the Seaside3-dependency should be there.
>>> But it is a basic dependency not dictating any adaptor.
>>>
>>> To Dale or whoever is capable of this:
>>>
>>>        How shall I specify 'I want a working Seaside of version X'
>>>        in my metacello Config?
>>>
>>>        Aparently, doing
>>>
>>>        spec
>>>          package: 'SqueakSource-Core' with: [
>>>            spec requires: #( "…" 'Seaside Extras' "…" )];
>>>          project: 'Seaside Extras' with: [
>>>            spec
>>>              className: 'ConfigurationOfSeaside30';
>>>              loads: #('Seaside-Email' 'RSS-Core');
>>>              file: 'ConfigurationOfSeaside30';
>>>              versionString: '3.0.4';
>>>              repository: 'http://www.squeaksource.com/MetacelloRepository'];
>>>
>>>        does not suffice.
>>>
>>>
>>
>> Yes, a dependency is missing. Why not load the complete Seaside?
>>
>
> I don't understand.
>
> As an ‘application developer’ I cannot tell the one who will
> install that what installtion configuration of seaside to use.
> Eg, I cannot say 'use this adaptor' because I do not have
> this dependency.
>  Is there a 'default group' for Seaside that brings me 'Seaside-Email',
> but a runnable Seaside installation, too?
>
> So Long,
>        -Tobias
>
>
>
>

Yes, I understand your point.

Only commenting that to try it, I would install the complete Seaside
to avoid the empty stub you commented in the latest mail.

Reply | Threaded
Open this post in threaded view
|

Re: SqueakSource 3

Dale Henrichs
In reply to this post by Tobias Pape

On Apr 20, 2011, at 7:18 AM, Tobias Pape wrote:

>
> Am 2011-04-20 um 15:33 schrieb Germán Arduino:
>
>> 2011/4/20 Tobias Pape <[hidden email]>:
>>>
>>>
>>> oO the Seaside3-dependency should be there.
>>> But it is a basic dependency not dictating any adaptor.
>>>
>>> To Dale or whoever is capable of this:
>>>
>>>       How shall I specify 'I want a working Seaside of version X'
>>>       in my metacello Config?
>>>
>>>       Aparently, doing
>>>
>>>       spec
>>>         package: 'SqueakSource-Core' with: [
>>>           spec requires: #( "…" 'Seaside Extras' "…" )];
>>>         project: 'Seaside Extras' with: [
>>>           spec
>>>             className: 'ConfigurationOfSeaside30';
>>>             loads: #('Seaside-Email' 'RSS-Core');
>>>             file: 'ConfigurationOfSeaside30';
>>>             versionString: '3.0.4';
>>>             repository: 'http://www.squeaksource.com/MetacelloRepository'];
>>>
>>>       does not suffice.
>>>
>>>
>>
>> Yes, a dependency is missing. Why not load the complete Seaside?
>>
>
> I don't understand.
>
> As an ‘application developer’ I cannot tell the one who will
> install that what installtion configuration of seaside to use.
> Eg, I cannot say 'use this adaptor' because I do not have
> this dependency.
>  Is there a 'default group' for Seaside that brings me 'Seaside-Email',
> but a runnable Seaside installation, too?

To answer your second question first. The 'default' for Seaside is to load everything, so all of the pieces covered in tutorials, etc. will be present.

If you want to customize the Seaside load, then you must pick and choose amongst the things that you need for your particular application and that depends upon what you are trying to do, like which adaptor do you want to use and whether or not you want the development environment loaded or not ...

I'm not sure how to answer the first question ... as the developer of SqueakSource3 you can't know how the application will be deployed, so you can't know which adaptors are needed ...you don't even know whether SqueakSource3 will be deployed on Pharo or GemStone or which persistence model might be used like Magma or file-based or image-based...

It would be nice if we had a "standard deployment model" where decisions like this could be specified, along with other deployment time artifacts/configurations like, the name of the site, png file to use for banner, etc. It seems that some code loading is involved in addition to executing custom doits...

I think that the deployment issue encompasses more than just Seaside...

If we had a standard way of specifying deployment artifacts, it would be much easier to imagine being able to deploy SqueakSource3 or SmalltalkHub into the cloud...

Dale

Dale
Reply | Threaded
Open this post in threaded view
|

Re: [Seaside] Re: SqueakSource 3

Dale Henrichs
In reply to this post by Tobias Pape

On Apr 20, 2011, at 8:01 AM, Tobias Pape wrote:

>
> Am 2011-04-20 um 16:32 schrieb Dale Henrichs:
>
>>
>> On Apr 20, 2011, at 6:27 AM, Tobias Pape wrote:
>>
>>>
>>> To Dale or whoever is capable of this:
>>>
>>> How shall I specify 'I want a working Seaside of version X'
>>> in my metacello Config?
>>>
>>> Aparently, doing
>>>
>>> spec
>>>  package: 'SqueakSource-Core' with: [
>>>    spec requires: #( "…" 'Seaside Extras' "…" )];
>>>  project: 'Seaside Extras' with: [
>>>    spec
>>>      className: 'ConfigurationOfSeaside30';
>>>      loads: #('Seaside-Email' 'RSS-Core');
>>>      file: 'ConfigurationOfSeaside30';
>>>      versionString: '3.0.4';
>>>      repository: 'http://www.squeaksource.com/MetacelloRepository'];
>>>
>>> does not suffice.
>>
>>
>> When you "does not suffice", what is it that is not sufficient and what is your goal?
>
> When I use the config as above,
> And I just use the Config to Install SqueakSource into
> a seaside-less image, I get a ‘stub’ seaside with no adaptors,
> not ready to server…

Ah yes, you have to choose the adaptor you want to use ...

I think I talk about this in my other email...

Dale