From billksun at yahoo.com Fri Sep 1 04:41:42 2006 From: billksun at yahoo.com (Bill Sun) Date: Thu, 31 Aug 2006 19:41:42 -0700 (PDT) Subject: [Pier/Magritte Question] Customizing Edit Form Page Message-ID: <20060901024142.98754.qmail@web53303.mail.yahoo.com> Hi all, I want to make changes to the "Edit Form" page, specifically, I want to add commands to allow the reordering of the html elements, so that I can re-arrange the order of the elements after I have created them. Where do I make the changes at? I traced the code back to MAContainerComponent, but got lost there. -Bill -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060901/c9fa217c/attachment.html From renggli at iam.unibe.ch Fri Sep 1 07:18:20 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 1 Sep 2006 07:18:20 +0200 Subject: [Pier/Magritte Question] Customizing Edit Form Page In-Reply-To: <20060901024142.98754.qmail@web53303.mail.yahoo.com> References: <20060901024142.98754.qmail@web53303.mail.yahoo.com> Message-ID: <99D1B0A8-9696-41E1-8F69-AAEBAB212479@iam.unibe.ch> > I want to make changes to the "Edit Form" page, specifically, I > want to add commands to allow the reordering of the html elements, > so that I can re-arrange the order of the elements after I have > created them. Where do I make the changes at? What kind of HTML elements do you want to reorder? The input fields of the Edit Form? Or the text in the TextArea? Or What? Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From billksun at yahoo.com Fri Sep 1 07:29:44 2006 From: billksun at yahoo.com (Bill Sun) Date: Thu, 31 Aug 2006 22:29:44 -0700 (PDT) Subject: [Pier/Magritte Question] Customizing Edit Form Page In-Reply-To: <99D1B0A8-9696-41E1-8F69-AAEBAB212479@iam.unibe.ch> Message-ID: <20060901052944.26638.qmail@web53307.mail.yahoo.com> I'm not trying to reorder HTML elements of the Edit Form page, rather, I'm trying to reorder the elements (text field, text area, options...etc) in the Form that the Edit Form page is editing. So far, you can edit and remove elements, but not reorder them. -Bill ----- Original Message ---- From: Lukas Renggli To: "Magritte, Pier and Related Tools ..." Sent: Thursday, August 31, 2006 10:18:20 PM Subject: Re: [Pier/Magritte Question] Customizing Edit Form Page > I want to make changes to the "Edit Form" page, specifically, I > want to add commands to allow the reordering of the html elements, > so that I can re-arrange the order of the elements after I have > created them. Where do I make the changes at? What kind of HTML elements do you want to reorder? The input fields of the Edit Form? Or the text in the TextArea? Or What? Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060901/0842bea3/attachment.html From renggli at iam.unibe.ch Fri Sep 1 07:36:14 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 1 Sep 2006 07:36:14 +0200 Subject: [Pier/Magritte Question] Customizing Edit Form Page In-Reply-To: <20060901052944.26638.qmail@web53307.mail.yahoo.com> References: <20060901052944.26638.qmail@web53307.mail.yahoo.com> Message-ID: <0EA44A52-3EF2-4B03-BE4E-C42E44FA33EF@iam.unibe.ch> > I'm not trying to reorder HTML elements of the Edit Form page, > rather, I'm trying to reorder the elements (text field, text area, > options...etc) in the Form that the Edit Form page is editing. So > far, you can edit and remove elements, but not reorder them. Aha, I see. The description methods (methods starting with #description) on the class side of PRStructure and its subclassses are the thing you want to look at. These methods answer descriptions with priorities and get sorted according to this number to place them in order. Hope this helps, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From billksun at yahoo.com Fri Sep 1 19:44:56 2006 From: billksun at yahoo.com (Bill Sun) Date: Fri, 1 Sep 2006 10:44:56 -0700 (PDT) Subject: [Pier/Magritte Question] Customizing Edit Form Page In-Reply-To: <0EA44A52-3EF2-4B03-BE4E-C42E44FA33EF@iam.unibe.ch> Message-ID: <20060901174456.63244.qmail@web53310.mail.yahoo.com> I appologize for my vagueness, after digging into the workings of the code more, I realized I should of said: "How do I reorder the instance-based descriptions"? In the form editor (invoked by PREditFormCommand), editing the priorities of the descriptions labeled under "elements" in an adaptive form doesn't seem to do anything. An example of the type of description editor that I'm looking for is the form editor in Aare that you presented in your master thesis, where you can move the order of the descriptions up and down, in addition to removing and editing them. Let me know if I'm still not making much sense here. This meta stuff and Smalltalk are still very new to me, so I might not be using the correct terminologies here. -Bill ----- Original Message ---- From: Lukas Renggli To: "Magritte, Pier and Related Tools ..." Sent: Thursday, August 31, 2006 10:36:14 PM Subject: Re: [Pier/Magritte Question] Customizing Edit Form Page > I'm not trying to reorder HTML elements of the Edit Form page, > rather, I'm trying to reorder the elements (text field, text area, > options...etc) in the Form that the Edit Form page is editing. So > far, you can edit and remove elements, but not reorder them. Aha, I see. The description methods (methods starting with #description) on the class side of PRStructure and its subclassses are the thing you want to look at. These methods answer descriptions with priorities and get sorted according to this number to place them in order. Hope this helps, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060901/ee68ed84/attachment.html From renggli at iam.unibe.ch Fri Sep 1 21:34:26 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 1 Sep 2006 21:34:26 +0200 Subject: [Pier/Magritte Question] Customizing Edit Form Page In-Reply-To: <20060901174456.63244.qmail@web53310.mail.yahoo.com> References: <20060901174456.63244.qmail@web53310.mail.yahoo.com> Message-ID: <10B1C56A-B03D-43B5-87C3-870A89D35A33@iam.unibe.ch> > In the form editor (invoked by PREditFormCommand), editing the > priorities of the descriptions labeled under "elements" in an > adaptive form doesn't seem to do anything. An example of the type > of description editor that I'm looking for is the form editor in > Aare that you presented in your master thesis, where you can move > the order of the descriptions up and down, in addition to removing > and editing them. Now I understand. You found a bug! ;-) The problem was that the description of the container didn't set the children to ordered and then the report didn't display the 'up' and 'down' links. This bug is fixed in Magritte-Model-lr.225. Thanks for reporting. MAContainer class>>descriptionChildren ^ (MAToManyRelationDescription accessor: (MASelectorAccessor read: #children write: #setChildren:) label: 'Elements' priority: 400 default: self defaultCollection) classes: (MADynamicObject on: [ MAElementDescription withAllConcreteClasses ]); beOrdered; " <--- this was missing " yourself Some background information: The Form Editor in Pier is completely auto generated, there is no additional code. In contrary the editor in Aare, a commercial workflow definition and management system, has been especially customized for this application. Therefor it displays only a small selection of relevant tools for our customer. > Let me know if I'm still not making much sense here. This meta > stuff and Smalltalk are still very new to me, so I might not be > using the correct terminologies here. Btw, I'll be at Camp-Smalltalk and ESUG in Prague starting from Saturday for a week. If anybody is interested to participate and I find some spare time I would like to start with new (not sure yet if this will be 1.1 or 2.0) and rethought version of Magritte. And yes, I will also give two Seaside related presentations ;-) See you in Prague, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From billksun at yahoo.com Fri Sep 1 22:09:32 2006 From: billksun at yahoo.com (Bill Sun) Date: Fri, 1 Sep 2006 13:09:32 -0700 (PDT) Subject: [Pier/Magritte Question] Customizing Edit Form Page In-Reply-To: <10B1C56A-B03D-43B5-87C3-870A89D35A33@iam.unibe.ch> Message-ID: <20060901200932.28252.qmail@web53310.mail.yahoo.com> > MAContainer class>>descriptionChildren > ^ (MAToManyRelationDescription accessor: (MASelectorAccessor read: >#children write: #setChildren:) label: 'Elements' priority: 400 >default: self defaultCollection) > classes: (MADynamicObject on: [ MAElementDescription >withAllConcreteClasses ]); > beOrdered; " <--- this was missing " > yourself Ah yes, I found out about this part myself as well, but I held back on my findings because I think I messed something up and now my adaptive form won't save the changes that I made to the metamodel. Anyway, glad my poking around aided in the discovery and squashing of bug :) -Bill ----- Original Message ---- From: Lukas Renggli To: "Magritte, Pier and Related Tools ..." Sent: Friday, September 1, 2006 12:34:26 PM Subject: Re: [Pier/Magritte Question] Customizing Edit Form Page > In the form editor (invoked by PREditFormCommand), editing the > priorities of the descriptions labeled under "elements" in an > adaptive form doesn't seem to do anything. An example of the type > of description editor that I'm looking for is the form editor in > Aare that you presented in your master thesis, where you can move > the order of the descriptions up and down, in addition to removing > and editing them. Now I understand. You found a bug! ;-) The problem was that the description of the container didn't set the children to ordered and then the report didn't display the 'up' and 'down' links. This bug is fixed in Magritte-Model-lr.225. Thanks for reporting. MAContainer class>>descriptionChildren ^ (MAToManyRelationDescription accessor: (MASelectorAccessor read: #children write: #setChildren:) label: 'Elements' priority: 400 default: self defaultCollection) classes: (MADynamicObject on: [ MAElementDescription withAllConcreteClasses ]); beOrdered; " <--- this was missing " yourself Some background information: The Form Editor in Pier is completely auto generated, there is no additional code. In contrary the editor in Aare, a commercial workflow definition and management system, has been especially customized for this application. Therefor it displays only a small selection of relevant tools for our customer. > Let me know if I'm still not making much sense here. This meta > stuff and Smalltalk are still very new to me, so I might not be > using the correct terminologies here. Btw, I'll be at Camp-Smalltalk and ESUG in Prague starting from Saturday for a week. If anybody is interested to participate and I find some spare time I would like to start with new (not sure yet if this will be 1.1 or 2.0) and rethought version of Magritte. And yes, I will also give two Seaside related presentations ;-) See you in Prague, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060901/47a9da8b/attachment.html From dpp at athena.com Fri Sep 8 00:27:49 2006 From: dpp at athena.com (David Pollak) Date: Thu, 7 Sep 2006 15:27:49 -0700 Subject: Adding/changing users in Pier with Security Message-ID: <1026C237-5E34-40DA-89F8-E15177447472@athena.com> Howdy, I've configured Pier with Security. The system creates an admin user. How can I (1) change the admin user's password and (2) create additional users? Also, is there an easy way to walk the existing Pier components and set them all as owned by admin? Thanks, David From dpp at athena.com Fri Sep 8 01:48:01 2006 From: dpp at athena.com (David Pollak) Date: Thu, 7 Sep 2006 16:48:01 -0700 Subject: [ANN] Seaside/Pier image available Message-ID: Folks, I put together a 3.8 Seaside and Pier image. It's available for download from http://dppruby.com/seaside_pier.zip. It's the Seaside 2.6b1 for 3.8 off the Seaside site plus the latest 'lr' packages from Monticello as per the Pier installation instructions. I added the 'Pier Security' package along with all the packages listed as "development" on the Pier site. The username/password for the Pier administrator is 'admin/pier' This is the first time I've made an image available. If there are things I did wrong in the preparation of the image, the packaging of the image, or in this announcement, please let me know. I want to improve the way I interface with the Squeak/Seaside/Pier communities and feedback is the best way to help me do that. Thanks, David From David.Tibbe at student.hpi.uni-potsdam.de Fri Sep 8 09:58:20 2006 From: David.Tibbe at student.hpi.uni-potsdam.de (Tibbe David) Date: Fri, 8 Sep 2006 09:58:20 +0200 Subject: AW: Adding/changing users in Pier with Security In-Reply-To: <1026C237-5E34-40DA-89F8-E15177447472@athena.com> Message-ID: Hi, > I've configured Pier with Security. Lukas' Pier Unix Security? The following refers to that package. > The system creates an admin user. How can I (1) change the admin user's password You can send the message "password: aString" to the PUUser, that will change it. Some time ago I wrote a litte Command that allows users to change their own password. If you want to have it, just mail me. > and (2) create additional users? Create a new PUUser: u := (PUUser named: 'newName') password: 'newPassword'). And add it to the users-Property of the kernel: (myKernel propertyAt: #users) add: u. It is the same for adding new groups to the kernel. Each PUUser has a message "addGroup: aPUGrup", so you can place a user into different groups. > Also, is there an easy way to walk the existing Pier components and set them all as owned by admin? In the Wiki you have three commands "Change Owner", "Change Group" and "Change Other". Select the page you want to change from the tree (e.g. the root page) and select "Change Owner". Check "Recursive" and select "Admin" from the Owner-Select-Box. As Operator you want to have "Set". Finally you can specify the access to the different available commands for that user. Remeber: If a user is a Superuser, then he will be able to access all commands, even those he is not allowed to acces by the security settings for Owner/Group/Other. Regards, David From keith_hodges at yahoo.co.uk Sat Sep 9 02:56:52 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 09 Sep 2006 01:56:52 +0100 Subject: Magma+Pier integration It works! Message-ID: <45021154.8090209@yahoo.co.uk> The story so far.... you need Seaside latest (Scriptaculous latest optional) you need Pier you need Magma, MagmaServerLoader from squeaksource/Magma or squeaksource/MagmaTester you need 'Magma seaside' from squeaksource/MagmaTester you need Pier-Magma from the pier repository. you will also need Pier-Seaside-kph.80 or greater and Pier-Model-kph.79 or greater these are my changes to Pier that have yet to be ratified by Lukas. ---- With all of that loaded. 1. In pier configuration, add the WAMagmaConfiguration to the configuation panels. 2. override the magma repository setting, and 'Magma Control Panel' should appear. 3. Enter a directory name for your pier repository (it doesnt have to be a fully qualified pathname) e.g. 'magma-pier' click 'Save' to accept this setting 4. Click on 'Magma Control Panel', which will inform you that the repository does not exist. 4a. If you are on seasidehosting then you will have to manually create the repository directory. 5. Given the list of options as to what repository to create, click the 'create' button (and wait). 6. The existing pier kernel should appear in the list with a 'persist' button next to it, click 'persist'. 7. Try it and see! I am about to go and try my own instructions out, and then I shall upload a preloaded image to ftp.seasidehosting.st username: preloaded password: squeak let me know how you get on Keith ___________________________________________________________ Try the all-new Yahoo! Mail. "The New Version is radically easier to use" ? The Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Sat Sep 9 06:09:57 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 09 Sep 2006 05:09:57 +0100 Subject: [ANN] Seaside+Pier+Magma image available Message-ID: <45023E95.8030106@yahoo.co.uk> First (alpha!) release of Pier running with Magma Persistency. Image available from ftp.seasidehosting.st User: preloaded Password: squeak enjoy Keith ------ Image Use Instructions In pier configuration click on 'Magma Control Panel', which will inform you that the repository does not exist. If you have placed this image on seasidehosting then you will have to manually create the repository directory. Given the list of options as to what repository to create, click the 'create' button (and wait). The existing pier kernel should appear in the list with a 'persist' button next to it, click 'persist'. Then try it and see! ------ ------ Detailed Log of Image Creation Steps (alternative title: "monticello tutorial") This image was prepared as follows: Beginning with Squeak3.8-6555full Initial start asks for updates: select "do not ask again" - this is important should you wish to deploy. Headless servers (e.g. seasidehosting) cannot handle user interaction and will stop at this point. From "world menu > open.... > Monticello Browser" Browser opens with (Monticello....) Click the "+Repository Button", select "HTTP" as the repository type, and enter MCHttpRepository location: 'http://www.squeaksource.com/Seaside' user: '' password: '' as the repository info (if you have a login on Squeaksource then you can enter your initials as the 'user' above.) Add the following repository for Monticello. MCHttpRepository location: 'http://www.squeaksource.com/Monticello' user: '' password: '' Add the following repository for Magma. MCHttpRepository location: 'http://www.squeaksource.com/MagmaTester' user: '' password: '' and the following two repositories for Magritte and Pier MCHttpRepository location: 'http://mc.lukas-renggli.ch/magritte' user: '' password: '' MCHttpRepository location: 'http://mc.lukas-renggli.ch/pier' user: '' password: '' also: MCHttpRepository location: 'http://www.squeaksource.com/OmniBrowser' user: '' password: '' (to edit this information: click the menu button in the right hand pane of the Monticello Browser) ---- Loading Latest Monticello. More recent versions of Monticello provide better feedback as to which packages are currently loaded. Select the http://www.squeaksource.com/Monticello repository, click "open", select the latest package (Monticello-avi.279) from the main "Monticello" branch, and click "load". Select the Monticello package on the left hand pane, and the squeaksource/Monticello repository in the right hand pane. Click 'open'. In the repository browser, click on the latest version (Monticello-avi.279.mcz) and click 'Load'. ---- Loading Seaside Select "world menu > open... SqueakMap"... and a dialog will ask if you wish to upgrade SqueakMap. Which you do. Notice that SMBase, SMLoader packages appeaer in the Monticello browser, since the upgrade is performed by loading Monticello packages. In SqueakMap, select the ever so convenient "Seaside Installer" which should load in the whole of seaside with its dependencies in one go. To do this select the left had pane menu button, "install". (Part way through the install you will be prompted to enter an admin username (seaside) and password (admin)) (if SqueakMap doesnt work it is being knobbled by a more recent package-cache, remove it and try again) Select the seaside repositoryClick the "open" and the repository browser will open. Select Seaside2.6b1 which is the current latest. In the right hand pane are the releases. Releases may be made by anyone and they may be small branches off from the main stream. Periodically an effort will be made to ensure that all changes are merged. Click the history button in order to browse the history of this package to get some idea of what is going on. Look at the ancestors of a package to see if one version is being sequentially built on the next, or whether any branching is occurring. Seaside is fairly mature and changes infrequent, therefore it is likely to be safe to grab the latest version. Loaded Seaside2.6b1-mb.79 Loaded Scriptaculous-lr.137 To start Seaside doit: WAKom startOn: 8080. ( Or use the "beach flags" SeasideMorph available from: http://minnow.cc.gatech.edu/squeak/5862 ) To test if everything is running, check the following url in your normal web browser. http://localhost:8080/seaside/config you should be prompted for you username and password (as given earlier). ---- Loading Magma Back to the Monticello Browser. Deselect the selected package by clicking on it once. This should re-reveal all of the registered repositories. (It is worth saving this. In the right hand side pane menu button there is a menu item: "Save Repositories", which writes a simple configuration script to the working directory.) Select the http://www.squeaksource.com/MagmaTester repository, and click "open". Select MagmaServerLoader, and click "load". (it takes a while!) loaded MagmaServerLoader-cmm.21 loaded Ma client server-cmm.123 loaded Ma exception handling-cmm.22 loaded Ma time objects-cmm.37 ---- Load Magma Seaside Integration Package Select "Magma Seaside" (lhs) and the latest package and click "load", loaded Magma Seaside-kph.18 ---- Load Magma Seaside Sushi Store Demo fixes loaded Seaside-Examples-Store-Magma.kph-11 ---- Before using Magma may need to execute the following. MagmaSession initialize. MagmaRepositoryController initialize. useful snippets MagmaSession allInstances cleanUp. MagmaSession disconnectAndCloseAllConnectedSessions. ---- Load Magritte loaded Magritte-All-lr.171 Load Pier loaded Pier-All-lr.109 Load OmniBrowser loaded OmniBrowser-avi.258 loaded Pier-OmniBrowser-lr.19 ---- Latest Pier-Magma code loaded Pier-Model-kph.80 loaded Pier-Seaside-kph.80 loaded Pier-Magma-kph.1 ---- Pre-upload actions: Monticello Browser - "flush cached versions". ---- Release Preloaded Image as Sqk3.8f-smp.image ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html From ducasse at iam.unibe.ch Sat Sep 9 09:57:33 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Sat, 9 Sep 2006 09:57:33 +0200 Subject: [ANN] Seaside+Pier+Magma image available In-Reply-To: <45023E95.8030106@yahoo.co.uk> References: <45023E95.8030106@yahoo.co.uk> Message-ID: <2A3B1429-D0D5-489D-AD8B-A7633404940D@iam.unibe.ch> Cool I think that this is really important for pier to get multiple back end systems so that we can choose and make sure that we can never lost the data. Stef On 9 sept. 06, at 06:09, Keith Hodges wrote: > First (alpha!) release of Pier running with Magma Persistency. > > Image available from ftp.seasidehosting.st > User: preloaded Password: squeak > > enjoy > > Keith > ------ > Image Use Instructions > In pier configuration click on 'Magma Control Panel', which will > inform > you that the repository does not exist. If you have placed this > image on > seasidehosting then you will have to manually create the repository > directory. Given the list of options as to what repository to create, > click the 'create' button (and wait). The existing pier kernel should > appear in the list with a 'persist' button next to it, click > 'persist'. > Then try it and see! > ------ > ------ > Detailed Log of Image Creation Steps (alternative title: "monticello > tutorial") > > This image was prepared as follows: > Beginning with Squeak3.8-6555full > > Initial start asks for updates: select "do not ask again" - this is > important should you wish to deploy. Headless servers (e.g. > seasidehosting) cannot handle user interaction and will stop at > this point. > > From "world menu > open.... > Monticello Browser" > Browser opens with (Monticello....) > > Click the "+Repository Button", select "HTTP" as the repository type, > and enter > > MCHttpRepository > location: 'http://www.squeaksource.com/Seaside' > user: '' > password: '' > > as the repository info (if you have a login on Squeaksource then > you can > enter your initials > as the 'user' above.) > > Add the following repository for Monticello. > > MCHttpRepository > location: 'http://www.squeaksource.com/Monticello' > user: '' > password: '' > > Add the following repository for Magma. > > MCHttpRepository > location: 'http://www.squeaksource.com/MagmaTester' > user: '' > password: '' > > and the following two repositories for Magritte and Pier > > MCHttpRepository > location: 'http://mc.lukas-renggli.ch/magritte' > user: '' > password: '' > > MCHttpRepository > location: 'http://mc.lukas-renggli.ch/pier' > user: '' > password: '' > > also: > > MCHttpRepository > location: 'http://www.squeaksource.com/OmniBrowser' > user: '' > password: '' > > (to edit this information: > click the menu button in the right hand pane of the Monticello > Browser) > ---- > Loading Latest Monticello. > > More recent versions of Monticello provide better feedback as to which > packages are currently loaded. > > Select the http://www.squeaksource.com/Monticello repository, click > "open", select the latest package (Monticello-avi.279) from the main > "Monticello" branch, and click "load". > > Select the Monticello package on the left hand pane, and the > squeaksource/Monticello repository in the right hand pane. Click > 'open'. > In the repository browser, click on the latest version > (Monticello-avi.279.mcz) and click 'Load'. > ---- > Loading Seaside > > Select "world menu > open... SqueakMap"... and a dialog will ask if > you > wish to upgrade SqueakMap. Which you do. Notice that SMBase, SMLoader > packages appeaer in the Monticello browser, since the upgrade is > performed by loading Monticello packages. > > In SqueakMap, select the ever so convenient "Seaside Installer" which > should load in the whole of seaside with its dependencies in one > go. To > do this select the left had pane menu button, "install". (Part way > through the install you will be prompted to enter an admin username > (seaside) and password (admin)) > > (if SqueakMap doesnt work it is being knobbled by a more recent > package-cache, remove it and try again) > > Select the seaside repositoryClick the "open" and the repository > browser > will open. > > Select Seaside2.6b1 which is the current latest. In the right hand > pane > are the releases. Releases may be made by anyone and they may be small > branches off from the main stream. Periodically an effort will be made > to ensure that all changes are merged. Click the history button in > order > to browse the history of this package to get some idea of what is > going > on. Look at the ancestors of a package to see if one version is being > sequentially built on the next, or whether any branching is occurring. > Seaside is fairly mature and changes infrequent, therefore it is > likely > to be safe to grab the latest version. > > Loaded Seaside2.6b1-mb.79 > Loaded Scriptaculous-lr.137 > > To start Seaside doit: > WAKom startOn: 8080. > ( Or use the "beach flags" SeasideMorph > available from: http://minnow.cc.gatech.edu/squeak/5862 ) > > To test if everything is running, check the following url in your > normal > web browser. > http://localhost:8080/seaside/config > > you should be prompted for you username and password (as given > earlier). > ---- > Loading Magma > > Back to the Monticello Browser. Deselect the selected package by > clicking on it once. This should re-reveal all of the registered > repositories. > > (It is worth saving this. In the right hand side pane menu button > there > is a menu item: "Save Repositories", which writes a simple > configuration > script to the working directory.) > > Select the http://www.squeaksource.com/MagmaTester repository, and > click > "open". > > Select MagmaServerLoader, and click "load". (it takes a while!) > > loaded MagmaServerLoader-cmm.21 > loaded Ma client server-cmm.123 > loaded Ma exception handling-cmm.22 > loaded Ma time objects-cmm.37 > ---- > Load Magma Seaside Integration Package > > Select "Magma Seaside" (lhs) and the latest package and click "load", > > loaded Magma Seaside-kph.18 > ---- > Load Magma Seaside Sushi Store Demo fixes > > loaded Seaside-Examples-Store-Magma.kph-11 > ---- > > Before using Magma may need to execute the following. > > MagmaSession initialize. > MagmaRepositoryController initialize. > > useful snippets > MagmaSession allInstances cleanUp. > MagmaSession disconnectAndCloseAllConnectedSessions. > > ---- > Load Magritte > loaded Magritte-All-lr.171 > Load Pier > loaded Pier-All-lr.109 > Load OmniBrowser > loaded OmniBrowser-avi.258 > loaded Pier-OmniBrowser-lr.19 > ---- > Latest Pier-Magma code > > loaded Pier-Model-kph.80 > loaded Pier-Seaside-kph.80 > loaded Pier-Magma-kph.1 > ---- > Pre-upload actions: > > Monticello Browser - "flush cached versions". > ---- > Release Preloaded Image as Sqk3.8f-smp.image > > > > > > > ___________________________________________________________ > The all-new Yahoo! Mail goes wherever you go - free your email > address from your Internet provider. http://uk.docs.yahoo.com/ > nowyoucan.html > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From keith_hodges at yahoo.co.uk Sat Sep 9 19:05:21 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 09 Sep 2006 18:05:21 +0100 Subject: WAMagmaSharedSession Message-ID: <4502F451.4060700@yahoo.co.uk> In the latest Magma seaside package I have added an experimental session that only uses one session per repository. This makes sense (I think) for pier because pier manages its own model locking on its model. Performance is much better too Keith ___________________________________________________________ Try the all-new Yahoo! Mail. "The New Version is radically easier to use" ? The Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Sat Sep 9 03:59:25 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 09 Sep 2006 02:59:25 +0100 Subject: PRKernel instances In-Reply-To: <4502F451.4060700@yahoo.co.uk> References: <4502F451.4060700@yahoo.co.uk> Message-ID: <45021FFD.2010909@yahoo.co.uk> Lukas, I would like to change PRKernel instances to be managed by a KeyedSet. I am seeking prior approval before submitting the work. I am looking forward to a time when there may be many many more pier kernels in one system, and the pier application serves them all (or a nominated subset) rather than just one. Lookup performance will be better, especially with the Magma-Pier changes that I made to make the application preference a String #kernelName rather than a PRKernel instance #kernel. Also error messages become consistent, e.g. creating a kernel with an already existing name. your thoughts? Keith ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ From Florent.Trolat at etu.univ-savoie.fr Sun Sep 10 17:19:49 2006 From: Florent.Trolat at etu.univ-savoie.fr (=?iso-8859-15?q?Florent_Trolat?=) Date: Sun, 10 Sep 2006 17:19:49 +0200 Subject: =?iso-8859-15?q?scription_=3A_=27options=3A=27_which_depends_of_an_inMASi?= =?iso-8859-15?q?ngleOptionDestance_attribute?= Message-ID: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> Hi, An object A have a collection of objects B. each objects B have a collection of objects C, and finnaly each object C have an attribute wich references an object B take in the collection of A. A 1<=>* B 1<=>* C 1<=>1 B among the Collection of A My problem : In a description can I acces to the object which is currently describe? I use a class variable style 'myCurrentObject' which I feel before compute the descritption but it smells bad... :-/ I hope that I've been understandable ;-) Florent. :-) From Florent.Trolat at etu.univ-savoie.fr Sun Sep 10 17:23:32 2006 From: Florent.Trolat at etu.univ-savoie.fr (=?iso-8859-15?q?Florent_Trolat?=) Date: Sun, 10 Sep 2006 17:23:32 +0200 Subject: =?iso-8859-15?q?Sorry_=3A_MASingleOptionDescription_=3A_=27options=3A=27_?= =?iso-8859-15?q?which_depends_of_an_instance_attribute?= Message-ID: <20060910152332.22501.43618@portail.jacob.univ-savoie.fr> Hi, An object A have a collection of objects B. each objects B have a collection of objects C, and finnaly each object C have an attribute wich references an object B take in the collection of A. A 1<=>* B 1<=>* C 1<=>1 B among the Collection of A My problem : In a description can I acces to the object which is currently describe? I use a class variable style 'myCurrentObject' which I feel before compute the descritption but it smells bad... :-/ I hope that I've been understandable ;-) Florent. :-) From Florent.Trolat at etu.univ-savoie.fr Sun Sep 10 17:46:59 2006 From: Florent.Trolat at etu.univ-savoie.fr (=?iso-8859-15?q?Florent_Trolat?=) Date: Sun, 10 Sep 2006 17:46:59 +0200 Subject: =?iso-8859-15?q?description_and_references_refresh_when_editing?= Message-ID: <20060910154659.8692.2978@www9.univ-savoie.fr> Hi,[re ;-)] with the same case : ---------------------------------------------------- An object A have a collection of objects B. each object B have a collection of objects C, and finnaly each object C have an attribute wich references an object B take in the collection of A. A 1<=>* B 1<=>* C 1<=>1 B among the Collection of A- ----------------------------------------------------- When I edit with seaside components an object A and if I add object B I need to save A to be able to use B objects, recently added, with C objects. May be clearer : Steps 1/ I edit A object 2/ I add B objects to the collection in A 3/ When creating B objects I want to add C objects 4/ When creating C objects ... the list of B objects in the object A is not already update and I have to previously save A to use the collection... I believe my probleme is due to the memento pattern used when creating A object... May be I need to commit A memento ? Thanks for your help Florent. From renggli at iam.unibe.ch Sun Sep 10 21:22:21 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 10 Sep 2006 21:22:21 +0200 Subject: Sorry : MASingleOptionDescription : 'options:' which depends of an instance attribute In-Reply-To: <20060910152332.22501.43618@portail.jacob.univ-savoie.fr> References: <20060910152332.22501.43618@portail.jacob.univ-savoie.fr> Message-ID: > [...] > > I hope that I've been understandable ;-) I don't exactly understand what you described, though I think I understand the problem described in the subject of your mail. It is the easiest if you override #description on the instance-side of your object and manually add/change (a copy of) the MAOptionDescription to hold the objects you want in the list of options. This is one of the things I would like to get fixed in the next big change of Magritte: have descriptions that belong to the instance being defined on the instance side, so that they can differ depending on the state of the model. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From ducasse at iam.unibe.ch Sun Sep 10 23:00:52 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Sun, 10 Sep 2006 23:00:52 +0200 Subject: scription : 'options:' which depends of an inMASingleOptionDestance attribute In-Reply-To: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> Message-ID: why would you need that? normally you should not mix level. Meta is about meta. > > Hi, > > An object A have a collection of objects B. each objects B have a > collection of objects C, and finnaly each object C have an > attribute wich references an object B take in the collection of A. > > A 1<=>* B 1<=>* C 1<=>1 B among the Collection of A > > > My problem : > > In a description can I acces to the object which is currently > describe? > I use a class variable style 'myCurrentObject' which I feel before > compute the descritption but it smells bad... :-/ > > I hope that I've been understandable ;-) > > Florent. :-) > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From renggli at iam.unibe.ch Mon Sep 11 08:53:15 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 11 Sep 2006 08:53:15 +0200 Subject: Magritte 2 (was MASingleOptionDescription ...) In-Reply-To: References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> Message-ID: <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> > why would you need that? > normally you should not mix level. Meta is about meta. Are you talking about the following paragraph I wrote? > This is one of the things I would like to get fixed in the next big > change of Magritte: have descriptions that belong to the instance > being defined on the instance side, so that they can differ depending > on the state of the model. If yes, the first point is my answer: * In my opinion descriptions are orthogonal to the Smalltalk meta- hierarchy. Currently Magritte only allows to automatically compose and collect descriptions from the class-side that are then applied to the instance side. This sort of makes sense but gets complicated as soon as people want to change descriptions depending on the state of the object or want to apply descriptions to the class-side itself (there is no place to put these). Both use-cases are already possible right now, but they are unnecessary complex. The only problem I see when putting the descriptions to the instance- side is that you require an instance of the object to get the meta- model. I don't know if anybody sees a possible problem with this? * Another thing I would like to change is to get rid of the whole MAReferenceDescription hierarchy. Again this is something that is much more complex than it should be. Similar to EMOF I would like to add a multiplicity attribute directly to the basic description itself. * And of course use less common selector names for extension methods to Object. ;-) Any other important change-requests? Lukas -- Lukas Renggli http://www.lukas-renggli.ch From ducasse at iam.unibe.ch Mon Sep 11 09:08:05 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Mon, 11 Sep 2006 09:08:05 +0200 Subject: Magritte 2 (was MASingleOptionDescription ...) In-Reply-To: <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> Message-ID: No I was talking about the question of florent to have reference to the base object in the metadescription. Stef On 11 sept. 06, at 08:53, Lukas Renggli wrote: >> why would you need that? >> normally you should not mix level. Meta is about meta. > > Are you talking about the following paragraph I wrote? > >> This is one of the things I would like to get fixed in the next big >> change of Magritte: have descriptions that belong to the instance >> being defined on the instance side, so that they can differ depending >> on the state of the model. > > If yes, the first point is my answer: > > * In my opinion descriptions are orthogonal to the Smalltalk meta- > hierarchy. Currently Magritte only allows to automatically compose > and collect descriptions from the class-side that are then applied to > the instance side. This sort of makes sense but gets complicated as > soon as people want to change descriptions depending on the state of > the object or want to apply descriptions to the class-side itself > (there is no place to put these). Both use-cases are already possible > right now, but they are unnecessary complex. > > The only problem I see when putting the descriptions to the instance- > side is that you require an instance of the object to get the meta- > model. I don't know if anybody sees a possible problem with this? > > * Another thing I would like to change is to get rid of the whole > MAReferenceDescription hierarchy. Again this is something that is > much more complex than it should be. Similar to EMOF I would like to > add a multiplicity attribute directly to the basic description itself. > > * And of course use less common selector names for extension methods > to Object. ;-) > > Any other important change-requests? > > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From Florent.Trolat at etu.univ-savoie.fr Mon Sep 11 13:44:27 2006 From: Florent.Trolat at etu.univ-savoie.fr (=?iso-8859-15?q?Florent_Trolat?=) Date: Mon, 11 Sep 2006 13:44:27 +0200 Subject: =?iso-8859-15?q?Re=3A_Magritte_2_=28was_MASingleOptionDescription_=2E=2E?= =?iso-8859-15?q?=2E=29?= Message-ID: <20060911114427.22652.96909@portail.annecy.univ-savoie.fr> In fact I've several cases with this problem : My first example : I want to built a graph : 1/ I edit the graph 2/ I add some state 3/ I add transitions wich needs the collection of state previously add to the graph => lukas have understand I think my problem... it's very usefull to have a description "instance side"... Steph : it's does not make sens to do this with meta level? From keith_hodges at yahoo.co.uk Mon Sep 11 15:40:46 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 11 Sep 2006 14:40:46 +0100 Subject: MAPierMainAllKernels In-Reply-To: <45021154.8090209@yahoo.co.uk> References: <45021154.8090209@yahoo.co.uk> Message-ID: <4505675E.4020107@yahoo.co.uk> In my recent fork of Pier-Seaside, I have added PRPierMainAllKernels, a subclass of PRPierMain which serves all of the current kernels. Keith ___________________________________________________________ Inbox full of spam? Get leading spam protection and 1GB storage with All New Yahoo! Mail. http://uk.docs.yahoo.com/nowyoucan.html From m.rueger at acm.org Mon Sep 11 16:47:36 2006 From: m.rueger at acm.org (Michael Rueger) Date: Mon, 11 Sep 2006 10:47:36 -0400 Subject: [Seaside] Problem with german characters In-Reply-To: <67628d690609110744k6ac7259cme490f6992fec1110@mail.gmail.com> References: <45056D72.8070700@libsource.com> <67628d690609110744k6ac7259cme490f6992fec1110@mail.gmail.com> Message-ID: <45057708.4060404@acm.org> Lukas Renggli wrote: > Every so often I hear that people are trying to register at > , what does not work as > this is just a mirror of the archive. I think it would be good to > disable this form. Who is responsible? That would be me. > The official mailing-list registration and the archive is reachable at > . I would really like to suggest to move the smallwiki list to a mailman installation so we can get rid of this rather complicated arrangement. The list probably could be hosted on the squeak servers? Michael From renggli at iam.unibe.ch Mon Sep 11 16:55:33 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 11 Sep 2006 16:55:33 +0200 Subject: [Seaside] Problem with german characters In-Reply-To: <45057708.4060404@acm.org> References: <45056D72.8070700@libsource.com> <67628d690609110744k6ac7259cme490f6992fec1110@mail.gmail.com> <45057708.4060404@acm.org> Message-ID: <494743A8-B077-48DF-92CA-E5D556600A88@iam.unibe.ch> Hi Michael, > > The official mailing-list registration and the archive is reachable at > > . > > I would really like to suggest to move the smallwiki list to a mailman > installation so we can get rid of this rather complicated arrangement. > The list probably could be hosted on the squeak servers? in fact this transition to mail-man has been done a long time ago. As you can see it already works on mailman, not on a Squeak server but on the University. There is also the complete archive, so the mirror at impara.de is not really necessary anymore. Could you disable it? Or are there other implications I do not see? Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From m.rueger at acm.org Mon Sep 11 17:24:34 2006 From: m.rueger at acm.org (Michael Rueger) Date: Mon, 11 Sep 2006 11:24:34 -0400 Subject: [Seaside] Problem with german characters In-Reply-To: <494743A8-B077-48DF-92CA-E5D556600A88@iam.unibe.ch> References: <45056D72.8070700@libsource.com> <67628d690609110744k6ac7259cme490f6992fec1110@mail.gmail.com> <45057708.4060404@acm.org> <494743A8-B077-48DF-92CA-E5D556600A88@iam.unibe.ch> Message-ID: <45057FB2.7030403@acm.org> Lukas Renggli wrote: > in fact this transition to mail-man has been done a long time ago. As Oh, never noticed it... > you can see it already works on mailman, not on a Squeak server but on > the University. There is also the complete archive, so the mirror at > impara.de is not really necessary anymore. Could you disable it? Or > are there other implications I do not see? Less work for me :-) Do any links to the archive need updating? I will disable the Smallwiki mirror then end of the week... Thanks Michael From ramon.leon at allresnet.com Mon Sep 11 17:25:04 2006 From: ramon.leon at allresnet.com (Ramon Leon) Date: Mon, 11 Sep 2006 08:25:04 -0700 Subject: Magritte 2 (was MASingleOptionDescription ...) In-Reply-To: <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> Message-ID: <00d901c6d5b6$74daac50$9700a8c0@hq.allresnet.com> > * Another thing I would like to change is to get rid of the > whole MAReferenceDescription hierarchy. Again this is > something that is much more complex than it should be. > Similar to EMOF I would like to add a multiplicity attribute > directly to the basic description itself. :) > * And of course use less common selector names for extension > methods to Object. ;-) Yah! :) > Any other important change-requests? > > Lukas Yes, please try to keep everything 3.8 compatible, I see it being my production platform for quite a while. It took a long time to trust 3.8, it'll take a while before I learn to trust 3.9. Oh, and keep up the great work, your stuff rocks! From cbeler at enit.fr Mon Sep 11 18:02:40 2006 From: cbeler at enit.fr (=?UTF-8?B?Q8OpZHJpY2sgQsOpbGVy?=) Date: Mon, 11 Sep 2006 18:02:40 +0200 Subject: Magritte 2 (was MASingleOptionDescription ...) In-Reply-To: <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> Message-ID: <450588A0.6040502@enit.fr> Hi All > The only problem I see when putting the descriptions to the instance- > side is that you require an instance of the object to get the meta- > model. I don't know if anybody sees a possible problem with this? > a bit like in MEWA. I don't really care but I found more elegant without adding instance variables. Wouldn't it be possible to use Pragma on each inst var accessors ? > * Another thing I would like to change is to get rid of the whole > MAReferenceDescription hierarchy. Again this is something that is > much more complex than it should be. Yes I agree with that... we should have some primitiveDescriptions and ReferenceDescriptions only. With a boolean telling if the description is single or multi valuated. Then, a MAOptionDescription would be a MAStringDescription with say indexed=true and maybe a cardinality var (?). Also, I thing we need to have the possibility to associate referenceProperties either with existing instances (of a class) or with new created ones (of the same class). > Similar to EMOF I would like to > add a multiplicity attribute directly to the basic description itself. > EMOF will allow to represent the behavior of domain classes ? > > Any other important change-requests? > > > I have some though they may be unrealistic ;) - Would it be possible to declare dependencies between descriptions ? For instance, to avoid some combinations of value because of semantics reasons or also to shrink another description domain. Would it worth reifiing the concept of domain to achieve that? My concern is more about knowledge representation, ontology-like. I think we miss a tool like that in squeak/ST and Magritte seems close to that. Magritte allows to meta described a domain ? and even more... as it seems to me that we can metadescribed a bit everything (a GUI, descriptions themselves, etc...). How do you position Magritte compared to an ontology tool ? (especialy with this one: http://www.old.netobjectdays.org/pdf/00/slides/knublauch_pr.pdf or http://www.knublauch.com/publications/KBeans-Technical-Report-FAW.pdf) Maybe having an ontology tool would mean to have it's own "ontology" model that in turn can be described with Magritte... - For instance, some conditions are now difficult (or impossible to model). Now it seems to me that we can mainly add unary constraints. It could be convenient to add binary conditions, that would do delayed validation (diplaying warnings for example). I tryied to implement a simple model (like in the example of the slides of the previous link, see the attached picture of the class diagram) with some constraints and I just don't know how to do that whith Magritte right now. I joined a "first try" (attached .st file). Subclassing was not necessary but I think it's good to illustrate waht we can do or not. Is it possible to discuss on this model and see how magritte can help to model it. Do you want Magritte to model such kind of domains ? or is it too much "knowledge", "OCL" oriented ? - Last and more fanciful, after seeing dabble :) I was wondering if it'd be possible to transform a StringDescription in another kind of description (hence modifiing the underliing model and existing instances) String to date, String to object... I think that would allow to have a cool modeling tool but it must be out of the scope of Magritte.... Hope there are some interesting ideas ;) ... Cheers, C?drick -------------- next part -------------- A non-text attachment was scrubbed... Name: constrainedModel.png Type: image/png Size: 42551 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060911/42209823/constrainedModel-0001.png -------------- next part -------------- A non-text attachment was scrubbed... Name: ModelTest-Magritte.st Type: application/squeak-changeset Size: 6393 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060911/42209823/ModelTest-Magritte-0001.bin From philippe.marschall at gmail.com Tue Sep 12 00:33:15 2006 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Tue, 12 Sep 2006 00:33:15 +0200 Subject: PRKernel instances In-Reply-To: <45021FFD.2010909@yahoo.co.uk> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> Message-ID: <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> 2006/9/9, Keith Hodges : > Lukas, > > I would like to change PRKernel instances to be managed by a KeyedSet. I > am seeking prior approval before submitting the work. > > I am looking forward to a time when there may be many many more pier > kernels in one system, and the pier application serves them all (or a > nominated subset) rather than just one. > > Lookup performance will be better, especially with the Magma-Pier > changes that I made to make the application preference a String > #kernelName rather than a PRKernel instance #kernel. > > Also error messages become consistent, e.g. creating a kernel with an > already existing name. > > your thoughts? I dislike KeyedSets because they don't work well together with persistence in general. But if we use a symbol instead of a block (Magritte adds #value: to Symbol) we should be able to work around this. Philippe From keith_hodges at yahoo.co.uk Mon Sep 11 01:32:32 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 11 Sep 2006 00:32:32 +0100 Subject: [Smallwiki] Re: PRKernel instances In-Reply-To: <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> Message-ID: <4504A090.6080508@yahoo.co.uk> KeyedSets do not have to use a block, if the items respond to #key. Its a bit of a hack but in this case all it needs is for PRKernel to implement #key. As for persistence not working with it, surely that has to be a limitation of a particular persistence solution. As far as Magma is concerned I dont think it is necessary to persist "PRKernel instances". I agree that it would be much nicer if Magma did support KeyedSets fully which it doesnt. I would happily put a KeyedSet in as my repository root. (I already tried it). Keith > I dislike KeyedSets because they don't work well together with > persistence in general. But if we use a symbol instead of a block > (Magritte adds #value: to Symbol) we should be able to work around > this. > > Philippe > > ___________________________________________________________ All new Yahoo! Mail "The new Interface is stunning in its simplicity and ease of use." - PC Magazine http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Mon Sep 11 02:30:59 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 11 Sep 2006 01:30:59 +0100 Subject: Context-#session In-Reply-To: <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> Message-ID: <4504AE43.9080600@yahoo.co.uk> In trying to implement MagmaPersistency it turns out that the fact that PRContext holds a local cache to the current session may be a bit of a pain. Not only may there be a lot more stuff accidentally persisted through this reference, there may actually be objects that magma gurus say 'don't persist these if you know what is good for you'. I cant see that this cache is widely used, so I wondered if anyone would object if it was removed i.e. make this method lookup the current session the hard but not all that slow way (about 100 microseconds, on my oldish 700Mhz machine) PRContext>>session ^ WACurrentSession value any thoughts/opinions? Keith ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html From chris at funkyobjects.org Tue Sep 12 03:44:54 2006 From: chris at funkyobjects.org (Chris Muller) Date: Mon, 11 Sep 2006 18:44:54 -0700 (PDT) Subject: Context-#session In-Reply-To: <4504AE43.9080600@yahoo.co.uk> Message-ID: <20060912014454.25414.qmail@web31804.mail.mud.yahoo.com> > The problem that I have is that pier saves its history by saving its > instances of PRContext', namely the context of the model changing > command being performed. This context happens to have a local cache > in > it's properties the seaside session ('to avoid unneccessary > lookups'), > which if it is WAMagmaSession has a magmaSession instance var. > > Now I could attempt to clear this cached value out before persistence > takes place, but I see no guarantees that some other bit of code may > reference the session and repopulate the cached value while I am not > looking. Hi Keith, could the MagmaSessions #location help here? The #location gives you a MagmaLocation which was intended for this purpose; it can be serialized/materialized, and let you get a #newSession any time. You could clear the cached value before persistence and change its getter to lazy initialize it from the location..? - Chris --- Keith Hodges wrote: > In trying to implement MagmaPersistency it turns out that the fact > that > PRContext holds a local cache to the current session may be a bit of > a > pain. Not only may there be a lot more stuff accidentally persisted > through this reference, there may actually be objects that magma > gurus > say 'don't persist these if you know what is good for you'. > > I cant see that this cache is widely used, so I wondered if anyone > would > object if it was removed > > i.e. make this method lookup the current session the hard but not all > that slow way (about 100 microseconds, on my oldish 700Mhz machine) > > PRContext>>session > > ^ WACurrentSession value > > any thoughts/opinions? > > Keith > > > > > ___________________________________________________________ > The all-new Yahoo! Mail goes wherever you go - free your email > address from your Internet provider. > http://uk.docs.yahoo.com/nowyoucan.html > _______________________________________________ > Magma mailing list > Magma at lists.squeakfoundation.org > http://lists.squeakfoundation.org/mailman/listinfo/magma > > > From renggli at iam.unibe.ch Tue Sep 12 08:09:26 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 12 Sep 2006 08:09:26 +0200 Subject: Context-#session In-Reply-To: <4504AE43.9080600@yahoo.co.uk> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> <4504AE43.9080600@yahoo.co.uk> Message-ID: <9B6E97B0-207C-407A-B82F-5169BF79D414@iam.unibe.ch> > In trying to implement MagmaPersistency it turns out that the fact > that > PRContext holds a local cache to the current session may be a bit of a > pain. Not only may there be a lot more stuff accidentally persisted > through this reference, there may actually be objects that magma gurus > say 'don't persist these if you know what is good for you'. What kind of cache? There is a reference to the kernel. To the currently browsed structure and the currently executed command. Moreover there is a time-stamp and an enumerator object. Ideally descriptions on the class-side should tell you what fields have to be persistent. > I cant see that this cache is widely used, so I wondered if anyone > would > object if it was removed Is it something you added yourself? I am lost :-) Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From philippe.marschall at gmail.com Tue Sep 12 10:35:55 2006 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Tue, 12 Sep 2006 10:35:55 +0200 Subject: [Smallwiki] Re: PRKernel instances In-Reply-To: <4504A090.6080508@yahoo.co.uk> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> <4504A090.6080508@yahoo.co.uk> Message-ID: <66666f210609120135r1e20057dpe462eeeebad7877f@mail.gmail.com> 2006/9/11, Keith Hodges : > KeyedSets do not have to use a block, if the items respond to #key. Its > a bit of a hack but in this case all it needs is for PRKernel to > implement #key. > > As for persistence not working with it, surely that has to be a > limitation of a particular persistence solution. OmniBase, (Smart) ReferenceStream, Goods, PostgreS all do not support blocks. Magma does not really and fully support blocks. Philippe From cbeler at enit.fr Tue Sep 12 11:38:45 2006 From: cbeler at enit.fr (=?ISO-8859-1?Q?C=E9drick_B=E9ler?=) Date: Tue, 12 Sep 2006 11:38:45 +0200 Subject: Magritte 2 - Modelisation limits ? In-Reply-To: <450588A0.6040502@enit.fr> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> Message-ID: <45068025.1090000@enit.fr> Hi Ok my previous email was not clear, I'll try to shorten it ! Please tell me if it's unclear, unrealistic, too complicated...or just stupid ! Given the model below, I'd like to discuss some points: (1) Concerning the link spouse - Idealy, assigning spouse should be done with an existing instance of Person, or with a new created one. Magritte actual version only allows to create a new Person (tell me if I'm wrong). I once tried to do a variation of MAToOneRelationDescription adding a repository of existing instances). Is it somethink you'd like Magritte to allow ? According to me, having a kind of repository for existing instances in a given context should be interesting. What do you think ? - Also on the same example, assigning a spouse to a person must assign the opposite (spouse spouse: aPerson) as it's a bidirectionnal relation. Is it something you'd like to address (unidirectional and bidirectional references) ? (2) Validation Condition - It sems to me that MAValidation allow to model unary contraints like value of lastName can't be nil, or valid value of marital status are in the list #(unmarried married widowed). Bot for more complicated constraints (binary, constraints on instances...) it seems impossible to me. For instance, if a person maritalStatus is set to unmarried, then the person cannot have children (this is the model example ;) ). Would you like to allow to model that kind of constraints or is it out of the scope of Magritte ? I think this is becoming very complex (CSP field, rule based...) especially if we want to do that on the fly but maybe doing a check afterwhile could be more realistic... I stop here and I hope it's a bit clearer at least point (1)... Is it ? Do you understand my concern ? If not can you tell me the modeling limits of Magritte ? What you want it to be or not... Thanks you C?drick > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------ > > From cbeler at enit.fr Tue Sep 12 11:44:34 2006 From: cbeler at enit.fr (=?ISO-8859-1?Q?C=E9drick_B=E9ler?=) Date: Tue, 12 Sep 2006 11:44:34 +0200 Subject: Magritte 2 - Modelisation limits ? In-Reply-To: <45068025.1090000@enit.fr> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> Message-ID: <45068182.1020905@enit.fr> > Given the model below, oups... you'll find it here: http://88.191.19.63/ressources/model/constrainedModel.png From keith_hodges at yahoo.co.uk Mon Sep 11 14:25:13 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 11 Sep 2006 13:25:13 +0100 Subject: [Smallwiki] Re: Context-#session In-Reply-To: <9B6E97B0-207C-407A-B82F-5169BF79D414@iam.unibe.ch> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> <4504AE43.9080600@yahoo.co.uk> <9B6E97B0-207C-407A-B82F-5169BF79D414@iam.unibe.ch> Message-ID: <450555A9.5050300@yahoo.co.uk> Lukas Renggli wrote: >> In trying to implement MagmaPersistency it turns out that the fact >> that >> PRContext holds a local cache to the current session may be a bit of a >> pain. Not only may there be a lot more stuff accidentally persisted >> through this reference, there may actually be objects that magma gurus >> say 'don't persist these if you know what is good for you'. >> > > What kind of cache? > > PRContext>>session "Answer the cached seaside session, this is a short-cut to avoid to unnecessary lookups." ^ self propertyAt: #session ifAbsentPut: [ WACurrentSession value ] This kind of cache! Keith ___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com From renggli at iam.unibe.ch Tue Sep 12 14:31:10 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 12 Sep 2006 14:31:10 +0200 Subject: [Smallwiki] Re: Context-#session In-Reply-To: <450555A9.5050300@yahoo.co.uk> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> <4504AE43.9080600@yahoo.co.uk> <9B6E97B0-207C-407A-B82F-5169BF79D414@iam.unibe.ch> <450555A9.5050300@yahoo.co.uk> Message-ID: <8C27E6F2-53F2-4DA1-88BD-5217607C21BF@iam.unibe.ch> >>> In trying to implement MagmaPersistency it turns out that the fact >>> that >>> PRContext holds a local cache to the current session may be a bit >>> of a >>> pain. Not only may there be a lot more stuff accidentally persisted >>> through this reference, there may actually be objects that magma >>> gurus >>> say 'don't persist these if you know what is good for you'. >>> >> >> What kind of cache? >> >> > PRContext>>session > "Answer the cached seaside session, this is a short-cut to > avoid to > unnecessary lookups." > > ^ self propertyAt: #session ifAbsentPut: [ WACurrentSession > value ] > > This kind of cache! I see, this is not really useful if you use a persistency mechanism that dumps out the whole objects. The idea was that Pier knows using the description what parts of the objects to serialize, something that is probably not easily controllable with a framework using the Smalltalk reach-ability to serialize objects. So I would suggest that you remove this cache. What's the trouble with MAProxyObject instances? Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From azreal1977 at hotmail.com Tue Sep 12 17:05:06 2006 From: azreal1977 at hotmail.com (J J) Date: Tue, 12 Sep 2006 15:05:06 +0000 Subject: New image map component Message-ID: Hello group, I am planning to make a new image map component for pier. Does anyone know of anything like this pre-existing? If not I need a little bit of help: I want my Image map Pier component to be configured from the settings command so I need to know how to use Magritte to build the GUI. My ideal representation (at least that I have thought of so far) would be a Dictionary. For every Coordinate string there is an image string (file location) to go with it. It is a direct one to one, but the two members of this relationship are both strings. And I want them to wind up getting added to the dictionary. My preference would be that the ImageMap component has a #addCoord:withImage: method that gets called for each entry. I did not see how this could be done in Magritte from the tutorials or source code. Anyone got any ideas? Thanks in advance. From azreal1977 at hotmail.com Tue Sep 12 17:41:49 2006 From: azreal1977 at hotmail.com (J J) Date: Tue, 12 Sep 2006 15:41:49 +0000 Subject: Image map in pier Message-ID: Hello group, I am planning on writting an image map component for Pier. Has anyone heard of someone else doing something like this? I am assuming no and going ahead and building one. :) But the problem I am having is that I want the component to be configured via the settings command from inside Pier. I need a way, from the settings page, to be able to add coordinate->image file pairs. The logical representation to me seems like a dictionary. I have read all the tutorials I can find, and went through the source code, but I don't see how one does in this Magritte. Can anyone help me out on this? Thanks, az From renggli at iam.unibe.ch Tue Sep 12 17:48:01 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 12 Sep 2006 17:48:01 +0200 Subject: New image map component In-Reply-To: References: Message-ID: <10FAF719-75BB-47C7-A1B5-6D83054FC55A@iam.unibe.ch> > I am planning to make a new image map component for pier. Does > anyone know > of anything like this pre-existing? If not I need a little bit of > help: No, but there are many add-on components available from . This might be an interesting starting point. > I want my Image map Pier component to be configured from the settings > command so I need to know how to use Magritte to build the GUI. My > ideal > representation (at least that I have thought of so far) would be a > Dictionary. For every Coordinate string there is an image string > (file > location) to go with it. It is a direct one to one, but the two > members of > this relationship are both strings. And I want them to wind up > getting > added to the dictionary. My preference would be that the ImageMap > component > has a #addCoord:withImage: method that gets called for each entry. Magritte doesn't know how to add and remove entries from a dictionary. Of course, this can be changed, but I think the easiest would be the following: 1. Create an Area class with described fields for the coordinate and image string (exactly as in the tutorial). 2. Create a subclass of PRStructure with a field to hold the areas. Describe the field with something like: ^ (MAToManyRelationDescription selector: #areas label: 'Areas' priority: 400 default: OrderedCollection new) classes: (OrderedCollection with: Area); yourself That should work (untested). Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Mon Sep 11 17:58:50 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 11 Sep 2006 16:58:50 +0100 Subject: Preloaded Seaside-Magma-Pier 0.9 image In-Reply-To: <8C27E6F2-53F2-4DA1-88BD-5217607C21BF@iam.unibe.ch> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> <4504AE43.9080600@yahoo.co.uk> <9B6E97B0-207C-407A-B82F-5169BF79D414@iam.unibe.ch> <450555A9.5050300@yahoo.co.uk> <8C27E6F2-53F2-4DA1-88BD-5217607C21BF@iam.unibe.ch> Message-ID: <450587BA.5050503@yahoo.co.uk> Latest release of image available at ftp.seasidehosting.st Username: preloaded password: squeak Sqk3.8f-smp0.9.image (and changes) This release supports the logging of changes. I do this by copying the useful parts of a PRContext before putting them into the repository and when taking them out of the repository copying them again before using them. For now this seems to work ok. Keith ---------------- Welcome to the Seaside Magma Pier preloaded image. Please send your comments to the magma or pier mailing lists. ---------------------------------------------------------- This release smp 0.9 11thSept2006 First release fully supporting Magma-Pier integration with history and changes logs. ___________________________________________________________ Try the all-new Yahoo! Mail. "The New Version is radically easier to use" ? The Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Mon Sep 11 18:13:45 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 11 Sep 2006 17:13:45 +0100 Subject: [Smallwiki] Re: Context-#session In-Reply-To: <8C27E6F2-53F2-4DA1-88BD-5217607C21BF@iam.unibe.ch> References: <4502F451.4060700@yahoo.co.uk> <45021FFD.2010909@yahoo.co.uk> <66666f210609111533w3e189597p18bcbf0587247242@mail.gmail.com> <4504AE43.9080600@yahoo.co.uk> <9B6E97B0-207C-407A-B82F-5169BF79D414@iam.unibe.ch> <450555A9.5050300@yahoo.co.uk> <8C27E6F2-53F2-4DA1-88BD-5217607C21BF@iam.unibe.ch> Message-ID: <45058B39.6040109@yahoo.co.uk> > I see, this is not really useful if you use a persistency mechanism > that dumps out the whole objects. The idea was that Pier knows using > Indeed. > the description what parts of the objects to serialize, something > that is probably not easily controllable with a framework using the > Smalltalk reach-ability to serialize objects. > > So I would suggest that you remove this cache. > > It seems that most of the properties in PRContext are not very useful when persisted. My current approach explicitly copies the parts of the object that I wish to persist, and so now it is not absolutely necessary to remove this cache. I have removed Pier-Magma's use of this cache, and so it remains to see who else actually uses it. > What's the trouble with MAProxyObject instances? > > I am not really sure of the ins and outs of this. I think that Magma was attempting to serialise part of the PRContext structure at the time. The proxy was to an Array of Commands, containing 8 items. Magma was looping through them to serialise them and asked for maInstSize which returned 9 rather than 8, owing to the fact that ProtoObject (i.e MAProxyObject) returns maInstSize as (^self class instSize + self basicSize ) differently to Object. I.e. the call to maInstSize is not being proxied. A fix would be to add an explicit maInstSize to MAProxyObject. I suspect that it would be worth setting up a test case for this one and to work out just what the desired behaviour actually is. Keith ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html From azreal1977 at hotmail.com Tue Sep 12 18:26:20 2006 From: azreal1977 at hotmail.com (J J) Date: Tue, 12 Sep 2006 16:26:20 +0000 Subject: New image map component In-Reply-To: <10FAF719-75BB-47C7-A1B5-6D83054FC55A@iam.unibe.ch> Message-ID: >From: Lukas Renggli >Reply-To: "Magritte, Pier and Related Tools ..." >To: "Magritte, Pier and Related Tools ..." >Subject: Re: New image map component >Date: Tue, 12 Sep 2006 17:48:01 +0200 > >Magritte doesn't know how to add and remove entries from a >dictionary. Of course, this can be changed, but I think the easiest >would be the following: > > > >That should work (untested). > >Cheers, >Lukas Thanks, I may try that. But first, is there a way to just add strings in a container? I see there is a way to remove a set of objects (e.g. the settings on the commands component), but can I have like one of those box container displays and above it a string and I click add and it goes into the container, and therefor the box? From renggli at iam.unibe.ch Tue Sep 12 19:24:13 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 12 Sep 2006 19:24:13 +0200 Subject: New image map component In-Reply-To: References: Message-ID: <32C37561-E0DF-49D5-BDF5-91145FFA9374@iam.unibe.ch> > Thanks, I may try that. But first, is there a way to just add > strings in a > container? I see there is a way to remove a set of objects (e.g. > the settings on the commands component), but can I have like one of > those box container displays and > above it a string and I click add and it goes into the container, and > therefor the box? No, I don't think so, unless you create your own description/editor that does exactly what you want. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From azreal1977 at hotmail.com Tue Sep 12 19:32:55 2006 From: azreal1977 at hotmail.com (J J) Date: Tue, 12 Sep 2006 17:32:55 +0000 Subject: Image link In-Reply-To: <32C37561-E0DF-49D5-BDF5-91145FFA9374@iam.unibe.ch> Message-ID: Oh a totally unrelated to my last question note: In pier how does one make a picture as a link to an internal page? I know you can do *My text>internal page*, but I didn't see how to do this with an image. Thanks From renggli at iam.unibe.ch Tue Sep 12 19:43:19 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 12 Sep 2006 19:43:19 +0200 Subject: Image link In-Reply-To: References: Message-ID: > Oh a totally unrelated to my last question note: In pier how does > one make > a picture as a link to an internal page? I know you can do *My > text>internal page*, but I didn't see how to do this with an image. This is not really possible at the moment, however you can mix XHTML and the Wiki syntax anywhere in the system as long as you only intend to use the pages on the Web. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From azreal1977 at hotmail.com Tue Sep 12 19:47:42 2006 From: azreal1977 at hotmail.com (J J) Date: Tue, 12 Sep 2006 17:47:42 +0000 Subject: Image link In-Reply-To: Message-ID: Yea, that's the problem. I am converting my wife's band web page to pier, and they used team fussion to build it. It has a lot of pictures that link to internal pages, so I have to duplicate all that. But if there is no way, I guess I can just do some CSS tricks. :) >From: Lukas Renggli >Reply-To: "Magritte, Pier and Related Tools ..." >To: "Magritte, Pier and Related Tools ..." >Subject: Re: Image link >Date: Tue, 12 Sep 2006 19:43:19 +0200 > > > Oh a totally unrelated to my last question note: In pier how does > > one make > > a picture as a link to an internal page? I know you can do *My > > text>internal page*, but I didn't see how to do this with an image. > >This is not really possible at the moment, however you can mix XHTML >and the Wiki syntax anywhere in the system as long as you only intend >to use the pages on the Web. > >Cheers, >Lukas > >-- >Lukas Renggli >http://www.lukas-renggli.ch > > > >_______________________________________________ >SmallWiki, Magritte, Pier and Related Tools ... >https://www.iam.unibe.ch/mailman/listinfo/smallwiki From renggli at iam.unibe.ch Wed Sep 13 09:11:30 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 13 Sep 2006 09:11:30 +0200 Subject: Magritte 2 - Modelisation limits ? In-Reply-To: <45068025.1090000@enit.fr> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> Message-ID: <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> > - Also on the same example, assigning a spouse to a person must > assign > the opposite (spouse spouse: aPerson) as it's a bidirectionnal > relation. Is it something you'd like to address (unidirectional and > bidirectional references) ? Yeah, this is something that is currently missing. Magritte does not work well with cyclic object graphs. You currently have to explicitly break and restore the graph at some point. > - It sems to me that MAValidation allow to model unary contraints like > value of lastName can't be nil, or valid value of marital status > are in > the list #(unmarried married widowed). Bot for more complicated > constraints (binary, constraints on instances...) it seems > impossible to > me. For instance, if a person maritalStatus is set to unmarried, then > the person cannot have children (this is the model example ;) ). Would > you like to allow to model that kind of constraints or is it out of > the > scope of Magritte ? I think this is becoming very complex (CSP field, > rule based...) especially if we want to do that on the fly but maybe > doing a check afterwhile could be more realistic... It is already possible, you have to add your validation rules to the container instead. I agree that the current implementation is not that ideal. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From cbeler at enit.fr Wed Sep 13 10:30:20 2006 From: cbeler at enit.fr (=?ISO-8859-1?Q?C=E9drick_B=E9ler?=) Date: Wed, 13 Sep 2006 10:30:20 +0200 Subject: Magritte 2 - Modelisation limits ? In-Reply-To: <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> Message-ID: <4507C19C.5020201@enit.fr> Hi >> - Also on the same example, assigning a spouse to a person must >> assign >> the opposite (spouse spouse: aPerson) as it's a bidirectionnal >> relation. Is it something you'd like to address (unidirectional and >> bidirectional references) ? >> > > Yeah, this is something that is currently missing. Magritte does not > work well with cyclic object graphs. You currently have to explicitly > break and restore the graph at some point. > I have no idea how to do that :)... Is it because of the memento ? For me, memento is about making a copy of an object, work on the copy and commit it... but if we need to access existing objects in the model (while there are modified), we only have the non-modified version... I had a case where I needed that. What if we directly access the right object after having made a copy of it (so we have the possibility to rollback). Can the straight memento (pr another one) allow to do that ? I think a genealogy tree would be a good example to work on and discuss (could be fun too :) ). But I think we really miss a kind of repository of existing objects. Do you think it's important for the next version of Magritte ? Do you have an idea to do that in a nice 'standard' way ? adding a class instance variable ?... Person firstName(s) ->list of String descriptions not to be duplicated lastName -> sex -> birthDate -> deathDate :( -> /age (ro) ->computed, I think it's ok as far as a coputed value does not depend on another object - dad -> on eligible existing one (sex + diff birthdate) or create a new one - plus add itself as a chidren mum -> same as previous maritalStatus -> bidirectional + constraint on names (for the example) spouse -> bidirectional children -> on eligible existing one or create a new one - plus add itself as a parent and the spouse as the other parent (if defined and still for the example) Does a model like that seem realizable ? >> - It sems to me that MAValidation allow to model unary contraints like >> value of lastName can't be nil, or valid value of marital status >> are in >> the list #(unmarried married widowed). Bot for more complicated >> constraints (binary, constraints on instances...) it seems >> impossible to >> me. For instance, if a person maritalStatus is set to unmarried, then >> the person cannot have children (this is the model example ;) ). Would >> you like to allow to model that kind of constraints or is it out of >> the >> scope of Magritte ? I think this is becoming very complex (CSP field, >> rule based...) especially if we want to do that on the fly but maybe >> doing a check afterwhile could be more realistic... >> > > It is already possible, you have to add your validation rules to the > container instead. I agree that the current implementation is not > that ideal. > Oh ok, I wasn't aware of that :) I'll try it... Thanks for your answers Ce'drick From renggli at iam.unibe.ch Wed Sep 13 10:48:20 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 13 Sep 2006 10:48:20 +0200 Subject: Magritte 2 - Modelisation limits ? In-Reply-To: <4507C19C.5020201@enit.fr> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> <4507C19C.5020201@enit.fr> Message-ID: <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> >> Yeah, this is something that is currently missing. Magritte does not >> work well with cyclic object graphs. You currently have to explicitly >> break and restore the graph at some point. > > I have no idea how to do that :)... I usually do the following: - Remove the description that creates cycles from the containers before starting the interpreter, for example to displaying the editor. - Keep the cyclic paths (back-refs) lazily initialized, so that they get automatically generated when a new object is added. > Is it because of the memento ? For me, memento is about making a > copy of > an object, work on the copy and commit it... but if we need to access > existing objects in the model (while there are modified), we only have > the non-modified version... I had a case where I needed that. No this has nothing to do with the memento. The memento is a snapshot of a described state. It has more to do with Magritte itself, it is not aware of possible recursions, something that I also want to enhance in the next version. > I think a genealogy tree would be a good example to work on and > discuss > (could be fun too :) ). But I think we really miss a kind of > repository > of existing objects. Do you think it's important for the next > version of > Magritte ? You mean a repository of descriptions? I tried to avoid this in the current version, because of uniqueness and equality of descriptions. If we want to have such a repository we need to introduce sort of an UUID for descriptions, I am afraid. > [...] > > Does a model like that seem realizable ? It is certainly possible, but it might get very complicated. It is a good use case for future versions of Magritte ;-) Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From cbeler at enit.fr Wed Sep 13 11:22:10 2006 From: cbeler at enit.fr (=?ISO-8859-1?Q?C=E9drick_B=E9ler?=) Date: Wed, 13 Sep 2006 11:22:10 +0200 Subject: Magritte 2 - Modelisation limits ? In-Reply-To: <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> <4507C19C.5020201@enit.fr> <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> Message-ID: <4507CDC2.3050708@enit.fr> > > No this has nothing to do with the memento. The memento is a snapshot > of a described state. It has more to do with Magritte itself, it is > not aware of possible recursions, something that I also want to > enhance in the next version. > cool :) > >> I think a genealogy tree would be a good example to work on and >> discuss >> (could be fun too :) ). But I think we really miss a kind of >> repository >> of existing objects. Do you think it's important for the next >> version of >> Magritte ? >> > > You mean a repository of descriptions? no I meant instances of a class that is described. Like for the example of a person, what would be a good generic way to acces instances of person that exist. This way, when adding a spouse for instance, we can choose among the (eligible) instances or create a new one. We can make the repository by ourselves I guess but I think that would be good to have a kind of accessor strategy for it (saved in the image, in an oodb ...)... Does it make sense ? > It is a good use case for future versions of Magritte ;-) > I think so too ;) C?drick From keith_hodges at yahoo.co.uk Thu Sep 14 01:42:41 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 14 Sep 2006 00:42:41 +0100 Subject: MADynamicObject In-Reply-To: <4507CDC2.3050708@enit.fr> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> <4507C19C.5020201@enit.fr> <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> <4507CDC2.3050708@enit.fr> Message-ID: <45089771.8080304@yahoo.co.uk> Dear Lukas, I am having a look at the implementation of MADynamicObject and I was wondering if you could help me by explaining to me how it works! I can see that MADynamicObject on: [ 123 ] should assign the BlockContext [123 ] to be the realSubject of the MADynamicObject. What I am failing to understand is at what stage the block is evaluated. I can see that whenever a message is sent to the MADynamicObject it is being evaluated before the message is sent. I just cant see where the code is that does the #value. thanks in advance Keith ___________________________________________________________ All new Yahoo! Mail "The new Interface is stunning in its simplicity and ease of use." - PC Magazine http://uk.docs.yahoo.com/nowyoucan.html From renggli at iam.unibe.ch Thu Sep 14 07:05:13 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 14 Sep 2006 07:05:13 +0200 Subject: MADynamicObject In-Reply-To: <45089771.8080304@yahoo.co.uk> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> <4507C19C.5020201@enit.fr> <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> <4507CDC2.3050708@enit.fr> <45089771.8080304@yahoo.co.uk> Message-ID: Hi Keith, > I am having a look at the implementation of MADynamicObject and I was > wondering if you could help me by explaining to me how it works! It is a bad thing, but very convenient. > I can see that MADynamicObject on: [ 123 ] > should assign the BlockContext [123 ] to be the realSubject of the > MADynamicObject. It is used to put a calculated value into a variable. Whenever you send the first message to it, the block gets evaluated and the message is performed on the result. It is sometimes convenient to do this, such as for the options of a single-selection description that should return a list of currently loaded classes and not a list of classes that have been available when the description was cached. As usual with proxies it creates more troubles than it helps. I have some ideas to avoid them altogether in a future version of Magritte. > What I am failing to understand is at what stage the block is > evaluated. > I can see that whenever a message is sent to the MADynamicObject it is > being evaluated before the message is sent. I just cant see where the > code is that does the #value. What I find strange is that a MADynamicObject is ending up in the code to serialize. Actually that should not happen, as these are only part of a few descriptions that should remain transient. Can you tell me the path of references from the object you serialize to the instance of MADynamicObject? Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Thu Sep 14 16:29:37 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 14 Sep 2006 15:29:37 +0100 Subject: [Smallwiki] Re: MADynamicObject In-Reply-To: References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> <4507C19C.5020201@enit.fr> <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> <4507CDC2.3050708@enit.fr> <45089771.8080304@yahoo.co.uk> Message-ID: <45096751.2000700@yahoo.co.uk> about MADynamicObject and serialization. > It is used to put a calculated value into a variable. Whenever you > send the first message to it, the block gets evaluated and the > This is the bit that I dont understand, I cant see where the 'evaluation' actually happens. Who does it? Where is the code that says 'aBlock value'? > What I find strange is that a MADynamicObject is ending up in the > code to serialize. Before persisting a PRContext, I was zapping its properties to nil. However I had omitted to do the same to the context's command's answer context, as in the case of a PRAddCommand. So it was in the dictionary of properties, containing references to components that was causing the problem. Exactly where WAProxyObject is in there I am not quite sure since I never got a proper debugger up on it. The PRCommandAdd-structureClasses appeared to be the one causing trouble, i.e. a reference to this dynamic object is contained in one of the components. ---- So now Pier-Magma is looking good to go. My main objective was to be able to have the Pier data persisted outside of the image so that an 'upgrade' of the image would be straightforward. There are (at least) two more issues to consider if Magma-Pier is to be a tour-de-force. 1) At the moment pier-magma marks objects for rematerialisation as needed, one-by-one. Magma can be configured for different read-strategies, so performance could be greatly increased (so I am told) if the read strategy re-materialised on a page-by-page or kernel-by-kernel basis (for a multi kernel site). 2) Using a non-shared MagmaSession takes time to get the initial session on the database (it could hold a cached session ready in order to improve this), but when the session is expired the objects may be free to be purged from the image. (Thinking about it I suspect that this will not happen automatically with my current implementation, but it should) My current preferred approach is to use a shared MagmaSession where there is only one MagmaSession for all the seaside sessions. Effectively this caches every used object in memory, and the opportunity for allowing objects to be purged/gc'd is less clear. I am assuming that Magma doesnt do an explicit purge, but relies upon the application to 'let go' of unneeded objects for gc to tidy up. Keith ___________________________________________________________ Try the all-new Yahoo! Mail. "The New Version is radically easier to use" ? The Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html From renggli at iam.unibe.ch Thu Sep 14 18:11:39 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 14 Sep 2006 18:11:39 +0200 Subject: [Smallwiki] Re: MADynamicObject In-Reply-To: <45096751.2000700@yahoo.co.uk> References: <20060910151949.22501.23038@portail.jacob.univ-savoie.fr> <441ADF04-ECD7-4CEE-833C-D2052C1BE26C@iam.unibe.ch> <450588A0.6040502@enit.fr> <45068025.1090000@enit.fr> <3AB12D4A-5365-455C-A8F0-9BEE38193D7D@iam.unibe.ch> <4507C19C.5020201@enit.fr> <380F2789-38DB-4561-95FB-39CBE730DFC8@iam.unibe.ch> <4507CDC2.3050708@enit.fr> <45089771.8080304@yahoo.co.uk> <45096751.2000700@yahoo.co.uk> Message-ID: <0DCE908C-6E45-4968-AA82-2147E97C6A2D@iam.unibe.ch> > about MADynamicObject and serialization. >> It is used to put a calculated value into a variable. Whenever you >> send the first message to it, the block gets evaluated and the >> > This is the bit that I dont understand, I cant see where the > 'evaluation' actually happens. Who does it? Where is the code that > says > 'aBlock value'? #doesNotUnderstand: is implemented in the superclass. It then calls #realSubject what is implemented like this: realSubject ^ super realSubject on: UnhandledError do: [ :err | nil ] #on:do: evaluates the block which is returned by the super-call to #realSubject. Also see the tests. > However I had omitted to do the same to the context's command's answer > context, as in the case of a PRAddCommand. So it was in the dictionary > of properties, containing references to components that was causing > the > problem. Exactly where WAProxyObject is in there I am not quite sure > since I never got a proper debugger up on it. The > PRCommandAdd-structureClasses appeared to be the one causing trouble, > i.e. a reference to this dynamic object is contained in one of the > components. Yes, you don't need the answer context. That can be rebuilt if necessary. -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Sep 15 17:40:26 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 15 Sep 2006 16:40:26 +0100 Subject: [ANN] Pier-ScriptingAPI Message-ID: <450AC96A.70509@yahoo.co.uk> I have uploaded a first release of a scriptingAPI for pier. The aim at this stage is to provide a platform for importing data and hence some scalability testing with pier-magma. There are three classes which implement the same API. a) PRModelScripter - direct operations on the model b) PRCommandScripter - operations via the command interface (logging optional) c) PRCommandAppScripter - as b) but run in the context of the registered application including logging (optional) and persistency. For Data importing PRPierifyToPage provides an abstract class for loading data from a target object into a pier page. Example of use: (PRPierifySmalltalkClass target: Object into: (PRCommandAppScripter onKernelNamed:'pier') So to create a persisted Pier kernel with 5000+ pages, one every 10 seconds. Create a persisted kernel named 'Squeak' using the Magma Control Panel GUI. Then run. PRPierifySmalltalkClass pace: 10. PRPierifySmalltalkClass exampleProtoObject. [ PRPierifySmalltalkClass exampleAllClasses ] forkAt: 15. feedback welcome Keith ___________________________________________________________ All new Yahoo! Mail "The new Interface is stunning in its simplicity and ease of use." - PC Magazine http://uk.docs.yahoo.com/nowyoucan.html From ducasse at iam.unibe.ch Fri Sep 15 19:42:31 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Fri, 15 Sep 2006 19:42:31 +0200 Subject: [ANN] Pier-ScriptingAPI In-Reply-To: <450AC96A.70509@yahoo.co.uk> References: <450AC96A.70509@yahoo.co.uk> Message-ID: Hi keith can you explain a bit what are the scripter? I was thinking that with the command we could have people building user interface for Wiki admin but I guess that this is something different > I have uploaded a first release of a scriptingAPI for pier. > > The aim at this stage is to provide a platform for importing data and > hence some scalability testing with pier-magma. > > There are three classes which implement the same API. > a) PRModelScripter - direct operations on the model > b) PRCommandScripter - operations via the command interface (logging > optional) > c) PRCommandAppScripter - as b) but run in the context of the > registered > application including logging (optional) and persistency. > > For Data importing PRPierifyToPage provides an abstract class for > loading data from a target object into a pier page. > Example of use: > > (PRPierifySmalltalkClass target: Object into: (PRCommandAppScripter > onKernelNamed:'pier') > > So to create a persisted Pier kernel with 5000+ pages, one every 10 > seconds. > Create a persisted kernel named 'Squeak' using the Magma Control > Panel > GUI. Then run. > > PRPierifySmalltalkClass pace: 10. > PRPierifySmalltalkClass exampleProtoObject. > [ PRPierifySmalltalkClass exampleAllClasses ] forkAt: 15. > > feedback welcome > > Keith > > > > > > > > > ___________________________________________________________ > All new Yahoo! Mail "The new Interface is stunning in its > simplicity and ease of use." - PC Magazine > http://uk.docs.yahoo.com/nowyoucan.html > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From keith_hodges at yahoo.co.uk Sat Sep 16 02:36:09 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 16 Sep 2006 01:36:09 +0100 Subject: [Smallwiki] [ANN] Pier-ScriptingAPI In-Reply-To: <450AC96A.70509@yahoo.co.uk> References: <450AC96A.70509@yahoo.co.uk> Message-ID: <450B46F9.2030604@yahoo.co.uk> Stefan, The scripters aim to provide a simple programmatic interface to pier. So far I have implemented. aScripter addPageAt: '/Pier/User' name: 'Keith'. aScripter addPageAt: '/Pier/User' name: 'Keith' contents: '!!Keith''s Page'. aScripter removePageAt: '/Pier/User/Bob'. In the scripters you can pass a path or the real thing. | newPage | aScripter addPageAt: '/Pier/User' name: 'Keith' contents: '*my cv*'. aScripter addPageAt: newPage name: 'my cv' contents: 'chief cook and bottle washer'. While not a comprehensive api, it is enough to begin importing some data. The MagmaControlPanel provides a simple UI for adding, deleting and persisting kernels. Sufficient to fully control a remote installation from a web browser. Though I haven't tried it without Magma actually installed to know if it would be more generally useful. Once I am happy with the magma stuff I will be turning my attention to the Environment and aim to make some admin components for use within the environment. I have already implemented full stylesheet control and a password editor and user/groups editor. Which are designed to be available within the Environment for the site. best regards Keith ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Sat Sep 16 03:21:59 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 16 Sep 2006 02:21:59 +0100 Subject: [Smallwiki] [ANN] Pier-ScriptingAPI (errata) In-Reply-To: <450AC96A.70509@yahoo.co.uk> References: <450AC96A.70509@yahoo.co.uk> Message-ID: <450B51B7.1070702@yahoo.co.uk> Stefan, The scripters aim to provide a simple programmatic interface to pier. So far I have implemented. aScripter addPageAt: '/Pier/User' name: 'Keith'. aScripter addPageAt: '/Pier/User' name: 'Keith' contents: '!!Keith''s Page'. aScripter removePageAt: '/Pier/User/Bob'. In the scripters you can pass a path or the real thing. | newPage | newPage := aScripter addPageAt: '/Pier/User' name: 'Keith' contents: '*my cv*'. aScripter addPageAt: newPage name: 'my cv' contents: 'chief cook and bottle washer'. While not a comprehensive api, it is enough to begin importing some data. The MagmaControlPanel provides a simple UI for adding, deleting and persisting kernels. Sufficient to fully control a remote installation from a web browser. Though I haven't tried it without Magma actually installed to know if it would be more generally useful. Once I am happy with the magma stuff I will be turning my attention to the Environment and aim to make some admin components for use within the environment. I have already implemented full stylesheet control and a password editor and user/groups editor. Which are designed to be available within the Environment for the site. best regards Keith ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list Smallwiki at impara.de http://impara.de/mailman/listinfo/smallwiki ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Sat Sep 16 04:18:22 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 16 Sep 2006 03:18:22 +0100 Subject: Testing pier-magma Message-ID: <450B5EEE.90204@yahoo.co.uk> Findings so far. I have persisted 248 pages so far (a far cry from the promised 5000!) but I am doing so slowly. Magma reports 84818 objects from aRepositoryController objectCount. That is an average of 342 objects per page. Although Pier pages do contain a lot of objects to describe what most wiki's store in a single string. 342 seems to be quite a lot. Disk usage is 3Mb for 250 pages which is 12k per page, i.e. 60Mb for a site of 5000 pages with one page generated per Squeak class. So I opened an explorer on the repository and took a look at a simple page. The page generated for Squeak class 'Password' seemed to be quite typical, not too large. (I didn't even know squeak had a class called Password). The page consists of headings, the class comment, a list of subclasses (Password has none) an unordered list of instance methods each being a [broken] link (i.e. pages for individual methods have not been filled in) and a similar unordered list of class methods. Counting objects in the repository explorer I get approximately 102 unique Objects, 50 nil's, and 8 object references. Just for one page! 160 Objects that I can explicitly count, I am not sure what Magma is doing behind the scenes in terms of overhead. The only thing that I can see that could be optimised is the appearance of 9 empty arrays ( #decoration and #children ) which could be lazily initialialized. I doubt if it is worth doing what is the overhead of storing an empty array, as opposed to nil? Keith ___________________________________________________________ Try the all-new Yahoo! Mail. "The New Version is radically easier to use" ? The Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html From keith_hodges at yahoo.co.uk Sat Sep 16 04:33:26 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 16 Sep 2006 03:33:26 +0100 Subject: Scalability: Tree view strugging Message-ID: <450B6276.8070603@yahoo.co.uk> In my first scalability run, the tree view widget is struggling to handle 250 pages. Particularly since it appears to display with all leaves open by default. Keith ___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com From ducasse at iam.unibe.ch Sat Sep 16 09:36:44 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Sat, 16 Sep 2006 09:36:44 +0200 Subject: [Smallwiki] [ANN] Pier-ScriptingAPI (errata) In-Reply-To: <450B51B7.1070702@yahoo.co.uk> References: <450AC96A.70509@yahoo.co.uk> <450B51B7.1070702@yahoo.co.uk> Message-ID: <5C367A54-12CF-4FBD-86AB-FBE9DAD62018@iam.unibe.ch> sounds cool. On 16 sept. 06, at 03:21, Keith Hodges wrote: > Stefan, > > The scripters aim to provide a simple programmatic interface to pier. > > So far I have implemented. > > aScripter addPageAt: '/Pier/User' name: 'Keith'. > aScripter addPageAt: '/Pier/User' name: 'Keith' contents: '!! > Keith''s Page'. > aScripter removePageAt: '/Pier/User/Bob'. > > In the scripters you can pass a path or the real thing. > > | newPage | > newPage := aScripter addPageAt: '/Pier/User' name: 'Keith' contents: > '*my cv*'. > aScripter addPageAt: newPage name: 'my cv' contents: 'chief cook and > bottle washer'. > > While not a comprehensive api, it is enough to begin importing some > data. > > The MagmaControlPanel provides a simple UI for adding, deleting and > persisting kernels. Sufficient to fully control a remote installation > from a web browser. Though I haven't tried it without Magma actually > installed to know if it would be more generally useful. > > Once I am happy with the magma stuff I will be turning my attention to > the Environment and aim to make some admin components for use > within the > environment. I have already implemented full stylesheet control and a > password editor and user/groups editor. Which are designed to be > available within the Environment for the site. Sounds exciting to me. I always thought that once we have command we could even let the admin be able to write under Page all links = dead (nromally we can do that with the search engine) and then do (all links = dead) do: action :) > > best regards > > Keith > > > > > ___________________________________________________________ > The all-new Yahoo! Mail goes wherever you go - free your email address > from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > _______________________________________________ > Smallwiki mailing list > Smallwiki at impara.de > http://impara.de/mailman/listinfo/smallwiki > > > > ___________________________________________________________ > The all-new Yahoo! Mail goes wherever you go - free your email > address from your Internet provider. http://uk.docs.yahoo.com/ > nowyoucan.html > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From keith_hodges at yahoo.co.uk Sat Sep 16 11:47:09 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 16 Sep 2006 10:47:09 +0100 Subject: [Smallwiki] Scalability: Tree view strugging In-Reply-To: <450B6276.8070603@yahoo.co.uk> References: <450B6276.8070603@yahoo.co.uk> Message-ID: <450BC81D.2020507@yahoo.co.uk> Keith Hodges wrote: > In my first scalability run, the tree view widget is struggling to > handle 250 pages. Particularly since it appears to display with all > leaves open by default. > > Keith > Not all leaves, but at least every link on the page being viewed seems to be open. Which is quite a few. Keith ___________________________________________________________ Try the all-new Yahoo! Mail. "The New Version is radically easier to use" ? The Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html From renggli at iam.unibe.ch Sun Sep 17 10:31:36 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 17 Sep 2006 10:31:36 +0200 Subject: Scalability: Tree view strugging In-Reply-To: <450B6276.8070603@yahoo.co.uk> References: <450B6276.8070603@yahoo.co.uk> Message-ID: <9DF451FB-6AB8-4D1D-AD05-EC86EBBA7E4A@iam.unibe.ch> > In my first scalability run, the tree view widget is struggling to > handle 250 pages. Particularly since it appears to display with all > leaves open by default. I think there are settings to change this behavior from the Web. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From patrickdlogan at stardecisions.com Mon Sep 18 18:25:57 2006 From: patrickdlogan at stardecisions.com (Patrick D. Logan) Date: Mon, 18 Sep 2006 12:25:57 -0400 Subject: Getting started with Pier and Seaside apps Message-ID: <1158596756.12458@stardecisions.com> I am just getting started with Magritte and/or Pier. The goal is to edit some fairly lengthy form-like objects: people, property, and transactions involving those things. not knowing much this feels very Pier-like, with each of these created in a form-based editor and links among them. On the transaction side there is a need to send subsets of these things off to other sites and systems, and then create new related things from the results, e.g. "proposals" and so on. So as I understand the tools, Magritte would be good to describe these things and Seaside would be good for the transactional user interfaces. Just HTTP and HTTPS would be used on the back end of the transactions. How well would Pier fit in here? i.e. creating the objects in Pier and then having some Seaside and other code refer to those objects, formatting them for HTTP methods. On the back end of the transactions I'd want to parse the incoming information and create Pier objects from those. Reasonable? Easy? Any suggesttions? Thanks, Patrick From dpp at athena.com Mon Sep 18 22:17:31 2006 From: dpp at athena.com (David Pollak) Date: Mon, 18 Sep 2006 13:17:31 -0700 Subject: [ANN] UI for managing Pier users Message-ID: <6D3A8326-7EE6-4CFB-BE13-C1B3873024F5@athena.com> Howdy, I have released the first version of a Web-based UI for creating, editing, and removing user from Pier (based on Lukas Renggli's Pier- Security package.) The project is available at: http://www.squeaksource.com/PierSecurityManager.html This is my first Smalltalk program and I'd welcome feedback on the code. Specifically, I'm coming to Smalltalk via Ruby, Java, C++, and Objective-C. I am very sure I haven't found my "Smalltalk voice" and help in improving my Smalltalk idioms would be greatly appreciated. Also, I am looking for a way to write tests for the code. Because much of the code is based on Seaside/Magritte callbacks, it seems difficult to test the code without being able to simulate these calls. Any pointers to testing would be appreciated. Thanks, David From renggli at iam.unibe.ch Mon Sep 18 23:15:42 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 18 Sep 2006 23:15:42 +0200 Subject: Getting started with Pier and Seaside apps In-Reply-To: <1158596756.12458@stardecisions.com> References: <1158596756.12458@stardecisions.com> Message-ID: <568F2EEB-F952-4F6F-95B5-F6AB6A55A8B2@iam.unibe.ch> Welcome Patrick, > I am just getting started with Magritte and/or Pier. The goal is to > edit some fairly lengthy form-like objects: people, property, and > transactions involving those things. > > not knowing much this feels very Pier-like, with each of these > created in a form-based editor and links among them. this sounds like something reasonable to do with Magritte/Pier. > On the transaction side there is a need to send subsets of these > things off to other sites and systems, and then create new related > things from the results, e.g. "proposals" and so on. > > So as I understand the tools, Magritte would be good to describe > these things and Seaside would be good for the transactional user > interfaces. Just HTTP and HTTPS would be used on the back end of > the transactions. For the server side there is only HTTP natively supported by Squeak, however you can easily do HTTPS by proxying trough an Apache server. The same for the client slide, Squeak does only HTTP, however there is a lipCurl plugin coming that will make HTTPS access possible as well. > How well would Pier fit in here? i.e. creating the objects in Pier > and then having some Seaside and other code refer to those objects, > formatting them for HTTP methods. Seaside is an abstraction over HTTP/HTML, there is not much of these low-level protocols that you actually see while working with this framework. Pier is again another layer of abstraction on top of that. Of course you always have the possibility to go as deep down to the basic protocols as you like, however this is not the aim of Seaside and Pier. > On the back end of the transactions I'd want to parse the incoming > information and create Pier objects from those. Sounds reasonable and fairly simple to do. The parsing will be probably the most difficult thing ;-) Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From patrickdlogan at stardecisions.com Mon Sep 18 23:43:13 2006 From: patrickdlogan at stardecisions.com (Patrick D. Logan) Date: Mon, 18 Sep 2006 17:43:13 -0400 Subject: Getting started with Pier and Seaside apps Message-ID: <1158615792.13927@stardecisions.com> Lukas Renggli wrote .. > > Sounds reasonable and fairly simple to do... Thanks Lukas for the information. I'll dive in and see where it goes. -Patrick From patrickdlogan at stardecisions.com Tue Sep 19 01:44:32 2006 From: patrickdlogan at stardecisions.com (Patrick D. Logan) Date: Mon, 18 Sep 2006 19:44:32 -0400 Subject: Pier and Forms Message-ID: <1158623071.14623@stardecisions.com> I need some clarification on forms in Pier. From a search I get the impression that the forms code is already in the Pier source. I installed whatever is in SqueakMap but unless I'm overlooking it, I don't think the forms code is installed with the Pier install. I also don't see how to start using forms from the Pier user interface, so more evidence it may be absent. What's the "official" word before I start keyboarding the code myself? Thanks, Patrick From patrickdlogan at stardecisions.com Tue Sep 19 01:50:46 2006 From: patrickdlogan at stardecisions.com (Patrick D. Logan) Date: Mon, 18 Sep 2006 19:50:46 -0400 Subject: Pier and Forms Message-ID: <1158623446.14698@stardecisions.com> Oh. Just found an August email from Lukas... So perhaps to use forms we point to the forms code on his site... http://mc.lukas-renggli.ch/pier/ I'll try it. Correct me if I'm wrong. Thanks, Patrick ======== I need some clarification on forms in Pier. From a search I get the impression that the forms code is already in the Pier source. I installed whatever is in SqueakMap but unless I'm overlooking it, I don't think the forms code is installed with the Pier install. I also don't see how to start using forms from the Pier user interface, so more evidence it may be absent. What's the "official" word before I start keyboarding the code myself? Thanks, Patrick From renggli at iam.unibe.ch Tue Sep 19 06:23:11 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 19 Sep 2006 06:23:11 +0200 Subject: Pier and Forms In-Reply-To: <1158623446.14698@stardecisions.com> References: <1158623446.14698@stardecisions.com> Message-ID: <90CDF0C3-50C2-4BA7-9075-92AAC66C452F@iam.unibe.ch> > So perhaps to use forms we point to the forms code on his site... > > http://mc.lukas-renggli.ch/pier/ Yep, load Pier-Forms from this repository. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Thu Sep 21 07:50:08 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 21 Sep 2006 06:50:08 +0100 Subject: Magma + Pier performance In-Reply-To: <20060921020527.15921.qmail@web31811.mail.mud.yahoo.com> References: <20060921020527.15921.qmail@web31811.mail.mud.yahoo.com> Message-ID: <45122810.3010106@yahoo.co.uk> Following Chris' advice to implement a read strategy, I thought I would give it a go. In the first stages of optimising Magma to serve pier pages. the figures are pretty bad without a readStrategy. I put a test 'information' page page 10 levels down the url path, and following a rendering of that page we get the last item in the log at: *401 [14141] Read(100) *'Test Suites: Pier is heavily tested. There are more than 1000 ...etc... *402 [14147] Read(101) *'' That is 101 proxy materialisations in 14.1 seconds. If you add the 10 seconds that it takes to obtain a MagmaSession (in the non-shared WAMagmaSession) then that is a long time to wait for a web page. (WAMagmaSharedSession is pre-cached). not so good! After carefully implementing a readStrategy The final lines of the log now look like this! *312 [311] Read(3) *a PRDocument ... ... *367: [335] (7/7/8) PRText-text = 'Test Suites: Pier is heavily tes...etc...* That is 3 reads, which take ~30-80ms to apply the read strategy and ~100ms to fetch from magma, each. Since the final read has not actually happened at the time of this last log item, I make that roughly 430ms to retrieve everything in this test page. The first read retrieves the whole path skeleton in one hit (not entirely necessary) The second read retrieves the 'environment' document which pier uses as its display and style template. The third read retrieves the desired document, again in one hit. In practice it is likely that the 'path skeleton' and the 'environment' will remain cached in memory, so in general use, 100-150ms, to serve a page from Magma to Pier isnt bad going especially as compared to the non-optimised results. Keith p.s. this is on a 700Mhz Pentium 3 machine with old slow 10G disk drives. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060921/a1599e0f/attachment.html From philippe.marschall at gmail.com Thu Sep 21 23:16:55 2006 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Thu, 21 Sep 2006 23:16:55 +0200 Subject: Pier structure inspector icons Message-ID: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> Hi I hope this qualifies for cool-pier-feature-of-the-day: Recent versions of Pier show the icon of a structure in the inspector. See attached screenshot. In case it got blocked see: http://img371.imageshack.us/my.php?image=inspectoriconsdp9.png Philippe -------------- next part -------------- A non-text attachment was scrubbed... Name: inspector_icons.png Type: image/png Size: 24610 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060921/7fca10b3/inspector_icons-0001.png From damien.cassou at laposte.net Fri Sep 22 10:09:27 2006 From: damien.cassou at laposte.net (Damien Cassou) Date: Fri, 22 Sep 2006 10:09:27 +0200 Subject: Pier structure inspector icons In-Reply-To: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> References: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> Message-ID: <45139A37.1070209@laposte.net> Philippe Marschall a ?crit : > Hi > > I hope this qualifies for cool-pier-feature-of-the-day: > > Recent versions of Pier show the icon of a structure in the inspector. > See attached screenshot. In case it got blocked see: > http://img371.imageshack.us/my.php?image=inspectoriconsdp9.png Very cool Philippe :-) -- Damien Cassou From ducasse at iam.unibe.ch Fri Sep 22 13:02:37 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Fri, 22 Sep 2006 13:02:37 +0200 Subject: Pier structure inspector icons In-Reply-To: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> References: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> Message-ID: <9AE7FDEC-B3E5-4199-A421-29A3789ABF6C@iam.unibe.ch> sweet.... On 21 sept. 06, at 23:16, Philippe Marschall wrote: > Hi > > I hope this qualifies for cool-pier-feature-of-the-day: > > Recent versions of Pier show the icon of a structure in the inspector. > See attached screenshot. In case it got blocked see: > http://img371.imageshack.us/my.php?image=inspectoriconsdp9.png > > > Philippe > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From bakki.kudva at gmail.com Fri Sep 22 19:18:59 2006 From: bakki.kudva at gmail.com (Bakki Kudva) Date: Fri, 22 Sep 2006 13:18:59 -0400 Subject: Pier structure inspector icons In-Reply-To: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> References: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> Message-ID: How can I customize WATree with icons in seaside without pier? I've been scratching my newbie head over this. I'd like to add folder icons for a document browser. -bakki On 9/21/06, Philippe Marschall wrote: > Hi > > I hope this qualifies for cool-pier-feature-of-the-day: > > Recent versions of Pier show the icon of a structure in the inspector. > See attached screenshot. In case it got blocked see: > http://img371.imageshack.us/my.php?image=inspectoriconsdp9.png > > > Philippe > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > > > From philippe.marschall at gmail.com Sat Sep 23 14:23:35 2006 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sat, 23 Sep 2006 14:23:35 +0200 Subject: Pier structure inspector icons In-Reply-To: References: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> Message-ID: <66666f210609230523k6c2c279dv85ebf909ac7df8fc@mail.gmail.com> It's best to ask such questions on the seaside mailing list. Icons for WATree are currently not supported. You have to implement it yourself. Subclass WATrree, add iconBlock or something like that. Philippe 2006/9/22, Bakki Kudva : > How can I customize WATree with icons in seaside without pier? I've > been scratching my newbie head over this. I'd like to add folder icons > for a document browser. > > -bakki > > On 9/21/06, Philippe Marschall wrote: > > Hi > > > > I hope this qualifies for cool-pier-feature-of-the-day: > > > > Recent versions of Pier show the icon of a structure in the inspector. > > See attached screenshot. In case it got blocked see: > > http://img371.imageshack.us/my.php?image=inspectoriconsdp9.png > > > > > > Philippe > > > > > > > > _______________________________________________ > > SmallWiki, Magritte, Pier and Related Tools ... > > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > > > > > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From keith_hodges at yahoo.co.uk Sun Sep 24 02:59:40 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sun, 24 Sep 2006 01:59:40 +0100 Subject: Accessors to children Message-ID: <4515D87C.1060002@yahoo.co.uk> Lukas, When PRChildren is empty, I am getting uneccessary database accesses at every leaf node. I am sure that there are several ways of solving this but for now I am experimenting in my image with... PRStructure>>#childrenDecoration removed and an access interface defined for children... #addChild: #childAt: #childAt:ifAbsent: #childAt:ifPresent: #childrenIncludes: #removeChild: Such that if there are no children then no PRChildren decoration is added into the structure's decorations. would this change be acceptable? Keith ___________________________________________________________ All new Yahoo! Mail "The new Interface is stunning in its simplicity and ease of use." - PC Magazine http://uk.docs.yahoo.com/nowyoucan.html From renggli at iam.unibe.ch Sun Sep 24 09:32:20 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 24 Sep 2006 09:32:20 +0200 Subject: Pier structure inspector icons In-Reply-To: <66666f210609230523k6c2c279dv85ebf909ac7df8fc@mail.gmail.com> References: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> <66666f210609230523k6c2c279dv85ebf909ac7df8fc@mail.gmail.com> Message-ID: <372A7DD0-ED32-4D5A-B9D7-9DB3949BD550@iam.unibe.ch> > It's best to ask such questions on the seaside mailing list. > > Icons for WATree are currently not supported. You have to implement it > yourself. Subclass WATrree, add iconBlock or something like that. I think the WATree that Pier is using supports icons, no? You just have to enable them from the settings in the Web. The WATree in Seaside is a port of the Tree in Pier, but without Pier specific things such as icons. I think you can easily put back in the support for icons, if you need. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Sun Sep 24 09:46:02 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 24 Sep 2006 09:46:02 +0200 Subject: Accessors to children In-Reply-To: <4515D87C.1060002@yahoo.co.uk> References: <4515D87C.1060002@yahoo.co.uk> Message-ID: <0BD046D4-DFFA-4817-A9D7-E771A037C255@iam.unibe.ch> Hi Keith, > When PRChildren is empty, I am getting uneccessary database > accesses at > every leaf node. I am sure that there are several ways of solving this > but for now I am experimenting in my image with... I wonder where from these children are accessed? No part of the code should directly access the children of a structure, but instead walk over them using a visitor. Of course, I might have missed something ... > PRStructure>>#childrenDecoration removed Note that subclasses of PRStructure might override #childrenDecorationClass to use a completely different decoration for children. > and an access interface defined for children... > > #addChild: > #childAt: > #childAt:ifAbsent: > #childAt:ifPresent: > #childrenIncludes: > #removeChild: I don't see why this would help. As far as I see none of my code uses any of this functionality directly. > Such that if there are no children then no PRChildren decoration is > added into the structure's decorations. I don't have many accessors of childrenDecoration in my image, except for the tests. Where/When are unnecessary decorations created? > would this change be acceptable? It is not the way Pier is designed. Compared to SmallWiki I wanted to factor out all the behavior related to children to a different (pluggable) object. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Sun Sep 24 10:06:32 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 24 Sep 2006 10:06:32 +0200 Subject: Seaside, Magritte, and Pier In-Reply-To: References: Message-ID: <97EF1210-18CE-4BD8-8913-253D5474D07A@iam.unibe.ch> Hi, > I'm relatively new to Squeak, but discovered the framework you have > built, and it appears to be useful for a project I'm working on. > Documentation is very sparse, however, and I would like to > volunteer to assist in developing further documentation. As a > matter of fact, I believe Pier might be the basis for the > documentation. I would also like to do several screencasts to > illustrate the documentation in a tutorial fashion. I know some of > your time will be required to guide me and review the > documentation, but if you would consider my offer, I believe it > might lead to wider usage of Seaside/Magritte/Pier.. sounds like an interesting project. Depending on what kind of documentation you would like to build it could be a good match. The documentation you find in the appendix of my master thesis [1] has been generated from class and method comments using Pier and exported as Latex. One could also build a Pier Web site. I would suggest that you subscribe to the Pier mailing-list at [2] and ask further questions there. Cheers, Lukas [1] http://www.iam.unibe.ch/~scg/Archive/Diploma/Reng06a.pdf [2] https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Sun Sep 24 18:00:22 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sun, 24 Sep 2006 17:00:22 +0100 Subject: Accessors to children In-Reply-To: <0BD046D4-DFFA-4817-A9D7-E771A037C255@iam.unibe.ch> References: <4515D87C.1060002@yahoo.co.uk> <0BD046D4-DFFA-4817-A9D7-E771A037C255@iam.unibe.ch> Message-ID: <4516AB96.2090508@yahoo.co.uk> Lukas, To clarify for you, the extra database accesses are because when the database accesses a PRDecorated node it loads the decorations in. Then seeing that PRChildren is present it generates a second access to get the contents of PRChildren only to find that it is empty. This is extra work (and time) for no net purpose. At the moment the problem is that many operations that involve children are doing so via PRStructure-#childrenDecoration whose default behaviour is to add an empty PRChildren instance to its decorations even if it is not actually needed. To be honest I love the clean design, even with empty PRChildren instances. It's just a shame when pragmatic considerations mess with our nice designs. Since I indicated that there are other ways of solving this problem I will list a few below. I constructed the children-accessing interface in order to satisfy the needs of the users of #childrenDecoration which are primarily the commands and the tests. Specifically: PRCommand-#validateName: aString of: aChildStructure in: aStructure PRCommand-#uniqueName: aString in: aStructure PRChangeEnvironmentCommand-#doExecute PRAddCommand-#doExecute PRCopyCommand-#doExecute PRMoveCommand-#doExecute PRStructure-#remove Solution Options: 1. child-accessing interface as discussed. 2. Magma before serializing any PRDecorated looks to see if there are any empty PRChildren and removes them before writing to its buffers. [ I think that this will work , though I am not 100% certain, but then we have PRChildren being created and destroyed over and over.] 3. Use an interface such as aStructure withChildren: [ :children | children add: ( aNewPage ) ] where #withChildren: cleans up afterwards. 4. Rewrite the commands above to use some form of visitor as you suggest below: > > I wonder where from these children are accessed? No part of the code > should directly access the children of a structure, but instead walk > over them using a visitor. Of course, I might have missed something ... > > Note that subclasses of PRStructure might override > #childrenDecorationClass to use a completely different decoration for > children. > > fair enough. >> and an access interface defined for children... >> >> #addChild: >> #childAt: >> #childAt:ifAbsent: >> #childAt:ifPresent: >> #childrenIncludes: >> #removeChild: >> > > I don't see why this would help. As far as I see none of my code uses > any of this functionality directly. > I think that you forgot the command actions #doExecute etc. see above > It is not the way Pier is designed. Compared to SmallWiki I wanted to > factor out all the behavior related to children to a different > (pluggable) object Fair enough, I thought as much, but when I found PRStructure-#addChild: it indicated to me that you had thought of having a child-accessing interface of sorts, and so I simply completed the set to provide the functionality actually used in the image. I had a look at the third option and this is what I came up with PRDecorated>>newDecorationOfClass: aClass in: aBlock | decoration result | decoration := aClass new. result := aBlock value: decoration. decoration isEmpty ifFalse: [ self addDecoration: decoration ]. ^result PRDecorated>>decorationOfClass: aClass in: aBlock | decoration result | decoration := self decorationOfClass: aClass ifAbsent: [ ^self newDecorationOfClass: aClass in: aBlock ]. result := aBlock value: decoration. decoration isEmpty ifTrue: [ self removeDecoration: decoration ]. ^result PRStructure>>childrenIn: aBlock ^ self decorationOfClass: self childrenDecorationClass in: aBlock and so this enables things like PRCommand>>uniqueName: aString in: aStructure "Answer an unique structure name with the prefix aString within the parent aStructure." | index name | (aStructure notNil and: [ aStructure childrenIn: [ :children | children includes: aString ] ]) ifFalse: [ ^ aString ]. index := 1. [ aStructure childrenIn: [ :children | children includes: (name := aString , ' ' , (index := index + 1) asString) ] ] whileTrue. ^ name would that be better? Keith -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060924/d99aec1d/attachment-0001.html From renggli at iam.unibe.ch Sun Sep 24 21:11:51 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 24 Sep 2006 21:11:51 +0200 Subject: Accessors to children In-Reply-To: <4516AB96.2090508@yahoo.co.uk> References: <4515D87C.1060002@yahoo.co.uk> <0BD046D4-DFFA-4817-A9D7-E771A037C255@iam.unibe.ch> <4516AB96.2090508@yahoo.co.uk> Message-ID: > 2. Magma before serializing any PRDecorated looks to see if there > are any empty PRChildren and removes them before writing to its > buffers. [ I think that this will work , though I am not 100% > certain, but then we have PRChildren being created and destroyed > over and over.] That should be fine, they don't have any semantics besides holding the children. > 3. Use an interface such as > > aStructure withChildren: [ :children | children add: ( aNewPage ) ] > where #withChildren: cleans up afterwards. There is such an interface already: aStructure enumerator do: [ :each | ... ]. You can also configure it to walk recursively: aStructure enumerator all do: [ :each | ... ]. Traverse hidden structure: aStructure enumerator hidden do: [ :each | ... ]. Traverse the reciever: aStructure enumerator with do: [ :each | ... ] And all combinations of those. > 4. Rewrite the commands above to use some form of visitor as you > suggest below: I noticed that in the Seaside part of Pier the lookup of environments didn't go trough visitors. I fixed that in Pier-Seaside-lr.80. I also fixed a bug I noticed in Pier-Security-lr.35. >>> and an access interface defined for children... #addChild: >>> #childAt: #childAt:ifAbsent: #childAt:ifPresent: >>> #childrenIncludes: #removeChild: >> I don't see why this would help. As far as I see none of my code >> uses any of this functionality directly. > I think that you forgot the command actions #doExecute etc. see above Yes, there might be more places where I violated my own design :-/ > PRCommand-#validateName: aString of: aChildStructure in: aStructure This one does not create a decoration, since it tests #hasChildren before calling #childrenDecoration. > PRCommand-#uniqueName: aString in: aStructure This one creates a new unnecessary decoration in some rare cases, I will fix it as soon as possible. > PRChangeEnvironmentCommand-#doExecute > PRAddCommand-#doExecute > PRCopyCommand-#doExecute > PRMoveCommand-#doExecute These all add a child, therefor it doesn't matter. > PRStructure-#remove I fixed that in Pier-Model-lr.80. > Fair enough, I thought as much, but when I found PRStructure- > #addChild: it indicated to me that you had thought of having a > child-accessing interface of sorts, and so I simply completed the > set to provide the functionality actually used in the image. This is solely a convenience method to allow building trees of Pier pages programmatically using cascades. > and so this enables things like > > PRCommand>>uniqueName: aString in: aStructure > "Answer an unique structure name with the prefix aString within > the parent aStructure." > > | index name | > (aStructure notNil > and: [ aStructure childrenIn: [ :children | children > includes: aString ] ]) > ifFalse: [ ^ aString ]. > index := 1. > [ aStructure childrenIn: [ :children | children includes: > (name := aString , ' ' , (index := index + 1) asString) ] ] > whileTrue. > ^ name > > would that be better? Definitely. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Mon Sep 25 05:37:56 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 25 Sep 2006 04:37:56 +0100 Subject: Accessors to children In-Reply-To: References: <4515D87C.1060002@yahoo.co.uk> <0BD046D4-DFFA-4817-A9D7-E771A037C255@iam.unibe.ch> <4516AB96.2090508@yahoo.co.uk> Message-ID: <45174F14.7010408@yahoo.co.uk> Dear Lukas, Thank you very much for you detailed feedback, it is really appreciated. 2. Magma before serializing any PRDecorated looks to see if there >> are any empty PRChildren and removes them before writing to its >> buffers. [ I think that this will work , though I am not 100% >> certain, but then we have PRChildren being created and destroyed >> over and over. done. > >> PRCommand-#uniqueName: aString in: aStructure >> > > This one creates a new unnecessary decoration in some rare cases, I > will fix it as soon as possible. > fix uploaded to Pier-Model-kph.87 best regards Keith -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20060925/ef887463/attachment.html From bakki.kudva at gmail.com Mon Sep 25 15:54:08 2006 From: bakki.kudva at gmail.com (Bakki Kudva) Date: Mon, 25 Sep 2006 09:54:08 -0400 Subject: Pier structure inspector icons In-Reply-To: <372A7DD0-ED32-4D5A-B9D7-9DB3949BD550@iam.unibe.ch> References: <66666f210609211416qe034cf7l444ca605297be6a3@mail.gmail.com> <66666f210609230523k6c2c279dv85ebf909ac7df8fc@mail.gmail.com> <372A7DD0-ED32-4D5A-B9D7-9DB3949BD550@iam.unibe.ch> Message-ID: Thanks Lukas, I hadn't looked at the way Pier is using WATree. But I sure will. -bakki On 9/24/06, Lukas Renggli wrote: > I think the WATree that Pier is using supports icons, no? You just > have to enable them from the settings in the Web. > > The WATree in Seaside is a port of the Tree in Pier, but without Pier > specific things such as icons. I think you can easily put back in the > support for icons, if you need. From cnantais at gmail.com Mon Sep 25 18:46:13 2006 From: cnantais at gmail.com (Chad Nantais) Date: Mon, 25 Sep 2006 09:46:13 -0700 Subject: MAMultipleOptionDescription Message-ID: <3de931600609250946y1595039ay98f7055b7f4bba3e@mail.gmail.com> Not sure how to do this with Magritte. I have a model 'MYBuilding' which has many 'MYAmenity' objects. When showing the editor for building, I want the user to be able to select multiple amenities from the amenity collection in MYAmenity class>>collection, rather than creating new amenities for the building. This is the description I have for MYBuilding class>>descriptionAmenities descriptionAmenities ^ (MAMultipleOptionDescription auto: 'amenities' label: 'Amenities' priority: 40) options: MVAmenity collection; reference: MVAmenity descriptionTitle; beSorted; yourself. It's not working. I get an MNU on MVAmenity>>do: I'm guessing it has something to do with what I'm sending to the reference selector, since I have no idea what I'm supposed to have there. Thanks in advance. Chad From renggli at iam.unibe.ch Mon Sep 25 19:43:47 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 25 Sep 2006 19:43:47 +0200 Subject: Magritte Morphic In-Reply-To: References: Message-ID: <0DE1772A-3FCB-4F8C-AC34-7603E9B49F26@iam.unibe.ch> On 25 Sep 2006, at 19:10, Bruce Haugland wrote: > I recently began working the the Morphic side of Magritte. This is > an outstanding package. > > However I have noticed that some aspects of Magritte are more > complete on Seaside then they are on the Morphic side. What is the > status of Magritte-Morph. Will it continue to be developed or is > it simply Dead Code. The morphic part of Magritte is more a prove of concept than code useable in production. I only implemented the parts that are needed to run Pier within the Squeak image. Pier itself only uses a subset of Magritte, therefor the package Magritte-Morph has never been taken as far as Magritte-Seaside that is used in several industrial application. Most of the productive applications I am involved with are Web applications. Quite a lot of those applications use Magritte- Seaside, therefor I concentrated most of my energy on this package. Right now, since time and commercial interest for Magritte-Morphic is missing, I am unable to continue with this sub-project on my own. I am still keeping the package up-to-date to make it work together with Pier, but I in the short I will not implement new features. However, I would be glad and willing to help, if anybody takes over the development of Magritte-Morph, or even starts with something new like Magritte-Tweak or Magritte-Sophie. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Sep 25 19:46:02 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 25 Sep 2006 19:46:02 +0200 Subject: MAMultipleOptionDescription In-Reply-To: <3de931600609250946y1595039ay98f7055b7f4bba3e@mail.gmail.com> References: <3de931600609250946y1595039ay98f7055b7f4bba3e@mail.gmail.com> Message-ID: <7FBC506A-BA3C-4E7D-8830-DF5A17D79E66@iam.unibe.ch> > This is the description I have for MYBuilding > class>>descriptionAmenities > descriptionAmenities > ^ (MAMultipleOptionDescription auto: 'amenities' label: 'Amenities' > priority: 40) > options: MVAmenity collection; > reference: MVAmenity descriptionTitle; > beSorted; > yourself. > > It's not working. I get an MNU on MVAmenity>>do: > > I'm guessing it has something to do with what I'm sending to the > reference selector, since I have no idea what I'm supposed to have > there. Try ... reference: MVAmnity description ... Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From cnantais at gmail.com Mon Sep 25 20:11:18 2006 From: cnantais at gmail.com (Chad Nantais) Date: Mon, 25 Sep 2006 11:11:18 -0700 Subject: MAMultipleOptionDescription In-Reply-To: <7FBC506A-BA3C-4E7D-8830-DF5A17D79E66@iam.unibe.ch> References: <3de931600609250946y1595039ay98f7055b7f4bba3e@mail.gmail.com> <7FBC506A-BA3C-4E7D-8830-DF5A17D79E66@iam.unibe.ch> Message-ID: <3de931600609251111y5ca2f656g8cf418dee15e2a6e@mail.gmail.com> Works. I even got it to work with the list composition component with: descriptionAmenities ^ (MAMultipleOptionDescription auto: 'amenities' label: 'Amenities' priority: 40) componentClass: MAListCompositonComponent; options: MVAmenity collection; reference: MVAmenity description; beSorted; yourself. Thanks Lukas. Chad On 9/25/06, Lukas Renggli wrote: > > This is the description I have for MYBuilding > > class>>descriptionAmenities > > descriptionAmenities > > ^ (MAMultipleOptionDescription auto: 'amenities' label: 'Amenities' > > priority: 40) > > options: MVAmenity collection; > > reference: MVAmenity descriptionTitle; > > beSorted; > > yourself. > > > > It's not working. I get an MNU on MVAmenity>>do: > > > > I'm guessing it has something to do with what I'm sending to the > > reference selector, since I have no idea what I'm supposed to have > > there. > > Try > > ... > reference: MVAmnity description > ... > > Cheers, > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From cnantais at gmail.com Mon Sep 25 21:22:35 2006 From: cnantais at gmail.com (Chad Nantais) Date: Mon, 25 Sep 2006 12:22:35 -0700 Subject: Saving MAFileModel to filesystem Message-ID: <3de931600609251222s97cba79sc60d051ab64d103e@mail.gmail.com> What's the best way to have an MAFileDescription upload save the MAFileModel contents to the filesystem instead of the Squeak image. I'm talking about image mimetypes in this case, which I will be serving with a seperate Komanche instance and I don't want them bloating my Squeak image. Thanks in advance. Chad From damien.cassou at laposte.net Tue Sep 26 13:22:34 2006 From: damien.cassou at laposte.net (Damien Cassou) Date: Tue, 26 Sep 2006 13:22:34 +0200 Subject: Saving MAFileModel to filesystem In-Reply-To: <3de931600609251222s97cba79sc60d051ab64d103e@mail.gmail.com> References: <3de931600609251222s97cba79sc60d051ab64d103e@mail.gmail.com> Message-ID: <45190D7A.9080708@laposte.net> Chad Nantais a ?crit : > What's the best way to have an MAFileDescription upload save the > MAFileModel contents to the filesystem instead of the Squeak image. > I'm talking about image mimetypes in this case, which I will be > serving with a seperate Komanche instance and I don't want them > bloating my Squeak image. I just did a command this morning that allows the user to upload a file and place it to a given directory. There is some odd things but it works. PRCommand subclass: #PRUpload instanceVariableNames: 'file destination directory' classVariableNames: '' poolDictionaries: '' category: 'Pier-Model-Command' PRUpload>>destination ^ destination PRUpload>>destination: aString destination := aString PRUpload>>file ^ file PRUpload>>file: aMAFileModel file := aMAFileModel PRUpload>>doValidate super doValidate. (FileDirectory default directoryExists: self destination) ifFalse: [MAError raiseSignal: 'Destination does not exist']. directory := (FileDirectory default directoryNamed: self destination). (directory fileExists: self file filename) ifTrue: [MAError raiseSignal: 'A file with the same name already exist. Please rename the file!']. self writeFile. PRUpload>>writeFile |stream | stream := self file contents readStream. (directory putFile: stream named: self file filename) ifFalse: [MAError raiseSignal: 'An error occurred while trying to create a file with the given name in the destination folder!']. PRUpload class instanceVariableNames: '' PRUpload class>>descriptionDestination ^ (MAStringDescription auto: #destination label: 'Destination' priority: 200 default: 'resources') beRequired; yourself PRUpload class>>descriptionFile ^ (MAFileDescription auto: #file label: 'File' priority: 100) beRequired; yourself PRUpload class>>isAbstract ^ false PRUpload class>>label ^ 'Send a file' -- Damien Cassou From cnantais at gmail.com Tue Sep 26 20:11:50 2006 From: cnantais at gmail.com (Chad Nantais) Date: Tue, 26 Sep 2006 11:11:50 -0700 Subject: Saving MAFileModel to filesystem In-Reply-To: <45190D7A.9080708@laposte.net> References: <3de931600609251222s97cba79sc60d051ab64d103e@mail.gmail.com> <45190D7A.9080708@laposte.net> Message-ID: <3de931600609261111r583544b0kf6461cbee668ca2a@mail.gmail.com> Cool. Thanks, Damien. One quick question. How would I remove the file's data from the contents variable so it does not hang around the image? Would it be good enough to just set the contents variable to nil once the file is saved to the directory? Thanks, Chad On 9/26/06, Damien Cassou wrote: > Chad Nantais a ?crit : > > What's the best way to have an MAFileDescription upload save the > > MAFileModel contents to the filesystem instead of the Squeak image. > > I'm talking about image mimetypes in this case, which I will be > > serving with a seperate Komanche instance and I don't want them > > bloating my Squeak image. > > I just did a command this morning that allows the user to upload a file > and place it to a given directory. > > There is some odd things but it works. > > > PRCommand subclass: #PRUpload > instanceVariableNames: 'file destination directory' > classVariableNames: '' > poolDictionaries: '' > category: 'Pier-Model-Command' > > PRUpload>>destination > ^ destination > > PRUpload>>destination: aString > destination := aString > > PRUpload>>file > ^ file > > PRUpload>>file: aMAFileModel > file := aMAFileModel > > PRUpload>>doValidate > super doValidate. > (FileDirectory default directoryExists: self destination) > ifFalse: [MAError raiseSignal: 'Destination does not exist']. > > directory := (FileDirectory default directoryNamed: self destination). > > (directory fileExists: self file filename) > ifTrue: [MAError raiseSignal: 'A file with the same name already > exist. Please rename the file!']. > self writeFile. > > PRUpload>>writeFile > |stream | > stream := self file contents readStream. > (directory putFile: stream named: self file filename) > ifFalse: [MAError raiseSignal: 'An error occurred while trying to > create a file with the given name in the destination folder!']. > > > > PRUpload class > instanceVariableNames: '' > > PRUpload class>>descriptionDestination > ^ (MAStringDescription auto: #destination label: 'Destination' > priority: 200 default: 'resources') > beRequired; > yourself > > PRUpload class>>descriptionFile > ^ (MAFileDescription auto: #file label: 'File' priority: 100) > beRequired; > yourself > > PRUpload class>>isAbstract > ^ false > > PRUpload class>>label > ^ 'Send a file' > > > > -- > Damien Cassou > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From damien.cassou at laposte.net Tue Sep 26 20:58:31 2006 From: damien.cassou at laposte.net (Damien Cassou) Date: Tue, 26 Sep 2006 20:58:31 +0200 Subject: Saving MAFileModel to filesystem In-Reply-To: <3de931600609261111r583544b0kf6461cbee668ca2a@mail.gmail.com> References: <3de931600609251222s97cba79sc60d051ab64d103e@mail.gmail.com> <45190D7A.9080708@laposte.net> <3de931600609261111r583544b0kf6461cbee668ca2a@mail.gmail.com> Message-ID: <45197857.5000305@laposte.net> Chad Nantais a ?crit : > Cool. Thanks, Damien. > > One quick question. How would I remove the file's data from the > contents variable so it does not hang around the image? Would it be > good enough to just set the contents variable to nil once the file is > saved to the directory? You can set the contents variable to nil but I think doing nothing will work too. Your MAFileModel, if not stored, will be garbage collected sonner or later. -- Damien Cassou From renggli at iam.unibe.ch Thu Sep 28 19:55:29 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 28 Sep 2006 19:55:29 +0200 Subject: Offline Message-ID: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> Hi, I am moving to another flat the coming weekend, therefor I won't be able to respond to mails and my server will be offline starting Saturday morning. This also means that the Magritte and Pier repositories won't be accessible for a couple of days. The server will be put online again as soon as possible, however it might take a while to get things settled with the new internet provider. I hope to be online at least on Wednesday next week, but one never knows what happens. Please continue with all the nice enhancements and extensions to Pier and Magritte, we can merge them back into the main branch after the server comes up again ;-) Have fun, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From ducasse at iam.unibe.ch Thu Sep 28 20:32:36 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Thu, 28 Sep 2006 20:32:36 +0200 Subject: Offline In-Reply-To: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> References: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> Message-ID: good move lukas too bad that I'm there to help you caring boxes.... of comics of course stef On 28 sept. 06, at 19:55, Lukas Renggli wrote: > Hi, > > I am moving to another flat the coming weekend, therefor I won't be > able to respond to mails and my server will be offline starting > Saturday morning. This also means that the Magritte and Pier > repositories won't be accessible for a couple of days. > > The server will be put online again as soon as possible, however it > might take a while to get things settled with the new internet > provider. I hope to be online at least on Wednesday next week, but > one never knows what happens. > > Please continue with all the nice enhancements and extensions to Pier > and Magritte, we can merge them back into the main branch after the > server comes up again ;-) > > Have fun, > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From renggli at iam.unibe.ch Thu Sep 28 21:00:34 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 28 Sep 2006 21:00:34 +0200 Subject: Offline In-Reply-To: References: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> Message-ID: > good move lukas > too bad that I'm there to help you caring boxes.... of comics of > course Thanks Stef, I already moved the boxes of comics this week. Now there is just the furniture remaining, but I have some people that will help to carry the heavy stuff. Btw, my new flat is close to your place, on the opposite site, a bit further down the Aare. Looking forward having a quiet place to sleep ;-) -- Lukas Renggli http://www.lukas-renggli.ch From rfh at atnet.at Thu Sep 28 21:33:32 2006 From: rfh at atnet.at (Reinhard Handl) Date: Thu, 28 Sep 2006 21:33:32 +0200 Subject: Offline In-Reply-To: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> References: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> Message-ID: <451C238C.2000801@atnet.at> hallo lukas, suche grade infos ?ber pier und hab auf deiner spielverderber-site herumgespielt. unter view morphic gabs dann einen fehler und ich hab irrt?mlich auf debug geclickt, das war nicht so toll, jetzt h?ngt die site. sorry. lg, reinhard Lukas Renggli schrieb: > Hi, > > I am moving to another flat the coming weekend, therefor I won't be > able to respond to mails and my server will be offline starting > Saturday morning. This also means that the Magritte and Pier > repositories won't be accessible for a couple of days. > > The server will be put online again as soon as possible, however it > might take a while to get things settled with the new internet > provider. I hope to be online at least on Wednesday next week, but > one never knows what happens. > > Please continue with all the nice enhancements and extensions to Pier > and Magritte, we can merge them back into the main branch after the > server comes up again ;-) > > Have fun, > Lukas > > From ramon.leon at allresnet.com Thu Sep 28 21:33:53 2006 From: ramon.leon at allresnet.com (Ramon Leon) Date: Thu, 28 Sep 2006 12:33:53 -0700 Subject: Offline In-Reply-To: Message-ID: <003d01c6e335$081e67a0$9700a8c0@hq.allresnet.com> Hey guys, anyone know why squeak dev is offline? Ram?n Le?n http://onsmalltalk.com From ducasse at iam.unibe.ch Thu Sep 28 21:48:35 2006 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Thu, 28 Sep 2006 21:48:35 +0200 Subject: Offline In-Reply-To: <003d01c6e335$081e67a0$9700a8c0@hq.allresnet.com> References: <003d01c6e335$081e67a0$9700a8c0@hq.allresnet.com> Message-ID: <29933D4D-83D6-4303-B6C0-75A8C281556D@iam.unibe.ch> no On 28 sept. 06, at 21:33, Ramon Leon wrote: > Hey guys, anyone know why squeak dev is offline? > > Ram?n Le?n > http://onsmalltalk.com > > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From brad at sonaural.com Thu Sep 28 21:51:40 2006 From: brad at sonaural.com (Brad Fuller) Date: Thu, 28 Sep 2006 12:51:40 -0700 Subject: Offline In-Reply-To: <003d01c6e335$081e67a0$9700a8c0@hq.allresnet.com> References: <003d01c6e335$081e67a0$9700a8c0@hq.allresnet.com> Message-ID: <451C27CC.20302@sonaural.com> Ramon Leon wrote: > Hey guys, anyone know why squeak dev is offline? > billing issue. From Ken: "Unfortunately the server (as well as the server where people.squeakfoundation.org is) is temporarily down due to a billing problem. This should be sorted out in a couple of days and everything should be back up and running then. I'm sorry for the temporary downtime. Ken" From ramon.leon at allresnet.com Thu Sep 28 22:55:04 2006 From: ramon.leon at allresnet.com (Ramon Leon) Date: Thu, 28 Sep 2006 13:55:04 -0700 Subject: Offline In-Reply-To: <451C27CC.20302@sonaural.com> Message-ID: <004d01c6e340$5f6f0040$9700a8c0@hq.allresnet.com> > "Unfortunately the server (as well as the server where > people.squeakfoundation.org is) is temporarily down due to a > billing problem. This should be sorted out in a couple of > days and everything should be back up and running then. I'm > sorry for the temporary downtime. > > Ken" :( I'm joansing, I need my squeak news. Ram?n Le?n http://onsmalltalk.com From giovanni at corriga.net Thu Sep 28 23:08:55 2006 From: giovanni at corriga.net (Giovanni Corriga) Date: Thu, 28 Sep 2006 23:08:55 +0200 Subject: Offline In-Reply-To: <004d01c6e340$5f6f0040$9700a8c0@hq.allresnet.com> References: <004d01c6e340$5f6f0040$9700a8c0@hq.allresnet.com> Message-ID: <1159477735.4026.14.camel@rincewind> Il giorno gio, 28/09/2006 alle 13.55 -0700, Ramon Leon ha scritto: > > "Unfortunately the server (as well as the server where > > people.squeakfoundation.org is) is temporarily down due to a > > billing problem. This should be sorted out in a couple of > > days and everything should be back up and running then. I'm > > sorry for the temporary downtime. > > > > Ken" > > :( I'm joansing, I need my squeak news. http://weeklysqueak.wordpress.com and http://planet.squeak.org are still working. Giovanni From renggli at iam.unibe.ch Thu Sep 28 23:09:16 2006 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 28 Sep 2006 23:09:16 +0200 Subject: Offline In-Reply-To: <451C238C.2000801@atnet.at> References: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> <451C238C.2000801@atnet.at> Message-ID: > suche grade infos ?ber pier und hab auf deiner spielverderber-site > herumgespielt. unter view morphic gabs dann einen fehler und ich hab > irrt?mlich auf debug geclickt, > das war nicht so toll, jetzt h?ngt die site. sorry. This is Philippe Marschall implemented this project and that is running this site. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From philippe.marschall at gmail.com Thu Sep 28 23:56:23 2006 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Thu, 28 Sep 2006 23:56:23 +0200 Subject: Offline In-Reply-To: <451C238C.2000801@atnet.at> References: <3DCCA35C-5612-4B70-AAB4-52C3B0FE25FF@iam.unibe.ch> <451C238C.2000801@atnet.at> Message-ID: <66666f210609281456p43836a3fu51b8306200ad1681@mail.gmail.com> Hi Lukas ist daran ganz und gar unschuldig. Ich f?rchte das geht alles auf meine Kappe. Der Bug ist mittlerweile im Code gefixt aber noch nicht deployed. Und mach dir wegen der Seite keine Sorgen, im schlimmsten Fall starte ich einfach das Image neu. Das ist einer der Vorteile wenn man keine Persistenz hat. ;) Im Moment scheint sie zumindest wieder zu laufen. 'Werde wohl mal ein neues Image machen m?ssen, da es auch Probleme mit der Performance zu geben scheint. Daf?r scheint Google Related Liks endlich zu laufen. Wie es aussieht war der Trick einfach lange genug zu warten bis Google den Index angepasst hat. Philippe 2006/9/28, Reinhard Handl : > hallo lukas, > suche grade infos ?ber pier und hab auf deiner spielverderber-site > herumgespielt. unter view morphic gabs dann einen fehler und ich hab > irrt?mlich auf debug geclickt, > das war nicht so toll, jetzt h?ngt die site. sorry. > > lg, reinhard > > > > Lukas Renggli schrieb: > > Hi, > > > > I am moving to another flat the coming weekend, therefor I won't be > > able to respond to mails and my server will be offline starting > > Saturday morning. This also means that the Magritte and Pier > > repositories won't be accessible for a couple of days. > > > > The server will be put online again as soon as possible, however it > > might take a while to get things settled with the new internet > > provider. I hope to be online at least on Wednesday next week, but > > one never knows what happens. > > > > Please continue with all the nice enhancements and extensions to Pier > > and Magritte, we can merge them back into the main branch after the > > server comes up again ;-) > > > > Have fun, > > Lukas > > > > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From keith_hodges at yahoo.co.uk Fri Sep 29 00:53:03 2006 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 28 Sep 2006 23:53:03 +0100 Subject: WASession-properties? Message-ID: <451C524F.7030009@yahoo.co.uk> A seaside question. Has anyone ever suggested that having properties in WASession might be a good idea? I want to add things to sessions without having to define my own class of session. Keith p.s. in 3.8 still so no traits ___________________________________________________________ All New Yahoo! Mail ? Tired of Vi at gr@! come-ons? Let our SpamGuard protect you. http://uk.docs.yahoo.com/nowyoucan.html From ramon.leon at allresnet.com Fri Sep 29 00:52:30 2006 From: ramon.leon at allresnet.com (Ramon Leon) Date: Thu, 28 Sep 2006 15:52:30 -0700 Subject: WASession-properties? In-Reply-To: <451C524F.7030009@yahoo.co.uk> Message-ID: <005e01c6e350$c7637270$9700a8c0@hq.allresnet.com> > A seaside question. > > Has anyone ever suggested that having properties in WASession > might be a good idea? > I want to add things to sessions without having to define my > own class of session. > > Keith > > p.s. in 3.8 still so no traits Why the aversion to using your own class? You can define your own class once, with properties, and use it for all your projects. Ram?n Le?n http://onsmalltalk.com