On Wed, Oct 21, 2015 at 2:49 AM, Dale Henrichs <
[email protected]> wrote:

> Here's the documentation for the Metacello github:// repository
> description[1]. ...
>
> In recent versions of Metacello I have made it possible for you to use
> pattern matching in the <version identifier> to provide for
> symbolic-version-like facility for github references.
>
> Instead of stableForPharo4 you would associate a semantic version with the
> code that is "stableForPharo4" for example `4.0.0` and use the tag `v4.0.0`
> to mark the commit that is "stableForPharo4".
>
> Similarly you'd use the tag `v5.0.0` to mark the commit that is
> "stableForPharo5".
>
> Then you'd use the following in your baseline: method (not in a
> symbolicVersion method).
>
>   spec for: #'pharo4.0.x'
>     do: [spec
>       baseline: 'Project'
>        with: [ spec repository: 'github://username/Project:v4.?/']].
>   spec for: #'pharo5.0.x'
>     do: [spec
>        baseline: 'Project'
>        with: [ spec repository: 'github://username/Project:v5.?/']].
>
> If you end up with a new commit that patches a Pharo4 problem, you'd tag
> that commit as `v4.0.1` and so on .... The above `v4.?` pattern will match
> `v4.0.1` and you'll pick up that tag the next time you refresh your build
> (i.e., do a `get` on the Project baseline ... which causes a new download
> from Github) ...
>

Intuitively I would have thought that #'pharo4.0.x'
would correspond to repository: 'github://username/Project:v4.0.?/'
I seem to be missing something.
cheers -ben



>
> HTH,
>
> Dale
>
> [1]
> https://github.com/dalehenrich/metacello-work/blob/master/docs/MetacelloScriptingAPI.md#github
> [2]
> https://github.com/dalehenrich/metacello-work/issues/277#issuecomment-58970696
>
>
> On 10/19/2015 08:05 PM, Gabriel Cotelli wrote:
>
> I was wondering if something like this can work:
>
> Given a ConfigurationOfProject (a subclass of ConfigurationOf)  defining:
>
> stable: spec <symbolicVersion: #stable> spec for: #'pharo4.0.x' do: [spec
> baseline: 'Project' with: [ spec repository: 
> 'github://username/Project:stableForPharo4/']].
> spec for: #'pharo5.0.x' do: [spec baseline: 'Project' with: [ spec
> repository: 'github://username/Project:stableForPharo5/']].
> where stableForPharo4 and stableForPharo5 are tags in the git repo (and
> assuming the BaselineOfProject is defined in this commits). Is this
> supposed to work :
> Metacello new
>   configuration: 'Project';
>   repository: 'github://username/Project:master';
>   version: #stable;
>   load. ??
> I've tried using a non-symbolic version and it works but I can't make it
> work for #stable. I'd like to use this configuration for the Configuration
> Browser/Catalog Browser.
> Any help is appreciated.
>
>
>

Reply via email to