[Pharo-project] SqueakSource 3
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
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
2011/4/20 Tobias Pape <Das.Linux@gmx.de>:
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?
Am 2011-04-20 um 15:33 schrieb Germán Arduino:
2011/4/20 Tobias Pape <Das.Linux@gmx.de>:
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
2011/4/20 Tobias Pape <Das.Linux@gmx.de>:
Am 2011-04-20 um 15:33 schrieb Germán Arduino:
2011/4/20 Tobias Pape <Das.Linux@gmx.de>:
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.
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 <Das.Linux@gmx.de>:
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
2011/4/20 Tobias Pape <Das.Linux@gmx.de>:
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).
Am 2011-04-20 um 15:44 schrieb Germán Arduino:
2011/4/20 Tobias Pape <Das.Linux@gmx.de>:
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
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
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
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
participants (4)
-
Dale Henrichs -
Germán Arduino -
Tobias Pape -
Torsten Bergmann