Hi Dale,

The wildcards on tags, are they available on branch names as well?

I wonder about the choice for ? and *, because:

- In RE(s), ? is 0 or 1 occurence, * is 0 or any number of occurences.
- In shells (bash?), ? is any one character, * is 0 or any number of
characters.

i.e. ? matches less than * in both cases. In Metacello, it is the reverse:
1.0.? matches more labels than 1.0.*

Thierry


2015-01-27 15:57 GMT+01:00 Dale Henrichs <dale.henri...@gemtalksystems.com>:

>  Kilon,
>
> One more point that you might find useful ... If you use tags (i.e.,
> v1.0.0, v1.0.1, v1.1.0), you can specify tag wildcards  in the branch field
> of the github repository description.
>
> Using Thierry's example the following resolves the latest commit on the
> master branch (bleeding edge):
>
>   github://ThierryGoubier/SmaCC:master
>
> Using a tag name, you can match the tagged commit:
>
>   github://ThierryGoubier/SmaCC:v1.0.0
>   github://ThierryGoubier/SmaCC:v1.1.0
>
> Using a tag wildcard you can specify the latest tag 1.0.*:
>
>   github://ThierryGoubier/SmaCC:v1.0.*
>
> which matches v1.0.1, v1.0.2, whichever is latest, but not v1.0.2.1.
>
> To match the latest tag in the 1.0 family use 1.0.?:
>
>   github://ThierryGoubier/SmaCC:v1.0.?
>
> which matches v1.0.1, v1.0.2  and v1.0.2.1.
>
> There are more examples here[1].
>
> This feature was introduced in Metacello 1.0.0-beta.32.16[2].
>
> Dale
>
> [1]
> https://github.com/dalehenrich/metacello-work/issues/277#issuecomment-58970696
> [2]
> https://github.com/dalehenrich/metacello-work/issues?q=milestone%3A1.0.0-beta.32.16+is%3Aclosed
>
>
> On 1/27/15 1:52 AM, kilon alios wrote:
>
> beautiful it worked like a charm following your instructions , I now can
> brake my project to smaller ones, each one with each own github repo and
> use Baselines to load each one and still allow the user to load my Project
> in one single click from Configuration Browser. Love it how Pharo make this
> all this so easy, with python it was a nightmare. Brilliant just Brilliant
> ! :)
>
> On Tue, Jan 27, 2015 at 11:19 AM, Thierry Goubier <
> thierry.goub...@gmail.com> wrote:
>
>>  Hi Kilon,
>>
>>  a simple way to do that is to change your configuration so that it uses
>> the baseline in your github. The SmaCC configuration for Pharo 4.0 is
>> written in this way for the stable version.
>>
>> version204: spec
>>     <version: '2.0.4' imports: #('2.0-baseline')>
>>     spec
>>         for: #'pharo4.x'
>>         do: [
>>             spec
>>                 blessing: #stable;
>>                 author: 'ThierryGoubier';
>>                 description: 'SmaCC Smalltalk Compiler Compiler for Pharo
>> 4.0'.
>>             spec
>>                 baseline: 'SmaCC' with: [ spec repository:
>> 'github://ThierryGoubier/SmaCC:master' ];
>>                 import: 'SmaCC' ]
>>
>>  Thierry
>>
>>
>>
>> 2015-01-27 10:08 GMT+01:00 kilon alios <kilon.al...@gmail.com>:
>>
>>> So I have a Configuration in the Meta repo of pharo 4 and 3 that loads
>>> the latest version of my project Ephestos.
>>>
>>>  However I have moved my development to github since I am very happy
>>> with the workflow and since I discovered loading github repos via a
>>> baseline I have little use for smalltalkhub.
>>>
>>>  So my plan is this, keep the configuration in the meta repo so people
>>> and me can install my project easily with one click via the wonderful
>>> simple configuration browser , but I dont want anymore to load any versions
>>> with it. Instead I want to tell the configuration "load the github
>>> baseline" which  means it will fetch the code from my github account master
>>> branch which is the stable branch anyway (and the only branch so far) .
>>>
>>>  That will allow me to never have to update that configuration again
>>> since it will just load the latest code from github repo.
>>>
>>> The question is how to do this the easiest and cleanest way possible ?
>>>
>>
>>
>
>

Reply via email to