Administrator
|
It seems that this (e.g. className: 'ConfigurationOfUI') is required. Why not have it be optional and default to ConfigurationOfProjectName?
Thanks, Sean
Cheers,
Sean |
You are correct ... I started out making `className:` optional, but then I needed to add `baseline:with:` (optional `className:`) and then after much gnashing of teeth and tearing of hair, I decided to add `configuration:with:` (optional `className:`) and leave `project:with:` as is (required `className:`).
The same pattern is repeated in the Metacello scripting api... So here are the curent required fields: spec project:'UI' with: [ spec className: 'MyNonConformistConfigOfUI'; version: #stable; repository: 'http://example.com/UI']; configuration:'UI' with: [ spec version: #stable; repository: 'http://example.com/UI']; baseline:'UI' with: [ spec repository: 'http://example.com/UI']; The documentation will emphasize `configuration:with` and `baseline:with:`, while `project:with:` will be for super-users and stubborn non-conformists:) Dale ----- Original Message ----- | From: "Sean P. DeNigris" <[hidden email]> | To: [hidden email] | Sent: Wednesday, July 4, 2012 8:52:36 AM | Subject: [Metacello] Dependent project #className: | | It seems that this (e.g. className: 'ConfigurationOfUI') is required. | Why not | have it be optional and default to ConfigurationOfProjectName? | | Thanks, | Sean | | -- | View this message in context: | http://forum.world.st/Dependent-project-className-tp4638262.html | Sent from the Metacello mailing list archive at Nabble.com. | |
Administrator
|
Why can't it be optional in #project:with: also? What is the difference between it and #configuration:with:? Is #baseline:with: equivalent to #configuration:with: [ ... version: #bleedingEdge... ]?
Cheers,
Sean |
Sean,
The thought process goes: in 1.0-beta.31 `className:` is not optional in 1.0-beta.32 `configuration:with:` and `baseline:with:with:` added with className: optional `configuration:with:` assumes the ConfigurationOf convention is followed. `baseline:with:` assumes the BaselineOf convention is followed. All new configurations should be created using one or the other of the above constructs. `project:with:` is really only being supported for backward compatibility... `project:with:` cannot be used for baselines (that's why `baseline:with:` was added). Sooo, moving forward I want to reinforce the use `configuration:with:` and `baseline:with:` while discouraging the use of `project:with:`...The best way to do that is to provide an incentive for using `configuration:with:`:) Dale ----- Original Message ----- | From: "Sean P. DeNigris" <[hidden email]> | To: [hidden email] | Sent: Wednesday, July 4, 2012 8:52:10 PM | Subject: [Metacello] Re: Dependent project #className: | | | Dale Henrichs wrote | > | > I decided to add `configuration:with:` (optional `className:`) and | > leave | > `project:with:` as is (required `className:`). | > | Why can't it be optional in #project:with: also? What is the | difference | between it and #configuration:with:? | | | Dale Henrichs wrote | > | > configuration:'UI' with: [ | > spec | > version: #stable; | > repository: 'http://example.com/UI']; | > baseline:'UI' with: [ | > spec | > repository: 'http://example.com/UI']; | > | Is #baseline:with: equivalent to #configuration:with: [ ... version: | #bleedingEdge... ]? | | -- | View this message in context: | http://forum.world.st/Dependent-project-className-tp4638262p4638374.html | Sent from the Metacello mailing list archive at Nabble.com. | |
Free forum by Nabble | Edit this page |