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 <mailto: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
    <mailto: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