On Jul 23, 2013, at 11:51 PM, Dale K. Henrichs dale.henrichs@gemtalksystems.com wrote:
Stef,
I haven't completely wrapped my brain around what SnapshotCello does so I don't have an informed opinion ... the fact that you found a need to invent SnapshotCello does speak volumes to the fact that there is a need that is going unmet:).
However, I don't like the fact that you end up sending a non-spec message to make this work (#populateSpec:with:). Tools like Versioner will not be able to rewrite a method like this correctly so it is a less than satisfactory workaround to the method literal limit.
Indeed. May be in the future we could recreate a simple compliant spec driven method by interpreting the existing configuration trees but this requires some work.
With that said it _is_ performing a useful function ...
I have recently come up with an approach to addressing the method literal limit from a slightly different angle and I would assume that SnapshotCello could be recast to use this "approved approach" when the new techinique becomes available. At that time it would make sense to roll the SnapshotCello funtionality into the MetacelloToolBox...
Dale
[1] http://forum.world.st/Loading-problem-in-Seaside-tp4699965p4700161.html ----- Original Message ----- | From: "Stéphane Ducasse" stephane.ducasse@inria.fr | To: "Moose-related development" moose-dev@iam.unibe.ch | Cc: "Any question about pharo is welcome" pharo-users@lists.pharo.org, "Pharo Development List" | pharo-dev@lists.pharo.org | Sent: Tuesday, July 23, 2013 2:17:50 PM | Subject: [Moose-dev] Re: [ann] snapshotcello | | Nice to see SnapshotCello coming to live. May be it should be | integrated to Metacello. | Because everybody may need this cool feature. | | Stef | | On Jul 23, 2013, at 10:43 PM, Tudor Girba tudor@tudorgirba.com | wrote: | | > Hi, | > | > Stef and I developed Snapshotcello, a little utility that enables | > you to freeze a snapshot of a given configuration based on what is | > already loaded in your current image. | > | > The idea is simple. You develop against the latest versions of all | > packages, and commit your changes for each package. When you are | > ready for a release, you assemble your image, and generate a | > snapshot version that can be reloaded later. | > | > Here is an example of how it can work to take a snapshot of a | > development version: | > Snapshotcello new | > configurationClass: ConfigurationOfMoose; | > configurationVersion: #development; | > publishVersion: '4.8-snapshot' | > | > You can find more details here: | > http://www.tudorgirba.com/blog/snapshotcello-take-a-snapshot-when-you-re-rea... | > | > You can get the code at: | > Gofer new | > smalltalkhubUser: 'girba' project: 'Snapshotcello'; | > package: 'ConfigurationOfSnapshotcello'; | > load. | > (Smalltalk globals at: #ConfigurationOfSnapshotcello) | > loadDevelopment | > | > Cheers, | > Doru | > | > -- | > www.tudorgirba.com | > | > "Every successful trip needs a suitable vehicle." | > | > | > | > | > | > _______________________________________________ | > Moose-dev mailing list | > Moose-dev@iam.unibe.ch | > https://www.iam.unibe.ch/mailman/listinfo/moose-dev | | | _______________________________________________ | Moose-dev mailing list | Moose-dev@iam.unibe.ch | https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi,
On Jul 24, 2013, at 8:48 AM, Stéphane Ducasse stephane.ducasse@inria.fr wrote:
On Jul 23, 2013, at 11:51 PM, Dale K. Henrichs dale.henrichs@gemtalksystems.com wrote:
Stef,
I haven't completely wrapped my brain around what SnapshotCello does so I don't have an informed opinion ... the fact that you found a need to invent SnapshotCello does speak volumes to the fact that there is a need that is going unmet:).
However, I don't like the fact that you end up sending a non-spec message to make this work (#populateSpec:with:). Tools like Versioner will not be able to rewrite a method like this correctly so it is a less than satisfactory workaround to the method literal limit.
Indeed. May be in the future we could recreate a simple compliant spec driven method by interpreting the existing configuration trees but this requires some work.
I do not understand this point. What do you mean by "interpreting the configuration trees"?
Doru
With that said it _is_ performing a useful function ...
I have recently come up with an approach to addressing the method literal limit from a slightly different angle and I would assume that SnapshotCello could be recast to use this "approved approach" when the new techinique becomes available. At that time it would make sense to roll the SnapshotCello funtionality into the MetacelloToolBox...
Dale
[1] http://forum.world.st/Loading-problem-in-Seaside-tp4699965p4700161.html ----- Original Message ----- | From: "Stéphane Ducasse" stephane.ducasse@inria.fr | To: "Moose-related development" moose-dev@iam.unibe.ch | Cc: "Any question about pharo is welcome" pharo-users@lists.pharo.org, "Pharo Development List" | pharo-dev@lists.pharo.org | Sent: Tuesday, July 23, 2013 2:17:50 PM | Subject: [Moose-dev] Re: [ann] snapshotcello | | Nice to see SnapshotCello coming to live. May be it should be | integrated to Metacello. | Because everybody may need this cool feature. | | Stef | | On Jul 23, 2013, at 10:43 PM, Tudor Girba tudor@tudorgirba.com | wrote: | | > Hi, | > | > Stef and I developed Snapshotcello, a little utility that enables | > you to freeze a snapshot of a given configuration based on what is | > already loaded in your current image. | > | > The idea is simple. You develop against the latest versions of all | > packages, and commit your changes for each package. When you are | > ready for a release, you assemble your image, and generate a | > snapshot version that can be reloaded later. | > | > Here is an example of how it can work to take a snapshot of a | > development version: | > Snapshotcello new | > configurationClass: ConfigurationOfMoose; | > configurationVersion: #development; | > publishVersion: '4.8-snapshot' | > | > You can find more details here: | > http://www.tudorgirba.com/blog/snapshotcello-take-a-snapshot-when-you-re-rea... | > | > You can get the code at: | > Gofer new | > smalltalkhubUser: 'girba' project: 'Snapshotcello'; | > package: 'ConfigurationOfSnapshotcello'; | > load. | > (Smalltalk globals at: #ConfigurationOfSnapshotcello) | > loadDevelopment | > | > Cheers, | > Doru | > | > -- | > www.tudorgirba.com | > | > "Every successful trip needs a suitable vehicle." | > | > | > | > | > | > _______________________________________________ | > Moose-dev mailing list | > Moose-dev@iam.unibe.ch | > https://www.iam.unibe.ch/mailman/listinfo/moose-dev | | | _______________________________________________ | Moose-dev mailing list | Moose-dev@iam.unibe.ch | https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"From an abstract enough point of view, any two things are similar."
On Jul 24, 2013, at 9:11 AM, Tudor Girba tudor@tudorgirba.com wrote:
Hi,
On Jul 24, 2013, at 8:48 AM, Stéphane Ducasse stephane.ducasse@inria.fr wrote:
On Jul 23, 2013, at 11:51 PM, Dale K. Henrichs dale.henrichs@gemtalksystems.com wrote:
Stef,
I haven't completely wrapped my brain around what SnapshotCello does so I don't have an informed opinion ... the fact that you found a need to invent SnapshotCello does speak volumes to the fact that there is a need that is going unmet:).
However, I don't like the fact that you end up sending a non-spec message to make this work (#populateSpec:with:). Tools like Versioner will not be able to rewrite a method like this correctly so it is a less than satisfactory workaround to the method literal limit.
Indeed. May be in the future we could recreate a simple compliant spec driven method by interpreting the existing configuration trees but this requires some work.
I do not understand this point. What do you mean by "interpreting the configuration trees"?
I mean going over the configurations with dependencies to recreate the tree structure but with versions. May be this is not needed because for versions we do not need dependencies so just group them per configurations.
Doru
With that said it _is_ performing a useful function ...
I have recently come up with an approach to addressing the method literal limit from a slightly different angle and I would assume that SnapshotCello could be recast to use this "approved approach" when the new techinique becomes available. At that time it would make sense to roll the SnapshotCello funtionality into the MetacelloToolBox...
Dale
[1] http://forum.world.st/Loading-problem-in-Seaside-tp4699965p4700161.html ----- Original Message ----- | From: "Stéphane Ducasse" stephane.ducasse@inria.fr | To: "Moose-related development" moose-dev@iam.unibe.ch | Cc: "Any question about pharo is welcome" pharo-users@lists.pharo.org, "Pharo Development List" | pharo-dev@lists.pharo.org | Sent: Tuesday, July 23, 2013 2:17:50 PM | Subject: [Moose-dev] Re: [ann] snapshotcello | | Nice to see SnapshotCello coming to live. May be it should be | integrated to Metacello. | Because everybody may need this cool feature. | | Stef | | On Jul 23, 2013, at 10:43 PM, Tudor Girba tudor@tudorgirba.com | wrote: | | > Hi, | > | > Stef and I developed Snapshotcello, a little utility that enables | > you to freeze a snapshot of a given configuration based on what is | > already loaded in your current image. | > | > The idea is simple. You develop against the latest versions of all | > packages, and commit your changes for each package. When you are | > ready for a release, you assemble your image, and generate a | > snapshot version that can be reloaded later. | > | > Here is an example of how it can work to take a snapshot of a | > development version: | > Snapshotcello new | > configurationClass: ConfigurationOfMoose; | > configurationVersion: #development; | > publishVersion: '4.8-snapshot' | > | > You can find more details here: | > http://www.tudorgirba.com/blog/snapshotcello-take-a-snapshot-when-you-re-rea... | > | > You can get the code at: | > Gofer new | > smalltalkhubUser: 'girba' project: 'Snapshotcello'; | > package: 'ConfigurationOfSnapshotcello'; | > load. | > (Smalltalk globals at: #ConfigurationOfSnapshotcello) | > loadDevelopment | > | > Cheers, | > Doru | > | > -- | > www.tudorgirba.com | > | > "Every successful trip needs a suitable vehicle." | > | > | > | > | > | > _______________________________________________ | > Moose-dev mailing list | > Moose-dev@iam.unibe.ch | > https://www.iam.unibe.ch/mailman/listinfo/moose-dev | | | _______________________________________________ | Moose-dev mailing list | Moose-dev@iam.unibe.ch | https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"From an abstract enough point of view, any two things are similar."
----- Original Message ----- | From: "Stéphane Ducasse" stephane.ducasse@inria.fr | To: "Pharo Development List" pharo-dev@lists.pharo.org | Cc: "Moose-related development" moose-dev@iam.unibe.ch, "Any question about pharo is welcome" | pharo-users@lists.pharo.org | Sent: Tuesday, July 23, 2013 11:48:27 PM | Subject: Re: [Pharo-dev] [Moose-dev] Re: [ann] snapshotcello | | | On Jul 23, 2013, at 11:51 PM, Dale K. Henrichs | dale.henrichs@gemtalksystems.com wrote: | | > Stef, | > | > I haven't completely wrapped my brain around what SnapshotCello | > does so I don't have an informed opinion ... the fact that you | > found a need to invent SnapshotCello does speak volumes to the | > fact that there is a need that is going unmet:). | > | > However, I don't like the fact that you end up sending a non-spec | > message to make this work (#populateSpec:with:). Tools like | > Versioner will not be able to rewrite a method like this correctly | > so it is a less than satisfactory workaround to the method literal | > limit. | | Indeed. May be in the future we could recreate a simple compliant | spec driven method by interpreting the | existing configuration trees but this requires some work.
Absolutely and it would be work that I'd be willing to do ... From that perspective SnapshotCello is a very good spec for what you and the Moose team need.
Dale
Hi,
I would be happy to blend Snapshotcello into Metacello.
Cheers, Doru
On Jul 24, 2013, at 9:05 PM, "Dale K. Henrichs" dale.henrichs@gemtalksystems.com wrote:
----- Original Message ----- | From: "Stéphane Ducasse" stephane.ducasse@inria.fr | To: "Pharo Development List" pharo-dev@lists.pharo.org | Cc: "Moose-related development" moose-dev@iam.unibe.ch, "Any question about pharo is welcome" | pharo-users@lists.pharo.org | Sent: Tuesday, July 23, 2013 11:48:27 PM | Subject: Re: [Pharo-dev] [Moose-dev] Re: [ann] snapshotcello | | | On Jul 23, 2013, at 11:51 PM, Dale K. Henrichs | dale.henrichs@gemtalksystems.com wrote: | | > Stef, | > | > I haven't completely wrapped my brain around what SnapshotCello | > does so I don't have an informed opinion ... the fact that you | > found a need to invent SnapshotCello does speak volumes to the | > fact that there is a need that is going unmet:). | > | > However, I don't like the fact that you end up sending a non-spec | > message to make this work (#populateSpec:with:). Tools like | > Versioner will not be able to rewrite a method like this correctly | > so it is a less than satisfactory workaround to the method literal | > limit. | | Indeed. May be in the future we could recreate a simple compliant | spec driven method by interpreting the | existing configuration trees but this requires some work.
Absolutely and it would be work that I'd be willing to do ... From that perspective SnapshotCello is a very good spec for what you and the Moose team need.
Dale
-- www.tudorgirba.com
"Every thing has its own flow."